실제 질문을 나타내는 질문에 다소 모호한 점이 있습니다. vim은 그것이 기능 키라고 가정하고 k0
에 대한 바인딩을 허용합니다. 당신이 숫자 기능 - 키 1
에서 시작 볼 수
대부분의 키보드, 몇 터미널 설명은 또한 가능의 일부가 기능 키 위해 10 k0
그것을 동일시, 기능 키 1 k0
에 동일시 누군가가 숫자 키패드의 일부라고 가정하지만 키패드는 기능 키와 다른 문자 시퀀스를 사용하기 때문에 가능성은 낮습니다.
사용자가 기능 키를 알고있는 터미널 설명을 사용했다고 가정합니다. vt100의 기능 키가 없으므로 vt100 터미널 설명은 그 기능을 수행하지 않습니다. (PF1 ~ PF4) 당신이 말하는 사람에 따라 다르거 나 그렇지 않은 사람이 있습니다. 그러나 TERM=vt100
이 있다면 숫자 키패드의 일부은 터미널 설명을 기준으로 인식 할 수 있습니다 (예 : vt100+fnkeys
description 위의 긴 설명 참조).
그러나 이것은 TERM=xterm
에 없습니다.
당신이 간과하고있는 것은 vim (아마도 도움이 될 것입니다)이 내장 된 termcaps를 사용하여 터미널 설명을 수정한다는 것입니다. PF1 등을 인식합니다.
{K_XF1, IF_EB("\033O*P", ESC_STR "O*P")},
{K_XF2, IF_EB("\033O*Q", ESC_STR "O*Q")},
{K_XF3, IF_EB("\033O*R", ESC_STR "O*R")},
{K_XF4, IF_EB("\033O*S", ESC_STR "O*S")},
그러나 번호가 매겨진 키에 대한 항목이 없습니다. 0
키에는 "\033O*p"
이 없습니다.
정력이 k0
(터미널 설명에)있다, 당신은 아무것도에 매핑하지 않은 경우, 정력 리터럴 0
로 취급됩니다. 사실 k1
등과 같은 경우에도 기능 키와 숫자 키패드를 동일한 것으로 취급합니다.
GNU screen
은 동일한 작업을 수행하지만 번호가 매겨진 키에도 적용됩니다. vim
을 screen
안에 넣으면 vim
에 0 만 표시됩니다. vim에서 리터럴 0
은 커맨드 모드를 많이 사용하지 않습니다.
흠, 고마워. 그러나 이것은 효과가 없었다. 또한 'false'는 xterm * appkeypadDefault의 기본값이며 xterm 매뉴얼 페이지에 나와 있습니다. 나는 vim을 10 년 이상 동안 사용 해왔고 반복을 지정하기 위해 * keypad *를 사용하지 못했습니다 (홈 위치에서 손을 떼지 않아도 vim의 장점 중 하나입니다). 그래서 키패드 매핑을해도 괜찮습니다. – PonyEars