# Vim Latex + Teclado us-acentos

## gralves

Fala pessoal,

   Estou com um problema no vim-latex que está me deixando louco: meu teclado é modelo americano e uso o "layout" us-acentos de modo que, se quero produzir o ç devo digitar ' + c . Até aí tudo bem, o problema é que o vim-latex acha que não reconhece o ç e mostra apenas um "quadradinho" quando entro esta combinação de teclas (se abro um arquivo que já tem o ç ele mostra normalmente, mas não me permite incluir novos ç 's).

   Também tenho problemas com o ã . Minha solução até agora foi dar copy/paste com o mouse, mas gostaria de saber se existe alguma maneira de resolver o problema.

   Obrigado,

Gustavo

----------

## RoadRunner

Não sei resolver o teu problema com os acentos, mas podes sempre usar o método manual de especificar acentuação em latex. dá uma olhada em http://sitelatex.vilabol.uol.com.br/simbolos.html

----------

## fernandotcl

Seja mais específico, isso é no X? E o Vim num terminal?

----------

## gralves

Tenho o problema tanto no X, quanto no console usando o VIM (não testei por ssh). O problema tb aparece no gvim.

----------

## fernandotcl

Bom, parece que é o que o RoadRunner falou. Talvez o latex não permita caracteres acentuados diretamente, talvez tenha um jeito do Vim converter esses para caracteres escaped, mas eu realmente não posso ajudar, porque nunca mexi com latex.

Eu perguntei porque talvez fosse um problema de locales, mas parece que não.

----------

## Operador Nabla

O problema aqui não é com o LaTeX (mesmo porque ele só é executado depois que o texto é escrito), mas é com o Vim mesmo (talvez ele não esteja reconhecendo o mapa do teclado).

Em outros modos (não LaTeX), o Vim também dá problema com estas letras?

PS: Eu configurei o meu Vim para substituir automaticamente as letras acentuadas no modo LaTeX (ã por \~{a}, ç por \c{c}, etc.). Assim, não preciso mais incluir pacotes de encoding nos meus documentos.

----------

## fernandotcl

Então pode ser até locales, mesmo porque eu uso o Vim e não tenho problemas. Que varíáveis de localização você têm definidas?

----------

## gralves

Como o Nabla falou o problema não é no latex, é só no vim-latex mesmo. O mais estranho é que o vim funciona perfeitamente em todos os outros tipos de documentos, só dá problema nos latex's.

Meus locales estão abaixo:

LANG=pt_BR.UTF-8

LC_CTYPE="pt_BR.UTF-8"

LC_NUMERIC="pt_BR.UTF-8"

LC_TIME="pt_BR.UTF-8"

LC_COLLATE="pt_BR.UTF-8"

LC_MONETARY="pt_BR.UTF-8"

LC_MESSAGES="pt_BR.UTF-8"

LC_PAPER="pt_BR.UTF-8"

LC_NAME="pt_BR.UTF-8"

LC_ADDRESS="pt_BR.UTF-8"

LC_TELEPHONE="pt_BR.UTF-8"

LC_MEASUREMENT="pt_BR.UTF-8"

LC_IDENTIFICATION="pt_BR.UTF-8"

LC_ALL=

Obrigado pela ajuda,

Gustavo

----------

## fernandotcl

Hmm, off-topic, mas se todos os LC_'s estão para pt_BR.UTF-8, porque não simplificar isso pra LC_ALL=pt_BR.UTF-8 e o mesmo com LANG?

----------

## Operador Nabla

Hum... Vamos tentar descobrir que caracter estranho é esse. Faça o seguinte:

1. Crie um documento LaTeX no Vim, escreva um único ç e salve o arquivo como cedilha.tex.

2. Execute este script:

```
#!/bin/bash

charToGuess=$(cat cedilha.tex)

c=0

d=0

u=0

for (( c = 0; c <= 7; c++ ))

do

    for (( d = 0; d <= 7; d++ ))

    do

        for (( u = 0; u <= 7; u++ ))

        do

            number=${c}${d}${u}

            myChar=$(echo -e \\${number})

            if [[ "${myChar}" == "${charToGuess}" ]]

            then

                echo "ASCII code of this char: $(( 8#${number} ))"

                exit 0

            fi

        done

    done

done

echo "Cannot find ASCII code of this char."

exit 1
```

3. Veja qual foi o código ASCII retornado (para o ç minúsculo, o valor correto é 231 e, para o maiúsculo, 199).

PS: Na minha conta da faculdade, eu escrevo ç com a combinação ~ + c no Emacs, mas nunca tentei fazer isto no Vim. De qualquer modo, fica aqui a sugestão.

PS2: Estranhamente, estou com dificuldades para postar mensagens neste fórum (e em outros, bem como para fazer o download da JDK no site da Sun) usando o Gentoo. Depois de ficar um tempão carregando, meu Firefox retorna um erro 400 (bad request).

----------

## Hal[PT]

Tava a procurar, tropecei com a thread... e embora não seja bom andar a desenterrar threads assim com 2 anos, como ficou por responder, fica aqui a "essay" das marteladas que eu dei nesse mesmo assunto.

O problema do vim+latex é que ele tem montes de "atalhos" no teclado... coisas como Alt+B ou Alt+C que fazem não sei bem o quê. Ora o C tem um código na tabela ASCII na forma 0xxxxxxx (bits quaisquer que não sei de cor no lugar dos xxx) enquanto o Alt+C vai ter igual mas com o primeiro bit a 1 (1xxxxxxx) que depois a gente vê e corresponde no ISO-8859-15 a um caracter cedilhado ou acentuado.

Em troca de mails com o developer do vim ele diz que a forma de reconhecer o Alt (Meta) mais portável é essa de ver se o primeiro bit vai a 1 e que não vai estar para se preocupar com os locales. A alternativa é procurar nos ficheiros do pacote vim-latex as instruções do género "imap <M-C>" (que fazem map do Alt+C) ou outras (melhor mesmo é procurar todos os imap) e apagar, ou então colocar o :unmap correspondente no ~/.vimrc

Espero que a info sirva para alguém que no futuro esbarre no mesmo problema.

----------

