확장자가 없는 파일에 대해 나노 기본 구문 강조를 설정하는 방법은 무엇입니까?

확장자가 없는 파일에 대해 나노 기본 구문 강조를 설정하는 방법은 무엇입니까?

/etc/nginx/sites-available/default또는 같은 확장자가 없는 파일을 편집할 때 nano에 대한 '기본' 구문 강조 구성표를 설정하려고 하는데 제대로 /etc/ssh/sshd_config작동하지 않는 것 같습니다.

c구문 강조 파일을 복사한 /usr/share/nano/default.nanorc다음 include "/usr/share/nano/deafult.nanorc"~/.nanorc파일에 추가했지만 확장자가 없는 파일은 여전히 ​​강조 표시되지 않습니다.

이것을 활성화하는 방법을 아는 사람이 있습니까?

답변1

이것을 스스로 정의할 수 있습니다. 다음은 Arch Linux 포럼의 좋은 예입니다.

다음 코드를 복사하여 저장하세요./usr/공유/나노/~처럼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="-->"

그런 다음 이 구성을 /etc/nanorc 파일에 다음과 같이 포함시킵니다.

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

코드 조각의 첫 번째 코드 줄에는 이 구문 강조 표시를 사용해야 하는 파일 이름을 정의하는 정규식이 포함되어 있습니다. 이와 일치하지 않는 구성 파일을 발견했지만 구문 강조를 사용하여 파일을 열고 싶을 때마다 다음과 같이 nano의 -Y 스위치를 사용하여 이 구문을 수동으로 선택할 수 있습니다.

nano -Y conf myConfigFile

원천:nano 구문 강조: 구성 파일에 대한 포괄적인 구문.

답변2

nanorc 파일에는 다음이 있어야 합니다.

syntax "default"

그 뒤에 정규 표현식이 없습니다.

답변3

Nano 구문은 및가 있는 모든 파일을 강조 표시합니다.없이확대:

기본 파일에서 백업 생성

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

구성 파일에서 복사본 만들기

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

구문 확장 이름을 기본값으로 변경

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

모든 .nanrc 파일을 포함 파일에 저장

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

관련 정보