Решено:Переход на SuSE и проблема (пере)кодировок (Хочу перебраться на SuSE, но у меня все имена файлов в cp1251)

openSUSE, SUSE Linux Enterprise

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

DRVTiny
Сообщения: 19

Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение DRVTiny »

Возможно ли без диких плясок с бубном, описанных в стародавних хауту по русификации Linux, локализовать SuSE в русской кодировке, отличной от UTF-8?
К сожалению, есть вещи, которые реализованы в Linux буквально через одно место, так что, например, для того, чтобы пользоваться разделами на ReiserFS, где все имена файлов с кириллицей записаны в кодировке cp1251, нельзя просто тупо передать mount'у нужные параметры типа codepage/iocharset - приходится устраивать целую глобальную (и далеко не безопасную к тому же) эпопею с переименовыванием всех файлов на всех разделах (скриптом, разумеется, но от этого не легче). Откровенно говоря, мне этот геморрой с тотальным mv+iconv не нужен совершенно, так что...
Я очень хочу перейти на SuSE, который произвёл на меня самое благоприятное вечатление, поскольку сделан он добротно и с умом не-боящимися-перенапрячься людьми (перехожу с ASPLinux'а, поскольку меня не устраивает политика, проводимая компанией-разработчиком этого дистрибутива), и единственным серьёзным препятствием к этому является эта треклятая проблема кодировок. В общем, если поможете разрулить "патовую" ситуацию, буду очень признателен :)

With best regards, DRVTiny
P.S. Ну или хотя бы какой-нибудь толковый "стародавний хауту" посоветуйте ;)
Спасибо сказали:
Loky
Сообщения: 1651
Статус: Инженер-системотехник
ОС: Netware, OES, SLED

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение Loky »

DRVTiny писал(а):
12.11.2006 23:11
Возможно ли без диких плясок с бубном, описанных в стародавних хауту по русификации Linux, локализовать SuSE в русской кодировке, отличной от UTF-8?
К сожалению, есть вещи, которые реализованы в Linux буквально через одно место, так что, например, для того, чтобы пользоваться разделами на ReiserFS, где все имена файлов с кириллицей записаны в кодировке cp1251, нельзя просто тупо передать mount'у нужные параметры типа codepage/iocharset - приходится устраивать целую глобальную (и далеко не безопасную к тому же) эпопею с переименовыванием всех файлов на всех разделах (скриптом, разумеется, но от этого не легче). Откровенно говоря, мне этот геморрой с тотальным mv+iconv не нужен совершенно, так что...
Я очень хочу перейти на SuSE, который произвёл на меня самое благоприятное вечатление, поскольку сделан он добротно и с умом не-боящимися-перенапрячься людьми (перехожу с ASPLinux'а, поскольку меня не устраивает политика, проводимая компанией-разработчиком этого дистрибутива), и единственным серьёзным препятствием к этому является эта треклятая проблема кодировок. В общем, если поможете разрулить "патовую" ситуацию, буду очень признателен :)

With best regards, DRVTiny
P.S. Ну или хотя бы какой-нибудь толковый "стародавний хауту" посоветуйте ;)

Все таки я бы рекомендовал перейти на UTF-8. Это будет проще и правильнее.
MOSQIT: Novell/Axigen/Syncsort/Moonwalk/CAStor
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение sash-kan »

(DRVTiny @ Nov 12 2006, в 22:11) писал(а):mv+iconv
давно существует более простое средство под названием convmv.
(DRVTiny @ Nov 12 2006, в 22:11) писал(а):буквально через одно место
а если посмотреть немного с другой точки зрения? ведь зачем понадобились все эти iocharset-ы при работе, например, с fat-разделами? ведь имена файлов на таких разделах тоже ведь можно было элемантарно перекодировать.
плюс самое главное. локаль — это свойство процесса. и ничего более.
и на закуску: запускайте нужный процесс с нужной локалью — если Вам это покажется более удобным, чем переконвертировать имена файлов.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
DRVTiny
Сообщения: 19

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение DRVTiny »

Все таки я бы рекомендовал перейти на UTF-8. Это будет проще и правильнее.

Откровенно говоря, я не вижу ничего правильного в том, чтобы кодировать символ тремя байтами там, где можно обойтись одним (я уж не говорю о том, что считывание трёх байт займёт у процессора Intel, оперирующего словами, кратными степени двойки, больше времени, чем считывание трёх расположенных потряд тетрад!). Вместо того, чтобы "между собой" договориться наконец о том, какую однобайтовую кодировку использовать, мы в очередной раз тупо согласились на то, чтобы нам извне навязали фактически ещё одну (какую там по счёту?) кодировку, к тому же многобайтную. И, главное, был бы от этого толк, а то ведь сделали-то ещё один мертворожденный клон уникода. Если бы UTF-8 была кодировкой по умолчанию хотя бы в Windows Vista, я бы понял все эти хитрые маневры с добровольным многократным усложнением жизни самим себе, а так - извините меня, Linux используется в качестве основной ОС на десятых долях процента компьютеров, а Windows - на 96% как минимум. Вам не кажется, что в данной ситуации вне зависимости от нашего желания жизнеспособность всех все этих новоявленных стандартов определяется в первую очередь тем, будет им следовать Microsoft или нет? А если не будет, то, извините, нафига оно нам надо? Мы же всё-таки не изолированно от окружающего мира живём, нас ведь люди какие-то окружают, причём никто из них, что характерно, не обязан пользоваться Linux или даже Windows (кому-то, возможно, MacOS X - мать родна)....

