Reimpostare o rimuovere VS Code senza perdere la configurazione
Trascinare Visual Studio Code nel Cestino toglie l'editor e lascia intatta la configurazione. È voluto, documentato, ed è il motivo per cui la maggior parte delle persone ritrova VS Code esattamente come l'aveva lasciato dopo una reinstallazione con cui speravano di risolvere qualcosa.
Se vuoi ripartire da zero, rimuovere solo l'app non basta.
Prima di eliminare i file di supporto, confronta la procedura ufficiale attuale di VS Code. Se il produttore offre un programma dedicato o un comando nell’app, usalo per primo e tratta dopo solo i residui di cui puoi confermare il proprietario.
La tua configurazione sta fuori dall’app
VS Code conserva lo stato utente fuori dal bundle dell'applicazione:
~/Library/Application Support/Code
~/.vscode-shared
~/.vscode
La prima contiene impostazioni, scorciatoie, stato delle aree di lavoro e dati scritti dalle estensioni. L’ultima contiene le estensioni. La guida attuale elenca anche .vscode-shared; può non esistere su ogni Mac, ma fa parte di un ripristino completo quando è presente.
La documentazione spiega chiaramente cosa succede se le rimuovi: ti riporta allo stato precedente all'installazione di VS Code e reimposta tutte le impostazioni. È la descrizione corretta di un ripristino di fabbrica, ma il risultato sbagliato se volevi solo sbloccare una finestra bloccata.
Decidi prima cosa vuoi ottenere
Tre operazioni diverse vengono chiamate disinstallazione, e ognuna elimina cose diverse.
Reinstallare per sistemare una build rotta: rimuovi solo l'app. Torna tutto. Se il problema era nelle impostazioni o in un'estensione, non ottieni nulla, ed è il risultato abituale.
Partire da un editor pulito: rimuovi l'app e le posizioni di stato elencate. Esporta prima le impostazioni se ne vuoi tenere qualcuna.
Liberare spazio: non rimuovere indiscriminatamente queste posizioni. Lo spazio è quasi sempre nelle cache per progetto piuttosto che nell'editor, e c'è un articolo a parte per quello.
Settings Sync decide al posto tuo
Se Settings Sync è attivo e sei connesso a un account GitHub o Microsoft, impostazioni, scorciatoie da tastiera, snippet e elenco delle estensioni sono salvati in quell'account. Questo riduce il rischio di un ripristino, ma non salva tutti i file locali scritti dalle estensioni.
Se Settings Sync è disattivato, queste posizioni possono contenere l'unica copia. Un settings.json curato per due anni è un file che hai scritto tu, non una cache, e non ne esiste un'altra copia.
Controlla prima di eliminare. Si trova nel menu dell'account in fondo alla barra delle attività, e ci vuole più tempo a leggere questa frase che a dare un'occhiata.
Esporta l'elenco delle estensioni anche se elimini tutto
code --list-extensions > ~/Desktop/vscode-extensions.txt
Funziona finché VS Code è ancora installato e trasforma la ricostruzione in una procedura ripetibile invece di un esercizio di memoria. Se il comando code non è nel path, VS Code lo installa dalla Palette comandi, voce Shell Command.
Lo strumento da riga di comando e i residui
Rimuovere l'app lascia il comando shell code che punta a un bundle che non esiste più, insieme alle solite cache, log e allo stato salvato dell'applicazione. Quelli si buttano via in ogni caso.
I file legati al progetto non c'entrano per niente. Una cartella .vscode dentro un repository appartiene a quel progetto e lo segue nel controllo di versione; rimuovere l'editor non dovrebbe toccarla.
Vedere le dimensioni prima di decidere
Queste cartelle possono crescere senza farsi notare. Gli host delle estensioni conservano cache dei language server e alcune estensioni creano indici di diversi gigabyte: ecco perché i dati associati all'editor possono occupare più spazio dell'app stessa.
Mole mostra le posizioni associate con le loro dimensioni accanto all'app, così la differenza tra una cache di estensione da svuotare e una directory di impostazioni da conservare è visibile prima di toccare qualsiasi cosa. Le rimozioni finiscono nel Cestino, che è il posto giusto per una directory di cui potresti aver bisogno un'ora dopo.
Cosa porta Settings Sync e cosa no
Porta le impostazioni, le scorciatoie da tastiera, gli snippet utente, l'elenco delle estensioni e alcuni stati dell'interfaccia. Accedi con lo stesso account su un'altra macchina e questi tornano da soli.
Non porta lo stato dell'area di lavoro, né i dati che le estensioni scrivono su disco. Un
.vscode/settings.json all'interno di un repository viaggia con quel repository e non
non dipende da Settings Sync. Gli indici delle estensioni, le cache dei language server e lo stato di accesso
non lo seguono: un'estensione reinstallata potrebbe comunque dover essere configurata di nuovo.
Il menu account in fondo alla barra delle attività mostra lo stato corrente. Se la sincronizzazione è attiva, la parte sincronizzata può essere ripristinata dopo un reset. I dati locali delle estensioni richiedono comunque un backup; senza Sync, considera ogni posizione come l’unica copia.