X11
鍵綁定到 X 中的遞增/遞減虛擬控制台
可以通過按 ++(其中代表 、 等)來更改虛擬控制台(或
Ctrl
虛擬終端,VT )Alt
。此外,在不執行時,可以按和 箭頭鍵在 VT 之間循環(遞減和遞增虛擬終端)。Fn``Fn``F1``F2``X``Alt``Alt``←``Alt``→
但是,如果
X
在其中一個 VT 上執行,則通常不會設置箭頭鍵綁定,並且必須回退到++Ctrl
才能更改為另一個 VT。Alt``Fn
我通常更喜歡使用箭頭綁定來更改 VT。為了避免必須在鍵綁定之間切換(對於帶有 的 VT 的
Ctrl
+Alt
+ ;對於沒有它的 VT 的箭頭),將綁定到哪個命令來減少/增加 VT ?Fn``X``Alt``←/→``X
如果答案取決於系統,我正在執行 debian 並使用 dwm 和 openbox 作為視窗管理器。
我只能告訴你一個骯髒的解決方法。使用xbindkeys並添加到
~/.xbindkeysrc
:"sudo chvt $(($XDG_VTNR-1))" alt + c:113 "sudo chvt $(($XDG_VTNR+1))" alt + c:114
如果您沒有 XDG_VTNR 變數,那麼您必須硬編碼上一個/下一個 vt。
您還必須將自己置於
/etc/sudoers
:USER ALL=NOPASSWD:/bin/chvt
當您從 VT 切換到 X11 並返回時,保持不變的一件事是“低級”通用 Linux 輸入設備處理子系統。Linux USB Input Subsystem中的 C和Linux Journal 中的第 2 部分有範例。您的系統可能有一個 Python 庫python-evdev包來簡化此操作。
要嘗試什麼是可能的,
evtest
可用於簡單地將事件轉儲到給定的輸入設備上,您可以使用awk
腳本或類似工具跟踪您感興趣的鍵的狀態,並讓它發出chvt
命令。