冰果

技术群:26678700     
交流QQ: 704839634
合作: 1) 可兼职远程办公开发; 2) 有一套Go+Python开发的行业短信云平台可合作;3)目前正在开发物联网、大数据平台。

一切coding都用vi

   从05年起接触vim, 一直喜欢用它来写代码,由于平时开发涉及几个方向,环境有所不同,但基本上可以统一使用vim来编辑,把一些设置记录下来,方便以后参阅。
   少用鼠标是vi编程的一大特点, 如果在vs, eclipse中,结合这两者的部分快捷键,那感觉更爽,长期使用vim的人会理解这点的。 

1) Unix/Linux环境下,vim自带安装,我喜欢NERDTreeToggle插件。
    .vimrc设置:
syntax on
set history=1000
set nu
set shiftwidth=4
set tabstop=4
set nobackup
set encoding=utf-8
set termencoding=GBK
set langmenu=zh_CN.UTF-8
language message zh_CN.UTF-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
set listchars=tab:>-
set cindent
nmap nt :NERDTreeToggle
2) Windows环境下安装gVim, 也安装NERDTreeToggle插件。
     _vimrc设置:
set nocompatible
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin
set diffexpr=MyDiff()
function MyDiff()
  let opt = '-a --binary '
  if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
  if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
  let arg1 = v:fname_in
  if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
  let arg2 = v:fname_new
  if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
  let arg3 = v:fname_out
  if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
  let eq = ''
  if $VIMRUNTIME =~ ' '
    if &sh =~ '\<cmd'
      let cmd = '""' . $VIMRUNTIME . '\diff"'
      let eq = '"'
    else
      let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
    endif
  else
    let cmd = $VIMRUNTIME . '\diff'
  endif
  silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction
syntax on
set tabstop=4
set nu
set shiftwidth=4
set nobackup
winpos 100 80
set lines=35 columns=140 
set history=1000
set fileencoding=utf8
set encoding=utf-8
set termencoding=GBK
set langmenu=zh_CN.UTF-8
language message zh_CN.UTF-8
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr,latin1
set listchars=tab:>-
set cindent
nmap nt :NERDTreeToggle
3) Sublime text 2:
        已经自带vim插件,只要在配置文件开启即可。
4) vs2008:
          ViEmu

VS下的VIM插件

地址:http://www.viemu.com/

破解:

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等命令就可以了。

posted on 2014-01-02 22:04 冰果 阅读(2326) 评论(0)  编辑 收藏 引用 所属分类: JavaC/C++


只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理