Linux下搭建基于python的VIM

找了好久,有效,留存。

1、安装vundle:git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle

2、.vimrc配置文件:~/.vimrc是VIM的配置文件,如果这个配置文件不存在,我们可以自行创建。安装好了vundle,需要在~/.vimrc配置文件中添加vundle支持。所以,在~/.vimrc中添加代码如下:

filetype off

set rtp+=~/.vim/bundle/vundle/

call vundle#rc()

if filereadable(expand("~/.vimrc.bundles"))

  source ~/.vimrc.bundles

endif

3、.vimrc.bundles配置文件

首先创建文件~/.vimrc.bundles,然后添加代码如下:

if &compatible

  set nocompatible

end

filetype off

set rtp+=~/.vim/bundle/vundle/

call vundle#rc()

" Let Vundle manage Vundle

Bundle 'gmarik/vundle'

" Define bundles via Github repos

" 标签导航

Bundle 'majutsushi/tagbar'

Bundle 'vim-scripts/ctags.vim'

" 静态代码分析

Bundle 'scrooloose/syntastic'

" 文件搜索

Bundle 'kien/ctrlp.vim'

" 目录树导航

Bundle "scrooloose/nerdtree"

" 美化状态栏

Bundle "Lokaltog/vim-powerline"

" 主题风格

Bundle "altercation/vim-colors-solarized"

" python自动补全

Bundle 'davidhalter/jedi-vim'

Bundle "klen/python-mode"

" 括号匹配高亮

Bundle 'kien/rainbow_parentheses.vim'

" 可视化缩进

Bundle 'nathanaelkane/vim-indent-guides'

if filereadable(expand("~/.vimrc.bundles.local"))

  source ~/.vimrc.bundles.local

endif

filetype on

4、安装插件

我们已经指定好了各个插件的路径,接下里就是安装各个插件了。在shell中输入vim,进入命令行模式输入BundleInstall。

5、tagbar依赖于ctags,所以我们还需要用指令安装ctags :sudo apt-get install ctags

6、插件配置

已经安装好了各个插件,接下里就可以直接用了吗?答案是否定的,我们还需要继续对自己安装的插件进行配置。配置这里也很简单,下面是我的配置,编写~/.vimrc:

filetype off

set rtp+=~/.vim/bundle/vundle/

call vundle#rc()

if filereadable(expand("~/.vimrc.bundles"))

  source ~/.vimrc.bundles

endif

" tagbar标签导航

nmap tb :TagbarToggle

let g:tagbar_ctags_bin='/usr/bin/ctags'

let g:tagbar_width=30

autocmd BufReadPost *.cpp,*.c,*.h,*.hpp,*.cc,*.cxx call tagbar#autoopen()

let g:jedi#auto_initialization = 1

" 主题 solarized

let g:solarized_termtrans=1

let g:solarized_contrast="normal"

let g:solarized_visibility="normal"

" 配色方案

set background=dark

set t_Co=256

colorscheme solarized

" 目录文件导航NERD-Tree

" \nt 打开nerdree窗口,在左侧栏显示

nmap nt :NERDTree

let NERDTreeHighlightCursorline=1

let NERDTreeIgnore=[ '\.pyc$', '\.pyo$', '\.obj$', '\.o$', '\.so$', '\.egg$', '^\.git$', '^\.svn$', '^\.hg$' ]

let g:netrw_home='~/bak'

"close vim if the only window left open is a NERDTree

autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") && b:NERDTreeType == "primary") | q | end

" ctrlp文件搜索

" 打开ctrlp搜索

let g:ctrlp_map = 'ff'

let g:ctrlp_cmd = 'CtrlP'

" 相当于mru功能,show recently opened files

map fp :CtrlPMRU

" set wildignore+=*/tmp/*,*.so,*.swp,*.zip     " MacOSX/Linux"

let g:ctrlp_custom_ignore = {

    \ 'dir':  '\v[\/]\.(git|hg|svn|rvm)$',

    \ 'file': '\v\.(exe|so|dll|zip|tar|tar.gz)$',

    \ }

"\ 'link': 'SOME_BAD_SYMBOLIC_LINKS',

let g:ctrlp_working_path_mode=0

let g:ctrlp_match_window_bottom=1

let g:ctrlp_max_height=15

let g:ctrlp_match_window_reversed=0

let g:ctrlp_mruf_max=500

let g:ctrlp_follow_symlinks=1

" vim-powerline美化状态

" let g:Powerline_symbols = 'fancy'

let g:Powerline_symbols = 'unicode'

" 括号匹配高亮

let g:rbpt_colorpairs = [

    \ ['brown',       'RoyalBlue3'],

    \ ['Darkblue',    'SeaGreen3'],

    \ ['darkgray',    'DarkOrchid3'],

    \ ['darkgreen',   'firebrick3'],

    \ ['darkcyan',    'RoyalBlue3'],

    \ ['darkred',     'SeaGreen3'],

    \ ['darkmagenta', 'DarkOrchid3'],

    \ ['brown',       'firebrick3'],

    \ ['gray',        'RoyalBlue3'],

    \ ['black',       'SeaGreen3'],

    \ ['darkmagenta', 'DarkOrchid3'],

    \ ['Darkblue',    'firebrick3'],

    \ ['darkgreen',   'RoyalBlue3'],

    \ ['darkcyan',    'SeaGreen3'],

    \ ['darkred',     'DarkOrchid3'],

    \ ['red',         'firebrick3'],

    \ ]

let g:rbpt_max = 40

let g:rbpt_loadcmd_toggle = 0

" 可视化缩进

let g:indent_guides_enable_on_vim_startup = 0  " 默认关闭

let g:indent_guides_guide_size            = 1  " 指定对齐线的尺寸

let g:indent_guides_start_level           = 2  " 从第二层开始可视化显示缩进

你可以根据自己的喜好设置快捷键,是按键\,根据我的配置。在VIM的正常模式下:

依次按键\tb,就会调出标签导航;

依次按键\ff,就会调出文件搜索;

依次按键\nt,就会调出目录导航。

7、在~/.vimrc最后一行追击代码如下:

" 运行文件

map :w:r!python3 %

上述代码的意思就是,在VIM的正常模式下,按F5就会保存文件并使用python3运行当前文件,并将结果输出到当前界面。

注意,:!python3表示运行系统命令python3,如果你没有安装python2和python3共存,此处只写python即可。

你可能感兴趣的:(Linux下搭建基于python的VIM)