Ответ 1
Когда программа запускает внутри shell-mode проблемы с ANSI escape-символами, чтобы установить цвет отображения, скажем, пурпурный, Emacs перехватывает эти escape-символы и создает цветной оверлей с использованием этого точного цвета переднего плана "пурпурный". Таким образом, здесь нет взаимодействия с цветовой темой, и никаких настроек, специфичных для оболочки, для поиска.
Перехват выполняется с помощью функций ansi-color.el
, и похоже, что вы можете настроить ansi-color-names-vector
, поэтому использовать "PaleBlue" для "синего", либо M-x customize RET ansi-color-names-vector
, либо попробовать поставить что-то вроде следующий в вашей конфигурации emacs:
(setq ansi-color-names-vector
["black" "red" "green" "yellow" "PaleBlue" "magenta" "cyan" "white"])
Чтобы увидеть доступные имена цветов, используйте M-x list-colors-display
или введите вместо них шестнадцатеричные цвета, например. "#ccccff".