
이 질문은 다음과 일치합니다.term=xterm을 사용하는 osx에서 iterm2를 사용하여 vim에서 숫자 패드를 작동시키려면 어떻게 해야 합니까?그리고term=xterm을 사용하는 osx에서 iterm2를 사용하여 vim에서 숫자 패드를 작동시키려면 어떻게 해야 합니까?하지만 해당 답변에 설명된 요소를 찾을 수 없습니다.
Windows 상자에서 VNC를 통해 Linux 상자에 액세스하고 있습니다.
Linux 상자에서는 이 VNC 세션을 통해 Vim에서 편집하고 있으며 삽입 모드에서 숫자 키패드에서 '/' 및 '*'를 입력하면(예: C 스타일 주석을 시작하기 위해) 문자 ' 대신 o'와 'j'가 삽입됩니다(구체적으로 캐리지 리턴이 삽입된 다음 첫 번째 탭 정지에 'o' 또는 'j'가 삽입되는 것 같습니다).
내가 언급한 질문과 답변은 MacO에만 해당되는 것 같습니다. 예를 들어 Linux 상자에서 실행되는 터미널과 VNC의 기본 설정 사이에서 "숫자 키패드가 있는 xterm"에 대한 참조를 찾을 수 없습니다.
설명된 환경에서 이 문제를 해결하는 방법을 조언해 줄 수 있는 사람이 있습니까? 이 동작의 원인이 Vim인지, 터미널인지, VNC인지 확실하지 않습니다.
$TERM
해당되는 경우 , Vim 버전 및 .vimrc는 다음과 같습니다 .
>vim --version
VIM - Vi IMproved 8.0 (2016 Sep 12, compiled Dec 21 2016 15:22:28)
>echo $TERM
screen-256color
>cat ~/.vimrc
set backspace=indent,eol,start
set shiftwidth=2
set softtabstop=2
set expandtab
set smarttab
filetype plugin indent on
autocmd FileType make set noexpandtab shiftwidth=4 softtabstop=0
set cino+=(0
set statusline=
set statusline +=\[%n] "buffer number
set statusline +=\%F "File
set statusline +=%=%l/%L "currentLine/totalLine
set statusline +=%4v "virtual column
set laststatus=2
set t_Co=256
colorscheme torte
set number
"let g:netrw_liststyle = 3
syntax on
업데이트: 또 다른 관련 요소: 저는 bash 쉘 위에서 tmux를 실행하고 있습니다. 내 .tmux.conf:
>cat ~/.tmux.conf
unbind C-b
set -g prefix C-a
bind C-a send-prefix
set-window-option -g mode-keys vi
set -g set-titles on
set-window-option -g automatic-rename off
set-option -g allow-rename off
답변1
추신: 이 정보를 인터넷에서 얻었는데 지금은 소스 링크를 찾을 수 없습니다.
일반적인 위치에 다음 파일을 만듭니다.
$ cat fix_numpad ! initialization, ! Ensure that we have all keysyms we're going to use assigned to something. keycode any = KP_Insert keycode any = KP_End keycode any = KP_Down keycode any = KP_Next keycode any = KP_Left keycode any = KP_Begin keycode any = KP_Right keycode any = KP_Home keycode any = KP_Up keycode any = KP_Prior keycode any = KP_Delete ! Set the keypad to numeric mode. ! You may need to adjust KP_Next/KP_Prior; possible alternatives ! are KP_Page_Down/KP_Page_Up or just Next/Prior. ! just Next. keysym KP_Insert = KP_0 keysym KP_End = KP_1 keysym KP_Down = KP_2 keysym KP_Next = KP_3 keysym KP_Left = KP_4 keysym KP_Begin = KP_5 keysym KP_Right = KP_6 keysym KP_Home = KP_7 keysym KP_Up = KP_8 keysym KP_Prior = KP_9 keysym KP_Delete = KP_Decimal $
새 매핑 할당
$ xmodmap fix_numpad
~/.vnc/xstartup
참고: 매핑이 항상 유지되도록 이를 파일에 추가할 수 있습니다 .
답변2
이 질문은 귀하가 을(를) 사용하고 xterm
있으며 응용프로그램 키패드 모드를 다음으로 전환하려고 함을 의미합니다.정상(설정된 동안애플리케이션). 의 경우 xterm
"VT 옵션" 메뉴의 메뉴 항목을 통해 언제든지 응용프로그램 모드를 켜거나 끌 수 있습니다(control-마우스 가운데 클릭).
해당 메뉴 항목은 해당 메뉴 항목에 있을 때 선택됩니다(체크 표시 포함).응용 프로그램 모드.
xterm
키코드 정보를 사용하여 키패드 키를 눌렀는지 알려주고 일반/응용 모드를 사용하여 해당 키에 대해 무엇을 보낼지 결정합니다.
답변3
내가 찾은 이 문제를 해결하는 유일한 방법은 TERM
tmux 내에서 환경 변수를 수정하는 것입니다.
setenv TERM xterm
(나는 실망스럽게도 tcsh에 있습니다)
그러나 이는 권장되는 장기적인 솔루션이 아닙니다.tmux 개발자는 디스플레이 문제가 발생할 가능성이 있다고 말합니다.. 지금은 제게는 잘 작동하지만 이는 확실히 "필요할 때"가 될 것입니다. 더 나은 솔루션을 듣고 싶습니다.
답변4
저는 x11vnc를 서버로, Tigervnc를 뷰어로 사용하고 있습니다. 같은 문제.
나는 그것을 로 고쳤습니다 setxkbmap -option 'numpad:microsoft'
.