【问题标题】:How do I change the color settings in emacs23 running in a terminal emulator?如何更改在终端模拟器中运行的 emacs23 中的颜色设置?
【发布时间】:2010-06-12 01:03:49
【问题描述】:

我使用xterm并将其外观设置为~/.Xdefaults

XTerm*background:       paleTurquoise
XTerm*foreground:       black

我也使用 emacs,但在~/.emacs 中设置了不同的外观:

(set-background-color "black")
(set-foreground-color "yellow")

我通常在终端模拟器中使用emacs -nw 运行 emacs,而不是创建一个单独的 X 窗口。出于某种原因,这不适用于 emacs23;相反,emacs 保留了我的 xterm 窗口的淡青绿色背景。看着what's new in emacs23,我注意到:

** 当在足够新的 xterm(比版本 242 新)中运行时,Emacs 会询问 xterm 背景颜色是什么,如果需要,它会相应地为深色背景设置面(当前默认是考虑背景光) .

所以这是一个功能,而不是一个错误?无论如何,有什么方法可以告诉 emacs23 在控制台模式下运行时忽略 xterm 后台设置,而改用 ~/.emacs 中的设置?

我还要注意:

  • 在单独的 X 窗口中运行的 emacs23 中运行良好(没有 -nw 选项)。
  • 在 emacs22 中运行良好;而且我不确定是否需要使用 emacs23...
  • emacs23 -nw 内运行M-x set-background-color 无效。
  • 不仅仅是 xterm:例如,$TERM=cygwin 也存在同样的问题。

更新:最好的答案似乎是使用-fg-bg 命令行选项...

【问题讨论】:

    标签: emacs emacs23 xterm


    【解决方案1】:

    设置TERM=xterm-256color 是您所需要的。

    【讨论】:

    • 谢谢,但这没有用。我认为问题是如何覆盖 emacs23 的默认行为(emacs22 中不存在)。当我运行emacs23 -nw 时,显示屏会显示颜色——但它们是错误的。它采用我终端的设置,不允许我更改它们。
    • 是的,命令行参数似乎可以做到这一点,谢谢!这当然不是一个很好的解决方案,但我想我可以在我的.bashrc 中设置一个别名,然后尝试记住我无法在我的.emacs 中设置这个特定配置。
    • @Anonymous 别名 -bg 不是必需的。取而代之的是 (set-background-color "blue") 使用 (set-face-attribute 'default nil :background "blue") 在终端中工作。
    猜你喜欢
    • 2012-06-27
    • 2015-12-05
    • 2016-07-21
    • 2011-01-26
    • 2016-08-06
    • 2023-03-18
    • 2017-08-01
    • 2021-05-18
    • 1970-01-01
    相关资源
    最近更新 更多