首页 / 知识

关于ubuntu:如何使Emacs终端颜色与Emacs GUI颜色相同?

2023-04-15 10:11:00

关于ubuntu:如何使Emacs终端颜色与Emacs GUI颜色相同?

How to make Emacs terminal colors the same as Emacs GUI colors?

我在Ubuntu(目前为Hardy Heron)上使用Emacs进行编程,并且我喜欢Emacs GUI中的默认文本颜色。 但是,当在终端中运行Emacs时,默认的文本颜色是不同的,并且显得粗糙。

如何使终端中的颜色与GUI中的颜色匹配?


您不必坚持使用终端的默认16种(或更少)颜色。现代终端将支持256色(这将使您非常接近GUI外观)。

不幸的是,让您的终端支持256种颜色是棘手的部分,并且每个术语之间都存在差异。该页面对我有很大帮助(但是已经过时;我肯定已经在gnome-terminal和xfce4-terminal中使用了256种颜色;但是您可能必须从源代码构建它们。)

拥有256种颜色的终端后,神奇的调用就是在调用emacs之前将终端类型设置为" xterm-256color",例如:

1
env TERM=xterm-256color emacs -nw

或者,您可以在.bashrc文件中设置TERM:

1
export TERM=xterm-256color

您可以通过执行M-x list-colors-display来检查它是否在emacs中工作,它将显示16种或全部256种绚丽的颜色。

如果可行,请像其他人建议的那样查看color-theme

(您可能会在某个时候感到沮丧;上帝知道我每次尝试做类似的事情时都会做。但是坚持下去,这是值得的。)


我不确定是否可以,因为GUI可能比终端具有更多的功能(是的,最近我看到GUI终端只有16种颜色)。这可能取决于终端的设置方式。无论如何,我都会玩Color Theme。

无论如何,为什么要在终端和GUI中同时使用Emacs?通常,人们会发现一个或另一个很吸引人,并且只使用那个。如果要远程使用Emacs,则可能要在本地运行它,并使用Tramp远程或以root用户打开文件。


我能够使用emacs 26非常接近。

我遵循了Emacs常见问题解答以使24位颜色起作用:
https://www.gnu.org/software/emacs/manual/html_mono/efaq.html#Colors-on-a-TTY

然后我更改了xterm-standard-colors变量:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
(set 'xterm-standard-colors
  '(("black"          0 (  0   0   0))
    ("red"            1 (255   0   0))
    ("green"          2 (  0 255   0))
    ("yellow"         3 (255 255   0))
    ("blue"           4 (  0   0 255))
    ("magenta"        5 (255   0 255))
    ("cyan"           6 (  0 255 255))
    ("white"          7 (255 255 255))
    ("brightblack"    8 (127 127 127))
    ("brightred"      9 (255   0   0))
    ("brightgreen"   10 (  0 255   0))
    ("brightyellow"  11 (255 255   0))
    ("brightblue"    12 (92   92 255))
    ("brightmagenta" 13 (255   0 255))
    ("brightcyan"    14 (  0 255 255))
    ("brightwhite"   15 (255 255 255)))
  )

(我没有更改"明亮*"颜色,因为我没有使用它们,而且无论如何它们似乎在X11 emacs的list-colors-display中都不可用)

通过这两个更改,对我来说,X11和终端之间的颜色看起来几乎相同。


回应迟了一点,但我遇到了黑色背景显示为灰色的问题。我通过玩调色板来修复它。

编辑>配置文件首选项>颜色>调色板


我认为以这种一般方式不可能做到。使用终端,您通常会绑定到一些预定义的颜色(使用gnome-terminal之类的工具,您可以调整这些颜色-但您仍然只能使用预定义的有限数量的颜色)。


终端默认编程文本

最新内容

相关内容

猜你喜欢