Emacs RedHat нежелательный пятнистый обратный видео-шрифт для тегов HTML, списков каталогов, строк кода и т. Д. - PullRequest
0 голосов
/ 19 января 2020

Системный программист установил новую версию redhat linux. С тех пор мне пришлось использовать практически нечитаемую версию emacs. Теги, метки, каталоги и т. Д. Во многих различных типах файлов отображаются как пятнистое «обратное видео». Системный программист не знает, как это исправить, и не установит другую версию emacs. Я не могу найти настройку переменной (?) Для сброса, чтобы избавиться от нее. Я не знаю ни названия эффекта, ни технического описания частей затронутых файлов.

Запуск без моего файла .emacs не помогает, и я никогда не видел этот эффект за тридцать лет использование emacs с похожим файлом инициализации.

ОС: RedHat 7.7 x86_64 Ядро: 3.10.0-1062.1.2.el7.x86_64

GNU Emacs 24.3.1 (x86_64-redhat- linux -gnu, GTK + версия 3.22.30) от 2018-09-12 на x86-039.build.eng.bos.redhat.com

Example reverse video in directory listings

Showing reverse video tags for HTML

Заранее благодарим за любые советы о том, что добавить в мой файл .emacs, чтобы избавиться от этого эффекта!

1 Ответ

1 голос
/ 22 января 2020

Я не уверен, что здесь могло измениться. Когда PuTTY подключается к серверу S SH, он отправляет «строку типа терминала». Как описано в разделе 4.15.3 Руководства пользователя PuTTY , по умолчанию используется xterm, но при необходимости его можно изменить.

Большинство современных систем должны понимать тип терминала xterm ; У меня смутные воспоминания о необходимости изменить это значение на vt100 при подключении к старой машине Solaris. Когда TERM установлен на vt100, Emacs будет искать в базе данных terminfo , чтобы понять, какие функции терминала использовать, и обнаружит, что VT100 не поддерживает цвета , Таким образом, установка TERM в xterm решает непосредственную проблему. Возможно, тип терминала был переопределен в профиле конфигурации PuTTY или где-то в файле .bashrc?


Что касается пятнистого обратного видео, то это результат настроек Emacs "face". Каталог в Dired отображается с помощью dired-directory face :

(defface dired-directory
  '((t (:inherit font-lock-function-name-face)))
  "Face used for subdirectories."
  :group 'dired-faces
  :version "22.1")

, который, в свою очередь, основан на font-lock-function-name-face:

(defface font-lock-function-name-face
  '((((class color) (min-colors 88) (background light)) :foreground "Blue1")
    (((class color) (min-colors 88) (background dark))  :foreground "LightSkyBlue")
    (((class color) (min-colors 16) (background light)) :foreground "Blue")
    (((class color) (min-colors 16) (background dark))  :foreground "LightSkyBlue")
    (((class color) (min-colors 8)) :foreground "blue" :weight bold)
    (t :inverse-video t :weight bold))
  "Font Lock mode face used to highlight function names."
  :group 'font-lock-faces)

Как вы можете видеть, он использует разные цвета в зависимости от того, сколько цветов поддерживает терминал (не менее 8, не менее 16 или не менее 88) и является ли цвет фона терминала светлым или темным. Последний параметр применяется, когда ни один из остальных не совпадает, поэтому, когда Emacs считает, что терминал не поддерживает цвета, он будет использовать жирное лицо с инверсным видео.

...