キーコマンドを実行したい関数があり、後ろに文字エラーが表示されます。
function! MyFunction()
if condition
<C-W><C-W>
else
:some_other_command
endif
endfunction
<CW> <CW>が好きではありません
代わりに何を使用できますか?
答え1
一般的な答えは、次:normal
のコマンドを使用することです。
:exe "normal \<C-W>\<C-w>"
これは、コントロールキーの組み合わせなどの特殊文字を認識するために人が読むことができる方法です:execute
。:normal
別の方法は
:normal ^W^W
これらはそれぞれ^W
を入力して挿入された文字ですCtrl-vCtrl-w。
答え2
使用フィードキー機能。 ^Wは「^」+「W」ではなく、実際に「Ctrl-V Ctrl-W」と入力することに注意してください。これは特別な役割です。
function! MyFunction()
if condition
call feedkeys("^W^W")
else
:some_other_command
endif
endfunction