Как мне настроить мой терминал Linux X, чтобы Emacs имел доступ к 256 цветам? - PullRequest
8 голосов
/ 26 марта 2009

Когда я запускаю emacs -nw в окне терминала X и спрашиваю M-x list-colors-display, мне предлагают ничтожную палитру:

black                                                     
red    
green  
yellow 
blue   
magenta
cyan   
white  

Мне сказали, что можно получить 265 цветов. Установка переменной окружения TERM на xterm-256color не выполняет работу. Что значит?

Ответы [ 3 ]

4 голосов
/ 26 марта 2009

Согласно это вам нужна библиотека ncurses-term в дополнение к настройке TERM в xterm-256color.

Ладно, у этого есть еще кое-что попробовать:

The xterm in Ubuntu Edgy does not advertise 256 color support by
default.  To fix this you need to install a 256 color terminfo entry,
and tell xterm to use it:

    apt-get install ncurses-term
    echo XTerm.termName: xterm-256color \
      >>~/.Xdefaults
    xrdb -merge ~/.Xdefaults

и:

So you need a file term/screen-256color.el in your load-path.  Emacs
22 expects it to contain a terminal-init-screen defun.  Emacs 21
expects it to contain a bunch of top-level forms.  Here's what I use:

    ;;; This is for GNU Emacs 22
    (defun terminal-init-screen ()
      "Terminal initialization function for screen."
      ;; Use the xterm color initialization code.
      (load "term/xterm")
      (xterm-register-default-colors)
      (tty-set-up-initial-frame-faces))

    ;;; This is for GNU Emacs 21
    (if (= 21 emacs-major-version)
        (load "term/xterm-256color"))

For Emacs 21, you also need to install the xterm-256color.el file from

    http://www.splode.com/~friedman/software/emacs-lisp/src/term/xterm-256color.el
3 голосов
/ 26 марта 2009

Установка TERM на xterm-256color - это , что вы хотите сделать. Кроме того, Emacs 22 (по крайней мере) не нуждался в каких-либо специальных настройках для отображения 256 цветов. Смотрите этот связанный вопрос . С установленным пакетом ncurses-term я смог получить 256 цветов на Emacs, используя vanilla xterm, поставляемый с моей версией Ubuntu (Interpid, в данном случае, но я предполагаю, что на предыдущих версиях все будет хорошо). Я также получил 256 цветов, используя Gnome Terminal, Konsole и PuTTY, что бы это ни стоило.

0 голосов
/ 26 марта 2009

Когда я гуглил это, у меня создалось впечатление, что большинство дистрибутивов не поддерживают 256 цветов в упакованных эмуляторах терминала.

Я подозреваю, что если вы продолжите искать, вы можете прийти к тому же выводу, что и я. Лучший ответ - скачать urxvt и скомпилировать его самостоятельно со всеми включенными звуковыми сигналами.

Я использовал vim, так что могут быть другие зависимости / ошибки, специфичные для emacs, но я уверен, что терминал, который поддерживает 256 цветов, важен.

...