ycmd for emacs 代码自动补全
YCMD FOR EMACS
Table of Contents
1 安装
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
2 配置
配置内容如下:
 ;;;;;;;;;;;;;;;;;;;;;;;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)
===================
天行健,君子以自强不息
地势坤,君子以厚德载物
===================

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号