Home > Linux, Ubuntu > Editor nano evidenziazione della sintassi

Editor nano evidenziazione della sintassi

L’editor nano uno dei più facili e comodi editor da terminale disponibili per linux dispone nativamente della evidenziazione della sintassi per alcuni linguaggi e scripts.
Per visualizzare le evidenziazioni diponibili è possibile digitare il comando

:~$ sudo ls /usr/share/nano

 :~$ sudo ls /usr/share/nano
asm.nanorc	groff.nanorc	 nanorc.nanorc	ruby.nanorc
awk.nanorc	html.nanorc	 objc.nanorc	sh.nanorc
cmake.nanorc	java.nanorc	 ocaml.nanorc	tcl.nanorc
c.nanorc	makefile.nanorc  patch.nanorc	tex.nanorc
css.nanorc	man.nanorc	 perl.nanorc	xml.nanorc
debian.nanorc	mgp.nanorc	 php.nanorc
fortran.nanorc	mutt.nanorc	 pov.nanorc
gentoo.nanorc	nano-menu.xpm	 python.nanorc

L’attivazione delle singole evidenziazioni di base avviene nel file di configurazione di nano valido per tutti gli users /etc/nanorc. Le stringhe responsabili della syntax highlighting sono presenti in fondo al file e sono del tipo seguente:

## C/C++
include "/usr/share/nano/c.nanorc"

E’ possibile, comunque,  attivare altri evidenziationi di sintassi.

Attivare altri evidenziatori di sintassi in nano

Per attivare altri evidenziatori di sintassi in nano possiamo agire in più modi:

  1. cercare in rete un file <lingugaggio>.nanorc già pronto per evidenziare la sintassi del linguaggio che ci interessa copiarlo in /usr/share/nano e modificare il file di configuarzione di nano
  2. installare l’evidenziazione della sintassi predisposta da Graig Barnes molti i linguaggi supporati
  3. predisporre uno specifico file <language>.nanorc  per il linguaggio che ci interessa in in /usr/share/nano
1) Attivare un nuovo file per syntax highlighting

Cerchiamo in rete un file per evidenziare la sintassi per il linguaggio lua ricercando ad esempio lua.nanorc che copiamo in /usr/share/nano

 
cd /usr/share/nano
wget http://lua-users.org/files/wiki_insecure/editors/lua.nanorc

Quindi creiamo un file di configurazione nanorc specifico per il nostro user senza modificare il file base presente nella directory /etc lua

nano ~/.nanorc

e inseriamo alla fine del file la specifica stringa per attivare la syntax heightlighting per lua

## lua 
include "/usr/share/nano/lua.nanorc"
2) Installare l’evidenziazione dei liguaggi  in nano di Graig Barner

L’elenco dei linguaggi supportati è decisamente più completo ed è disponibile a questo indirizzo https://github.com/craigbarnes/nanorc .

In questo caso verrà generato un file specifico per lo user di circa 50K

~/.nanorc

che conterrà al suo interno tutte le syntax highlighting predisposte da Graig.

Attenzione:
Si consiglia preventivamente di leggere il file README.md anche perchè cambiano i key binding  [Ctr+S] per salvare [Ctrl+Q] per uscire [Ctrl+O] per aprire un file …

Posizioniamoci nella dir Downloads dello user e scarichiamo con git il pacchetto con tutte le definizioni disponibili

cd ~/Downloads
git clone git://github.com/craigbarnes/nanorc.git
 :/usr/shaDownloads$ git clone git://github.com/craigbarnes/nanorc.git
Cloning into 'nanorc'...
remote: Counting objects: 1210, done.
remote: Compressing objects: 100% (559/559), done.
remote: Total 1210 (delta 668), reused 1156 (delta 631)
Receiving objects: 100% (1210/1210), 176.85 KiB | 55 KiB/s, done.
Resolving deltas: 100% (668/668), done.

Adesso è possibile installare con make

make

per controllare il file  ~/.nanorc

cat ~/.nanorc

E possibile testare le nuove funzionalità utilizzando i file di esempio in ./nanorc/examples

Attenzione: Qualora in Ubuntu Debian non venisse evidenziata la sintassi commentare  in /etc/nanorc     include “/usr/share/nano/nanorc.nanorc”

# include "/usr/share/nano/nanorc.nanorc"
3)

La soluzione 3 si differenzia dalla soluzione 1 solo per il fatto che si consiera la realizzazione diretta del file per l’evidenziazione della sintassi che deve aver un formato del tipo:

## Here is an example for Bourne shell scripts.
##
syntax "sh" "\.sh$"
header "^#!.*/(ba|k|pdk)?sh[-0-9_]*"
icolor brightgreen "^[0-9A-Z_]+\(\)"
color green "\"
color green "(\{|\}|\(|\)|\;|\]|\[|`|\\|\$||!|=|&|\|)"
color green "-[Ldefgruwx]\>"
color green "-(eq|ne|gt|lt|ge|le|s|n|z)\>"
color brightblue "\"
icolor brightred "\$\{?[0-9A-Z_!@#$*?-]+\}?"
color cyan "(^|[[:space:]])#.*$"
color brightyellow ""(\\.|[^"])*"" "'(\\.|[^'])*'"
color ,green "[[:space:]]+$"

Per realizzare una copia di sicurezza dei file nanorc

cd /usr/share
sudo mkdir nano-base
sudo cp ./nano/*  ./nano-base

Risorse:

  1. Non c'è ancora nessun commento.
  1. No trackbacks yet.

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...

%d blogger hanno fatto clic su Mi Piace per questo: