Mapeando acentos no N900 com teclado US

by marcelobarros on 26/12/2009 · 25 comments

Se tinha algo que estava me incomodando no N900 era a digitação de acentos (o meu modelo segue o teclado americano). Perde-se um tempo enorme já que é preciso exibir a janela de símbolos e escolher o acento desejado através de um toque na tela. Depois, voltar para o teclado e digitar a letra a ser acentuada.

Pensei que o xmodmap resolveria o problema mas vi no fórum do Maemo que ele não está funcionando adequadamente ainda. A estratégia alternativa é via xkb, alterando o mapeamento do teclado. O melhor link que achei sobre o assunto foi o blog The world won’t listen. No fundo, é preciso alterar o arquivo /usr/share/X11/xkb/symbols/nokia_vndr/rx-51, indicando as alternativas de mapeamento.

No meu caso, eu usei a tecla de função (shift azul) para acessar os acentos grave, agudo, circunflexo e til nas teclas de direção up, down, left e right. Também aproveitei para mapear o cedilha na combinação shift azul + backspace, como pode ser visto nesta montagem perfeita:

Abaixo, o trecho alterado, que fica bem no final do arquivo. As quatro linhas comentadas são as originais, seguidas pelas cinco linhas novas. Eu usei o vi para fazer a edição, direto no aparelho, como super usuário (root). Veja como virar root neste post e use o leafpad caso não saiba usar o vi. Todo cuidado é pouco e não me responsabilizo por qualquer dano. Tudo por sua conta e risco, naturalmente. Fazer uma cópia do arquivo original é sempre uma boa idéia. O arquivo completo, compactado, pode ser baixado daqui.

    //key 	{ type[Group1] = "ONE_LEVEL", symbols[Group1] = [	Up	] };
    //key 	{ type[Group1] = "ONE_LEVEL", symbols[Group1] = [	Left	] };
    //key 	{ type[Group1] = "ONE_LEVEL", symbols[Group1] = [	Down	] };
    //key 	{ type[Group1] = "ONE_LEVEL", symbols[Group1] = [	Right	] };
    key 	{ type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [	Up,dead_acute	] };
    key 	{ type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [	Left,dead_circumflex	] };
    key 	{ type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [	Down,dead_grave	] };
    key 	{ type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [	Right,dead_tilde	] };
    key 	{ type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [	BackSpace,ccedilla	] };

Parece estranho, mas você acostuma rapidinho. Enquanto não temos um teclado brasileiro no N900, acredito que a dica pode ser útil para os que estão importando o aparelho.

Posts Relacionados:

  1. Um pequeno review do teclado bluetooth Nokia
  2. Compartilhe o teclado e o mouse do PC com o Tablet
  3. Leia o manual – Colocando acentos no N97
  4. Review duplo: Teclado Noteship e Loja Atera
  5. Revisão do teclado bluetooth iGo Stowaway


Abelhas Estressadas

{ 23 comments }

1 Fernando "Eagle" de Sousa 27/12/2009 às 0:15

@marcelo vc como sempre competentíssimo com seus posts. Apesar de estar esperando o E72, meu sonho de consumo n#1, o N900 é o n#2 então debuga ele ai que quando eu tiver o meu, seguirei todos os seus posts aqui no NOKIABR.

Gostou ou não gostou: Positivo 0 Negativo 0
2 João Bernardo 27/12/2009 às 13:51

Mas esse programa também pinta as teclas?? :D

Gostou ou não gostou: Positivo 0 Negativo 0
3 Marcelo Barros de Almeida 27/12/2009 às 16:35

Não é fantástico ? Você muda o mapa e isso se reflete nas teclas. É uma nova tecnologia de nano tinta remoto controlada. No fundo, a Nokia só faz um teclado e altera o firmware. :)

Gostou ou não gostou: Positivo 0 Negativo 0
4 Fernando "Eagle" de Sousa 27/12/2009 às 17:47

Eu já desconfiava disso. Ha ha ha. Pelo visto essa vai ser a alternativa dos Nokiamaníacos que adquirirem o N900 enquanto ele não vem para o Brasil.

Gostou ou não gostou: Positivo 0 Negativo 0
5 Aknaton 28/12/2009 às 0:49

Bom dia!
Ótima dica! Mas francamente isso é demais.
Tantos malabarismos pra poder usar um gadget.
E caro pacas.é como comprar um carro sem motor e direção.
Vou esperar até o N900 estar em condições de uso se ter que fazer nada!
E claro um preço mais realista!

