Mercurial расширение цвета в Windows Powershell - PullRequest
16 голосов
/ 21 октября 2010

Есть ли способ включить поддержку цвета для Mercurial в Powershell в Windows 7?Страница ColorExtension говорит, что нужно добавить

[color]
mode = win32

в ваш файл .hgrc, но это, похоже, не имеет значения.

Запуск hg status показываетнесколько файлов, которые еще не были добавлены в хранилище, и я считаю, что они должны иметь розовый цвет (на основе других терминалов, которые я видел).Вот что отображается вместо:

←[0;35;1;4m? samplefile.php←[0m
←[0;35;1;4m? anotherfile.php←[0m
←[0;35;1;4m? derpderp.xml←[0m
←[0;35;1;4m? derp_model.php←[0m
←[0;35;1;4m? stillnocolor.php←[0m

Ответы [ 3 ]

15 голосов
/ 25 октября 2010

Возможно, вам нужно обновить до последней версии Mercurial (1.6.4). В частности, версия 1.5.4 не правильно работала с цветом win32 (и в последних сборках было исправлено несколько ошибок, связанных с цветом и win32).

Вам также необходимо убедиться, что вы не указываете цветовой режим ANSI. Вы можете форсировать win32:

[color]
mode = win32
4 голосов
/ 21 октября 2010

Вы также обязательно включили ColorExtension?Это необходимо и в вашем .hgrc:

[extensions]
color =

Если это тоже так, вы можете убедиться, что ваши настройки выбираются с помощью:

hg --debug showconfig
0 голосов
/ 05 февраля 2014

ColorExtension не работает в PowerShell начиная с версии 2.8, см. https://www.mercurial -scm.org / pipermail / mercurial-devel / 2013-November / 054620.html :

При использовании Windows PowerShell цвет не работает (хотя он прекрасно работает с cmd.exe).

Похоже, что при вызове _kernel32.SetConsoleTextAttribute не работает при работе в PowerShell.

Это Mercurial ошибка 4093 , которая была исправлена ​​как "не будет исправлена".Один из способов - использовать ansicon .См. этот ответ для получения дополнительной информации.

...