Keyboard-Layout
如何更改 XTERM 中 HOME 和 END 鍵的鍵映射?
我正在研究 RHEL 6.4。
在我在 RHEL 5.3 上執行的舊系統中,
Home
映射到^[[1~
並End
映射到^[[4~
.在新系統中,
Home
被映射到^[[H
並被End
映射到^[[F
,這在我的應用程序中導致了一些不良行為。請告訴我如何改變這個?
*XTerm*VT100.translations: #override \n\ None<Key>Home: string(0x1b) string("[1~") \n\ None<Key>End: string(0x1b) string("[4~") \n
雖然您可以使用資源更改密鑰
translations
,但也有優缺點。如果您不使用該資源,它本身會xterm
提供幾個其他資源(包括一些可以通過菜單條目切換的資源)。如果您使用該資源,則無法通過菜單條目切換按鍵。
Home
和End
鍵可以在“PC 風格”^[[H
和“VT220 風格”之間切換,並使用^[[F
菜單條目。^[[1~``^[[4~
VT220 Keyboard
除了菜單項之外,還可以使用控制序列進行相同的切換:
CSI ? Pm h DEC Private Mode Set (DECSET). Ps = 1 0 6 1 -> Set VT220 keyboard emulation. CSI ? Pm l DEC Private Mode Reset (DECRST). Ps = 1 0 6 1 -> Reset keyboard emulation to Sun/PC style.
您可以在腳本中使用它:
printf '\033[?1061h
將鍵盤類型更改為 VT220。
順便說一下,這些功能早於 RHEL5。Red Hat 曾經覆蓋 xterm 資源,如常見問題解答中所述*為什麼我不能使用 home/end 鍵?*.