1.下载源码

git clone git@github.com:vim/vim.git

2.编译

   1.安装依赖软件

     sudo apt-get install libncurses5-dev libgnome2-dev libgnomeui-dev \ libgtk2.0-dev libatk1.0-dev libbonoboui2-dev \ libcairo2-dev libx11-dev libxpm-dev libxt-dev python-dev \ python3-dev ruby-dev lua5.1 lua5.1-dev git

   2.删除已经安装的vim

     sudo apt-get remove vim-tiny vim-common vim-gui-common vim-nox

    Ubuntu要加上以下的

     sudo apt-get remove vim-tiny vim-common vim-gui-common vim-nox

3.配置vim,其中python路径要具体看,gui非ubuntu为gtk2,ubuntu用gtk2会有警告,看着闹心

    ./configure --with-features=huge \
            --enable-multibyte \
            --enable-rubyinterp \
            --enable-pythoninterp \
            --with-python-config-dir=/usr/lib/python2.7/config-x86_64-linux-gnu \
            --enable-python3interp \
            --with-python3-config-dir=/usr/lib/python3.4/config-3.4m-x86_64-linux-gnu \
            --enable-perlinterp \
            --enable-luainterp \
            --enable-gui=gtk2 --enable-cscope --prefix=/usr --enable-fontset

   4.编译,路径要看readme里的版本号

    make VIMRUNTIMEDIR=/usr/share/vim/vim80

   5.安装vim

    sudo apt-get install checkinstall

    sudo checkinstall

3.安装clang和gcc/g++等软件

    1.安装clang

     去http://apt.llvm.org/看地址,用以下命令安装

sudo wget -O - http://apt.llvm.org/llvm-snapshot.gpg.key|sudo apt-key add -

      sudo apt-add-repository "deb http://apt.llvm.org/trusty/ llvm-toolchain-trusty-3.9 main" #修改/etc/apt/sources.list.d/additional-repositories.list文件,添加这个地址

      sudo apt-get update

      sudo apt-get install clang-3.9 lldb-3.9 libclang-3.9-dev

     网站上也有完整安装包的命令

      sudo apt-get install clang-4.0 clang-4.0-doc libclang-common-4.0-dev libclang-4.0-dev libclang1-4.0 libclang1-4.0-dbg libllvm-4.0-ocaml-dev libllvm4.0 libllvm4.0-dbg lldb-4.0 llvm-4.0 llvm-4.0-dev llvm-4.0-doc llvm-4.0-examples llvm-4.0-runtime clang-modernize-4.0 clang-format-4.0 python-clang-4.0 lldb-4.0-dev liblldb-4.0-dbg

2.安装gcc/g++

# Install GCC 4.9

sudo add-apt-repository ppa:ubuntu-toolchain-r/test

sudo apt-get update

sudo apt-get install g++-4.9

# Prefer 4.9 to other versions

sudo update-alternatives --remove-all g++

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 50

4.安装universal-ctags

    1.下载

git clone https://github.com/universal-ctags/ctags.git

    2.安装autotools

sudo apt-get install autoconf automake pkg-config

3.配置,编译,安装

     ./autogen.sh

./configure --prefix=/usr

     make

     sudo checkinstall 

4.使用

     1. 默认配置文件是~/.ctags,目前如下,所以直接跑ctags就可以了

# Basic options
--sort=foldcase
--tag-relative=yes
--file-scope=yes
--fields=+l
--exclude=.git
--extra=+qf
--C-kinds=+pqxzL
--recurse=yes
#--langmap=c:.c.h

2. --list-kinds=c可以查看C语言支持的tag类型;--fields=+ 可以添加每个tag项里的拓展字段,说明更多信息

3. vim -t tags打开tag文件; ptag 标签项名打开窗口预览; pclose关闭; :tags显示当前tag栈; :tag跳转到tag栈中下一个项; CTRL+]跳转到定义处; CTRL+t跳转到tag栈中上一个项,gd或gD跳转到局部变量定义处

4. 其他跳转指令: CTRL + o跳转到上一处跳转点; CTRL+I跳转到下一处跳转点; :jumps列出跳转栈; g;跳转到上一个修改点; g,跳转到下一个修改点; :changs列出修改栈

     

5.v,V,CTRL+v选择相应的光标所经过的区域,:disp命令显示寄存器内容;寄存器名字前边都有","%是当前文件名,"*是系统剪切板的数据,“+是选中的数据;插入模式下CTRL+R后接寄存器名称,即可粘贴内容;命令模式中输入CTRL-R";CTRL+^会切换到上一个文件,即"#寄存器的内容

6.移动命令w,e,ge,b分别移动到下一个单词头,当前单词尾,上一个单词尾,上一个单词头。大写的W,E,gE,B则认为空白字符是分隔单词的,而非iskeyword定义的单词字符

7. 正常模式CTRL+R是redo,和U相反;/CTRL+R CTRL+W会搜索当前光标所在的单词,CTRL+R CTRL + W也可以在命令模式下和其他的命令搭配,比如ptag;[[为上一个函数体,]]为下一个函数体;diw或daw会剪切括号内或包含括号的单词

