Nano peut-il faire de la coloration syntaxique comme gedit et vim ? Comment puis-je l'activer ? J'ai besoin au moins de la coloration syntaxique de bash et de Python.
Réponses
Trop de publicités?L'éditeur nano fournit une coloration syntaxique pour quelques langues et scripts par lui-même. Consultez /usr/share/nano/
nits@nits-excalibur:~$ ls /usr/share/nano/
asm.nanorc fortran.nanorc man.nanorc ocaml.nanorc ruby.nanorc
awk.nanorc gentoo.nanorc mgp.nanorc patch.nanorc sh.nanorc
c.nanorc groff.nanorc mutt.nanorc perl.nanorc tcl.nanorc
cmake.nanorc html.nanorc nano-menu.xpm php.nanorc tex.nanorc
css.nanorc java.nanorc nanorc.nanorc pov.nanorc xml.nanorc
debian.nanorc makefile.nanorc objc.nanorc python.nanorc
Liez-les au fichier de configuration nano de votre utilisateur (présent à l'adresse ~/.nanorc
, ${XDG_CONFIG_HOME}/nano/nanorc
, oder ~/.config/nano/nanorc
le premier rencontré) avec quelque chose de similaire à cette ligne :
nits@nits-excalibur:~$ cat ~/.nanorc
include /usr/share/nano/sh.nanorc
Maintenant, la coloration syntaxique est activée dans nano pour le fichier que vous avez lié (vous pouvez également lier plusieurs fichiers).
Note : Parfois, vous pouvez obtenir un segmentation fault
après avoir modifié votre ~/.nanorc
fichier. Si une telle erreur se produit, il suffit de désactiver l'option LANG La variable d'environnement aide. Vous pouvez la désactiver avec unset LANG
dans le terminal. (Solution obtenue à partir de aquí )
Il existe également d'autres solutions si vous n'êtes pas satisfait de votre mise en évidence de bash. Un exemple de ce type peut être trouvé aquí
Vous pouvez également écrire include /usr/share/nano/*
au fichier ~/.nanorc pour permettre à toutes les langues d'être mises en évidence si votre version de nano le supporte.
Oui, vous pouvez le faire, mais les définitions syntaxiques par défaut sont assez pauvres et incomplètes. Je maintiens un ensemble de définitions plus précises aquí pour tous ceux qui les trouvent utiles.
Pour l'installer, exécutez :
git clone https://github.com/scopatz/nanorc.git
cd nanorc
make install
Ajoutez ces lignes au fichier ~/.nanorc
include ~/.nano/syntax/html.nanorc
include ~/.nano/syntax/css.nanorc
include ~/.nano/syntax/php.nanorc
include ~/.nano/syntax/ALL.nanorc
Indiquez ceux pour lesquels vous souhaitez une coloration, et vous devrez adapter ces couleurs à vos préférences. Le site ALL.nanorc
décrit les caractéristiques de tous les dossiers non encore classés. Ce sont les outils dont vous avez besoin pour commencer, et non le produit fini.
J'ai utilisé cette commande pour activer rapidement toutes les langues disponibles.
find /usr/share/nano/ -iname "*.nanorc" -exec echo include {} \; >> ~/.nanorc
Comme mentionné dans d'autres réponses, /usr/share/nano/
contient les définitions des différentes langues.
$ ls /usr/share/nano
asm.nanorc fortran.nanorc man-html ocaml.nanorc ruby.nanorc
awk.nanorc gentoo.nanorc man.nanorc patch.nanorc sh.nanorc
cmake.nanorc groff.nanorc mgp.nanorc perl.nanorc tcl.nanorc
c.nanorc html.nanorc mutt.nanorc php.nanorc tex.nanorc
css.nanorc java.nanorc nanorc.nanorc pov.nanorc xml.nanorc
debian.nanorc makefile.nanorc objc.nanorc python.nanorc
Il est également mentionné que pour activer la mise en évidence pour une langue, vous ajoutez include
et le chemin d'accès à la définition de la langue que vous voulez activer dans votre système de gestion de l'information. ~/.nanorc
fichier. Ainsi, par exemple, pour activer C/C++, il faut ajouter cette ligne.
include /usr/share/nano/c.nanorc
El find
recherche des fichiers ou des répertoires dans le répertoire spécifié.
- El
-iname
lui indique de ne rechercher que les fichiers dont le nom se termine par.nanorc
. - El
-exec
flags définit une commande à exécuter sur chaque fichier trouvé. - El
{}
est remplacé par le nom du fichier. -
\;
est utilisé pour signifier la fin de la commande à exécuter aufind
commandement. - Enfin,
>> ~/.nanorc
fait en sorte que la sortie soit ajoutée à votre~/.nanorc
fichier.
Cela devrait inclure tous les plugins de coloration syntaxique inclus par défaut, et tous ceux que vous ajoutez à /usr/share/nano :
find /usr/share/nano -name '*.nanorc' -printf "include %p\n" > ~/.nanorc
Ou, éditez /etc/nanorc et voyez si vous pouvez décommenter les includes.
Cela fonctionne si vous avez une version de nano qui refuse d'accepter les caractères génériques dans le fichier .nanorc.
Il suffit d'exécuter cette ligne chaque fois que vous ajoutez une configuration de couleur .nanorc supplémentaire.
- Réponses précédentes
- Plus de réponses