相关疑难解决方法(0)

终端emacs颜色仅适用于TERM = xterm-256color

我发现除非我明确设置TERM = xterm-256color,否则终端emacs不会呈现正确的颜色.我使用gnome-terminal,根据我的理解,TERM应该设置为gnome-256color.同样,我倾向于使用tmux,它建议不要使用除screen-256color之外的任何TERM设置.不幸的是,这两个设置(在它们各自的上下文中 - gnome-terminaltmux)导致emacs具有错误的颜色,而vim正确显示颜色.但是,如果我export TERM=xterm-256color,这些颜色在emacs中运行得很好.

任何人都可以解释发生了什么,或提供解决方案?

更新

这是我正在处理的事情:

在此输入图像描述

我可以在终端中添加以下内容,使终端中的颜色看起来正确init.el:

(defun terminal-init-gnome ()
  "Terminal initialization function for gnome-terminal."

  ;; This is a dirty hack that I accidentally stumbled across:
  ;;  initializing "rxvt" first and _then_ "xterm" seems
  ;;  to make the colors work... although I have no idea why.
  (tty-run-terminal-initialization (selected-frame) "rxvt")

  (tty-run-terminal-initialization (selected-frame) "xterm"))
Run Code Online (Sandbox Code Playgroud)

但这感觉真的非常错误.必须有一个合乎逻辑的解释...

PS

我对terminfo以及在$TERM彩色终端行为过程中扮演的确切角色知之甚少.如果总是使用它是安全的xterm-256color(即使$TERM"应该" gnome-256color或者screen-256color),我会继续使用它.

emacs

32
推荐指数
5
解决办法
2万
查看次数

标签 统计

emacs ×1