Arch Linux下如何让clangd无额外配置时回退使用C++20?
让clangd默认使用C++20的几种实现方法
方法一:在Emacs中配置clangd启动参数
在你的Emacs配置文件(如~/.emacs或~/.emacs.d/init.el)中添加以下代码,直接给clangd指定C++标准:
(setq lsp-clients-clangd-args '("--std=c++20"))
添加完成后重启Emacs或重新加载配置,后续clangd就会默认以C++20标准处理代码。
方法二:使用项目本地配置文件
若仅需针对单个项目生效,在项目根目录创建.clangd文件,写入以下内容:
CompileFlags: Add: [-std=c++20]
clangd会自动识别项目根目录的该配置文件,优先采用这里指定的C++标准。
方法三:通过环境变量全局设置
如果希望所有clangd实例都默认使用C++20,可在shell配置文件(如~/.bashrc或~/.zshrc)中添加环境变量:
export CLANGD_FLAGS="--std=c++20"
执行source ~/.bashrc(对应你的shell配置文件)或重启shell后,新启动的clangd都会应用该参数。
内容的提问来源于stack exchange,提问作者Jason Nordwick
相关产品推荐
相关产品推荐

