Страница 201 из 299
Загрузить TextViewer можно с сайта Георгия Гуляева
"http://www.freespeech.org/georgy" или с сервера бесплатных программ "http://www.freeware.ru".
Aditor
Aditor — мощный текстовый редактор, отличающийся наличием множества разнообразных функций, в числе которых есть и возможность чтения и записи файлов в различных кодировках.
Чрезвычайно важной и редкой является возможность работать с текстом, написанным на Translit'e — то есть latinskimi bukvami. Иногда только такое письмо имеет шанс быть правильно прочитанным адресатом (например, когда у адресата вообще нет русифицированных программ на компьютере и работа с русскими кодовыми страницами невозможна, а также в случае, когда на пути письма стоит семибитный почтовый сервер). Aditor позволяет легко подготовить такое письмо и при необходимости прочитать текст на Translit'e.
Загрузить Aditor можно с адреса "http://perecod.chat.ru/aditor.rar" или с сервера бесплатных программ "http://www.freeware.ru".
Exclude Symbols Программа "Exclude Symbols" Вардугина Александра из Кемерова является многофункциональным пакетным обработчиком текстовых файлов. Как видно из рисунка 13.11, программа поддерживает четыре кодировки — Windows-1251, KOI-8, Dos866 и Iso-8859-5, позволяя переводить текстовые файлы из одной кодировки в другую. Допустима обработка до пятнадцати файлов за один раз: файлы обрабатываются последовательно. В программе есть также ряд весьма интересных функций, например, превращения всех символов в файле в заглавные или, наоборот, в строчные, удаления пустых строк из текста, замены групп пробелов табуляцией, замены символов в обрабатываемых файлах.
Рис. 13.11. Exclude Symbols.
Обращает на себя внимание интересная возможность автоматического определения кодировки документа. Делается это по довольно очевидному алгоритму. Вот пример. В русском языке есть союзы "и" и "в", но нет ни союзов "Ё" и "у" (символы кодовой страницы Windows-1251, имеющие такие же коды символов, как и символы "и" и "в" в кодовой странице Dos866), ни союзов "Й" и "Ч" (символы кодовой страницы Windows-1251, имеющие такие же коды символов, как и символы "и" и "в" в кодовой странице K0I-8). Поэтому ясно, что текст, открытый как имеющий кодировку Windows-1251, в котором встречаются одиноко стоящие символы "и" и "в", скорее всего, и принадлежит кодовой странице Windows-1251, если же в нем встречаются одиноко стоящие символы "Ё" и "у", то это, скорее всего, текст в кодировке MS-DOS, а если в этом тексте есть одинокие символы "Й" и "Ч", то, наверное, текст написан в кодировке KОI-8. На подобных принципах основан и способ автоматического определения кодировки документа в программе "Exclude Symbols". Поэтому можно, указав в качестве объекта для перекодирования группу файлов, не особенно беспокоиться о кодировке каждого из них — достаточно просто указать ту кодировку, которую нужно получить на выходе, а в качестве исходной поставить значение "auto". Программа сама определит для каждого обрабатываемого файла его исходную кодовую страницу, решит, нужна ли ему конвертация в другую кодировку и при необходимости выполнит такую конвертацию.
Обращает на себя внимание оригинальный и удобный нестандартный интерфейс программы. Загрузить "Exclude Symbols" можно с адреса http://perecod.chat.ru/exsym.rar.
"Штирлиц"
Программа "Штирлиц", помимо возможности чтения текстов в различных кодировках, в том числе и в Unicode, имеет очень важную и нужную функцию — функцию расшифровки неоднократно перекодированных почтовых сообщений.
Как уже писалось выше, электронное письмо, пройдя через несколько перекодирующих серверов, может стать совершенно нечитаемым. Для его расшифровки необходимо найти ту последовательность перекодировок, которым оно подверглось, и применить к письму обратное преобразование. Именно это делает "Штирлиц", созданный Всеволодом Лукьяниным. Если в него загрузить (например, перенеся с помощью буфера обмена или открыв сохраненный на диске текстовый файл) нечитаемый текст, полученный в качестве письма, то программа после вызова соответствующей функции начнет перебор возможных вариантов перекодирования, пытаясь найти ту последовательность перекодировок, которой подверглось письмо, и применить к нему обратные перекодировки. Пользователю показывается наилучший, по мнению программы, вариант раскодированного письма, — "Штирлиц" анализирует раскодированный текст и, если находит там общеупотребительные слова русского языка, то считает этот вариант раскодировки наилучшим.
Программа отличается большим набором режимов работы и функций. Так, можно подбирать схему перекодировок вручную (если есть для этого какие-нибудь предположения), задавать глубину анализа (то есть сколько раз подряд это письмо могло быть неправильно перекодировано), раскодировать текст, разные фрагменты которого имеют разную кодировку, читать тексты, написанные в Unicode-кодировке, читать тексты, написанные на Translit'e. Имеется подробное руководство пользователя и очень удобная функция деинсталляции, которая может служить примером написания таких программ. "Штирлиц" способна вытаскивать из текста письма фрагменты, закодированные в uuencode, base64 и других подобных системах передачи вложенных файлов, если почтовая программа получателя не распознала их. Для этого в "Штирлице" есть специальная функция. Кроме того, при наличии какого-либо текста в закодированном в uuencode, base64 или другом подобном формате фрагменте письма программа сможет его "вытащить" и показать пользователю.
В программе есть возможность пакетного перекодирования файлов в нужную кодировку, при этом исходная кодировка каждого файла определяется автоматически и в соответствии с ней выбирается нужный алгоритм перекодирования.
Вместе с тем программа "Штирлиц" не лишена и некоторых недостатков. Так, к сожалению, очень некорректно выполняется перекодировка в кодовую таблицу Dos866 и обратно. Несмотря на то, что при этом письмо остается в какой-то степени читаемым, выглядит оно очень непрезентабельно. Так что использование "Штирлица" в качестве программы для чтения файлов в разных кодировках может сопровождаться некоторыми затруднениями. Поэтому лучшее применение, несомненно, превосходного творения Всеволода Лукьянина — "спасение" неправильно перекодированных почтовых сообщений.
Загрузить "Штирлиц" можно с адреса http://perecod.chat.ru/shtirlz.rar.
"Декодер почты в неверной кодировке"
Эта программа Покровского А.В. - простое, но очень хорошо работающее средство для раскодирования писем, прошедших через несколько перекодирующих почтовых серверов. Она просто анализирует текст и преобразует его в читаемый вид. Несмотря на отсутствие сложных настроек и дополнительных возможностей, функцию свою "Декодер" (рис. 13.12) выполняет просто превосходно.