Gostou ou não gostou: Positivo 0 Negativo 0
6 Marcelo Barros de Almeida 28/12/2009 às 12:42

@Aknaton de certa forma, concordo. Uma versão em pt_br, teclado pt_br, preço mais baixo e alguns updates de firmware o tornarão mais “aprazível”.

Mas, por hora, precisamos ajudar os early adopters :)

Gostou ou não gostou: Positivo 0 Negativo 0
7 Bruno Gomes 28/12/2009 às 13:20

Oi Marcelo, muito boa essa dica, estava sentindo falta mas ainda não tinha tido tempo de pesquisar. Só dois comentários: o trecho do arquivo que você publicou aqui está incompleto (faltam os nomes das teclas após o “key” no começo das linhas) e seria interessante você colocar também que para que a configuração tenha efeito sem reboot, é necessário rodar um “setxkbmap us”. Abraço!

Gostou ou não gostou: Positivo 0 Negativo 0
8 Fernando "Eagle" de Sousa 28/12/2009 às 13:53

@Aknaton, concordo com vc e acho que a Nokia está negligenciando o mercado consumidor brasileiro, o N900 em PT_BR ainda nem foi anunciado e o E72, apesar de homologado pela ANATEL só fica no status de “Avise-me quando estiver disponível”. Mas não se engane, a plataforma MAEMO ainda vai nos dar muitas alegrias, eu creio até que o N900 é um Tablet Conceito, e será seguido por uma geração de gadgets que rivalizarão como ANDROID em praticidade, produtividade e diversão.

Gostou ou não gostou: Positivo 0 Negativo 0
9 isaias 28/12/2009 às 14:31

isso ae fernando “eagle”
aa e o x6 foi homologado pela anatel (segundo o picolé parcelado

Gostou ou não gostou: Positivo 0 Negativo 0
10 Rodrigo Antonioli 28/12/2009 às 16:36

Essa dica é nota 1000! Muito Obrigado! Já está funcionando aqui perfeito!
Só reforço o aviso do Bruno Gomes, copiando o código do seu arquivo modificado. Lá está com o nome das teclas:

partial hidden alphanumeric_keys
xkb_symbols "arrows_4btns" {
// standard arrows mapping
// normal 2nd level must not be enumerated to allow text selection with Shift key
key { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Up,dead_acute ] };
key { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Left,dead_circumflex ] };
key { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Down,dead_grave ] };
key { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Right,dead_tilde ] };
key { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ BackSpace,ccedilla ] };
// original mapping
//key { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ Up ] };
//key { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ Left ] };
//key { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ Down ] };
//key { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ Right ] };
};

depois da edição, rode setxkbmap us

Gostou ou não gostou: Positivo 0 Negativo 0
11 Fernando "Eagle" de Sousa 28/12/2009 às 16:42

A comunidade Maemo se pronuncia…..hahahaha @marcelobarros vc iniciou um processo amigo.

Gostou ou não gostou: Positivo 0 Negativo 0
12 Rodrigo Antonioli 28/12/2009 às 16:55

Caras, mandei o código e não apareceu o nome das teclas porque, como elas estão entre o símbolo de menor e maior, ele acha que é uma tag html. Acho que foi o mesmo problema do post.
Agora vai. Se não sair, lembre-se de copiar o código do arquivo disponibilizado no post COM O NOME DAS TECLAS.


partial hidden alphanumeric_keys
xkb_symbols "arrows_4btns" {
// standard arrows mapping
// normal 2nd level must not be enumerated to allow text selection with Shift key
key <UP> { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Up,dead_acute ] };
key <LEFT> { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Left,dead_circumflex ] };
key <DOWN> { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Down,dead_grave ] };
key <RGHT> { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ Right,dead_tilde ] };
key <BKSP> { type[Group1] = "PC_FN_LEVEL2", symbols[Group1] = [ BackSpace,ccedilla ] };
// original mapping
//key <UP> { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ Up ] };
//key <LEFT> { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ Left ] };
//key <DOWN> { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ Down ] };
//key <RGHT> { type[Group1] = "ONE_LEVEL", symbols[Group1] = [ Right ] };
};

Gostou ou não gostou: Positivo 0 Negativo 0
13 José Antonio Oliveira 28/12/2009 às 16:57

Agora sim. Realmente o texto foi comido pelo Wordpress porque ele pensou que eram tags. :)

Gostou ou não gostou: Positivo 0 Negativo 0
14 Douek 10/03/2010 às 0:00

alguem teve problemas nesse processo?

