###前提・実現したいこと
vimの単語削除をカスタマイズして、カーソル直下または1つ前にある単語を判別して、削除する単語量を決定できるようにしたいです。
###発生している問題・エラーメッセージ
三項演算子を使用することで、2つの場合の判別はできるようになりましたが、elseifを使ったときのような、3つ以上の場合の判別ができません。
###該当のソースコード
function! s:Test() let l:moji = s:prev_cursor_char(0) // カーソル直下の文字が。か if l:moji =~ "[。]" return 1 endif let l:moji = s:prev_cursor_char(1) // カーソル直前の文字が。か if l:moji =~ "[。]" return 1 endif endfunction function! s:prev_cursor_char(n) let chars = split(getline('.')[0 : col('.')-1], '\zs') let len = len(chars) if a:n >= len return '' else return chars[len(chars) - a:n - 1] endif endfunction command! Test call s:Test() inoremap <silent> <expr> <C-w> <SID>Test() ? "\<BS>\<C-w>\<C-w>" : "\<C-w>\<C-w>"
###補足情報(言語/FW/ツール等のバージョンなど)
vim8.0(MacVim)

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/10 22:59