[英]How do I collapse an arbitrary selection of code in Visual Studio Code for Windows
[英]How do I collapse sections of code in Visual Studio Code for Windows?
如何在 Visual Studio Code 中折叠或折叠代码段?
是否支持此功能?
折叠功能已经推出,现在从 Visual Studio Code版本 0.10.11 开始实施。 有以下可用的键盘快捷键:
Fold折叠光标处最里面的未折叠区域:
Unfold展开光标处的折叠区域:
Fold All折叠编辑器中的所有区域:
Unfold All在编辑器中展开所有区域:
参考资料: https ://code.visualstudio.com/docs/getstarted/keybindings
从 2017 年 4 月的 Visual Studio Code 版本 1.12.0 开始,请参阅文档中的 基本编辑 > 折叠部分。
默认键是:
全部折叠: CTRL + K , CTRL + 0 (零)
折叠级别 [n]: CTRL + K , CTRL + [n] *
展开全部: CTRL + K , CTRL + J
折叠区域: CTRL + K , CTRL + [
展开区域: CTRL + K , CTRL + ]
*折叠级别:折叠除最外层之外的所有类,尝试CTRL + K , CTRL + 1
Mac:使用⌘而不是CTRL (感谢 Prajeet)
有关命令和演示,请参阅https://stackoverflow.com/a/72954133/836330 。
Fold Selected Lines
, editor.foldSelected
。 Ctrl + K Ctrl + 。
v1.17 已提供按区域折叠代码。 按区域折叠文档。 还有v1.19和1.23 。
[通常您可以在 //region 和 //endregion 中添加空格,例如// region and // endregion
//region and //endregion
,它也可以使用。]
TypeScript/JavaScript: //#region and //#endregion or // #region and // #endregion
C#: #region and #endregion
C/C++: #pragma region and #pragma endregion
F#: //#region and //#endregion
PowerShell: #region and #endregion
Python: #region and #endregion
VB: #Region and #End Region
PHP: #region and #endregion
Bat: ::#region and ::#endregion or REM #region and REM #endregion
Markdown: <!-- #region --> and <!-- #endregion -->
Golang //region and //endregion or //#region and //#endregion
Java //#region and //#endregion
CSS/SCSS/Less: /* #region */ and /* #endregion */ or /*#region*/ and /*#endregion*/
SCSS/Less: // #region and // #endregion
Go: // region, // endregion and // #region, // #endregion
shellscript: # region and # endregion
Perl5 #region and #endregion or =pod and =cut
sql --#region and --#endregion
重要提示:如果您没有在列表中看到您的语言 ::
每种语言还具有可用于标记的片段。 输入“#”并调用代码完成来查看它们。 要为您的语言配置区域标记,请联系语言扩展提供商。
因此,键入#
然后Ctrl + Space以查看任何语言的区域标记。
您应该添加用户设置:
{
"editor.showFoldingControls": "always",
"editor.folding": true,
"editor.foldingStrategy": "indentation",
}
ctrl + k + 0 :折叠所有级别(命名空间、类、方法、块)
ctrl + k + 1 :命名空间
ctrl + k + 2 :类
ctrl + k + 3 :方法
ctrl + k + 4 :块
ctrl + k + [或] :当前光标块
ctrl + k + j :展开
折叠/扩展的默认快捷方式是:
Ctrl + Shift + [ :“折叠”
Ctrl + Shift + Alt + [ :“全部折叠”
Ctrl + Shift + ] :“展开”
Ctrl + Shift + Alt + ] :“全部展开”
或者转到 keybindings.json 并根据需要进行更改。
例如:
{
"key": "cmd+k cmd+m",
"command": "editor.foldAll",
"when": "editorFocus"
},
{
"key": "cmd+m cmd+k",
"command": "editor.unfoldAll",
"when": "editorFocus"
},
如果所有快捷方式都不起作用(就像我一样),作为一种解决方法,您还可以打开命令面板( Ctrl + 3或 View -> Command Palette...)并输入fold all
:
1.0 版现在支持折叠:
源代码折叠快捷方式
有新的折叠操作可以根据折叠级别折叠源代码区域。
有将级别 1 ( Ctrl + K Ctrl + 1 ) 折叠到级别 5 ( Ctrl + K Ctrl + 5 ) 的操作。 要展开,请使用全部展开 ( Ctrl + Shift + Alt + ] )。
级别折叠操作不适用于包含当前光标的区域。
我在键盘上找不到]
按钮(挪威布局),在我的情况下是Å
按钮。 (或者从退格按钮开始,向左和向下两个按钮。)
使用 JavaScript:
//#region REGION_NAME
...code here
//#endregion
自Visual Studio Code 1.17起,现在支持此功能。 要折叠/折叠您的代码块,只需添加区域标签,例如//#region my block name
和//#endregion
如果使用 TypeScript/JavaScript 编码)。
例子:
这是用于折叠和展开代码的最新内置(默认)键盘快捷键
Ctrl+Shift+[ Fold (collapse) region
Ctrl+Shift+] Unfold (uncollapse) region
Ctrl+K Ctrl+[ Fold (collapse) all subregions
Ctrl+K Ctrl+] Unfold (uncollapse) all subregions
Ctrl+K Ctrl+0 Fold (collapse) all regions
Ctrl+K Ctrl+J Unfold (uncollapse) all
注意:但在某些情况下,您的 vs 代码扩展或用户会更改键盘绑定(快捷方式)。 所以像这样检查的最佳选择
例如:
全部折叠
展开全部
v1.42 对折叠的外观和功能进行了一些很好的改进。 请参阅https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_42.md#folded-range-highlighting :
折叠范围突出显示
由于所有弃牌范围的背景颜色,现在更容易发现弃牌范围。
折叠高亮颜色主题:Dark+
该功能由设置 editor.foldingHighlight 控制,并且可以使用颜色 editor.foldBackground 自定义颜色。
"workbench.colorCustomizations": { "editor.foldBackground": "#355000" }
折叠改进
Shift + Click
折叠指示器首先只折叠内部范围。Shift + Click
再次(当所有内部范围都已折叠时)也将折叠父级。Shift + Click
再次展开全部。
在已经折叠的范围上使用折叠命令 (kb(
editor.fold
))] 时,下一个展开的父范围将被折叠。
从版本 1.3.1 (2016-07-17) 开始,Block Collapse 更加方便。
任何后跟缩进行的行都将带有一个“-”字符以允许折叠。 如果该块被折叠,它将被替换为“+”字符,该字符将打开折叠的块。
( Ctrl + Shift + Alt + ] )仍然会影响所有块,关闭一个级别。 每次重复使用都会关闭一个级别。 ( Ctrl + Shift + Alt + [ ) 以相反的方式工作。
万岁,块崩溃终于有用了。
这是 VS 代码最常用的默认键盘映射。 并且您可以轻松地通过自己的键盘映射进行自定义。
Fold All: CTRL + 0
Unfold All: CTRL + J
Fold Region: CTRL + [
Unfold Region: CTRL + ]
Fold Level 1: CTRL+ 1
Fold Level 2: CTRL+ 2
Fold Level 3: CTRL+ 3
Fold Level 1: CTRL+ 4
VSCode 扩展: Fold Level ,一键折叠到你想要的关卡。
注意:这些快捷方式只有在您编辑 keybindings.json 时才能按预期工作
我对默认快捷方式不满意,我希望它们按以下方式工作:
要设置它:
Preferences: Open Keyboard Shortcuts (JSON)
( Ctrl + ⇧ Shift + p )已经有折叠/展开的自定义键绑定? 然后你需要更换它们。
{
"key": "ctrl+alt+]",
"command": "editor.fold",
"when": "editorTextFocus && foldingEnabled"
},
{
"key": "ctrl+alt+[",
"command": "editor.unfold",
"when": "editorTextFocus && foldingEnabled"
},
{
"key": "ctrl+shift+alt+]",
"command": "editor.foldRecursively",
"when": "editorTextFocus && foldingEnabled"
},
{
"key": "ctrl+shift+alt+[",
"command": "editor.unfoldRecursively",
"when": "editorTextFocus && foldingEnabled"
},
{
"key": "ctrl+k ctrl+[",
"command": "editor.unfoldAll",
"when": "editorTextFocus && foldingEnabled"
},
{
"key": "ctrl+k ctrl+]",
"command": "editor.foldAll",
"when": "editorTextFocus && foldingEnabled"
},
折叠/展开当前块使用 ( ctrl
+ k
)+( ctrl
+ l
)
在 Mac 上,它是 RHS Command 键⌘ K ,而不是代码折叠命令的左侧。
否则,左手 Command 键将删除当前行⌘ K 。
我希望 Visual Studio Code 可以处理:
#region Function Write-Log
Function Write-Log {
...
}
#endregion Function Write-Log
现在 Visual Studio Code 只是忽略它并且不会折叠它。 同时 Notepad++ 和 PowerGUI 处理得很好。
更新:我刚刚注意到 Visual Studio Code 的更新。 现在支持这个!
或者,如果您想移除折叠按钮,以获得额外空间:
"editor.folding": false
(添加到您的settings.json
文件)
在Windows构建中,快捷方式设置为Alt + 0
命令 K + 命令 0 不起作用。
此处提供更多信息: 区域扩展https://marketplace.visualstudio.com/items?itemName=maptz.regionfolder
安装扩展并使用 python 后,它的工作原理如下:
# region ARBITRARY_REGION_NAME
code goes here...
# endregion
此外,选择所需区域,使用 Ctrl+M+Ctrl+R。
(即:先按住Ctrl,再按m,让go m,再按r,让go全部)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.