我在 Ubuntu 20.04 LTS 上使用 GNU nano 4.8 版。
我将 X11 设置为使用白色作为 xterm 窗口的背景色。我不想更改此设置。看起来 nano 继承了这一点,并使用白色作为其全局背景色。
PHP(和其他语言)的默认语法突出显示似乎假设 nano 编辑器中的背景颜色是某种深色。例如这些行来自php.nanorc:
# Function names.
color white "\<[A-Za-z_][A-Za-z_0-9]*\("
Run Code Online (Sandbox Code Playgroud)
使函数名称为白色,这当然在白色背景上是不可读的。
改成这样;
# Function names.
color white,black "\<[A-Za-z_][A-Za-z_0-9]*\("
Run Code Online (Sandbox Code Playgroud)
改善了一点。它现在使函数名称,但只有函数名称,以黑色背景上的白色字体显示。但它看起来也很丑,因为其他所有东西都有白色背景。
有没有办法在 nano 编辑中更改背景以不重新使用终端默认颜色,而是使用黑色?
这是我环顾四周时想到的一个解决方案。我们可以使用转义序列来动态更改终端颜色。
为此,我们可以创建一个名为nnanoexample 的函数,并将其存储在某个地方~/.bashrc,这样当我们打开一个新的 bash 实例时,它就会自动获取。
然后使用它:
nnano filename
Run Code Online (Sandbox Code Playgroud)
它首先更改终端的背景颜色,然后black当我们关闭它时,nano它会将其更改为白色。
这是可以进一步改进的功能:
nnano () {
# Change the terminal foreground to #FFFFFF
echo -ne "\033]10;#FFFFFF\007"
# Change the terminal background to #000000
echo -ne "\033]11;#000000\007"
nano "$1"
# Reset the colors
echo -ne "\033]10;#000\007"
echo -ne "\033]11;#FFF\007"
}
Run Code Online (Sandbox Code Playgroud)
如果不翻转前景色:
想法就来自这里。
| 归档时间: |
|
| 查看次数: |
1033 次 |
| 最近记录: |