Debian Ubuntu: большинство пейджеров не печатает необходимые цвета переднего плана - PullRequest
1 голос
/ 23 февраля 2011

Нужно
В ОС Debian / Ubuntu мне нужно напечатать (в STDOUT) файл с форматом встраивания, интерпретированный пейджером (я использую «большинство»), но это не такправильно интерполировать цвета.Все цвета переднего плана выглядят белыми, даже если они определены как черные, красные, зеленые или что-либо другое в файле.Я не могу найти настройку пейджера для принудительного использования форматов файлов.

Вопросы :
Есть ли возможность принудительно использовать пейджер "большинство" для использования форматов файлов?
или
Должен ли я использовать другой пейджер (чем "большинство")?

Некоторые подробности : пример содержимого myfile:

481\tparameter.foo.bar\t\033[1;32m\033[40m10.0.0.0/255.0.0.0, 172.16.0.0/255.240.0.0\t\033[1;31m\033[40m10.0.0.0/255.0.0.0,192.168.0.0/255.255.255.0\033[00m\n    

Работает (цвета правильно интерпретируются, когда не используется пейджер)

echo -e $(cat myfile)  

Не работает (цвета переднего плана)отображаются белым цветом с помощью пейджера "most")

echo -e $(cat myfile) | most  

или

echo -e $(cat myfile) | pager  

1 Ответ

2 голосов
/ 02 сентября 2011

Это решение, которое я разработал, чтобы получить раскраску файлов в оболочке.Сначала установите пакет source-highlight

    alex@dionisos:wikimodels$ sudo apt-get install source-highlight

Затем создайте скрипт с именем colorcat со следующим содержимым

    #!/bin/sh
    /usr/share/source-highlight/src-hilite-lesspipe.sh $*

и сохраните его на вашем $PATH.Я использовал ~/bin для этого, но /usr/local/bin также является хорошим выбором.

Сделайте сценарий colorcat исполняемым

    alex@dionisos:wikimodels$ chmod +x ~/bin/colorcat

А затем просто выполните

    alex@dionisos:wikimodels$ colorcat Comments.scala | most

и будет отображаться с красивыми цветами.

Вы также можете сделать

    alex@dionisos:wikimodels$ colorcat Comments.scala

для небольших файлов, если хотите.

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