Como posso desativar automaticamente o teclado interno do meu laptop no X.org?

4

Informações sobre a versão do Distro e do X.org

Estou usando o Ubuntu 12.10 com xserver-xorg / quantal 1: 7.7 + 1ubuntu4.

Desativando o teclado embutido no X11

Eu tenho um laptop com um teclado embutido que não reconhece mais certas letras. No momento, estou desativando o teclado interno abrindo um terminal e executando a seguinte função de shell:

disable_keyboard () {
  xinput --set-int-prop $(
    xinput --list |
    ruby -ane 'if /AT.*keyboard/ then puts $_.match(/(?<==)\d+/) end'
  ) "Device Enabled" 8 0
}

Isso funciona (embora manualmente) desabilitando o teclado AT Tradated Set 2 embutido enquanto permite que meu Chicony USB Keyboard externo continue funcionando. No entanto, eu realmente gostaria que isso acontecesse automaticamente durante as sessões do X11.

Eu tentei modificar minha configuração do X.org da seguinte forma:

# /etc/X11/xorg.conf.d/disable_keyboard
Section "InputClass"
    Identifier      "disable built-in keyboard"
    MatchIsKeyboard "on"
    MatchProduct    "AT Translated Set 2 keyboard"
    Option          "Ignore"    "on"
EndSection

No entanto, isso não está sendo originado quando o X11 é iniciado ou não é o encantamento correto. Como posso configurar corretamente o X11 para usar somente o teclado USB?

    
por CodeGnome 01.02.2013 / 21:26

1 resposta

3

Desativar o teclado integrado e o trackpad com InputClass

Pode-se desabilitar os dispositivos internos configurando a opção Ignorar em uma classe de entrada para true ou em . As informações necessárias para corresponder aos dispositivos geralmente podem ser obtidas de /var/log/Xorg.0.log .

Eu escolhi colocar minhas seções desativadoras no arquivo de configuração evdev que já estava presente, já que no meu sistema ambos os dispositivos usam o driver evdev. As seções poderiam facilmente ir para outro lugar, mas não tenho certeza sobre a precedência das regras de correspondência e decidi protegê-la colocando as regras no mesmo arquivo acima de outros dispositivos que contêm uma linha Driver "evdev" .

# /etc/X11/xorg.conf.d/10-evdev.conf

Section "InputClass"
        Identifier      "Built-In Touchpad"
        MatchIsTouchpad "on"
        MatchProduct    "SynPS/2 Synaptics TouchPad"
        Option          "Ignore" "true"
EndSection

Section "InputClass"
    Identifier          "Built-In Keyboard"
    MatchIsKeyboard     "on"
    MatchProduct        "AT Translated Set 2 keyboard"
    Option              "Ignore" "true"
EndSection
    
por 07.05.2013 / 00:50