问题标签 [clangd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-studio-code - 具有多个构建目录的 vscode 的 clangd
我正在尝试使用 clangd 在 vscode 中完成代码。我正在使用 CMake 进行项目设置,并且正在创建一个编译数据库。但是,我有几个具有不同标志(调试、发布...)的构建目录,并且 clangd 需要在源目录中有编译数据库。这是不可能的,因为每种构建类型的编译数据库都不同......
当您有多种构建类型时,有什么方法可以使用 clangd 吗?
c++ - 使用智能感知检测 C++ 中变量的赋值
当我们在大型代码库中工作时,有时很难检测到将值分配给特定变量/类属性的位置。使用 clangd 等大多数智能感知工具,我们可以导航到函数声明、定义甚至变量的所有引用。是否有任何实用程序允许我们在所有引用中仅过滤对变量的分配?我们在编译器通道中提供了这样的分析,是否有任何工具(如 libtooling)暴露了智能感知等能力?
c++ - 如何使用 LSP(Clangd)设置 Neovim
我正在尝试设置 neovim 以在 c++ 中进行竞争性编程。而且我认为在输入代码时显示错误会对我有很大帮助,因此我需要在 neovim 中设置 lsp,我尝试过 Nighty Build neovim 但我没有在 gnome-terminal 中工作,所以我什至切换到 Alacrity 但我仍然无法正确设置 LSP。我的要求:我只需要我的 nvim 在我输入时在我的代码中显示错误(不需要自动完成或自动导入)。在neovim中甚至可能吗?如果有人知道,请帮助我设置我的nvim。(我需要我的 vim 来显示图像中的错误)
c++ - 为什么我在vscode中使用clangd时没有缩进?
当我输入if并使用 clangd 代码完成时,我得到了这个。
我期待着
while和for是一样的。
虽然我很容易安装了clangd-12,但vscode clangd 扩展程序自动为我安装了clangd 12.0.1.zip。
我想这与问题有关。
c++ - C宏检查clangd是否正在静态分析代码
我在 C++ 中有一个自定义断言系统,它使用std::source_location
. clang 还不支持它,所以我实现了一个临时的 hack:#if defined(__clang__)
使用 oldschool hack,比如__FILE__
and __PRETTY_FUNCTION__
,#else
use source_location
。
这一切都运作良好,花花公子,直到我开始在 clion 中工作,但使用 GCC 进行编译。Clion 使用 clangd,当 cmake 项目使用 gcc 配置时,它的行为方式很奇特。一些宏定义表明当前编译器是gcc(例如defined(__clang__)
为假),其中一些表明它是clang(例如__has_builtin(__builtin_source_location)
为假)。这导致我的断言周围出现非常奇怪的误报,无论我做什么,我都无法摆脱它们。
因此,我的问题是:clangd/clion 在静态分析代码时是否添加了一些神奇的定义,以便我可以欺骗他们不在我的断言周围显示该死的红色曲线?
c - 为什么 clangd 看不到我的自定义库位置
问题陈述:
我在自定义位置安装了一个库,编译和链接工作正常,但 clangd 报告了与自定义库相关的各种错误。
我的 Makefile 有以下标志:
但是,clangd 不知道如何找到头文件,因此我的编辑器显示如下错误,但无济于事:
在互联网上搜索错误和关键字clangd
,未能在 SO 或其他地方产生任何有用的东西(因此这个问题)clangd config
。clangd .clang-format
问题是:
如何告诉 clangd 我的非标准标头在哪里,这样它就不会显示虚假的“找不到文件”警告?
visual-studio-code - VScode中安装clangd语言服务器失败
我正在使用 VScode,我的工作区位于远程 linux 服务器上。我在远程服务器上成功安装了clangd
扩展,但是当我尝试下载语言服务器时,出现以下错误:
我无法找到与此相关的问题。有人可以建议导致此问题的原因吗?
visual-studio-code - 如何检查clangd是否在VS代码中运行?
我安装了clangd
,但我不确定它是否正在运行。我似乎没有得到一些宣传的功能,所以我觉得它没有运行或只是部分工作。
我正在查看https://releases.llvm.org/8.0.0/tools/clang/tools/extra/docs/clangd/Installation.html的“Visual Studio 代码”部分。
这里说:
调试日志:当clangd运行时,你应该在输出面板的下拉菜单中看到“Clang Language Server”(查看->输出)。
在我的下拉列表中(见下图),我只看到clangd
但没有Clang language server
. 这两个是等价的吗?如果没有,那么它似乎clangd
运行不正常?
c++ - SDL2/SDL.h 未找到,clang(pp_file_not_found)
我不明白我在哪里犯了错误。我的步骤:
安装 vscodium,msys2。更新 msys2 包,安装 clangd 扩展,CodeLLdb。
检查编译构建,工作。一切正常。
在项目中安装 SDL。树 -树项目
с_cpp_properties.json
launch.json
settings.json
tasks.json
我当然阅读了解决方法,sdl2
在msys2
. 但我想了解我做错了什么。
c++ - compile_commads 中的 C++ 标准冲突
我正在开发一些使用 C++17 标准和 clangd-13.0 的项目。在我决定在其 CMakeLists 文件中添加使用 C99 标准的库之后的某个时间,现在即使在 cpp 文件中,clangd 也总是基于 C99 标准进行分析。
我的 CMakeLists 文件如下所示:
我可以以某种方式将此库从 compile_commands 中排除或强制使用 C++17 标准吗?
编辑:在我删除 -std=c99 标志的声明后,问题仍然存在,clangd 将 cpp 代码分析为纯 C,即使 compile_commands.json 不包含-std
库文件的任何参数