Ubuntu 14.04 中的無狀態佈局切換

Ubuntu 14.04 中的無狀態佈局切換

螢幕截圖

我廣泛使用兩種鍵盤佈局(英語用拉丁語,烏克蘭語和俄語用西里爾語),體驗我的鍵盤佈局讓我很煩惱。模式錯誤由於 UI 狀態的額外位元:目前佈局

我曾經透過使用完全消除它們無國籍的佈局切換,即沒有next layout任何動作(因為這樣的動作是基於目前狀態,這對用戶來說很容易忘記,從而導致錯誤),而只有兩個操作:

  1. 啟用拉丁佈局;
  2. 啟用西里爾字母佈局。

這在 Saucy 之前的版本中是可以輕鬆實現的。如上面的螢幕截圖所示。

但是,該設定視窗被摧毀了在俏皮。

我現在如何實現無狀態切換?

答案1

Ubuntu 和 GNOME 中的鍵盤選項只不過是 X 鍵盤擴充 (XKB) 的前端。如果您願意手動配置,您可以使用setxkbmap命令列輕鬆地重新啟用所有現在缺少的選項。

例如,要在俄語和英語鍵盤佈局之間設定非模式切換,可以使用以下命令:

setxkbmap -layout us,ru -option grp:shift_caps_switch

這將為當前會話啟用這些 XKB 設定。如果您想讓變更永久生效,您必須將上面的命令添加到您的啟動應用程式中

如果您對可以控制的各種其他設定感興趣setxkbmap,我建議您仔細閱讀手冊 ( man setxkbmap) 並查看/usr/share/X11/xkb/rules/base.lst。後者記錄了配置撰寫鍵、鍵盤佈局切換等的所有不同方法。

以下是base.lst鍵盤佈局切換部分:

! option
  grp                  Key(s) to change layout
  grp:switch           Right Alt (while pressed)
  grp:lswitch          Left Alt (while pressed)
  grp:lwin_switch      Left Win (while pressed)
  grp:rwin_switch      Right Win (while pressed)
  grp:win_switch       Any Win key (while pressed)
  grp:caps_switch      Caps Lock (while pressed), Alt+Caps Lock does the original capslock action
  grp:rctrl_switch     Right Ctrl (while pressed)
  grp:toggle           Right Alt
  grp:lalt_toggle      Left Alt
  grp:caps_toggle      Caps Lock
  grp:shift_caps_toggle Shift+Caps Lock
  grp:shift_caps_switch Caps Lock (to first layout), Shift+Caps Lock (to last layout)
  grp:win_menu_switch  Left Win (to first layout), Right Win/Menu (to last layout)
  grp:lctrl_rctrl_switch Left Ctrl (to first layout), Right Ctrl (to last layout)
  grp:alt_caps_toggle  Alt+Caps Lock
  grp:shifts_toggle    Both Shift keys together
  grp:alts_toggle      Both Alt keys together
  grp:ctrls_toggle     Both Ctrl keys together
  grp:ctrl_shift_toggle Ctrl+Shift
  grp:lctrl_lshift_toggle Left Ctrl+Left Shift
  grp:rctrl_rshift_toggle Right Ctrl+Right Shift
  grp:ctrl_alt_toggle  Alt+Ctrl
  grp:alt_shift_toggle Alt+Shift
  grp:lalt_lshift_toggle Left Alt+Left Shift
  grp:alt_space_toggle Alt+Space
  grp:menu_toggle      Menu
  grp:lwin_toggle      Left Win
  grp:rwin_toggle      Right Win
  grp:lshift_toggle    Left Shift
  grp:rshift_toggle    Right Shift
  grp:lctrl_toggle     Left Ctrl
  grp:rctrl_toggle     Right Ctrl
  grp:sclk_toggle      Scroll Lock
  grp:lctrl_lwin_rctrl_menu LeftCtrl+LeftWin (to first layout), RightCtrl+Menu (to second layout)

各種 XKB 設定也記錄在man 7 xkeyboard-config.


如果setxkbmap這對您不起作用,您可以嘗試透過dconf以下方式設定 XKB 選項:

  1. 安裝dconf-editorsudo apt-get install dconf-editor
  2. 從儀表板中開啟 dconf 編輯器並導航到組織侏儒桌面輸入來源
  3. 將您的 XKB 設定以xkb-options數組的形式添加。例如:['grp:shift_caps_switch']

來源:使 setxkbmap 首選項在啟動時設定

答案2

此命令會將佈局設為第一個(它與 Unity/Gnome Indicator、Ubuntu 13.10/14.04 配合良好):

gsettings set org.gnome.desktop.input-sources current 0

您可以使用調整工具、gnome 操作、compiz 操作插件等為其建立鍵盤快速鍵。

佈局從 0 開始索引。

您可以使用它為最後一個佈局創建複雜的腳本,而無需給出索引:

 gsettings get org.gnome.desktop.input-sources sources

喜歡:

 gsettings set org.gnome.desktop.input-sources current $(($(gsettings get org.gnome.desktop.input-sources sources | grep -Po "'[[:alpha:]]+'\)" | wc -l)-1))

答案3

也許只是使用調整工具:

在此輸入影像描述

華泰

答案4

事實證明肉桂桌面仍然有這個選項!好的。

相關內容