ведь имена файлов на таких разделах тоже ведь можно было элемантарно перекодировать.

Ну да, это было бы просто гениальное решение: загружаешься в Linux - переименовываешь все файлы в соответствие с текущей кодировкой, но перед тем, как перезагрузиться обратно в ОС Windows - не забудь снова пройтись по всем файлам на FAT-разделах и переименовать их!

давно существует более простое средство под названием convmv.

Это конструктивно. Спасибо, попробую!

локаль — это свойство процесса. и ничего более.

Локаль (кодировка) - это также и свойство тех объектов, с которыми процесс работает, иначе объекты, созданные процессом с одной локалью не смогут быть правильно прочитаны процессами с другой локалью. Например, для файла логично было бы хранить сведения о его типе и (если файл текстовый) о его кодировке в блоке метаданных, хранящемся отдельно от собственно данных (собственно, большинство современных файловых систем предоставляют возможность хранения сведений об объектах ФС в блоке метаданных, только к сожалению далеко не все операционные системы этой возможностью пользуются).
Спасибо сказали:
Аватара пользователя
Goodvin
Ведущий рубрики
Сообщения: 4333
Статус: ⚝⚠⚒⚑⚖☭☞☣☤&

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение Goodvin »

Я думаю, что ответы на все вопросы автор сможет найти здесь:
http://www.samag.ru/art/03.2006/03.2006_02.html

Крайне полезная и толково написанная статья.
Спасибо сказали:
DRVTiny
Сообщения: 19

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение DRVTiny »

sash-kan писал(а):
13.11.2006 09:44
и на закуску: запускайте нужный процесс с нужной локалью — если Вам это покажется более удобным, чем переконвертировать имена файлов.

Идея, конечно, хорошая, только в SuSE нет соответствующих *.mo-файлов в /usr/share/locale и нет шрифтов для cp1251.
Спасибо сказали:
Аватара пользователя
k0da
Бывший модератор
Сообщения: 6043
Статус: SuSE QA Engineer
ОС: Factory

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение k0da »

DRVTiny
Linux это не клон Windows
Проблема множества кодировок актуальна только в россии (ну м.б. еще в паре стран).
А Vista помоему работает на utf (могу соврать).

Впринципе вы можете перевести систему на локаль в 1251 (это делается изменением двух параметров в /etc/sysconfig)

А так я юзаю utf и проблем не замечаю.
Fury in my eyes, sword on my side
Afro on my head, I'm a black Samurai
Number One, I bring my whole nation alive
Escape death, to become immortalized
Спасибо сказали:
DRVTiny
Сообщения: 19

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение DRVTiny »

Linux это не клон Windows

Китайцы - это не клонированные русские? Вам не кажется, что способность одной операционной системы корректно воспринимать объекты, созданные в другой ОС, ни коим образом не можёт быть признаком того, что первая из этих ОСей является "клоном" второй? И можете бить меня и пинать ногами, но я лично считаю, что если второй операционной системой пользуется абсолютное большинство людей в мире, то первая ОС так или иначе должна иметь с ней совместимость хотя бы на элементарном уровне "правильного отображения буковок в файлах"?

А Vista помоему работает на utf (могу соврать).

UTF-ов существует много и UTF-8 - это не та кодировка, которая используется Vista.



Статью уже почти до конца прочитал. Огромный респект за ссылку!!!
Loky, k0da, sash-kan также настоятельно рекомендую ознакомиться.
Спасибо сказали:
Аватара пользователя
Xentrix
Бывший модератор
Сообщения: 2429
Статус: PackageMonkey
ОС: OpenSuSE 11.1

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение Xentrix »

k0da писал(а):
13.11.2006 11:36
А Vista помоему работает на utf (могу соврать).

Насчет Vista не знаю, а вот для WinXP родная локаль - UTF-16, cp1251 там поддерживается через одно место толко для нисходящей совместимости.
Intel CoreDuo 6300/2Gb/300+300Gb HDD WD+Segate/GF8800GTS 320Mb/SB Live 5.1+SB X-Fi Gamer
OpenSuSE 11.1/kernel-2.6.27.x pae i686/Xorg 7.3/KDE 4.2 & E17/Compiz/ForceWare 180.xx.xx
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение sash-kan »

