Кодировки в descript.ion / files.bbs

Хотите говорить о Far и не знаете, куда обратиться?
Post Reply
Yarik
Posts: 2
Joined: Sun 23 Jul, 2006 09:38
Location: Tuapse

Кодировки в descript.ion / files.bbs

Post by Yarik » Sun 23 Jul, 2006 09:53

Прошу помочь разобраться с совместимостью discript.ion.
:?: Проблема в следующем: всегда пользуюсь описанием файлов в Far Maneger. Так же пользуюсь ACDSee для просмотра фотографий. Для корректного отображения информации из discript.ion там необходимо ставить галочку в OEM (DOS) conversion - тогда все нормально читается. Но, часто в программе нет возможности этой настройке, и описания файлов выводятся иероглифами?
Есть ли возможность настроить Far так, что бы везде информация из discript.ion читалась корректно? Или, подскажите, какую программу, с настройкой аналогичной ACDSee возможно использовать с одновременным полноэкранным просмотром фотографий и выводом под этими фотографиями строки с описанием файла?
С уважением и благодарностью....

User avatar
Centaur
Posts: 1083
Joined: Tue 05 Apr, 2005 20:09
Location: Novosibirsk, Russia
Been thanked: 2 times

Post by Centaur » Sun 23 Jul, 2006 10:35

Разработчики формата descript.ion сами не могут определиться, в какой кодировке должны быть описания. Консольные 4DOS и 4NT пишут в OEM, а гуёвый Take Command — в ANSI. Причём ни та, ни другая, ни третья не предоставляют настроек.

В версии 4NT 7.0 добавилась возможность хранения описаний в свойстве Comments NTFS’ного потока \005SummaryInformation, там какой-то бинарный формат. Стандартный API для работы с этим форматом — интерфейс IPropertyStorage; соответствующая документация гласит, что строки могут храниться в произвольной кодировке, поддерживаемой системой, причём идентификатор кодировки хранится в этом же потоке.

User avatar
[e]Bu$ter
Posts: 792
Joined: Mon 30 May, 2005 23:05
Location: Беларусь, Минск
Contact:

Post by [e]Bu$ter » Sun 23 Jul, 2006 21:59

Есть ли возможность настроить Far так, что бы везде информация из discript.ion читалась корректно?
Есть такая возможность - Power Description Editor.
Как мне кажется, это должно решить часть проблем. Например, если имя файла русское, то кодировка описания определяется "автоматически" (если мне не отказывает память :) ).

Чуть позже:
Память всё-таки отказала... эта фишка, равно как несколько других, появилась после публикации последней официальной версии.
Там сейчас есть некоторые траблы с документацией поэтому... короче, если понравится, то на днях постараюсь всё исправить и обновить.

Kildor
Posts: 1515
Joined: Wed 16 Mar, 2005 06:26
Location: Новосибирск
Contact:

Post by Kildor » Mon 24 Jul, 2006 03:53

[e]Bu$ter
а она нормально создаёт описания, если в каталоге ещё не существует files.bbs|descript.ion? А то один из последних плагинов для меня потерял всякую ценность неумением создавать эти файлы.
Ты мне не выкай!
«ФарФорум не для пользователей!»
Upd:
P.S. Я просто поддерживаю беседу.» © Народ.

xmpp:kildor@jabber.ru

Yarik
Posts: 2
Joined: Sun 23 Jul, 2006 09:38
Location: Tuapse

Post by Yarik » Mon 24 Jul, 2006 08:03

[e]Bu$ter wrote:
Есть ли возможность настроить Far так, что бы везде информация из discript.ion читалась корректно?
Есть такая возможность - Power Description Editor.
Как мне кажется, это должно решить часть проблем. Например, если имя файла русское, то кодировка описания определяется "автоматически" (если мне не отказывает память :) ).

Чуть позже:
Память всё-таки отказала... эта фишка, равно как несколько других, появилась после публикации последней официальной версии.
Там сейчас есть некоторые траблы с документацией поэтому... короче, если понравится, то на днях постараюсь всё исправить и обновить.
Чувствую, что это то, что я ищу :о) Вот только как все это прописать что бы работало?
Помогите, пожалуйста...
Где прописывать pde - в Far или в программе просмоторщике фотографий. И как правильно сделать?
Написано много про всякие ключи:
pde.exe <-F:("полной путь к файлу")> [-O:(опции)] [-C:(имя_конфига)]
- полный путь к файлу какому? к Far.exe или к обрабатываемому discript.ion?
Если не сложно, на примере внедрения в Far - опишите в кратце.
С уважением и благодарностью...

User avatar
[e]Bu$ter
Posts: 792
Joined: Mon 30 May, 2005 23:05
Location: Беларусь, Минск
Contact:

Post by [e]Bu$ter » Mon 24 Jul, 2006 11:23

