33 votes

Vim ne prend pas en charge l'unicode?

J'essaie d'intégrer ce qui suit dans mon .vimrc

 " Use the same symbols as TextMate for tabstops and EOLs
set listchars=tab:▸\ ,eol:¬
 

Ces lignes sont d' ici fonctionnent parfaitement dans vim 7.2 J'ai récemment compilé et installé vim 7.3 et maintenant ces caractères ne sont pas compris par vim. Aussi: Ctrl + V puis U en insert ne me laisse pas insérer de caractères, il semble simplement ignorer cela.

Des idées?

Voici ce que je vois: set listchars=tab:�~V�\ ,eol:¬

39voto

Alan Geleynse Points 11842

Vous devez compiler vim avec un support multi-octets.

La façon la plus simple de le faire est d'exécuter

 ./configure --with-features=big
make
 

Cela créera vim avec le support approprié.

Vous pouvez vérifier qu'il a été compilé correctement avec

 :version
 

en vim ou en courant

 vim --version
 

et à la recherche de +multi_byte . S'il indique -multi_byte cela ne fonctionnera pas.

26voto

Tassos Points 1274

J'ai ce qui suit dans mon .vimrc

 scriptencoding utf-8
set encoding=utf-8
 

et cela dans mon .gvimrc

 set listchars=trail:·,precedes:«,extends:»,eol:↲,tab:▸\ 
 

et fonctionne bien (notez qu'il y a un espace après le ▸ \).

6voto

kertz Points 101

J'ai eu le même problème avec le vim fourni avec OS X Lion bien qu'il ait été compilé avec multi_byte .

Le problème était l'encodage utilisé par vim. J'ai ajouté set encoding=utf-8 dans mon ~/.vimrc et le problème a été résolu.

Réf: Terminal Vim redessine les problèmes sous OS X Lion

4voto

erikb85 Points 2597

J'ai eu ce problème lors d'une session screen . C'est fini avec le réglage de ce qui suit dans mon .bashrc :

 export LANG=en_US.UTF-8
 

1voto

Aristotle Pagaltzis Points 43253

Avez-vous besoin d'un

 scriptencoding utf-8
 

ou quel que soit l'encodage de votre .vimrc ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X