###前提・実現したいこと
閉じ括弧を打つのが面倒くさいので、
insert モード時に '{' を打つと、同時に閉じ括弧 '}' が入力される関数を自作してみました。
関数内ではカーソルの後ろに文字がなければ閉じ括弧を補完し、
そうでなければ、補完しないように分岐させています。
<expr> で自作関数を呼び出せるというのを聞いたので試してみました。
また補完後、{} 内ですぐに入力を開始できるように左矢印キーを入力するようにしています。
( Nami() の戻り値と '<Left>' を連結 )
このままでも良いのですが、欲を言えば括弧を閉じない場合に左矢印キーの入力をなしにしたいです。
何か良いアイデアはないでしょうか。
###該当のソースコード
vim
1function! g:Nami() 2 "カーソルの後ろに文字がなければ閉じ括弧を補完 3 if matchstr(getline('.'), '.', col('.')-1, 1)=='' 4 return '{}' 5 else 6 return '{' 7 endif 8endfunction 9 10" 閉じ括弧補完 11inoremap <expr> { Nami().'<Left>'
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/15 08:57