こんにちは。Vim scriptを書いてみました。
モチベーションとしては、開発速度をあげたいという気持ちです。Vim scriptとか言い出すと、すごく先は長い気もしますが、まあ、とりあえずやってみてから考えようという気持ちです。
参考URL
この辺りを参考にしています。
まずは、Vim scriptに入門するところまでです。
まず書いてみる
.vimrc
に以下の文を書いて見ました。
function! s:MultipleString() call setline('.', "------------------------------------") endfunction command! -nargs=0 MultipleStringCmd call s:MultipleString()
そのあとに、以下を実行します。
:source %
上記を実行すると、vimrcを再読み込みするようです。
次に、以下を実行します。
:MultipleStringCmd
すると、vim editor上に以下が入力されます。
------------------------------------
reSTでタイトルを入力する時に便利っぽいコマンドができました。
コマンド名を変える
MultipleStringCmd
は長いので、コマンド名を変えます。
以下のRestH2
にかえます。ちなみにvim scriptのコマンド名の先頭は大文字じゃないとダメみたいです。
function! s:MultipleString() call setline('.', "------------------------------------") endfunction command! -nargs=0 RestH2 call s:MultipleString()
保存して、再読み込みします。
:source %
呼び出します。
:RestH2
やっぱり以下が出てきます。
------------------------------------
引数を渡す
こんな感じ。
function! s:MultString(...) if a:1 == "h1" call setline('.', "====================================") elseif a:1 == "h2" call setline('.', "------------------------------------") elseif a:1 == "h3" call setline('.', "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") end endfunction command! -nargs=? Rest call s:MultString(<f-args>)
:Rest h1
で
====================================
が出るとか、そんな感じで切り替えられる。
プラグイン化する
とりあえず、疲れたので今日はここまで。
そのうち気が向いたらやる・・・