키 명령을 실행하려는 함수가 있는데 뒤에 문자 오류가 표시됩니다.
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