Zustandsloses Layout-Umschalten in Ubuntu 14.04

Zustandsloses Layout-Umschalten in Ubuntu 14.04

Bildschirmfoto

Ich benutze häufig zwei Tastaturlayouts (Latein für Englisch und Kyrillisch für Ukrainisch und Russisch) und es stört mich, meineModusfehlerwegen des zusätzlichen UI-Statusbits:das aktuelle Layout.

Früher habe ich sie vollständig beseitigt, indem ichstaatenlosLayoutwechsel, wobei man keine next layoutAktion hat (da eine solche Aktion auf demaktuellen Zustand, was vom Benutzer leicht vergessen wird und so zu Fehlern führt), sondern nur zwei Aktionen:

  1. lateinisches Layout aktivieren;
  2. kyrillisches Layout aktivieren.

Dies war in Versionen vor Saucy problemlos möglich, wie im Screenshot oben dargestellt.

Dieses Einstellungsfensterwurde zerstörtin frech.

Wie bekomme ich jetzt mein Stateless Switching?

Antwort1

Die Tastaturoptionen in Ubuntu und GNOME sind nichts anderes als ein Frontend für die X-Tastaturerweiterung (XKB). Wenn Sie mit der manuellen Konfiguration zufrieden sind, können Sie alle jetzt fehlenden Optionen problemlos über eine setxkbmapBefehlszeile wieder aktivieren.

Um beispielsweise einen nicht-modalen Wechsel zwischen dem russischen und englischen Tastaturlayout einzurichten, können Sie den folgenden Befehl verwenden:

setxkbmap -layout us,ru -option grp:shift_caps_switch

Dadurch werden diese XKB-Einstellungen für die aktuelle Sitzung aktiviert. Wenn Sie die Änderung dauerhaft machen möchten, müssen SieFügen Sie den obigen Befehl zu Ihren Startanwendungen hinzu.

Wenn Sie an den verschiedenen anderen Einstellungen interessiert sind, die Sie mit steuern können setxkbmap, empfehle ich Ihnen, das Handbuch () durchzugehen man setxkbmapund einen Blick auf zu werfen /usr/share/X11/xkb/rules/base.lst. Letzteres dokumentiert alle verschiedenen Möglichkeiten zum Konfigurieren der Compose-Taste, des Tastaturlayouts usw.

Nachfolgend finden Sie den base.lstAbschnitt zum Umschalten des Tastaturlayouts:

! 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)

Die verschiedenen XKB-Einstellungen sind auch unter dokumentiert man 7 xkeyboard-config.


Wenn setxkbmapdas bei Ihnen nicht funktioniert, können Sie dconfstattdessen versuchen, die XKB-Optionen wie folgt festzulegen:

  1. Installieren dconf-editor( sudo apt-get install dconf-editor)
  2. Öffnen Sie den dconf-Editor von Ihrem Dashboard aus und navigieren Sie zuorgGnomDesktop-ComputerEingabequellen
  3. xkb-optionsFügen Sie Ihre XKB-Einstellungen in Form eines Arrays hinzu . Beispiel:['grp:shift_caps_switch']

Quelle:Stellen Sie sicher, dass die setxkbmap-Einstellungen beim Start festgelegt werden

Antwort2

Dieser Befehl setzt das Layout auf das erste (funktioniert gut mit Unity/Gnome Indicator, Ubuntu 13.10/14.04):

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

Sie können Tweak Tools, Gnome Action, Compiz Action Plugin usw. verwenden, um eine Tastenkombination dafür zu erstellen.

Layouts werden beginnend bei 0 indiziert. Sie können also eine Verknüpfung für jedes Layout in der Liste erstellen.

Sie können dies verwenden, um ein komplexes Skript für das letzte Layout zu erstellen, ohne einen Index anzugeben:

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

Wie:

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

Antwort3

Vielleicht einfach das Tweak Tool verwenden:

Bildbeschreibung hier eingeben

HTH

Antwort4

Es stellt sich herausZimtDer Desktop hat diese Option immer noch! Schön.

verwandte Informationen