Kaleidoscope: красивое сравнение файлов

Хочется закрыть глаза. Это нормально. Цветной калейдоскоп, блестки, искрящийся звездный вихрь — красиво, но я знаю, что стоит за этой красотой.
Глубина. Ее называют «дип», но мне кажется, что по-русски слово звучит правильнее.
Сергей Лукьяненко, «Лабиринт отражений»

👌 В телеграм-канале «Лайфхакер» лучшие статьи о том, как сделать жизнь проще.

Калейдоскоп — всеми известная с самого раннего детства оптическая игрушка, выполненная, как правило, в виде трубки. Смотря в калейдоскоп и при этом поворачивая его, можно наблюдать за сменой красивых симметричных узоров — или, проще говоря, — изображений. Но игрушки были оставлены в детстве, и вот уже взрослые разработчики компании SOFA (известной своими приложениями Versions и Checkout, взявшими награды Apple Design Award) написали вполне серьёзный продукт для сравнения файлов всё с тем же названием — Kaleidoscope.

Kaleidoscope — приложение для нахождения различий между двумя изображениями или текстовыми документами. И в отличие от остальных 17 (по данным Википедии) приложений для сравнения файлов, что существуют для Mac OS X, Kaleidoscope в выгодную сторону отличается невероятно притягательным дизайном, удобством использования и расширенной функциональностью. Всё-таки сравнение изображений не входит в число стандартных функций другого подобного софта.

Не знаю, как у вас, а у меня сплошь и рядом лежат несколько ревизий одного и того же файла. Это то куча html-файлов, накопившаяся при экспериментировании в вёрстке, то целый ряд «фотошопных» *.psd-изображений с едва отличающимися слоями. При таком странном хобби, как веб-дизайн и вёрстка, этот рабочий бардак в порядке вещей, но с ним нужно как-то уживаться. Тут-то и помогает Kaleidoscope — он умеет находить различия в многих типах файлов, включая графические psd, jpg и png. Что и говорить про всякие там текстовые txt, doc, php, rb и прочие файлы — они тоже поддерживаются на ура!

Ладно, давайте уже запустим Kaleidoscope и посмотрим, что же он из себя представляет.

При первом запуске будет предложено установить ksdiff — консольную утилиту для открытия файлов для сравнения в Kaleidoscope из командной строки — на радость трудящимся в консоли программистам. Кроме того сразу же можно будет интегрировать Kaleidoscope с Subversion-клиентами Versions и Cornerstone, а также бандлом TextMate. Помимо этого Kaleidoscope можно интегрировать с Subversion, Mercurial, Bazaar и Git для использования в командной строке вместо стандартной утилиты diff.

Сравнение текстовых файлов

Для сравнения двух файлов их нужно переместить в главное окно Kaleidoscope прямо из Finder, либо набрать в командной строке ksdiff путь_к_файлу_1 путь_к_файлу_2. После этой несложной операции в главном окне Kaleidoscope появляется две панели с содержимым файлов. Kaleidoscope анализирует файлы и подсвечивает отличающиеся фрагменты. Добавленные фрагменты выделяются зелёным, удалённые красным, изменённые фрагменты подсвечиваются фиолетовым цветом, а внесённые изменения внутри этих секций — тёмно-фиолетовым.

В самом верху окна Kaleidoscope располагается кнопка, с помощью которой можно поменять местами панели с текстом файлов, а также отображается путь к сравниваемым файлам. В правом нижнем углу окна находятся кнопки для быстрого перехода к предыдущим и последующим отличающемся фрагментам, а в левом нижнем углу — кнопки для переключения между тремя различными режимами просмотра: Blocks, Fluid и Unified (блочный, текучий и объединённый).

Подробнее о режимах

Режим Blocks
Режим Blocks пытается выровнять фрагменты двух текстовых файлов, чтобы они находились бок о бок. Для этого корректируется расстояние между текстовыми фрагментами, при необходимости добавляя пустое пространство. Данный режим упрощает визуальное сравнение файлов, но порой значительно увеличивает высоту документа.

Режим Fluid
Этот режим оставляет файлы в исходном виде, визуально отмечая изменившиеся фрагменты файлов — с помощью разноцветных линий. Режим Fluid выглядит более компактным, нежели режим Blocks, но при этом вносит некоторую путаницу и несколько усложняет сравнение файлов.

Режим Unified
Режим Unified, как несложно понять из его названия, соединяет два текстовых файла в один единственный документ. Одинаковые фрагменты объединяются, а изменённые — располагаются один под другим, при этом узнать, какой фрагмент какому документу принадлежит, можно в левом дополнительном информационном столбце.

Сравнение графических файлов

Начало точно такое же — перетаскиваете два изображения в Kaleidoscope и приступаете к сравнению с помощью различных режимов просмотра. Есть ли различные удобства? Да, есть. Например, изображения можно увеличивать и передвигать, растягивать до масштаба 1:1 или просто на всё окно.

Выбор режимов

Для сравнения графических файлов есть четыре режима: Two-Up, One-Up, Split и Difference. Первый из них, Two-Up, одновременно показывает два изображения в двух блоках — горизонтальных или вертикальных, как того захочет пользователь. В режиме One-Up показывается одно изображение, но можно быстро переключиться на другое или же устроить слайд-шоу из этих двух изображений с заданным временным интервалом. Режим Split накладывает одно изображение на другое, при этом пользователь может строить прямую линию, которой одно изображение будет отделяться от другого.

В последнем режиме Difference показывается одно изображение, на котором отмечаются различающиеся участки. В этом режиме можно мгновенно переключаться между двумя изображениями и настраивать прозрачность слоя с подсвеченными различающимися участками.

Про интеграцию Kaleidoscope с различными программами и различными системами управления версиями файлов я уже вскользь упомянул — там нет ничего сложного и сверхъестественного. Это и отличает программу от остальных в классе: никаких сложностей и излишеств — лишь удобный интерфейс и простая, понятная первоначальная настройка.

Благодаря такой простоте и отличному дизайну, Kaleidoscope входит в ряд тех программ, которые доступны лишь на Mac OS X, и благодаря которым хочется работать именно в Mac OS X. Неудивительно, если ещё раз вспомнить о том, что компания-разработчик SOFA за свои программы Versions и Checkout удостаивалась премии Apple Design Award в 2009 и 2008 годах.

С другой стороны, если вам, например, вовсе не нужно сравнивать графические файлы и тем более наплевать на красоту приложения, то проще и логичнее будет выбрать тот же diff, diff3 или DiffMerge. Они бесплатны, а вот за Kaleidoscope придётся отдать 29 евро. Прежде чем отдавать за программу деньги, её можно бесплатно скачать и пользоваться ей в течение месяца.

Это упрощённая версия страницы.

Читать полную версию
Если нашли ошибку, выделите текст и нажмите Ctrl + Enter