Розробники DiffDog постаралися врахувати всі ці особливості і вбудували в програму ряд нетривіальних можливостей, які роблять DiffDog просто незамінною в задачах порівняння XML-файлів.
порівняння файлів
Зовні інтерфейс DiffDog відповідає класичному інтерфейсі, що застосовується в більшості програм порівняння. Є дві розташовані поруч панелі, що відображають вміст порівнюваних файлів. Над кожною знаходиться панель інструментів, що показує назва відкритого файлу і містить кнопки, що дозволяють відкрити, зберегти і перечитати вміст файлу. Знизу відображається рядок статусу, в якій виводиться підсумкова інформація про наявні в файлах відмінностях. Відмінності в тексті файлів виділяються кольором.
Порівняння тексту в Altova DiffDog
Візуалізація доданих і віддалених рядків
Більшість цікавих можливостей DiffDog стають доступними при відкритті XML-файлів. DiffDog завжди автоматично визначає наявність XML-розмітки в відкритому файлі і незалежно від розширення файлу активує можливості по роботі з XML.
Порівняння XML в Altova DiffDog
Перш за все змінюється спосіб відображення файлу. З'являються підсвічування синтаксису XML-розмітки, пунктирні напрямні лінії, що з'єднують відкривають та закривають вузли. Якщо документ виглядає негарно, можна скористатися функцією Pretty-Print, яка дозволяє автоматично відрегулювати величину відступів так, щоб чітко була видна деревоподібна структура документа і всі закривають вузли розташовувалися безпосередньо під відкривають.
З'являється можливість згортати і розгортати вміст вузлів - source-folding. Правда, ця можливість працює лише в тому випадку, коли формат файлу, що зареєстрований в налаштуваннях програми і явно позначений як XML. Якщо розширення вихідного файлу програмі не відомо, то можливість згортання вмісту вузлів не працює.
Табличне відображення XML в Altova DiffDog
DiffDog реалізує функцію автоматичного завершення імен при наборі, що спрощує процес редагування коду. Назви закривають вузлів підставляються автоматично, при введенні назв атрибутів і відкривають вузлів програма виводить список відповідних варіантів, грунтуючись на DTD-схемі. Відредагований документ можна перевірити двома способами: переконатися, що він є правильно побудованим, т. Е. Розмітка XML в ньому коректна, і перевірити, що він є дійсним, т. Е. Відповідає DTD-схемі.
DiffDog підтримує два режими порівняння текстових файлів: у вигляді тексту і у вигляді XML. Кожен режим має ряд налаштувань. Особливо багатий настройками режим порівняння XML - можна чітко задати, які зміни в розмітці при порівнянні потрібно ігнорувати, а які - відображати. Користувач може самостійно вибирати, який режим порівняння потрібно використовувати - текстовий або xml, а може доручити програмі вибирати відповідний режим автоматично.
Параметри порівняння XML-файлів
Всі знайдені відмінності в файлах DiffDog підсвічує кольором. Користувачеві надається набір команд, що дозволяє переходити від зміни до зміни і об'єднувати зміни між собою. Причому всю роботу можна вести з клавіатури. Клавіші "Alt + Вгору", "Alt + Вниз" дозволяють переходити до попереднього та наступного зміни, "Alt + Вліво", "Alt + Вправо" - копіювати змінений текст зліва направо і справа наліво. До речі, після кожного копіювання DiffDog автоматично переходить до наступного знайденого відмінності. З одного боку, це зручно, з іншого - текст на екрані весь час рухається і до таких стрибків тексту доводиться пристосовуватися.
порівняння директорій
Крім файлів, DiffDog дозволяє порівнювати вміст директорій і zip-архівів. Інтерфейс відповідає класичному - вміст директорій відображається на двох розташованих поруч панелях, відмінності виділяються кольором. Відповідні один одному файли і директорії розташовуються на панелях навпроти один одного, додані файли доповнюються порожніми рядками на сусідній панелі.
Панель інструментів, розташована зверху, дозволяє налаштовувати порядок відображення вмісту порівнюваних директорій. Можна розкрити і згорнути вкладені директорії, відфільтрувати список відображуваних файлів за типами, включити або відключити режим порівняння вкладених директорій, показати або приховати нові файли на лівій або правій панелі і т. Д. Такий потужний набір інструментів, що дозволяють практично довільним чином відфільтрувати вміст директорій, може виявитися дуже корисним, оскільки в синхронізації беруть участь тільки відображаються файли.
DiffDog дозволяє проводити синхронізацію двома способами: крок за кроком або цілком. Покроковий режим дозволяє вибирати і синхронізувати файли вручну. Підтримуються ті ж комбінації клавіш "Alt + Вгору", "Alt + Вниз", "Alt + Вліво", "Alt + Вправо", що і у вікні порівняння файлів. На жаль, в такому режимі можна синхронізувати тільки по одному файлу за раз - кілька файлів відразу виділити не виходить.
Другий режим синхронізації дозволяє однією командою синхронізувати відразу всі вибрані в директоріях файли. В цьому режимі відкривається окреме діалогове вікно, в якому можна задати параметри синхронізації. DiffDog автоматично визначає способи синхронізації для всіх файлів і вкладених директорій таким чином, щоб в результаті обидві директорії містили найбільш свіжі версії файлів або найбільш старі версії файлів - як ви обрали. При бажанні для кожного файлу можна задати спосіб синхронізації окремо.
DiffDog коректно працює з текстовими файлами, закодованими в Unicode або UTF8. Без проблем відображає файли в Windows-1251. Однак інші кодування російської мови не підтримуються, так що файли в KOI-8 або OEM866 доведеться попередньо перекодувати.
Кодування DiffDog визначає автоматично, можливості вказати її явно не передбачено. Як відомо, в XML-файлі кодування опціонально можна вказати в заголовку. Якщо вона там вказана, то DiffDog відображає XML коректно. Якщо не вказана - можливо відображення файлу в вигляді крокозябріков, яке можна перемогти тільки одним способом - явно прописати кодування в заголовку файлу.