Русская версия страницы   English page version CaptainFlint Software English page version   Русская версия страницы   
Главная страница
Новости
Программы
О проекте
Связь с автором

Плагин для EmEditor Codepage Converter

Скриншот

EmEditor это очень мощный текстовый редактор. Его возможности настолько широки, что даже вкратце описать их довольно затруднительно… Подсветка синтаксиса с индивидуальной настройкой редактора под каждую схему подсветки, поддержка регулярных выражений, поиск и замена текста сразу во многих файлах, поддержка большого числа кодировок, включая полноценный Unicode, и многое-многое другое.

Помимо этого, редактор поддерживает плагины и макросы, что ещё сильнее расширяет возможности этого редактора. Codepage Converter это плагин, позволяющий преобразовывать текст из одной кодовой страницы в другую.

Вообще говоря, сам EmEditor позволяет загружать текст в той кодовой странице, в которой нужно. Однако у такого подхода есть определённые недостатки:

  1. Невозможно преобразовать текст, не сохраняя его на диск.
  2. Невозможно преобразовать только часть текста (разве что скопировать эту часть в другое окно редактора, сохранить его там, загрузить в новой кодировке и скопировать обратно).
  3. Если в системе переопределены кодовые страницы, то загрузить файл в нужной странице не удастся.

Про последний из них я расскажу чуть поподробнее. ОС Windows страдает давним недугом, по поводу которого Microsoft почему-то упорно не желает ничего предпринимать: когда вы копируете текст в буфер обмена из программы, не обладающей поддержкой юникода, скопированный текст может оказаться совсем не тем, что вы видели на экране. Например, вы выделяете и копируете в буфер слово "текст", а в буфере при этом оказывается "òåêñò". Если вас интересуют технические детали, отсылаю вас к написанной мной статейке, а здесь опишу лишь краткие выводы. Решить проблему можно лишь двумя способами, и оба небезупречны. Первый состоит в том, чтобы каждый раз перед копированием русского текста переключать раскладку клавиатуры на русскую. Второй заключается в подмене в реестре английской кодовой страницы (1252) на русскую (1251). Делается это импортированием в реестр следующего файла:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"1252"="c_1251.nls"

ВНИМАНИЕ! При внесении изменений в реестр будьте внимательны! Некорректное изменение данных в нём может привести к ошибкам в системе и даже к её "падению"!

После этого копирование текста будет происходить корректно, но вот EmEditor уже не сможет нормально загружать текст в 1252-ой кодовой странице, поскольку система будет преобразовывать его в юникод, используя 1251-ю страницу, как и указано в реестре. Как же быть? Вот тут на помощь и приходит плагин Codepage Converter. Он умеет конвертировать текст из одной кодовой страницы в другую, не пользуясь средствами, предоставляемыми системой, а считывая непосредственно нужные NLS-файлы, независимо от того, что указано в реестре. В результате, конвертация текста (или его части) выполняется именно в ту кодовую страницу, которую вы укажете.

Ссылки на скачивание:

Плагин Версия Размер Скачать
[+] Codepage Converter x32 1.1 110 727 байтов Скачать
Codepage Converter x64 1.1 125 383 байта Скачать