你好 Stackoverflow 社区,
这是我在这里的第一篇文章。我正在使用 VS Code,目前正在寻找一种默认启用方法和函数折叠的方法,例如 PHPStorm 中可用的功能。我环顾四周,发现一些帖子表明您可以按照此处所述折叠所有代码或缩进级别:https://stackoverflow.com/a/30077543/10713286
但是,我正在寻找一种使用匹配括号作为折叠方法而不是缩进或使用 //#region
来折叠函数和方法的方法。和 //#endregion
.理想情况下,这可能是默认设置,我可以根据需要展开代码。 PHPStorm 完美地做到了这一点,并将文档方法和函数注释作为一个选项展开。我认为这可能需要通过编写扩展来完成。不过,我很难找到一种方法来做到这一点。我拉取了 VS Code git repo 并运行了一些 grep 搜索,发现折叠方法(对于 php)设置在 vscode/extensions/php/package.nls.json:3
中。 .有#region
和 #endregion
vscode/extensions/php/snippets/php.snippets.json
中的设置|在第 243 和 250 行。问题是折叠是用正则表达式设置的,我找不到单独使用正则表达式来匹配括号的方法。
这对我来说是一个重要的特性,因为我正在学习一个新的代码库,并且函数/方法折叠确实提高了大文件的可读性。我可以快速扫描我需要的内容并根据需要进行扩展。 VS Code 尝试这样做,但是如果函数中有任何行故意缩进,例如为了使注释更明显,VS Code 会停止折叠,而不是转到函数的末尾。非常感谢有关此问题的任何帮助!!
tldr;我需要找到一种基于匹配括号而不是 VS Code 中的缩进来折叠代码的方法。
最佳答案
VS Code 有两种处理语言折叠的方法:
#region
支持)。这适用于许多语言,但非常简单。它只查看缩进来确定代码应该如何折叠 我不知道任何为 php 实现语法感知折叠的现有扩展。如果您想自己实现,请查看 folding provider api
关于php - 基于括号的 VS Code 折叠 - 不缩进,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53506896/