Tombol numpad tidak mengirim simbol kunci yang sama dengan tombol angka 'normal' di baris atas. Sebagai contoh: Tombol numpad-1 mengirimkan KP_1
sementara tombol 1 hanya mengirim 1
.
Beberapa terminal secara otomatis memetakan kembali kunci numpad untuk mengirim kode yang sama ke shell. Juga, beberapa cangkang (misalnya bash
) hanya menginterpretasikan kunci numpad seperti padanannya di blok utama.
zsh
tidak melakukan pemetaan secara otomatis, tetapi Anda dapat menggunakannya bindkey
untuk melakukan pemetaan sendiri. Saya memiliki yang berikut ini di ~/.zshrc
untuk mendapatkan tombol berfungsi:
# Keypad
# 0 . Enter
bindkey -s "^[Op" "0"
bindkey -s "^[Ol" "."
bindkey -s "^[OM" "^M"
# 1 2 3
bindkey -s "^[Oq" "1"
bindkey -s "^[Or" "2"
bindkey -s "^[Os" "3"
# 4 5 6
bindkey -s "^[Ot" "4"
bindkey -s "^[Ou" "5"
bindkey -s "^[Ov" "6"
# 7 8 9
bindkey -s "^[Ow" "7"
bindkey -s "^[Ox" "8"
bindkey -s "^[Oy" "9"
# + - * /
bindkey -s "^[Ok" "+"
bindkey -s "^[Om" "-"
bindkey -s "^[Oj" "*"
bindkey -s "^[Oo" "/"
bindkey -s in-string out-string
mengikat in-string
untuk out-string
. Jika in-string
diketik out-string
didorong kembali dan diperlakukan sebagai input.
Kode aktual (misalnya ^[Oq
) mungkin berbeda pada sistem Anda. Anda dapat menekan Ctrl+ vdiikuti oleh kunci yang dimaksud untuk mendapatkan kode terminal Anda.
Ctrl
+v
hebat!