Короче говоря, вот о чем и к чему я клоню. С годами выделилась группа софтверных утилит, которые интересуют меня на голову больше всего остального — это те самые выше помянутые конвертеры поточного преобразования текстовых файлов. Дело в том, что электронные книги я как и все остальные пользователи собираю по сотням сусеков, поэтому в компьютер они попадают в самом непотребном виде. Во-первых, форматы: pdf, djvu (это самые мои ненавистные — кто только придумал этот чудовищный формат!), txt, doc, rtf, fb2, epub, pdb и бог весь еще что. Во-вторых, это кодировки: Cyrillic Windows (CP-1251), Cyrillic DOS (866), Cyrillic Unix (KOI8-R) плюс вся череда европейских и экстравагантных кодировок, унаследованных из ошибок (форточных) молодости. Можно, конечно, попытаться все это хозяйство в сыром виде закинуть в базу данных и проиндексировать, но почти гарантировано на выходе вы получите бесполезный инструмент.
Почему? Потому что файлы с неопознанной кодировкой в таком — абракадабровом — виде в базу данных и попадут, где и сгинут окончательно: ведь вы никогда не сможете выйти на первоисточник по своим запросам! Многое, конечно, зависит от выбранной базы данных. В Windows нам повезло — есть фантастический Архивариус 3000, зато под Mac OS X дела обстоят сильно печальнее: встроенный Spotlight, умиляющий примитивом, да FoxTrot Professional Search за какие-то непотребные деньги — 100 евро, которые, может, и оправдались бы, если бы продукт был достойный. А так — ползает еле-еле хуже даже почившей в бозе недотыкомки Евфрат Документооборот (когда-то лет 10 назад я сравнивал эту базу данных с восходящей звездой Cros, а года четыре назад уже и сам Cros уступил все лавры первенства Архивариусу 3000 — эх, бегут годы, бегут!).
Так вот: и Spotlight, и FoxTrot виндузовые кодировки в чисто текстовых файлах по умолчанию не понимают. Индексируют абракадаброй со всеми вытекающими. Можно, конечно, каждый файл отдельно открывать в TextEdit и перекодировать в UTF-8, но у меня этих файлов — с расширением TXT — в библиотеке тысяч сорок, если не более.
В итоге самыми востребованными в моем хозяйстве стали программы, которые на потоке преобразую различные текстовые файлы: конвертируют из одного формата в другой, меняют кодировки, унифицируют форматирование и прочая.
Вопросы унифицирования формата в Mac OS X решаются вполне себе пристойно: программа TextSoap вполне себе достойна форточного титана TextPipe Pro. Конвертация форматов по моим запросам более ли менее решается планомерным уничтожением в библиотеке дикого Djvu с помощью ABBYY Finereader. Под Маком существует только обрезанная версия Express, которая Djvu не понимает, зато с ним можно разобраться в версии Finereader для Windows с помощью дополнения DjVu.dll.
Для конвертации кодировок под Mac OS X нет ничего путного даже рядом (вполне, впрочем, вероятно, что плохо искал, так что если кто знает, поделитесь знаниями, пожалуйста), поэтому опять же приходится запускать виртуальную машину Parallels, а на ней — voila героиня нашей сегодняшней истории! — маленькую блестящую утилитку по имени UTFCast.
Надо сказать, что кодировочных конверторов для Windows создано море разливанное, однако я специально привлекаю внимание читателей именно к UTFCast — не только потому, что утилита жуть какая шустрая, удобная и надежная, но и потому что делает она единственно правильное дело: конвертирует кодировочный хлам прошлого в Unicode (UTF-8, UTF-16 или UTF-32). И это правильно, потому как, чем скорее все свои текстовые документы мы унифицируем в уникоде, тем проще нам будет жить и работать в будущем.
UTFCast представлен в двух ипостасях: бесплатной версии Express, которой мне лично хватило за глаза даже для поточной конвертации нескольких десятков тысяч файлов, и в платной Professional, которая за скромные 30 долларов позволяет конвертировать не только UTF-8, но и 16/32, обладает продвинутой техникой определения кодировок (30 штук) и обрабатывает в несколько потоков миллионы файлов на головокружительной скорости 40 мегабайт текста в секунду.
Welcome, короче, to the future!