1. Sublime介绍
Sublime Text是一款由Jon Skinner所开发的跨平台文本编辑器,它拥有强大的插件生态系统和用户友好的界面,可以极大地提高程序员的工作效率。
Sublime Text默认支持Python语言,其包含了一些内置的语法高亮和自动完成功能。如果需要使用其他语言,使用Sublime还需要安装相应的插件。
2. YcmdCompletion介绍
YcmdCompletion是一款Sublime Text插件,其通过通过安装和配置.ycmd配置文件,提供了强大的对C/C++语言的自动完成和代码格式化功能。它能够根据代码上下文,自动完成代码,让编写C/C++代码变得更加轻松。
3. 安装Sublime Text
首先,我们需要从Sublime Text官网上下载相应的版本,然后按照提示进行安装。
安装成功后,打开Sublime Text,在菜单栏中选择Preferences -> Package Control,然后在打开的弹窗中选择Install Package。在搜索框中输入YcmdCompletion,选择该插件进行安装。
4. 配置YcmdCompletion
4.1 创建.ycmd文件
首先,我们需要创建一个名为.ycmd的文件夹。
mkdir ~/.ycmd
4.2 配置.ycmd文件
然后,我们需要在.ycmd文件夹下面创建一个名为ycm_extra_conf.py的文件,并将以下代码粘贴到该文件中:
import ycm_core
flags = [
'-Wall',
'-Wextra',
'-Werror',
'-Wno-long-long',
'-Wno-variadic-macros',
'-fexceptions',
'-DNDEBUG',
'-std=c++11',
'-x',
'c++',
'-isystem',
'/usr/include',
'-I',
'.',
'-I',
'./include',
]
def FlagsForFile( filename, **kwargs ):
return {
'flags': flags,
'do_cache': True
}
该文件中的flags列表定义了YcmdCompletion对C/C++代码进行编译时需要使用的参数,您可以根据自己的需求进行修改。
4.3 配置Sublime Text
修改Sublime Text的配置文件,以便允许YcmdCompletion插件读取.ycmd配置文件。
在Sublime Text中,依次点击Preferences -> Settings,然后找到User的配置文件,按照以下方式进行修改:
"ycmd_path": "~/.ycmd",
"ycmd_arguments": ["--log=debug",
"--socket-keepalive",
"--keepalive",
"--idle_suicide_seconds=3600",
"--max_threads=4",
"--min_num_of_free_buffers=6",
"--load-config",
"/Users/<您的用户名>/.ycm_extra_conf.py"
],
修改完成后,保存配置文件,重新启动Sublime Text。
5. 使用YcmdCompletion
当您打开一个C/C++代码文件时,YcmdCompletion会自动在您编写代码的过程中,为您提供合适的代码自动完成建议和代码格式化。您只需要在代码提示框中选中相应的建议,或者按下Tab键来进行代码自动格式化,就可以快速完成C/C++代码的编写。
6. 总结
通过YcmdCompletion插件的使用,我们可以很方便地为Sublime Text添加强大的自动完成和代码格式化功能。
Sublime Text与YcmdCompletion本身就具备一定的集成性,因此它们非常容易与其他开发工具进行集成,比如Git和CI系统等等。