1 (изменено: Rumata, 2016-08-09 09:22:13)

Тема: BASH: Color Diff - цветной вывод diff

Решил поделиться.

Расцветка вывода команды diff. Аналоги существуют, например, colordiff, grc - generic colourizer, git diff, diff с опциями вида --X-group-format, --X-line-format, другие. Но все они либо громоздкие, либо частичные, либо требуют дополнительные средства, которые могут отсутствовать на целевой машине.

Данное решение реализовано как функция bash, может подключаться с помощью .bashrc и требует наличие bash, diff и sed. Опции командной строки анализируются, чтобы создать команды для sed, затем вывод diff передается на вход sed, который и расцвечивает вывод. Подобная техника описана в этой статье. Мое решение фактически расширяет его на все доступные форматы вывода команды diff.

Функция работает как оболочка для стандартной команды diff.
Работоспособность проверялась под Cygwin, Git For Windows, Linux.

Актуальную версию скрипта можно найти и скачать по этой ссылке.

( 2 * b ) || ! ( 2 * b )