GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

Tastaturlayouts mit I3 wechseln?

Ich habe eine frische i3-Version 4.11 (2015-09-30, Zweig „4.11“) über meinem Ubuntu 16.04 installiert.
Eigentlich muss ich 3 verschiedene Tastaturlayouts verwenden, zum Beispiel en , fr und ru mit der Möglichkeit, zwischen ihnen zu wechseln, indem Sie eine Tastenkombination verwenden.

Ich habe einige Methoden ausprobiert, aber keine war vollständig zufriedenstellend:

  • Verwendung von ibus-daemon funktioniert fast, aber ich kann keine Verknüpfungen zum Ändern des Layouts verwenden.
  • Mein eigentliches Setup ist die Konfiguration von setxkbmap wenn ich i3 starte :

    exec --no-startup-id "setxkbmap -model pc105 -layout fr,us,ru -option grp:alt_shift_toggle"
    

Ich kann also zwischen meinen Layouts wechseln, aber manchmal habe ich keine Ahnung, welches Layout ich gerade verwende, weil es in diesem Setup kein Tray-Icon dafür gibt.

Zum Schluss meine Bedürfnisse sind:

  • Sie können Layouts wechseln, indem Sie einige Hotkeys drücken.

  • Einige Hinweise (vorzugsweise Tray-Icon) für das Layout, das ich tatsächlich verwende.

Gibt es etwas Abhilfe zu diesem Thema? Oder gibt es vielleicht ein i3-Plugin, das tatsächlich funktioniert? Irgendeine dritte Software?

Akzeptierte Antwort:

Sie können dies mit xkblayout-state tun und i3blocks

Für xkblayout-state :

Ich nehme an, Sie haben git .

~$ git clone https://github.com/nonpop/xkblayout-state.git
~$ cd xkblayout-state
~$ make

Kopieren Sie nun den kompilierten xkblayout-state irgendwo in Ihrem PATH , zum Beispiel:

~$ `cp xkblayout-state /usr/local/bin/`

Jetzt für i3blocks :

sudo apt-get install i3blocks
cp /etc/i3blocks.conf ~/.i3blocks.conf

In Ihrem i3 Konfigurationsdatei (~/.config/i3/config) ersetzen Sie i3status mit i3blocks ,

# Start i3bar to display a workspace bar (plus the system information i3status
# finds out, if available)
bar {
        status_command i3blocks
        tray_output primary                                               
}
# in case of layout change event - send signal to i3blocks
bindsym ISO_Next_Group exec pkill -RTMIN+1 i3blocks

Und starten Sie i3wm neu (mod+shift+R), Sie sollten jetzt i3blocks sehen erschienen.

Öffnen Sie Ihre ~/.i3blocks.conf und fügen Sie irgendwo hinzu (z. B. direkt über dem Abschnitt [VOLUME]):

#Language indicator
[language]
#label=LNG
command=xkblayout-state print %s | awk '{print toupper($0)}'
interval=once
signal=1

Starten Sie i3wm erneut neu (mod+shift+R), und Sie sollten Ihre Gebietsschemas in der Statusleiste sehen und umschalten.

Sehen Sie sich xkblayout-state --help an , gibt es viele Optionen für unterschiedliche Ausgaben.


Ubuntu
  1. Alps Touchpad auf Dell Inspiron I15rn-3647bk mit Ubuntu 11.10 X64?

  2. USB 3.0 Hub funktioniert nicht mit einigen Geräten unter Ubuntu 18.04?

  3. Separate Tastenkombinationen zum Umschalten zwischen Tastaturlayouts?

  4. Überwachen Sie einen HP Switch mit Zabbix über SNMP

  5. Linux:Mausklicks mit Tastatur emulieren

Bringen Sie mit lolcat Farbe in Ihr Linux-Terminal

So fügen Sie das Tastaturlayout auf Ubuntu 22.04 Desktop hinzu und wechseln es

Einige gängige Ubuntu Display Manager und wie man zwischen ihnen wechselt

Plasma-Geheimnisse:zusätzliche Sprachen und Tastaturlayouts

Ist es möglich, Windows mit Tastaturkürzeln in der Gnome-Shell zu platzieren?

Wie verstecke ich die Tastaturlayoutanzeige in Ubuntu 17.10 und höher mit Gnome 3?