Для более общего решения вы можете использовать apt-cache policy, например :
$ apt-cache policy google-chrome-stable
google-chrome-stable:
Installed: 36.0.1985.125-1
Candidate: 36.0.1985.125-1
Это будет работать со всем программным обеспечением, установленным через диспетчер пакетов.
Это была ошибка в procps-ng (имя пакета Ubuntu procps), исправленная в версии 3.3.11.
В последнем Ubuntu LTS (16.04 Xenial) все еще содержится ошибка, тогда как текущие регулярные версии (17.04 Zesty и 17.10 Artful) уже отправили исправленную версию.
Это была ошибка в procps-ng (имя пакета Ubuntu procps), исправленная в версии 3.3.11.
В последнем Ubuntu LTS (16.04 Xenial) все еще содержится ошибка, тогда как текущие регулярные версии (17.04 Zesty и 17.10 Artful) уже отправили исправленную версию.
Это была ошибка в procps-ng (имя пакета Ubuntu procps), исправленная в версии 3.3.11.
В последнем Ubuntu LTS (16.04 Xenial) все еще содержится ошибка, тогда как текущие регулярные версии (17.04 Zesty и 17.10 Artful) уже отправили исправленную версию.
Комментарий egmont говорит о том, что watch не распознает ANSI 39 (сбросьте только цвет переднего плана). Это ^[[39m, как указано WJAndrea. Другие ответили, что это ошибка в procps-ng.
В других командах git, таких как diff, заметно, что жирные цвета работают, но любой неокрашенный текст, который следует за ним, сохраняет предыдущий цвет, пока появляется новый полужирный цвет. Причина в том, что жирные цвета указывают «^ [[1; ## m».
Итак, мы знали, где сосредоточиться.
Сначала я сделал быстрое регулярное выражение с sed чтобы заменить все цвета на полужирный, и работал отлично. Он просто требовал главного жирного цвета, потому что какой-то вывод git-команд не начинался цветным, а начальный регулярный текст до первого цветового кода.
Я тестировал в этот день, и этот массивный полужирный текст принимался мое внимание.
Я использую i3wm, поэтому я держу несколько терминалов, открытых бок о бок. И один яркий и красочный терминал, наблюдающий за моим git-журналом, начинал раздражать. До сегодняшнего дня я жил с неокрашенным журналом: cЕще одна проблема заключается в том, что я жестко закодировал полужирный светло-серый цвет, чтобы заменить неокрашенный текст: люди, использующие другие цветовые схемы, могли кричать на меня. [!d10 ]
Чтобы решить все, я изменил свою первоначальную идею на что-то более простое. Вместо смещения текста мне просто нужно добавить 0, чтобы сделать цветовой код действительным для watch. Изменено несколько персонажей и вуаля! Цвета выглядят так, как ожидалось, жирные тексты сохраняют свое значение, и окно, висящее вокруг, чувствует себя лучше.
Я тестировал производительность с огромной историей фиксации (> 90 тыс. Комет), и наблюдается заметная задержка некоторых миллисекунды, если вы используете флаги --graph или --date-order и, возможно, другие, но --oneline кажется безопасным. Даже просить записать только несколько коммитов дает задержку, Git должен обработать всю историю для генерации графика.
Но этот случай был экстремальным. И вам не нужно обновление 0.1s. 3 или 4 выглядит хорошо. watch -n #
Мой текущий код следующий:
#!/bin/bash
git -c color.ui=always "$@" | sed -r $'s/\033\[([[:digit:]][[:digit:]])m/\033\[0;\\1m/g; s/\033\[m/\033\[0m/g'
Я сохранил в ~/bin/git-colored с разрешением + x и его можно использовать с git colored <git command>
Решение главного сообщения: watch -c 'git colored log --oneline --graph'
Я создал файл egmont с этим файлом, где вы можете увидеть историю кода.
TL; DR
В пакете Ubuntu есть ошибка. Однострочный код выше - это обходной путь для тех, кто не может / не хочет обновлять систему, в основном делая то, что здесь.
Комментарий egmont говорит о том, что watch не распознает ANSI 39 (сбросьте только цвет переднего плана). Это ^[[39m, как указано WJAndrea. Другие ответили, что это ошибка в procps-ng.
В других командах git, таких как diff, заметно, что жирные цвета работают, но любой неокрашенный текст, который следует за ним, сохраняет предыдущий цвет, пока появляется новый полужирный цвет. Причина в том, что жирные цвета указывают «^ [[1; ## m».
Итак, мы знали, где сосредоточиться.
Сначала я сделал быстрое регулярное выражение с sed чтобы заменить все цвета на полужирный, и работал отлично. Он просто требовал главного жирного цвета, потому что какой-то вывод git-команд не начинался цветным, а начальный регулярный текст до первого цветового кода.
Я тестировал в этот день, и этот массивный полужирный текст принимался мое внимание.
Я использую i3wm, поэтому я держу несколько терминалов, открытых бок о бок. И один яркий и красочный терминал, наблюдающий за моим git-журналом, начинал раздражать. До сегодняшнего дня я жил с неокрашенным журналом: cЕще одна проблема заключается в том, что я жестко закодировал полужирный светло-серый цвет, чтобы заменить неокрашенный текст: люди, использующие другие цветовые схемы, могли кричать на меня.
Чтобы решить все, я изменил свою первоначальную идею на что-то более простое. Вместо смещения текста мне просто нужно добавить 0, чтобы сделать цветовой код действительным для watch. Изменено несколько персонажей и вуаля! Цвета выглядят так, как ожидалось, жирные тексты сохраняют свое значение, и окно, висящее вокруг, чувствует себя лучше.
Я тестировал производительность с огромной историей фиксации (> 90 тыс. Комет), и наблюдается заметная задержка некоторых миллисекунды, если вы используете флаги --graph или --date-order и, возможно, другие, но --oneline кажется безопасным. Даже просить записать только несколько коммитов дает задержку, Git должен обработать всю историю для генерации графика.
Но этот случай был экстремальным. И вам не нужно обновление 0.1s. 3 или 4 выглядит хорошо. watch -n #
Мой текущий код следующий:
#!/bin/bash
git -c color.ui=always "$@" | sed -r $'s/\033\[([[:digit:]][[:digit:]])m/\033\[0;\\1m/g; s/\033\[m/\033\[0m/g'
Я сохранил в ~/bin/git-colored с разрешением + x и его можно использовать с git colored <git command>
Решение главного сообщения: watch -c 'git colored log --oneline --graph'
Я создал файл egmont с этим файлом, где вы можете увидеть историю кода.
TL; DR
В пакете Ubuntu есть ошибка. Однострочный код выше - это обходной путь для тех, кто не может / не хочет обновлять систему, в основном делая то, что здесь.
Комментарий egmont говорит о том, что watch не распознает ANSI 39 (сбросьте только цвет переднего плана). Это ^[[39m, как указано WJAndrea. Другие ответили, что это ошибка в procps-ng.
В других командах git, таких как diff, заметно, что жирные цвета работают, но любой неокрашенный текст, который следует за ним, сохраняет предыдущий цвет, пока появляется новый полужирный цвет. Причина в том, что жирные цвета указывают «^ [[1; ## m».
Итак, мы знали, где сосредоточиться.
Сначала я сделал быстрое регулярное выражение с sed чтобы заменить все цвета на полужирный, и работал отлично. Он просто требовал главного жирного цвета, потому что какой-то вывод git-команд не начинался цветным, а начальный регулярный текст до первого цветового кода.
Я тестировал в этот день, и этот массивный полужирный текст принимался мое внимание.
Я использую i3wm, поэтому я держу несколько терминалов, открытых бок о бок. И один яркий и красочный терминал, наблюдающий за моим git-журналом, начинал раздражать. До сегодняшнего дня я жил с неокрашенным журналом: cЕще одна проблема заключается в том, что я жестко закодировал полужирный светло-серый цвет, чтобы заменить неокрашенный текст: люди, использующие другие цветовые схемы, могли кричать на меня.
Чтобы решить все, я изменил свою первоначальную идею на что-то более простое. Вместо смещения текста мне просто нужно добавить 0, чтобы сделать цветовой код действительным для watch. Изменено несколько персонажей и вуаля! Цвета выглядят так, как ожидалось, жирные тексты сохраняют свое значение, и окно, висящее вокруг, чувствует себя лучше.
Я тестировал производительность с огромной историей фиксации (> 90 тыс. Комет), и наблюдается заметная задержка некоторых миллисекунды, если вы используете флаги --graph или --date-order и, возможно, другие, но --oneline кажется безопасным. Даже просить записать только несколько коммитов дает задержку, Git должен обработать всю историю для генерации графика.
Но этот случай был экстремальным. И вам не нужно обновление 0.1s. 3 или 4 выглядит хорошо. watch -n #
Мой текущий код следующий:
#!/bin/bash
git -c color.ui=always "$@" | sed -r $'s/\033\[([[:digit:]][[:digit:]])m/\033\[0;\\1m/g; s/\033\[m/\033\[0m/g'
Я сохранил в ~/bin/git-colored с разрешением + x и его можно использовать с git colored <git command>
Решение главного сообщения: watch -c 'git colored log --oneline --graph'
Я создал файл egmont с этим файлом, где вы можете увидеть историю кода.
TL; DR
В пакете Ubuntu есть ошибка. Однострочный код выше - это обходной путь для тех, кто не может / не хочет обновлять систему, в основном делая то, что здесь.