如何在Visual Studio代码中折叠或折叠代码节?
支持该特性吗?
如何在Visual Studio代码中折叠或折叠代码节?
支持该特性吗?
自Visual Studio Code版本0.10.11以来,折叠功能已经推出并实现。有以下快捷键可用:
Fold在光标处折叠最里面的未折叠区域: 在Windows和Linux上按Ctrl + Shift + [ macOS上的` ` ` ` ` ` ` ` ` ` ` ` ` 展开光标处的折叠区域: 在Windows和Linux中使用Ctrl + Shift +] macOS上的` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` 折叠编辑器中的所有区域: 在Windows和Linux中,Ctrl + K, Ctrl + 0(零) 在macOS上⌘+ K,⌘+0(零) 展开全部在编辑器中展开所有区域: Windows和Linux下的Ctrl + K, Ctrl + J 在macOS上⌘+ K,⌘+ J
引用:https://code.visualstudio.com/docs/getstarted/keybindings
默认的折叠/扩展快捷方式是:
Ctrl + Shift +[: "折叠"
按下Ctrl + Shift + Alt +[:“全部折叠”
Ctrl + Shift +]:“展开”
按下Ctrl + Shift + Alt +]:“全部展开”
或者去键绑定。Json和更改,如你所愿。
例如:
{
"key": "cmd+k cmd+m",
"command": "editor.foldAll",
"when": "editorFocus"
},
{
"key": "cmd+m cmd+k",
"command": "editor.unfoldAll",
"when": "editorFocus"
},
现在在1.0版本中支持折叠功能:
源代码折叠快捷键 有新的折叠动作来折叠源代码区域 它们的折叠水平。 有一些动作可以将级别1 (Ctrl+K Ctrl+1)折叠到级别5 (Ctrl+K) Ctrl + 5)。要展开,使用全部展开(Ctrl+Shift+Alt+])。 级别折叠操作不适用于包含 当前光标。
我很难找到键盘上的]按钮(挪威式布局),在我的例子中是Å按钮。(或者从退格键开始向左按两个键,向下按一个键。)
从2017年4月Visual Studio Code 1.12.0版本开始,请参阅文档中的基本编辑>折叠部分。
默认键为:
全部折叠:CTRL+K, CTRL+0 (0) 折叠等级[n]: CTRL+K, CTRL+[n]* 展开全部:CTRL+K, CTRL+J 折叠区域:CTRL+K, CTRL+[ 展开区域:CTRL+K, CTRL+]
*折叠级别:折叠所有,但最外层的类,尝试CTRL+K, CTRL+1
mac:使用⌘而不是CTRL(感谢Prajeet)
从版本1.3.1(2016-07-17)开始,块崩溃变得更加方便。
任何后跟缩进的行都将有一个'-'字符以允许折叠。如果该块被折叠,那么它将被一个'+'字符所取代,该字符将打开折叠的块。
(Ctrl + Shift + Alt +])仍然会影响所有方块,关闭一层。每重复使用一次,就会关闭一层。Ctrl + Shift + Alt +[)的作用正好相反。
万岁,区块崩溃终于有用了。
还可以从Insiders v1.70开始查看折叠任意行代码的功能。也就是说你选择的任何线都可以折叠!
命令和演示请参见https://stackoverflow.com/a/72954133/836330。
创建手动折叠范围从选择 editor.createFoldingRangeFromSelection
这是绑定到上面的创建命令:Ctrl+K Ctrl+,
移除手动折叠架 editor.removeManualFoldingRanges
这是绑定到上面的删除命令:Ctrl+K Ctrl+。
按区域进行代码折叠是在1.17版本中实现的。按区域文档折叠。以及v1.19和1.23。
[通常你可以添加一个空格,例如//region和//endregion到//region和//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+空格来查看任何语言的区域标记。
从Visual Studio Code 1.17开始,现在支持这个特性。要折叠/折叠你的代码块,只需添加区域标签,例如//#region my块名,如果用TypeScript/JavaScript编码,则添加//#endregion。
例子:
你应该添加用户设置:
{
"editor.showFoldingControls": "always",
"editor.folding": true,
"editor.foldingStrategy": "indentation",
}
我希望Visual Studio Code可以处理:
#region Function Write-Log
Function Write-Log {
...
}
#endregion Function Write-Log
现在Visual Studio Code只是忽略它,不会折叠它。 与此同时,notepad++和PowerGUI可以很好地处理这个问题。
更新:我刚刚注意到Visual Studio Code的更新。现在支持了!
ctrl + k + 0:折叠所有级别(命名空间,类,方法,块)
CTRL + k + 1: namspace
CTRL + k + 2: class
CTRL + k + 3:方法
CTRL + k + 4:方块
CTRL + k + [or]:当前光标块
ctrl + k + j:展开
这里没有技术技巧,只是简单地调整了VsCode的首选项。
我设法显示代码折叠控件总是在VsCode通过选择和搜索“折叠”。现在只需选择始终显示这些控件。这适用于我测试的Angular 8解决方案中的Typescript代码和模板的HTML。
这是用VsCode Insiders 1.37.0在Windows 10操作系统上测试的。
V1.42对折叠的外观和功能进行了一些很好的改进。见https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_42.md # folded-range-highlighting:
折叠范围高亮显示 由于背景色,折叠范围现在更容易发现 对于所有折叠范围。
主题:深色+ 该功能由设置编辑器控制。foldingHighlight和 颜色可以用color editor.foldBackground定制。 “工作台。colorCustomizations ": { “编辑器。foldBackground": "#355000"} 折叠细化 Shift +点击折叠指示器,首先只折叠内层 范围。Shift +再次点击(当所有内层范围都已经折叠时) 也会折叠父元素。Shift +点击再次展开全部。
当对已经折叠的文件使用折叠命令(kb(editor.fold))]时 范围,下一个展开的父范围将被折叠。
注意:这些快捷方式只有在编辑keybindings.json时才能正常工作
我不喜欢默认的快捷方式,我想让他们工作如下:
折叠:Ctrl + Alt +] 使用Ctrl + Shift + Alt + 全部折叠:Ctrl + k然后Ctrl +] 展开:Ctrl + Alt + [ 用Ctrl + Shift + Alt + [ 全部展开:Ctrl + k然后Ctrl + [
设置方法:
打开快捷键(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"
},
下面是VSCode中最常用的默认键映射。你可以很容易地自定义他们与你自己的键图。CTRL + K,然后:
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
只需按ctrl + shift + p,然后输入'fold'。 将显示所有关于(un)fold的键绑定。 如果ctrl k不起作用,可能是因为vim扩展覆盖了键。 在这种情况下,您应该修改设置。Json(按CTRL + shift + p,然后键入'settings')
"vim.handleKeys": {
"<C-k>": false,
},
这是用于折叠和展开代码的最新内置(默认)键盘快捷键
键盘快捷键
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 code扩展或用户将改变键盘绑定(快捷键)。所以最好的选择是这样的
view->命令面板OR cntrl+shift+p . view->命令面板 输入“fold”,它会提示折叠和展开以及快捷方式。您可以键入快捷方式,而不是命令面板
eg:
折叠所有
展开所有
更多信息在这里:区域扩展https://marketplace.visualstudio.com/items?itemName=maptz.regionfolder
在安装扩展并使用python之后,它是这样工作的:
# region ARBITRARY_REGION_NAME
code goes here...
# endregion
同样,选择想要的区域,使用Ctrl+M+Ctrl+R。(即:先按住Ctrl键,再按m键,放开m键,再按r键,全部放开)