- полный путь к файлу какому? к Far.exe или к обрабатываемому discript.ion?
К тому, для которого нужно получить\установить описание.
Если не сложно, на примере внедрения в Far - опишите в кратце.
В документации всё подробнейшим образом описано про установку. Для FAR'a даже не один макрос прилагается, т.ч. в ключах разбираться не обязательно (но крайне желательно).

Ну если всё-таки кратко (ДОКа то большая, кто её читать будет?), то PDE нужно положить в папку Windows (или как она там у вас называется?) и запустить из папки _int один из файлов CtrlZ_*.reg. Какой именно написано в документации. ;)

User avatar
techie
Posts: 782
Joined: Mon 03 Oct, 2005 22:42
Has thanked: 33 times
Been thanked: 3 times

Post by techie » Tue 25 Jul, 2006 10:00

Хранить все в UTF-8 и не париться с автоопределением.

User avatar
[e]Bu$ter
Posts: 792
Joined: Mon 30 May, 2005 23:05
Location: Беларусь, Минск
Contact:

Post by [e]Bu$ter » Wed 26 Jul, 2006 22:27

Kildor, извини, сразу не заметил твоего сообщения.
а она нормально создаёт описания, если в каталоге ещё не существует files.bbs|descript.ion?
Конечно нормально! Хочешь, даже скрытыми новые descript.ion будет делать! :)
Ну короче, всё как у людей... Почти ;)

P.S. Про files.bbs, оно пока ничего не знает.

Victorian
Posts: 80
Joined: Sun 11 Oct, 2009 05:55
Has thanked: 1 time

Описания файлов (descript.ion)

Post by Victorian » Sun 11 Oct, 2009 06:18

Far Manager, version 2.0 (build 1086) x64 под Windows Vista
Кроме усечения описания по длине, происходит потеря информации создании описания.
В самом файле descript.ion создается запись, но не отображается при просмотре описания (Ctrl+Z) или в списке (Ctrl+6).
Происходит это с именами файлов, включающими некоторые символы в русскоязычном описании, а также с любыми греческими символами.

