搜索
首页开发工具sublime分享Sublime安装YcmdCompletion记录

下面由sublime教程栏目给大家介绍Sublime安装YcmdCompletion记录,希望对需要的朋友有所帮助!

Sublime安装YcmdCompletion记录

YcmdCompletion是一基于Clang的语义补全插件,安装分客户端和服务端。

1. 安装客户端

  1. 搜索Package Control, 选择YcmdCompletion即可

2. 安装服务端

有两种方式启动服务端,手动和自动。

2.1 手动方式:

编译ycmd服务,这个是需要在相应平台上自己编译的,他会去下载clang等一些库。编译方法原文

安装编译工具

sudo apt-get install build-essential cmake python-dev

下载ycmd源码,我把代码直接下载到sublime的User目录下, build之后会自动去下载clang的库。

cd ~/.config/sublime-text-3/User
git clone git@github.com:Valloric/ycmd.git && cd ycmd
git submodule update --init --recursive
./build.py --all

大概半个小时,安装成功,作者更新比较频繁,现在编译完只会生成一个库,ycm_core.so了,之前还有一个ycm_client_support.so,现在被合并了。
e8f8ca9f0c1469bea433a3755ccecb1.png

接下来,手工启动服务器(注意当前目录一直是在ycmd这个目录下), 服务器启动需要一个配置文件ycmd/default_settings.json, 每次启动之后会自动被删除掉,所以我们先拷贝一份到当前目录下

cp ycmd/default_settings.json .

然后打开他进行修改两项,global_ycm_extra_conf指定默认的.ycm_extra_conf.py的位置和hmac_secret设定HMAC的key。
默认的.ycm_extra_conf.py下载,用来配置补全功能的设置,具体参数可以看文档.ycm_extra_conf.py配置

wget https://raw.githubusercontent.com/Valloric/ycmd/master/cpp/ycm/.ycm_extra_conf.py

生成HMAC key

Command Palette > Ycmd: Create HMAC keys

服务器是用python写的,所以在ycmd/ycmd下面有一个__main__.py文件,我们可以启动它。

python ycmd --port 8888 --options_file ycmd/default_settings.json

510e2bf3c68beb597fe352ed46e6c5c.png

服务端已经启动了,接下来配置sublime-text客户端,打开Ycmd的配置文件 Preferences > Package Settings > YcmdCompletion > Settings - Default, 修改ycmd_port端口。

这个方式的最大的好处就是,服务器可以部署在远程,或者做成Docker image,只需要指定ip和port就可以任意使用了。

2.2 自动方式

打开Ycmd的配置文件 Preferences > Package Settings > YcmdCompletion > Settings - Default,设置3个参数即可。

  /* =====       YCMD AUTO START MODE       =====*/

   "use_auto_start_localserver": 1,
   "ycmd_path": "/home/will/.config/sublime-text-3/Packages/User/ycmd/ycmd",
   "python_binary_path": "/usr/bin/python",

3. 启动Sublime,进行测试

手下设置补全触发规则,打开Preferences -> Settings - More -> Syntax Specific - User,插入下面代码。这样当输入, ::, ->就可以触发自动补全了。我增加了/,可以触发路径补全,否则需要输入匹配的字符才能补全。

{
    "auto_complete_selector": "source - (comment, string.quoted)",
    "auto_complete_triggers": [ 
        {"selector": "source.c++", "characters": "."},
        {"selector": "source.c++", "characters": "::"},
        {"selector": "source.c++", "characters": "->"},
        {"selector": "source.c++", "characters": "/"} 
    ]
}

ycmd命令列表,包括重启服务器,显示错误列表等。

Command Palette > Ycmd:

以上是分享Sublime安装YcmdCompletion记录的详细内容。更多信息请关注PHP中文网其他相关文章!

声明
本文转载于:segmentfault。如有侵权,请联系admin@php.cn删除
崇高的文字免费吗?了解许可崇高的文字免费吗?了解许可May 09, 2025 am 12:10 AM

SublimeTextisfreeduringanunlimitedtrial,buta$99licenseisrecommendedforregularuse.1)Thetrialallowsfullfeatureaccesswithouttimelimits.2)Alicenseoffersperpetualuse,futureupdates,andremovespurchasereminders,enhancingproductivityandsupportingdevelopers.

崇高文本:增强您的编码工作流程崇高文本:增强您的编码工作流程May 08, 2025 am 12:19 AM

SublimeText能大幅提高工作效率。1)多重选择和多重光标功能允许同时编辑多个位置,2)命令面板提供快速功能访问,3)宏和片段可自动化常用操作,4)优化配置和快捷键使用能提升性能和效率。

崇高的文字:免费尝试,不一定可以自由拥有崇高的文字:免费尝试,不一定可以自由拥有May 07, 2025 am 12:02 AM

SublimeText提供免费试用,但最终需要付费购买永久授权。1)免费试用期间,用户可体验其功能,但会收到购买提示。2)购买后,用户可永久使用,无需订阅费,且可访问更多插件和主题。

崇高的文字:比较付费和无薪功能崇高的文字:比较付费和无薪功能May 06, 2025 am 12:07 AM

ThemaindifferencesbetweenthepaidandunpaidversionsofSublimeTextaretheremovalofstatusbarremindersandoccasionalpop-uppromptsinthepaidversion.1)Unregisteredversion:fullyfunctionalwithallcorefeatureslikesyntaxhighlighting,codecompletion,andcommandpalette,

崇高的文字:强大的编辑的成本崇高的文字:强大的编辑的成本May 05, 2025 am 12:04 AM

SublimeText值得购买。1)其简洁界面和强大功能,如多行编辑和GotoAnything,提升开发效率。2)丰富的插件生态系统,如Anaconda,增强开发体验。3)虽然价格为70美元,但其性能和流畅度对专业开发者物超所值。

崇高文本:代码完成,语法突出显示等等崇高文本:代码完成,语法突出显示等等May 04, 2025 am 12:04 AM

SublimeText因其强大的代码补全和语法高亮功能深受开发者喜爱。1)代码补全能自动提示函数名、变量名等,提升编程效率。2)语法高亮通过不同颜色区分代码元素,提高可读性和错误发现速度。

崇高文本与代码:比较分析崇高文本与代码:比较分析May 03, 2025 am 12:07 AM

SublimeTextisidealforthosevaluingspeedandsimplicity,whileVSCodesuitsthoseneedingextensivefeaturesandcustomization.SublimeTextoffersquickfileaccesswith"GotoAnything"andaminimalisticapproach,butmaylackout-of-the-boxfunctionality.VSCodeprovide

崇高的文字:您的编码伴侣崇高的文字:您的编码伴侣May 02, 2025 am 12:01 AM

sublimetextisapowerfulcodingcompanionduetoitsspeed,自定义和keykefeatures.1)itoffersincrediblediblesdibblesdibblesdiblespeedforhandlinglargefiles.2)其FlexibalibalyallibilityallibalibaliityallosalabolalabolalabolalAsextenSivexTensivexTomizationWithPluginSandThemes.3)

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

SublimeText3 英文版

SublimeText3 英文版

推荐:为Win版本,支持代码提示!

SublimeText3 Linux新版

SublimeText3 Linux新版

SublimeText3 Linux最新版

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

适用于 Eclipse 的 SAP NetWeaver 服务器适配器

将Eclipse与SAP NetWeaver应用服务器集成。

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

安全考试浏览器

安全考试浏览器

Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。