Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Visual Studio Code: problemi, output e terminali

Come funzionano i pannelli del terminale, dei problemi e degli output in Visual Sudio Code? Quali estensioni lo influenzano?
Come funzionano i pannelli del terminale, dei problemi e degli output in Visual Sudio Code? Quali estensioni lo influenzano?
Link copiato negli appunti

Un ultimo pannello dell'editor da introdurre è quello dei "Problemi". Nome improprio in realtà in quanto ospita più schede di diversa utilità, come il terminale, l'output dei programmi e la console di debug.

Aprire il pannello dei problemi

Dalla barra del menù in alto cliccare su "Selezione", quindi scegliere tra le 4 voci:

  • "Problemi"
  • "Output"
  • "Console di debug"
  • "Terminale"

aprire la tab da menubar

Una qualunque delle quattro aprirà il pannello inferiore:

aspetto del pannello dei problemi

Problemi

La prima scheda in ordine è quella dei "Problemi" ("Problems", in inglese).

Lo scopo è quello di creare una lista dei problemi che l'editor rileva nel codice, comprende anche eventuali consigli sulla quality code e commenti segnalibro (come il commento /*TODO*/).

scheda problemi

Questa scheda dipende fortemente dalle estensioni installate, in particolare dai language server, linter e sonar.

Personalmente mi sento di consigliarvi di installare SonarSource.sonarlint-vscode, ovvero Sonarlint, un estensione che in tempo reale fornisce diversi consigli su come migliorare la quality code. E lo fa per diversi linguaggi.

Ricerca dei problemi

Tramite la barra di testo sulla destra è possibile effettuare delle ricerche utilizzando anche caratteri jolly per sostituire path o nomi generici

ricerca tab problemi

Funzioni di visualizzazione dei problemi

Come impostazione predefinita la scheda dei problemi restituisce una visualizzazione ad "albero", ovvero ogni problema viene visualizzato sotto il nome del file che lo ha causato, così da poter vedere con chiarezza su quale file bisogna attuare le proprie correzioni.

Le voci son normalmente espanse, e si possono ridurre cliccando il pulsante apposito con il segno meno

Riduci lista problemi

È anche possibile cambiare la modalità di visualizzazione da albero a "elenco"

visualizzazione ad elenco

Ci verrà mostrata una tabella con varie voci:

  • Il codice del problema.
  • Il messaggio.
  • Il file.
  • L'estensione che individua il problema

header tabella elenco

Output

La scheda di output è utile al controllo di quelle attività che vengono eseguite in background nell'IDE, come estensioni, log del software, language server o task custom.

Quando si apre la scheda apposita si può scegliere con un menù a tendina il tipo di attività da monitorare.

Seleziona tipologia output

Ad esempio selezionando Git è possibile vedere il log delle operazioni eseguite dietro le quinte da Visual Studio Code quando interroga il repository del nostro codice.

esempio output git

Non è comunque una tab che capita spesso di tenere sott'occhio.

Terminale

Una delle tab più utili del pannello in basso è sicuramente quella del terminale. Consente infatti di utilizzare l'interprete dei comandi del proprio sistema, scegliere tra i vari interpreti presenti e serve anche a mostrare output di task e programmi eseguiti.

vista terminale

Il pannello si apre con quello che è il terminale predefinito usato dal sistema operativo, probabilmente avrete:

  • powershell 6 per Windows;
  • bash per sistemi Linux;
  • zsh per i nuovi MacOS (bash per quelli vecchi).

Aprire nuovi terminali

È possibile tenere aperti più terminali contemporaneamente, per aprirne uno nuovo basta cliccare l'icona a forma di "+" in alto sulla destra.

aggiungere un terminale

Una volta aperto un secondo terminale ci troveremo la lista sulla destra.

vista con più terminali

Portandosi con il mouse su ogni istanza in lista possiamo notare due nuove icone:

  • La prima, che ricorda una finestra con due ante, serve per creare una vista condivisa di quel terminale con un altro (nuovo, aperto sul momento).
  • La seconda, che rappresenta un cestino, serve a chiudere quel determinato terminale

Tasti cancella e apri nuovo terminale nel riquadro

Scegliere l'eseguibile

Se si hanno più terminali eseguibili installati nel proprio sistema è possibile, in fase di apertura del terminale, specificare quello che si vuole aprire.

Accanto al simbolo "+" vi è una freccia che apre un menù a discesa, premendolo si avranno tutte le scelte individuate

Diversi eseguibili per terminale

Vista condivisa

Anche in questo caso è possibile creare più riquadri nella stessa schermata per inserire più terminali.

Il primo modo per farlo consiste nell'utilizzare il pulsante apposito per creare un terminale che condivide già la vista.

aggiunta riquadro

Come risultato si vedranno due terminali che condividono metà schermata e sulla destra nella lista saranno collegati da una struttura ad albero.

