VIM配置的学习记录

     之前项目紧张在linux下一直用source_insight当编辑器,不过也够用,但这毕竟不是linux下的产物(邓爷爷说的好,不管白猫黑猫,抓住老鼠就是好猫,工具顺手就行,但我有种强迫症,一定要甩开windows,使用linux发行版进行我的生活工作,请谅解),早就听说vim和emacs,一个编辑器之神,一个神用的编辑器,那我就先用编辑器之神吧。

      关于vim的配置,网络有很多牛逼的配置,我就以spf13为例,选用理由:站在巨人的肩膀上,理解巨人的思想。这也是我现在使用的版本,这个版本,我现在使用的程度,只是满足开发使用,其强大还待探索发现。


1、安装软件

下面软件,一个个的安装吧,

vim,ctags,cscope,git,lua5.3,vim-nox,vim-gtk,vim-gnome,vim-atheta

2、安装插件

spf13插件安装人家做的很傻瓜,四句话搞定

 shell中运行:

curl http://j.mp/spf13-vim3 -L -o - | sh
cd $HOME/to/spf13-vim/
git pull
vim +BundleInstall! +BundleClean +q

再度开启vim,就不一样了吧

3、个性化更改

1)选择一款自己喜欢的软件主题样式

2)使能鼠标的作用,偶尔鼠标还是能用上

3)关闭程序高亮显示,不然看起来好乱

4)关闭换行自动注释功能,这个功能有时候挺烦人的,特别是复制别人的代码

5)配置cscope的功能,cscope还是比ctags功能要强劲.

vim ~/.vimrc.local

添加如下代码:

"color theme
colorscheme peaksea

"mouse enable
set mouse=

"no bright display
set nospell

"no auto note
set formatoptions=ql

"cscope config
if has("cscope")
    set csprg=/usr/bin/cscope
    set csto=0
    set cst
    set nocsverb
    " add any database in current directory
    if filereadable("cscope.out")
        cs add cscope.out
    " else add database pointed to by environment
    elseif $CSCOPE_DB != ""
        cs add $CSCOPE_DB
    endif
    set csverb
endif
nmap <C-_>s :cs find s <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>g :cs find g <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>c :cs find c <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>t :cs find t <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>e :cs find e <C-R>=expand("<cword>")<CR><CR>
nmap <C-_>f :cs find f <C-R>=expand("<cfile>")<CR><CR>
nmap <C-_>i :cs find i ^<C-R>=expand("<cfile>")<CR>$<CR>
nmap <C-_>d :cs find d <C-R>=expand("<cword>")<CR><CR>

4、使用vim开发环境
1)建立cscope的数据库,可以在程序中跳来跳去
<1>对于所有源码在同一个目录下的,进入程序目录输入:
cscope -Rbq
然后输入vim就可以进行代码编辑了
<2>对于大型程序,像内核,需要两步操作
    1>建立cscope.files,编辑脚本create_cscope_lib.sh

#!/bin/sh
LNX=/home/shirf/my_study/linux_study/linux-2.6.30
cd /
find $LNX -name "*.[chxsS]" -print > $LNX/cscope.files

    2>进入cscope.files所在的目录下,执行
    cscope -bqk

此时,已完成对整个工程的数据索引,下面就可以开始浏览代码了

2)常用的快捷键
    1> <C-e> 打开当前目录的目录树
    2> <C-p> 进行快速文件查找
    3> <leader>cc 批量注释
       <leader>cu 批量取消注释
    4> <C-n> 向下查找代码自动补全选项
       <C-p> 向上查找代码自动补全选项
    5> <C-]> 跳转到定义处
       <C-T> 调回原处
       gD 跳转到局部变量定义
       <C-w-]> 在窗体下创建水平窗口,显示当前定义
       <C-_>g 跳转到定义处
       <C-_>c 跳转到调用本函数地方
       <C-_>s 查找C符号
       <C-_>d 查看本函数调用的函数
       <C-_>t 查看这段字符
       <C-_>f 查看这个文件
       <C-_>i 查找这个文件引用的文件
    6> <leader><leader>w 向下快速跳转
       <leader><leader>b 向上快速跳转
    7> ds{,{为一个符号,删除一对{}
       cs{[,讲{}替换为[]
       yssB 添加{}
       yssb 添加()
       yssr 添加[]
    8> :SyntasticInfo 显示语法检查信息
       :SyntasticCheck 马上进行语法检查
       :Errors 显示语法检查的提示信息
       :lclose 关闭语法检查提示信息
       :SyntasticReset 复位语法检查
    9> :Gstatus 等同于<leader>gs  相当于git status
       :Gdiff 等同于<leader>gd 相当于git diff
       :Gcommit -m "" 等同于<leader>gc 相当于git commite
    10>:sp 新建水平窗口
       :vsp 新建垂直窗口
    11><leader>a= 所有等号对齐
       <leader>a& 所有&号对齐
    12> > 代码块右移
        < 代码快左移
3)vim的配置理解
    spf13的vim脚本配置,包含很对语言的配置,通过g:spf13_bundle_groups来开启相应的功能
    见.vimrc.bundle
    默认开启内容为
    let g:spf13_bundle_groups=['general', 'writing', 'neocomplete', 'programming', 'php', 'ruby', 'python', 'javascript', 'html', 'misc',]
    如果你想自定义开启方式,新建.vimrc.before.local
    let g:spf13_bundle_groups=[''],在''添加你所需要的语言开发工具即可


这只是基本的功能使用,后期待探索发现逐渐添加

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值