首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何折叠带有预处理器的控制语句?

如何折叠带有预处理器的控制语句?
EN

Stack Overflow用户
提问于 2019-01-24 22:17:06
回答 1查看 555关注 0票数 4

最近,我一直在处理一些同事的遗留代码,使用visual studio代码,我可以将其转换为非常合理和可读的C格式。然而,我想折叠一些控制语句,因为我的同事编写的控制语句有时会超过100行。

在这些行中,我添加了预处理器控制语句来启用和禁用我的更改。

在visual studio代码中,我可以很好地折叠代码,但一旦遇到预处理器语句,它就会停止,至少是#ifdef和#ifndef。因为大约每10行就有1行来折叠一条控制语句,我需要折叠10次,这有点超出了它背后的想法,对吧?

我试着在设置中寻找折叠和折叠,并进行了一些谷歌搜索,但我找不到任何可能解决我的问题的东西。

例如,我有这个代码片段

代码语言:javascript
运行
复制
if(true)
{
    Some functions();
#ifdef DEBUG
    Functions with debugging only();
#else
    Functions without debugging only();
#endif
    Some other functions();
}

我希望,每当我折叠if(true)时,这个控制语句中的所有内容都会被折叠。这就是我所习惯的,也是在vs2017中将要发生的事情。这在VSCODE中不会发生!相反,只有一些函数();会被折叠。

如何才能使VSCODE折叠行为与其他IDE相似?

EN

回答 1

Stack Overflow用户

发布于 2019-01-24 22:37:29

听起来你的编辑器使用的是缩进级别的折叠。

根据https://code.visualstudio.com/docs/editor/codebasics#_folding的说法

默认情况下,基于行的缩进来计算

折叠范围。折叠范围从一行缩进小于一个或多个后续行时开始,当有一行缩进相同或更小时结束。

从1.22版本开始,也可以基于编辑器配置语言的语法标记来计算折叠范围。以下语言已经提供了语法感知折叠:

  • Markdown、HTML、CSS、LESS、SCSS和JSON

有可能有插件支持其他语言的语法折叠。如果没有,作为一种解决办法,您可以缩进预处理器行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54348687

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档