web-dev-qa-db-fra.com

Comment définir la mise en évidence de la syntaxe nano par défaut pour les fichiers sans extension?

J'essaie de définir un schéma de mise en évidence de la syntaxe "par défaut" pour nano lorsque j'édite des fichiers sans extension tels que /etc/nginx/sites-available/default ou /etc/ssh/sshd_config, mais je n'arrive pas à le faire fonctionner.

J'ai copié le fichier de mise en surbrillance de la syntaxe c dans /usr/share/nano/default.nanorc, puis ajouté include "/usr/share/nano/deafult.nanorc" à mon fichier ~/.nanorc mais je n'obtiens toujours pas de surbrillance pour les fichiers sans extension.

Quelqu'un sait comment activer cela?

4
AJB

Vous pouvez définir cela par vous-même. Voici un bon exemple tiré des forums Arch Linux.

Copiez le code suivant et enregistrez-le dans /usr/share/nano/ sous le format conf.nanorc

# config file highlighting

syntax "conf" "(\.(conf|config|cfg|cnf|rc|lst|list|defs|ini|desktop|mime|types|preset|cache|seat|service|htaccess)$|(^|/)(\w*crontab|mirrorlist|group|hosts|passwd|rpc|netconfig|shadow|fstab|inittab|inputrc|protocols|sudoers)$|conf.d/|.config/)"

# default text
color Magenta "^.*$"
# special values
icolor brightblue "(^|\s|=)(default|true|false|on|off|yes|no)(\s|$)"
# keys
icolor cyan "^\s*(set\s+)?[A-Z0-9_\/\.\%\@+-]+\s*([:]|\>)"
# commands
color blue "^\s*set\s+\<"
# punctuation
color blue "[.]"
# numbers
color red "(^|\s|[[/:|<>(){}=,]|\])[-+]?[0-9](\.?[0-9])*%?($|\>)"
# keys
icolor cyan "^\s*(\$if )?([A-Z0-9_\/\.\%\@+-]|\s)+="
# punctuation
color blue "/"
color brightwhite "(\]|[()<>[{},;:=])"
color brightwhite "(^|\[|\{|\:)\s*-(\s|$)"
# section headings
icolor brightyellow "^\s*(\[([A-Z0-9_\.-]|\s)+\])+\s*$"
color brightcyan "^\s*((Sub)?Section\s*(=|\>)|End(Sub)?Section\s*$)"
color brightcyan "^\s*\$(end)?if(\s|$)"
# URLs
icolor green "\b(([A-Z]+://|www[.])[A-Z0-9/:#?&$=_\.\-]+)(\b|$| )"
# XML-like tags
icolor brightcyan "</?\w+((\s*\w+\s*=)?\s*("[^"]*"|'[^']*'|!?[A-Z0-9_:/]))*(\s*/)?>"
# strings
color yellow "\"(\\.|[^"])*\"" "'(\\.|[^'])*'"
# comments
color white "#.*$"
color blue "^\s*##.*$"
color white "^;.*$"
color white start="<!--" end="-->"

Incluez ensuite cette configuration dans le fichier/etc/nanorc en tant que

## Configuration files (catch-all syntax)
include "/usr/share/nano/conf.nanorc"

La première ligne de code de l'extrait de code inclut une expression régulière qui définit les noms de fichier pour lesquels cette coloration syntaxique doit être utilisée. Chaque fois que vous rencontrez un fichier de configuration qui ne correspond pas à cela, mais que vous souhaitez toujours ouvrir avec une coloration syntaxique, vous pouvez sélectionner manuellement cette syntaxe avec le commutateur -Y de nano, comme suit:

nano -Y conf myConfigFile
7
NickTux

Le fichier nanorc devrait avoir

syntax "default"

sans expression rationnelle après.

1
Tony Byrne