简洁而实用的vim配置

vi是UNIX系统最初的文本编辑工具。vim是vi的升级,即vi improve,被包含在大多数UNIX和类UNIX系统中。

本文主要介绍Ubuntu20.04环境下vim的配置过程,会比较基础和实用。

题外话,从下图可以看到Ubuntu20.04中vi和vim都是/usr/bin/vim.basic,所以该环境下命令行键入vi或vim,没什么区别。

目录

简单配置

函数跳转配置

函数大纲配置

文件列表配置


  • 简单配置

如上图,键入ls -a查看ad用户根目录已经有.vimrc文件,键入cp命令拷贝备份,键入vim打开.vimrc,键入i进入插入修改模式,将下列命令补充到该文件中。

备注:如果ad用户根目录下缺少.vimrc或该文件已经面目全非,可以cp拷贝/etc/vim/vimrc文件作为.vimrc,然后进行修改。

set number                "显示行号
set tabstop=4             "设置tab为4个空格
set cindent shiftwidth=4  "设置回车自动宽度
set showmatch             "高亮显示匹配的(圆/方/花)括号
set ignorecase            "忽略大小写
set smartcase	          "智能匹配大小写
set hlsearch	          "查找字符串高亮
set mouse=nv              "使能鼠标

inoremap ( ()<ESC>i       "圆括号(自动补全
inoremap [ []<ESC>i       "方括号[自动补全
inoremap { {}<ESC>i	      "花括号{自动补全

.vimrc修改完成后,按esc按键,接着键入:wq回车保存退出。

备注:

  1. 上图中引号"后面的中文注释仅为了本文说明方便,不建议.vimrc加入中文注释。
  2. inoremap, i表示在插入模式下,nore表示不进行递归,map表示按键映射。

  • 函数跳转配置

函数跳转功能需要安装ctags和cscope:

sudo apt install exuberant-ctags
sudo apt install cscope

.vimrc文件中增加一行,配合后面操作以支持跳转到标准库函数定义。

set tags+=~/tmp/tags

为了方便使用,把相关指令写入shell脚本,使用时执行脚本就行,不用再键入多条命令。

其中,ctags.sh脚本内容如下:

#!/bin/sh

find . -name "*.h" -o -name "*.c" -o -name "*.cc" -o -name "*.inc">cscope.file
cscope -Rbq -i cscope.file
#ctags -R --c-kinds=+cdefgmnpstuv  -L  cscope.file
ctags -R --c++-kinds=+p --fields=+iaS --extra=+q -L cscope.file 
ctags --fields=+iaS --extra=+q -R -f ~/tmp/tags /usr/include /usr/local/include
rm -rf cscope.file

vim打开代码文件,让光标处于需要跳转的函数,按ctrl+]跳转到函数定义,按ctrl+t返回。示例效果如下:

  • 函数大纲配置

1)vim官网(https://www.vim.org/scripts/script.php?script_id=3465)下载tagbar.vmb

2)vim tagbar.vmb
    :so %
    :q

3)第二步操作会将tagbar插件解压到~/.vim目录,为了方便管理,我手动将解压到~/.vim/的目录和文件放到了~/.vim/bundle/tagbar/。并修改.vimrc,添加以下两行,配置tagbar插件路径和启动按键为F4。

set rtp+=~/.vim/bundle/tagbar/
nnoremap <silent><F4> :TagbarToggle<CR>

vim打开代码文件,按F4按键,右侧将显示该代码文件的函数大纲。示例效果如下:

  • 文件列表配置

1)从vim官网(https://www.vim.org/scripts/script.php?script_id=1658)下载NERD_tree.zip

2)解压到.vim/bundle/NERD_tree目录

3)修改.vimrc,增加如下两行,配置NERD_tree插件路径和启用按键为F3:

set rtp+=~/.vim/bundle/NERD_tree/
nnoremap <silent><F3> :NERDTreeToggle<CR>

vim打开代码文件,按F3按键,左侧将显示当前路径的文件列表。示例效果如下: 


安装两个插件后vim的大小才604K:

最后看一下.vimrc文件,改动其实不多:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值