Autor Tópico: Configuração manual de teclados com padrão internacional (para Notebooks e PCs)  (Lida 320401 vezes)

Offline alexmatos

  • Usuário Ubuntu
  • *
  • Mensagens: 792
  • Arch Linux / Ubuntu 7.04
    • Ver perfil
Se você tem um teclado padrão ABNT2, provavelmente não vai precisar ler essa dica. Agora, se você tem um daqueles notebooks que comprou nos EUA, ou um notebook muito velho (o meu caso), essa dica pode lhe ser muito útil.

Um dos grandes problemas na configuração de um notebook no Linux é que não existem drivers para o teclado, ainda mais se o notebook é antigo. Num notebook com padrão internacional (o meu é um Toshiba Satellite, de quase sete anos de idade) você normalmente tem duas opções:

  • Escolher o padrão abnt2 e ficar com os ç, á, ã e etc, funcionando, em lugares completamente distintos do que as teclas indicam,
  • Escolher o padrão usa e ficar com as teclas funcionando nos lugares indicados, porém não conseguir pôr acentos e etc (ex.: ç = 'c, á = 'a, ã = ~a).

No meu caso era um pouco pior, já que na primeira opção, eu perdia minha /, e na segunda, a minha \.

Seria ideal, então, conseguir configurar tecla por tecla, na segunda opção, para ter minha \ de volta e a acentuação funcionando normalmente.

Depois de muito procurar, achei alguns sites explicando sobre o procedimento, mas nenhum deles conseguiu me ensinar, sozinho, como fazer isso. Depois que, com muita briga, consegui a solução, resolvi postar aqui para que outros, como eu, possam ter seus teclados funcionando perfeitamente. O procedimento foi testado no Xubuntu e provavelmente funciona também no Ubuntu e no Kubuntu. Não precisa de softwares adicionais além dos que já vem com a distribuição e pode ser feito por qualquer um, leigo ou experiente. Sem mais delongas, vamos lá:

Troque o padrão do seu teclado para Inglês dos Estados Unidos. Usuários do Ubuntu e Kubuntu devem ter uma ferramenta com interface gráfica para executar essa tarefa. No Xubuntu, é assim:

Abra o terminal e faça um backup do arquivo de configuração do teclado:

Código: [Selecionar]
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf_BACKUP
Abra o arquivo de configuração:

Código: [Selecionar]
sudo mousepad /etc/X11/xorg.conf
Procure algo que se pareça com isso:

Código: [Selecionar]
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "abnt2"
Option "XkbLayout" "br"
EndSection

e troque para:

Código: [Selecionar]
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xfree86"
Option "XkbModel" "pc104"
Option "XkbLayout" "us"
EndSection

Salve o arquivo e digite, no terminal:

Código: [Selecionar]
setxkbmap us
Pronto! O perfil já está alterado.

Vamos usar um programinha chamado xev para obter informações sobre cada tecla que queremos alterar.

Abra o terminal e digite:

Código: [Selecionar]
xev
Pressione a primeira tecla de deseja alterar. Algo assim vai aparecer:

Código: [Selecionar]
KeyPress event, serial 31, synthetic NO, window 0x2400001,
    root 0x48, subw 0x0, time 1146030644, (-333,449), root:(90,755),
    state 0x0, keycode 34 (keysym 0xfe51, dead_acute), same_screen YES,
    XLookupString gives 2 bytes: (c2 b4) "´"
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: True

KeyRelease event, serial 31, synthetic NO, window 0x2400001,
    root 0x48, subw 0x0, time 1146030714, (-333,449), root:(90,755),
    state 0x0, keycode 34 (keysym 0xfe51, dead_acute), same_screen YES,
    XLookupString gives 2 bytes: (c2 b4) "´"
    XFilterEvent returns: False

O que nos interessa nisso tudo é o número do keycode. Nesse caso é o 34. Faça isso com todas as teclas problemáticas e anote os números.

Com os keycode's em mãos, é hora de alterar as funções das teclas.

Abra o terminal e digite:

Código: [Selecionar]
mousepad .Xmodmap
Se você é usuário (K)Ubuntu, troque mousepad por gedit (Ubuntu) ou kedit (Kubuntu). Se você já tem um pouquinho de intimidade com seu sistema, use o seu editor de textos favorito (vim, emacs, etc...). A idéia aqui é criar o arquivo .Xmodmap na sua pasta pessoal.

