zoukankan      html  css  js  c++  java
  • ycmd for emacs 代码自动补全

    YCMD FOR EMACS

    安装

     

    1.1 下载

    去ycmd 的github 地址 clone 或者下载。 一般使用git clone 会方便一些。如下:

    git clone https://github.com/Valloric/ycmd.git
    Cloning into 'ycmd'...
    remote: Enumerating objects: 11, done.
    remote: Counting objects: 100% (11/11), done.
    remote: Compressing objects: 100% (10/10), done.
    remote: Total 24196 (delta 1), reused 2 (delta 1), pack-reused 24185
    Receiving objects: 100% (24196/24196), 18.39 MiB | 52.00 KiB/s, done.
    Resolving deltas: 100% (15367/15367), done.
    

    1.2 安装相关依赖

    • 最基本的操作系统依赖包

      build-essential cmake python3-dev
      
    • 其他语言相关包 如:

      语言
      GO golang-go
      JavaScript | TypeScript npm
      C# mono-devel/mono
      Rust Cargo and rustc with rustup
      Java openjdk-8-jre

    1.3 更新submodules

    所谓的submodules,实际上是更新ycmd/third_party 中的各种语言的文档。

    cd ycmd
    git submodule update --init --recursive
    

    过程有点儿漫长。先小睡一会儿。

    1.4 安装

     
    # 查看可用选项
    python3 build.py --help
    # 将已支持的语言全部安装。
    python3 build.py --all
    

    配置

    配置内容如下:

     ;;;;;;;;;;;;;;;;;;;;;;;company;;;;;;;;;;;;;;;;;;
    (add-hook 'after-init-hook #'global-company-mode)
    ;;;;;;;;;;;;;;;;;;;;;;;;;;;flycheck;;;;;;;;;;;;;;;;
    (add-hook 'after-init-hook #'global-flycheck-mode)
    ;;;;;;;;;;;;;;;;;;;emacs-ycmd;;;;;;;;;;;;;;;;;;;
    (require 'ycmd)
    (add-hook 'after-init-hook #'global-ycmd-mode)
    (ycmd-force-semantic-completion t)
     (ycmd-global-config nil)
     (ycmd-server-command (quote ("python" "/home/chris/Code/ycmd/ycmd")))
    (set-variable 'ycmd-global-config "/home/chris/Code/ycmd/cpp/ycm/.ycm_extra_conf.py")
    (set-variable 'ycmd-extra-conf-whitelist '("/home/chris/Code/daily_report_system/v1.0/*"))
    (require 'company-ycmd)
    (company-ycmd-setup)
    (require 'flycheck-ycmd)
    (flycheck-ycmd-setup)
    
     
  • 相关阅读:
    javaweb-番外篇-Commons-FileUpload组件上传文件
    javaweb-3-在Eclipse中引入Tomcat
    javaweb-2-Tomcat初步学习与使用
    javaweb-1-B/S初论
    jdk安装与配置
    程序、计算机程序、java初论
    RPC原理及RPC实例分析
    java堆排序(大根堆)
    数据结构——堆(Heap)大根堆、小根堆
    Spring事务传播机制和数据库隔离级别
  • 原文地址:https://www.cnblogs.com/halberd-lee/p/10267132.html
Copyright © 2011-2022 走看看