从05年起接触vim, 一直喜欢用它来写代码,由于平时开发涉及几个方向,环境有所不同,但基本上可以统一使用vim来编辑,把一些设置记录下来,方便以后参阅。
少用鼠标是vi编程的一大特点, 如果在vs, eclipse中,结合这两者的部分快捷键,那感觉更爽,长期使用vim的人会理解这点的。
1) Unix/Linux环境下,vim自带安装,我喜欢NERDTreeToggle插件。
.vimrc设置:
少用鼠标是vi编程的一大特点, 如果在vs, eclipse中,结合这两者的部分快捷键,那感觉更爽,长期使用vim的人会理解这点的。
1) Unix/Linux环境下,vim自带安装,我喜欢NERDTreeToggle插件。
.vimrc设置:
syntax onset history=1000set nuset shiftwidth=4set tabstop=4set nobackupset encoding=utf-8set termencoding=GBKset langmenu=zh_CN.UTF-8language message zh_CN.UTF-8set fileencoding=utf-8set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1set listchars=tab:>-set cindentnmap nt :NERDTreeToggle
2) Windows环境下安装gVim, 也安装NERDTreeToggle插件。
_vimrc设置:
_vimrc设置:
set nocompatiblesource $VIMRUNTIME/vimrc_example.vimsource $VIMRUNTIME/mswin.vimbehave mswinset diffexpr=MyDiff()function MyDiff()let opt = '-a --binary 'if &diffopt =~ 'icase' | let opt = opt . '-i ' | endifif &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endiflet arg1 = v:fname_inif arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endiflet arg2 = v:fname_newif arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endiflet arg3 = v:fname_outif arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endiflet eq = ''if $VIMRUNTIME =~ ' 'if &sh =~ '\<cmd'let cmd = '""' . $VIMRUNTIME . '\diff"'let eq = '"'elselet cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'endifelselet cmd = $VIMRUNTIME . '\diff'endifsilent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eqendfunctionsyntax onset tabstop=4set nuset shiftwidth=4set nobackupwinpos 100 80set lines=35 columns=140set history=1000set fileencoding=utf8set encoding=utf-8set termencoding=GBKset langmenu=zh_CN.UTF-8language message zh_CN.UTF-8set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1set listchars=tab:>-set cindentnmap nt :NERDTreeToggle
3) Sublime text 2:
已经自带vim插件,只要在配置文件开启即可。
4) vs2008:
ViEmu
VS下的VIM插件
破解:
1.删除目录 C:\Documents and Settings\用户名\Local Settings\Application Data\Identities\{17582A9E-740A-47F2-8256-D09F1378E7FA}
如:C:\Documents and Settings\Administrator\Local Settings\Application Data\Identities
2.删除注册表项HKEY_CURRENT_USER\Software\Classes\CLSID\{D31F31E1-B08F-46FF-92C5-CA111A2053DF}
过一段时间又到期,继续依法破解,最好写一个脚本来操作,执行一个命令就完成。
5) eclipse:
http://www.viplugin.com/viplugin.htm
根据viPlugin使用手册
User_Manual_viPlugin.pdf安装即可。
2.x版本的破解方法:在com.mbartl.viplugin.eclipse.layer_2.0.0/lib/licensechecker.jar中,你只需要将lib下的文件放在classhpath上,然后调用CheckLicenseFile.encrypt(name, email)方法就能得到一个注册码,将这个注册码保存到一个叫viPlugin2.lic的文件中放在workspace或者eclipse根目录下就可以了。
package com.bingersoft.viplugin;import com.mbartl.viimplementation.license.CheckLicenseFile;public class Viplugin {
public static void main(String[] args) throws Exception {String name = "liangb";String email = "704839634@qq.com";String license = CheckLicenseFile.encrypt(name, email);System.out.println(license);}
}
viPlugin2.lic:
K5bXyEZ89CyJozYoGWFtsPs0fviN6zK54ele-hVgwSZdWO_N0tPrdGXuG7bwXvGY
设置几个喜欢的快捷键,由于eclipse已经设置了这些快捷键,但我们在vi里使用习惯了,所以还需要自己设置为vi模式的快捷键,
方法是:Window --> Preferences --> Keys, 在Scheme里选择viPlugin, 对Category进行排序,找到Category是ViPlugin的几项,
我喜欢设置:(如果有冲突,则把其他项修改为其它快捷键)
PageDown: Ctrl + F,
PageUp: Ctrl + B,
HalfPageDown: Ctrl + D,
HalfPageUp: Ctrl + U
在ecplise下用Ctrl + E代替Ctrl + Tab.
复制粘贴功能实效解决方法:yy, p命令失效,插件本身有bug,可以用鼠标选种任何文本,Ctrl+C, Ctrl+V操作一次,之后yy, p等命令就可以了。