Редактор FAR2: Проблемы с переключением кодовых страниц

Вам не хватает чего-то в Far? Вы считаете, что вашу идею стоит услышать? Пишите сюда.
User avatar
John Doe
Бюрократ
Posts: 13067
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 42 times
Been thanked: 319 times

Редактор FAR2: Проблемы с переключением кодовых страниц

Post by John Doe »

Нужна возможность автоматического определения кодировки файла по запросу.

Если при редактировании какого-либо файла случайно поменять кодовую страницу - она запомниться, и при повторном открытии того же файла будет выставляться запомненная (неправильная) кодировка.

Не существует возможности определить кодировку заново, и чтобы вернуть правильную есть только один путь - ручной перебор.

Однако и с ручным перебором не всё так просто:
1) из меню кодировок (Shift-F8) невозможно изменить кодовую страницу с однобайтной кодировки в многобайтную (юникод) или обратно.
2) из однобайтной можно переключиться в UTF-8, однако если текст на самом деле не в UTF-8 - он необратимо испортится.

Хотелось бы иметь возможность вручную вызвать авто(пере)определение кодировки

а) из меню кодировок Shift-F8
Там есть пункт с названием Automatic detection, но он недоступен.

б) из диалога открытия файла Shift-F4
Там уже есть такой пункт, однако его название не соответствует значению: чаще всего никакого автоопределения не происходит.
(Скорее ему следует называться Default/Saved, потому что автоматическое определение происходит только если оно включено в опциях, и только при первом открытии файла)

Update:
Сделано: http://bugs.farmanager.com/view.php?id=1773
User avatar
DrKnS
Posts: 5808
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 10 times
Been thanked: 343 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by DrKnS »

Там есть пункт с названием Automatic detection, но он недоступен.
см. changelog, build 1020, пункт 1, строка 2.

З.Ы. Всё предлагаемое - логично и правильно, обязательно так и будет, но когда - хз...
User avatar
John Doe
Бюрократ
Posts: 13067
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 42 times
Been thanked: 319 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by John Doe »

Я так понимаю чтобы это работало из меню кодировок - надо много чего ещё менять в самом редакторе.
Но чтобы сделать это в диалоге открытия файла - изменения логики требуются минимальные.
Так?
https://t.me/FarManager — Telegram чат
User avatar
DrKnS
Posts: 5808
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 10 times
Been thanked: 343 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by DrKnS »

Для ShiftF4, думаю, можно сделать 2 спецпункта - "автоопределение" (анализ сигнатур + эвристика) и "предыдущая/по умолчанию" (из истории/настроек).

?
User avatar
John Doe
Бюрократ
Posts: 13067
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 42 times
Been thanked: 319 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by John Doe »

Так точно.
Т.е. то что сейчас называется Autodetect переименовать в default (default/auto/last), а новый пункт назвать Autodetect
Ну и первым в списке - default
https://t.me/FarManager — Telegram чат
Shmuel
Posts: 6217
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 348 times

Re: Несколько вопросов по редактору

Post by Shmuel »

darkmist wrote:создаем файл "1" в кодировке UTF-16LE. сохраняем его с включенным BOM. Shift+F4, Code page - OEM (866), Esc, снова Shift+F4. Code page стоит "Automatic detection", однако, несмотря на BOM, мы открываем в последней открытой OEM, а не UTF-16LE.
Это поведение мне тоже кажется скорее багом, чем фичей.

На самом деле оно вызвано тем, что в опциях редактора (на момент нажатия Esc) стояло "Save file position", а для правильного восстановления позиции нужно восстанавливать и кодировку. И вот эта завязка приводит к весьма неинтуитивному поведению в случаях, если пользователь выходит из редактора в момент, когда кодировка в редакторе стоит неправильная.

Другими словами, автоопределение кодовой страницы в этих случаях не производится, несмотря на выставленную опцию. Производится считывание кодовой страницы из реестра. И всё это - как бы "за кадром".
User avatar
John Doe
Бюрократ
Posts: 13067
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 42 times
Been thanked: 319 times

Re: Несколько вопросов по редактору

Post by John Doe »

Shmuel wrote:На самом деле оно вызвано тем, что в опциях редактора (на момент нажатия Esc) стояло "Save file position", а для правильного восстановления позиции нужно восстанавливать и кодировку.
Так это самая настоящая фича: запоминание кодировки. Полезная.
Другое дело что в диалоге надо разделить 2 самостоятельные фичи: запоминание и автоопределение.

P.S.
А баги тоже есть, например см. 0001183: При Reload запоминание кодовой страницы должно происходить раньше считывания.
Shmuel
Posts: 6217
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 348 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by Shmuel »

John Doe wrote:Так это самая настоящая фича: запоминание кодировки. Полезная.
Доугое дело что надо в диалоге разделить 2 самомтоятельные фичи: запоминание и автоопределение.
Не могу считать полезной недокументированную фичу, которая запоминает неправильную кодировку и затем её принудительно восстанавливает, игнорируя как установку автоопределения кодировки, так и BOM в файле.
User avatar
John Doe
Бюрократ
Posts: 13067
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 42 times
Been thanked: 319 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by John Doe »

Какую такую неправильную кодировку?
"Правильность" кодировки в конечном счёте определяет пользователь, фар может только подсказать (autodetect).
И если после подсказки пользователь тем не менее принудительно открывает файл в другой кодировке, то зачем фар должен ему мешать?
Shmuel
Posts: 6217
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 348 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by Shmuel »

John Doe wrote:И если после подсказки пользователь тем не менее принудительно открывает файл в другой кодировке, то зачем фар должен ему мешать?
Речь идёт не о данном открытии файла, а о последующих. И вот тут-то пользователь пролетает, у него даже нет возможности эту - скрытую - фичу отключить.
User avatar
John Doe
Бюрократ
Posts: 13067
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 42 times
Been thanked: 319 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by John Doe »

Фича вполне интуитивная, покрывает 99% реальных сценариев использования, врядли кому может понадобиться её отключать.

А вот возможность принудительного определения кодировки конечно нужна, об чём и тема.
Shmuel
Posts: 6217
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 348 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by Shmuel »

Давайте согласимся не соглашаться. Ибо мы с вами очевидно либо пользуемся разными Фарами, либо имеем уж очень разные пользовательские предпочтения.
User avatar
John Doe
Бюрократ
Posts: 13067
Joined: Wed 27 Apr, 2005 20:42
Has thanked: 42 times
Been thanked: 319 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by John Doe »

Нет уж, завершайте начатое, объясняйте свои пользовательские предпочтения.
Shmuel
Posts: 6217
Joined: Thu 23 Mar, 2006 21:36
Location: Israel
Has thanked: 31 times
Been thanked: 348 times

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by Shmuel »

Спасибо, но у меня кончилось время.
User avatar
GrAnD
Posts: 351
Joined: Thu 13 Oct, 2005 23:47
Location: Amsterdam
Been thanked: 3 times
Contact:

Re: Редактор FAR2: Проблемы с переключением кодовых страниц

Post by GrAnD »

BOM должен иметь приоритет выше чем выбранная и запомненная ФАРом кодировка
Post Reply

Return to “Предложения и идеи”