DRVTiny
пожалуйста! поднаберитесь знаний из обсуждаемой Вами предметной области. даже не знаю, что в первую очередь посоветовать. ну, например, unicode.org. кстати, по поводу совместимости с сильными мира сего: обратите внимание на восьмой по счету логотип в списке full members ( http://www.unicode.org/consortium/memblogo.html ).

(DRVTiny @ Nov 13 2006, в 10:27) писал(а):Ну да, это было бы просто гениальное решение: загружаешься в Linux - переименовываешь все файлы в соответствие с текущей кодировкой, но перед тем, как перезагрузиться обратно в ОС Windows - не забудь снова пройтись по всем файлам на FAT-разделах и переименовать их!
абсурдно, не правда ли? вот на это я и намекал.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
DRVTiny
Сообщения: 19

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение DRVTiny »

sash-kan писал(а):
13.11.2006 17:31
DRVTiny
пожалуйста! поднаберитесь знаний из обсуждаемой Вами предметной области. даже не знаю, что в первую очередь посоветовать. ну, например, unicode.org. кстати, по поводу совместимости с сильными мира сего: обратите внимание на восьмой по счету логотип в списке full members (

Да, но до недавнего времени (в XP и всех предыдущих системах) Microsoft использовала Unicode только для внутренних нужд, а большая часть приложений всё равно работала с однобайтовым отображением национальной кодировки, т.е. собственно тем, что программисты под Windows привыкли называть "ASCII-кодами". Попробуйте сохранить текстовый файл из блокнота и прочитать в SuSE: кракозяблы? Кракозяблы! Уверяю Вас, что если Вы откроете созданный аналогичным образом файл из Vista, будет тоже самое, потому что, как я уже говорил, хотя сам уникод и действительно УНИ, разновидностей его представления - воз и маленькая тележка.
И вообще я не понимаю, что, собственно Вы пытаетесь сказать: Вы считаете что использование UTF-8 не создаёт проблем обмена данными с ОС Windows? Или что Windows сто лет уже, как использует исключительно UTF-8 и только я этого не заметил? (а мне-то казалось, что там даже во внутреннем представлении используется двухбайтовая кодировка ANSI)
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение sash-kan »

DRVTiny
насколько мне известно, имена файлов в ntfs пишутся в юникоде. мы ведь вроде про имена файлов говорили, а не про содержимое.
(DRVTiny @ Nov 13 2006, в 16:58) писал(а):Вы считаете что использование UTF-8 не создаёт проблем обмена данными с ОС Windows?
нет, я так не считаю.
я считаю, что повсеместное использование юникода просто решит все проблемы обмена данными между любыми приложениями.
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
DRVTiny
Сообщения: 19

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение DRVTiny »

sash-kan писал(а):
13.11.2006 19:02
DRVTiny
насколько мне известно, имена файлов в ntfs пишутся в юникоде. мы ведь вроде про имена файлов говорили, а не про содержимое.
(DRVTiny @ Nov 13 2006, в 16:58) писал(а):Вы считаете что использование UTF-8 не создаёт проблем обмена данными с ОС Windows?
нет, я так не считаю.
я считаю, что повсеместное использование юникода просто решит все проблемы обмена данными между любыми приложениями.

А стандартизация национальных кодировок эту проблему не решит? В конце-концов можно ведь не выдавать сертификаты тем программным продуктам, которые не умеют работать с национальной кодировкой.
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение sash-kan »

(DRVTiny @ Nov 13 2006, в 18:06) писал(а):А стандартизация национальных кодировок эту проблему не решит? В конце-концов можно ведь не выдавать сертификаты тем программным продуктам, которые не умеют работать с национальной кодировкой.
Вы про что???
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
estarchak
Сообщения: 1368
Статус: Оракловод

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение estarchak »

Попробуйте сохранить текстовый файл из блокнота и прочитать в SuSE: кракозяблы?


Выберите кодировку в текстовом редакторе. Выбор будет побольше, чем в большинстве редакторов для win.
Дети любят тигра больше, чем Пржевальский лошадей. © Тимур Шаов.

Топик не читал, но внимательно просмотрел.
Спасибо сказали:
DRVTiny
Сообщения: 19

Re: Решено:Переход на SuSE и проблема (пере)кодировок

Сообщение DRVTiny »

sash-kan писал(а):
13.11.2006 19:24
(DRVTiny @ Nov 13 2006, в 18:06) писал(а):А стандартизация национальных кодировок эту проблему не решит? В конце-концов можно ведь не выдавать сертификаты тем программным продуктам, которые не умеют работать с национальной кодировкой.
Вы про что???

Я про то, что нужно договориться наконец о стандарте однобайтовой кодировки (так, чтобы у нас была только одна кодировка кириллицы, а не 5).И эта кодировка должна иметь максимально простое отображение на пространстве символов UNICODE'а

Впрочем, свою проблему я надеюсь решить с помощью статьи, ссылку на которую дал добрый человек товарищ Goodvin, так что... тему можно закрывать.
Спасибо сказали: