nano语法高亮不适用于特定语言

时间:2018-12-14 05:47:44

标签: linux debian nano

我的nano不想显示html的语法高亮显示。

我的〜/ .nanorc包含以下内容:

include ~/.nano/syntax/html.nanorc
include ~/.nano/syntax/css.nanorc
include ~/.nano/syntax/php.nanorc
include ~/.nano/syntax/python.nanorc

它适用于CSS,PHP和python。我尝试注释掉它们的行,并且语法高亮显示停止了。

我还尝试过更改各个文件中事物的颜色,并更改了突出显示。

html.nanorc包含:

syntax "html" "\.html?$"
header "<!doctype html"

color magenta "\<(accept|accept-charset|accesskey|action|alt|async|autocomplete|autofocus|autoplay|border|challenge|charset|checked|cite|class|cols|cols$
color brightwhite,red   "</?[A-Za-z0-9_]+[ >]"
color brightmagenta       "</?(a|abbr|address|area|article|aside|audio|b|base|bdo|blockquote|body|br|button|center|canvas|caption|cite|code|col|colgroup$
color yellow    "=([A-Za-z0-9!$%*\^(){}#|:;_~@+,.?/\\-]|\[|\])+"
color red  "="
color yellow ""(\\.|[^"])*"|'(\\.|[^'])*'"
color white     start=">" end="<"
color brightmagenta       "[<>]"

# Embedded template languages
color brightyellow  "\{\{[^}]*\}\}|<%=.*%>"
color brightblue  start="<\?" end="\?>"
color brightblue  start="<%[^=]" end="%>"
color brightblue  start="\{%" end="%\}"

color magenta    "&(#[0-9]+|#x[0-9a-fA-F]+|[A-Za-z][A-Za-z0-9]*);"
color cyan   start="<!--" end="-->"
color cyan   "<!(doctype|DOCTYPE)[^>]*>"
color ,green "[[:space:]]+$"
color ,red "    + +| +  +"
# +EXTRALINT

我找不到任何问题。

当我使用

打开html文件时
nano test.html

所有文字均为白色/灰色。但是,如果我以root身份运行

sudo nano test.html

突出显示的作品。

我的nano和debian版本是

GNU nano version 2.2.6 (compiled 16:56:37, Jul 16 2014)
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 8.11 (jessie)
Release:        8.11
Codename:       jessie
Linux <server> 3.16.0-6-amd64 #1 SMP Debian 3.16.57-2 (2018-07-14) x86_64 GNU/Linux

我真的不知道如何从何处继续,所以真的会得到一些帮助。

1 个答案:

答案 0 :(得分:0)

在这里找到我的答案:Nano on server ignores certain syntax coloring

我不知道为什么,但是,如果我将include html行移到.nanorc文件的底部而不是顶部,则可以。

我测试了我包含的所有扩展,并且在更改包含顺序后它们都可以正常工作。