nvim-Rの使い方(2019年度版)を書きました。2019年現在、nvim-completion-managerは更新されていません。
vimからRを使うNvim-Rですが、まだまだ深化しています。
前回から変更したのは、次の3点。
ncim-Rによる補完
ncm-Rを使えば、Nvim-Rの補完ができる。あまりに便利だったので、deopleteからnvim-completion-managerに乗り換え。python 3が必要なようだが、deopleteが動くなら動くはず。
aleによるチェック
neomakeからaleへ乗り換え。非同期でチェックしてくれるので有り難い。Rも(lintrがインストールされていれば)デフォルトでチェックしてくれる。
初期設定で、ひとまとまりのコードが実行されるようになった
たとえば、次のようなコードがあった場合、これまでは「localleader + l」で、1行ずつRへ送られていた(1行目だけ送った場合は、Rが+表示で待機になる)。
dat <- lapply(jpfile, function(x) { read.spss(x, to.data.frame = TRUE, use.value.labels = FALSE) })しかし、最近のアップデートで、これが一気に送られるようになった。どちらが使いやすいかは人によると思うが、自分の場合は、一定範囲を選択して、「localleader + l」で順次実行させるという使い方をしていたため、「2行目・3行目が二度送られてエラーが出る」ようになってしまった。この機能をオフにするには、vimrcに下記を追加する必要がある。
let g:R_parenblock = 0Nvim-Rに関するvimrcは、今のところ以下のような感じ。
" vim-plug call plug#begin('~/.config/nvim/plugged') Plug 'roxma/nvim-completion-manager' Plug 'jalvesaq/Nvim-R' Plug 'gaalcaras/ncm-R' Plug 'w0rp/ale' call plug#end() " nvim-r let g:R_assign = 0 let g:R_insert_mode_cmds = 1 let g:r_indent_align_args = 0 let g:R_rconsole_width = 0 let g:R_parenblock = 0もちろんRstudioの方が便利だとは思うのだが、どうもIDEは性に合わない。vimにハマって抜け出せないので、まだまだNvim-Rにはお世話になると思う。