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

作者 | 陈颖/言有三

编辑 | 陈颖/言有三

1 写在前边的废话

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

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

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

本文默认大家理解了vim的normal模式和插入模式、基本的打开保存文件方法、github安装完成。如果不知道,请看言有三老师公众号《AI白身境》的文章。

【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

红色的+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    打开

基础设置后的界面如下:

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     打开文件

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     打开文件(打开之后的效果如下图)

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

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

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

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

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

3.4 安装nerdcommenter)、auto-pairs

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

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

Plugin 'scrooloose/nerdcommenter'   "多行注释

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

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

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安装(等待的时间其实也挺长的,多等会)

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

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

如果需要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   回车,关闭光标所在窗口

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

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

Plugin 'Yggdroot/indentLine'

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

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

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

4 运行快捷键设置

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

最后发一个通知,2019年有三AI培养计划出炉了,一个季度一期噢。

2019年有三AI“春季”划,给我一个荣耀,还你一生荣耀

转载文章请后台联系

侵权必究

更多请关注知乎专栏《有三AI学院》

往期精选

  • 【总结】这半年,有三AI都做了什么

想要变身”AI专家“,就戳戳手指关注我们吧

别忘了点“好看”支持作者噢  ???

ubuntu vim保存退出命令_【学员分享】程序员效率神器,最常用VIM插件安装大全...相关推荐

  1. linux vim保存退出命令

    linux vim保存退出命令:先按ESC进入Command模式,然后输入":wq",回车就可以保存并退出了. vi的其他保存/退出命令: :w 保存: :w filename 另 ...

  2. pitstop插件使用说明_【学员分享】程序员效率神器,最常用VIM插件安装大全

    相信大家多次被推荐用vim作为编辑程序,知道vim编辑有很多优点,但是vim初始界面太原始了,安装了之后只能用来编辑,如果要运行就需要退出去运行,麻烦死了.回想用现成的IDE是多么的舒服.但是为了更好 ...

  3. 【学员分享】程序员效率神器,最常用VIM插件安装大全

    相信大家多次被推荐用vim作为编辑程序,知道vim编辑有很多优点,但是vim初始界面太原始了,安装了之后只能用来编辑,如果要运行就需要退出去运行,麻烦死了.回想用现成的IDE是多么的舒服.但是为了更好 ...

  4. 广州蓝景分享—程序员必备的3个JavaScript插件,让你的视频更实用

    今天,广州蓝景小编跟大家分享一些干货,程序员必备的3个JavaScript插件,让你的视频更实用. 下面就从这篇技术文章开始,我倾向于利用以图形交换格式 (GIF) 格式编码的屏幕截图,以尽可能减少额 ...

  5. ubuntu vim保存退出命令_vim极为详细的教程(一)基本操作

    vim的总体介绍 我以前是坚定的vim党,但后来用了一次vscode,便再也出不来了.vscode虽然功能强大,但本质上任然是个编译器,它强大的功能来自于对各种经典工具的灵活调用,vscode开发C+ ...

  6. vi和vim保存退出命令

    vi: :w! 强制保存,不推出vi :wq 保存文件并退出vi :wq! 强制保存文件,并退出vi :q 不保存文件,退出vi :q! 不保存文件,强制退出vi vim: :q!不保存即退出(的缩写 ...

  7. linux不保存退出命令_面试提问说出16个linux命令,能凑齐不!高频22个Linux命令在这里...

    现在几乎所有的互联网的应用都部署在Linux的服务器上面了,Linux生态丰富.环境稳定,最重要的是,相对于Windows,Linux是免费的,要想,大型互联网公司都有几百万台服务器,要是用Windo ...

  8. 分享程序员提升自身能力的7个实用网站

    从我一踏入软件开发这一行业开始,我就知道开发者学习和成长所需的一切资源都可以在网上找到,我们要做的就是学会如何轻松访问这些资源. 软件开发是一项充满挑战的职业,需要不断学习才能在同行里面保持领先,所以 ...

  9. Linux中vim编辑器保存退出命令

    Linux中vim编辑器保存退出命令 进入vim编辑器,输入 i 进入编辑状态 按esc退出编辑 常用的保存退出命令如下: 1.:w(保存编辑的文件内容,但不退出vim编辑器) 2.:w!(强制写文件 ...

最新文章

  1. Android文件系统深入剖析
  2. 两款轻量级服务器 Http-server SimpleHTTPServer
  3. 逆袭!? 期待下一个“BCH”出现
  4. Java通过Pattern类使用正则表达式
  5. Bootstrap插件
  6. 360安全浏览器兼容模式怎么设置_测试新手一定要知道:最实用的Web兼容性测试经验都在这...
  7. 浅析STL allocator
  8. ORM是什么?如何理解ORM?
  9. 曾经的独角兽 Docker,如今资金紧张
  10. php中使用curl采集小说网,PHP:通过curl实现采集网站内容
  11. Angular 学习笔记 Material
  12. 8. 大型网站架构演化
  13. DXperience-6.2.4 破解
  14. funcode seafish
  15. 离散数学及其应用 第一章习题
  16. 快捷键布线报错_Altium Designer 常用快捷键总结(PCB布线)
  17. Android 开发佳站3
  18. 用VS2010打开VS2013、VS2015、VS2017等高版本项目
  19. 诸葛亮司马懿大战房市
  20. C语言——矩阵计算(转置、加法、减法、数乘、乘法)

热门文章

  1. 三八妇女节PSD分层海报,来啦!
  2. UI设计灵感|如何简易花繁多的数据?功能仪表盘界面设计来看
  3. 设计灵感|电商版面首页界面设计案例
  4. galaxy+tab+查看android+版本,三星第一代Galaxy Tab将更新至安卓4.1.2版本
  5. matlab 数组名含变量,求助:如何将带有符号变量的运算结果储存到数组中
  6. 时间序列多步预测_使用LSTM深度学习模型进行温度的时间序列单步和多步预测...
  7. Redhat或者Centos手动安装Vim,
  8. APIC ID 的通用七级解释与概念性六级拓扑:APICID
  9. Linux内核内存管理(3):kmemcheck介绍
  10. 遍历进程链表,打印pcb相关字段的内核模块