03/05/17 09:21
+,-などの記号を入力したときに両側にスペースを入れたいです。
そのときすでにスペースが入っていたらスペースを入れないようにします。
それで次のような関数を作ったのですがうまくいきません。
というかvimスクリプトがぜんぜんわかりません。
直してください。
inoremap <buffer> ( <c-o>:call InsertSpace()<cr>(
inoremap <buffer> , <c-o>:call InsertSpace()<cr>,<space>
inoremap <buffer> + <c-o>:call InsertSpace()<cr>+<space>
inoremap <buffer> - <c-o>:call InsertSpace()<cr>-<space>
inoremap <buffer> * <c-o>:call InsertSpace()<cr>*<space>
inoremap <buffer> / <c-o>:call InsertSpace()<cr>/<space>
inoremap <buffer> = <c-o>:call InsertSpace()<cr>=<space>
function! InsertSpace()
if strlen(getline(".")) == col(".")
if strpart(getline("."), col(".")-1, 1) != " "
normal a
endif
else
if strpart(getline("."), col(".")-2, 1) != " "
normal a
endif
endif
endfunction