zoukankan      html  css  js  c++  java
  • 源码安装Vim并配置YCM自动补全插件

    Compiling Vim from source is actually not that difficult. Here's what you should do:
    
    1. Install all the prerequisite libraries (including Git)
    a. For a Debian-like Linux distribution like Ubuntu, type
    sudo apt 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 liblua5.1-dev libperl-dev git
    On Ubuntu 16.04, liblua5.1-dev is the lua dev package name not lua5.1-dev.
    
    (If you know what languages you'll be using, feel free to leave out packages you won't need, e.g. Python2 python-dev or Ruby ruby-dev. This principle heavily applies to the whole page.)
    
    b. For Fedora 20, that would be the following:
    sudo yum install -y ruby ruby-devel lua lua-devel luajit 
    luajit-devel ctags git python python-devel 
    python3 python3-devel tcl-devel 
    perl perl-devel perl-ExtUtils-ParseXS 
    perl-ExtUtils-XSpp perl-ExtUtils-CBuilder 
    perl-ExtUtils-Embed
    This step is needed to rectify an issue with how Fedora 20 installs XSubPP:
    
    # symlink xsubpp (perl) from /usr/bin to the perl dir
    sudo ln -s /usr/bin/xsubpp /usr/share/perl5/ExtUtils/xsubpp 
    2. Remove vim if you have it already.
    sudo apt remove vim vim-runtime gvim
    On Ubuntu 12.04.2 you probably have to remove these packages as well:
    
    sudo apt remove vim-tiny vim-common vim-gui-common vim-nox
    3. Once everything is installed, getting the source is easy.
    Note: If you are using Python, your config directory might have a machine-specific name (e.g. config-3.5m-x86_64-linux-gnu). Check in /usr/lib/python[2/3/3.5] to find yours, and change the python-config-dir and/or python3-config-dir arguments accordingly.
    
    Note for Ubuntu users: You can only use Python 2 or Python 3. If you try to compile vim with both python-config-dir and python3-config-dir, YouCompleteMe will give you an error YouCompleteMe unavailable: requires Vim compiled with Python (2.6+ or 3.3+) support, when you start VIM.
    
    On Ubuntu 16.04, Python support was not working due to enabling both Python2 and Python3. Read answer by chirinosky for workaround.
    
    Add/remove the flags below to fit your setup. For example, you can leave out enable-luainterp if you don't plan on writing any Lua.
    
    Also, if you're not using vim 8.0, make sure to set the VIMRUNTIMEDIR variable correctly below (for instance, with vim 8.0a, use /usr/share/vim/vim80a). Keep in mind that some vim installations are located directly inside /usr/share/vim; adjust to fit your system:
    
    cd ~
    git clone https://github.com/vim/vim.git
    cd vim
    ./configure --with-features=huge 
                --enable-multibyte 
    	    --enable-rubyinterp=yes 
    	    --enable-pythoninterp=yes 
    	    --with-python-config-dir=/usr/lib/python2.7/config  # pay attention here check directory correct
    	    --enable-python3interp=yes 
    	    --with-python3-config-dir=/usr/lib/python3.5/config 
    	    --enable-perlinterp=yes 
    	    --enable-luainterp=yes 
                --enable-gui=gtk2 
                --enable-cscope 
    	   --prefix=/usr/local
    
    make VIMRUNTIMEDIR=/usr/local/share/vim/vim81
    On CentOS7(x86_64), change --with-python-config-dir=/usr/lib/python2.7/config to --with-python-config-dir=/lib64/python2.7/config.
    
    If you want to be able to easily uninstall vim use checkinstall.
    
    sudo apt install checkinstall
    cd ~/vim
    sudo checkinstall
    Otherwise, you can use make to install.
    
    cd ~/vim
    sudo make install
    Set vim as your default editor with update-alternatives.
    
    sudo update-alternatives --install /usr/bin/editor editor /usr/local/bin/vim 1
    sudo update-alternatives --set editor /usr/local/bin/vim
    sudo update-alternatives --install /usr/bin/vi vi /usr/local/bin/vim 1
    sudo update-alternatives --set vi /usr/local/bin/vim
    4. Double check that you are in fact running the new Vim binary by looking at
    the output of vim --version.
    
    If you don't get gvim working (on ubuntu 12.04.1 LTS), try changing --enable-gui=gtk2 to --enable-gui=gnome2
    
    If you have problems, double check that you configured using the correct Python config directory, as noted at the beginning of Step 3.
    
    These configure and make calls assume a Debian-like distro where Vim's runtime files directory is placed in /usr/share/vim/vim80/, which is not Vim's default. Same thing goes for --prefix=/usr in the configure call. Those values may need to be different with a Linux distro that is not based on Debian. In such a case, try to remove the --prefix variable in the configure call and the VIMRUNTIMEDIR in the make call (in other words, go with the defaults).
    
    If you get stuck, here's some other useful information on building Vim
    

      

     通过 Vundle 来安装 YCM(官方推荐

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

      将 Vundle 配置添加到 .vimrc 的头部

    set nocompatible              " be iMproved, required
    filetype off                  " required
    
    " set the runtime path to include Vundle and initialize
    set rtp+=~/.vim/bundle/Vundle.vim
    call vundle#begin()
    " alternatively, pass a path where Vundle should install plugins
    "call vundle#begin('~/some/path/here')
    
    " let Vundle manage Vundle, required
    Plugin 'VundleVim/Vundle.vim'
    
    " All of your Plugins must be added before the following line
    call vundle#end()            " required
    filetype plugin indent on    " required
    " To ignore plugin indent changes, instead use:
    "filetype plugin on
    "
    " Brief help
    " :PluginList       - lists configured plugins
    " :PluginInstall    - installs plugins; append `!` to update or just :PluginUpdate
    " :PluginSearch foo - searches for foo; append `!` to refresh local cache
    " :PluginClean      - confirms removal of unused plugins; append `!` to auto-approve removal
    "
    " see :h vundle for more details or wiki for FAQ
    " Put your non-Plugin stuff after this line
    

      对于 Vundle 可以根据自己的需要,适当调整添加的插件。

    在 vim 的配置文件 ~/.vimrc 中添加一行(在call vundle#begin() 和 call vundle#end() 之间)

    call vundle#begin()
    . . . 
    Plugin 'Valloric/YouCompleteMe’
    . . .
    call vundle#end()
    

      然后保存运行 vim 命令 :PluginInstall 安装

    配置好系统的 Python 环境以及 CMake
    以下是针对 Ubuntu 系统的环境配置,这里主要需要给系统安装配置好 cmake 以及 python,具体命令如下:
    
    # install CMake
    sudo apt-get install build-essential cmake
    # install Python
    sudo apt-get install python-dev python3-dev
    通过 Git Clone 下载 YouCompleteMe
    官网文档介绍,YouCompleteMe 是可以通过 Vundle 来安装的,但由于我的网络问题,所以我选择了直接从 GitHub 上下载好文件。方法如下:
    
    # make sure in dir ~/.vim/bundle
    cd ~/.vim/bundle
    # Download by git clone
    git clone https://github.com/Valloric/YouCompleteMe.git
    安装 YouCompleteMe
    接下来,进入最后的步骤,运行 .install.py 脚本安装语言支持。这里为了方便,我们选择安装所有语言支持,如果需要只安装特定的语言支持,可以参考官方文档。
    
    cd ~/.vim/bundle/YouCompleteMe
    ./install.py --all
    

      

     
  • 相关阅读:
    2018 ACM 网络选拔赛 徐州赛区
    2018 ACM 网络选拔赛 焦作赛区
    2018 ACM 网络选拔赛 沈阳赛区
    poj 2289 网络流 and 二分查找
    poj 2446 二分图最大匹配
    poj 1469 二分图最大匹配
    poj 3249 拓扑排序 and 动态规划
    poj 3687 拓扑排序
    poj 2585 拓扑排序
    poj 1094 拓扑排序
  • 原文地址:https://www.cnblogs.com/lcxiao/p/11380682.html
Copyright © 2011-2022 走看看