linux下vim开发环境

来源:岁月联盟 编辑:exp 时间:2011-10-14

深度LINUX之ROR编辑器

参考文档:http://www.2cto.com/os/201110/107773.html
vim主页:http://www.vim.org/index.php

1.vim安装nerdtree.插件
    git clone git://github.com/scrooloose/nerdtree.git
        rake
2.使用:
    :NERDTree #开启
    退出按 q
    更多--
        o 打开关闭文件或者目录
        t 在标签页中打开
        T 在后台标签页中打开
        ! 执行此文件
        p 到上层目录
        P 到根目录
        K 到第一个节点
        J 到最后一个节点
        u 打开上层目录
        m 显示文件系统菜单(添加、删除、移动操作)
        ? 帮助
        q 关闭
    ctr+w+h  光标focus左侧树形目录,
    ctrl+w+l 光标focus右侧文件显示窗口。
    多次摁 ctrl+w,光标自动在左右侧窗口切换
3.
git clone git://github.com/tpope/vim-rails.git
cp -R autoload doc plugin ~/.vim

4.:Rake 这个好记
:Redit 任意文件,相对路径
:Rlog 日志文件
:Rpreview 打开浏览器,http://localhost:3000
:Rtags 生成一个tag,要求ctags
:Rrefresh 刷新
:Rfind 查文件,可以不写.rb后缀
gf 这个命令超强,根据当前光标处内容跳转到文件

直接打开
:Rmodel
:Rmigration
:Robserver
:Rfixtures
:Runittest
:Rcontroller
:Rhelper
:Rview
:Rlayout
:Rapi
:Rfunctionaltest
:Rstylesheet
:Rjavascript
:Rplugin
:Rlib
:Rtask
:Rintegrationtest

:Rscript
:Rconsole
:Rgenerate
:Rserver
:Rserver! 强制运行,杀掉前面那个,相当于重启

重构:
:Rextract 简单说就是把rhtml中的一段提出来,变成子页面

5.  安装snipmate
git clone git://github.com/msanders/snipmate.vim.git
cd snipmate.vim
cp -R * ~/.vim
但ERB文件无效,这个问题还没有解决

6.FuzzyFinder.vim+L9

7.http://www.vim.org/scripts/script.php?script_id=1338
tabbar   Alt-bufNumber

8.
git clone git://github.com/pangloss/vim-javascript.git
cd vim-javascript
rake install

9.http://www.vim.org/scripts/script.php?script_id=2280
blackboard.vim
:color blackboard
------但是我发现直接放在plugin下面就可以不用:color blackboard了

10.  .vimrc
" 启动vim时窗口的大小
  set lines=35 columns=120 

" 不兼容VI键盘,使用vim键盘
  set nocompatible

" 文件类型识别
  filetype on
  filetype plugin indent on

" 禁止生成临时文件
  set nobackup
  set noswapfile

" 历史记录数
  set history=50

" 设置编码 
  set enc=utf-8 

" 设置文件编码 
  set fenc=utf-8 

" 设置文件编码检测类型及支持格式 
  set fencs=utf-8,ucs-bom,gb18030,gbk,gb2312,cp936 

" 设置开启语法高亮 
  syntax on 

" 显示行号 
  set number 

" 高亮显示匹配的括号
  set showmatch

" 搜索忽略大小写
  set ignorecase 

" 查找结果高亮度显示 
  set hlsearch
  set incsearch

" tab宽度 
  set tabstop=4 
  set cindent shiftwidth=4 
  set autoindent shiftwidth=4 
 
" 命令行下按tab键自动完成
  set wildmode=list:full
  set wildmenu

" 设置默认的颜色
  colorscheme darkblue
 
" 带有如下符号的单词不要被换行分割
  set iskeyword+=_,$,@,%,#,-
 
" 通过使用: commands命令,告诉我们文件的哪一行被改变过
  set report=0
 
" 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位)
  set mouse=a
  set selection=exclusive
  set selectmode=mouse,key

" 设置自动保存
  imap <F9> <Esc>:up<cr> 

" 把 F8 映射到 启动NERDTree插件
  let NERDTreeShowBookmarks = 1
  let NERDChristmasTree = 1
  let NERDTreeWinPos = "left"
  map <F8> :NERDTree<CR> 

" 在不同的窗口移动
  map <C-j> <C-W>j
  map <C-k> <C-W>k
  map <C-h> <C-W>h
  map <C-l> <C-W>l

" 设置FuzzyFinder
  let mapleader = "//"
  map <leader>F :FufFile<CR>
  map <leader>f :FufTaggedFile<CR>
  map <leader>g :FufTag<CR>
  map <leader>b :FufBuffer<CR>

" 设置Color-Sample
  map <silent><F3> :NEXTCOLOR<cr>
  map <silent><F2> :PREVCOLOR<cr>

" 设置Rubytest
  let g:rubytest_cmd_spec = "rspec -fd %p"

" 设置SuperTab
  let g:SuperTabRetainCompletionType="context"

11.autoclose.vim  surround.vim
https://github.com/tpope/vim-surround

12.
vim-pathogen
https://github.com/tpope/vim-pathogen
mkdir -p ~/.vim/autoload ~/.vim/bundle;
curl -so ~/.vim/autoload/pathogen.vim    https://raw.github.com/tpope/vim-pathogen/HEAD/autoload/pathogen.vim
加上call pathogen#infect()
也没有成功(后来证实成功了,只是fugitive有问题)
fugitive
cd ~/.vim/bundle
git clone git://github.com/tpope/vim-fugitive.git
:help vim-fugitive

tabular
https://github.com/godlygeek/tabular

taglist
git clone git://github.com/vim-scripts/taglist.vim.git

zendcoding
git clone https://github.com/mattn/zencoding-vim.git
http://mattn.github.com/zencoding-vim/
没有搞好,下次有空再搞
13. 一次退出所有的tab :qa!