Символы й, ё в ФС

Модератор: Модераторы разделов

Аватара пользователя
denel
Сообщения: 497
ОС: Gentoo Linux

Символы й, ё в ФС

Сообщение denel »

Добрый день! Вот нашёл занимательную тему, когда в терминале создаю файл й, получаю hex d0 b9, а когда создаю с тем же именем файл в Finder, то hex получается d0 b8 cc 86, причём GUI приложения не могут прочитать файл й созданный в терминале. В инете наткнулся только на это обсуждение http://ramlamyammambam.dreamwidth.org/55535.html . Не многообещающе. Это раздвоение личности интересно можно пофиксить?
Последний раз редактировалось denel 15.11.2019 21:25, всего редактировалось 1 раз.
Спасибо сказали:
NickLion
Сообщения: 3408
Статус: аватар-невидимка
ОС: openSUSE Tumbleweed x86_64

Re: Символы й, ё в ФС

Сообщение NickLion »

Только должно быть "d0 b9" или "d0 b8 cc 86". Оба кода валидны в utf8 и обозначают маленькую "й". Только первый одним символом, а второй код в виде "и" и бреве над ним. Как пофиксить, не знаю. Попробуйте в консоли набрать "й" как "и", а затем Option+Shift+t (вроде так).

PS а поищите ещё параметры (де)нормализации Юникода в файловой системе.

UPD ещё может быть не <Option+Shift+t>, а <Option+Shift+.>
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20999
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Символы й, ё в ФС

Сообщение Bizdelnick »

iУведомление от модератора
Офтоп уехал в Флейм о (не)?нужности юникода
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
denel
Сообщения: 497
ОС: Gentoo Linux

Re: Символы й, ё в ФС

Сообщение denel »

NickLion писал(а):
09.08.2014 13:51
Только должно быть "d0 b9" или "d0 b8 cc 86". Оба кода валидны в utf8 и обозначают маленькую "й". Только первый одним символом, а второй код в виде "и" и бреве над ним. Как пофиксить, не знаю. Попробуйте в консоли набрать "й" как "и", а затем Option+Shift+t (вроде так).

PS а поищите ещё параметры (де)нормализации Юникода в файловой системе.

UPD ещё может быть не <Option+Shift+t>, а <Option+Shift+.>

В общем то может они и валидны оба, но для os x валиден тока "расширенный вариант"))). А другой - можно прочитать тока терминалом
Спасибо сказали:
NickLion
Сообщения: 3408
Статус: аватар-невидимка
ОС: openSUSE Tumbleweed x86_64

Re: Символы й, ё в ФС

Сообщение NickLion »

А файловая система HFS+ точно? Просто вроде бы везде пишут, что эта ФС автоматом переводит к NFD с Apple'овскими особенностями. Т.е. "й" должен был быть разложен.

Какая версия OS X, и файловая система?
Спасибо сказали:
Аватара пользователя
denel
Сообщения: 497
ОС: Gentoo Linux

Re: Символы й, ё в ФС

Сообщение denel »

NickLion писал(а):
21.08.2014 09:53
А файловая система HFS+ точно? Просто вроде бы везде пишут, что эта ФС автоматом переводит к NFD с Apple'овскими особенностями. Т.е. "й" должен был быть разложен.

Какая версия OS X, и файловая система?

:) os x 10.9.4, а фс - NFS. Пытаюсь подружить линуксовый nfs сервер с osx. Линуксы то эти уникальные имена легко читают, а osx плюётся если видит не свои уникальные имена
Спасибо сказали:
NickLion
Сообщения: 3408
Статус: аватар-невидимка
ОС: openSUSE Tumbleweed x86_64

Re: Символы й, ё в ФС

Сообщение NickLion »

