1 软件安装
1.1 Sublime Text 4 安装及 Package Control 安装
略,请自行百度/必应/谷歌。
1.2 Clang 环境安装
1.2.1 Clang 下载
在LLVM MinGW下载最新版Clang编译器,此处应根据个人电脑系统及版本选择,本文选择llvm-mingw-20231128-ucrt-x86_64.zip
,后续文件名将以此为例。
各版本区别原文:
Packages named
llvm-mingw-<version>-<crt>-<arch>.zip
are native toolchains that run on Windows (with binaries in the specified architecture), but which all can compile binaries for any of the 4 architectures.There are packages with two different choices of CRT (C runtime) - the primary target is UCRT (the Universal C Runtime). The UCRT is available preinstalled since Windows 10, but can be installed on top of Vista or newer. The other legacy alternative is
msvcrt
, which produces binaries for (and uses) msvcrt.dll, which is a built-in component in all versions of Windows. This allows running directly out of the box on older versions of Windows too, without ensuring that the UCRT is installed, but msvcrt.dll is generally less featureful. Address Sanitizer only works properly with UCRT.
文件下载完毕后,解压得到名为llvm-mingw-20231128-ucrt-x86_64
的文件夹(不同版本文件夹名称略有区别,整体差异不大),此时可以将改文件夹重命名(以方便辨认为主,不含中文)并将其移动至其他路径(以方便寻找为主,不含中文),本文不改动文件夹名称,并将改文件夹移动到C盘,如图2所示。
1.2.2 将 Clang 添加至环境变量
打开1.2.1节最后得到的文件夹,寻找bin
文件夹,如图3所示。复制bin
文件夹的完整路径,将该路径添加至用户环境变量,流程如图4所示。
打开cmd窗口,输入clangd -version
应出现如图5所示的内容,此时 Clang 环境配置完毕。
2 Sublime Text 4 中相关插件安装及设置
2.1 语言服务器相关插件
通过搜索Sublime Text LSP
结果可知,其官网推荐的语言服务器为LSP-clangd
,打开LSP-clangd
官网,根据其README
中的Installation
进行安装。
- Install LSP and LSP-clangd from Package Control
- (Optional) Install clangd using your package manager or let this package install clangd for you
打开 Sublime Text 4,依次点击Preferences -> Package Control
打开Package Control
面板,输入Install Package
安装上述两个插件。
2.2 自定义 Build System
Sublime Text 可以通过自定义 Build System 进行定制文件运行方式,详情查询官方文档。
对于C文件,在 Sublime Text 中依次点击Tools -> Build System -> New Build System...
新建文件并保存为方便识别的名字,填入下列内容。
{
"file_regex": "^\\s*File \"(...*?)\", line ([0-9]*)",
"file_patterns": [
"*.c"
],
"working_dir": "$file_path",
// run in CMD
"shell_cmd": "clang.exe \"$file\" -o \"$file_path/$file_base_name\" -g3 -pipe -Wall && start cmd /C \"chcp 65001 > nul && \"$file_path/$file_base_name\" & pause \""
}
对于C++文件,在 Sublime Text 中依次点击Tools -> Build System -> New Build System...
新建文件并保存为方便识别的名字,填入下列内容。
{
"file_regex": "^\\s*File \"(...*?)\", line ([0-9]*)",
"file_patterns": [
"*.cpp"
],
"working_dir": "$file_path",
// run in CMD
"shell_cmd": "clang++.exe \"$file\" -o \"$file_path/$file_base_name\" -g3 -pipe -Wall && start cmd /C \"chcp 65001 > nul && \"$file_path/$file_base_name\" & pause \""
}
该编译文件中,所使用shell_cmd
命令的含义为,使用clang/clang++编译源文件,并在源文件同级目录下生成对应可执行文件,编译完成后,在cmd中运行该可执行文件,其中chcp 65001 > nul
用于将cmd窗口的代码页临时切换至UTF-8,因为cmd默认代码页为GBK,而程序使用UTF-8编码,编码不一致将导致中文输出乱码,编译测试见图6。
2.3 代码格式化设置
LSP-clangd
会默认寻找当前文件夹下的.clang-format
文件并根据其内容进行格式化,如果找不到的话会根据设置项clangd.fallback-style
进行格式化,clang-format
提供的风格有:LLVM
、GNU
、 Google
、 Chromium
、 Microsoft
、Mozilla
、 WebKit
,默认为LLVM
,通过修改clangd.fallback-style
可更换默认风格,例如修改为Chromium
。
// Settings in here override those in "LSP-clangd/LSP-clangd.sublime-settings"
{
"initializationOptions": {
// clang-format style to apply by default when no .clang-format file is found
"clangd.fallback-style": "Chromium"
}
}
由于.clang-format
文件格式化自定义程度较高,此处不再赘述,请读者自行查阅。
2.4 LSP-clangd 其他设置
因人而异,略。
标签:clangd,file,Windows,Text,cmd,clang,LSP,Sublime From: https://www.cnblogs.com/rikka0612/p/18009331