vim

  • 安装

          最小化安装Linux,那将会默认安装vi,以下:前端

          

 

         仅此还不够,须要安装增强版,以下:python

         


  •  插件

            只针对C系语言开发的环境,其余暂不记录。git

1、插件管理工具: vundle github

     1>、简介vim

         vundle是vim bundle的简称,是vim的插件管理器,能够配置、安装、卸载、更新vim插件。后端

     2>、安装架构

         git clone https://github.com/VundleVim/Vundle.vim.git      ~/.vim/bundle/Vundle.vim框架

     3>、配置模块化

            (1) .vimrc文件工具

                 rc即run command的简写,一般表明程序启动阶段运行命令,.vimrc文件就是vim启动阶段运行的一个脚本。 

           (2) .vimrc.bundles文件

                本身建立的插件配置文件,须要安装或卸载的插件都在这里配置,放置于HOME目录,可是须要在.vimrc中进行以下配置:

                

           (3). 参考vundle的github说明配置.vimrc.bundles,注意vundle插件是必须包含的,插件列表也要放置在特定位置。

    4>、使用

           (1).安装插件

                

                按照格式:Plugin   插件路径  填写好须要安装的插件,而后sq,再执行vim命令:PluginInstall

                等待,直到提示:Done!表示所有插件安装成功,此时能够退出!

               注意:插件路径有多种方式,好比git、本地路径、URL等,具体可参考官网。

           (2).卸载插件

                i)、注释掉.vimrc.bundle中配置的插件;

                ii)、执行:PluginClean

           (3).更新插件

                PluginUpdate或者PluginInstall!(最后是感叹号)

           (4).搜索插件

                PluginSearch

           (5).列出插件

                PluginList

 

2、树形目录 (NERD Tree)

       1>、安装

              使用插件管理工具vundle安装;

       2>、使用

               在.vimrc中加入一行:map <F5> :NERDTreeToggle<CR> 

               这样,F5即是控制NERD Tree开启关闭的快捷键了,F5也能够修改成其余键。

 

3、代码补全--YouCompleteMe

      1>、说明

             相似Visual studio的Visual AssistX的插件,安装和配置的步骤稍多。

      2>、安装

             (1).安装条件

                  vim: 必须至少是7.4.1578

                  python: 至少支持2或者3的一种 (方法: 在vim输入命令 :echo has('python') || has('python3') 若是结果是1,则OK)

             (2).安装

                   用vundle安装YCM.

             (3).安装libclang

                   libclang是clang编译器的库。

             (4).编译ycm_core库

                  ycm_core库是YCM用来快速补全的C++引擎所须要的。

      3>、关于YCM

              (1).完成引擎

                   YCM有多个完成引擎,其中一个是基于标识符的完成引擎,该引擎将会搜集当前文件和所访问的其余文件中的标识符,当键入字词时,将会有搜索标识符集;UltiSnips引擎用于完成文件路径。

              (2).语义引擎

                   基于libclang的C家族语义完成器,基于Jedi的Python语义完成器,等等。

              YCM自动检测哪一个引擎最适合当前场景,有时会采用多个引擎的结果,合并起来并呈现给使用者。

             (3).C/S架构

                   YCM的server端随着vim的开启及关闭自动启动和中止。

      4>、使用

            TAB

            Shift-TAB

            Ctrl+Space

 

  • 附加知识

          一、LLVM

                LLVM是Low Level Virtual Machine的简写,是一个可重用、模块化的编译框架,使用LLVM能够定制一个编译工具。框架以下图所示↓↓↓↓↓↓↓

                

                 

                若是要定制一个编译工具,则只须要修改前端和后端,由于优化器是通用的。

 

          2.Clang

             Clang是LLVM框架的前端之一,参考其官网介绍可知,是一个基于LLVM的C系语言编译器的前端。

相关文章
相关标签/搜索