Piattaforma SSHCode - Ambiente di programmazione
by Tullio Facchinetti
Una volta effettuato il collegamento al server come spiegato qui, è possibile utilizzare l’ambiente di programmazione come spiegato qui di seguito.
Ambiente di programmazione
Per accedere all’ambiente di programmazione, digitare
fdi start
L’interfaccia dispone di diverse finestre tra le quali ci si può spostare a rotazione nelle due direzioni con i tasti F7
e Shift-F7
.
Tutte le finestre sono delle “viste” dello stesso ambiente, nel senso che la directory di lavoro è la stessa e tutti i comandi da tutte le finestre svolgono le stesse operazioni.
Normalmente si può usare una finestra per scrivere il programma e un’altra per la compilazione. Durante l’esame ci sono finestre addizionali con il testo dell’esame e una finestra di aiuto.
Per uscire dall’ambiente di programmazione, digitare
fdi stop
e poi
exit
L’ambiente di programmazione è unicamente basato su shell Linux. Dopo l’accesso, si ha appunto a disposizione una shell nella quale impartire i comandi.
Esplorazione del file system
Si possoono utilizzare i noti comandi per elencare i file presenti in una directory (ls
), per creare directory (mkdir
), per spostarsi tra le directory (cd
), ecc.
Editor di testo
Per visualizzare ed modificare i file di testo, come i programmi .c
, sono disponibili vari editor, tra cui vim
, nano
, micro
.
Quello consigliato, perché più semplice da usare, è micro
.
Per aprire per esempio un file chiamato tutorato.c
basta digitare:
micro tutorato.c
La seguente figura mostra un esempio dell’interfaccia che si ottiene lanciando fdi start
, dopo aver aperto un file con l’editor micro
.
Per uscire dall’editor digitare Ctrl-Q
(tasto control
insieme a Q
).
L’editor mette a disposizione i tipici comandi per il copia/taglia/incolla (Ctrl-C
, Ctrl-X
e Ctrl-V
rispettivamente), l’undo (Ctrl-Z
), e l’uso del mouse.
Con Ctrl-G
è possibile visualizzare la guida dell’editor, e con Alt-G
le associazioni dei tasti.
Visualizzazione degli errori di compilazione
Quando è aperto un file con estensione .c
, micro
riconosce automaticamente che si tratta di un programma C.
Viene quindi attivato il cosiddetto syntax highlighting, che evidenzia con colori diversi i vari elementi del programma (parole chiave, stringhe, variabili, ecc.).
Quando si salva il file corrente con Ctrl-S
, micro
visualizza i caratteri >>
accanto alle righe nelle quali il compilatore segnala un warning o un errore.
Portando il cursore in una riga contrassegnata con i caratteri >>
, viene visualizzato il testo del messaggio del compilatore nella barra di stato di micro
, in basso nella finestra dell’editor.
Questa funzionalità è particolarmente comoda durante lo sviluppo del programma, in quanto permette di sapere se il programma è corretto semplicemente salvandolo su disco, senza compilarlo esplicitamente.
Selezione dello schema di colori in micro
La combinazione di colori usata da micro
, soprattutto quando è attivo il syntax highlighting durante la scrittura di un programma, può non essere ottimale, in quanto dipende anche dal colore dello sfondo, dal client SSH utilizzato, ecc.
Per adattare la combinazione di colori alle proprie esigenze, bisogna accedere alla barra dei comandi di micro
digitando Ctrl-E
all’interno del programma.
Successivamente, digitare il seguente comando:
set colorscheme schema
dove schema
è il nome dello schema di colori desiderato (es., simple
, monokai
, darcula
, ecc.).
Dal momento che non esiste una lista completa di tutti gli schemi di colore disponibili, è possibile usare l’autocompletamento di micro
per “esplorare” le varie possibilità, procedendo come segue.
Digitare Ctrl-E
, e al prompt digitare soltanto:
set colorscheme
E’ importante che dopo colorscheme
si digiti anche uno spazio, come se si volesse inserire successivamente il nome dello schema.
A questo punto, premendo il tasto TAB
, micro
elencherà i suggerimenti per completare il comando, che corrispondono ai nomi degli schemi di colori disponibili.
Premendo nuovamente TAB
si selezionerà il nome successivo, mentre Shift-TAB
selezionerà il nome precedente.
Il tasto TAB
(e la combinazione Shift-TAB
) può essere premuto tante volte quante sono necessarie per selezionare il nome desiderato.
Premere poi INVIO
per selezionare lo schema corrente.
Consiglio di provare vari schemi di colori per selezionare quello più adatto al proprio setup.
ATTENZIONE: per valutare uno schema di colori conviene aver aperto nell’editor un file .c
con un po’ di istruzioni, in modo da poter verificare quali colori vengono utilizzati per i vari elementi del testo.
Infatti, se nell’editor non è presente del testo, l’effetto di un diverso schema di colori è difficile da valutare.
Quando si esce da micro
, l’impostazione dello schema di colori viene automaticamente salvata e verrà utilizzata alla successiva apertura del programma.
Informazioni utili
Ingrandimento della finestra attiva
Molti client mettono a disposizione una dimensione limitata del terminale (numero di righe x colonne). Pertanto la suddivisione dello schermo generata dal comando fdi start
può portare a finestre troppo piccole per poter lavorare agevolmente.
Per ovviare a questo inconveniente è possibile zoomare la finestra attiva.
Con la combinazione di tasti Ctrl-b z
(tenere premuti il tasto Ctrl
e b
insieme, poi lasciare, e premere z
) si effettua lo zoom della finestra attiva, che assunme l’intera dimensione della finestra del client. In questo modo lo spazio a disposizione per lavorare diventa molto maggiore. Per tornare alla situazione precedente, premere nuovamente Ctrl-b z
. Lo zoom si può effettuare in qualsiasi finestra.
ATTENZIONE: lo zoom funziona correttamente su sistemi Windows e Linux. Attualmente non sembra essere garantito il funzionamento su sistemi Mac.
Scorrimento del risultato della compilazione
Talvolta il risultato della compilazione è troppo lungo per poter essere consultato comodamente.
Per compilare programma.c
e poter scorrere l’output generato da gcc
in caso di molti warning e errori, usare il comando:
gcc -Wall programma.c 2>&1 | less
Sarà possibile scorrere l’output di gcc
con le frecce su e giù. Per tornare al prompt digitare q
(quit).
Attenzione che se l’output del compilatore è assente viene visualizzata una schermata vuota. Digitare q
per uscire.
Copia e incolla
Il copia e incolla da dentro a fuori della sessione SSH può essere un problema e la soluzione dipende da quale client si utilizza e dal sistema operativo.
Nel caso si utilizzi la Secure Shell App, possono essere utili queste informazioni.
Configurazione dell’ambiente
L’ambiente di sviluppo accessibile tramite il comando fdi
permette la configurazione di alcuni aspetti, come i colori, i tasti per spostarsi da una finestra all’altra, e alcuni altri.
Le informazioni per configurare l’ambiente possono essere consultate in questa pagina.
Concetti avanzati: tmux
Per chi ama approfondire la conoscenza delle tecnologie utilizzate nell’ambiente di programmazione, viene utilizzato tmux. Si tratta di un cosiddetto “terminal multiplexer”, ovvero un programma che permette di ottenere diversi terminali in una singola sessione di shell (SSH nel nostro caso).
Il comando fdi start/stop
non fa altro che richiamare tmux
.
Pertanto un utente avanzato può pensare di utilizzare direttamente le funzionalità di tmux
.
Esistono numerosi tutorial online per l’uso di tmux
.
Un utile riferimento alle combinazioni di tasti che possono essere usate con tmux
è disponibile su tmuxcheatsheet.