将vi打造成IDE
一.环境
发行版:Ubuntu 18.04 LTS
代号:bionic
内核版本:4.15.0-33-generic
二.步骤
2.1 准备工作
sudo apt-get install python3-pip clang cmake python2.7-dev -y
pip3 install future frozendict
2.2 获取vundle
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
(将vunble安装在~/.vim/bundle目录下)
2.3 创建一个配置文件~/.vundle.vimrc,如果直接将配置加入~/.vimrc,那么会导致~/.vimrc太臃肿
jello:~$ cat .vundle.vimrc
set nocompatible "必须的,去除vi一致性
filetype off "必须的,关闭文件类型检测
set rtp+=~/.vim/bundle/Vundle.vim "设置vundle的运行时路径并进行初始化
call vundle#begin() "插件开始位置
Plugin 'VundleVim/Vundle.vim' "使得vundle自己管理自己
Plugin 'junegunn/fzf' "文件搜索
Plugin 'rking/ag.vim' "批量搜索代码文件,模糊匹配,正则表达式
Plugin 'w0rp/ale' "代码对齐(只支持vim8.0以后的版本)
Plugin 'easymotion/vim-easymotion' "快速跳转
Plugin 'mhinz/vim-signify' "版本控制(git,svn)
Plugin 'majutsushi/tagbar' "源代码符号的结构化视图
Plugin 'scrooloose/nerdtree' "目录树
Plugin 'vim-scripts/cscope.vim' "自动创建cscope数据库和连接存在的合适的数据库
Plugin 'vim-scripts/autoload_cscope.vim' "自动搜索和加载cscope.out
Plugin 'vim-scripts/a.vim' "源文件和头文件之间的快速切换
Plugin 'Valloric/YouCompleteMe' "自动补全工具(c,c++,c#)
Plugin 'vim-scripts/AutoTag' "当保存文件时自动更新tags文件
Plugin 'erig0/cscope_dynamic' "自动动态更新cscope
call vundle#end() "插件结束位置
filetype plugin indent on "必须的,文件检测功能打开,加载文件类型相关的插件,为不同文件类型选择合适的缩进方式
2.4 编辑~/.vimrc,以便自动加载.vundle.vimrc
jello:~$ cat .vimrc
if filereadable(".vundle.vimrc")
source ~/.vundle.vimrc
endif
2.5 启动vim,在命令模式下输入以下命令以便安装插件
:PluginInstall
2.6 设置tab键为4个空格
请看这里
2.7 关键字颜色改成绿色并且非粗体,加入以下一行到~/.vimrc即可
hi Identifier ctermfg =green cterm =none
2.8 注释颜色改成蓝色,加入以下一行到~/.vimrc即可
hi Comment ctermfg =blue
2.9 查看启动各插件消耗的时间
vim --startuptime timeCost.txt timeCost.txt
2.10 改变窗口配色方案,往.vimrc中加入以下语句即可
:colorscheme desert
2.11 启动vi后提示The ycmd server SHUT DOWN (restart with :YcmRestartServer)该如何处理
请查看这里
将vi打造成IDE的更多相关文章
- 用 for/in 在 Java 5.0 中增强循环
这个方便的构造提供了什么?什么时候适用于代码? Brett McLaughlin (brett@newInstance.com), 作者/编辑, O'Reilly Media, Inc. 简介: fo ...
- [Mac A]为什么国外程序员爱用 Mac?
from http://www.vpsee.com/2009/06/why-programmers-love-mac/ Mac 在国外很受欢迎,尤其是在 设计/web开发/IT 人员圈子里.普通用户喜 ...
- 【转】windows和linux中搭建python集成开发环境IDE
本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...
- 10 款最好的 Python IDE
Python 非常易学,强大的编程语言.Python 包括高效高级的数据结构,提供简单且高效的面向对象编程. Python 的学习过程少不了 IDE 或者代码编辑器,或者集成的开发编辑器(IDE).这 ...
- 将Vim改造为强大的IDE—Vim集成Ctags/Taglist/Cscope/Winmanager/NERDTree/OmniCppComplete(有图有真相)(转)
1.安装Vim和Vim基本插件首先安装好Vim和Vim的基本插件.这些使用apt-get安装即可:lingd@ubuntu:~/arm$sudo apt-get install vim vim-scr ...
- 【转】手把手教你把Vim改装成一个IDE编程环境(图文)
手把手教你把Vim改装成一个IDE编程环境(图文) By: 吴垠 Date: 2007-09-07 Version: 0.5 Email: lazy.fox.wu#gmail.com Homepage ...
- VI经典插件ctags
Vi经典插件ctags(转) (为了提高工作效率,必须学会使用一些工具) . 查看 key 相关信息说明的命令 :help keycodes ============================= ...
- 最好的Java IDE之争:Eclipse PK IntelliJ IDEA
话说,好马配好鞍,一个好的工匠,必定要有一套好的工具才能打造出最好的工艺给大家.之前,Plumbr团队里的所有成员都使用Eclipse编辑器,而如今,大家都成为IntelliJ IDEA用户.那么,到 ...
- ADF_Starting系列1_JDeveloper IDE开发环境简介
2013-05-01 Created By BaoXinjian
随机推荐
- ubuntu14.04 LTS 搜狗输入法安装和不能输入中文的解决方法
搜狗输入法安装 1.首先通过Ubuntu软件中心,需要安装:fcitx https://pinyin.sogou.com/linux/help.php 2.然后再安装搜狗输入法包 https://pi ...
- RabbitMQ的安装和使用Python连接RabbitMQ
绪论 这里的环境使用的是Mac OS X系统,所有的配置和使用都是基于Mac OS X 和Python 2.7 以及对应的pika库的. RabbitMQ的安装和配置 安装部分 #brew insta ...
- c# WinForm 边框阴影窗体
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- js里面return 和 return false的区别
js里面return 和 return false的区别 1.都可以终止执行当前方法: 2.如果方法A调用了方法B,则在方法A中使用return可以终止程序,但是在方法B中使用return则终止执行B ...
- 微信小程序 --- 模板的使用
由于微信小程序文件大小的限制,可以把一些公用的文件 单离出来形成模板,从而被各个模板引用: 定义模板第一种方式: 新建一个目录: 写入: <text>hello world</tex ...
- Jenkins持续集成【简介】
1.1 目前主流网站部署的流程 目前主流网站部署方法,通过Hudson/Jenkins工具平台实现全自动部署+测试,是一个可扩展的持续集成引擎,是一个开源软件项目,旨在提供一个开放易用的软件平台 ...
- FZU 1064 教授的测试(卡特兰数,递归)
Problem 1064 教授的测试 Accept: 149 Submit: 364 Time Limit: 1000 mSec Memory Limit : 32768 KB Problem Des ...
- acceptorThreadCount
Apache Tomcat 7 Configuration Reference (7.0.92) - The HTTP Connector https://tomcat.apache.org/tomc ...
- 洛谷P3939 数颜色 二分查找
正解:二分 解题报告: 传送门! 话说其实我开始看到这题想到的是分块,,, 但是显然不用这么复杂,,,因为仔细看下这题,会发现每次只改变相邻的兔子的位置 所以开个vector(或者开个数组也成QwQ( ...
- pouch架构源码分析
// daemon/daemon.go 1.func NewDaemon(cfg config.Config) *Daemon 调用containerStore, err := meta.NewSto ...