[devel] О кодировке названий файлов при монтировании
Вячеслав
Вячеслав
Вс Фев 20 20:48:35 MSK 2005
В Вск, 20/02/2005 в 17:37 +0300, Vitaly Lipatov пишет:
> Выпущен первый релиз библиотеки libnatspec (ушла в Incoming)
> До появления в Сизифе можно скачать пакеты на
> ftp://ftp.altlinux.ru/pub/people/lav/natspec
>
> Базой для библиотеки послужил анализ кода следующих проектов:
> - wine, kernel, gettext, glibc, glib, mount, submount
>
> Библиотека определяет такие важные понятия, как
> - кодировка локальной файловой системы (filename encoding)
> - системная локаль (system locale)
> - кодировка (charset) и кодовая таблица (codepage)
> иных операционных систем (WIN,DOS,MAC) для данной локали.
> и предоставляет API для их использования.
>
> Это позволяет:
> - добавить в mount/submount автоматическое добавление
> параметров для перекодировки (пример патча приложен)
>
> Имеется консольная программа, позволяющая получать опеределённые
> в библиотеке параметры. Например
> $ natspec -l - показать системную локаль
> $ natspec -i - вывести всю доступную информацию
> (просьба посмотреть и высказать свои замечания по качеству
> определения ситуации на вашей машине)
В качестве идеи:
Имею программу, у которой своя собственная внутренняя система локалей
(VDR). Там гвоздями и стандартами DVB-вещания забито, что русский всегда
идет в iso8859-5. Нет никаких внутренних средств перекодировки или
поддержки системной локали, при этом нужно писать и читать много файлов,
а файлам автоматически даются русские имена.
Может быть добавить в библиотеку функцию, позволяющую прозрачно заменять
обычные обращения к объектам файловой системы в C и автоматически
приводить имена к заданной кодировке, в каком бы виде они не хранились
на реальных носителях? А также при записи преобразовывать имя из
заданной кодировки в любую, какая используется на диске.
Возможно, это пригодится и в других случаях.
--
Вячеслав Диконов <sdiconov на mail.ru>
Подробная информация о списке рассылки Devel