Agora, vamos fazer a configuração manual das teclas. Adicione uma linha desse tipo para cada tecla que deseja alterar:

Código: [Selecionar]
keycode NÚMERO_DO_KEYCODE = FUNÇÃO_DA_TECLA FUNÇÃO_DA_TECLA_COM_O_SHIFT_PRESSIONADO
Por exemplo, eu quero configurar a tecla com keycode 34 para acento agudo e acento grave. A linha deveria ser assim, então:

Código: [Selecionar]
keycode 34 = acute grave
Porém, desse jeito, quando eu tento acentuar, eu tenho o resultado: 'a, 'e, `a... Vamos resolver esse problema indicando que essa tecla é uma dead key (tecla morta), o que vai fazer com que ela espere a próxima tecla ser pressionada para funcionar. O código então ficaria assim:

Código: [Selecionar]
keycode 34 = dead_acute dead_grave
Com isso, '+a = á, `+a = à e até '+Espaço = ' (aspas simples). Vou colocar o meu arquivo .Xmodmap pra que vocês tenham uma idéia de como ele deve ficar no final:

Código: [Selecionar]
keycode 51 = backslash bar
keycode 48 = dead_acute quotedbl
keycode 49 = dead_grave dead_tilde
keycode 15 = 6 dead_circumflex

Nota: no final dessa dica há uma lista com a maioria dos códigos dos símbolos.

Salve o arquivo. Vamos criar um arquivo executável para que você possa testar a sua configuração. No terminal:

Código: [Selecionar]
mousepad Xmodmap_TESTE
Dentro do arquivo, escreva isso (usando o meu arquivo como exemplo):

Código: [Selecionar]
#!/bin/bash
xmodmap -e 'keycode 51 = backslash bar'
xmodmap -e 'keycode 48 = dead_acute quotedbl'
xmodmap -e 'keycode 49 = dead_grave dead_tilde'
xmodmap -e 'keycode 15 = 6 dead_circumflex'

Para tornar o arquivo executável:

Código: [Selecionar]
sudo chmod +x Xmodmap_TESTE
Execute o arquivo com

Código: [Selecionar]
./Xmodmap_TESTE
E veja se as configurações fizeram efeito. Faça as alterações necessárias no .Xmodmap e no Xmodmap_TESTE até que seu teclado esteja em perfeito funcionamento.

Vamos, agora, adicionar à inicialização do sistema a nossa configuração, para que a gente não tenha que executar o Xmodmap_TESTE manualmente a cada vez que ligarmos o computador.

Nota: a partir daqui, essa dica só é válida para o Xubuntu. Usuários do Ubuntu ou Kubuntu que queiram contribuir com informações de como fazer isso nos respectivos sistemas serão bem-vindos.

Faça um backup do arquivo de inicialização a ser alterado:

Código: [Selecionar]
sudo cp /etc/xdg/xfce4/xinitrc /etc/xdg/xfce4/xinitrc_BACKUP
Abra o arquivo para edição com:

Código: [Selecionar]
sudo mousepad /etc/xdg/xfce4/xinitrc
Localize as linhas:

Código: [Selecionar]
# load local modmap
test -r $HOME/.Xmodmap && xmodmap $HOME/.Xmodmap

e troque por

Código: [Selecionar]
# load local modmap
test -r $HOME/.Xmodmap && xmodmap -e $HOME/.Xmodmap

Salve o arquivo e pronto! O seu teclado já está funcionando perfeitamente!


Lista dos códigos dos símbolos:

