次世代のvim!neovimを使う!
ubuntuにneovimをいれてみました.
そもそもvimとneovimの違いってなんなんでしょうか...
私もわかりません! でも新しい物好きなのでとりあえず入れます!(笑)
(vimよりも速くなってるとかなんとか…)
neovimには超絶強力なモード、ターミナルモードが実装されています。
ターミナルモードではターミナルとそっくりそのままの画面が出てきて、コマンドを実行したりソースをmakeしたりと色々なことができます。
普段使いと全く同じターミナルを、vimのキーバインドで使用できるようになります。
vimユーザの皆さん、こんなに嬉しいことはありませんね。いますぐneovimに移行しましょう!
vimで使用していたプラグイン等の設定ファイルをそのままneovimに移行させても(たぶん)問題なく動きます。(筆者は.vimrcをそのままneovimに移行させても、問題なく動いています。)
ターミナルエミュレータ
neovimのターミナルエミュレータです。
neovimからは、ターミナルを操作するためのモード “TERMINAL” が実装されています。
感じとしては、vimと全く変わりがないです。(体感しきれない部分での高速化や高機能化が行われているかもしれませんが。)
それにプラスしてターミナルエミュレータが実装され、より強力になった
vimにターミナルモードを実装しただけ,というのが私の第一印象です.
”だけ”とは言っても,そのターミナルモードがとても強力なツール何ですけどね.笑
インストール
ubuntuの方
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository ppa:neovim-ppa/unstable
$ sudo apt-get update
$ sudo apt-get install neovim
macの方
$ brew install neovim
上記コマンドでneovimをインストールすることができます。
vimをコンソールで立ち上げる時は”vim”とタイプしますが、neovimの場合は”nvim”で起動できます。
普段使いでneovimを使う方は、以下のようなエイリアスを.bashrc(.zshrc)に記述しておくと良いかと思います。
alias vim='nvim'
neovimにおけるvimrc
vimmerのみなさんでしたら当然のようにいじっているvimrc。
vimではオリジナルの設定を記述するためのファイルはホームフォルダ直下、~/.vimrcに記述していましたね。
neovimではそのvimrcに代わり、init.vimというファイルをしようします。
デフォルトでのパスは~/.config/nvim/init.vimとなりますので注意しましょう。
neovimとvimを共存させる
とりあえずお試しでneovimを使うという方や、様子見でneovimとvim両方を使うという方は、init.vim内でvimrcを読み込むというのがスマートな管理の仕方なのではないでしょうか。
~/.config/nvim/init.vimに以下の一行を追加します。
source ~/.config/nvim/init.vim
この一行でvimの設定をneovimと共有できるようになりました。
クリップボードについて
vimでクリップボードを使用するには set clipboard = unnamed(unnamedplus)というような記述をしていたと思います。
ubuntuでneovimでクリップボードとの連携を行うには、少しだけ手順を踏む必要があります。(macの方は不要だった。と思います。)
ubuntuの方は、
$ sudo apt-get install xsel
または、
$ sudo apt-get install xclip
上記コマンドでクリップボードに関するモジュールxselまたはxclipをインストールする必要があります。
筆者の環境では、xclipである条件でコピーするとneovimの一番下に赤文字で警告ダイアログが出ることがありました。なので筆者はxselを使用しています。
上記コマンドを実行の後、init.vimに以下の行を追加することでクリップボードが使えるようになります。
set clipboard+=unnamedplus
ターミナルモードの起動
:terminal
ターミナルモードの起動はvim内で上記のコマンドを実行します。コマンドを実行すると、新しいウィンドウでターミナルエミュレータが起動します。
「vimでテキストを編集中にちょこっとターミナルで作業したい。」といったことがよくあった私にとってはこのターミナルエミュレータはとてもありがたいです。
:terminalと打つのが面倒くさいので、私はターミナルの起動を<Leader>tに割り当てています。
ターミナルモードのマッピングやプラグインについて別ページにてまとめてみましたので、こちらの記事でまたお会いしましょう。
neovimの便利設定 ターミナルモードのマッピング | MY ROBOTICS
また、筆者はターミナルモードを便利にしてくれるneotermというプラグインを導入しており、非常に使い心地が良いので、こちらも合わせてご覧ください。
neovim × neoterm = 最強 | MY ROBOTICS
以上、neovimの導入方法についてでした。