Open6

Vimプラグイン見直し(neovim)

oratakeoratake

プラグイン管理 dein.vim
https://github.com/Shougo/dein.vim

deinインストール後は以下スクリプトをinit.vim(neovim)やら.vimrc(本家vim)に突っ込んでおいてね、とのことなので一旦入れておく。

"dein Scripts-----------------------------
if &compatible
  set nocompatible               " Be iMproved
endif

" Required:
set runtimepath+=/home/ここ自分のユーザ名/.cache/dein/.//repos/github.com/Shougo/dein.vim

" Required:
call dein#begin('/home/ここ自分のユーザ名/.cache/dein/./')

" Let dein manage dein
" Required:
call dein#add('/home/ここ自分のユーザ名/.cache/dein/.//repos/github.com/Shougo/dein.vim')

" Add or remove your plugins here like this:
"call dein#add('Shougo/neosnippet.vim')
"call dein#add('Shougo/neosnippet-snippets')

" Required:
call dein#end()

" Required:
filetype plugin indent on
syntax enable

" If you want to install not installed plugins on startup.
"if dein#check_install()
"  call dein#install()
"endif

"End dein Scripts-------------------------

ただこれだとわりと生pathがべろっと載っていて野暮ったい。ので改修

oratakeoratake
set runtimepath+= ほげぴよ

deinのプラグイン置き場をvimに認識させるもの。とくに思想がなければ ~/.cache/dein あたり追加するでよさそうか

複数回読まれてるプラグインがありそう。重複の解消もやってく

[dein] Plugin name "dein.vim" is already defined.                                           
[dein] Plugin name "vim-vue" is already defined.                                            
[dein] Plugin name "neosnippet-snippets" is already defined.
oratakeoratake

現在のvim界隈概観把握メモ

  • プラグイン界隈の動向

    • 現状VimScriptの速度に限界があるわけだが、Vim本体ではVimScriptの高速化の動き、NeoVimではLuaでかけるようにする、などそれぞれの道をたどり始めている。
    • ddcについてはdeopleteではPythonだったものを、Vim本体やNeoVimの中間をとって、denops.vimというDenoでかけるものを使用して実装、Vim/NeoVimとも対応するという選択をとっている様子。
  • 補完関係のプラグイン

    • deoplete は開発終了なのでddc.vimが選択肢に
    • ddcは補完に徹しているのでその他のものをゴリゴリ選定する必要はある
    • あとDenoのインストールは当然必要
    • 前提としてdenops.vimが必要
  • fuzzy finder系

    • denite.nvim もShougoさんの動向としては ddu.vim に動いているのでそっちに移行したほうよさそう
  • ファイラ

  • TreeSitter (シンタックスハイライト)

  • ColorScheme

  • 巷の例

Shougoさんの記事で紹介されていたddcで対応してるsourceやらfilterのリスト。githubのトピック?で検索できるの頭いいとおもった(小並感)
https://github.com/topics/ddc-source
https://github.com/topics/ddc-filter

結論というか方向性

  • 補完についてはよしなにやってくれる coc.vim を使うか、ddc.vimで1から選んでいくかのどっちかになりそう。
  • LSP楽して使いたいので、一旦coc.vimでお茶濁すか?という感じになっている。そこそこ速いみたいだし
  • ddc.vimで行く場合、まだ途上な感じもあるのでもうちょい調べたい。Shougoさんのddcの記事であったddcの他に導入すべき sources, filters がなにを指してるかわからない... (多分補完に使うマッチだのソートだののアルゴリズムとかを選べるというような話だという浅い理解)