ふるつき

記事と内容がないです

pythonでvimscript書く

vimscriptは私には厳しい言語なのでかけるところはpythonで書きたい。

調べてたらすごい簡単にかくことができる。

python3 print("Hello")

vimscriptにはpython3というコマンドがあって、引数をpythonとして実行する。このとき引数に渡されたベアテキスト(だっけ?)はすでにpythonの世界にいるので注意。

スクリプトはファイルに書いちゃってそれを読み込むこともできる。

py3file hoge.py

vimとのインタフェースとしてvimモジュールが提供されている。import vimできる。

↓のリンクでは、pythonスクリプトvimを全く意識しない作りにしておいて、pyfileで読み込み、python import vimする戦略をとってるっぽい。私は面倒なので全部python3に流し込んでる。

これは、

python3 << endpython
  pythonprogram
  ...
  ...
endpython

みたいな。<< endpythonが何かわかってないけど。

vimモジュールではいくつかの、Vimを制御するための関数が用意されている。詳しいことはhelp(vim)するといいと思う。

vim.command

いわゆるexコマンドを実行する。

vim.eval

vimscriptの変数を引っ張ってくるときに使う。hogevar = vim.eval("l:hogevar")とか。python3コマンドで関数を呼ぶとき、引数として変数の持つ値を与えるにはこれをつかう。

vim.list_runtime_paths

runtimepathオプションを分割してリストで返してくれる。

参考

Pythonでvim pluginを書く - Qiita