Rajouter la coloration syntaxique à nano

nanoun2 Rajouter la coloration syntaxique à nano

J’ai depuis toujours plutôt tendance à utiliser nano que VI sous Linux… Nano comme VI sont des éditeur de texte en ligne de commande qui sont indispensables à tous les rois du shell :o)

Seul hic avec nano, c’est qu’il n’y a pas par défaut la coloration syntaxique. Mais voici une petite astuce pour mettre cela en place.

Il se cache en effet dans le répertoire /usr/share/nano , un tas de petits fichiers de paramètres pour la coloration syntaxique de langages comme C++, Perl, Python, Java…etc (je vous laisse aller voir)

Mais pour activer tout ça, vous devez créer un fichier .nanorc (qui est un fichier caché de config) dans votre répertoire personnel (/~ ou /home/korben par exemple)

A l’intérieur de ce fichier .nanorc (fichier texte standard), il vous suffira ensuite de faire appel à ces fichiers de paramètrage en y insérant les lignes de commande suivantes :

## Nanorc files
include "/usr/share/nano/nanorc.nanorc"

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

## HTML
include "/usr/share/nano/html.nanorc"

## TeX
include "/usr/share/nano/tex.nanorc"

## Quoted emails (under e.g. mutt)
include "/usr/share/nano/mutt.nanorc"

## Patch files
include "/usr/share/nano/patch.nanorc"

## Manpages
include "/usr/share/nano/man.nanorc"

## Groff
include "/usr/share/nano/groff.nanorc"

## Perl
include "/usr/share/nano/perl.nanorc"

## Python
include "/usr/share/nano/python.nanorc"

## Ruby
include "/usr/share/nano/ruby.nanorc"

## Java
include "/usr/share/nano/java.nanorc"

## Assembler
include "/usr/share/nano/asm.nanorc"

## Bourne shell scripts
include "/usr/share/nano/sh.nanorc"

## POV-Ray
include "/usr/share/nano/pov.nanorc"

Sauvegardez et le tour est joué ! Ouvrez par exemple un fichier .c (code source en C) et admirez la jolie coloration syntaxique de fou :-)

Dernier petit point. Il manque dans ces fichiers par défaut (/usr/share/nano) les colorations pour les fichiers .ini, les fichiers de sources.list (pour synaptic), le fichier Xorg.conf, les CSS, les PHP, le XML et les .conf qu’on rencontre un peu partout.

Par cool car évidement, je ne sais pas pour vous mais le PHP, le CSS et le XML, c’est ce dont je me sers le plus. On va donc mettre ça en place. Téléchargez les fichiers de paramètres nano customisés et après les avoir décompressé, placez les dans le répertoire /usr/share/nano/ (en étant root ou sudo).
Rajoutez ensuite les lignes suivantes à votre fichier de config .nanorc (dans votre répertoire home) et le tour sera joué !

## Sources.list
include "/usr/share/nano/sourceslist.nanorc"

## Config Files (.ini)
include "/usr/share/nano/ini.nanorc"

## Xorg.conf
include "/usr/share/nano/xorg.nanorc"

## CSS
include "/usr/share/nano/css.nanorc"

## XML
include "/usr/share/nano/xml.nanorc"

## Generic .conf
include "/usr/share/nano/conf.nanorc"

## PHP
include "/usr/share/nano/php.nanorc"

Amusez vous bien !

Je vous recommande aussi la lecture des sujets suivants


Faites un lien vers cette news sur votre site



