VIM打造成IDE

本文介绍了如何将VIM转化为一个强大的IDE,包括安装Vundle管理插件,配置NERDTree进行目录浏览,使用ctags建立符号索引,集成taglist显示符号列表,安装cscope探索符号关系,以及启用syntastic进行语法检查。通过这些步骤,VIM可以实现类似IDE的功能。
摘要由CSDN通过智能技术生成

1.安装git

由于VIM的包管理软件Vundle需要Git支持,所以第一步我们先安装git

sudo apt-get install git

2.安装Vundle

Vundle是VIM的包管理软件,我们的插件大部分是通过这个包管理软件进行安装的,还有一部分是系统自带的,使用系统命令安装即可

2.1下载

执行git clone命令进行下载

git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim

2.2配置.vimrc文件

将如下内容放在.vimrc文件中,该内容是由Readme中的内容删减的

set nocompatible              
filetype off                                                     

set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'

call vundle#end()            
filetype plugin indent on    
" :PluginList       
" :PluginInstall   
" :PluginSearch foo 
" :PluginClean  

这里粘贴的时候会因为自动注释和自动换行,导致粘贴的内容混乱,可以先使用

set paste

进入粘贴模式,将内容粘贴完毕后,再使用

set nopaste

恢复即可

2.3VIM常规配置

syntax on            " 支持语法高亮
set tabstop=4        " 设置制表符(tab键)的宽度
"set softtabstop=4   " 设置按退格键的时候退回缩进的长度   
set expandtab	     " 使用空格代替Tab
set ai		     " 设置自动缩进
set shiftwidth=4     " (自动) 缩进使用的4个空格
set hls		     " 打开搜索高亮
set nu		     " 显示行号

"设置Ctrl + K/J/H/L的映射
nmap <C-K> <C-W><C-K>
nmap <C-J> <C-W><C-J>
nmap <C-H> <C-W><C-H>
nmap <C-L> <C-W><C-L>

"按F8高亮当前单词
nmap <F8> :let @/=expand('<cword>')<cr>

3.NERDTree

NERDTree插件时VIM的目录树插件,安装之后你可以查看工程的目录结构

3.1NERDTree安装

vundle配置中添加

Plugin 'scrooloose/nerdtree'

执行PluginInstall即可,如果安装后目录树显示是

"�~V�"

请将~/.vim/bundle/nerdtree/plugin/NERD_tree.vim中的如下代码

if !nerdtree#runningWindows() && !nerdtree#runningCygwin()
    call s:initVariable("g:NERDTreeDirArrowExpandable", "�~V�")
    call s:initVariable("g:NERDTreeDirArrowCollapsible", "�~V�")
else
    call s:initVariable("g:NERDTreeDirArrowExpandable", "+")
    call s:initVariable("g:NERDTreeDirArrowCollapsible", "~")
endif

改为

"if !nerdtree#runningWindows() && !nerdtree#runningCygwin()
"    call s:initVariable("g:NERDTreeDirArrowExpandable", "�~V�")
"    call s:initVariable("g:NERDTreeDirArrowCollapsible", "�~V�")
"else
    call s:initVariable("g:NERDTreeDirArrowExpandable", "+")
    call s:initVariable("g:NERDTreeDirArrowCollapsible", "~")
"endif

即可

 

3.2NERDTree配置

" 按<F2>打开或关闭文件目录树
map <F2> : NERDTreeToggle<CR>

" 修改树的显示图标
let g:NERDTreeDirArrowExpandable = '+'
let g:NERDTreeDirArrowCollapsible = '-'

" 窗口位置
let g:NERDTreeWinPos='left'

"
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值