Respostas:
Do terminal
Inglês para hebraico e vice-versa com Alt+Shift
setxkbmap -option grp:alt_shift_toggle us,il
Você pode ver todos os alias de localidade com este comando
cat /etc/locale.alias
Mais informações sobre setxkbmap no manual
man setxkbmap
Você pode encontrar todos os mapas de teclas diferentes nos seguintes locais:
/usr/share/keymaps/i386/
/usr/share/kbd/keymaps/i386/
/usr/share/X11/xkb/symbols/
Para alterar o layout do teclado (por exemplo, para espanhol) na linha de comando do Linux, digite o seguinte comando:
loadkeys es
Para X:
setxkbmap es
Para tornar essas alterações amplas no sistema, supondo que você esteja usando o Ubuntu, você pode usar o seguinte:
sudo dpkg-reconfigure console-setup
/usr/share/X11/xkb/symbols/
esetxkbmap es
Isso funciona melhor que o setxkbmap com o indicador de layout do teclado Gnome / Unity.
gsettings set org.gnome.desktop.input-sources current 0
0 é o índice do layout (0 padrão ou layout superior). Layouts indexados a partir de 0.
Para facilitar o uso, crie um alias.
dconf-editor
ferramenta e verificar /org/gnome/desktop/
. eles podem apenas mudar o nome.
Parece não haver uma ferramenta CLI padrão, mas o xkb-switch é uma pequena ferramenta de código aberto para fazer o trabalho. Apenas o testei com o Ubuntu 16.04.4 LTS e funciona perfeitamente.
$ xkb-switch # display current group
ua
$ xkb-switch -l # list groups
us
ua
$ xkb-switch -s us # switch to a named group
$
Isso parece melhor do que as outras soluções, porque setxkbmap <name>
destrói todas as opções e setxkbmap -layout <name>
, apesar de preservar as opções, ainda não altera o indicador da barra de tarefas nem o grp_led
conjunto de configurações.
Se seus ~/.config/kxkbrc
usos LayoutLoopCount
(por exemplo, estiverem configurados para menos do que o número total de layouts listados em LayoutList
), desta forma:
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
então xkb-switch
só permitem alternar entre os layouts no grupo atual.
Notei seu comentário:
Logo antes do meu protetor de tela ser ativado, desejo mudar para o inglês para facilitar a digitação da minha senha quando voltar.
Esse era precisamente meu objetivo, então aqui está a resposta:
Para fazer isso, você só precisa envolvê-lo em um script que dbus-monitor
goste dos discutidos aqui .
Usando gsettings no 18.04+ com o Gnome, você pode adicionar layouts de teclado e alternar entre eles na linha de comando ou no alternador de layout de teclado na área de trabalho.
1.Layouts e opções de teclado presentes:
$ 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.Adicionando layouts 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. Alterando o layout do teclado atual na linha de comando:
$ gsettings set org.gnome.desktop.input-sources current 1
Como agora temos três idiomas diferentes, temos três opções de 0 a 2, sendo 1 espanhol, 2 norueguês e 3 grego. Assim, a configuração atual como 1 acima torna o norueguês o layout de teclado atual.
4. Listando todos os layouts de teclado possíveis:
cat //usr/share/X11/xkb/rules/base.lst
5.Alterando o layout do teclado com um atalho de teclado:
Um atalho de teclado é pré-configurado para alterar o layout do teclado. O atalho atual:
$ gsettings get org.gnome.desktop.wm.keybindings switch-input-source
['<Super>space']
Um novo atalho pode ser definido usando gsetting set, mas tome cuidado para não usar um atalho que já esteja em uso. Para listar todos os atalhos em 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 o Ubuntu 18.04 + Gnome, as outras respostas não funcionaram para mim, mas o seguinte:
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()"
O argumento em "inputSources [0]" é o índice do layout do teclado, o mesmo da solução gsettings.
Encontrei no Linux StackExchange .
Apenas por curiosidade, por que você faria isso? Por que você abriria um terminal e eles digitaram um comando para mudar o layout do teclado quando você pode fazer isso com um simples atalho de teclado! Supondo que você usar o Ubuntu, ele vai como Windows
+Space