четверг, 1 сентября 2016 г.

проблема с кодировкой в Notepad++

поправка: в новых версиях Notepad++ проблема отсутствует (7.5.9), но статью оставлю на случай, если понадобится задать шаблон вновьсоздаваемого файла
--------------
столкнулся с такой проблемой:
создаешь пустой текстовый файл средствами проводника Windows (контекстное меню - Создать - Текстовый документ),
открываешься его в notepad++ - он его открывает с кодировкой ANSI, не смотря на настройки, говорящие об обратном:



Если при этом напечатать там русских символов и сохранить - при следующем открытии частенько все или некоторые буквы выводятся в неверной кодировке.

однако, если напечатать английские буквы и/или некоторые базовые символы (а точнее, только символы, кодируемые в UTF-8 одним байтом), то после сохранения такой документ открывается в UTF-8. то есть, проблема у Notepad++ - с пустым файлом (я бы назвал это багом).

Чтобы устранить проблему, я изменил шаблон вновьсоздаваемого файла: теперь у меня текстовый файл создается сразу с одним символом - пробелом. и открывается в нужной кодировке.

как это сделать:
  • в реестре находим HKEY_CLASSES_ROOT\.txt\ShellNew
  • удаляем параметр "NullFile" , который говорит о том, что должен быть создан пустой файл
  • создаем параметр Data бинарного типа, вводим значение "20", что соответствует десятичному "32" и является символом пробела. Теперь в новом документе будет ставиться пробел


Комментариев нет:

Отправить комментарий