相信大家多次被推荐用vim作为编辑程序,知道vim编辑有很多优点,但是vim初始界面太原始了,安装了之后只能用来编辑,如果要运行就需要退出去运行,麻烦死了。回想用现成的IDE是多么的舒服。但是为了更好的学习,所以要对vim进行设置、安装一系列插件满足我们的需求。

前几天,发过一篇:

同样用Vim编辑器,为什么别人比你更高效?

1 写在前边的废话

多次推荐用vim作为编辑程序,作为经验丰富的AI程序员,我想一定有其道理,所以决定好好学习vim。知道vim编辑有很多优点,大家可以在网上搜,我认为最重要的一点就是看起来很牛啊~。但是vim初始界面太原始了,看得我想哭,安装了之后只能用来编辑,如果要运行就需要退出去,通过python test.py来运行,麻烦死了。回想用现成的IDE是多么的舒服。来来来,看一看界面有多简单。

vim写python 的vim怎么配置tab vim写python怎么样_g++ 安装python

切换normal模式和插入模式还好,但是全部代码靠手打,很容易出错,所以智能补全、运行和断点调试总不能没有。因此我们要对vim进行设置安装一系列插件满足我们的需求。

按照以前的经验在网上搜了一大堆的配置方法,总想着直接一下就配置好,直接拷贝粘贴,结果有的插件根本没有作用。想一键运行程序,结果根本不行,不能用,作为小白,完全不知道问题在哪,花了大概两三天都没配成功。按照以前的习惯,就放弃了,换了个别人弄的现成的叫Spacevim,这个也还挺有名的。于是按照网上搜的方法配置也超麻烦,快捷键也是自己不习惯的。于是又放弃了…… 这两天又重新安装了ubuntu、anaconda、tensorflow、vim,最后还是决定要再挑战一次,于是将自己安装过程分享。

本文默认大家理解了vim的normal模式和插入模式、基本的打开保存文件方法、github安装完成。

【AI白身境】Linux干活三板斧,shell、vim和git

下面主要内容包括:

1、vim安装及基本设置

2、插件安装及设置

3、快捷键设置

2 vim安装及基本设置

下面内容包括:

1、vim安装

2、查看对python支持

3、基本设置

2.1 vim安装

sudo apt-get install vim-gtk

2.2 查看对python支持

 vim --version | grep python

vim写python 的vim怎么配置tab vim写python怎么样_g++ 安装python_02

红色的+python3说明vim支持python3,-号表明不支持。如果没有加入Python支持,如果使用YouCompleteMe(补全插件)就会出现警告。

2.3 基本设置

vim ~/.vimrc

打开文件(没有的这个文件话,会自动新建),添加如下代码:(一定要看每一行的意思)

#基本设置

filetype on         "开启文件类型侦测

filetype indent on  "适应不同语言的智能缩进

syntax enable       "开启语法高亮功能

syntax on           "允许用定制语法高亮配色方案替换默认方案

"说明:以上这个我也不知道有没有用,因为看不出来

#显示设置

set laststatus=2    "总是显示状态栏

set ruler           "显示光标位置

set number          "显示行号

set cursorline      "高亮显示当前行

“说明:可以单个设置,保存后,再打开看效果,很有成就感

#编辑设置

set expandtab       "扩展制表符号为空格

set tabstop=4       "制表符占空格数

set softtabstop=4   "将连续数量的空格视为一个制表符

set shiftwidth=4    "自动缩进所使用的空白数

set textwidth=79    "编辑器每行字符数

set autoindent      "打开自动缩进

set wildmenu        "vim命令自动补全

按键ESC,进入normal模式下输入命令

:wq                 保存退出vim

vim ~/.vimrc    打开

基础设置后的界面如下:

vim写python 的vim怎么配置tab vim写python怎么样_vim_03

3 插件安装及设置

本小节内容包括:

1、安装Vundle(管理插件的插件)

2、安装Solarized(主题方案的插件)

3、安装vim-powerline(状态栏主题插件)

4、安装nerdcommenter(注释的插件)、auto-pairs(自动配对括号插件)

5、安装YouCompleteMe(自动补全插件)

6、安装nerdtree(树形目录插件)

7、安装indentLine(自动缩进指示)

3.1 安装Vundle(管理插件的插件)

用github下载Vundle:

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

Vundle是用来管理插件的插件,用github下载到

~/.vim/bundle/Vundle.vim文件夹下。

注:安装前需要提前安装github

在/home根目录下,通过(Ctrl+h)显示隐藏文件:

vim ~/.vimrc

打开,输入以下代码:

"****************************************************

set nocompatible "关闭兼容模式

filetype off      "文件类型侦测关闭

 "设置运行时路径,包括vundle和初始化

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

call vundle#begin()

"需要配置的插件都放在begin和end中间

Plugin 'VundleVim/Vundle.vim'

call vundle#end()

"****************************************************

说明:Plugin 后插件的名称如'VundleVim/Vundle.vim'(作者+插件名),可从https://github.com/VundleVim/Vundle.vim查看说明,以下插件可以同样方法查看。

按键ESC,进入normal模式下输入命令

:wq                     保存退出vim

vim ~/.vimrc      打开