Вот здесь: http://wiki.qnap.com/wiki/Mounting_an_NFS_share_from_OS_X смотрите параметр nfc в команде mount:
(http://wiki.qnap.com/wiki/Mounting_an_NFS_share_from_OS_X) писал(а):nfc permits to your finder to handle the UTF-8 NFC coding of Linux and Windows instead of Apple UTF-8 NFD (well explained on G**gle), if not used any file or directory named with accents maybe unseen by the finder (where still okay under a terminal session !)

Похоже на Ваш случай.
Спасибо сказали:
Аватара пользователя
denel
Сообщения: 497
ОС: Gentoo Linux

Re: Символы й, ё в ФС

Сообщение denel »

Забавная система :). Попробовал подключаться по SMB, так вот, файлы записанные на сервере с "обычной й" клиент OS X перетранслирует в "свою й", причём файлы записанные как "егошняя й" Finder-ом при открытии директории тут же скрываются и не читаются даже консольными утилитами (хотя и выводятся с помощью ls обе й в "раскиданном варианте"). Т.е. они чётко осознавали, что ихняя UTF-8 это не совсем общепринятая))).
PS GUI OSX может работать исключительно только с "разбросанной й", файлы с "обычной й" в режиме NFS можно прочитать только с помощью консольных утилит типа того же cat, nano
Набрёл на интересную статью http://masterjohn.stpb.net/node/34 похоже у человека тоже не вышло победить это, Наивно верит, что Apple это будет исправлять :)
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20999
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Символы й, ё в ФС

Сообщение Bizdelnick »

denel
Посмотрел - по Вашей ссылке человек несколько неправ. Вот тут как минимум:
finder при формировании имени файла использует свой загадочный utf-8 несмотря на RFC 3629 в котором утверждено правило, что UTF-8 позволяет указать один и тот же символ несколькими способами, только наиболее короткий из них правильный
К UTF-8 это не имеет никакого отношения, символы там представляются действительно в кратчайшей форме. Другое дело - кодируется буква как один символ или как два. См. https://en.wikipedia.org/wiki/Unicode_equiv...ce#Normal_forms, и на ссылку NickLion рекомендую таки обратить внимание.
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: Символы й, ё в ФС

Сообщение drBatty »

denel писал(а):
25.08.2014 04:51
GUI OSX может работать исключительно только с "разбросанной й", файлы с "обычной й" в режиме NFS можно прочитать только с помощью консольных утилит типа того же cat, nano

это глюки OSX.

У меня в слаке всё работает и с такой й и с такой й. UTF-8 и ФС тут не при чём.

PS: и да, в русском языке есть буква «й», есть она и в юникоде. А ваша OSX просто глючит. Может она и такие буквы умеет «ы̆»?
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
denel
Сообщения: 497
ОС: Gentoo Linux

Re: Символы й, ё в ФС

Сообщение denel »

Bizdelnick писал(а):
25.08.2014 11:27
denel
Посмотрел - по Вашей ссылке человек несколько неправ. Вот тут как минимум:
finder при формировании имени файла использует свой загадочный utf-8 несмотря на RFC 3629 в котором утверждено правило, что UTF-8 позволяет указать один и тот же символ несколькими способами, только наиболее короткий из них правильный
К UTF-8 это не имеет никакого отношения, символы там представляются действительно в кратчайшей форме. Другое дело - кодируется буква как один символ или как два. См. https://en.wikipedia.org/wiki/Unicode_equiv...ce#Normal_forms, и на ссылку NickLion рекомендую таки обратить внимание.

Действительно! Сегодня опробовал эту опцию, прописав в /etc/nfs.conf nfs.client.mount.options = nfc
Файлы, созданные в линуксе с этими буквами теперь читаются программами OS X, сама OS X создаёт теперь там такие же файлы, но выходит, что в терминале OS X те буквы как представлялись из двух символов, так и представляются, изменилось только отношение программной оболочки OS X к этому, теперь она и читает и создаёт в NFS буквы состоящие именно из одного символа, в прочем файлы с буквами из двух символов теперь она совсем не видит никак, хотя через ls в терминале их видно)
Спасибо сказали: