为什么 nano 有时通过 SSH 显示颜色?

为什么 nano 有时通过 SSH 显示颜色?

通常,当我通过 SSH 编辑小文件时,我只会打开 nano。我仔细查看了 apache2 access.log。由于我没有在该框中启用fail2ban 或任何功能,因此我通常也会查看access.log.1。我注意到在我的 access.log.(#) 中,特定的行总是有一个奇怪的突出显示:

GET /w00tw00t.at.ISC.SANS.DFind:) HTTP/1.1" 400 516 "-" "-" 在此输入图像描述

我注意到的更多事情:

  • 仅当该行中有 .B 或 .I 且该行之后的每个字母都是红色时才会发生这种情况
  • 这只发生在以数字结尾的文件中;它出现在 access.log.1 中,但不在 access.log 中。对于任何 test.log.1 都相同
  • 这只适用于 filename.1 到 filename.9
  • 从该行syntax "man" "\.[1-9]x?$"我知道文件 .1 到 .9 被突出显示..但为什么呢?

显然 /usr/share/nano 中的文件处理语法突出显示,经过一番挖掘,我发现有一个文件专门负责此操作:man.nanorc。以下是其内容:

## Here is an example for manpages.
##
syntax "man" "\.[1-9]x?$"
color green "\.(S|T)H.*$"
color brightgreen "\.(S|T)H" "\.TP"
color brightred "\.(BR?|I[PR]?).*$"
color brightblue "\.(BR?|I[PR]?|PP)"
color brightwhite "\\f[BIPR]"
color yellow "\.(br|DS|RS|RE|PD)"

对于 WordPress 站点上的 wp-config.php 等文件,nano 可以正确突出显示语法。 .I 和 .B 有什么特别之处,使得第一个字符为蓝色,其余字符为红色,这与 .1 有什么关系?

答案1

对于这些语法突出显示规则文件,nano假设以 .1 - .9 结尾的文件名是手册页。

自从我编辑手册页以来已经有一段时间了,但我很确定 in groff -man,.I是用于斜体.B为了大胆的

相关内容