2010-09-22 140 views
29

我试图让下面进入我的.vimrcVim不支持unicode?

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

这些线是从here在VIM 7.2 完美工作我最近编译安装VIM 7.3,现在这些字符不被理解的VIM 。 另外:Ctrl + V然后在插入U不让我插入任何字符,它似乎忽略了。

任何想法?

这是我所看到的: set listchars=tab:�~V�\ ,eol:¬

+2

您在使用一个支持Unicode的终端或gvim? – 2010-09-22 15:05:39

+1

是的,我。我正在使用屏幕,但我可以将这些字符粘贴到它中。 – Sandro 2010-09-22 16:36:57

+0

虽然Vim支持unicode,但MS和Linux系统都不支持unicode,我的意思是它们的终端和控制台。因此,我在eclipse中安装了vrapper。现在,我可以输入Unicode。 :) – SibiCoder 2016-05-27 15:47:11

回答

34

您需要编译支持多字节的vim。

要做到这一点,最简单的方法是运行

./configure --with-features=big 
make 

这将打造VIM用正确的支持。

您可以验证是否正确地与

:version 

在vim或者通过运行

vim --version 

,寻找+multi_byte编译。如果它说-multi_byte它不会工作。

+1

你钉了它!真棒!谢谢你,谢谢你,谢谢你! – Sandro 2010-09-25 05:52:50

+0

过去几天我一直在踢我自己,试图让vim-powerline符号与花哨的角色一起工作。这终于修复了它。谢谢! – Liam 2012-02-13 18:14:48

+0

我前几天安装了arch linux,我的箭头符号和tmux边界被搞乱了。这个固定的VIM,我认为语言环境固定其他 – 2012-06-07 12:54:49

1

你需要一个

scriptencoding utf-8 

或任何编码您.vimrc实际上是?

+2

另外,请检查'encoding','termencoding','fileencoding'选项的值。确保在编辑'.vimrc'时,它们都被设置为'utf-8'。 – 2010-09-22 07:31:20

+0

我已经添加了它,但它仍然不起作用。我如何检查这些其他选项的价值? – Sandro 2010-09-22 16:41:21

+1

你可以看到任何选项的价值,通过添加一个?在set命令之后。即:设置编码? – Tassos 2010-09-22 19:55:03

23

我在我的.vimrc

scriptencoding utf-8 
set encoding=utf-8 

,并在我的.gvimrc里

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

下和正常工作(注意有一个空间▸之后\)。

+1

我已经添加了,并没有... – Sandro 2010-09-22 16:43:19

+0

它为我工作。注意:我使用vim进行windows操作。 – 2012-08-12 15:48:03

+0

有趣的是,在linux上我不需要设置任何东西。在vim win32 + multi_byte我开始必须添加它后,我改变了我的vimrc中的东西...现在,把这两行不会引发错误,但跟踪字符呈现为问号或别的东西...如果我只留下'set encoding = utf-8',那么它的工作方式与以前一样 – gcb 2014-04-23 18:48:08

5

我与OS X Lion附带的vim有同样的问题,虽然它是用multi_byte编译的。

问题在于vim使用的编码。我在~/.vimrc中加入了set encoding=utf-8,问题解决了。

编号:Terminal Vim redraw issues in OS X Lion

+0

完美。我使用Dropbox在Mac和Windows之间共享一个vimrc。使用MacVim工作得很好,但Windows上的Gvim在启动时给我提供了错误。 – mrak 2012-09-04 00:08:01

4

而在screen会话为我有这个问题。 它的消失与设置在我.bashrc如下:

export LANG=en_US.UTF-8 
2

不要忘了,如果你在终端运行VIM,确保本身使用UTF-8,以及终端。

1

确保您使用的是兼容字体。我的问题是inconsolata-g不支持我的文档中的utf-8字符。

也,这是所有我需要在我的gvimrc:

set enc=utf-8 
set fileencoding=utf-8 
set fileencodings=ucs-bom,utf8,prc 
set guifont=Monaco:h14 
set guifontwide=NSimsun:h14