Risposte:
La piegatura è stata implementata e ora è implementata dalla versione 0.10.11 di Visual Studio Code . Sono disponibili queste scorciatoie da tastiera:
Piega piega la regione più interna non sovrapposta al cursore:
Unfold spiega la regione compressa al cursore:
Piega tutto piega tutte le regioni nell'editor:
Unfold All spiega tutte le regioni nell'editor:
Riferimenti: https://code.visualstudio.com/docs/getstarted/keybindings
F1
e digita Fold or Unfold
A partire da Visual Studio Code versione 1.12.0, aprile 2017, vedere la sezione Modifica di base> Piegatura nei documenti.
Le chiavi predefinite sono:
Piega tutto: CTRL+ K, CTRL+ 0(zero)
Livello piegatura [n]: CTRL+ K, CTRL+ [n]*
Spiega tutto: CTRL+ K, CTRL+J
Piega regione: CTRL+ K, CTRL+[
Regione spiegata: CTRL+ K, CTRL+]
* Livello piega: per piegare tutte le classi tranne quelle più esterne, prova CTRL+ K, CTRL+1
Mac: usa ⌘invece di CTRL(grazie Prajeet)
ctrl+k,ctrl+num
funzionano solo su numeri sopra qwerty e non su tastierino numerico
Il codice pieghevole per regioni è arrivato con v1.17. Piegatura per documentazione delle regioni . E v1.19 e 1.23 .
[In genere è possibile aggiungere uno spazio, ad esempio // region and // endregion
per //region and //endregion
e sarà anche il lavoro.]
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`
Importante: se non vedi la tua lingua nell'elenco:
Ogni lingua ha anche frammenti disponibili per i marcatori. Digita '#' e invoca il completamento del codice per vederli. Per configurare gli indicatori di regione per la tua lingua, contatta il fornitore dell'estensione lingua.
Quindi digitare #
e quindi Ctrl+ Spaceper vedere i marcatori di regione per qualsiasi lingua.
// region
e // endregion
non funzionano con VS Code versione 1.22 (non ho ancora testato versioni precedenti o successive). Ma // #region
e // #endregion
opere (si noti il '#' e lo spazio in entrambi). In questo modo ESLint (se si sta utilizzando) non mostrerà errori se la spaced-comment
regola è attiva (ovvero non impostata su 'off' o 0).
/* #region Foo Bar */
e/* #endregion */
//region
e //endregion
sono per JavaScript.
<!-- #region --> elements <!-- #endregion -->
. Visualizza il testo che segue la regione # nella sezione piegata. Si piega correttamente dalla #regione corrente alla #gregione corrispondente, anche se ce ne sono altri nidificati, proprio come parentesi in qualsiasi equazione. Ricorda l'impostazione di piega per le aree nidificate. Ctrl + k + Ctrl + [e Ctrl + k + Ctrl +] chiudi / apri correttamente le pieghe sul cursore. (che mi sembra un po 'arretrato, ma whatevah) Grandi cose!
Questa funzione è ora disponibile nella build standard. Per visualizzare i controlli di compressione / espansione, è necessario passare il mouse sull'area a destra dei numeri di riga, come mostrato in questo screenshot:
È necessario aggiungere le impostazioni utente:
{
"editor.showFoldingControls": "always",
"editor.folding": true,
"editor.foldingStrategy": "indentation",
}
I collegamenti predefiniti per comprimi / estendi sono:
Ctrl+ Shift+ [: "Piega"
Ctrl+ Shift+ Alt+ [: "Piega tutto"
Ctrl+ Shift+ ]: "Spiega"
Ctrl+ Shift+ Alt+ ]: "Spiega tutto"
Oppure vai su keybindings.json e cambia come desideri.
Per esempio:
{
"key": "cmd+k cmd+m",
"command": "editor.foldAll",
"when": "editorFocus"
},
{
"key": "cmd+m cmd+k",
"command": "editor.unfoldAll",
"when": "editorFocus"
},
ctrl+shift+alt+[ "Unfold all"
hai scritto [
invece di ]
. Correggimi se sbaglio.
Se nessuna delle scorciatoie funziona (come per me), come soluzione alternativa puoi anche aprire la tavolozza dei comandi ( Ctrl+ 3o Visualizza -> Tavolozza dei comandi ...) e digitare fold all
:
Il collasso è ora supportato nella versione 1.0 :
Tasti di scelta rapida per il codice sorgente
Esistono nuove azioni di piegatura per comprimere le regioni del codice sorgente in base al loro livello di piegatura.
Ci sono azioni per piegare il livello 1 ( Ctrl+ K Ctrl+ 1) al livello 5 ( Ctrl+ K Ctrl+ 5). Per dispiegare, usa Unfold All ( Ctrl+ Shift+ Alt+ ]).
Le azioni di piegatura del livello non si applicano alla regione che contiene il cursore corrente.
Ho avuto un problema a trovare il ]
pulsante sulla mia tastiera (layout norvegese) e nel mio caso era il Å
pulsante. (O due pulsanti a sinistra e uno in basso a partire dal pulsante backspace.)
Con JavaScript:
//#region REGION_NAME
...code here
//#endregion
A partire dalla versione 1.3.1 (17-07-2016), Block Collapse è molto più conveniente.
Qualsiasi riga seguita da una riga rientrata avrà un carattere "-" per consentire il collasso. Se il blocco viene compresso, verrà sostituito da un carattere "+" che aprirà il blocco compresso.
( Ctrl+ Shift+ Alt+ ]) Influenzerà comunque tutti i blocchi, chiudendo un livello. Ogni uso ripetuto ha chiuso un altro livello. ( Ctrl+ Shift+ Alt+ [) Funziona in modo opposto.
Evviva, il blocco dei blocchi finalmente funziona utilmente.
Non ci sono consigli tecnici qui, solo semplici aggiustamenti delle preferenze di VsCode.
Sono riuscito a mostrare i controlli di piegatura del codice sempre in VsCode andando su Preferenze e cercando 'pieghevole'. Ora seleziona solo per mostrare sempre questi controlli. Funziona con il codice Typescript e l'HTML dei modelli nella soluzione Angular 8 con cui l'ho provato.
Questo è stato testato con VsCode Insiders 1.37.0 in esecuzione su un sistema operativo Windows 10.
v1.42 sta aggiungendo alcuni raffinati perfezionamenti all'aspetto e al funzionamento delle pieghe. Vedi https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_42.md#folded-range-highlighting :
Evidenziazione della gamma piegata
Gli intervalli piegati ora sono più facili da scoprire grazie a un colore di sfondo per tutti gli intervalli piegati.
Piega il colore di evidenziazione Tema: Dark +
La funzione è controllata dall'editor di impostazione.foldingHighlight e il colore può essere personalizzato con l'editor di colori.foldBackground.
"workbench.colorCustomizations": { "editor.foldBackground": "#355000" }
Perfezionamenti pieghevoli
Shift + Click
sull'indicatore di piegatura prima piega solo le gamme interne.Shift + Click
di nuovo (quando tutti gli intervalli interni sono già piegati) piegherà anche il genitore.Shift + Click
di nuovo spiega tutto.
Quando si utilizza il comando Piega (kb (
editor.fold
))] su un intervallo già piegato, il successivo intervallo genitore non piegato verrà piegato.
Su un Mac, è il tasto Comando RHS ⌘K, non a sinistra per i comandi di piegatura del codice.
In caso contrario, il tasto Comando mano sinistra cancellerà la riga corrente, ⌘K.
Questa funzionalità è ora supportata dal Visual Studio Code 1.17 . Per piegare / comprimere il blocco di codice, basta aggiungere i tag di regione, come //#region my block name
e //#endregion
se codificare in TypeScript / JavaScript.
Esempio:
Estensione VSCode: Piega livello , una chiave si piega al livello desiderato.
Vorrei che Visual Studio Code potesse gestire:
#region Function Write-Log
Function Write-Log {
...
}
#endregion Function Write-Log
Al momento il codice di Visual Studio lo ignora e non lo comprime. Nel frattempo Notepad ++ e PowerGUI lo gestiscono bene.
Aggiornamento: ho appena notato un aggiornamento per Visual Studio Code. Questo è ora supportato!
Nota: queste scorciatoie funzionano come previsto se modifichi keybindings.json
Non ero contento delle scorciatoie predefinite, volevo che funzionassero come segue:
Per configurarlo:
Preferences: Open Keyboard Shortcuts (JSON)
( Ctrl+ ⇧ Shift+ p)Hai già delle combinazioni di tasti personalizzate per fold / unfold? Quindi dovrai sostituirli.
{
"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"
},
Fold Level
risposta di Michael Fulton aveva più senso per me.