将 VIM 打造成一个简单的IDE
2015-03-29 15:46
435 查看
1. 安装 vundle —— VIM插件管理器,很实用
git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
2. 添加插件
可以直接编辑 .vimrc 文件
下面是我的 .vimrc
syntax on
set nocompatible
set background=dark
"colorscheme blackbeauty
"colorscheme blacksea
"TAB 宽度
set tabstop=4
set shiftwidth=4
set expandtab
set softtabstop=4
set showmatch
"自动缩进
set autoindent
set smartindent
set cindent
"显示行号
set number
"搜索逐字符高亮
set incsearch
"搜素时高亮显示被找到的文本
set hlsearch
"设置工作目录为当前编辑文件的目录
set bsdir=buffer
set autochdir
"编辑vimrc之后,重新加载
autocmd! bufwritepost _vimrc source $VIM/_vimrc
"#################插件管理#####################
filetype on
filetype plugin on
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
" let Vundle manage Vundle required!
Bundle 'gmarik/vundle'
"shortcuts
map <F2> :NERDTreeToggle<CR>
map <F3> :silent! Tlist<CR>
" My bundles.
" 文件管理器
Bundle 'scrooloose/nerdtree'
" 让Tree把自己给装饰得多姿多彩漂亮点
let NERDChristmasTree=1
" 控制当光标移动超过一定距离时,是否自动将焦点调整到屏中心
let NERDTreeAutoCenter=1
" 指定鼠标模式(1.双击打开 2.单目录双文件 3.单击打开)
let NERDTreeMouseMode=2
" 是否默认显示书签列表
let NERDTreeShowBookmarks=1
" 是否默认显示文件
let NERDTreeShowFiles=1
" 是否默认显示行号
let NERDTreeShowLineNumbers=0
" 窗口位置('left' or 'right')
let NERDTreeWinPos='left'
" 窗口宽度
let NERDTreeWinSize=31
" 以打开NERDTree时的目录为工作目录
let NERDTreeChDirMode=1
" 注释插件
Bundle 'The-NERD-Commenter'
Bundle 'davidhalter/jedi-vim'
Bundle 'majutsushi/tagbar'
Bundle 'wesleyche/SrcExpl'
" 状态栏增强
Bundle 'https://github.com/Lokaltog/vim-powerline.git'
set guifont=PowerlineSymbols "for Powerline
set laststatus=2
set t_Co=256
let g:Powerline_symbols='unicode'
set encoding=utf8
" C/C++ 自动补全
Bundle 'OmniCppComplete'
set tags=tags;
" tags目录
set tags+=$VIM/vimfiles/tags/cpp
let OmniCpp_NamespaceSearch = 1
let OmniCpp_GlobalScopeSearch = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_ShowPrototypeInAbbr = 1 " show function parameters
let OmniCpp_MayCompleteDot = 1 " autocomplete after .
let OmniCpp_MayCompleteArrow = 1 " autocomplete after ->
let OmniCpp_MayCompleteScope = 1 " autocomplete after ::
let OmniCpp_DefaultNamespaces = ["std", "_GLIBCXX_STD"]
" automatically open and close the popup menu / preview window
au CursorMovedI,InsertLeave * if pumvisible() == 0|silent! pclose|endif
set completeopt=menuone,menu,longest,preview
Bundle 'taglist.vim'
" 让taglist窗口出现在Vim的右边
let Tlist_Use_Right_Window = 1
" 当同时显示多个文件中的tag时,设置为1,可使taglist只显示当前文件tag,其它文件的tag都被折叠起来。
let Tlist_File_Fold_Auto_Close = 1
" 只显示一个文件中的tag,默认为显示多个
let Tlist_Show_One_File = 1
" Tag的排序规则,以名字排序。默认是以在文件中出现的顺序排序
let Tlist_Sort_Type ='name'
" Taglist窗口打开时,立刻切换为有焦点状态
let Tlist_GainFocus_On_ToggleOpen = 1
" 如果taglist窗口是最后一个窗口,则退出vim
let Tlist_Exit_OnlyWindow = 1
" 设置窗体宽度为32,可以根据自己喜好设置
let Tlist_WinWidth = 32
" 这里比较重要了,设置ctags的位置,不是指向MacOS自带的那个,而是我们用homebrew安装的那个
let Tlist_Ctags_Cmd ="/usr/local/Cellar/ctags/5.8_1/bin/ctags"
" The rest of config.
augroup vimrc_autocmds
autocmd!
" highlight characters past column 120
autocmd FileType python highlight Excess ctermbg=DarkGrey guibg=Black
autocmd FileType python match Excess /\%120v.*/
autocmd FileType python set nowrap
augroup END
"激活插件与文件类型的依赖关系
filetype plugin indent on " required!
" Brief help
" :BundleList
" :BundleInstall
" :BundleSearch foo
" :BundleClean
保存后再次打开 vim 可能会提示错误,没关系,进入 vim 之后 :BundleInstall 一下就可以直接安装插件了。
下面简单介绍一下几个插件的功能
3. NERDTree
一个文件管理器,可以浏览当前文件夹下的所有源文件,可以方便地在各个文件中切换
我设置了快捷键 F2 ,可以显示 所有文件
4. Powerline
一个状态栏增强插件,彩色显示当前的插入、正常状态,可以显示文件进度、当前光标位置。如下:
其他de不一一介绍了下面是我的一张运行效果截图
git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
2. 添加插件
可以直接编辑 .vimrc 文件
下面是我的 .vimrc
syntax on
set nocompatible
set background=dark
"colorscheme blackbeauty
"colorscheme blacksea
"TAB 宽度
set tabstop=4
set shiftwidth=4
set expandtab
set softtabstop=4
set showmatch
"自动缩进
set autoindent
set smartindent
set cindent
"显示行号
set number
"搜索逐字符高亮
set incsearch
"搜素时高亮显示被找到的文本
set hlsearch
"设置工作目录为当前编辑文件的目录
set bsdir=buffer
set autochdir
"编辑vimrc之后,重新加载
autocmd! bufwritepost _vimrc source $VIM/_vimrc
"#################插件管理#####################
filetype on
filetype plugin on
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
" let Vundle manage Vundle required!
Bundle 'gmarik/vundle'
"shortcuts
map <F2> :NERDTreeToggle<CR>
map <F3> :silent! Tlist<CR>
" My bundles.
" 文件管理器
Bundle 'scrooloose/nerdtree'
" 让Tree把自己给装饰得多姿多彩漂亮点
let NERDChristmasTree=1
" 控制当光标移动超过一定距离时,是否自动将焦点调整到屏中心
let NERDTreeAutoCenter=1
" 指定鼠标模式(1.双击打开 2.单目录双文件 3.单击打开)
let NERDTreeMouseMode=2
" 是否默认显示书签列表
let NERDTreeShowBookmarks=1
" 是否默认显示文件
let NERDTreeShowFiles=1
" 是否默认显示行号
let NERDTreeShowLineNumbers=0
" 窗口位置('left' or 'right')
let NERDTreeWinPos='left'
" 窗口宽度
let NERDTreeWinSize=31
" 以打开NERDTree时的目录为工作目录
let NERDTreeChDirMode=1
" 注释插件
Bundle 'The-NERD-Commenter'
Bundle 'davidhalter/jedi-vim'
Bundle 'majutsushi/tagbar'
Bundle 'wesleyche/SrcExpl'
" 状态栏增强
Bundle 'https://github.com/Lokaltog/vim-powerline.git'
set guifont=PowerlineSymbols "for Powerline
set laststatus=2
set t_Co=256
let g:Powerline_symbols='unicode'
set encoding=utf8
" C/C++ 自动补全
Bundle 'OmniCppComplete'
set tags=tags;
" tags目录
set tags+=$VIM/vimfiles/tags/cpp
let OmniCpp_NamespaceSearch = 1
let OmniCpp_GlobalScopeSearch = 1
let OmniCpp_ShowAccess = 1
let OmniCpp_ShowPrototypeInAbbr = 1 " show function parameters
let OmniCpp_MayCompleteDot = 1 " autocomplete after .
let OmniCpp_MayCompleteArrow = 1 " autocomplete after ->
let OmniCpp_MayCompleteScope = 1 " autocomplete after ::
let OmniCpp_DefaultNamespaces = ["std", "_GLIBCXX_STD"]
" automatically open and close the popup menu / preview window
au CursorMovedI,InsertLeave * if pumvisible() == 0|silent! pclose|endif
set completeopt=menuone,menu,longest,preview
Bundle 'taglist.vim'
" 让taglist窗口出现在Vim的右边
let Tlist_Use_Right_Window = 1
" 当同时显示多个文件中的tag时,设置为1,可使taglist只显示当前文件tag,其它文件的tag都被折叠起来。
let Tlist_File_Fold_Auto_Close = 1
" 只显示一个文件中的tag,默认为显示多个
let Tlist_Show_One_File = 1
" Tag的排序规则,以名字排序。默认是以在文件中出现的顺序排序
let Tlist_Sort_Type ='name'
" Taglist窗口打开时,立刻切换为有焦点状态
let Tlist_GainFocus_On_ToggleOpen = 1
" 如果taglist窗口是最后一个窗口,则退出vim
let Tlist_Exit_OnlyWindow = 1
" 设置窗体宽度为32,可以根据自己喜好设置
let Tlist_WinWidth = 32
" 这里比较重要了,设置ctags的位置,不是指向MacOS自带的那个,而是我们用homebrew安装的那个
let Tlist_Ctags_Cmd ="/usr/local/Cellar/ctags/5.8_1/bin/ctags"
" The rest of config.
augroup vimrc_autocmds
autocmd!
" highlight characters past column 120
autocmd FileType python highlight Excess ctermbg=DarkGrey guibg=Black
autocmd FileType python match Excess /\%120v.*/
autocmd FileType python set nowrap
augroup END
"激活插件与文件类型的依赖关系
filetype plugin indent on " required!
" Brief help
" :BundleList
" :BundleInstall
" :BundleSearch foo
" :BundleClean
保存后再次打开 vim 可能会提示错误,没关系,进入 vim 之后 :BundleInstall 一下就可以直接安装插件了。
下面简单介绍一下几个插件的功能
3. NERDTree
一个文件管理器,可以浏览当前文件夹下的所有源文件,可以方便地在各个文件中切换
我设置了快捷键 F2 ,可以显示 所有文件
4. Powerline
一个状态栏增强插件,彩色显示当前的插入、正常状态,可以显示文件进度、当前光标位置。如下:
其他de不一一介绍了下面是我的一张运行效果截图
相关文章推荐
- Vim as Python IDE on windows(用VIM打造一个Python编程环境)
- Vim as Python IDE on windows(用VIM打造一个Python编程环境)
- 将VIM打造成一个IDE
- 如何将 Vim 打造成一个成熟的 IDE
- 把vim打造成一个全能IDE
- 如何将Vim打造成一个成熟的IDE
- 把VIM打造成一个真正的IDE(1)
- 将Vim打造成一个成熟的IDE
- 如何将Vim打造成一个成熟的IDE
- 【linux】如何将Vim打造成一个成熟的IDE
- 把VIM打造成一个真正的IDE
- 把VIM打造成一个真正的IDE
- 把vim打造成一个真正的IDE
- 如何将Vim打造成一个成熟的IDE(1)
- 把VIM打造成一个真正的IDE
- 把VIM打造成一个真正的IDE(3)
- 把VIM打造成一个真正的IDE
- 将Vim打造成一个便捷好用的IDE之路
- 如何将Vim打造成一个成熟的IDE
- 把gedit打造成一个简单的IDE