Using numpad in Vi (Vim) via PuTTY

2020-05-11 18:46发布

问题:

The numberpad does not work properly when using Vim through PuTTY. Instead of numbers I get

y
x
w
v
u
t
s
r
q

回答1:

The answer is in Numpad in PuTTY while using vi [Cialug]:

In the configuration, go to Terminal->Features and check "Disable application keypad mode". Save the settings and enjoy a numeric pad that works!



回答2:

I have always used this set of mappings to interpret the escape sequences as numbers when $TERM=xterm

imap <Esc>Oq 1
imap <Esc>Or 2
imap <Esc>Os 3
imap <Esc>Ot 4
imap <Esc>Ou 5
imap <Esc>Ov 6
imap <Esc>Ow 7
imap <Esc>Ox 8
imap <Esc>Oy 9
imap <Esc>Op 0
imap <Esc>On .
imap <Esc>OR *
imap <Esc>OQ /
imap <Esc>Ol +
imap <Esc>OS -

I think this was my original source.



回答3:

And for Mac, the answer is in a comment by HaPsantran on this same page and there is a similar answer by nfechner with German screenshots in this answer.

For Mac, go to your Terminal application. Select Preferences, Profiles, Advanced and deselect Allow VT100 application keypad mode.



回答4:

If using SSH through a terminal you can just go to

Edit -> Num Lock (third from bottom)

It needs to have a checkmark to the left of it.



回答5:

The previous answers by kirby, michael-berkowski, and pykler are great.

I had this issue in Vim on macOS's terminal. Checking TerminalPreferencesProfilesKeyboard showed that "Clear (Keypad)" was mapped to "Num Lock". Pressing clear fixed the issue for me.



标签: vim putty