우선, Midnight Commander에서 Alt+ 1(9와 0까지)를 사용하여 해당 기능 키( F1~ )를 합성 할 수 있다는 것을 알고 있습니다 . F10여러 번 도움이 되었지만 기본적으로 여전히실제기능키를 직관적으로
tmux
요지: PuTTY를 사용하여 Vim과 Midnight Commander를 세션(때로는 창, 때로는 창) 내에서 실행하려고 합니다 .
따라서 기본적으로 다음과 같은 PuTTY 구성이 있습니다.
ESC[n~
매핑 포함
map <F1> :tab help<CR>
이제 Vim에서 ( , 및 및 nmap
및 imap
) 을 매핑할 때 문제 는 (대소문자 전환) F1효과를 제공한다는 것입니다 . 그리고 실제로 셸 을 ~누르면 물결표( )가 결과로 나타납니다.F1F5~
~을 따라종소리와 함께. 하지만 이 설정을 사용하면 기능 키가 Midnight Commander에서 완벽하게 작동합니다.
내 문제 외에도 위 설정에는 한 가지 이상한 점이 있습니다 . Vim에서 "매핑" ( ) F1도 했습니다 . 이상하게도F5set pastetoggle=<F5>
저것F5쉘의 키 ~
가 같은 기능을 제공 하더라도 매력처럼 작동합니다 F1.
메모:외부에서 Vim을 실행할 때 tmux
기본 바인딩(그리고 내가 재정의한 것)이 F1잘 작동합니다!
"Linux" 매핑 사용
그래서 자연스럽게 위 대화 상자에서 "Linux" 설정을 사용하려고 했습니다. 따라서 내가 키를 누르면 F1Vim은 줄 끝에서 삽입 모드로 전환됩니다( 의 효과 A). Midnight Commander는 이 설정의 기능 키를 인식하지 못합니다. 물론 껍데기에 F1나와 A
벨( F2a B
등)이 표시됩니다.
내가 여기서 무엇을 놓치고 있는 걸까요?Midnight Commander와 Vim이 모두 기능 키를 인식하는 균일한 동작을 얻으려면 어떻게 해야 합니까?
추가 정보:
원격 시스템은 Ubuntu 14.04이며 LANG=en_US.UTF-8
.
TERM
TERM=xterm
세션 외부 tmux
및 TERM=screen
창이나 창 내부에서 볼 때 설정됩니다 .
나는 다음을 사용하지 않습니다:
set-option -g default-terminal "screen-256color"
내부의 터미널 유형을 재정의합니다 tmux
.
답변1
문제는 TERM=xterm
외부 이다 tmux
. 있다아니요터미널 설명 과 일치하는 PuTTY 구성 xterm
및 불일치가 screen
또는 tmux
(선택)에 제공됩니다.
예를 들어 ncurses FAQ를 참조하세요.왜 "xterm"으로 설정된 TERM을 사용하지 않습니까?. 물론 권장 사항을 설정하는 것이 좋습니다.
TERM=putty
다음을 사용하여 빠른 확인tack
이 조합( TERM=putty
, )은 Ubuntu 14.04에서 작동함을 보여줍니다( 이를 포함하는 패키지를 tmux
설치해야 함 ).ncurses-term