acento agudo ( ´ ) -- dead_acute
acento grave ( ` ) -- dead_grave
acento circunflexo ( ^ ) -- dead_circumflex
til ( ~ ) -- dead_tilde
trema ( ¨ ) -- dead_diaeresis
aspas ( " ) -- quotedbl
aspas simples ( ' ) -- apostrophe
ponto ( . ) -- period
vírgula ( , ) -- comma
ponto-e-vírgula ( ; ) -- semicolon
dois-pontos ( : ) -- colon
barra ( / ) -- slash
barra invertida ( \ ) -- backslash
barra vertical ( | ) -- bar
exclamação ( ! ) -- exclam
interrogação ( ? ) -- question
abre-parênteses ( ( ) -- parenleft
fecha-parênteses ( ) ) -- parenright
abre-colchetes ( [ ) -- bracketleft
fecha-colchetes ( ] ) -- bracketright
abre-chaves ( { ) -- braceleft
fecha-chaves ( } ) -- braceright
maior ( > ) -- greater
menor ( < ) -- less
mais ( + ) -- plus
menos ( - ) -- minus
sublinhado ( _ ) -- underscore
asterisco ( * ) -- asterisk
e-comercial ( & ) -- ampersand
percentual ( % ) -- percent
cifrão ( $ ) -- dollar
sustenido ou "jogo-da-velha" ( # ) -- numbersign
arroba ( @ ) -- at

Obs: Se você precisa de algum que não está na lista, pergunte que eu vejo se consigo descobrir.
« Última modificação: 03 de Dezembro de 2006, 15:28 por alexmatos »

Offline engdoug

  • Usuário Ubuntu
  • *
  • Mensagens: 3
    • Ver perfil
    • http://www.douglas.lasthope.com.br
Re: Configuração manual de teclados com padrão internacional (para Notebooks e P
« Resposta #1 Online: 08 de Janeiro de 2007, 19:42 »
Ae  Galera o jeito mais facil de resolver isso é muito simples, tbm tenho um Toshiba Satellite M115-S3094 e tive o mesmo problema, coloque em System Setings o layout com US English -> Variacao intl /
Modelo do Keyboar no meu caso eu coloquei Toshiba S3000

Utilizem o vi ou qualquer outro editor pra alterar o arquivo
/etc/gtk2.0/gtk.immodules

na linha
"cedilla" "Cedilla" "gtk+" "/usr/share/locale" "az:ca:co:fr:gv:oc:pt:sq:tr:wa"

acresente um :en
vai ficar -> "cedilla" "Cedilla" "gtk+" "/usr/share/locale" "az:ca:co:fr:gv:oc:pt:sq:tr:wa
:en"

pronto agora pra modelos de layout en voce tem o ç e nao o 'c haha

Espero ter ajudado, funcionou aqui, quem conseguir com essa dica, deixa um post ae!

vlw!
Douglas Campos
Atlhon 64 300+
MB- Abit Av8
HD SATA 80 Seagate
1GB ddr400 - Kingston
NVidia Gforce 2 - 64 MB ;(

//--------------------
Notebook Toshiba M115-S3094
14.1"
80GB
Intel Core Duo 1.6
1GB DDR2 533

Offline alexmatos

  • Usuário Ubuntu
  • *
  • Mensagens: 792
  • Arch Linux / Ubuntu 7.04
    • Ver perfil
Re: Configuração manual de teclados com padrão internacional (para Notebooks e P
« Resposta #2 Online: 08 de Janeiro de 2007, 21:04 »
Obrigado pela contribuição, amigo!

O motivo pelo qual postei esse procedimento, que parece sem mais complicado, é porque em alguns casos existem teclas que não funcionam em um padrão (o caso das minhas teclas / e \) e esse procedimento permite que você configure a tecla individualmente (o que é algo extremamente poderoso). Isso serve também pra configurar aqueles atalhos da tecla Fn, presente em alguns notebooks, mas isso já é assunto pra outro tópico.

Offline cellopedroso

  • Usuário Ubuntu
  • *
  • Mensagens: 3
    • Ver perfil
Re: Configuração manual de teclados com padrão internacional (para Notebooks e P
« Resposta #3 Online: 23 de Janeiro de 2007, 14:46 »
Olá, consegui resolver o meu problema da seuinte forma:
no xorg.conf configurei o xkblayout para "us_intl".
Código: [Selecionar]
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "xfree86"
Option "XkbModel" "pc104"
Option "XkbLayout" "us_intl"
EndSection

Funcionou direitinho para as teclas mortas e todo o resto.

Offline Madrigal

  • Usuário Ubuntu
  • *
  • Mensagens: 838
    • Ver perfil
Tem um jeito ainda mais fácil! Há mais de um ano queria aprender a configurar, pois bem, basta editar este arquivo:

Citar
sudo gedit /etc/X11/xkb/symbols/br

E pronto!

Só não consegui ainda como configurar as teclas numéricas, pra trocar , por exempo, a vírgula por ponto.

Pra quem interessar, eu ensino os códigos pra língua esperanto aqui: http://www.orkut.com/CommMsgs.aspx?cmm=7270568&tid=2518889040104433878&start=1
 8)

Offline Madrigal

  • Usuário Ubuntu
  • *
  • Mensagens: 838
    • Ver perfil
Obs: Se você precisa de algum que não está na lista, pergunte que eu vejo se consigo descobrir.


Eu gostaria de saber qual é o código para o ordinal masculino (º) e ordinal feminino (ª), pois o que aparece não tem o tracinho embaixo, no Windows aparece, em parece que o padrão de todo Linux é não ter.

Offline bresol

  • Usuário Ubuntu
  • *
  • Mensagens: 56
    • Ver perfil
to tentando fazer uma dessas coisas mas ele diz q nao tenho permicao.... :-\

como resolvo isso?

Offline alexmatos

  • Usuário Ubuntu
  • *
  • Mensagens: 792
  • Arch Linux / Ubuntu 7.04
    • Ver perfil
Normalmente, colocando "sudo" na frente do comando. Isso significa que o comando será executado com permissões administrativas.

Offline lfernandosg

  • Usuário Ubuntu
  • *
  • Mensagens: 477
    • Ver perfil
o teclado estava funcionando normal com as configuraćões

US
usintl     com x marcado nesse nas configuraćões do gnome.

do nada o cedilha ficou doido agora olhem como ele aprece, o resto todo funciona menos o cedilha, já segui o tópico de todas as formas nesse fórum e nada.alguém tem alguma idéia até porque estava tudo normal.


obs.: tem alguma coisa doida mesmo dentro do kopete o cedilha funciona normal.
« Última modificação: 08 de Maio de 2007, 13:54 por lfernandosg »
Dell Xps M1330/c2d 2.0Ghz/4GB ddr2/320GB sata/etc...

Offline alexmatos

  • Usuário Ubuntu
  • *
  • Mensagens: 792
  • Arch Linux / Ubuntu 7.04
    • Ver perfil
o teclado estava funcionando normal com as configuraćões

US
usintl     com x marcado nesse nas configuraćões do gnome.

do nada o cedilha ficou doido agora olhem como ele aprece, o resto todo funciona menos o cedilha, já segui o tópico de todas as formas nesse fórum e nada.alguém tem alguma idéia até porque estava tudo normal.


obs.: tem alguma coisa doida mesmo dentro do kopete o cedilha funciona normal.

Tenta o seguinte: se seu teclado é padrão ABNT2 e tem a tecla ç, vai no terminal e dá o comando

Código: [Selecionar]
xmodmap -e 'keycode 47 = ccedilla Ccedilla'
e testa a tecla ç pra ver se funcionou. Se sim, você vai ter que adicionar essa configuração na inicialização do sistema com o comando

Código: [Selecionar]
echo 'keycode 47 = ccedilla Ccedilla' >> ~/.Xmodmap
Tenta aí e diz pra gente se funcionou.

Offline lfernandosg

  • Usuário Ubuntu
  • *
  • Mensagens: 477
    • Ver perfil
meu teclado é international e não abnt2, como faço? para colocar o cedilha digito o acento agudo+letra C
Dell Xps M1330/c2d 2.0Ghz/4GB ddr2/320GB sata/etc...

Offline Diego_Rocha

  • Usuário Ubuntu
  • *
  • Mensagens: 372
  • Slackware current
    • Ver perfil
Aqui tbm tem umas dicas bem interessantes para quem usa kde

http://www.vivaolinux.com.br/dicas/verDica.php?codigo=7433

Offline alexmatos

  • Usuário Ubuntu
  • *
  • Mensagens: 792
  • Arch Linux / Ubuntu 7.04
    • Ver perfil
meu teclado é international e não abnt2, como faço? para colocar o cedilha digito o acento agudo+letra C
Você tentou seguir esse tutorial? Acho que ele explica o que você deve fazer... tem que ter um pouquinho de paciência, mas funciona!

Suponho que você tenha um notebook, estou errado? Se estiver certo, qual o modelo dele?

Offline lfernandosg

  • Usuário Ubuntu
  • *
  • Mensagens: 477
    • Ver perfil
tentei seguir sim, agora estou com Hp dv6125Se e estava tudo normal tanto que no kopete ele funciona normal mas no resto das aplicações nada....está saindo agora porque estou em outro computador.....
Dell Xps M1330/c2d 2.0Ghz/4GB ddr2/320GB sata/etc...

Offline alexmatos

  • Usuário Ubuntu
  • *
  • Mensagens: 792
  • Arch Linux / Ubuntu 7.04
    • Ver perfil
Quando você vai em Sistema > Preferências > Teclado, na aba Disposições, qual o Modelo de teclado que está selecionado?

Em que parte você não conseguiu seguir o tutorial? Se você seguí-lo do início ao fim, ele funciona, tenho certeza!