Respuestas:
Desde la terminal
Inglés al hebreo y viceversa con Alt+Shift
setxkbmap -option grp:alt_shift_toggle us,il
Puede ver todos los alias de configuración regional con este comando
cat /etc/locale.alias
Más información sobre setxkbmap en el manual
man setxkbmap
Puede encontrar todos los mapas de teclas diferentes en las siguientes ubicaciones:
/usr/share/keymaps/i386/
/usr/share/kbd/keymaps/i386/
/usr/share/X11/xkb/symbols/
Para cambiar la distribución del teclado (por ejemplo, al español) en la línea de comandos de Linux, escriba el siguiente comando:
loadkeys es
Para X:
setxkbmap es
Para realizar estos cambios en todo el sistema, suponiendo que esté usando Ubuntu, puede usar lo siguiente:
sudo dpkg-reconfigure console-setup
/usr/share/X11/xkb/symbols/
ysetxkbmap es
Esto funciona mejor que setxkbmap con el indicador de diseño del teclado Gnome / Unity.
gsettings set org.gnome.desktop.input-sources current 0
0 es el índice de diseño (0 diseño predeterminado o superior). Diseños indexados a partir de 0.
Para un uso fácil, cree un alias.
dconf-editor
herramienta y verificar /org/gnome/desktop/
. pueden cambiarle el nombre.
Parece que no hay una herramienta CLI estándar, pero xkb-switch es una pequeña herramienta de código abierto para hacer el trabajo. Solo lo probé con Ubuntu 16.04.4 LTS y funciona perfectamente.
$ xkb-switch # display current group
ua
$ xkb-switch -l # list groups
us
ua
$ xkb-switch -s us # switch to a named group
$
Esto se ve mejor que las otras soluciones porque setxkbmap <name>
arruina todas las opciones y setxkbmap -layout <name>
, aunque conserva las opciones, todavía no puede cambiar el indicador de la barra de tareas ni el grp_led
conjunto de opciones .
Si sus ~/.config/kxkbrc
usos LayoutLoopCount
(por ejemplo, se establece en menos del número total de diseños enumerados LayoutList
), de esta manera:
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
entonces xkb-switch
solo le permitiría cambiar entre los diseños en el grupo actual.
Noté tu comentario:
Justo antes de que se active mi protector de pantalla, quiero cambiar al inglés para que sea fácil escribir mi contraseña cuando regrese.
Este era precisamente mi objetivo, así que aquí está la respuesta:
para hacer eso, solo necesita envolverlo en un script que se enganche dbus-monitor
como se describe aquí .
Usando gsettings en 18.04+ con Gnome, puede agregar agregar diseños de teclado y cambiar entre ellos desde la línea de comandos o desde el conmutador de distribución de teclado en el escritorio.
1. Presentaciones y opciones de teclado actuales:
$ 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.Agregando diseños de teclado:
$ 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.Cambiando la distribución actual del teclado desde la línea de comando:
$ gsettings set org.gnome.desktop.input-sources current 1
Como ahora tenemos 3 idiomas diferentes, tenemos tres opciones de 0 a 2, siendo 1 español, 2 noruego y 3 griego. Por lo tanto, establecer la corriente en 1 arriba hace que Norwegian sea la distribución actual del teclado.
4. Listado de todos los diseños de teclado posibles:
cat //usr/share/X11/xkb/rules/base.lst
5. Cambiar el diseño del teclado con un atajo de teclado:
Un atajo de teclado está preconfigurado para cambiar la distribución del teclado. El atajo actual:
$ gsettings get org.gnome.desktop.wm.keybindings switch-input-source
['<Super>space']
Se puede establecer un nuevo acceso directo mediante el uso de gsetting set, pero tenga cuidado de no utilizar un acceso directo que ya esté en uso. Para enumerar todos los accesos directos en 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']
...
Para Ubuntu 18.04 + Gnome, las otras respuestas no funcionaron para mí, pero esto sí:
gdbus call --session --dest org.gnome.Shell \
--object-path /org/gnome/Shell \
--method org.gnome.Shell.Eval \
"imports.ui.status.keyboard.getInputSourceManager().inputSources[0].activate()"
El argumento en "inputSources [0]" es el índice de la distribución del teclado, lo mismo que para la solución gsettings.
Lo encontré en Linux StackExchange .
Solo por curiosidad, ¿por qué harías eso? ¿Por qué abriría un terminal y escribirían un comando para cambiar la distribución del teclado cuando puede hacerlo con un simple atajo de teclado! Asumiendo que usas Ubuntu, va como Windows
+Space