跟我学Ubuntu下将Vim 8.2打造成Python IDE

跟我学Ubuntu下将Vim 8.2打造成Python IDE

本文给大家介绍的是在Ubuntu 20.04 LTS系统下使用Vim配置Python开发环境的详细步骤,对初学者非常实用,有需要的小伙伴可以参考下。Vim是Linxu终端最方便的编辑器,有一定的通用性。下面就用Vim打造了属于自己的Python IDE,然后进行配置。

跟我学Ubuntu下将Vim 8.2打造成Python IDE

1、安装 Python

Ubuntu 20.04 LTS 下安装 Python 3.9。参考链接:https://www.linuxmi.com/ubuntu-20-04-python-3-9.html

2、安装 Vim

Ubuntu 20.04 LTS Desktop初始安装自带了vi,未带 vim 需要安装,已安装的略过。

Ubuntu及其衍生版

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo add-apt-repository ppa:jonathonf/vim
  2. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt-get update
  3. linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install vim

Arch Linux及其衍生版本

  1. linuxmi@linuxmi:~/www.linuxmi.com$ sudo pacman -S vim
  2. linuxmi@linuxmi:~/www.linuxmi.com$ flatpak install flathub org.vim.Vim

3、插件安装

标签导航(tagbar和ctags)、语法检测(syntastic)、文件搜索(ctrlp)、目录树导航(nerdtree)、状态栏美化(vim-powerline)、主题风格(solarized)、python相关(jedi-vim和python-mode)、括号匹配高亮(rainbow_parentheses)、可视化缩进(vim-indent-guides)。可谓应有尽有。

还有一个最重要的就是插件管理工具vundle。

安装vundle

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

跟我学Ubuntu下将Vim 8.2打造成Python IDE

安装好了vundle,需要在~/.vimrc配置文件中添加vundle支持。配置 vim

vim的配置是在用户主目录下的 ~/.vimrc 文件中完成的,如果没有的话,需要自己新建一下。

