È probabilmente molto sottovalutata la capacità di saper organizzare i dati in tabelle tramite strumenti preesistenti, poter operare su di esse in maniera rapida e precisa senza perdersi in problemi di formattazione. Vediamo quali strumenti Visual Studio Code fornisce per lavorare con CSV e tabelle
CSV
I CSV sono forse i dati più comuni ad essere trovati sotto forma di tabella, sia per la facilità con cui vengono modificati, sia per la grande compatibilità con molti software che riescono a leggerli in forma tabellare. Visual Studio Code offre molte estensioni per manipolarli, elenchiamone alcune tra quelle considerate più utili.
Rainbow CSV
Questa estensione funziona un po' come un "code highlighter" ma per i file CSV, la sua unica funzione è quella di dividere per colore righe e colonne del CSV. L'id dell' estensione mechatroner.rainbow-csv
.
Uso
Una volta installata non è necessario fare altro per attivarne le funzioni, basta aprire un file CSV e si vedrà la colorazione nell'immediato:
MinMax
Questa estensione permette di trovare facilmente (tramite testo evidenziato) il numero più piccolo ed il numero più grande del CSV (non linea per linea, ma dell'intero CSV).
L'id dell' estensione è hkato193.jp-katohirohito-extension-vscode-minmax-in-csv
.
Uso
Una volta installata basta aprire un file CSV e il control panel (Ctrl+Shift+P) per poi digitare min/max
.
bisogna quindi premere invio sulla voce selezionata ("Highlight min/max value") e conseguenza si potranno notare il minimo e il massimo evidenziati:
Edit CSV
Sicuramente l'estensione più importante per CSV, consente di accedere ad un editor dedicato che suddivide il CSV in una griglia. Ha diverse impostazioni che possono semplificare la visualizzazione e la modifica dei file. L'id dell'estensione è janisdd.vscode-edit-csv
.
Uso
Dopo aver aperto un file CSV è visibile in alto sulla destra un nuovo pulsante "Edit CSV"
Cliccando su di essa si apre un nuovo tipo di editor con una tabella, varie opzioni, pulsanti e il CSV ordinato su righe e colonne.
In questa interfaccia si può:
- modificare, cella per cella, i singoli valori di ogni campo.
- Copiare ed incollare più valori alla volta.
- Ricaricare la tabella usando diversi parametri, cambiando separatore, abilitando la lettura delle stringhe o deii commenti.
- Aggiungere orimuovere righe e colonne.
- Visualizzare il CSV usando la prima riga come header.
- Ordinare le righe per valori crescenti e decrescenti delle colonne.
- Spostare arbitrariamente righe e colonne.
- ed altro..
Ricarica della tabella
Lo standard CSV presenta diverse varianti. Chi usa come delimitatore il ;
anziché il carattere ,
, chi utilizza le virgolette per le stringhe e chi non usa nulla, i commenti con #
e così via. EditCSV riesce ad identificare un gran numero di casi, ma potrebbe fallire, totalmente o parzialmente nel parsing. Bisogna quindi ricaricare il file in base a quelli che sono i parametri corretti. Nell'interfaccia di editing della tabella si deve quindi espandere la sezione "Read Options":
Una volta estese si possono notare più opzioni:
- "Has Header": abilitando questa spunta si avrà la possibilità di avere la prima riga usata per i nomi delle colonne.
- "Delimiter": indica il carattere usato per dividere le varie celle di una riga.
- "Comment": rappresenta il carattere che, inserito all'inizio di riga, introduce un commento.
- "Quote Char": rappresenta il carattere che delimita inizio e fine di una stringa.
- "EscapeChar": rappresenta il carattere che, inserito prima di un carattere "Quote Char", ne permette l'utilizzo internamente ad una stringa.
- "Reset data and Apply read options": tranne per la spunta "Has Headers", se si cambiano le impostazioni di questa sezione è necessario premere tale pulsante per visualizzare gli effettivi cambiamenti e ricaricare la tabella.
Una volta applicati i filtri è possibile premere il pulsante di reset e confermare. Ogni modifica sulla tabella verrà cancellata (si deve quindi salvare il file nel caso di modifiche),
Le scritture
Aprendo il pannello con le opzioni di lettura si può vedere a lato un pannello con le "Write options". Le opzioni riflettono quelle di lettura:
- "Write Header": abilitare quest'opzione per scrivere la prima riga.
- "Delimiter": indica il carattere usato per dividere le celle di una riga.
- "Comment": rappresenta il carattere che, inserito all'inizio di riga, introduce un commento.
- "Quote Char": rappresenta il carattere che delimita inizio e fine di una stringa.
- "EscapeChar": rappresenta il carattere che, inserito prima di un carattere "Quote Char", ne permette l'utilizzo internamente ad una stringa.
- "Quote All field": l'unico campo che differisce dalla lettura, esso tratta tutte le celle come stringhe, di conseguenza usa il carattere di "quote" su tutte.
Una volta applicati i filtri si possono verificare i risultati in anteprima sulla destra. Per farlo è necessario premere il pulsante di ricarica (in alto accanto a "Preview"), l'anteprima apparirà sotto.
Premendo invece il pulsante a forma di foglio piegato con dietro la cartella portablocco con molla, viene generata l'anteprima e quindi copiata negli appunti di sistema (in modo da poterla poi manualmente incollare dove la si vuole).
Le opzioni di visualizzazione della tabella
Sempre nella scheda delle read e write options, sull'estrema destra, si possono notare ulteriori icone. Queste servono a gestire e personalizzare le dimensioni di celle e righe della tabella
Partendo dalla sinistra:
- L'icona del righello ridisegna la tabella.
- L'icona della freccia bilaterale orizzontale restringe le colonne alla dimensione "ideale", quella con cui si vedono tutti i contenuti delle celle.
- L'icona della freccia bidirezionale verticale restringe le righe alla loro dimensione "ideale", quella con cui si vedono tutti i contenuti delle celle.
- L'icona delle due frecce a vortice ricarica la tabella con il contenuto del file attuale, in presenza di modifiche non salvate questo pulsante le elimina.
- L'icona con le barre verticali serve a "fissare" le righe in alto. Serve quando si hanno molte righe ma si vogliono tenere sempre visibili le prime (ad esempio per confronti o calcoli). Accanto si può trovare il numero di righe da fissare, Selezionare un numero maggiore di zero e cliccare sopra l'icona per visualizzare il risultato.
- L'icona con le barre orizzontali serve a "fissare" le colonne a sinistra. Utilw quando si hanno molte colonne ma si vogliono tenere sempre visibili le prime. Accanto si può trovare il numero di colonne da fissare.
- L'icona nella matita barrata disattiva tutte le operazioni di scrittura e ricaricamento della tabella, lasciandola in "sola lettura".
Modifica della tabella
È ovviamente possibile modificare ogni singola cella della tabella, basta cliccarci sopra e modificare il valore.
Si possono evidenziare più celle, copiarne il valore ed incollarlo. Oppure cancellare le celle o tagliarne il contenuto.
Cliccando a sinistra del nome di una colonna o su un numero di riga si possono selezionare interamente righe e colonne.
Aggiungere, rimuovere, rinominare, ordinare e spostare colonne
Si può interagire con le celle che contengono i titoli della colonna in 4 diversi modi:
- cliccando sulla sinistra del nome si può selezionare l'intera colonna.
- Cliccando sul titolo si potrà decidere l'ordinamento per valori crescenti o decresceti delle righe.
- Passandoci sopra il cursore del mouse appare il simbolo del cestino per eliminare la colonna.
- Sul lato superiore del titolo apparirà una manina che permetterà di spostare manualmente la colonna e tutti i valori sotto di essa.
A queste possibilità si aggiungono quelle date dal click del pulsante destro del mouse, che differiscono in base allo stato dell'opzione "Has Header" in lettura. Se il CSV è letto senza header si avranno meno opzioni:
- "Insert row above": inserisce una riga prima della cella corrente.
- "Insert row below": inserisce una riga dopo della cella corrente.
- "Insert Column Left": inserisce una colonna a sinistra.
- "Insert Column right": inserisce una colonna a destra.
- "Remove column": elimina una colonna.
- "Alignment": apre ad un sotto menu che determina la posizione del testo nella cella (colonna se si ha evidenziato l'intera colonna), le prime 4 opzioni son allineamenti orizzontali le ultime 3 verticali:
- Left
- Center
- Right
- Justify
- Top
- Middle
- Bottom
- "Resize column to ...": ridimensiona la colonna alla dimensione ideale.
- "Resize row to ...": ridimensiona la riga alla dimensione ideale.
Se si ha selezionato l'opzione per avere la prima riga come colonna header, si può notare una voce diversa, ovvero "edit header cell".
Cliccandola si può rinominare la colonna.
Aggiungere, rimuovere, spostare righe
Per selezionare invece una riga basta cliccare sul numero che porta.
Una volta selezionato il cursore si trasforma in una manina. Cliccando, tenendo premuto e trascinandola si potrà spostare la riga. Passando con il cursore del mouse sul numero uscirà l'icona a forma di cestino per poter eliminare la riga.
Con il tasto destro sarà possibile avere le stesse opzioni che si avevano sulla colonna con una sola differenza.
Adesso è presente l'opzione "Remove Row" che elimina la riga.
Ridimensionare manualmente le celle
Per ridimensionare le celle bisogna posizionarsi con il mouse all'estremità finale di una riga (parte di sotto) o di una colonna (a destra) in corrispondenza dell'header o del numero di riga.
Analisi delle somme
Per verificare parametri e somme numeriche esiste un pannellino a sé stante che restituisce alcune informazioni se le celle evidenziate contengono dei numeri.
Il pannello restituisce inoltre diverse informazioni utili:
- Somma dei valori nella cella.
- Numero di celle selezionate.
- Celle non vuote.
- Righe selezionate.
- Colonne selezionate.
- Numero righe totali.
- Numero colonne totali.
- Stile numerico, qui si può decidere se un numero decimale è scritto con la virgola o con il punto.
Barra degli strumenti
Poco sopra la tabella vi è una barra degli strumenti molto utile
In sequenza si possono vedere le seguenti opzioni:
- "Add row", precede due freccette tramite le quali si può aggiungere una riga sopra o sotto quella in cui vi son le celle selezionate.
- "Add column", precede due freccette tramite le quali si può aggiungere una colonna a sinistra o destra quella in cui vi son le celle selezionate.
- "Apply changes, to file and save" che applica i cambiamenti al file e li salva.
- "Apply changes, to file" che applica i cambiamenti al file senza salvare.
- "Hide comments", che nasconde le righe che iniziano per il carattere identificato come commento.
- "Tools", contiene a sua volta due opzioni:
- "Trim", elimina gli spazi bianchi all'inizio e alla fine di ogni cella.
- "Transpose", che trasforma le righe in colonne e vice versa.
- "Help", che apre una finestra con alcune shortcut e informazioni dell'estensione.
Excel
Excel è un programma che tutti usano ma che probabilmente in pochi sanno usare veramente, offre svariate possibilità di ogni tipo tra macro, gestione dei dati, script e molto altro.
Excel Viewer
Si chiama Excel viewer ma consente anche la modifica (per quanto basilare) dei fogli di lavoro. L'id dell'estensione è GrapeCity.gc-excelviewer
.
Una volta installata si può aprire un file Excel direttamente dal File Explorer.
Modifiche base
Con un doppio click su una cella è possibile modificarne il valore.
È possibile anche selezionare più celle copiarle o tagliarle e quindi incollarle altrove.
Premendo sul nome di una colonna o una riga si può selezionarla interamente.
Menu
Usando il tasto destro su una cella è possibile aprire il menu di interazione.
Le opzioni disponibili sono:
- "Insert Row": per inserire una riga sopra quella attuale.
- "Delete Rows": per eliminare la riga attuale. Se si utilizza durante una selezione su più righe le elimina tutte.
- "Insert Column": per inserire una colonna prima di quella attuale.
- "Delete columns": per eliminare la colonna attuale. Se si utilizza durante una selezione su più colonne le elimina tutte.
Se si evidenzia un gruppo di celle, una riga, una colonna o l'intera tabella si può notare un ulteriore opzione, "Convert to table".
Questa opzione trasforma la selezione in una tabella Excel che poi può essere usata per filtrare e ordinare le righe. Ad esempio, se applicato su metà tabella questo è il risultato visualizzato in Excel:
L'operazione non è reversibile direttamente, ma un ottimo workaround è quello di copiare il contenuto delle celle, cancellarle e incollarle.
Ordinare le righe
Si possono ordinare le righe in maniera crescente e decrescente cliccando sul nome della colonna a cui si vuole applicare il filtro di ordinamento, in corrispondenza dell'imbuto:
Selezionando le caselle è possibile nascondere, prima dell'ordinamento, le celle che non devono essere considerate durante l'operazione.
È possibile poi premere "Ascending" per l'ordinamento crescente o "Descending" per il decrescente.
Premendo su "Filter By Condition" è anche possibile impostare una condizione che filtri le righe solo per determinati parametri:
Gestire più fogli
Non si possono creare più fogli con questa estensione ma se son presenti più fogli sull'Excel originale vengono letti. In basso nell'editor si può selezionare il foglio di preferenza:
ASCII Tables
Spesso potrebbe essere necessario memorizzare una tabella senza usare nessun tipo di strumento particolare. Solo caratteri ASCII.
Esistono estensioni di Visual Studio Code che aiutano anche in questo compito
CSV To Table
L'estensione CSV To Table trasforma un CSV, un TSV o un PSV in una tabella formattata con soli caratteri ASCII.
L' id dell' estensione è phplasma.csv-to-table
:
Uso
Per utilizzarla è sufficiente aprire uno dei file e la palette dei comandi (CTRL + SHIFT + P) digitando Convert to table e selezionando poi l'opzione più idonea al file che si sta utilizzando.
Il risultato sarà una tabella molto ben formattata tramite caratteri | e - (oltre agli spazi necessari):
Markdown
Il formato Markdown è utilizzato soprattutto in documentazioni di progetti software, ma è ottimo per organizzarsi anche appunti e guide.
CSV To Markdown
Questa estensione permette di trasformare fogli CSV nel formato tabellare di Markdown. L'id dell'estensione è Marchiore.csvtomarkdown
.
Uso
Una volta installato basta aprire un file CSV e quindi la control palette (CTRL+Shift+P) e digitare convert CSV to Markdown Table
Il risultato viene sostituito nella medesima posizione, quindi è meglio copiare il contenuto e quindi riportare tutto com'era prima (o eseguire la modifica direttamente su un Markdown).