vscode添加宏定义

1 起因

在用vscode看项目代码时,如果源文件中的代码块被某个宏定义给包裹住了,则在vscode的默认配置下,不会高亮显示这块被包裹住的代码,如下图中229行开始的代码被STM32F40_41xxx所控制,没有高亮显示。

由于STM32F40_4xxx是在ARMCC的编译参数中定义的,也就是在MDK的编译工程中定义的,所以在用vscode看代码时是无法识别到它的定义的。这就给浏览代码带来了一些不便。

接下来要做的就是将编译用到的宏定义添加到vscode中,使工程中源码能够根据这些宏定义来自动切换高亮和变灰。

2 解决方法:

2.1 确保vscode安装了C/C++, C/C++ Extension Pack 插件。

确保安装了这2个插件。

2.2 开启对非活动区的控制。

选择在工作区中搜索Dim inactive Regions.

修改工作区的配置仅会修改当前工程的配置,当用vscode打开其他项目时不会产生影响。如果需要统一修改所有配置,那就到用户区修改吧。

2.3 添加宏定义

使用Ctrl+Shift+P 进入搜索框,然后输入C/C++:

其中C/C++表示刚才安装的C/C++插件,冒号后的Edit Configurations是指这个插件里面选项。

这里可以通过2种方式进行修改。分别UI和JSON方式。

2.3.1 UI方式

如果使用UI的方式,则输入后会打开下面的界面,在粉色方框处填入期望的宏定义:

c 复制代码
STM32F40_41xxx

2.3.2 JSON方式

如果是以JSON的方式打开,则在如下位置添加STM32F40_41xxx

2.3.4 效果

填完后再看刚才的代码区,被STM32F40_41xxx控制的代码块已经可以高亮显示了:
完了。

相关推荐
SpiderPex7 小时前
Vibe Coding 开发流程心得:从入门到规范化的踩坑记录
vscode·编辑器·ai编程·开发流程·vibe coding
MR.欻16 小时前
ZLMediaKit 源码分析(四):RTP/RTCP 协议栈实现分析
c++·人工智能·vscode·ffmpeg·音视频
晚风吹红霞17 小时前
Vim编辑器从入门到熟练 —— 三种模式与常用命令详解
linux·编辑器·vim
SWAGGY..18 小时前
Linux系统编程:(十一)进程状态&&Linux中的僵尸状态
linux·服务器·编辑器·vim
青山如墨雨如画18 小时前
【Claude】Win11系统VSCode下的Claude使用方法
vscode·aigc·claude·vibe coding·authropic
青山如墨雨如画19 小时前
【Claude】Win11电脑下VSCode环境中Claude+Deepseek的报错及解决方法记录日志
vscode·aigc·claude·authropic
key_3_feng19 小时前
VSCode 分屏实战,同时对话 Claude Code 与 Copilot 提升多任务处理效率
vscode·claude code·多 agent 协作,开发效率
是烨笙啊21 小时前
AI编程:项目管理
ide·人工智能·ai编程
czy87874751 天前
vscode编译make命令要修改stm32cubemx生成的STM32F103XX_FLASH.ld文件
ide·vscode·stm32