LinuxForum.Fans
Тема

Konsole - отображение ESC-последовательностей

Автор: ManGO 3 сообщений 1236 просмотров
#264785

Всем привет.
Возник такой вот интересный вопрос:
при запросе

text
git status

все красиво отображается в цвете
а при запросе

text
git log

все получается обычным цветом консоли, но в строках отображаются esc-последовательности

text
ESC[33m

- желтый, насколько я понял... почему оно так по-разному работает. не подскажете?

#264841

Здравствуйте, ManGO.

Видимо дело в настройках цветного вывода в Git. В этой системе контроля версий можно отдельно задавать параметры вывода для разных команд.

Например, следующая команда:

[console]
$ git config --global color.status true
[/console]

Установит для текущего пользователя цветной вывод только для команды `git status`. Вывод всех остальных команд останется монохромным.

Обратите внимание на то, что значение true будет выводить цвет лишь только в том случае, если вывод идет в STDOUT и не перенаправляется в пейджер (more, less) или в файл.

Для того, чтобы установить постоянный цветной вывод, необходимо использовать значение always:

[console]
$ git config --global color.status always
[/console]

Если вам необходимо установить цветной вывод для всех команд, используйте опцию color.ui:

[console]
$ git config --global color.ui always
[/console]

В примерах я использовал флаг --global, который позволяет настроить Git для текущего пользователя. В этом случае изменения в настройках вносятся в файл ~/.gitconfig. Для системной настройки Git'а используйте опцию --system, или не используйте вообще никаких опций для попроектной настройки. В этом случае изменения будут вноситься в файлы /etc/gitconfig и .git/config соответственно.

Более подробно о настройке Git'а читайте в инструкции (`git help config`).

#264883

Спасибо за ответ, но речь идет о том, что Konsole не отображает некоторые команды в цвете НО! строки содержат ESC-последовательности символов, но выводятся как простой текст. например так:
[console]ESC[33mcommit e28fb7120edfe1f3a72701b395e0fe158bf29542ESC[m[/console]

Ответ лежит здесь: http://stackoverflow.com/a/8484197/355729

Так что всем большое спасибо. Вопрос решился.

Войдите или зарегистрируйтесь, чтобы ответить.