¿Cómo configurar el resaltado de sintaxis nano predeterminado para archivos sin extensión?

¿Cómo configurar el resaltado de sintaxis nano predeterminado para archivos sin extensión?

Estoy intentando establecer un esquema de resaltado de sintaxis 'predeterminado' para nano cuando estoy editando archivos sin extensión como /etc/nginx/sites-available/defaulto, /etc/ssh/sshd_configpero parece que no puedo hacerlo funcionar.

Copié el carchivo de resaltado de sintaxis /usr/share/nano/default.nanorcy luego lo agregué include "/usr/share/nano/deafult.nanorc"a mi ~/.nanorcarchivo, pero todavía no puedo resaltar los archivos sin extensión.

¿Alguien sabe cómo habilitar esto?

Respuesta1

Puedes definir esto tú mismo. Aquí hay un buen ejemplo de los foros de Arch Linux.

Copie el siguiente código y guárdelo en/usr/compartir/nano/comoconf.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="-->"

Luego incluya esta configuración en el archivo /etc/nanorc como

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

La primera línea de código del fragmento incluye una expresión regular que define para qué nombres de archivos se debe utilizar este resaltado de sintaxis. Siempre que encuentre un archivo de configuración que no coincida con esto, pero aún así le gustaría abrirlo con resaltado de sintaxis, puede seleccionar manualmente esta sintaxis con el interruptor -Y de nano, así:

nano -Y conf myConfigFile

Fuente:resaltado de nano sintaxis: sintaxis general para archivos de configuración.

Respuesta2

El archivo nanorc debería tener

syntax "default"

sin expresión regular después.

Respuesta3

La nanosintaxis resalta todos los archivos con ysinextensión:

Crear copia de seguridad desde el archivo predeterminado

yes | cp /usr/share/nano/default.nanorc /usr/share/nano/default.nanorc.backup

Crear una copia desde un archivo de configuración

yes | cp /usr/share/nano/sh.nanorc /usr/share/nano/default.nanorc

Cambiar el nombre de la extensión de sintaxis al predeterminado

sed -i -e 's/syntax "sh" "\\.sh$"/syntax "default"/g' /usr/share/nano/default.nanorc

Almacene todos los archivos .nanrc en el archivo de inclusión

ls -1 /usr/share/nano/*.nanorc | sed 's/^\//include \//' >> ~/.nanorc

información relacionada