vimが苦手でもOnivimカッコいいのでおすすめしたい

この記事は[Vim その2 Advent Calendar 2018](https://qiita.com/advent-calendar/2018/vim2) 22日めの記事です。

vimconf2018でonivimというGUIエディタを知り、なかなか好感度高いのでオススメしたい記事を書きます。

# こんな人にオススメしたい
- vim使いたいけどなんかターミナルとかハードル高く感じる
- サーバーにログインしてvi使うからvim使いこなしたいけどwindowsだし環境を用意するのが面倒
- 新しいエディタを触ってみたい
- 人と違うエディタを使いたい
- かっこいいエディタを使いたい

# Onivimとは？

https://github.com/onivim/oni/

> Oni is a new kind of editor, focused on maximizing productivity - combining modal editing with features you expect in modern editors. Oni is built with neovim, and inspired by VSCode, Atom, LightTable, and Emacs

neovimベースのGUIエディタです。VSCodeにインスパイアされたと書かれている通り、似た雰囲気となっています

# 特徴
はい、ここからは[oniwikiのFeatures](https://github.com/onivim/oni/wiki/Features)を翻訳しながらいくつか特徴を紹介しようと思います。GIFもお借りしています。

## コード補完

![completion-demo](http://i.imgur.com/exdasXs.gif)

vimでも勿論コード補完はありますが、パッケージをインストールしなければいけないことやvimのターミナルの限界によって制限されてしまうことがあります。
onivimでは限界突破！AtomやVSCodeのようなモダンなUIと同様なコード補完目指すぜ！ということらしいです。
HTML,CSS,Javascript, Reasonはデフォルトでコード補完が利用できるようで、他の言語はインストールが必要なようです。
細かいことは[こちら](https://github.com/onivim/oni/wiki/Language-Support#python)のドキュメントを参照してください

## Fuzzy Finder

![fuzzy-finder-demo](http://i.imgur.com/wYnvcT6.gif)
Ctrl-pでファイルが探せるというやつです。

## 埋め込みブラウザ

![embedded-browser](https://user-images.githubusercontent.com/13532591/38274487-c4b28120-3743-11e8-9a54-7cfd4126f054.gif)

なんと！デフォルトでonivim内にブラウザを開けます！最高かよ〜！
Ctrl+gのスニークモードを使うとブラウザもマウスなしで色々ブラウザ操作（テキスト入力したり）できるみたいです。

## Quick Info

![quick-info-demo](http://i.imgur.com/0vJ8KgU.gif)
カーソルを乗せると簡単な説明が出てくるとのこと

## ステータスバー

![status-bar-demo](http://i.imgur.com/2grzeN1.gif)

onivimではデフォルトでステータスバーが付いてきます。

## シンタックス/コンパイルエラー

![syntax-error-demo](http://i.imgur.com/GUBhRhG.gif)

シンタックス/コンパイルエラーも教えてくれます。

## チュートリアル

![tutorial-update](https://user-images.githubusercontent.com/13532591/38274659-41fa1aa8-3744-11e8-953d-4d763e64606b.gif)

かなり動的に動くチュートリアル！アクションがいちいちかわいい！
vimtutorとは順番が違っています。なんででしょう:thinking:

# Onivimの個人的オススメポイント

vim初心者なりにOnivimのオススメポイントを紹介したいと思います！

## Onivimのここがいい1:relaxed:セットアップが簡単

特にターミナル環境を用意しづらいwindows7でめちゃくちゃ簡単でした。
https://www.onivim.io/Download
上記ページからダウンロード、通常アプリをインストールする手順でインストールできます

windowsではneovimごとインストールされるので、「vim使いたいけどターミナルとかよくわかんないし...」という方にも安心です！ターミナルを一切使わなくても大丈夫です！

neovimがもともと入っている環境だと「既存のinit.vimを使いますか？」と出てくるので「Yes」を押すとneovimの設定をそのままonivimを使うことができます！

## Onivimのここがいい2:relaxed:チュートリアルが楽しい

もともとvimには「vimtutor」というチュートリアルがあるのですが、
このチュートリアルを楽しく実践することができます！
上の方にGIFを載せましたが、アクションとかギミックがゲームみたいで楽しいです！

## Onivimのここがいい3:relaxed:マウスを触らなくても色々できるGUI

GUIエディタはデフォルトだと基本的にマウスを使うというものが多いと思うのですは、さすがneovimベースというだけあって極力キーボード操作で色々できるようになっています。

<img width="715" alt="explorer" src="https://qiita-image-store.s3.amazonaws.com/0/210944/88cceb3a-61e6-e62d-82c5-05c443f24842.png">

例えばこの横のエクスプローラー部分のファイル選択もh,j,k,lが使えるんです！
勿論スニークモードを使って一発でそのファイルを開くこともできます。

他にも色々ショートカットがありますし、勿論設定ファイルを書き換えて自分の好きなように設定することができます。
デフォルトのショートカットは[wiki](https://github.com/onivim/oni/wiki/Shortcuts)にも書かれています

# あとがき

長々となってしまいましたがonivimオススメ記事でした！
まだバージョン0.3.6ということでやや謎な動作なこともありますが、そういうところも含めて育てていくエディタという感じがとても気に入っています:kiss_mm:
日本語が弱いという前情報がありましたが、今の所特に気になるところはないです:v:

<img width="514" alt="日本語入力" src="https://qiita-image-store.s3.amazonaws.com/0/210944/981c3554-c1eb-310e-33f2-286dd5dcf6d8.png">
しいて言えば変換前のテキストが一部しかグレーにならず、後半が非情に見にくくなってしまうところでしょうか。
これは全くどういうことなのか(onivimの実装によるものなのか）私には見当がつきませんが、自分が何書いてるかは心の目で見えているのであまり気にするところではありません。
いっそ全部英語にしたいと思うことはありますね:blush:

あとvim初心者としては楽しげなチュートリアルや（機能が少ないゆえに？）簡潔なwikiを見て「こんなことできるんだ！」「ってことはvim単体（もしくはプラグイン入れて）でもできるのかな！？」と調べることでvimに対する知見が深まっていってとても楽しいです！:laughing:

今はwindowsをonivim、 ubuntuと自宅macをneovimにしながら相互に高め合っています。
(onivimはmacのデフォルトのキーバインドとバッティングしているショートカットもありやや苦労しています)

長くなってしまいましたが以上です！