Возможно ли написать макрос, который будет гибко решать какую кодировку в редакторе выставить?
- если создается новый файл, выставлять по-умолчанию UTF8
- если открывается существующий файл, определять является ли он UTF8 (есть ли в нем недопустимые для cp1251 символы и тогда, если есть, открывать как UTF8, а если нет и нет BOM в начале файла, то открывать в старой кодировке CP1251)
- а может быть еще и научить определять DOS/KOI8/UTF16...
Сейчас проблема в том, что в Far (Far2) по-умолчанию открывается как cp1251, я переделал простейшим macro-recorderom, чтобы открывалось в utf-8. Но дело в том, что сменить кодировку ПОСЛЕ открытия уже не получится - все несовместимые символы будут просто испорчены, поэтому выбирать кодировку нужно именно на этапе открытия файла (перед открытием). А у меня много файлов и в utf-8, и в cp1251, и ПЕРЕоткрывать их в правильной кодировке просто настоящее мучение. А встречаются еще и в DOS.
Можно ли макросом определить какая кодировка у файла? Сам Far как-то определяет, что в файле есть символы в недопустимой кодировке. Может и макросом можно как-то извратиться? (Можно даже отрыть два раза - сначала чтобы определить кодировку, закрыть, и открыть уже в правильной кодировке, например. Главное решить проблему, пусть и через зад.)
Макрос автоопределения кодировки для редактора
-
- Posts: 74
- Joined: Wed 11 Apr, 2007 18:23
- HaRT
- Moderator
- Posts: 10862
- Joined: Tue 30 Aug, 2005 17:21
- Has thanked: 221 times
- Been thanked: 358 times
Макрос автоопределения кодировки для редактора
Зачем макрос? Чем Вас не устраивают “[x] Autodetect code page” и “Default code page:” в настройках редактирования (Editor settings)?
Фар есть инструмент, а не нянька. © 2009 DrKnS
-
- Posts: 74
- Joined: Wed 11 Apr, 2007 18:23
Макрос автоопределения кодировки для редактора
Спасибо, попробую, - если будут глюки с определением кодировки отпишусь. Кажется я уже когда-то с этой опцией игрался, но забыл что там не устроило.
А при создании нового файла оставю макрос, автоматически выбирающий UTF-8 при нажатии Shift-F4, чтобы сразу вставляло BOM-маркер в начало файла.
А при создании нового файла оставю макрос, автоматически выбирающий UTF-8 при нажатии Shift-F4, чтобы сразу вставляло BOM-маркер в начало файла.
Макрос автоопределения кодировки для редактора
Это верно для фар2. Работа с кодировками в фар3 существенно переделана.
Насколько я помню, смена кодировки после открытия должна работать.
Кроме того можно задать utf-8 как умолчательную, управлять списком кодовых страниц при переключении по F8....
Last edited by 2useven10 on Fri 10 Mar, 2017 08:18, edited 1 time in total.