Fiz como manda e não funcionou…ai pensei, preciso reiniciar. Quando reiniciei, ele ligava e ficava travado numa tela que não se podia fazer nada, apenas com o Mplayer gadget na tela e nenhum comando aceitava. Tive que flashear o aparelho!

Alguma idéia do pq disso?

O que seria o comentário do Rodrigo Antonioli:
——————————————————–
depois da edição, rode setxkbmap us
——————————————————–
Como faz isso??

Gostou ou não gostou: Positivo 0 Negativo 0
15 Douek 10/03/2010 às 0:10

ja descobri, faltou depois de fazer a edição do arquivo ir no terminal do aparelho e dar o comando, como o Rodrigo disse, mas eu tava escrevendo setxBKmap… :-P por isso o erro!

Gostou ou não gostou: Positivo 0 Negativo 0
16 Igor 15/03/2010 às 21:41

Talvez minha dúvida seja muito besta, mas só estou com o N900 há dois dias, então tá valendo…

Tentei fazer o procedimento descrito, mas não tenho permissão pra alterar esse arquivo. O que devo fazer?

Gostou ou não gostou: Positivo 0 Negativo 0
17 Igor 16/03/2010 às 14:41

Já instalei o rootssh e configurei o teclado com sucesso :)

Gostou ou não gostou: Positivo 0 Negativo 0
18 Daniel 27/05/2010 às 17:28

Galera, fui atualizar arquivo /usr/share/X11/xkb/symbols/nokia_vndr/rx-51 para mapear os acentos, e tô achando que esqueci de fechar um colchete no final… :(
Salvei td e reiniciei, e agora ele liga, mas aparece apenas o relógio lá em cima e fica com aquelas bolinhas de loading direto na tela!!! Acho que está funcionando, mas não está carregando a interface gráfica, pois qndo ligo o carregador ele faz o som, recebi um SMS e ele fez o som de alerta e mudou a cor do led para aazul, mas a tela não responde….

Me ajudem, como posso reverter para o arquivo antigo (que fiz bkp) ou editá-lo novamente para corrigí-lo???????
Tks desde já!

Gostou ou não gostou: Positivo 0 Negativo 0
19 Pek 28/05/2010 às 13:24

O meu também deu isso quando eu fui alterar o teclado pela primeira vez porque eu copiei o código do post sem os nomes das teclas, daí eu tive que flashear o aparelho pra que ele voltasse a funcionar.

Gostou ou não gostou: Positivo 0 Negativo 0
20 Diego Nobre 06/07/2010 às 15:41

Amigos, alguém já mapeou com o novo fimeware?

estou tentanto acessar o arquivo, já como usuário master digamos assim e nada, não tenho acesso ao arquivo.

Obrigado pela ajuda.

abraços

Gostou ou não gostou: Positivo 0 Negativo 0
21 Joel Teixeira 29/07/2010 às 20:49

Caros,

Como administrador do MaemoBrasil.org, peço desculpas pelo incidente em relação a falta de referência no artigo publicado em nosso site. Quando um colaborador envia uma matéria, parto da premissa que é autoral, sendo impossível para mim verificar a cada matéria enviada por conteúdo equivalente em toda web. É a primeira vez, e espero que última, que temos um incidente deste tipo.

Para conhecimento, o colaborador que enviou a matéria não tinha acesso a edição, e mencionou ter esquecido a adição de créditos ao enviar para revisão. Mas tentou, mesmo antes das reclamações, entrar em contato comigo para que o fizesse. Estive nestes dias escrevendo uma matéria para a revista Espírito Livre e ignorei durante algum tempo meu correio eletrônico, ou não a concluiria. As medidas foram tomadas imediatamente no instante em que tomei conhecimento.

Conto com sua compreensão, e encontro-me totalmente disponível para quaisquer esclarecimentos.
Joel Teixeira

Gostou ou não gostou: Positivo 0 Negativo 0
22 José Antonio Oliveira 29/07/2010 às 22:15

Olá Joel!

Muito obrigado pelas rápidas providências. Fique tranquilo, isso acontece. O que importa é que já foi resolvido.

Desejo bastante sucesso a você e ao MaemoBrasil.org.

Um abraço, José Antonio.

Gostou ou não gostou: Positivo 0 Negativo 0
23 Saul 20/10/2010 às 17:25

o comando “setxkbmap us” serve tanto para o N900 americano quanto europeu? fiquei na dúvida pelo “us”

Gostou ou não gostou: Positivo 0 Negativo 0

Comments on this entry are closed.

{ 2 trackbacks }

Previous post:

Next post: