configurando o setxkbmap para um único usuário / depurando as alterações do xkbmap

1

Estou tentando fazer algo semelhante ao que este usuário pediu, armazenando meu teclado layout. Meu primeiro pensamento foi usar .bashrc , mas eu mudei para .bash_profile depois de perceber que eu só preciso definir uma vez (e não para cada bash eu começo), como também sugerido nessa resposta. No entanto, notei que o layout do teclado é redefinido em determinados pontos, e não sei como depurar isso (ele está sendo definido? Quando é redefinido exatamente?). Aqui está o que está no meu .bash_profile :

# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
  . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

export PATH

setxkbmap -layout us -variant altgr-intl -option nodeadkeys

Isso às vezes funciona. Tenho notado, em particular, que isso falha quando eu removo meu laptop da estação de acoplamento e alterno para a tela do laptop, em vez dos monitores, porque isso também faz com que o layout do teclado seja redefinido (para inglês americano comum, ou seja, sem altgr-intl). Eu pensei que isso poderia ter algo a ver com isso, então aqui está o script que eu uso para alterar a configuração:

xrandr --output VIRTUAL1 --off --output DP3 --mode 2560x1440 --pos 0x0 --rotate normal --output DP2 --off --output DP1 --off --output HDMI3 --off --output HDMI2 --off --output HDMI1 --off --output LVDS1 --off --output VGA1 --off
xrandr --output VIRTUAL1 --off --output DP3 --off --output DP2 --off --output DP1 --off --output HDMI3 --off --output HDMI2 --off --output HDMI1 --off --output LVDS1 --mode 1366x768 --pos 0x0 --rotate normal --output VGA1 --off

Eu pensei que poderia ter algo a ver com o fato de eu desligar todos os dispositivos de saída, o que pode fazer com que o X pirateça. Estou executando o Fedora 22 com o i3 como gerenciador de janelas.

    
por Rens van der Heijden 04.09.2015 / 08:29

1 resposta

1

Como você está no fedora, talvez você queira experimentar localectl do sempre popular pacote systemd para alterar a localidade padrão, incluindo o teclado:

The keyboard settings control the keyboard layout used on the text console and of the graphical UI before the user logs in, such as the display manager, as well as the default for users after login.

localectl set-x11-keymap layout [model [variant [options]]]

Set the system default keyboard mapping for X11. This takes a keyboard mapping name (such as "de" or "us"), and possibly a model, variant and options

Basicamente, usa os mesmos argumentos que setxkbmap .

Na verdade, ele edita /etc/X11/xorg.conf.d/00-keyboard.conf para definir o valor global padrão para idioma e layout de teclado, ou seja, aquele usado antes do login e por padrão para um usuário.

    
por 04.09.2015 / 17:21