X11
如何從命令行更改目前選擇的鍵盤佈局?
我有我的鍵盤佈局(其中兩個)並通過以下命令配置它們之間的切換:
setxkbmap -layout us,ru -option -option "grp:lctrl_lshift_toggle,ctrl:nocaps"
現在我想切換到
us
佈局,使用一些命令行命令。那可能嗎?
您可以使用xkb-switch(
-n
切換到下一個佈局):xkb-switch -n
或xkblayout-state(
set +1
在你的情況下環繞):xkblayout-state set +1
或
xte
從xautomation模擬Control_L
+Shift_L
按鍵/釋放:xte 'keydown Control_L' 'keydown Shift_L' 'keyup Shift_L' 'keyup Control_L'
在 Stack Exchange 中搜尋kbdmap 時,會發現此頁面沒有提及該詞。為清楚起見,這是一個答案(不完全符合問題的X11標籤,但它應該對某人有所幫助)……
僅限於虛擬控制台時
–沒有X。
kbdmap (1)
kbdmap
,vidfont
– syscons 和 vt 的前端… 可以輕鬆設置可用的鍵盤映射 …
確實,這很簡單(對我來說,更改為英國鍵盤佈局)很有效。
使用 X 時
– 例如,使用基於 FreeBSD 的 TrueOS 桌面。
來自更改鍵盤佈局下的文章 5 ?| FreeBSD 論壇(2015-08-03):
kbdmap
用於控制台。setxkbmap
是您想要的 X11 實用程序。…有一個警告,例如更改為英國時:
$ kbdmap kbdcontrol: getting keymap: Inappropriate ioctl for device You are not on a virtual console - expect certain strange side-effects lang_default = en dialect = en_...UTF-8 lang_abk = en … keymap="uk.kbd" $