当然用Vim的最大原因还是因为其功能强大且免费。虽然我并不会编程,但有时还是要和代码打交道,比如修改Firefox的一些GM脚本和UC脚本。另外以前用WinEdt写文章时,经常会把Tex文件拿到UltraEdit里来处理下,毕竟WinEdt的编辑功能还是弱了点。看到善用佳软说Vim要比UltraEdit高一个档次,而且最近又一直在尽力减少电脑上的盗版软件,就决定把UltraEdit卸载掉,认真学学Vim。
不过真正学起来才发现Vim的学习曲线实在陡峭,命令难记不说,光是乱码问题就折腾了我一下午。想在这里把自己折腾时的一些体会记录下来,以后或许能用得到。
- 安装过程
Vim的帮助是英文的,中文帮助需要另外安装,我下载的是win32 installation program,下载第二个Unicode版本应该也可以(没试过)。不知为何安装中文帮助时安装程序不能找到安装目录,我将其指定为E:\Tools\Vim\安装后仍不能显示中文帮助,后来几经折腾才发现要将安装目录设为E:\Tools\Vim\vim72\。想要卸载该中文帮助只需到e:\Tools\Vim\vimfiles\doc\下执行vimcdoc-uninst.exe就行了。只是不知为何该帮助程序会在c:\Program Files (x86)\下生成vimcdoc目录,里面放置了一些该中文帮助的使用说明。我干脆将该目录移到了E:\Tools中,好像没出现什么问题。
- 乱码问题
set encoding=utf-8一行注释掉(在前面加上")。
可是这时打开某些文档仍然会出现乱码(比如把网页保存为html后打开),后来又是在网上找到了解决办法:在e:\Tools\Vim\_vimrc中加入
" 防止乱码 let &termencoding=&encoding set fileencodings=utf-8,gbk,ucs-bom,cp936
- 配置文件
" 不备份 set nobackup set nowritebackup可是Vim依然生成备份,后来才知道这些代码必须添加在
source $VIMRUNTIME/vimrc_example.vim source $VIMRUNTIME/mswin.vim的后面。
把我目前在用的配置文件在这里备份下吧,以后我会一直更新的。
set nocompatible source $VIMRUNTIME/vimrc_example.vim source $VIMRUNTIME/mswin.vim behave mswin " 防止乱码 let &termencoding=&encoding set fileencodings=utf-8,gbk,ucs-bom,cp936 " 界面字体 set guifont=Courier\ New:h15 " 启动时最大化 au GUIEnter * simalt ~x " 颜色配置 colorscheme evening " 显示行号 set number " 不备份 set nobackup set nowritebackup " 打开javascript折叠 let b:javascript_fold=1 " 打开javascript对dom、html和css的高亮支持 let javascript_enable_domhtmlcss=1 set diffexpr=MyDiff() function MyDiff() let opt = '-a --binary ' if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif let arg1 = v:fname_in if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif let arg2 = v:fname_new if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif let arg3 = v:fname_out if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif let eq = '' if $VIMRUNTIME =~ ' ' if &sh =~ '\' . arg3 . eq endfunction
你怎么还用windows
回复删除呃,的确是该改用Linux了。
回复删除