Usare Gedit come "ambiente di sviluppo" per C, PHP, HTML, CSS!

Giovanni Canella

15/11/2013

8172

gEdit è l'editor di testo presente di default su Ubuntu, che ci mette a disposizione un set di strumenti decisamente più ricco rispetto al suo equivalente su Windows (notepad), infatti abbiamo la possibilità di cambiare lo sfondo, aggiungere plugin, creare comandi personalizzati e molte altre cose. In questo articolo vediamo come modificarlo per creare un ambiente di sviluppo "fai-da-te" super leggero!

Però prima di iniziare voglio fare una piccola premessa, in quanto la soluzione che andrò a illustrarvi in questo articolo è adatta per chi vuole semplicemente gestire qualche file, sito di piccole-medie dimensioni, o programmi in C concentrati su un solo file. Per progetti più ambiziosi è meglio rivolgerci ad ambienti di sviluppo più potenti!

Personalizzazione ambiente di sviluppo

Chiusa questa parentesi, possiamo procedere: apriamo gEdit, da Applicazioni -> Accessori -> gEdit, o da terminale scrivendo:

gedit

 E una volta avviato ci apparirà la seguente schermata:

Schermata principale gEdit

Come possiamo vedere è un'editor di default molto basilare, ma con delle enormi potenzialità, se sfruttate bene, come accennato prima. Rechiamoci quindi nelle preferenze del programma, in Modifica -> Preferenze, e nel primo tab, chiamato Vista, spuntiamo:

  • Mostra i numeri di riga: Indispensabile per un buon ambiente di sviluppo,
  • Evidenziare la riga corrente,
  • Evidenziare le parentesi corrispondenti: Utile per non perdere nessuna parentesi nella stesura del codice.

Ora spostiamo in quello affianco e spuntiamo (se non lo è già):

  • Attivare rientro automatico: Per fare in modo che quando andiamo a capo, e ci siamo spostati di una o più tabulazioni, il puntatore si allinei automaticamente con il testo sopra. Se volete è anche possibile modificare l'ampiezza della tabulazione, di default è impostata su 8, ma personalmente consiglio 4 come valore.
  • Salvare automaticamente il file corrente ogni tot minuti: Di default impostato su 2 e non vedo il motivo per cui modificarlo.

Nel tab Caratteri e colori, possiamo modificare il colore di default (bianco) a uno più scuro per affaticare meno gli occhi, specialmente se un programmatore deve passarci delle ore in fase di debug, per esempio. Personalmente consiglio Oblivion, ma nessuno vi vieta di selezionare quello che più vi aggrada. Eccome si presenterà:

 

Decisamente meglio rispetto a prima. Successivamente andiamo a installare un set extra di plugin per gEdit, inserendo da terminale, 

sudo apt-get install gedit-plugins

composti da:

  • Commander: Interfaccia a linea di comando per modifiche avanzate
  • Selettore colore: Seleziona un colore da una finestra di dialogo e inserisce la sua rappresentazione in esadecimale.
  • Mappa dei caratteri: Inserisce caratteri speciali con un semplice clic.
  • Salva sessione: Salva e ripristina la sessione di lavoro.
  • Completamento parole: Suggerisce la parte finale della parola che si sta inserendo.
  • Multi-modifica: Modifica il documento in più parti alla volta.
  • Commenta codice: Commenta o decommenta un blocco di codice selezionato.
  • Completamento parentesti: Aggiunge automaticamente la parentesi di chiusura.
  • Terminale integrato: Incorpora un terminale nel riquadro inferiore, utile per le più svariate operazioni senza uscire dal nostro ambiente di sviluppo.

Schermata dei plugin

Personalmente consiglio di abilitarli tutti, tranne Commander di cui io personalmente non ne ho mai avuto bisogno. Inoltre, oltre alla lista citata in precedenza, abilitate anche i plugin di default, che sono sempre molto utili, quali:?

  • Riquadro esplorazione file, per avere la lista della directory in cui stiamo lavorando.
  • Snippet: Suggerisce le parole di testo (snippet) più utilizzate dentro al testo, così da non doverle riscriverle sempre
  • Strumenti esterni:  Uno dei più utili, in quanto possiamo associare a una certa combinazione di tasti, che andremo a decidere noi, un comando da eseguire in maniera automatica.

Ora nelle prossime pagine vi sono gli accorgimenti da adottare per lo specifico linguaggio.

Per poter sviluppare applicazioni in C con gEdit, come ben sappiamo abbiamo bisogno di un compilatore, ma nessun problema! Infatti su Ubuntu (ma praticamente tutte le distribuzioni GNU/Linux) è già presente GCC (GNU Compiler Collection), completamente open source, creato da Richard Stallman nel 1987,  perfezionato e supportato per vari sistemi operativi nel corso degli anni. Attualmente l'ultima versione rilasciata è la 4.8.1.

Problema

Qualcuno si potrebbe chiedere, dove sia il problema in quanto non ci vuole molto, dato basta creare un file con estensione .c, buttare giù il programma:

Esempio programma in C

e compilarlo aprendo il terminale, digitando:

gcc main.c -o programma

Compilazione

Solo che ripetere questa operazione ogni volta, è abbastanza scomodo, in quanto dovremmo sempre uscire temporaneamente dall'ambiente di sviluppo per andare nel terminale. Per questo motivo ci ritornerà utilizzare gli External Tools (attivati in precedenza), così in modo da compilare e/o eseguire il programma con una semplice combinazione di tasti! Andiamo quindi in Strumenti -> Manage External Tools, e all'apparizione di questa schermata:

Gestione strumenti esterni