esempio due riquadri

Se si hanno già aperti più terminali è possibile trascinarne uno su una vista per creare un ulteriore riquadro.

Aggiunta riquadro con mouse

Per rimuoverne uno dal gruppo di riquadri basta premere con il tasto destro e selezionare "Unsplit".

staccare riquadri

Personalizzare i terminali aperti

È possibile personalizzare colori e icone dei terminali aperti, per avere un feedback visivo immediato del loro scopo.

terminali persnalizzati

Per farlo basta premere il tasto destro del mouse su uno dei terminali aperti.

Come personalizzare i terminali

Sessione ripristinata

Dopo la chiusura di Visual Studio Code il contenuto dei terminali viene salvato (non l'esecuzione, ma solo il contenuto testuale) per essere poi mostrato nella successiva riapertura del programma.

Sessione ripristinata terminale

Task e Run

Le esecuzioni dei task vengono visualizzate tramite terminale.

risultato di un task su terminale

Similmente, alcune configurazioni di avvio dei programmi, vengono anch'esse visualizzate direttamente nel terminale

Esempio esecuzione programma Java su terminale

Nella maggior parte dei casi tasks e avvio devono essere adeguatamente configurati prima di essere eseguiti, alcune estensioni come quelle di Java fanno comunque già un ottimo lavoro che non necessita di modifiche manuali.

Impostazioni utili per il terminale

Anche il terminale necessita di qualche piccola configurazione per essere utilizzato al meglio.

Terminale predefinito

Innanzitutto se si è in possesso di altri eseguibili per il terminale, si può configurare quello predefinito.

Aprire la command palette (CTRL+SHIFT+p) quindi scrivere "Terminal default profile" (o "Terminale Seleziona profilo predefinito").

Selezione terminale di defautl

Quindi cliccare e scegliere il profilo.

Selezione nuovo terminale di default

In alternativa è possibile cercare e scrivere manualmente le impostazioni, in base al sistema operativo:

  • Su Windows cercare terminal.integrated.defaultProfile.windows.
  • Su Linux cercare terminal.integrated.defaultProfile.linux.
  • Su MacOS cercare terminal.integrated.defaultProfile.osx.

cambiare terminale da impostazioni

Font del terminale

Per supportare l'utilizzo di temi particolari della shell (come ad esempio la powerline) è possibile impostare un carattere personalizzato nel terminale cambiando l'impostazione con id terminal.integrated.fontFamily.

Impostazioni font per terminale

Combinazioni per il terminale

Il sistema di shortcut di Visual Studio Code è normalmente prioritario sul terminale. Questo significa fondamentalmente che se la stessa shortcut è usata sia dal terminale che dall'editor di testo, quella del terminale viene ignorata.

Per evitare questo comportamento bisogna modificare l'opzione con id terminal.integrated.allowChords (togliere la spunta o impostare su false)

intercettare shortcut visual studio code

e controllare che la shortcut che si vuole bypassare non sia nella lista di terminal.integrated.commandsToSkipShell.

shortcut ignorate da terminale

Alcune shortcut son protette per scelta predefinita, la lista completa si può trovare cliccando su "Open the default settings JSON" nella descrizione dell'opzione.

Arrivare a lista di eccezioni di shortcut

Una volta che si aprono le configurazioni di sistema, basta cercare (con CTRL+f) l'id dell'impostazione e vedere la lista scritta subito sopra

lista intera di shortcut eccezione da impostazioni globali

Se la scorciatoia è presente non sarà possibile usarla nel terminale, a meno di aggiungerla nuovamente alla lista ma con il carattere - che antecede il codice.

Ad esempio la scorciatoia CTRL+e è associata alla ricerca dei file, per far si che nel terminale venga ignorata basta scrivere -workbench.action.quickOpen.

Esempio per eliminare un eccezione

Console Di Debug

La console di debug viene usata sia per eseguire alcuni programmi dalle estensioni (ad esempio il Run dei programmi eseguiti con node) sia per interrogare le variabili durante una sessione di debug.

Esempio di debug console attiva

Il debug e il running dei programmi sono sezioni dell'editor che vanno configurate a dovere e il loro funzionamento, così come le opzioni che ne derivano, variano da linguaggio a linguaggio. La conseguenza di una configurazione errata potrebbe essere ad esempio l'impossibilità di interrogare il valore delle variabili a partire dal loro vero nome.

Language Server e linter per linguaggio consigliati

Come già ricordato più volte, alcuni di questi pannelli ottengono il massimo della loro utilità se accompagnati dalle giuste estensioni.

Ecco una lista di quelle che potrebbero comunemente servire di più:

  • Per Java: Red hat Java Language server redhat.java
  • Per Angular: Angular language service Angular.ng-template
  • Per Python: Pylance ms-python.python
  • Per molti altri linguaggi: Sonarlint

Ti consigliamo anche