vim-notes

date:2012-02-04 10:09

也算是接触vim一年多了吧,开始使用的时候,就是感觉它是一个很神奇,很有技术感的东西。让人一看到这嘿嘿的屏幕就觉得是个“高手”,于是也想向着这个方向走,可视刚刚使用的时候 真的不会觉得它给我的编辑带来了多少好处,反而不如使用正常的记事本。但是“高手”的幌子指引着我坚持使用了一段时间。然而唯一习惯了的就是j,k,h,l 于是在用其它编辑器的时候,也总是想要用这些键来上下滚动。或许到那个时候用vim不算是阻碍我编辑东西了把。但是这就想是冰山一角,各种各样的插件海了。 往往人都是不满足于现在所有的,不像刚接触vim的时候一样,只要能够像使用记事本一样熟练使用它就已经心满意足了。于是就想配置各种插件。这些配置过程就不说了,网上的教程一搜就是一大堆,不过这中间的“磨难”每个人的体会都会是不一样。那些功能各异的插件能够用了,于是也就是这么用着了。可是里面是什么原理呢?一直都没弄明白。每次重装系统后, 都是无脑的照着教程配置。这样一遍下来每次都会话费我很多时间。尤其是对它们之间的关系不时那么了解,一旦有错误之后就傻了……,每次都很绝望,就像是被人告诉一点,然后就知道一点,接下来就不知道干什么了。有一次在一个邮件列表里面发帖询问各位大神都是怎么学习vim配置的?唯一的回答是你用的不够多。这对于初学者,真的是毫无回答之力啊, 很多时候,我们在学习一个新的知识的时候,总是会碰到这样的话“你就用好了,不用管那么多”。我不知道这样的话应该怎么理解。反正导线在为止,我都不赞同这种观点, 尽管很多时候因为这样吃亏,花费很多时间去寻找,但是收获却很小。算了,这个问题以后再说吧……

今天重新去找到这篇教程一点一点的看着,把自己的vim又重新的配置了一遍。这我有个想法:就是把这些配置文件用git管起来,然后再托管到github上面。然后最好再自己写一个脚本。以后要重新配置,直接运行一个脚本就OK了。想到这里,可能很多时候我们在linux系统下面工作效率很低,可能是因为我们没有好好理解unix的文化。

在终端里面,直接apt-get就行,缺少什么的话,系统自动都会提示你的。照着说的额安装就好了。gvim是gnome下的一个gui。看着比较舒服。安装完整以后在终端输入

$ gvim

这里可能会有一个问题,就是打开的界面菜单栏会是乱码,这是由于utf8utf-8不同而引起的,可以通过一下两条命令解决

$ cd /usr/share/vim/vim72/lang
$ sudo ln -s menu_zh_cn.utf-8.vim menu_zh_cn.utf8.vim

其实我自己到现在也不知道里面细节到底是怎么回事,但是,至少这样子就是可以用了。 建立以下文件

$ cd
$ mkdir .vim
$ cd .vim
$ mkdir plugin
$ mkdir doc
$ mkdir syntax
$ touch .vimrc

第一条命令是为了切换到你的用户当前目录,以上几条命令只是为了创建几个文件和目录,以便在安装插件的时候可以用到,如果这些文件和目录都已经有了的话,就不用了。.vimrc是vim的配置文件。这个配置文件的作用范围就是只对当前用户有效。.vim这个目录可以理解为存放插件用的,其中doc文件用于存放插件的帮助文件。plugin是用来存放插件内容的。一般都是以.vim结尾。syntax是存放字体高亮方案的目录.OK,就这些,接下来就是往里面放东西了.

很多时候照着参数写.vimrc文件是一件很费时间的事情,不小心写错了还要检查,所以以后要是有一个顺手的话,就自己备份一下比较方便,下面我自己的.vimrc文件

"设置TAB键为4个空格
set tabstop =4 
"显示行号
set number 
"set autoindent "回车自动缩进

"关闭vi兼容模式
set nocompatible 
"自动语法高亮
syntax enable
syntax on 
"自动检测文件类型
filetype on 
"检测文件类型插件
filetype plugin on 
"上下可视行数
set scrolloff=6 
"设置删除建可以一次删除4个空格
set softtabstop=4 
"搜索的时候忽略大小写
set ignorecase
"当有一个字母是大写的时候,大小写敏感 
set smartcase 

"设置配色方案
colorscheme desert 
"显示括号配对情况
set showmatch
" 选中状态下 Ctrl+c 复制
vnoremap <c-c> "+y

"if has("gui_running")
"    set guioptions-=m " 隐藏菜单栏
"    set guioptions-=T " 隐藏工具栏
"    set guioptions-=L " 隐藏左侧滚动条
"    set guioptions-=r " 隐藏右侧滚动条
"    set guioptions-=b " 隐藏底部滚动条
"    set showtabline=0 " 隐藏Tab栏
"endif

"设置启动窗口位置,前一个数字是X轴,后一个数字是Y轴
winpos 480 64 
"设置窗口大小,行和列
set lines=28 columns=108  
"自动与上一行跟从缩进
set autoindent  

"用空格键来开关折叠
set foldenable
set foldmethod=indent
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>

"set guifont=Courier\ News:h10 "设置字体方案
"set guifont=News:10 "设置字体方案
"set guifont=Courier\ 10 "设置字体方案
"set guifont=Monospace\ 12 "设置字体方案
"set guifont=Yahei\ Consolas\ Hybrid:h10"设置字体方案
"set guifont=Bitstream\ Vera\ Sans\ Mono\ 12"设置字体方案

set modeline 

"pydiction 1.2 python auto complete
"filetype plugin on
let g:pydiction_location = '~/.vim/plugin/complete-dict'
"defalut g:pydiction_menu_height == 15
"let g:pydiction_menu_height = 20

set mouse=a
filetype plugin indent on
set completeopt=longest,menu
autocmd FileType ruby,eruby set omnifunc=rubycomplete#Complete
autocmd FileType python set omnifunc=pythoncomplete#Complete

"set the taglist
let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1

"set winmanage
let g:winManagerWindowLayout='FileExplorer|TagList'
nmap wm :WMToggle<cr>

把python.vim复制到syntax,这是一个针对python的代码高亮插件

taglist.txt winmanager.txt复制到doc下面。

还有一个需要安装一下,去这里下载一下 ctags-5.x.tar.gz 的压缩包,然后执行下面命令

$  tar -xzvf ctags-5.6.tar.gz
$ cd ctags-5.6
$ ./configure
$ make
$ sudo make install   

一切OK,基本上一个python的vim环境就可以用了,文中提到的除了ctags要自己下,其他都放在github上了。

Xiang Chao 04 February 2012
blog comments powered by Disqus
Fork me on GitHub