2011-03-29 62 views
1

我在Windows下使用Notepad ++很长一段时间。但是我在配置方面遇到太多麻烦。它会不时突然改变我的缩进配置。所以我决定把我的编辑改为Vim。正如你可能猜到的那样,这是一个很大的改变:P,所以我想知道我需要知道我在用PHP开发时需要记住什么。我想每次使用没有BOM的UTF-8,即使原始文件没有使用这种编码。现在我已经想通了,这在我的_vimrc(顺便说一句,这是做了正确的地方?):替换Notepad ++ for Vim(我使用PHP)。我必须知道什么?

set smartindent 
set tabstop=4 
set shiftwidth=4 
set expandtab 
set number 

setglobal nobomb 
setglobal fileencodings=utf-8,usc-bom,latin1 
setglobal encoding=utf-8 

我是否有文件中配置这些选项_vimrc所以每次我打开Vim的需要考虑到这些配置?我应该使用哪些其他配置?我想要4个空格而不是制表符,我发现前4个选项可以做到这一点。

+1

vim有一个陡峭的学习曲线,它不像使用记事本这样易于使用的IDE,但是一旦你学会了它,你将永远不会回头! – Drewdin 2011-03-29 18:52:43

+0

我已经阅读过像你这样的评论。这就是我为什么要转移到Vim的原因。这绝对是一个完全不同的环境,但到目前为止,它似乎很有趣:) – Adrian 2011-03-29 19:40:09

+0

我从O'Reilly,Learning vi/vim那里得到了一本好书。它帮助我 – Drewdin 2011-03-29 20:51:30

回答

1

在Microsoft Windows系统上,_vimrc文件是将想要应用于所有vim运行的配置项的正确位置。在Linux/Unix系统上,该文件被命名为.vimrc

如果你想要一个设置,你总是可以输入:,然后输入配置命令。 vimrc文件基本上在编辑会话开始之前运行这些命令。

由于文件存在于会话之间,并且每次运行vim时都默认读取,所以每次运行vim时都不需要配置这些选项。如果你想改变你的设置,编辑vimrc文件将保留所有将来启动vim的变化。

set expandtab自动将空格替换为制表符。 set tabstop=4表示标签的宽度等于四个空格。 set smartindent表示您希望vim的文件检测例程在您键入时根据文件类型规范中编码的规则进行缩进。这意味着对于.c文件,大括号内的信息将在大多数正常的打字情况下自动缩进(之后编辑可撤销自动添加的字符)。 set shiftwidth=4表示代码缩进>><<控件应该缩进四个空格。

请注意,可以将vim设置嵌入到某些文件的注释部分。在这种情况下,嵌入式设置将应用于正在编辑的文件,并且不会对该文件产生影响。在vi中,输入:h modeline以获取详细信息。

+0

非常感谢洞察力:)以及文件编码?我所拥有的就足以处理我以UTF-8打开的所有文件而无需BOM? – Adrian 2011-03-29 19:36:25

+0

对于文件编码,看看VIM':帮助fileencodings' – 2011-03-29 20:40:33

+0

是的,在我的vimrc文件我用: setglobal nobomb setglobal fileencodings = UTF-8,USC-BOM,LATIN1 setglobal编码= UTF-8 使用它,它是否将所有文件处理为UTF-8没有BOM? – Adrian 2011-03-29 20:57:14

相关问题