1. Файл "Преподобный Максим Грек – московский пророк и невинный страдалец - Татьянин День.mht"
В descript.ion отображается:
"Преподобный Максим Грек - московский пророк и невинный страдалец - Татьянин День.mht" [http://www.taday.ru/text/28774.html]
Описание теряется, т.к. используется символ длинного тире.

2. Файл "Правда о Фатиме Православная Церковь о католическом «чуде».mht"
В descript.ion отображается:
"Правда о Фатиме Православная Церковь о католическом <чуде>.mht" [http://www.fictionbook.ru/author/petano ... v_o_k.html]
Описание теряется, т.к. используются символы угловых кавычек.

3. Файл "Χριστος ανεστη.odt"
В descript.ion отображается:
"??????? ??????.odt" TEST
Описание таким образом теряется, хотя оно было доступно в FAR 1.75
Last edited by Victorian on Thu 19 Nov, 2009 15:47, edited 3 times in total.

User avatar
DrKnS
Posts: 5402
Joined: Thu 04 Aug, 2005 06:44
Location: Kyiv
Has thanked: 6 times
Been thanked: 231 times

Re: Описания файлов (descript.ion)

Post by DrKnS » Sun 11 Oct, 2009 07:29

Victorian wrote:Кроме усечения описания по длине
Усечение уже давно исправлено.
происходит потеря информации создании описания
Формат файла описаний предусматривает использование кодовой страницы OEM (т. е. в общем случае cp866), в которой нет и никогда не было ни длинных тире, ни кавычек-«ёлочек», ни, тем паче, греческих символов.

Мы, конечно, можем сохранять файл описаний в UTF16 или UTF8, да.
И "потери информации" тогда не будет.

Но учтите, что тогда с этим файлом описаний корректно не сможет работать НИКТО, кроме far.

wolf
Posts: 1030
Joined: Fri 08 Apr, 2005 12:54
Location: Moscow

Re: Описания файлов (descript.ion)

Post by wolf » Sun 11 Oct, 2009 09:03

DrKnS wrote:
происходит потеря информации создании описания
Формат файла описаний предусматривает использование кодовой страницы OEM (т. е. в общем случае cp866), в которой нет и никогда не было ни длинных тире, ни кавычек-«ёлочек», ни, тем паче, греческих символов.
только вот некоторые программы этого не знают и пишут описания в ansi - а в win-1251 и тире и елочки есть. Про существование таких программ и про то что их пользователей навряд ли меньше чем пользователей ФАРа (только пересекаются они редко), и то что пользователям описания в 1251 удобнее чем в 866 - до вас пытаются донести не в первый раз, всегда оно упирается в аргументы типа "придуманный в прошлом веке стандарт - авторитетнее чем популярность любого количества современных реализаций модификации этого стандарта - ибо нестандарт=зло, и то что ФАР описания в ANSI не умеет понимать - это благо для пользователя, а не бага".
Мы, конечно, можем сохранять файл описаний в UTF16 или UTF8, да. И "потери информации" тогда не будет.
Но учтите, что тогда с этим файлом описаний корректно не сможет работать НИКТО, кроме far.
никем пока неподдерживаемый в кодировках UTF - не нужно (но можно как один из вариантов, только не дефолтовый), нужна настройка ФАРа на 8-битную кодировку описаний - или глобальная или автоподбор для каждого. Так как с автоподбор - потенциальный повод для глюков и тормозов при копировании, то лучше на него не закладываться. По минимуму - нужна просто переключалка на ANSI кодировку descript.ion, как у более другого файлманагера:
Attachments
setings.png
setings.png (1.53 KiB) Viewed 14628 times
ошибка — считать, что фар для пользователей. (с) zg

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

Re: Описания файлов (descript.ion)

Post by John Doe » Sun 11 Oct, 2009 09:36

Вот ключевой момент:
wolf wrote:(только пересекаются они редко)
Лично я согласен что фича была бы полезной, но кто её будет реализовывать? Ведь разработчики даже баги не успевают править...

wolf
Posts: 1030
Joined: Fri 08 Apr, 2005 12:54
Location: Moscow

Re: Описания файлов (descript.ion)

Post by wolf » Sun 11 Oct, 2009 09:49

John Doe wrote:
wolf wrote:(только пересекаются они редко)
Вот это ключевой момент.
Фича конечно была бы полезной, но кто её будет реализовывать? Ведь разработчики даже баги не успевают править...
разработчики правят те баги, которые мешают лично им, бросать все силы на правку прочих багов - никто не обещал.

А выше - просто обоснование того, что стандарт, на который ссылаются - давненько устарел, и найти кроме ФАРа какую-то еще регулярно обновляющуюся программу, которая понимает только OEM кодировку описаний - непросто, и это пора как минимум признать и возможно когда-нибудь поправить, а не ссылаться в который раз на мифический стандарт и несовместимость с другими программами.
ошибка — считать, что фар для пользователей. (с) zg

Maximus5
Posts: 3292
Joined: Sun 11 Nov, 2007 02:03
Been thanked: 4 times
Contact:

Re: Описания файлов (descript.ion)

Post by Maximus5 » Sun 11 Oct, 2009 10:15

Тикет, кстати, уже давненько открыт: http://bugs.farmanager.com/view.php?id=718

User avatar
daregod
Posts: 103
Joined: Wed 16 Mar, 2005 16:51

Re: Описания файлов (descript.ion)

Post by daregod » Tue 13 Oct, 2009 06:57

Выбор кодировки для файла описаний было бы весьма неплохим решением.

В качестве полумеры предложу ещё делать описания по коротким именам.
Если бы ФАР умел делать это автоматом, было бы ещё круче: отследить ситуацию, что имя файла невозможно вписать в OEMCP и описывать по короткому вполне реально.

Victorian
Posts: 80
Joined: Sun 11 Oct, 2009 05:55
Has thanked: 1 time

Re: Описания файлов (descript.ion)

Post by Victorian » Sat 17 Oct, 2009 15:20

DrKnS> Формат файла описаний предусматривает использование кодовой страницы OEM (т. е. в общем случае cp866), в которой нет
DrKnS> и никогда не было ни длинных тире, ни кавычек-«ёлочек», ни, тем паче, греческих символов.

Предыдущие версии FAR просто преобразовывали эти символы к таким, какие используются в коротких именах. Да, тут есть опасность неоднозначности, когда два разных файла имеют одинаковое имя "????????.???", однако же для одиночных файлов это работает. В любом случае, при перемещении файлов из папки в папку описания не теряются, хотя могут перепутаться. Тут проблема в том, что FAR сам не понимает то имя файла, которое он сохранил в descript.ion.

DrKnS> Мы, конечно, можем сохранять файл описаний в UTF16 или UTF8, да.
DrKnS> И "потери информации" тогда не будет.

Очень бы хотелось выбора кодировки, в которой сохраняются файлы описаний. Тем более встречал программы, которые сохраняют описания в других кодировках, например CP1251.

DrKnS> Но учтите, что тогда с этим файлом описаний корректно не сможет работать НИКТО, кроме far.

Простите мою дилетантскую развязанность, но вроде есть такое - если строка содержит символы, расширенные по отношению к текущей кодировке, то в зависимости от первого символа она многими программами (вроде бы это системный интерфейс такой) распознается или как восьмибитные символы, либо если первый символ "ноль" - то как UTF-16 строка. Т.е. FAR читает и ничего не теряет, а если DOS'овская программа не может воспринять, то можно вручную видоизменить descript.ion, главное чтобы информация в файле описаний не терялась. Благо, что преобразовать можно в редакторе же самого FAR.

Кстати, можно ли заодно сделать опциональную возможность получать из плагина FTP путь URL, с которого скачивался файл, и сохранять его в файле описаний с обрамлением из квадратных скобок, как обычно принято?
Last edited by Victorian on Sat 24 Oct, 2009 20:52, edited 3 times in total.

Post Reply

Return to “Обсуждение Far Manager”