it-swarm.com.de

Wie kann ich Sprachen / Verknüpfungen in Konfigurationsdateien oder in der Befehlszeile festlegen?

Ich muss mehrere Ubuntu 14.04/14.10-Desktops bereitstellen. Die meisten Dinge konnte ich problemlos bereitstellen, da sie in Konfigurationsdateien oder über die Befehlszeile festgelegt werden können.

Ich habe jedoch Probleme mit zwei Dingen: Festlegen der verfügbaren Sprachen und Festlegen der Tastaturkürzel zum Wechseln zwischen den Sprachen. Ich kann sie aus gnome-control-center

  1. Stellen Sie die verfügbaren Sprachen ein

    Region & Language > Input Sources > English (US) + German + Italian

  2. Legen Sie die Tastaturkürzel zum Wechseln der Sprache fest

    Shortcut Settings > Typing > Switch to next source (Super+Escape), Switch to previous source (Shift+Super+Escape)

Ich weiß jedoch nicht, wie ich mit Konfigurationsdateien oder der Befehlszeile vorgehen soll, sodass ich sie nicht automatisch bereitstellen kann.

2
user779159

Die Schlüssel

Die Schlüssel, die Sie suchen, sind:

  1. zum Bearbeiten der Eingangsquellen:

    org.gnome.desktop.input-sources sources
    
  2. zum Bearbeiten der Tastenkombination zum Umschalten der Sprache vorwärts:

    org.gnome.desktop.wm.keybindings switch-input-source
    
  3. um die Eingangsquelle rückwärts zu schalten:

    org.gnome.desktop.wm.keybindings switch-input-source-backward
    

Die Befehle zum Bearbeiten der Einstellungen

Beispielbefehle zum Bearbeiten der drei Befehle über die Befehlszeile:

  1. Um die Eingangsquellen zu bearbeiten, stellen Sie die Eingangsquellen wie in Ihrer Frage erwähnt ein:

    gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us'), ('xkb', 'it'), ('xkb', 'de')]"
    
  2. um die Tastenkombination für die Tastenkombination auf zu setzen Ctrl+space

    gsettings set org.gnome.desktop.wm.keybindings switch-input-source "['<Primary>space']"
    
  3. um die Tastenkombination für die Tastenkombination so einzustellen, dass sie rückwärts wechselt Shift+Super+space

    gsettings set org.gnome.desktop.wm.keybindings switch-input-source-backward "['<Shift><Super>space']"
    

Die Befehle zum Abrufen der aktuellen Einstellungen

gsettings get org.gnome.desktop.input-sources sources
gsettings get org.gnome.desktop.wm.keybindings switch-input-source
gsettings get org.gnome.desktop.wm.keybindings switch-input-source-backward

So finden Sie diese Schlüssel

Sie können nach Stichwörtern in der Datenbank suchen, indem Sie alle Schlüssel mit dem folgenden Befehl auflisten:

gsettings list-recursively

welche listet alle vorhandenen Schlüssel auf, oder (was ich regelmäßig mache) installiere dconf-editor und finde einfach dein/e Keyword (s) mit Ctrl+F.


Bearbeiten

Wie in einem Kommentar gefordert, habe ich ein kleines Skript hinzugefügt, um über die Befehlszeile durch die Eingabequellen zu gehen:

#!/usr/bin/env python3
import subprocess
import sys

src = sys.argv[1]
key = "org.gnome.desktop.input-sources"
get = lambda cmd: subprocess.check_output(["/bin/bash", "-c", cmd]).decode("utf-8").strip()

src_list = len(eval(get("gsettings get "+key+" sources")))-1
current = int(get("gsettings get "+key+" current").split()[-1])
if src == "+":
    set_new_value = "gsettings set "+key+" current "+(str(current+1) if current <  src_list else "0")
Elif src == "-":
    set_new_value = "gsettings set "+key+" current "+(str(current-1) if current > 0 else str(src_list))
subprocess.Popen(["/bin/bash","-c", set_new_value])

Es laufen zu lassen

  1. Speichern Sie das Skript in einer leeren Datei als switch_source.py
  2. Führen Sie es mit dem Befehl:

    python3 /path/to/switch_source.py +
    

    um zur nächsten Eingangsquelle zu gelangen, und

    python3 /path/to/switch_source.py -
    

    um zum vorherigen zu gelangen

5
Jacob Vlijm