Vim Part16
..
415:名無しさん@お腹いっぱい。
09/06/21 11:59:56
>>412-414
ありがとうございます。getline('.')[col('.')-1] を使うことにします。
それでですね、カーソル上の文字によって、iまたはaを使いたいんですが、うまくいきません。
""" 別の関数(ここではstrftime())の実行結果を挿入する。
""" カーソル上の文字が '@' ならその右側に、それ以外なら左側に挿入する。
function Func1()
let ch = getline('.')[col('.')-1]
if ch == '@'
"exec "normal a<C-r>=strftime('%c')<CR>"
return "a<C-r>=strftime('%c')<CR>"
else
"exec "normal i<C-r>=strftime('%c')<CR>"
return "i<C-r>=strftime('%c')<CR>"
endif
endfunction
":nmap <C-¥> :call Func1()
:nmap <expr> <C-¥> Func1()
これを実行すると、<C-r>=strftime('%c')<CR> がそのまま挿入されてしまいます。
どなたか助けてください。
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5330日前に更新/185 KB
担当:undef