Мы пахали

2001, Сергей Голубицкий

Сегодня речь пойдет о замечательной программе Дмитрия Грибова - ClearTXT Reader's Edition . Я так трогательно анонсирую это творение, потому как сам оказался причастен к возникновению ClearTXT'а. Уже в третий раз Голубятня послужила толчком к созданию новой программы. Год назад она навеяла QReader, затем - WinClip, теперь вот - ClearTXT:


Дело было так. В Голубятне Почитай мне сказку, бабушка я посетовал о том, что нет идеальной программы для чтения электронных текстов и описал то, как мне этот "идеал" видится: читалка должна воспринимать два основных формата - html и txt, а также полный букет русских кодировок; уметь масштабировать текст, обеспечивать скроллинг, делать закладки и, наконец, при всех этих качествах работать, а не ползать.
Сразу скажу, что камнем преткновения в этом списке благородных черт, явилось масштабирование. Эта, казалось бы, пустяшная штука упиралась в серьезное переформатирование текста. А таким переформатированием не занималась ни одна "читалка". В результате при увеличении шрифта текстового файла строки разрывались и скакали по экрану.
Сразу после выхода "Бабушки" я получил письмо от молодого человека, прошедшего, как узнал я в последствие, путь от реставратора памятников деревянного зодчества через дипломированного психолога до, прости меня господи, программиста. Дмитрий Грибов начал круто: "Прочитал твою статью и подумал, что моя программа может тебя заинтересовать. Это не читалка, правда, но для работы с e-book, все же, незаменима".
Программа Димы - ClearTXT (тогда еще не Reader's Edition) - на поверку оказалась сущим монстром. Она начинала с того, что брала текстовый файл, распознавала его кодировку, способ разметки, абзацы, эпиграфы, диалоги и заголовки. Затем приводила текст в божеский вид: создавала гипертекстовое содержание, расставляла переносы (мягкие и жесткие), удаляла постороннюю информацию (скрипты, баннеры, формы, которыми кишат электронные тексты, позаимствованные с авторских сайтов), двойные пробелы, избавлялась от избыточного форматирования, горячо любимого микрософтовым Вордом, и много еще чего. К тому же ClearTXT позволял отправлять полученный HTML прямо в Rocket eBook.
До "идеала" оставалась самая малость: встроить в этот чудо-форматировщик еще и читалку. И тогда вместе с Димой мы решили возродить старую добрую сказку о деревянном мальчике. На время он превратился в папу Карло, который постоянно стругает, а я - в Буратино, который вечно капризничает. Дима выдавал на-гора беты чуть ли не каждый день, я их тестировал и сообщал, что мне не нравилось. Он ворчал, но правил, ворчал, но правил. За выполненную роль бета-тестера я даже удостоился поминания своего имени в разделе программы Special Thanks.
Сначала я убедил Грибова, что в любой уважающей читалке должна быть опция изменения цвета шрифта и фона. Добавил. Даже учел мой каприз о желательности черного фона и зеленых или желтых букв - эти настройки даны в ClearTXT по умолчанию. Затем появился скроллинг. Потом я потребовал указателя времени (дабы не зачитаться!). Поставил. Счетчик размера прочитанного текста. Есть. Автоскроллинг. Появился и он, дополненный пошаговым ускорением и замедлением прокрутки. Закладки? Да ради бога! Поиск по тексту? На, подавись! Заметки по ходу чтения? Без проблем. Последним визгом моей прихотливости стало требование создать "книжную полку" на тулбаре, с ссылкой на ранее открытые файлы. Появилась и книжная полка.
Затем началась ежедневная охота за багами. Как я достал Грибова, можно только догадываться. Он же, завершив очередную бету во втором часу ночи, лишь отшучивался: "Лови прогу, а я пошел спать. Спасибо жене за терпение - мне до дома ехать 2 часа...".
Наконец, спустя три месяца на свет появился подлинный шедевр - ClearTXT Reader's Edition. Глядя на изумительную программу, вышедшую из-под пера Дмитрия Грибова, я прослезился и тут же дал волю своей гнусной сущности - посоветовал изменить статус программы с фриварной на шареварную. Оказалось - обидел человека в самых лучших побуждениях: ему, видите ли, совестно брать деньги. А вот и его объяснение: " Программа должна быть бесплатной, потому, что пишу ее на машине с бесплатной для меня ОС (точнее, с 4-мя ОС, в которых я ее время от времени попеременно тестирую), пользуясь бесплатной средой разработки. Эту справку я верстаю в великолепной бесплатной (для меня :) программе и проверяю орфографию в бесплатном офисном пакете. Я обрабатываю графику для программы в новейших графических пакетах, которые тоже достались мне бесплатно. Я читаю и сортирую сообщения от пользователей в мощнейшей программе обмена сообщениями, а когда мне это надоест, я буду играть в самые лучшие игры, и тоже бесплатно. А по дороге на работу я буду читать книги, бесплатно скачанные мной из интернета. Это то, что первое пришло в голову. После такого свинства, могу я позволить себе совершить что-то положительное?"
Ну что тут сказать? Замечательная у нас Родина. Другое дело - за океаном: положит прохвост руку на самую захудалую и убогую программульку, писанную соседским олигофреном на бейсике, и тут же выкладывает на сайт: "Сэйл века! Обычно - 2700 долларов, но сегодня ваш день - отдаю за 400!"
Впрочем, тут не все однозначно, так что оставим тему альтруизма до лучших времен.
Дабы у тебя, читатель, не осталось привкуса меда, добавлю ложку солидола: один изъян у ClearTXT все-таки есть - поскольку программа стоит на движке MSIE, то летает она только на приличных компьютерах. А вот на маломощных уродцах типа моей Либретты начинает существенно тормозить на больших файлах (более 1 мегабайта). Могу лишь порекомендовать резать такие тексты на несколько частей.