新环境配置与使用Vim指南的更多相关文章

  1. OpenCV On Android环境配置最新&最全指南(Android Studio篇)

    本文是从本人简书上搬运而来,属本人原创,如有转载,请注明出处:http://www.jianshu.com/p/6e16c0429044 简介 本文是<OpenCV On Android环境配置 ...

  2. OpenCV On Android环境配置最新&最全指南(Eclipse篇)

    简介 本教程是经过本人多次踩坑,并参考网上众多OpenCV On Android的配置教程总结而来,尽希望能帮助学习移动图像处理的朋友们少走弯路.这也是本人第一次在简书上发布文章,如有不足,希望各位d ...

  3. wordpress nginx详细环境配置安装命令和相关问题解决

    很详细的有关WordPress和nginx的环境配置安装操作步骤 指南,适合新手一步步按照命令操作安装WordPress并运行在生产环境中. 操作步骤转载自: Heap Stack blog(ping ...

  4. Windows下OpenFOAM开发及使用环境配置指南 (2)【转载】

    转载自:http://openfoam.blog.sohu.com/158751915.html *************************************************** ...

  5. 第6天【egrep、bash环境配置及脚本、vim编辑器】

    bash环境配置及脚本(02)_recv bash环境配置及脚本(02)_recv bash环境配置文件: 按生效范围划分,存在两类: 全局配置: /etc/profile /etc/bashrc 个 ...

  6. 【vim环境配置】解决ubuntu上 由YouCompleteMe插件配置不当引起的 自动补全失效的问题

    背景: 由于不可抗拒的原因,学习环境由之前centos的一台机器上,变成了ubuntu的一台机器上.因此,需要在新的ubuntu的机器上再配置一次vim环境.算起来这已经是第三次配置vim环境了(ma ...

  7. 【vim环境配置】详细实录

    [写在前面] 以下的所有内容主要参照: https://github.com/yangyangwithgnu/use_vim_as_ide . 原blog作者写的非常用心,建议大家都去看看.(个人觉得 ...

  8. 【原创】LoadRunner Java Vuser开发环境配置指南

    1 编写目的 本文主要介绍Java运行环境的配置,同时通过编写HelloWorld程序,讲解在LoadRunner下如何开发简单的Java Vuser脚本.关于Java语言的深入学习,大家可以参考其他 ...

  9. myeclipse 环境配置优化,不断跟新整理中

    myeclipse 环境配置,不断跟新整理中1.General --->Workspace ---> UTF-8 工作环境编码2.General --->Editors --> ...

随机推荐

  1. 【BZOJ】【1269】【AHOI2006】文本编辑器editor

    Splay Splay序列维护的模板题了……为了便于处理边界情况,我们可以先插入两个空格当作最左端和最右端,然后……其实本题主要考察的就是Build.splay和Findkth这三个操作,我们可以实现 ...

  2. android解析XML总结(SAX、Pull、Dom三种方式) <转载>

    android解析XML总结(SAX.Pull.Dom三种方式) http://www.cnblogs.com/JerryWang1991/archive/2012/02/24/2365507.htm ...

  3. 理解Linux系统负荷[转]

    一.查看系统负荷 在Linux系统中,我们一般使用uptime命令查看(w命令和top命令也行).(另外,它们在苹果公司的Mac电脑上也适用.)   二.一个类比 我们不妨把这个CPU想象成一座大桥, ...

  4. CSS绝对定位和相对定位 position: absolute/relative

    absolute(绝对定位): 会把对象拖离HTML文档流,并通过top, left, right, bottom确定对象的具体位置,这个四个位置属性至少要设置一个,否则无法激活对象的absolute ...

  5. mysql关联修改SQL及long与datetime类型相互转换

    1.关联修改 #解决思路 UPDATE tb1,tb2 SET tb1.address=tb2.address WHERE tb1.name=tb2.name UPDATE car c,tmpcolo ...

  6. win8系统输入法设置

    Windows 8系统自带微软拼音简捷输入法,无论是在Windows的开始屏幕新界面中还是Windows传统桌面里,按Shift键或者直接点击屏幕上的"中/英"标识即可切换中英文输 ...

  7. 使用Subversion进行版本控制

    使用Subversion进行版本控制 针对 Subversion 1.4(根据r2866编译) Ben Collins-Sussman Brian W. Fitzpatrick C. Michael  ...

  8. Linux信号处理2

    引言 先看以下两个信号量: 13)SIGPIPE     当管道读端关闭,再往管道写东西,会发出SIGPIPE信号 17)SIGCHLD   子进程退出会向父进程发出SIGCHLD信号,系统默认处理是 ...

  9. JS面向(基于)对象编程--构造方法(函数)

    构造函数(方法)介绍 什么是构造函数呢?在回答这个问题之前,我们来看一个需求:前面我们在创建人类的对象时,是先把一个对象创建好后,再给他的年龄和姓名属性赋值,如果现在我要求,在创建人类的对象时,就直接 ...

  10. Item2 + zsh

    转自 http://11ten.gitcafe.io/book-a/iTerm2/index.html iTerm2的主要特点: 开源免费. 兼容性比默认Terminal更好.对于经常要远程使用的情况 ...