Wie stelle ich Sprachen/Verknüpfungen über Konfigurationsdateien oder die Befehlszeile ein?

Wie stelle ich Sprachen/Verknüpfungen über Konfigurationsdateien oder die Befehlszeile ein?

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: dem Einstellen der verfügbaren Sprachen und dem Einstellen der Tastaturkürzel zum Umschalten zwischen den Sprachen. Ich weiß, wie das geht vongnome-control-center

  1. Festlegen der verfügbaren Sprachen

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

  2. Festlegen der Tastaturkürzel zum Umschalten der Sprachen

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

Aber ich weiß nicht, wie ich das über Konfigurationsdateien oder die Befehlszeile machen kann, deshalb kann ich es nicht automatisch bereitstellen.

Antwort1

Die Schlüssel

Die Schlüssel, nach denen Sie suchen, sind:

  1. zum Bearbeiten der Eingabequellen:

    org.gnome.desktop.input-sources sources
    
  2. zum Bearbeiten der Tastenkombination zum Umschalten der Sprachen weiter:

    org.gnome.desktop.wm.keybindings switch-input-source
    
  3. zum Rückwärtsschalten der Eingangsquelle:

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

Die Befehle zum Bearbeiten der Einstellungen

Beispielbefehle zum Bearbeiten der drei über die Befehlszeile:

  1. So bearbeiten Sie die Eingabequellen:

    gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us'), ('xkb', 'it'), ('xkb', 'de')]"
    
  2. zum Einstellen des Schalters - Tastenkombination auf Ctrl+space

    gsettings set org.gnome.desktop.wm.keybindings switch-input-source "['<Primary>space']"
    
  3. zum Einstellen des Schalters - Tastenkombination zum Zurückschalten 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 in der Datenbank nach Schlüsselwörtern suchen, indem Sie alle Schlüssel mit dem folgenden Befehl auflisten:

gsettings list-recursively

Dadurch werden alle vorhandenen Schlüssel aufgelistet, oder (was ich regelmäßig mache) Sie können es installieren dconf-editorund Ihr(e) Schlüsselwort(e) einfach mit Ctrl+ finden F.


Bearbeiten

Wie in einem Kommentar gewünscht, habe ich ein kleines Skript hinzugefügt, um die Eingabequellen von der Befehlszeile aus durchzugehen:

#!/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])

Um es auszuführen

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

    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

verwandte Informationen