
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[18.206.48.243] |
![]() |
|
Страницы: (2) [1] 2 все ( Перейти к последнему сообщению ) |
Сообщ.
#1
,
|
|
|
Вот решил поднять сей вопрос здесь, несмотря на "убогость" форума и избитость темы.
![]() ![]() Тааак... Пользуясь правом Модератора тянусь за ремнем... Шути аккуратнее, pls... ![]() заменил иконку на "информационную" лампочку, поменяв subj... а то так и тянуло досказать "типппа, оппппа"... "KOI8-R is a successor for KOI-8, a de-facto standard for Internet Mail, News, WWW and other interactive services at least all over the ex-SU territory." "KOI8-R is a non-ISO character set popular in Russia." Приплыли. Суксесор-то у нас CP1251! Может в начале 90х было и по-другому, но сейчас всё обстоит именно так! Ого! Еще один "ниспровергатель авторитетов"... Нет. Как было, так и есть. Попробуй найти заведомо известный русский сайтец в www.yahoo.com, изваяный в 1251. Что там написано? Ась? Чегой-то типа "Thе summary of this russian page...." и стоят знаки вопросов. Таким образом, даже сейчас, для Запада cp1251 в России не суксер, а, скорее, suxxxer... ![]() ![]() ![]() Далее. А где ты видел mail на 100 пудов в 1251? По-моему, в трезвом уме и при здравой теще все-таки, в настройках mail-клиентов ставють именно plain-text вкупе с KOI8-R... Или я ошибаюсь? Что надо бы сделать. 1. По-the_Shadow-ски: Ого! Я -- уже классика... ;D ;D ;D Круто! man charsets man 5 locale man localedef man unicode man ... ... 2. Читаем http://unixgems.jinr.ru/~lavr/locale-1251.html. 3. Или как пионеры - в гамаке и стоя, лучше попробовать всё! ![]() Ладно, это я пропущу... Пока. ![]() a) CP1251 localedef -c -i ru_RU -f CP1251 ru_RU.CP1251 b) KOI8-R (если в /usr/lib/locale нет ru_RU.koi8r) localedef -c -i ru_RU -f KOI8-R ru_RU.koi8r c) UTF-8 :-) localedef -c -i ru_RU -f UTF-8 ru_RU.utf8 в директории /usr/lib/locale ln -s ru_RU.cp1251 ru_RU.CP1251 ln -s ru_RU.koi8r ru_RU.KOI8-R :) ln -s ru_RU.utf8 ru_RU.UTF-8 ![]() в /usr/share/locale vi locale.alias ![]() Ну или f4 в MC нажмите. ![]() Не надо усложнять (как в FAQах): russian ru ru ru_RU ru_RU ru_RU.KOI8-R ![]() ru_RU.KOI8-R ru_RU.RU-RURU.RURURU-RU.RURU На самом деле пишем: russian ru_RU.KOI8-R russian ru_RU.CP1251 russian ru_RU.UTF-8 Теперь ваш любимый GDM при выборе языка будет показывать сразу три russian. Правда, GDMу нужно указать на этот locale.alias. ----------------------------------- Теперь (хотя с этого, наверное, надо было начинать) - Во-во! Вот тут-то ты и попался... ;D Этим, к стати, и определяется наличие одной стандартной кодировки. Именно здесь содержатся глобальные настройки всей системы, в которой граф. надстройки над X11 не более чем приятные частности. ;D Возьми тот же пром. контроллер. Не на всех *NIX системах в данном исполнении есть граф. оболочка. А вот по-русски мессаги выкидывают практически все. И как ты думаешь -- как это сделано? Нюка-нюка... ;D /etc/profile export LC_ALL= export LANG=ru_RU.(сюда 1 из трёх - CP1251, KOI8-R, UTF-8) вытащим розы из з...ы лошадки: export LANGUAGE=en_US export LC_MESSAGES=en_US ----------------------------------- /etc/fstab обретёт вид: для виндовых партиций: /dev/hda1 /mnt/fat-c vfat rw,codepage=866,iocharset=cp1251 1 0 для smb: ... ... smbfs fmask=666,guest,iocharset=cp1251,codepage=cp866 ^^^^^ Важно, чтобы в /lib/modules/(ваша версия)/kernel/fs/nls были nls_cp866 и т.д. ----------------------------------- /etc/X11/XF86Config: строки в районе 100-й, section "Module" # This loads the font modules Load "type1" Load "freetype" Обычно "freetype" закомментирован. Раскомментировать. строки в районе 143-й, section "Files" добавить FontPath "/usr/X11R6/lib/X11/fonts/truetype/" Создать такую директорию, переписать туда все виндовые .ttf, создать fonts.dir, переписать откуда-нибудь encodings.dir. fonts.dir создать при помощи ttmkfdir (61k исходники), получившуюся ересь отредактировать вручную, привести к такому примерно виду: arial.ttf -monotype-fixed-medium-r-normal--0-0-0-0-p-0-iso10646-1 arial.ttf -monotype-fixed-medium-r-normal--0-0-0-0-p-0-microsoft-cp1251 arial.ttf -monotype-Arial-medium-r-normal--0-0-0-0-p-0-koi8-r У меня шрифты из XP - всё works fine. Не нужно никаких ГЛЮКАВЫХ и висячих (да ты что?)xfstt! Нужны только fixed фонты (micex, например) для терминала в X, и консольные фонты (где взять - хз -- используй стандартные... ![]() Сам-то понял что советуешь? Ты предлагаешь вместо масштабируемых TrueType фонтов привести их к виду -monotype-... Свежо... Свежо... Но... IMHO, лучше идти стандартным путем, а не в соответствии с уже напрягающей российской традицией... ;D Далее. Смотри. Сколько у тебя X-хостов? Один? А уменя, к примеру, с сегодняшней ночи два... И как ты думаешь, когда я свой notebook притягиваю на работу и ставлю в сетку, то сколько раз у меня прописаны ttf? Приговор -- man xfstt. http://unixgems.jinr.ru/~lavr/X11/win-micex.tgz (тут все вообще, а нужны только fixed). ----------------------------------- А. Забыл. Переключать ведь чем-то надо. ![]() /etc/X11/XF86Config, секция "InputDevice" Option "XkbRules" "xfree86" Option "XkbModel" "pc101" Option "XkbLayout "ru" Option "XkbOptions" "grp:caps_toggle" ----------------------------------- Так. Что-то слишком громоздко и не форматированно получилось. : ![]() Смелость попытки и полет мысли вызывают уважение. Молоток! Я серьезно, если честно... НО! Вот эти самые "но"... : 0. Можешь обижаться -- можешь не обижаться. Самолюбие и степень его задетости здесь не причем. То, что я тебе, как ты знаешь, еще очень аккуратно, можно сказать, ласково и нежно пыль с ушек по-стряхивал, так это все не только к тебе относится. И не только тебе стоит над этим подумать. 1. Наезд на ФОРУМ на первый раз прощается ввиду личного знакомства. Эта не наша с тобой бесада за чашкой кофе/чая... Если народ идет в Форум, значит ему (народу) это надо. И не все понимают широкополосный юмор. Кто-то может воспринять всерьез твои слова. 2. Настораживает отсутствие (или нежелание) понимания изначальных постулатов системы (я о /etc/profile). Что первично? Shell или граф. среда? Что происходит после логина пользователя? Почему именно shell прописывается последним полем в /etc/passwd? Ответь себе на эти вопросы и ты, IMHO, кое-что поймешь о системе. 3. Ты не первый, кто считает что на RUnet'е свет клином сошелся. И что стандарты и вся эта устаревшая ахинея не про тебя писаны... Кто тратит собственные силы и мозги на преобразование очевидных и, к сожалению, статистически оправданых вещей. IMHO, есть надежда что это пройдет. ------------------------------ РЕЗЮМЕ. Очень не плохо, за исключением отдельных моментов. Оставить с правками Модератора Форума. Говорю по-русски -- не сметь править пометки от Модератора. Иначе я буду беспощадно свирепствовать. Дополнения других посетителей форума приветствуются. Продолжай в том же духе. Только... Аккуратнее, pls. |
Сообщ.
#2
,
|
|
|
Цитата Nwm, 01.03.03, 15:46:42 arial.ttf -monotype-fixed-medium-r-normal--0-0-0-0-p-0-iso10646-1 arial.ttf -monotype-fixed-medium-r-normal--0-0-0-0-p-0-microsoft-cp1251 arial.ttf -monotype-Arial-medium-r-normal--0-0-0-0-p-0-koi8-r Так. Совершенно колбаса. Вкралась совершенно досадная опечатка. arial.ttf -monotype-Arial-medium-r-normal--0-0-0-0-p-0-koi8-r arial.ttf -monotype-Arial-medium-r-normal--0-0-0-0-p-0-microsoft-cp1251 arial.ttf -monotype-Arial-medium-r-normal--0-0-0-0-p-0-iso10646-1 Откуда получилось fixed - ума не приложу. ![]() xfontsel покажет всё сразу же после перезапуска X. или после xset fp+ (man xset ) |
Сообщ.
#3
,
|
|
|
Шадоу, спасибо за пыль с ушей.
Теперь жесточайшая реальность. Что такое -monotype- - это всего лишь foundry - кто шрифт сделал. Это было сгенерировано утилиткой... ttmkfdir... вот тебе куча писанины, чтобы не сомневался. trebuc.ttf -microsoft-Trebuchet MS-medium-r-normal--0-0-0-0-p-0-koi8-r trebucit.ttf -microsoft-Trebuchet MS-medium-i-normal--0-0-0-0-p-0-koi8-r trebucbi.ttf -microsoft-Trebuchet MS-bold-i-normal--0-0-0-0-p-0-koi8-r trebucbd.ttf -microsoft-Trebuchet MS-bold-r-normal--0-0-0-0-p-0-koi8-r times.ttf -monotype-Times New Roman-medium-r-normal--0-0-0-0-p-0-koi8-r timesi.ttf -monotype-Times New Roman-medium-i-normal--0-0-0-0-p-0-koi8-r timesbi.ttf -monotype-Times New Roman-bold-i-normal--0-0-0-0-p-0-koi8-r timesbd.ttf -monotype-Times New Roman-bold-r-normal--0-0-0-0-p-0-koi8-r tahoma.ttf -microsoft-Tahoma-medium-r-normal--0-0-0-0-p-0-koi8-r tahomabd.ttf -microsoft-Tahoma-bold-r-normal--0-0-0-0-p-0-koi8-r sylfaen.ttf -microsoft-SylfaenARM-medium-r-normal--0-0-0-0-p-0-koi8-r pala.ttf -linotype-Palatino Linotype-medium-r-normal--0-0-0-0-p-0-koi8-r palai.ttf -linotype-Palatino Продолжение в следующем письме... а то тут уже места нет. ![]() |
Сообщ.
#4
,
|
|
|
Ну а теперь понеслаааааааась!
![]() /.../cdrom/slackware/l/freetype.txt freetype The FreeType engine is a free and portable TrueType font rendering engine. It has been developed to provide TrueType support to a great variety of platforms and environments. This is an old version (freetype1, or libttf) that is considered deprecated but might still be required by some programs. New programsfreetype: should use the freetype2 library (which is bundled with XFree86). ---------------------------------------------------------------- Все точки над Ё глубокомысленно мной расставлены. ![]() Напоследок: ---------------------------------------------------------------- По различным причинам на территории России сейчас используется много разных восьмибитных русских кодировок. Среди них: 1. КОИ-8 Исторически принятая на русских UNIX системах - самая ранняя из появившихся. Отличается тем свойством, что если у нее обрезан восьмой бит: c & 0177 - то она все же читаема с терминала как транслитерация латинских букв. Именно этой кодировкой пользуется автор этой книги (как и большинство UNIX-sites сети RelCom). 2. ISO 8859/5 Это американский стандарт на русскую кодировку. А русские программисты к ее разработке не имеют никакого отношения. Ею пользуется большинство коммерческих баз данных. 3. Microsoft 1251 Это та кодировка, которой пользуется Microsoft Windows. Возможно, что именно к этой кодировке придут и UNIX системы (гипотеза 1994 года). 4. Альтернативная кодировка для MS DOS Русская кодировка с псевдографикой, использовавшаяся в MS DOS. 5. Кодировка для Macintosh Это великое "разнообразие" причиняет массу неудобств. Но, господа, это Россия - что значит - широта души и абсолютный бардак. Relax and enjoy. ----------------------------------------------------------------- (c)Андрей Богатырев. Хрестоматия по программированию на Си в Unix ї Copyright Андрей Богатырев. 1992-95 |
Сообщ.
#5
,
|
|
|
Ааааа.. Да. Согласен. Но...
Ты в любом случае изначально переходил на -fixed- фонты. Или я не прав? К стати, в #2 ты, все-таки поправился... Молоток... ![]() Вот такая (эххххх) "жесточайшая реальность".... ;D По этой же причине даже при трех описанных раскладках ты в терминале под GNOME'ом получал "мусор". К стати, можешь поправить положение отредактировав соответствующий файлец настройки... Только выбирать тебе все-равно придется... (Это была подсказка) Далее. А не желаешь ли ты случайно заглянуть в: /usr/doc/Linux-HOWTOs/Font-HOWTO, да и вообще -- там довольно много интересного... ;D ;D ;D Теперь, по уважаемому лично мной А. Богатыреву. И что из этого следует? Из цитаты-то? То, что Россия за счет широты души в полнейшем бардаке по сию пору пребывает? Или то, что он написал в п.1? Не ясно... ![]() |
Сообщ.
#6
,
|
|
|
Цитата the_Shadow, 02.03.03, 07:39:56 Ааааа.. Да. Согласен. Но... Ты в любом случае изначально переходил на -fixed- фонты. Или я не прав? К стати, в #2 ты, все-таки поправился... Молоток... ![]() Вот такая (эххххх) "жесточайшая реальность".... ;D По этой же причине даже при трех описанных раскладках ты в терминале rxvt получал "мусор". К стати, можешь поправить положение отредактировав соответствующий файлец настройки... Только выбирать тебе все-равно придется... (Это была подсказка) Fixed шрифты в Linux - /usr/X11/lib/fonts/misc/ все *pcf. Поэтому для cp1251 нужен какой-то свой туда закинуть. Да не один, причём. Ну... а по поводу выбирать - если бы у меня была "Etta" - то однозначно microsoft-cp1251. А то у 8.1 с консервативностью малось поплохело, X не грузится с cp1251 (segmentation fault и проч.). А в консоли у меня с cp1251 не было проблем. Теперь о моей кодировке: koi8-r. ;D Я, кстати, жду релиза 9й. Я уже винт вытащил. Как только увижу релиз - сразу побегу скачивать. ![]() |
Сообщ.
#7
,
|
|
|
Цитата Nwm, 02.03.03, 07:52:13 Ну... а по поводу выбирать - если бы у меня была "Etta" - то однозначно microsoft-cp1251. А то у 8.1 с консервативностью малось поплохело, X не грузится с cp1251 (segmentation fault и проч.). А в консоли у меня с cp1251 не было проблем. Угу... Вот о чем я тебе и говорю -- лучше использовать старые-добрые общие методы чем... При замене версии ядра развлекаться с новыми проблемами... ;D ;D ;D Их и без того более чем достаточно... ;D Цитата Теперь о моей кодировке: koi8-r. ;D Эххххх... ;D И все-таки... "Старый воин -- мудрый воин". Хоть и зануда... ;D ;D ;D Цитата Я надеюсь, там этих проблем не будет. (Имхо там твоей консервативностью и не пахнет - в плане софта, по крайней мере, всё новьё). Ну, "пожуем -- увидим", как сказал людоед, когда ему сказали что человек хороший... ;D ;D ;D |
Сообщ.
#8
,
|
|
|
Немного, IMHO, следует поправить... Народ ужо больно спрашивает...
Итак. Шаг #0. Какая кодировка? Правильнее всего, IMHO, KOI8-R. Как я уже не раз говорил, это наиболее стандартная для *NIX'а кодировка в России... Кто и как -- не в курсе, однако, как видите, я ее использую и с вами общаюсь... И еще много чего... ;D Да, чуть не забыл... Все это справедливо для Slackware "Etta", сиречь, 8.0... Для остальных дистрибутивов надо внести изменения по мере необходимости. |
Сообщ.
#9
,
|
|
|
Шаг #1. Ставим locale (локаль).
Что есть локаль. Это набор спец. файлов, содержащих сообщения на нужном нам языке. Практически все сообщения, которые система использует для локализации общения с пользователем. К примеру, на запрос date нелокализованная система выдат ответ на чиcтейшем английском, локализованная -- на русском и в соответствии с нашими стандартами. Ряд программ (в т.ч.) сервера БД так же берут правила представления информации из локалей. Подробнее о локалях см. http://pascal.sources.ru/cgi-bin/forum/YaB...;num=1047143641. Делаем: 1. Правим файл /etc/rc.d/rc.font 2. Добавляем туда: ![]() ![]() setfont -v Cyr_a8x16.psfu.gz #это мы загружаем шрифт. Поищите у себя в системе еще шрифты, если Вам это не по нраву. mapscrn koi2alt #как рисуем? for y in 1 2 3; do echo -ne "\033(K" > /dev/tt$y done # Здесь мы грузим в три виртуальных терминала спец. строчку, побуждающую их пользоваться русским. loadkeys ru.map # Это раскладка клавы. Есть еще несколько -- есть из чего выбирать... Так, по поводу виртуальных терминалов... Если кто не в курсе, то при загрузке в терминале, по клавишам Alt+Fn можно переключаться между вирт. терминалами системы. По умолчанию, их шесть. Мне столько просто не нужно. В файле /etc/inittab вырезаем под корень ненужные (см. там c1-c6). Немного можно подэкономить память... ;D Повторяю -- это в случае, если Вы грузитесь в терминальном режиме. Теперь, ставим именно локаль, т.е. определяем правила... Будем править /etc/profile. Находим там export LC_ALL=POSIX. И оставляем export LC_ALL=, т.е. "смотрящим" в пустоту. Добавляем export LANG=ru_RU.KOI8-R. Переходим в каталог /usr/lib/locale/. Там есть подкаталог ru_RU.koi8r. Именно там и лежат локали. Нам нужно привести в соответствие то, что мы прописали в profile, тому что есть в реалиях. Для этого делаем симлинк. ![]() ![]() ln -s ru_RU.koi8r ru_RU.KOI8-R Делаем последнее. В каталоге /usr/share/locale правим locale.alias. Кодировки можно указывать по-разному... Поэтому делаем следующее (чтобы избежать ошибок)... ![]() Строка russian должна указывать на ru. ru на RU и, в свою очередь, RU на ru_RU.KOI8-R. В этом же каталоге есть подкаталог /ru. Там лежат файлы локализации *.mo... Это для разных приложений... Наконец. В mc говорим, что принимать 8-битные символы. по умолчанию -- 7 бит. Все. Локаль есть. Презагружаемся. |
Сообщ.
#10
,
|
|
|
Шаг #2. Русификация X Windows и GNOME.
Система убеждена в том, что мы используем ru_RU.KOI8-R. Я без малейшего понятия как (и надо ли) русифицировать KDE. Если кто дополнит -- милости просим. Нам понадобятся русские шрифты из дистрибутива. Убедитесь что они установлены! Идем в каталог /etc/X11. Там есть файл XF86Config. Будем ее править, добавляя в самое начало описания шрифтов FontPath Section "Files" пути к Вашим каталогам с русскими шрифтами. Смотрим что и как написано в предыдущих FontPath'ах, так же прописываем и свои каталоги... Далее. Обеспечиваем ввод русских букв. Идем в этом же файле ниже. В раздел Section "InputDevice". Там есть описания настроек XKB -- работа с клавиатурой в общем и целом в X11, в т.ч. и локализация X Windows и базирующихся на них приложениях. Ваш должен выглядет примерно так: ![]() ![]() Option "XkbRules" "xfree86" Option "XkbModel" "pc101" # какая модель на самом деле? Option "XkbLayout" "ru" # то, что хотели. Option "XkbVariant" "winkeys" # Windows-compat. keyboard Option "XkbOptions" "grp:shift_toggle" # переключаемся по паре Shift'ов. В принципе, остается только GNOME русифицировать... Идем в каталог /opt/gnome/etc/gtk и перекидываем в свой домашний каталог файл gtkrc.ru. Только в домашнем каталоге его имя должно быть .gtkrc! Так же (такой же) файл можно положить в /etc/skel. Но это на случай того, что Вы будете добавлять новых пользователей, работающих в GNOME... Все. PS В следующей серии -- настройка ttf шрифтов от M$ Windows (кодировка windows-1251). |
Сообщ.
#11
,
|
|
|
Цитата PS В следующей серии -- настройка ttf шрифтов от M$ Windows (кодировка windows-1251). [*]ttf шрифты от m$ ( win98 ) могут использоваться для любой кодировки; [*]подробнее - в fonts.dir. :-) PS: Ждём девятой. Сегодня скачаю. Впечатления закину вечером. |
Сообщ.
#12
,
|
|
|
Да! Конечно! В том-то и прикол! Я, просто, еще этого не успел написать -- завтра допишу. Сегодня большие грабли на работе...
![]() |
Сообщ.
#13
,
|
|
|
Locale.
Как обычно (см. выше). Единственное отличие от 8 и более ранних -- сделайте симлинк (ln -s) из /usr/share/locale на /usr/lib/locale Man'ы. Если хочется русских манов, то меняем в /usr/lib/man.conf, строку NROFF /usr/bin/nroff -S -mandoc на NROFF /usr/bin/nroff -S -Tlatin1 -mandoc. Должно полегчать. Х и GNOME. Стандартно, за исключением GNOME. Да! Чуть не забыл -- править XF86Config в части фонтов лучше после настройки GNOME, точнее, чтоб два раза по одному файлу не елозить, лучше оставить все это на потом. Для GNOME надо поставить русские TTF-фонты. Вначале найдите три пакета: - cabextract-0.6-i386-1dl.tgz -- это есть распаковщик .CAB-файлов. Нам необходим для распаковки фонтов. - freetype2-2.1.4rc2-i386-4dl.tgz -- обновленная версия freetype. - webfonts-1.0-i386-3dl.tgz -- сами фонты. Все это хозяйство распаковываем, ставим. После заходим в каталог с фонтами в /usr/X11R6/X11/fonts/ удаляем fonts.cache-файлы. Этим мы убиваем старые настройки. Делаем fc-cache заново. После этих разминок, прописываем в X-конфиге русские TTF-фонты первыми, потом -- просто русские фонты, а потом все остальное. Собственно, все... |
Сообщ.
#14
,
|
|
|
Кстати - Линукс с Русификацией Win1251 уже есть
![]() |
Сообщ.
#15
,
|
|
|
one thing left to add -
in XFree86, since version 4.3 (as far as I remember), you have to set up two (or more?) languages in "InputDevice" section! Otherwise you will have only one keyboard layout ![]() e.g.: ![]() ![]() Option "XkbRules" "xfree86" Option "XkbModel" "pc101" Option "XkbLayout" "en,ru" # english + russian Option "XkbVariant" "basic, winkeys" Option "XkbOptions" "grp_led:scroll,grp:ctrl_shift_toggle" # switch by ctrl+shift, scroll lock indicates our current layout |