Как свернуть разделы кода в Visual Studio Code для Windows?

Как мне свернуть или свернуть разделы кода в Visual Studio Code?

Эта функция поддерживается?

Ответ 1

Свертывание развернуто и теперь реализуется начиная с версии 0.10.11 кода Visual Studio. Доступны следующие сочетания клавиш:

  • Fold складывает внутреннюю незакрепленную область у курсора:

    • Ctrl + Shift + [ в Windows и Linux
    • + + [ в macOS
  • Развернуть Развернуть свернутую область в курсоре:

    • Ctrl + Shift + ] в Windows и Linux
    • + + ] в macOS
  • Fold All сворачивает все регионы в редакторе:

    • Ctrl + K, Ctrl + 0 (ноль) в Windows и Linux
    • + K, + 0 (ноль) в macOS
  • Развернуть все Развернуть все регионы в редакторе:

    • Ctrl + K, Ctrl + J в Windows и Linux
    • + K, + J в macOS

Ответ 2

Начиная с кода Visual Studio версии 1.12.0, апрель 2017 г., см. Раздел " Основные операции редактирования> Складывание " в документации.

Ключи по умолчанию:

Сложить все: CTRL + K, CTRL + 0 (ноль)

Уровень сгиба [n]: CTRL + K, CTRL + [n] *

Развернуть все: CTRL + K, CTRL + J

Регион сгиба: CTRL + K, CTRL + [

Развернуть регион: CTRL + K, CTRL + ]

* Fold Level: чтобы сложить все, кроме самых внешних классов, попробуйте CTRL + K, CTRL + 1

Mac: используйте вместо CTRL (спасибо Prajeet)

Ответ 3

v1.39 добавляет возможность переключать сворачивание с помощью команды editor.toggleFold.

По умолчанию он связан с Ctrl + K Ctrl + L. Смотрите https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_39.md#toggle-folding.


Свертывание кода по регионам пришло с v1.17. Сворачивание по регионам документации. И v1.19 и 1.23.

TypeScript/JavaScript: //#region and //#endregion and //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

У каждого языка также есть фрагменты, доступные для маркеров. Введите "#" и вызовите завершение кода, чтобы увидеть их. Чтобы настроить региональные маркеры для вашего языка, обратитесь к поставщику языковых расширений.

v1.23 добавлены области CSS/SCSS/Less сворачивания кода:

CSS/SCSS/Less:         /* #region */ and /* #endregion */ or /*#region*/ and /*#endregion*/
SCSS/Less:             // #region and // #endregion

v1.35 добавлено:

Go:                   // region, // endregion and // #region, // #endregion

v.1.36 добавлен шеллскрипт, см. [проблема с github: добавление маркеров свертывания шеллскрипта].4:

shellscript:          # region and # endregion

Ответ 4

Эта функция теперь доступна в стандартной сборке. Чтобы отобразить элементы управления свертыванием/развертыванием, необходимо навести курсор мыши на область справа от номеров строк, как показано на этом снимке экрана:

Enter image description here

Ответ 5

Сокращение/расширение по умолчанию:

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

Ответ 6

Вы должны добавить пользовательские настройки:

{
    "editor.showFoldingControls": "always",
    "editor.folding": true,
    "editor.foldingStrategy": "indentation", 
}

Ответ 7

Если ни один из ярлыков не работает (как у меня), в качестве обходного пути вы также можете открыть палитру команд (Ctrl + 3 или Вид → Палитра команд...) и набрать в fold all:

enter image description here

Ответ 8

Свертывание теперь поддерживается в версии 1.0:

Ярлыки сворачивания исходного кода

Есть новые действия свертывания, чтобы свернуть области исходного кода на основе их уровня сворачивания.

Существуют действия для сворачивания уровня 1 (Ctrl + K Ctrl + 1) до уровня 5 (Ctrl + K Ctrl + 5). Чтобы развернуть, используйте "Развернуть все" (Ctrl + Shift + Alt + ]).

Действия сворачивания уровня не применяются к области, содержащей текущий курсор.

У меня была проблема с поиском кнопки ] на моей клавиатуре (норвежская раскладка), и в моем случае это была кнопка Å. (Или две кнопки влево и одна вниз, начиная с кнопки возврата.)

Ответ 9

Ctrl + K + 0: сложить все уровни (пространство имен, класс, метод, блок)

Ctrl + K + 1: пространство имен

Ctrl + K + 2: класс

Ctrl + K + 3: методы

Ctrl + K + 4: блоки

Ctrl + K + [или]: текущий блок курсора

ctrl + k + j: развернуть

Ответ 10

С помощью JavaScript:

//#region REGION_NAME
   ...code here
//#endregion

Ответ 11

Начиная с версии 1.3.1 (2016-07-17), Block Collapse намного удобнее.

Любая строка, за которой следует строка с отступом, будет иметь символ "-", чтобы разрешить коллапс. Если блок свернут, он будет заменен символом "+", который откроет свернутый блок.

Функция (Ctrl + Shift + Alt + ]) по-прежнему влияет на все блоки, закрывая один уровень. Каждое повторное использование закрывало еще один уровень. (Ctrl + Shift + Alt + [) работает противоположным образом.

Ура, развал блока наконец работает с пользой.

Ответ 12

На Mac это клавиша RHS Command, K, а не левая для команд свертывания кода.

В противном случае левая клавиша Command удалит текущую строку, K.

Ответ 13

Эта функция теперь поддерживается, начиная с Visual Studio Code 1.17. Чтобы свернуть/свернуть блок кода, просто добавьте теги регионов, такие как //#region my block name и //#endregion если кодируете в TypeScript/JavaScript.

Пример:

Region Folding

Ответ 14

Расширение VSCode: Fold Level, одно нажатие клавиши до нужного уровня.

enter image description here

Ответ 15

Code folding controls inside the editor to expand nodes of XML-structured documents and source code in VsCode

Здесь нет технических советов, только простые настройки предпочтений VsCode.

Мне всегда удавалось показывать элементы управления свертыванием кода в VsCode, перейдя в "Настройки" и выполнив поиск "сворачивание". Теперь просто выберите, чтобы всегда показывать эти элементы управления. Это работает с кодом Typescript и HTML-шаблонами в решении Angular 8, с которым я его тестировал.

Это было проверено на VsCode Insiders 1.37.0, работающем в ОС Windows 10.

Show code folding controls always in VsCode

Ответ 16

Я хотел бы, чтобы Visual Studio Code мог обрабатывать:

#region Function Write-Log
Function Write-Log {
    ...
}
#endregion Function Write-Log

Прямо сейчас Visual Studio Code просто игнорирует это и не свернет его. Между тем Notepad++ и PowerGUI справляются с этим просто отлично.

Обновление: я только что заметил обновление для кода Visual Studio. Это сейчас поддерживается!

Ответ 17

В сборке Windows ярлык установлен на Alt + 0

Ответ 18

Вы можете использовать регионы. https://msdn.microsoft.com/en-us/library/9a1ybwek.aspx

Вы просто добавляете начальный и конечный тег области, и содержимое становится доступным. Как,

#region RegionsName
     your code here
#endregion

он работает только в С#