Come escludere i file dal "formato al salvataggio" in VSCode?


109

Attualmente nelle impostazioni di VSCode è possibile configurare il formato al salvataggio come segue:

"editor.formatOnSave": true

Voglio escludere alcune estensioni di file, ad esempio formattare solo JavaScript ma non i file HTML.


Su Mac, usa Ctrl + K Shift + SSu Linux, usaCtrl + K S
Joost van der Laan

Risposte:


190

È possibile utilizzare impostazioni specifiche della lingua per abilitarlo solo per una lingua specifica, ad esempio JavaScript:

"[javascript]": {
    "editor.formatOnSave": true
}

Per disabilitarlo per una lingua specifica, puoi cambiare l'impostazione predefinita globale su truee combinarlo con una lingua specifica false:

"editor.formatOnSave": true
"[javascript]": {
    "editor.formatOnSave": false
}

Tieni presente che le impostazioni specifiche della lingua si basano sugli identificatori della lingua anziché direttamente sulle estensioni dei file. C'è una richiesta di funzionalità aperta per consentire anche impostazioni specifiche dell'estensione di file .

Nei casi in cui l'ID della lingua non è abbastanza specifico, "files.associations"potrebbe essere utilizzato per rimappare i file con un'estensione specifica e / o in una directory specifica a un altro ID, ma ciò influenzerà anche l'evidenziazione della sintassi, il completamento del codice, ecc. Ad esempio, questo funzionerebbe per disabilitare la formattazione per i file JavaScript nelle outdirectory, ma verranno trattati come testo normale:

"[javascript]": {
    "editor.formatOnSave": true
},
"files.associations": {
    "**/out/**/*.js": "plaintext"
}

risposta molto buona. tuttavia è possibile applicare il formato al salvataggio su uno specifico modulo o cartella python ?? ... la soluzione alternativa Ho aperto questo modulo nelle sue finestre vscode.
kerbrose

Uno svantaggio nell'impostare, ad esempio, i *.infile come testo normale ( "files.associations": { "*.in": "plaintext" }è che disabilita l'evidenziazione del codice. C'è un modo per disabilitare la formattazione per i *.infile, ma dirgli di evidenziare come una determinata lingua?
Cole Johnson,

40

Se ti sei imbattuto in questa domanda come ho fatto io perché sei stato reindirizzato a causa di questa domanda VSCode: disabilita la formattazione di un file specifico (o estensione) che dice, questo è un duplicato (non mi sento così, perché lo volevo per un file specifico) e stai cercando una soluzione "una tantum":

VS Code ha una scorciatoia "adesso" (non so da quando) per salvare un file senza formattazione elencata sotto il comando workbench.action.files.saveWithoutFormatting- La combinazione di tasti predefinita dovrebbe essere

CTRL + K CTRL + SHIFT + S 

(tieni semplicemente premuto CTRL e quindi digita K + MAIUSC + S).

Su OS X la combinazione di tasti predefinita è

CMD + k quindi premere s


2
Non lo sapevo. Grazie! Quindi, posso avere 'FormatOnSave' abilitato, ma se voglio ancora salvare un file senza che venga formattato, tengo premuto Ctrl, quindi premo K + Maiusc + S L'ho appena provato. Eccezionale!
abhijit,

2
su Linux a gennaio 2020 è Ctrl + ke poi solos
ryanrain

0

Su Mac e Linux, usa Ctrl + K S

Su Windows, usa Ctrl + K Ctrl + Shift + S

Per controllare le scorciatoie da tastiera di VS Code: Ctrl + K, Ctrl + S(sì, quasi la stessa di sopra) e cerca "salva senza formattazione"

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.