함수가 있고 키 명령을 실행하고 싶지만 후행 문자 오류가 발생합니다.
function! MyFunction()
if condition
<C-W><C-W>
else
:some_other_command
endif
endfunction
<CW> <CW>를 좋아하지 않습니다
대신 무엇을 사용할 수 있습니까?
답변
일반적인 대답은 다음 :normal
과 같은 명령 을 사용하는 것입니다.
:exe "normal \<C-W>\<C-w>"
이 :execute
방법은 :normal
컨트롤 키 조합과 같은 특수 문자를 인식 할 수있는 읽기 쉬운 방법 입니다. 다른 접근법은
:normal ^W^W
여기서 각각 ^W
은을 입력하여 하나의 문자를 삽입합니다 Ctrl-vCtrl-w.
답변
피드 키 기능을 사용하십시오 . ^ W는 “^”+ “W”가 아니라 실제로 “Ctrl-V Ctrl-W”를 입력합니다. 특별한 캐릭터입니다.
function! MyFunction()
if condition
call feedkeys("^W^W")
else
:some_other_command
endif
endfunction