изменить цвета emacs bash для команды ls - PullRequest
6 голосов
/ 22 февраля 2011

Я включил dircolors, чтобы при использовании ls команда ls стала желтой для папок. Проблема в том, что когда я использую оболочку в emacs, она по-прежнему показывает темно-синий цвет, который трудно прочитать на черном фоне.

Как мне изменить цвета оболочки bash, или, в частности, команды ls. Мои изменения цвета работают на открытом терминале, но не на emacs. У меня есть emacs23 с поддержкой X

Ответы [ 2 ]

10 голосов
/ 24 июля 2011

Если вы используете ansi-color, он берет цвета из вектора ansi-color-names-vector, по умолчанию:

  ["black" "red" "green" "yellow" "blue" "magenta" "cyan" "white"]

Вы можете настроить цвета вывода оболочки, изменив переменную ansi-color-names-vector.

Вот мой, хорошо с темой zenburn.

(setq ansi-color-names-vector
      ["black" "tomato" "PaleGreen2" "gold1"
       "DeepSkyBlue1" "MediumOrchid1" "cyan" "white"])

Чтобы увидеть изменения, оцените следующее выражение, а следующее примите во внимание

(setq ansi-color-map (ansi-color-make-color-map))

Надеюсь, это поможет.

0 голосов
/ 22 февраля 2011

Если вы используете Mx shell

Ch f shell RET говорит:

Если файл ~/.emacs_SHELLNAME' exists, or ~ / .emacs.d / init_SHELLNAME.sh ', он задается в качестве начального ввода (но это может быть потеряно из-за ошибки синхронизации, если оболочка отбрасываетсяввод при запуске).

Поэтому, если вы экспортируете переменную окружения LS_COLORS в ~/.emacs.d/init_bash.sh, Emacs должен использовать ее.

Редактировать: хммм ... I 'Я больше не уверен, что shell поддерживает это.(Во всяком случае, у меня проблемы с Vista + Cygwin!)

Вы также можете попробовать Mx term или Mx ansi-term

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...