Como definir o realce de sintaxe padrão do nano para arquivos sem extensão?

Como definir o realce de sintaxe padrão do nano para arquivos sem extensão?

Estou tentando definir um esquema de realce de sintaxe 'padrão' para o nano quando estou editando arquivos sem extensão, como /etc/nginx/sites-available/defaultou, /etc/ssh/sshd_configmas não consigo fazê-lo funcionar.

Copiei o carquivo de realce de sintaxe /usr/share/nano/default.nanorce adicionei-o include "/usr/share/nano/deafult.nanorc"ao meu ~/.nanorcarquivo, mas ainda não estou conseguindo realçar arquivos sem extensão.

Alguém sabe como habilitar isso?

Responder1

Você pode definir isso sozinho. Aqui está um bom exemplo dos Fóruns do Arch Linux.

Copie o código a seguir e salve-o em/usr/share/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="-->"

Em seguida, inclua esta configuração no arquivo /etc/nanorc como

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

A primeira linha de código do snippet inclui uma expressão regular que define para quais nomes de arquivo esse destaque de sintaxe deve ser usado. Sempre que você encontrar um arquivo de configuração que não corresponda a este, mas ainda assim desejar abri-lo com destaque de sintaxe, você pode selecionar manualmente esta sintaxe com a opção -Y do nano, assim:

nano -Y conf myConfigFile

Fonte:destaque de sintaxe nano: sintaxe abrangente para arquivos de configuração.

Responder2

O arquivo nanorc deve ter

syntax "default"

sem regexp depois dele.

Responder3

A sintaxe Nano destaca todos os arquivos com esemextensão:

Crie backup do arquivo padrão

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

Crie uma cópia de um arquivo de configuração

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

Alterar o nome da extensão de sintaxe para padrão

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

Armazene todos os arquivos .nanrc no arquivo de inclusão

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

informação relacionada