:PluginInstall      安装插件(如下图界面)

:exit                 (看到左下角状态栏下Done)退出安装插件

:wq                    保存退出vim

vim ~/.vimrc     打开文件

vim写python 的vim怎么配置tab vim写python怎么样_vim_04

3.2 安装Solarized(主题方案的插件)

在.vimrc文件内添加如下红色框代码:

 Plugin 'vim-scripts/Solarized.git'    "主题方案插件

 set background=dark        

 colorscheme solarized                   "素雅

按键ESC,进入normal模式下输入命令

:wq                     保存退出vim

vim ~/.vimrc      打开

:PluginInstall      安装插件

:exit                 (看到左下角状态栏下Done)退出安装插件

:wq                    保存退出vim

vim ~/.vimrc     打开文件(打开之后的效果如下图)

vim写python 的vim怎么配置tab vim写python怎么样_python_05

3.3 安装vim-powerline(状态栏主题插件)

在.vimrc文件内添加如下代码,添加插件,设置插件

Plugin 'Lokaltog/vim-powerline'      "状态栏主题

let g:Powerline_colorscheme='solarized256'   "设置状态栏主题风格

如上操作,即可看见如下效果(插入模式为白蓝色,normal模式为绿灰)

vim写python 的vim怎么配置tab vim写python怎么样_g++ 安装python_06

vim写python 的vim怎么配置tab vim写python怎么样_状态栏_07

3.4 安装nerdcommenter)、auto-pairs

nerdcommenter是一款注释插件,auto-pairs是一款自动配对括号插件。

输入以下代码,如上操作,安装插件。

Plugin 'scrooloose/nerdcommenter'   "多行注释

Plugin 'jiangmiao/auto-pairs'          "括号、引号自动补全

不用设置,可以自己尝试一下功能。

vim写python 的vim怎么配置tab vim写python怎么样_vim_08

3.5 安装YouCompleteMe自动补全插件

1、安装CMake:

sudo apt-get install build-essential cmake

2、安装python-dev:

sudo apt-get install python-dev python3-dev

说明:linux发行版通常会把类库的头文件和相关的pkg-config分拆成一个单独的xxx-dev(el)包. (pkg=package)

python-dev或者其他*.devel软件一般都是C语言编写的一些头文件或cpp文件,往往是其他模块或这我们自己写的模块在编译时,需要依赖这些*-devel软件包。

安装使用YouCompleteMe库需要python-dev

1和2都是为了完成YouCompleteMe的安装

3、.vimrc文件添加插件YouCompleteMe:

输入以下代码:

Plugin 'Villoric/YouCompleteMe'

按如上操作安装插件

因为YouCompleteMe安装很慢,需要自己下载后再进行安装。

输入”:exit”,退出插件管理

4、先下载YouCompleteMe再配置安装

git clone https://github.com/Valloric/YouCompleteMe.git ~/.vim/bundle/YouCompleteMe

cd ~/.vim/bundle/YouCompleteMe

git submodule update --init –recursive

说明:

将YouCompleteMe下载到bundle文件下

文件定位到YouCompleteMe文件夹下

添加YouCompleteMe附加文件

这样下载完成后,再执行命令:PluginInstall安装(等待的时间其实也挺长的,多等会)

vim写python 的vim怎么配置tab vim写python怎么样_g++ 安装python_09

5、切换到YouCompleteMe目录, 利用Anaconda中的python3执行python3 ./install.py文件

如下图所示,默认状态下的python3为Anaconda的python3

vim写python 的vim怎么配置tab vim写python怎么样_g++ 安装python_10

如果需要vim自动补齐Anaconda自带环境下的site-packages则在.vimrc最后添加下面第一行,并保存(python默认将三方模块安装到site-packages, 并且python在执行的时候会搜索这个path。)

如果需要vim自动补齐Anaconda虚拟环境envs(tensorflow为其中的虚拟环境)下的site-packages则在.vimrc最后添加下面第二行,并保存

let g:ycm_python_binary_path = '/home/chenying/anaconda3/bin/python3'

let g:ycm_python_binary_path = '/home/chenying/anaconda3/envs/tensorflow/bin/python3'

3.6 安装nerdtree(树形目录插件)

.vimrc文件中添加如下代码安装、设置:

Plugin 'scrooloose/nerdtree' 

map :NERDTreeToggle

let NERDTreeWinSize=25

如上边的操作,安装完成插件。

基本操作:

快捷键F2打开关闭目录树。

通过键盘上下移动,按enter键可以展开目录、打开文件

ctrl+w 左右窗口(目录窗口和文件窗口)切换

:q   回车,关闭光标所在窗口

vim写python 的vim怎么配置tab vim写python怎么样_python_11

3.7 安装indentLine(自动缩进指示)

vimrc文件中添加如下代码安装、设置:

Plugin 'Yggdroot/indentLine'

let g:indentLine_char='┆'                   "缩进指示线符       

let g:indentLine_enabled = 1             "开启缩进指示

如上边的操作,安装完成插件。效果如下:

vim写python 的vim怎么配置tab vim写python怎么样_python_12

4 运行快捷键设置

输入以下代码就能F5一键运行程序啦~

vim写python 的vim怎么配置tab vim写python怎么样_python_13