如何在Visual Studio代码中折叠或折叠代码节?

支持该特性吗?


当前回答

下面是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

其他回答

更多信息在这里:区域扩展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键,全部放开)

自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"
},

只需按ctrl + shift + p,然后输入'fold'。 将显示所有关于(un)fold的键绑定。 如果ctrl k不起作用,可能是因为vim扩展覆盖了键。 在这种情况下,您应该修改设置。Json(按CTRL + shift + p,然后键入'settings')

"vim.handleKeys": {
  "<C-k>": false,
},

注意:这些快捷方式只有在编辑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"
    },