O layout do teclado personalizado é redefinido para o padrão após o modo de espera ou reinicialização


11

Eu projetei um layout de teclado para mim, depois de executá- xmodmaplo, funciona bem, mas após o modo de espera ou reinicialização, o layout volta ao qwerty.

Como posso defini-lo como padrão? Meu sistema operacional é o Debian Wheezy com XFCE4.


Eu tenho o mesmo problema, debian jessie com xfce4.
John Lawrence Aspden

Respostas:


6

Confira este tópico do fórum do archlinux Xmodmap Reset após Suspend to RAM . Existem vários exemplos no encadeamento que o ajudarão a começar e mostrarão como configurar um gancho que será acionado por meio do subsistema de gerenciamento de energia que executará sua xmodmapconfiguração sempre que você sair da suspensão.

Algo como o seguinte script, salvo como /etc/pm/sleep.d/11suspend(mudar o meem /bin/su - meque seu nome de usuário real):

#!/bin/bash
case $1 in
    hibernate)
        echo "Hey guy, we are going to suspend to disk!"
        ;;
    suspend)
        echo "Oh, this time we're doing a suspend to RAM. Cool!"
        ;;
    thaw|resume)
        echo "oh, suspend is over, we are in $1 phase..."
            # Set Display #
    DISPLAY=:0.0 ; export DISPLAY
    /bin/su - me -c "sleep 3; /usr/bin/xmodmap /home/me/.xmodmaprc" &
        ;;
    *)  echo "somebody is calling me totally wrong."
        ;;
esac

3

Nota preliminar: você não deve usar o xmodmapcomando obsoleto , mas XKB ( xkbcomp).

Depois, você pode alterar as configurações do seu ~/.xsessionscript. Pessoalmente, tenho:

setxkbmap -types local -print | \
  sed -e '/xkb_symbols/s/"[[:space:]]/+local&/' > $HOME/.xkb/keymap/custom
xkbcomp -w0 -I$HOME/.xkb -R$HOME/.xkb keymap/custom $DISPLAY

no meu ~/.xsessionarquivo e minhas configurações de XKB são inseridas ~/.xkb/symbols/locale ~/.xkb/types/localarquivos. Isso mudará as configurações após cada login no X.

Infelizmente, essas configurações são perdidas após a suspensão / retomada . Existe uma solução alternativa: salve-os e restaure-os via pm-utils com um script no /etc/pm/sleep.ddiretório; você pode precisar

xhost +si:localuser:root

no seu ~/.xsessionscript, pois o root não possui suas informações xauth. Dei um exemplo (para XKB): https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=633849#92


~/.xsessionnão está sendo chamado após o resumo aqui. Você sabe por quê?
brauliobo

O @brauliobo ~/.xsessionnunca é executado após o resumo, apenas quando a sessão X é iniciada. Você precisa fazer xhost +si:localuser:rootapenas neste momento.
precisa saber é

Muito obrigado por esta informação. Eu não fazia ideia de que havia um método mais novo do xmodmapque carregar mapas de teclas personalizados. Parece funcionar muito melhor também. No meu caso (XUbuntu 18.04), parece sobreviver também a suspensão / retomada.
Tobia
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.