您的位置:首页 > 其它

vim常用插件推荐列表

2009-02-17 09:09 531 查看
-------------------------------------------------------------------------
BufExplorer Taglist latex-suite word_complete Sketch
DrawIt Mark SearchComplete vcscommand switchtags
ccal.rb viki NERD_tree fencview matrix
taglis Tetris BlockComment
-------------------------------------------------------------------------

(1) [ 插件的名称 ]

BufExplorer

(2) [ 插件的功能 ]

方便切换 buffer,切换 buffer 后列表自动关闭。

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=42

(4) [ 备注或特别提醒 ]

装完后 Normal mode 下输入 /be 即可打开这个列表,
光标放在某一个文件上按回车可以打开这个文件。

(5) [ 推荐人id ]

Dieken

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

(1) [ 插件的名称 ]

Taglist

(2) [ 插件的功能 ]

实现类或者函数列表功能,支持 C/C++, Java, Perl, Python,
TCL, SQL, PHP 等语言,它可以在VIM中创建一个窗口,列出编辑
的源文件中的类、函数、变量定义列表,而且更方便的是这个列表
也插入在了右键菜单中,分类存放,访问非常方便。

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=273

(4) [ 备注或特别提醒 ]

依赖于 Exuberant Ctags,可以在 http://ctags.sourceforge.net 下载。

(5) [ 推荐人id ]

Dieken

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

(1) [ 插件的名称 ]

word_complete

(2) [ 插件的功能 ]

Insert模式下在输入的时候自动补全单词,如果补全正确
可以按Tab键接受,否则可以不管它继续输入或者按Ctrl-n,
Ctrl-p切换补全。 注意是输入三个字符后才开始补全。

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=73

(4) [ 备注或特别提醒 ]

在 工具 菜单中选择 Word completion 开启这个功能。

(5) [ 推荐人id ]

Dieken

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

(1) [ 插件的名称 ]

Sketch

(2) [ 插件的功能 ]

在 VIM 里头画 ASCII 图,支持填充,剪切,拷贝等,非常有创意。

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=705

(4) [ 备注或特别提醒 ]

Draw with mouse: boxes, arrows, lines, fills.
Transparent/opaque drag and drop.

(5) [ 推荐人id ]

Dieken

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

(1) [ 插件的名称 ]

DrawIt

(2) [ 插件的功能 ]

方便的画连线图。

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=40

(4) [ 备注或特别提醒 ]

(5) [ 推荐人id ]

Dieken

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

(1) [ 插件的名称 ]

Mark

(2) [ 插件的功能 ]

同时高亮显示多次搜索结果,这个特性非常有利于显示代码
中某些变量或函数的调用位置。

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=1238

(4) [ 备注或特别提醒 ]

类似的还有:
MultipleSearch
http://www.vim.org/scripts/script.php?script_id=479

MultipleSearch2
http://www.vim.org/scripts/script.php?script_id=1183

otf
http://www.vim.org/scripts/script.php?script_id=634

(5) [ 推荐人id ]

Dieken

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

(1) [ 插件的名称 ]

SearchComplete

(2) [ 插件的功能 ]

用 / 或者 ? 搜索时按 tab 补全要搜索的单词。

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=474

(4) [ 备注或特别提醒 ]

(5) [ 推荐人id ]

Dieken

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

(1) [ 插件的名称 ]

vcscommand

(2) [ 插件的功能 ]

集成 cvs 和 svn 到 vim 中,可以在 vim 中看 log,diff,
annotate,commit 等等。需要安装 cvs 和 svn 的命令行版本。

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=90

(4) [ 备注或特别提醒 ]

(5) [ 推荐人id ]

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=90

(4) [ 备注或特别提醒 ]

(5) [ 推荐人id ]

Dieken

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

(1) [ 插件的名称 ]

switchtags

(2) [ 插件的功能 ]

根据当前编辑文件的全路径名切换 tags 选项,这样就可以
在 vim 中同时查看多个项目的代码时 Ctrl-] 不会互相串。

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=1344

(4) [ 备注或特别提醒 ]

老早以前写的,也许有点用,推荐一下。
需要Perl 插件支持(官方提供的 gvim70.exe 包含这个)。

(5) [ 推荐人id ]

Dieken

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

(1) [ 插件的名称 ]

ccal.rb

(2) [ 插件的功能 ]

Add Chinese lunar calender functionality to calendar.vim

(3) [ 插件的下载地址 ]

本版文章号:8906(若有变,请搜索版面)

(4) [Appendix]
* Feature
Support 200 years(1900-2100) lunar calendar calculation

* Requirements:
vim-ruby interface (For WinXP, if you do not wish to install Ruby, just put
msvcrt-ruby18.dll in PATH)

* Usage:
a) put ccal.rb in $VIM/vimfiles/plugin dir
b) Add following lines in .vimrc
c) Open calendar window via :Calendar or :CalendarH, place cursor on a date,
press 'gc'

"------------------------------------------------------------
" Lunar calendar function for calendar.vim plugin
"------------------------------------------------------------
function! s:GetLunarDate(day, month, year, week, dir)
ruby << EOF
$:.unshift(VIM::evaluate("expand('$VIM/vimfiles/plugin')"))
require 'ccal'
d, m, y = VIM::evaluate("a:day").to_i, VIM::evaluate("a:month").to_i,
VIM::evaluate("a:year").to_i
cc = Calendar::ChineseCalendar.new(y, m, d)
# print the pretty date text
season_color = case m
when 12, 1, 2: 'AliceBlue' # winter white
when 3..5: 'MediumSpringGreen' # spring green
when 6..8: 'DeepSkyBlue1' # summer night
when 9..11: '#eec080' # autumn gold
end

VIM::command("highlight DateColor gui=none guifg=#{season_color}")
VIM::command("echohl DateColor | echo '#{cc.chinese_format}' | echohl None")
EOF
endfunction

"------------------------------------------------------------
" customize calendar action
"------------------------------------------------------------
function! s:CalendarDoCustom(action)
let l:tmpvar = g:calendar_action
let g:calendar_action = a:action
exe "normal /<CR>"
let g:calendar_action = l:tmpvar
endfunction

" Use the following format to map new calendar actions
autocmd BufNewFile __Calendar nmap <buffer><silent>gc :call <SID>
CalendarDoCustom("<SID>GetLunarDate")<CR>

* Screenshot
附件

* Only tested on WinXP

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

(1) [ 插件的名称 ]

Viki/Deplate

(2) [ 插件的功能 ]

This plugin adds wiki-like hypertext capabilities to Vim.
You can use viki as a "minor" mode (i.e., as an add-on to any other mode)
or as a full-fledged wiki mode. There is also an add-on plugin for "

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=861

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

(1) [ 插件的名称 ]

NERD_tree

(2) [ 插件的功能 ]

The NERD tree allows you to explore your filesystem and to open files
and directories. It presents the filesystem to you in the form of a tree
which you manipulate with the keyboard and/or mouse.

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=1658

(4) [ 备注或特别提醒 ]

The following features and functionality are provided by the NERD tree:
* Files and directories are displayed in a hierarchical tree structure
* Different highlighting is provided for the following types of nodes:
* files
* directories
* sym-links
* windows .lnk files
* read-only files

(5) [ 推荐人id ]

runsnake

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

(1) [ 插件的名称 ]

fencview.vim

(2) [ 插件的功能 ]

我就来推荐一下我自己的插件^_^新版本完善以后就会更新到vim.org
FencView.vim : View a multi-byte encoded file in different encodings.

script karma Rating 30/12, Downloaded by 139

created by
Ming Bai

script type
utility

description
Install:
Copy FencView.vim to your plugin directory.
Usage:
Select a encoding from the Tools/Encoding menu just like what you did in
Firefox/IE or you can use ":FencView" command to open the encoding
list window and "Enter" key to select the encoding under cursor to
reload the file.
ScreenShot:
http://mbbill.googlepages.com/fenc.png

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=1708

(4) [ 备注或特别提醒 ]

(5) [ 推荐人id ]

mbbill

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

(1) [ 插件的名称 ]

matrix

(2) [ 插件的功能 ]

是的,说的就是电影 Matrix!Vim 的脚本并不是都干“正经事”的

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=1189

(4) [ 备注或特别提醒 ]

想看一下电影里那些酷酷的字符在 Vim 的窗口里翻滚吗?
发一个命令“:Matrix”即可按任意键退出

(5) [ 推荐人id ]

runsnake

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

(1) [ 插件的名称 ]

taglist

(2) [ 插件的功能 ]

程序员必备插件

(3) [ 插件的下载地址 ]

本版文章号:8911(若有变动,请搜索本版)

(4) [ 备注或特别提醒 ]

附件taglist跟原版taglist几乎一模一样,不过允许用户自定义一个filter,
把要显示的tag name修改一下。filter的原形是FilterName(filetype, tagname),
返回值作为显示在taglist窗口中的标签。起因是我在用taglist查看Java native
函数时,由于Java native函数名是Java_packagename_ClassName_methodName的形式,
名称太长,在taglist窗口里看不到实际的函数名,于是就做了点手脚,把tag名字处
理了一下。

* 示例:
前述的filter可以定义为如下,放在vimrc中:

function! TagNameFilter(ft, tag)
let l:newtag = a:tag
" Filter the Java native method names, remove package qualification.
" (change Java_some_package_ClassName_methodName to ClassName_methodName)
if a:ft == 'c' && a:tag =~ 'Java_/(/w/+_/)/+'
let l:reserve_classname = 1 " indicate we need class name
let l:pad = matchstr(a:tag, '^/s*') " leading space is required by taglist
let l:idx = strridx(a:tag, '_')
if l:reserve_classname
let l:idx = strridx(a:tag, '_', l:idx - 1)
endif

let l:newtag = l:pad . strpart(a:tag, l:idx + 1)
endif

return l:newtag
endfunction

" if g:tag_name_filter is not set, fall back to default filter
let g:tag_name_filter = "TagNameFilter"

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

(1) [ 插件的名称 ]

Tetris

(2) [ 插件的功能 ]

俄罗斯方块游戏

(3) [ 插件的下载地址 ]

http://www.vim.org/scripts/script.php?script_id=172

(4) [ 备注或特别提醒 ]

呵呵,玩到100分就算很不错了。/te开始游戏,尽量不要在gui模式下玩

(5) [ 推荐人id ]

vimmer

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

(1) [ 插件的名称 ]

BlockComment

(2) [ 插件的功能 ]

块注释插件,几乎是原插件的重写

(3) [ 插件的下载地址 ]

本版文章号:8914(若有变动,请搜索本版)

(4) [ 备注或特别提醒 ]
* Usage
/c Comment (linewise/blockwise)
/v UnComment (linewise/blockwise)
/b UnCommentBlock (Uncomment the whole commented block)
/d DeleteComment (Delete whole commented block)
/j Javadoc style Comment (No command to uncomment it yet)

It is easy to add new comment type, see CommentStr function in
BlockComment.vim

* Example
The /v command allows user uncomment part of a commented block:
/*--------- /*---------
* line1 * line1
* line2 place cursor on line2, => *---------*/
* line3 press /v line2 uncommented line2
*---------*/ /*---------
* line3
*---------*/

-------------------------------------------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: