Может ли меньше сохранять цветной выход?
Могу ли я получить меньше, чем монохромный выход?
Например, вывод из git diff
окрашен, но git diff | меньше
нет.
6 ответов
Использование:
git diff --color = always | меньше -r
- color = always
, чтобы сообщить git
для вывода цветовых кодов, даже если выход представляет собой канал (а не tty). И -r
, чтобы сообщить less
, чтобы интерпретировать эти цветовые коды и другие escape-последовательности. Используйте только -R
только для цветовых кодов ANSI.
Другой вариант - включить цвета и использовать «меньше -r» в качестве пейджера.
git config --global color.ui true
git config --global core.pager 'less -r'
В результате получается
[цвет]
ui = true
[Ядро]
pager = less -r
в ~ /.gitconfig
Для получения дополнительной информации см. Pro Git book .
Используйте параметр -r
(- raw-control-chars
) меньше или также -R
(только escape-последовательности ANSI) .
У меня есть псевдоним для этого в ~ /.bashrc
alias rless = 'less -r'
Также tree
имеет возможность принудительно добавлять цвета:
дерево -C | меньше -r
И так далее для ls
:
ls -lR --color | меньше -r
Просто добавьте еще одну версию на «use less -r»:
используйте переменную окружения LESS со значением r (или добавьте r к тому, что уже есть)
например, поскольку я использую его в своем .bashrc
export LESS = -Xr
(X останавливает экран при очистке при выходе из него)
Если кто-то заинтересован в paging json с jq
и less
, это может быть достигнуто с помощью:
jq -C <jq args> file.json | меньше -R
например.
jq -C. file.json | меньше -R
Источник: https://github.com/stedolan/jq/issues /764 # issuecomment-95355331