推荐几款最近发现非常酷的Vim插件

Fri 18 October 2013

最近看一个github上的Vim配置, 发现了几款非常酷而且非常有用的Vim插件:

  • delimitMate 用于补全括号和引号
  • vim-surround 用于快速切换括号/引号或者标签
  • GitGutter 实时显示git更改
  • Gitv 查看Git详细提交日志(类似gitk)
  • vim-commentary Vim批量注释工具, 可以注释多行和去除多行注释
  • indentLine 更加美观的显示缩进对齐线

先放上录屏:

安装

上面插件可以通过 Vundle 来安装 (了解Vundle猛击 这里), 下面是 .vimrc 的配置

Bundle "Yggdroot/indentLine"
Bundle "airblade/vim-gitgutter"
Bundle "gregsexton/gitv"
Bundle "tpope/vim-commentary"
Bundle "tpope/vim-surround"
Bundle "Raimondi/delimitMate"

然后重新打开 Vim, 执行 :BundleIntall 等待安装完成

配置使用

delimitMate和GitGutter安装完成不用任何配置即可使用, 下面我们先介绍 vim-surround 插件的使用

vim-surround

这个插件可以快速的为字符串包围/改变或去除引号/括号或者HTML标签

为单个单词包围

在命令模式下, 使用 ysiw + '/"/(/[/{ 就可以为光标下的一个单词包围上 '/"/(/[/{

比如 ysiw' 为光标下的单词包围上单引号, ysiw" 为光标下单词包围上双引号, 依此类推.

vim-surround 同时还支持包围html标签, 将光标放到某单词试试下面指令

ysiw<p>
ysiw<p class="meta">

包围一行

yssb 可以快速为一行包围圆括号, yss + '/"/(/[/{ 可以为正行快速包围相应的引号/括号

比如 yss" 为一行包围双引号

更改包围

cs 指令可以更改包围, 比如 cs'" 是将单引号变成双引号, cs"( 是将双引号变成圆括号

vim-surround支持将括号或者引号变更为html标签, 试试下面命令

cs'<p>

上面命令将单引号换成 <p> 标签

去除包围

ds 指令可以取出包围, 后面需跟包围的内容, ds" 是去除双引号包围, ``

indentLine

这个插件安装成功后就会显示缩进对齐线, 我们仅仅在 .vimrc 里加一行来切换是否显示

map <leader>il :IndentLinesToggle<CR>

这样我们就可以通过 <leader> il (我的leader映射的,)来切换是否显示对齐线

Gitv

Gitv 实现了可以用Vim来查看Git的详细提交信息, 只需要打开Vim 执行 :Gitv

vim-commentary

这个插件可以快速注释与反注释多行内容, 但是它的注释符使用的是 commentstring, 默认是 /* %s */, 但这个值满足不了Python 和 Shell这样的语言, 在 .vimrc 添加如下内容

autocmd FileType python,shell set commentstring=#\ %s                 " 设置Python注释字符
autocmd FileType mako set cms=##\ %s

Visual 模式下 gc 命令可以注释选中的行

普通模式下 gcc 指令可以快速注释一行

gcu 可以撤销注释

最后

有什么没介绍到的大家可以看看帮助, 大家也可以围观这个强大Vim配置: https://github.com/liangxianzhe/dotvim

Category: Vim Tagged: Vim 插件 缩进对齐线 Git surround delimitMate

comments


Vim配置系列(二) —- 好看的statusline

Sat 05 January 2013

Vim是一款文本编辑器,但是这并不影响它有一个好看的外观,大家都知道Vim可以通过配色方案来改变Vim的外观,满足一些"好色之徒",之前大家可能也主意到截图中一个非常漂亮的statusline,这是通过Vim的一个Powerline的插件实现的.之前我们配置了Vundle的插件管理(传送门)我们可以用Vundle安装Powerline,在.vimrc(Windows可能是_vimrc)中添加:

Bundle "Lokaltog/vim-powerline"

然后重新打开vim执行

:BundleInstall

如果你和github畅通的话就会顺利安装插件,然后在.vimrc里添加

set laststatus=2
let g:Powerline_symbols='unicode'

如果gvim打开需要使用/path/to/your/bundle/vim-powerline/fontpatcher/fontpatcher给当前gvim使用的字体打上补丁(依赖需要fontforge和python)

然后重新打开vim你就会发现一个漂亮的statusline

好看的statusline

Category: Vim Tagged: 配置 系列 漂亮 插件 vim statusline Powerline

comments

Read More

Vim 结合Python编写的翻译插件

Fri 04 January 2013

最近重写了一下之前用Python写的一个终端翻译工具,想着Vim7.3 支持Python于是想将这个功能写为一个插件让Vim也支持翻译功能,现在英汉翻译比较完善, t会翻译光标下单词,选中的翻译还不完善,仅仅是个半成品,在此抛砖引玉.将下面代码复制保存为translate.vim 放到~/.vim/plugin目录下即可,代码如下:

"   Author  :   cold
"   E-mail  :   wh_linux@126.com
"   Date    :   2012/12/20 16:23
"   Desc    :   英汉/汉英翻译插件
"   Useage  :
"                  <Leader> t 翻译当前光标下内容 //XXX 中文不行
"                  <Leader> lt 翻译当前行
"                  <Leader> vt 翻译选中的内容

function GetCursorWord()
    let column = get(getpos('.'), 2, 0 …

Category: Vim Tagged: 翻译 插件 vim python

comments

Read More

Vim配置系列(一) ---- 插件管理

Fri 14 December 2012

最近对Vim进行了一番较大的配置变动,所以就想写出一个系列来将配置过程分享下来,供需要的朋友参考.我们之前配置Vim插件是一大助力,可以帮助我们做一些比较cool或这比较实用的功能,但是我之前都是直接搜索插件然后下载下来,手动拷贝到相应的插件,这种感觉肯定是不爽,不管是Linux还是Python/Ruby都有一套自己的包管理器,可以比较智能的搜索/安装/升级/卸载包.Vim也有类似功能的插件Vundle,他是一款Vim插件管理器,依赖于git,git是一款非常棒的VCS这里不做介绍,有兴趣的可以了解一下.Vundle可以根据配置文件的github或其他git的路径自行安装/升级插件.下面我们来介绍如何安装: 首先在你的~/.vim下或者$VIM/vimfiles($VIM是vim的安装路径)创建bundle目录

mkdir ~/.vim/bundle

然后使用git克隆Vundle项目:

git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle

然后在你的.vimrc里添加下面内容:

set nocompatible
filetype off                              " 先关闭文件类型 …

Category: Vim Tagged: 配置 系列 管理 插件 Vundle vim Bundle

comments

Read More
Page 1 of 1

Fork me on GitHub