分类: LINUX
2011-09-14 14:41:47
在linux下编程工作时间也不短了,但始终对开发工具了解甚少,久而久之,就养成了一些不好的习惯,以编辑为例,vi用了这么久才开始研究有些什 么插件可用,对vi自己提供的命令也知道的少的可怜,看来‘懒惰’真的是成为一个好的程序员的必备条件了,有好多捷径可走,我却一直不得其门。今天网上搜 罗了一下,了解了一下vi的插件,目前主要就是ctags,bufexplorer,nead_tree,taglist等几个常用的,现边列出了不少, 有时间再慢慢尝试了:
---------------------------------
fuzzyfinder.vim
可以替代四个插件, 不过这个插件也不是完美的,比如
和favex.vim相比,它的收藏夹缺少对目录的支持
和selectbuf.vim相比,它少了对多个buf的批量选择和处理
mru.vim -> fuzzyfinder.vim:FuzzyFinderMruFile
favex.vim -> fuzzyfinder.vim:FuzzyFinderFavFile
selectbuf.vim -> fuzzyfinder.vim:FuzzyFinderBuffer
NERDTree.vim -> fuzzyfinder.vim:FuzzyFinderFile
AlignMaps.vim
AlignPlugin.vim的一些按键映射
AlignPlugin.vim
按照一定格式对齐文本
Align
一个对齐的插件,用来排版,面对一堆乱七八糟的代码时,用来对齐代码,功能强大,不过用到的机会不多
a.vim
在.c/.h之间切换,写代码必备
bufexplorer.vim
列出当前打开的buffer,可以很容易的切换到和删除选定的buffer,必备插件之一
calendar.vim
日历插件,有了它,用vim来写日记很方便
cecutil.vim
一些插件用到的一些库函数
cscope_maps.vim
cscope的vim插件,提供快捷键操纵cscope,好东东,如果你在用cscope的话
c***plorer.vim
color theme浏览插件,列出所有的vim color theme到一个列表中,选中后按回车即可应用相应的color
theme,试验color theme时再也不用一次次输入:colo theme_name了,从上百个color
theme中选择自己喜欢的theme时有用
c.vim
c/c++
support,让你用编写c/c++程序时如虎添翼,有很多贴心的功能,每个功能都有快捷键,不过一部分和NERD_comments冲突如果经常编写
一些单文件的c程序,但是不想写makefile,用这个,他帮你完成,F9编译并链接,ctrl-F9运行
Decho.vim
某些插件用到的一个debug工具
DoxygenToolkit.vim
添加doxygen注释
DrawIt.vim
在vim里画图
favex.vim
FavEx : Favorite file and directory explorer ,可以添加目录和文件到收藏夹,可以把经常编辑的文件添加到收藏夹来,在文件打开以后,\ff新增文件到收藏夹,\fd新增目录到收藏夹
fencview.vim
mbbill的编码识别插件
genutils.vim
一些插件依赖的库函数
LargeFile.vim
让大文件打开快一点
latex-suite
great for latex
lookupfile.vim
五星级推荐的好插件!我觉得它是vim上最伟大的插件之一,提供多种方式查找文件,让你在复杂的目录树中也能轻松自如找到你要的文件
LustyJuggler
Switch very quickly between your most recently used buffers
manpageview.vim
在vim里查看man
mark.vim
同时高亮多个单词
matchit.vim
扩展了vim的%功能,让%可以匹配的,不再仅仅是括号,支持多种语言.必备插件之一
Mru
Address, 给vim增加MRU功能,也就是保留最近打开的文件记录,:MRU打开,q退出,很方便,有过一个支持菜单的类似的插件 不过对于我这样的不用菜单的用户,还是这个命令行的好用一点,因为经常使用,所以我映射到了F2
multiselect.vim
同时选择多个区域
multvals.vim
array操作库函数,multiselect依赖它
NERD_commenter.vim
代码注释
NERD_comments
功能强大的代码注释工具,用来注释或者取消注释,支持很多语言,可以对文本块操作,最常用到的快捷键是\c
NERD_tree.vim
tree explorer for vim
netrwclean.vim
netrw清理工具,经常升级netrw的话,用来删除老版本
netrwPlugin.vim
vim自带的文件浏览器
parenquote.vim
给选中的文字加上引号,支持( { [ < ' " `,选中后,\加上你想要添加的符号,比如选中abc后,\(,得到(abc)
project.vim
自制的工程管理插件
python_calltips
best for python
qfixtoggle.vim
快速打开关闭quickfix window
qbuf
Very small, clean but quick and powerful buffer manager. c.
selectbuf.vim
提供快速的buffer选择
sketch.vim
画图
snippetEmu.vim
扩展了vim的abbr缩写功能,支持占位符,支持变量替换.
snippetsEmu.vim
功能强大的缩写扩展,vim版的TextMate
supertab
tab operation
taglist.vim
vim的代码浏览器,生成函数列表,支持跳转,可以根据光标λ置查询到当前的函数名
toansi.vim
将语法高亮转成 BBS 上的彩色
utl.vim
给vim增加url的识别功能,但是功能远不只是支持url,还有更多,详情见utl的帮.
vcscommand.vim
给vim整合了cvs/subversion功能,不用离开vim环境也能执行常用的cvs/subversion操作.
viki.vim
vim的wiki
visincrPlugin.vim
vimincr.vim的公共接口
visincr.vim
给vim增加生成递增或者递减数列的功能,支持十进制,十六进制,日期,星期等,功能强大灵活
vis.vim
可以对选中的文本块执行ex操作,尤其是visual block模式下,vim自己是不支持的.选中后,:B 加上ex命令
winmanager.vim
给vim增加IDE的功能,提供目录浏览和buffer浏览功能,因为显示器太小,感觉太占空间,所以单独使用bufexplorer,而且现在vim7的netrw功能也够强大,所以感觉比较鸡肋,而且貌似很久没有更新,所以基本不用
word_complete.vim
单词完成,没用它
yankring.vim
类似emacs的king ring,给vim的yank也增加缓冲,vim本身只缓冲删除的字符串,不缓冲yank的内容
====
http://hi.baidu.com/qq520131714/blog/item/b0c7eb096d7cea89d0581b29.html
----------------------------------------------------------------------------------------------
又是很久没更新blog了,一直挺忙的,我的小九也快在今年的3月底出生了,呵呵。
今天居然没什么活,来整理了下我的GVIM目录,也记录下:
plugin:
:一款VIM的可见书签。进行了修改 修改后的文件在这儿
" plugin - bookmarking.vim 设置标记(标签): 这个插件可以帮助你轻松的在缓冲间调转。
" plugin - bufexplorer.vim Buffers切换:文件管理器,可以当资源管理器用。
" plugin - vimExplorer 文件管理器:强大的批量重命名工具
" plugin - renamer 文件重命名:使%不仅能够匹配简单的<>(),还能匹配之类标签的功能
" plugin - matchit.vim 对%命令进行扩展使得能在嵌套标签和语句之间跳转:给不同的单词高亮,表明不同的变量时很有用。
nmap这样,当我输入 ,hl 时,就会把光标下的单词高亮,在此单词上按 ,hh 会清除该单词的高亮。如果在高亮单词外输入 ,hh ,会清除所有的高亮。
你也可以使用virsual模式选中一段文本,然后按 ,hl ,会高亮你所选中的文本;或者你可以用 ,hr 来输入一个正则表达式,这会高亮所有符合这个正则表达式的文本。
你可以在高亮文本上使用 ,# 或 ,* 来上下搜索高亮文本。在使用了 ,# 或 ,* 后,就可以直接输入 # 或 * 来继续查找该高亮文本,直到你又用 # 或 * 查找了其它文本。
":窗口移动插件(用得不多,挺好玩的,尤其是全屏后)
let g:wm_move_left = ":很酷的插件,HTML代码生成,以前专门写过一篇日志写这插件,相当不错。这里有个它的操作“视屏”,对着帮助文档再配合着·
: 自动创建目录插件,功能简单但很实用,能解决下面的情况下报错的问题
:w /home/asins/vim_plugin.txt:记录最近打开的文件,相当好的插件。
let MRU_File = $VIMFILES.'/_vim_mru_files'这里用的$VIMFILES变量是我自己定义的,
if has('unix'):快速替换、清除包围符号、标签。详细的介绍帮助文档,给出些例子:
" Old text Command New text ~Look ma, I'm HTML!
" if *x>3 { ysW( if ( x>3 ) {
" my $str = *whee!; vlllls' my $str = 'whee!';
" "Hello *world!" ds" Hello world!
" (123+4*56)/2 ds) 123+456/2
"Yo!*dst Yo!
" Hello w*orld! ysiw) Hello (world)!
:注释代码用的
":优化js代码,并不是简单的缩进,而是整个优化
" 开始优化整个文件:寄存器可视操作
mapsyntax:
after:
:CSS颜色预览
注意这插件得放在.vim/after/syntax目录