Come cambio tastiere dalla riga di comando?

54

Come cambio i layout della tastiera dalla riga di comando? Ad esempio, voglio passare dall'inglese all'ebraico. Sono in grado di farlo da lightdm con la piccola icona nell'angolo del mio schermo.

    
posta Eyal 30.10.2012 - 14:05

7 risposte

41

Dal terminale

Da inglese a ebraico e viceversa con Alt + Maiusc

setxkbmap -option grp:alt_shift_toggle us,il

Puoi vedere tutti gli alias delle impostazioni internazionali con questo comando

cat /etc/locale.alias

Maggiori informazioni su setxkbmap nel manuale

man setxkbmap
    
risposta data Nick Thom 30.10.2012 - 15:29
48

Puoi trovare tutte le diverse keymap nei seguenti percorsi:

/usr/share/keymaps/i386/
/usr/share/kbd/keymaps/i386/
/usr/share/X11/xkb/symbols/
  

Per cambiare il layout della tastiera (ad es. in spagnolo) nel comando Linux   linea, digitare il seguente comando:

loadkeys es

Per X:

setxkbmap es
     

Per rendere questi cambiamenti a livello di sistema, supponendo che tu stia usando Ubuntu, tu   può usare il seguente:

sudo dpkg-reconfigure console-setup
    
risposta data Dr_Bunsen 30.10.2012 - 14:09
12

Ubuntu 13.10 o successive

Funziona meglio di setxkbmap con l'indicatore di layout della tastiera Gnome / Unity.

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

0 è l'indice di layout (0 predefinito o layout superiore). Layout indicizzati a partire da 0.

Per un facile utilizzo, crea un alias.

    
risposta data user.dz 01.02.2014 - 14:45
9
setxkbmap us,il -option "lv3:ralt_alt,grp:alt_shift_toggle"

questo comando ti consente di alternare tra inglese ed ebraico solo tramite right alt + shift e ti salva da left alt + spostare .

    
risposta data ansar313 03.02.2014 - 14:44
1

Sembra che non ci sia uno strumento CLI standard, ma xkb-switch è un piccolo strumento open-source per fare il lavoro. L'ho appena testato con Ubuntu 16.04.4 LTS e funziona senza problemi.

$ xkb-switch       # display current group
ua
$ xkb-switch -l    # list groups
us
ua
$ xkb-switch -s us # switch to a named group
$

Questo sembra migliore delle altre soluzioni perché setxkbmap <name> rovina tutte le opzioni e setxkbmap -layout <name> , mentre conserva le opzioni, non riesce ancora a cambiare l'indicatore della barra delle applicazioni né grp_led se impostato.

Caveat

Se ~/.config/kxkbrc utilizza LayoutLoopCount (ad es. è impostato su un valore inferiore al numero totale di layout elencati in LayoutList ), come questo:

LayoutList=us,ua,th,de
LayoutLoopCount=2
Options=grp_led:scroll,grp:rwin_switch,compose:menu,lv3:ralt_switch,
        nbsp:level2,grp:rctrl_toggle,misc:typo

quindi xkb-switch ti consente solo di passare da un layout all'altro nel gruppo corrente.

Invoca blocco schermo

Ho notato il tuo commento:

  

Poco prima che il mio screensaver si accenda, voglio passare all'inglese, in modo che sia facile digitare la mia password quando torno.

Questo era esattamente il mio obiettivo, quindi ecco la risposta:
Per fare ciò, è sufficiente racchiuderlo in uno script che si aggancia a dbus-monitor come discusso qui .

    
risposta data bytebuster 20.03.2018 - 12:02
0

Solo per curiosità, perché lo faresti? Perché dovresti aprire un terminale e digitano un comando per cambiare il layout della tastiera quando puoi farlo con una semplice scorciatoia da tastiera! Supponendo che tu usi Ubuntu, va come Windows + Space

    
risposta data EetSandhu 26.02.2017 - 16:08
0

Usando gsettings in 18.04+ con Gnome, puoi aggiungere i layout di tastiera e passare dalla loro riga di comando o dallo switcher della tastiera sul desktop.

1.Present layout e opzioni della tastiera:

$ gsettings list-recursively org.gnome.desktop.input-sources
org.gnome.desktop.input-sources show-all-sources false
org.gnome.desktop.input-sources xkb-options ['terminate:ctrl_alt_bksp']
org.gnome.desktop.input-sources per-window false
org.gnome.desktop.input-sources current uint32 1
org.gnome.desktop.input-sources mru-sources @a(ss) []
org.gnome.desktop.input-sources sources [('xkb', 'es'), ('xkb', 'no')]

2.Aggiunta di layout di tastiera:

$ gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us'), ('xkb', 'no'),('xkb','gr')]"
$ gsettings get org.gnome.desktop.input-sources sources
[('xkb', 'es'), ('xkb', 'no'), ('xkb', 'gr')]

3. Cambiare il layout corrente della tastiera dalla riga di comando:

$ gsettings set org.gnome.desktop.input-sources current 1

Dato che ora abbiamo 3 lingue diverse, abbiamo tre scelte da 0 a 2, con 1 come spagnolo, 2 come norvegese e 3 come greco. Pertanto, l'impostazione corrente su 1 sopra rende norvegese il layout corrente della tastiera.

4.Listing tutti i layout di tastiera possibili:

cat //usr/share/X11/xkb/rules/base.lst

5.Cambiamento del layout della tastiera con una scorciatoia da tastiera:

Una scorciatoia da tastiera è preconfigurata per cambiare il layout della tastiera. La scorciatoia attuale:

$ gsettings get org.gnome.desktop.wm.keybindings switch-input-source
['<Super>space']

Una nuova scorciatoia può essere impostata usando il set di gsetting, ma fai attenzione a non usare una scorciatoia già in uso. Per elencare tutte le scorciatoie in uso:

$ gsettings list-recursively org.gnome.desktop.wm.keybindings
org.gnome.desktop.wm.keybindings cycle-windows-backward ['<Shift><Alt>Escape']
org.gnome.desktop.wm.keybindings minimize ['<Super>h']
org.gnome.desktop.wm.keybindings move-to-workspace-7 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-8 @as []
org.gnome.desktop.wm.keybindings move-to-workspace-9 @as []
org.gnome.desktop.wm.keybindings move-to-monitor-left ['<Super><Shift>Left']
...
    
risposta data ElToro1966 08.05.2018 - 09:40

Leggi altre domande sui tag