『Linux 』 vim插件 (转载)

下午整理了一下vim插件,感觉有点乱。以前下载后就直接往.vim里一扔就不管了,但如果想不用了,删就不知道怎么删了,有几个tex相关的插件体积不小到处都是……决定全部重下载一回,有的插件可能还有更新。

 

这回独立备份一下方便多了,.vim里的配置不用改,只改.vimrc里的就可以,这样就不会乱了,想删哪个一找就行了。

 

插件列表:

 

vimExplorer

 

vim-autocomplpop

 

taglist

 

supertab

 

python_fn

 

python_check_syntax

 

python

 

pydiction

 

omnicppcomplete

 

libList

 

cvim

 

CD_Plus

 

bash-support

 

有几个是新放进去的,配完后进一步感受到了vim的强大。

 

-----------------------------------------------------------

 

vimExplorer:

 

一个文件管理器,和某些文本界面的独立文件管理器相似,感觉直接用没有太大优势,但如果正在用vim时突然想查看某文件,还是很方便的,借助vim强大的查找功能,找到一个文件很容易。选中文件会用系统默认的关联程序来打开,而不是用vim打开。但似乎不能直接执行可执行文件。

 

    

 

     

 

CD_Plus:

 

在vim里的super cd,想切换目录,非常方便,可以将备选目录在上面显示出来,对按键进行优化,但感觉也是一个比较边缘的功能:

 

    

 

     

 

    

 

python相关:

 

python_fn

 

python_check_syntax

 

python

 

pydiction

 

忘了哪个功能属于哪个插件了,但有了这四个插件,vim就不亚于一个专业的python开发环境(当然还要配合一下那几个通用插件)

 

自动补全功能非常大,基本上只要不是你原创的东西都可以补全,另外保存时会显示警告和错误,这样不用运行就可以发现问题,可以对函数,类,块进行各种操作,在相关的代码到处跳转,等等。

 

    

 

     

 

    

 
 

c/c++ 相关:

 

omnicppcomplete

 

cvim

 

taglist

 

这个应该是比较重量级的。提供好用的各种补全,模板,跳转,错误定位等功能。菜单上有许多功能。有一点要注意,omnicppcomplete需要tags文件,要先把相关的include目录生成tags,然后路径加在 tags变量里,就可以用各种库函数的补全,声明跳转等功能,这个tags可能有点大,有的单个的库就有几十M,但用时反应很快,基本感觉不出延时。另外帮助文档里还有许多其他功能。

 

    

 

    

 

     

 

bash-support:

 

这当然就是对shell脚本的支持了,具体功能可见菜单,文档里还有更多,刚才偶然发现的,看了下,功能挺多。

 

还有一引动功能忘了是哪个插件提供了的。

 

例如有一个特别的补全功能,就是在当前文档找出所有符合你已输入内容的字符序列,这对写配置文件非常有用,在编程中也不错,至少能让你少按几个键。还有一个,如果你输入的看上去是一个路径的话,它会列出来你想输入的可能的路径,让你一级级选择。

 

这些插件直接从官方网站下载就行,有目录结构的直接解压到 .vim 里,单个文件的看帮助,但一般都可以放在.vim/plugin里,有的放在.vim/ftplugin或.vim/syntax里,不会改里边的任何文件(当然改也没问题),然后.vimrc要写明白。

 

我承认我写的就不怎么明白,有的完全是从网上copy的,也不知道什么意义就放进去了。

 

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""

 

"file: .vimrc

 

set nocompatible

 

set ch=2        " Make command line two lines high

 

    

 

" 设置多编码文本

 

set fileencodings=utf-8,gbk,cp936,gb18030,big5,euc-jp,euc-kr,latin1,ucs-bom,ucs

 

set fencs=utf-8,gbk,cp936,gb18030,gb2312,ucs-bom

 

set enc=utf-8

 

"当设置下面一行时无论所打开文件是否为utf-8编码,保存时都会强制保存为utf-8格式

 

"set fenc=utf-8

 

set mousehide      

 

set nu

 

set cindent

 

set backspace=indent,eol,start

 

set smartindent

 

syntax on

 

map <S-Insert> "+gp

 

map <S-Delete> "+x

 

map <C-Insert> "+y

 

nnoremap <F8> :!gvim %:t:r.txt<cr>

 

nnoremap <F10> :!./%:t:r<%:t:r.txt<cr>

 

nnoremap <F12> :!./%:t:r<cr>

 

nnoremap <F5> :!./%<cr>

 

"nnoremap <F4> :!nasm -g -f elf %; gcc -o %:t:r nasmx/inc/asm_io.o %:t:r.o<cr>

 

    

 

" I like highlighting strings inside C comments

 

let c_comment_strings=1

 

set hlsearch

 

set mouse=a

 

filetype plugin on

 

syntax enable

 

colorscheme torte

 

filetype plugin indent on

 

set nocp

 

filetype indent on

 

execute "cd" expand("%:h")

 

let g:pydiction_location = '~/.vim/after/ftplugin/pydiction/complete-dict'

 

set grepprg=grep\ -nH\ $*

 

set nobackup

 

    

 

" TagList

 

let Tlist_Auto_Open = 1

 

let Tlist_Show_One = 1

 

let Tlist_Exit_OnlyWindow = 1

 

let Tlist_Ctags_Cmd="ctags"

 

map <C-F12> :!ctags -R --c++-kinds=+p --fields=+iaS --extra=+q .<CR>

 

set tags+=~/.vim/tags/c++.tags

 

set tags+=~/.vim/tags/qt.tags

 

    

 

" OmniCppComplete

 

let OmniCpp_NamespaceSearch = 1

 

let OmniCpp_GlobalScopeSearch = 1

 

let OmniCpp_ShowAccess = 1

 

let OmniCpp_MayCompleteDot = 1

 

let OmniCpp_MayCompleteArrow = 1

 

let OmniCpp_MayCompleteScope = 1

 

let OmniCpp_DefaultNamespaces = ["std", "_GLIBCXX_STD"]

 

set completeopt=menu

 

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""'

 

里边的有些路径要根据实际情况写,其他的基本都是通用的。

(转自)http://laiba.tianya.cn/tribe/showArticle.jsp?groupId=90740&articleId=270906373450337712410740

posted @ 2012-03-24 18:37  smallest  阅读(505)  评论(0)    收藏  举报