premiamo sul pulsante +, per creare un nuovo comando con il compito di andare a compilare il sorgente, e:

  • Inseriamo una combinazione a piacere in Tasto scorciatoia, per esempio Ctrl + F11.
  • Impostiamo cliccando sul pulsante vicino alla voce Applicabilità, il linguaggio con cui dovrà andare questo comando (C).

E infine dentro la textarea, andremo a utilizzare appunto GCC, però in un modo particolare, in quanto non dovremo inserire il nome del file .c specifico per quell'occasione, dato che vanificherebbe tutte queste operazioni, ma delle costanti che gEdit ci mette a disposizione che identificano in maniera automatica il nome del sorgente:

?$GEDIT_CURRENT_DOCUMENT_NAME

Quindi:

gcc $GEDIT_CURRENT_DOCUMENT_NAME -o ${GEDIT_CURRENT_DOCUMENT_NAME%.*} -lm

Ho aggiunto anche il parametro -lm, per includere le librerie matematiche, ma potete benissimo aggiungere qualunque parametro di cui avete necessità.

Esecuzione

Ora per eseguirlo, creiamo un altro comando con lo stesso procedimento di prima, quindi impostando sempre in Applicabilità, il linguaggio C e una combinazione di tasti (Ctrl + F5 per esempio) e siccome vogliamo mostrarlo su terminale andremo a utilizzare il comando gnome-terminal seguito dal percorso e nome del programma compilato:

gnome-terminal -x ./${GEDIT_CURRENT_DOCUMENT_NAME%.*} --working-directory=$GEDIT_CURRENT_DOCUMENT_DIR

N.B = Da notare l'utilizzo di una nuova costante: $GEDIT_CURRENT_DOCUMENT_DIR

Test finale

Quindi avviamo i comandi appena creati con:

  1. Ctrl + F11,
  2.  Ctrl + F5.

?e tutto dovrebbe essere filato correttamente senza alcun tipo di errore (eccetto quelli eventuali di compilazione):

Test esecuzione comandi External Tools gEdit

Per quanto riguardo lo sviluppo Web, composto da HTML, PHP, CSS, Javascript ecc, la procedura è bene o male la stessa, ma non avremo bisogno di compilare nulla, l'unica cosa da fare è installare una lista extra di tag. In questo modo quanto non ci ricordiamo un particolare comando o proprietà ci vengono mostrati i suggerimenti di cui abbiamo bisogno. Potete scaricarla gratuitamente da qua, e comprende:

  • XHTML,
  • CSS,
  • PHP.

Scompattiamo l'archivio e salviamo il contenuto in una cartella con nome da voi scelto (per esempio extralist) nella home del vostro utente, e copiamo tutto il contenuto in quella dei plugin di gEdit:

cd extralist
sudo cp *.tags /usr/share/gedit-2/plugins/taglist

Apriamo gEdit e riusciremo a vedere correttamente la nuova lista:

Lista extra di tag/funzioni

Inoltre potrebbe risultare anche comodo lavorare direttamente su un server remoto, per le più varie ragioni, attraverso qualche plugin che però con il rilascio di nuove versioni del programma potrebbero non funzionare più. Ma il problema non sussite in quanto basta collegarsi al server FTP direttamente da Ubuntu andando in Risorse -> Connetti al Server, inserendo le credenziali e confermando su Connetti (assicurandoci di spuntare Ricordare questa password).

Connessione al server da Ubuntu

Ora spostiamoci su gEdit e andiamo nel tab Esplorazione file, per poi selezionare il server a cui ci siamo appena connessi, così in modo da accedervi e poter modificare senza nessun problema i file presenti:

Selezione server FTP da gEditDa puntalizzare che se non viene registrata attività per un certo lasso di tempo la connessione viene chiusa automaticamente, e noi dobbiamo ritornare nel menù di sistema per riefettuare la connessione, non dal programma!

Come ultima cosa, ma non meno importante, dobbiamo attivare l'autocompletamento dei tags, o delle parentesti in quanto da facilitarci il lavoro durante la realizzazione del codice. Il plugin in questione è Intelligent Text Completion, presente nel pacchetto extra precedentemente installato. Così quando digitiamo:

 

 

Seguito dal link, appena apriamo la parentesi angolare (<), ci verrà chiusa automaticamente:

LINK

 

Inoltre è anche presente Zen Coding, un plugin, molto potente, scaricabile da questo indirizzo. Ecco le caratteristiche:

  • Expand abbreviation,
  • Expand incrementally with abbreviation,
  • Wrap incrementally with abbreviation ,
  • Zenify (reduce to abbreviation),
  • Insert incrementally 'lorem ipsum' words or sentences, or random letters,
  • Select inward or outward,
  • Go to previous or next html tag,
  • Go to previous or next html node,
  • Go to previous or next edit point
  • Update tag image size
  • Toggle between image url and data
  • Merge lines
  • Remove tag
  • Split or join tags
  • Toggle comment
  • Create your own abbreviations and snippets

Conclusioni

Ed ecco gEdit completamente personalizzato e pronto per essere utilizzato come un ambiente di sviluppo "super leggero" in base alle nostre esigenze. Ripeto, per chi non avesse letto la premessa iniziale, che per gestire progetti di grosse dimensioni, questa soluzione ci risulterà un po' stretta e pertanto vi consiglio di migrare su ambienti di sviluppo ad hoc di quello specifico linguaggio. Oppure adottare soluzioni come Eclipse, installando i plugin che ci servono (CDT, Java, Android ecc.), per il resto dovrebbe fare al caso vostro!

Ti potrebbero interessare

I più letti