10 Commentaire(s)

  1. MyAvatars 0.2

    tuxien Reply to this comment

    Merci bien pour cette info faut que je rajoute ca a mon pense bete

    Posté le 10 août 2008 à 09:31:56

  2. MyAvatars 0.2

    AbriCoCotier Reply to this comment

    Nano ? Jamais entendu parler.

    Je suis et reste sur Gedit : il me rapelle le bon vieux Notepad++ que j’utilisais sous Windows.

    Pour la programmation : Emacs fait des merveilles (pour les incultes : Emacs a été codé par Stallman lui-même).

    Posté le 10 août 2008 à 10:02:32

  3. MyAvatars 0.2

    Korben Reply to this comment

    @AbriCoCotier: gedit, ça ne fonctionne qu’avec un environnement X, alors que nano, c’est comme vi, ça tourne en ligne de commandes

    Posté le 10 août 2008 à 10:53:23

  4. MyAvatars 0.2

    stakhanov Reply to this comment

    Géniale l’astuce !! Merci pour l’info Korben !! ;-)

    Posté le 10 août 2008 à 11:59:19

  5. MyAvatars 0.2

    toto Reply to this comment

    Petite précision pour les Archlinuxiens dont je fais partie : le .nanorc ne fonctionne pas, pour cause que y’a déja un /etc/nanorc avec les include “de base” (c, java, sh etc) commentés, donc juste a décommenter et le tour est joué :p
    (quoique les 2 marchent en fait O_o)

    Posté le 10 août 2008 à 13:16:07

  6. MyAvatars 0.2

    1ace Reply to this comment

    merci Tonton :)

    juste un détail: tu peux donner la ligne de commande à copier-coller, pour les flémards (à lancer en root évidement):

    cd /usr/share/nano; wget http://www.korben.info/wp-content/uploads/2008/08/nano-supplement.tar; tar -xf nano-supplement.tar; rm nano-supplement.tar

    @AbriCoCotier: j’utilise Notepad++ quand je suis sous X ;)
    http://notepad-plus.sourceforge.net/uk/nppLinux.php

    Posté le 10 août 2008 à 13:28:13

  7. MyAvatars 0.2

    AbriCoCotier Reply to this comment

    @1ace : J’ai regardé ton lien : pour installer Notepad++ il faut passer par Wine. Et ça, jamais ! (je ne suis pas contre Wine, mais à chaque fois que j’ai voulu l’installer, j’ai toujours mis la zone sur mon PC… donc maintenant, je suis très méfiant).

    Posté le 10 août 2008 à 21:52:27

  8. MyAvatars 0.2

    facochere Reply to this comment

    ça le fait bien !
    par contre il semble y avoir un problème avec les regexp concernant les sourceslist, je suis pas trop pote avec les regexp, quelqu’un a une idée ?

    Error in /usr/share/nano/sourceslist.nanorc on line 4: Bad regex “^deb(-src)? ((http|file|ftp):/[^ ]+|cdrom:[[^]]+]/|cdrom:[[a-zA-Z0-9._-() ]+]/) [^ ]+ .+$)”: Invalid range end

    Error in /usr/share/nano/sourceslist.nanorc on line 6: Bad regex “^deb(-src)? ((http|file|ftp):/[^ ]+|cdrom:[[^]]+]/|cdrom:[[a-zA-Z0-9._-() ]+]/) [^ ]+”: Invalid range end

    Error in /usr/share/nano/sourceslist.nanorc on line 11: Bad regex “cdrom:[[a-zA-Z0-9._-() ]+]/”: Invalid range end

    Posté le 11 août 2008 à 10:32:05

  9. MyAvatars 0.2

    Kevin Campion Reply to this comment

    Bonjour,

    Le fichier xml.nanorc pose problème : Error in /private/etc/nano-supplement/xml.nanorc on line 19: Bad regex “”: repetition-operator operand invalid

    Si vous avez le même problème, il suffit juste d’ajouter un “\” à la ligne 19 entre le “+” et le “?” :
    color brightred “<\?.+\?>”

    Posté le 11 août 2008 à 10:57:56

  10. MyAvatars 0.2

    Di@blo Reply to this comment

    Merci bien ! Très utile.

    Posté le 14 août 2008 à 20:40:07

1 Trackback(s)

  1. 19 août 2008 à 00:22:28: de nano et la coloration syntaxique | Clear Sky

Lacher un com'

« Retour aux commentaires classiques (texte)