Обзор расскажет вам о программах, которые помогут сравнить два текстовых файла и подскажут, где именно были сделаны изменения. Также вы узнаете еще один способ быстро вводить слова при наборе текста, а также о программе, которая показывает весь календарик на любой выбранный год ближайших столетий.
Еще один способ
Чтобы окончательно и бесповоротно добить тему быстрого ввода текста, давайте вернемся к уже рассмотренной ранее утилите AutoWord, о существовании которой напомнил в своем письме Геннадий Симонович.
Итак, программа предназначена для быстрого ввода текста и работает по такому же принципу, что и рассмотренные в предыдущих номерах. То есть после нескольких введенных букв появляется подсказка, которую вы можете принять, тем самым несколько ускорив набор текста.
К программе дополнительно можно скачать словарную базу русского языка, что позволит ей сразу, без обучения, выводить подсказки. Из особенностей AutoWord стоит отметить возможность пополнения имеющегося словаря и поддержку работы с редактором Word, которая зачем-то была отключена в последней версии. Подробности читайте в обзоре "Врачевание без вреда своему здоровью" (см. №35 за 2001 год).
Быстрые месяцы
Месяцы бегут быстро, а еще быстрее летят дни. Если вам захотелось распечатать календарик на весь год или вы хотите точно знать, на какой день недели выпадает тот или иной праздник, то можете воспользоваться услугами программы "Календарь 1900-2099 г.г.".
Необходимо только в окно программы ввести интересующий вас год (как явствует из названия, он должен принадлежать отрезку 1900-2099), как тут же появятся все 12 месяцев, выглядящие точно так же, как и на бумажном аналоге. Как говорит сам автор программы, "я писал эту программу, чтобы иметь под рукой календарь с подсчётом недель и напоминалкой". Да-да! Программа может также своевременно предупреждать о предстоящих праздниках.
После установки "Календарь 1900-2099 г.г." уже включает в себя список праздников России, причем программа позволяет пополнять базу данных памятных дат. При этом все "красные дни календаря", то есть праздничные даты, выделяются в календаре цветом, а чтобы узнать об этом дне подробнее, по нему достаточно щёлкнуть мышкой.
Напоследок остается отметить, что для корректной работы программе потребуется библиотека VB6.
Сравнение текстовых файлов
Идем дальше. Иногда возникает необходимость сравнить два текстовых файла. Как правило, недостаточно сказать, совпадает их содержимое или нет - необходимо еще определить, чем именно они отличаются. Вполне может возникнуть такая ситуация, когда, например, протокольный файл, созданный некой программой, был подвергнут насилию с чей-то стороны, и ваша задача - определить, где произошли изменения (то есть где конкретно удалены знаки или даже строки, а где, наоборот, добавлены). Нет, мы не будем здесь рассматривать алгоритм сравнения файлов (кстати, подозреваю, что это делается с помощью LCS - Largest Common Sequence), а попробуем рассмотреть несколько программных экземпляров, предлагающих решение поставленной задачи.
Стоит заметить, что общее между ними - это внешний вид и принцип работы. Так, любая такая программа содержит два окна, в каждое из которых загружается по файлу. Далее по нажатию кнопки происходит сравнение текстов, и, если найдены различия, они показываются с помощью цвета. При этом каждая строка файла пронумерована, что позволяет быстро сказать, в каком именно месте произошло "вторжение". Скорость работы любой программы довольно высока: даже для текстовых файлов большого объема она составляет порядка 3-4 Мб за несколько секунд. Но довольно слов - ближе к делу!
Первая программка - это "Визуальный Компаратор", то есть "Visual Comparer". Все сказанное выше справедливо для нее, так что остается только добавить, что программа умеет подсвечивать синтаксис языков С\С++, C# и Perl (при этом используется теория построения лексических анализаторов), а в будущем планируется к этому списку добавить JScript, VBScript, HTML. Если говорить о недостатках, то мне не понравилось несколько агрессивное желание программы сразу просить показать, с чем же надо работать, при этом главное окно еще даже не открыто...
Самое вкусное. Наверняка все пользователи Windows Commander обрадуются, когда узнают о том, что инструмент сравнения файлов уже изначально встроен в этот файловый менеджер. Вызывается эта утилита через меню "File", пункт "Compare by Content". Интерфейс утилиты довольно прост и содержит все самое необходимое (за это, в принципе, она мне и понравилась), а результаты выводятся в окна только в том случае, если в двух текстах были найдены отличия.
Так же понравилась простая утилитка FileDiff - в ней нет ничего лишнего. Единственное, перед запуском показывается окно, напоминающее, что программа не зарегистрирована, что, тем не менее, не мешает дальнейшей работе с FileDiff.
На фоне рассмотренных бесплатных, но при этом функциональных утилит как-то особнячком стоит Active File Compare, автор которой захотел стать оригинальным и брать за регистрацию денежку. При этом Active File Compare ничем особенным от рассмотренных выше разработок не отличается. Разве что стоит отметить встроенный "Менеджер файлов", состоящий из двух панелей, что позволяет сравнивать содержание двух папок.
Вот и все. Думайте, что конкретно вам хотелось бы сравнивать, и выбирайте. Я бы предпочел использовать утилиту в Windows Commander'е.
Павел БАДЯЛИК,
fpmi@tut.by
Программы, упомянутые в обзоре,
можно скачать вот откуда:
AutoWord [4.03 Mb], shareware, www.autoword.chat.ru/AutoWord4.zip
Словарь русских слов для AutoWord [567 Kb], freeware, www.autoword.chat.ru/AutoWordDicRus.zip
"Календарь 1900-2099 г.г." [34 Kb], freeware, shlepok.nm.ru/Files/CALENDAR.zip
"Visual Comparer" [1540 Kb], freeware, www.nikeware.com/download/VisCmp_0890154_mfc.exe
FileDiff [855 Kb], freeware, 209.95.106.186/public/fdiff.exe
Active File Compare [578 Kb], freeware, www.formulasoft.com/download/afc.zip
Комментарии
автор> "Визуальный Компаратор", то есть "Visual Comparer"
Сразу чувствуется знание английского :-)Вообще-то подобных программ (я про компараторы) достаточно. Причем в обзоре отсутствуют фавориты:
"Beyond Compare" - http://www.scootersoftware.com/
"Araxis Merge" - http://www.araxis.com/
"Compare It!" - http://www.grigsoft.com/
автор> Скорость работы любой программы довольно высока: даже для текстовых файлов большого объема она составляет порядка 3-4 Мб за несколько секунд.
Копирайт хотя бы поставили :-( Слизали блин с сайта :-) Прикол в том, что тестировалась прога как раз на файлах подобного размера (просто под рукой именно такого объема и оказались). Попались бы, например, файлы 5-6 Мб, наверняка бы в статье была другая цифра :-)))
Про "агрессивность": а какая разница когда выбирать в диалоговом режиме сравниваемые файлы? До или после появления главного окна? Если уж пользоваться Windows Commander, то не проще ли настроить вызов через командную строку в меню "Configuration"-"Button bar.." у того же Windows Commander? В Edit box'е "Parameters" прописать "%P%N %T%M", выставить в панелях Командера текущими нужные файлы и просто нажать иконку Компаратора? Обещаю, агрессивных диалогов не будет :-)
"Syntax highlight" для JScript уже работает.
Ну а за рекламу Огромное Спасибо!!! Заходите как-нибудь через пару месяцев в гости. Готовится release candidate.
Автор "Визуального Компаратора" :-)
http://www.nikeware.com