Visual Code,折叠注释

22

Visual Studio Code 1.24.1

今天我在工作的时候,它提示我更新(更新到1.24.1)。我不确定我是否不小心按下了快捷键或者是因为这次更新导致的。

但是我似乎不能再使用注释作为折叠点。

然而,我不确定是否按下了某种快捷键,还是因为补丁引起的问题。

我的谷歌搜索没有帮我找到Visual Studio Code的答案。找到了许多有关Visual Studio(而不是Code)和其他编辑器的旧主题,但找不到特定于VSC的主题。

我喜欢使用注释作为折叠点 / 分区标题。

我曾经用作折叠点的注释示例

这是VSC 1.24.1的错误还是我不知道的快捷键?


2
忘了说我正在使用 JavaScript。 - James
8
据我所读,在 JavaScript 中,你应该用 //#region 区域名称//#endregion 来标记折叠区域。 - lurker
我只是在忙着三件事情,忘记给它打标签了,而且我找不到编辑原始问题的编辑按钮。所以我进行了评论,并不得不继续下一个任务,遗憾的是不能很彻底。当我发现Visual Studio Code可以让我折叠注释时,我喜欢其格式化方式,因为我可以将所有内容关闭并使用注释作为索引。当所有内容都关闭后,可以很容易地找到我要查找的内容,而无需使用搜索。可能只会移动到{//------------- Example } 这样就可以折叠大括号。 - James
1
@lurker,为什么你不把它作为答案呢?这是最佳解决方案,需要标记为答案。 - Vijay Kumar Kanta
区域标记对于每种语言都是不同的。请参阅https://code.visualstudio.com/docs/editor/codebasics#_folding - Dominik
显示剩余3条评论
2个回答

40
VS Code有一种方法可以标记一个区域的开始和结束,这样就可以轻松地折叠和展开它。同时,还可以为该区域提供一个名称/简短描述,始终可见。
我在JavaScript代码上尝试过这个功能,并且相信它在VS Code中的任何语言上都能正常工作。在开始和结束区域之间,可以放置任何内容 - 注释、几行代码或整个函数。
在没有适当的代码折叠功能的情况下,这是一个非常好的解决办法,适用于VS Code上的所有语言。
//#region <REGION NAME>

      < You can put any type of code in here - some lines of code, functions or single or multi-line comments.
//#endregion

对于Python,只需在分界线中省略//,因为#是一个有效的注释指示符:

#region <REGION NAME>
...
# any code goes here, including multiple comment lines
...
#endregion

我不会用PHP编码,但是我能够像这样折叠代码。你可以尝试其他语言的变体。对于VS Code来说,以下关键词很重要:“#region”和“#endregion”。想办法将这些关键词作为注释放入你的代码中,就能实现折叠功能,这两个关键词之间的内容并不重要,所以可以随意尝试:
<?php
#region <Any name that helps you>

ECHO "Hello!<br>";
EcHo "Hope this helps you.<br>";

#endregion
?>

尝试在PHP中使用,但没有成功。VS Code版本为1.56.1。我来到这里是因为我不能再折叠连续的//注释或/* */多行注释块了。不过,Heredoc语法(/**\n * comment\n */)仍然可以折叠。 - s3c
@s3c 我也觉得/** */不可折叠。 - NickW
不适用于Dart。 - tofutim
2
这个技巧在Python中也非常好用,只需省略//即可。 - SpinUp __ A Davis
@s3c,我为VS Code中的PHP代码折叠添加了一个示例。希望能有所帮助。请随意尝试不同的方式。 - Curious101
在React中,如果你使用块注释Shift + Alt + A,它会生成... {/* \n ...\n */} ...你需要像这样创建你的区域... {\n //#region 区域名称\n /*\n ...\n */\n //#endregion }(stackoverflow的注释不允许换行,所以我使用"\n"表示新行) - undefined

2
我发现React中的一种技巧是使用空标签,例如:
<>

{/*

Your commented code

*/}

</>


这可以让你折叠在空标签之间的注释代码。你可以进一步添加区域(如其他答案中所述)以对其进行描述。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接