编辑 ~/.vimrc 文件,写入以下内容:

  1. filetype off
  2. set rtp+=~/.vim/bundle/vundle/
  3. call vundle#rc()
  4. if filereadable(expand(“~/.vimrc.bundles”😉)
  5.   source ~/.vimrc.bundles
  6. endif

为了防止配置文件太乱,我们可以通过~/.vimrc.bundles管理我们安装的插件。

.vimrc.bundles配置文件

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

  1. if &compatible
  2.   set nocompatible
  3. end
  4. filetype off
  5. set rtp+=~/.vim/bundle/vundle/
  6. call vundle#rc()
  7. ” Let Vundle manage Vundle
  8. Bundle ‘gmarik/vundle’
  9. ” Define bundles via Github repos
  10. ” 标签导航
  11. Bundle ‘majutsushi/tagbar’
  12. Bundle ‘vim-scripts/ctags.vim’
  13. ” 静态代码分析
  14. Bundle ‘scrooloose/syntastic’
  15. ” 文件搜索
  16. Bundle ‘kien/ctrlp.vim’
  17. ” 目录树导航
  18. Bundle “scrooloose/nerdtree”
  19. ” 美化状态栏
  20. Bundle “Lokaltog/vim-powerline”
  21. ” 主题风格
  22. Bundle “altercation/vim-colors-solarized”
  23. ” python自动补全
  24. Bundle ‘davidhalter/jedi-vim’
  25. Bundle “klen/python-mode”
  26. ” 括号匹配高亮
  27. Bundle ‘kien/rainbow_parentheses.vim’
  28. ” 可视化缩进
  29. Bundle ‘nathanaelkane/vim-indent-guides’
  30. if filereadable(expand(“~/.vimrc.bundles.local”😉)
  31.   source ~/.vimrc.bundles.local
  32. endif
  33. filetype on

如上述代码所示,我们通过Bundle指定各个插件在Github的地址,填写规则是”用户名/仓库名”。书写规则有三种,这里使用的是最常见的一种,其它书写方法这里就不说了。

安装插件

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

跟我学Ubuntu下将Vim 8.2打造成Python IDE

运行这个命令就开始自行安装我们之前指定的各个插件了。这个过程需要连网,下载并安装好各个插件之后会提示Done!

跟我学Ubuntu下将Vim 8.2打造成Python IDE

注意:由于tagbar依赖于ctags,所以我们还需要用指令安装ctags:

sudo apt-get install ctags

插件配置

1、基础配置

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

  1. filetype off
  2. set rtp+=~/.vim/bundle/vundle/
  3. call vundle#rc()
  4. if filereadable(expand(“~/.vimrc.bundles”😉)
  5.   source ~/.vimrc.bundles
  6. endif
  7. ” tagbar标签导航
  8. nmap <Leader>tb :TagbarToggle<CR>
  9. let g:tagbar_ctags_bin=‘/usr/bin/ctags’
  10. let g:tagbar_width=30
  11. autocmd BufReadPost *.cpp,*.c,*.h,*.hpp,*.cc,*.cxx call tagbar#autoopen()
  12. let g:jedi#auto_initialization = 1
  13. ” 主题 solarized
  14. let g:solarized_termtrans=1
  15. let g:solarized_contrast=“normal”
  16. let g:solarized_visibility=“normal”
  17. ” 配色方案
  18. set background=dark
  19. set t_Co=256
  20. colorscheme solarized
  21. ” 目录文件导航NERD-Tree
  22. ” nt 打开nerdree窗口,在左侧栏显示
  23. nmap <leader>nt :NERDTree<CR>
  24. let NERDTreeHighlightCursorline=1
  25. let NERDTreeIgnore=[ ‘.pyc$’, ‘.pyo$’, ‘.obj$’, ‘.o$’, ‘.so$’, ‘.egg$’, ‘^.git$’, ‘^.svn$’, ‘^.hg$’ ]
  26. let g:netrw_home=‘~/bak’
  27. “close vim if the only window left open is a NERDTree
  28. autocmd bufenter * if (winnr(“$”😉 == 1 && exists(“b:NERDTreeType”😉 && b:NERDTreeType == “primary”😉 | q | end
  29. ” ctrlp文件搜索
  30. ” 打开ctrlp搜索
  31. let g:ctrlp_map = ‘<leader>ff’
  32. let g:ctrlp_cmd = ‘CtrlP’
  33. ” 相当于mru功能,show recently opened files
  34. map <leader>fp :CtrlPMRU<CR>
  35. ” set wildignore+=*/tmp/*,*.so,*.swp,*.zip     ” MacOSX/Linux”
  36. let g:ctrlp_custom_ignore = {
  37.      ‘dir’:  ‘v[/].(git|hg|svn|rvm)$’,
  38.      ‘file’: ‘v.(exe|so|dll|zip|tar|tar.gz)$’,
  39.      }
  40. ” ‘link’: ‘SOME_BAD_SYMBOLIC_LINKS’,
  41. let g:ctrlp_working_path_mode=0
  42. let g:ctrlp_match_window_bottom=1
  43. let g:ctrlp_max_height=15
  44. let g:ctrlp_match_window_reversed=0
  45. let g:ctrlp_mruf_max=500
  46. let g:ctrlp_follow_symlinks=1
  47. ” vim-powerline美化状态
  48. ” let g😛owerline_symbols = ‘fancy’
  49. let g😛owerline_symbols = ‘unicode’
  50. ” 括号匹配高亮
  51. let g:rbpt_colorpairs = [
  52.      [‘brown’,       ‘RoyalBlue3’],
  53.      [‘Darkblue’,    ‘SeaGreen3’],
  54.      [‘darkgray’,    ‘DarkOrchid3’],
  55.      [‘darkgreen’,   ‘firebrick3’],
  56.      [‘darkcyan’,    ‘RoyalBlue3’],
  57.      [‘darkred’,     ‘SeaGreen3’],
  58.      [‘darkmagenta’, ‘DarkOrchid3’],
  59.      [‘brown’,       ‘firebrick3’],
  60.      [‘gray’,        ‘RoyalBlue3’],
  61.      [‘black’,       ‘SeaGreen3’],
  62.      [‘darkmagenta’, ‘DarkOrchid3’],
  63.      [‘Darkblue’,    ‘firebrick3’],
  64.      [‘darkgreen’,   ‘RoyalBlue3’],
  65.      [‘darkcyan’,    ‘SeaGreen3’],
  66.      [‘darkred’,     ‘DarkOrchid3’],
  67.      [‘red’,         ‘firebrick3’],
  68.      ]
  69. let g:rbpt_max = 40
  70. let g:rbpt_loadcmd_toggle = 0
  71. ” 可视化缩进
  72. let g:indent_guides_enable_on_vim_startup = 0  ” 默认关闭
  73. let g:indent_guides_guide_size            = 1  ” 指定对齐线的尺寸
  74. let g:indent_guides_start_level           = 2  ” 从第二层开始可视化显示缩进

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

  •  依次按键tb,就会调出标签导航;
  •  依次按键ff,就会调出文件搜索;
  •  依次按键nt,就会调出目录导航。

2、运行配置

这些基础配置已经完成,但是我想在Vim下像在IDE中一样,按一个键就运行当前编辑的Python文件,并查看运行结果,这可以做到吗?

如果出现vim插件报错Error detected while processing /root/.vim/bundle/python-mode/autoload/pymode/lint.vim

那是因为缺少pylama模块,安装即可如下图模块即可

跟我学Ubuntu下将Vim 8.2打造成Python IDE

没问题!

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

  1. ” 运行文件
  2. map <F5> :w<cr>:r!python3 %<cr>

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

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

这样我们就可以边编辑边查看运行结果了,见本文最上面截图。

运行完之后,依然可以在Vim的正常模式下按u,撤回这个输出操作,这样输出结果就撤回了,我们就可以继续编写自己的代码了。

总结

Vim很好用,很强大,用上了有种爱不释手的感觉。插件不用安装太多,适合自己的就行,根据自己的需求进行配置,编辑快捷键,真的很方便。

你也来配置一个属于自己的Vim,赶紧试试吧。

原创文章,作者:小 编,如若转载,请注明出处:https://www.mzbky.com/2574.html

发表评论

登录后才能评论