LINUX.ORG.RU

Спасибо. Я в принципе и не сомневался что как-то оно должно заработать. Уж тем более в SuSE. Правда зюзю я сегодня грохнул - поставил Дебиана. Теперь и uxterm перестал нормально работать. Но без борьбы я не сдамся :-) Потому сразу вопрос: а какие источники надо апт-гету указывать, чтобы он самые свежие пакеты тянул? В частности интересует xfree 4.2 и КДЕ3

Oleksiy
()

Ну как обычно, просто нужно тянуть с ветки unstable там всё самое последнее

Smit
()

А для юникодной локали нужно править gtkrc на предмет шрифтов? У меня для ru_RU.KOI8-R и gtk 1.2.10 ну ни как не получается русский приделать :((

anonymous
()

to: anonymous (*) (2002-08-13 05:19:38.397) Шрифты в XFree посмотри на предмет руских и сразу все пределается. Особенно в misc/ и 75dpi/ просто в большинстве дистров там руским и не пахнет а если иметь в системе парк руских шрифтов и пытаться все конфиги на них переделать то гденибудь всеравно обламаешся. ;(

xah7ep
()

4Oleksiy: Меня только одно удивляет - в принципе дистрибутивы все похожи,
может стоило настроить suse, чем его сносить и ставить тот же дебиан?
Или не работало что-то еще?

4xah7ep: а если использовать только ttf?

4anonymous (*) (2002-08-13 05:19:38.397): Поставь несколько юникодных
шрифтов и пропиши их в свой .gtkrc

Меня интересует такой вопрос - есть ли mc, который еще бы и
перекодировку в unicode делал? Когда я ставил себе mc с альта
там такого не было.

jackill ★★★★★
()

локаль ***.UTF-8 в gtk приложении: специально для Oleksiy

2 all: настройка локали для gtk приложений.

То, что шрифты в iso10646-1 кодировке должны быть доступны X-серверу, это и так понятно. Для этого ( в случае Debian ) надо поставить, например, xfonts-cronyx-75dpi, xfonts-bolkhov-75dpi, unifont ( или приделать какие-нибудь другие шрифты ).

Но это еще не все. Для gtk-приложений нужно ( а точнее, это надо для GDK) объяснить, какими шрифтами для какой локали пользоваться. В принципе, если локаль называется (например) ru_RU.KOI8-R, то GDK будет пытаться найти шрифт с XLFD <что-там-по-умолчанию>-koi8-r, но если это не выйдет, будет пользоваться каким-то другим шрифтом ( какой найдет ).

Понятно, что умолчания работают плохо, поэтому нужно покопаться в нескольких местах. Сейчас попытаюсь рассказать в каких.

1) Нужно поправить /etc/gtk/gtkrc.iso10646-1 и сделать символическими ссылками на него /etc/gtk/gtkrc.utf-8, /etc/gtk/gtkrc.ru_RU.UTF-8, /etc/gtkrc.ru

У меня это выглядит так:

# /etc/gtk/gtkrc.iso10646-1

# fonts for Unicode locales.

style "gtk-default-ru" {

fontset = "\

-rfx-*-medium-r-normal-sans-12-120-75-75-*-*-iso10646-1\,

-rfx-*-medium-r-normal-sans-12-120-75-75-*-*-iso10646-1\,

-rfx-*-medium-r-normal-sans-12-120-75-75-*-*-iso10646-1\,

-rfx-*-medium-r-normal-sans-12-120-75-75-*-*-iso10646-1\,

"

}

class "GtkWidget" style "gtk-default-ru"

Шрифт подбирается путем проб и ошибок: сначала выбираете в xfontsel то, что Вам больше нравится, а потом пробуете - нет ли тормозов при запуске чего-то gtk'-шного ( как правило, если Вы указали какой-то слишком мелкий шрифт и пользуетесь сглаживанием, и начинаются нехорошести того рода, что gnome-panel жрет ~100% CPU ).

2) написать в /etc/locale.alias

ru ru_RU.UTF-8 ( по умолчанию там ru_RU.ISO8859-5 )

3) проследить, чтоб локали были созданы:

dpkg-reconfigure locales

и сказать, какие локали нужны.

4) посмотреть, чтоб в gtk-теме, которой Вы пользуетесь, не было никакой "самодеятельности" по поводу фонтов, все

font = "-adobe-helvetica-*-чего-еще-там-iso8859-1"

подлежат нещадному изничтожению.

5) то же самое с Вашим персональным ~/.gtkrc

P.S. Я ни в коей мере не претендую на то, что мой способ правильный и простой. Но он работает. По крайней мере, для Debian woody/sarge/sid

Cheers,

Dselect ★★★
()

2 jackill:

> Меня интересует такой вопрос - есть ли mc, который еще бы и

> перекодировку в unicode делал? Когда я ставил себе mc с альта

> там такого не было.

Не дружит mc с unicode'-ом, и весь сказ. Там в TODO один из пунктов: "Add UNICODE support". Вроде бы, вся петрушка в libncurses ( надо все переписывать под libncurseswX ).

Cheers,

Dselect ★★★
()

Так какая же у тебя локаль - ru_RU.UTF-8 или de_DE.UTF-8 ?

anonymous
()

В GoldEd таже фишка, неправильно пашет. Интересно как можно нормально консоль для unicode настроить? Может есть какие патчи?

anonymous
()

unicode: консоль и не только

2 anonymous (*) (2002-08-13 18:00:43.228)

Вообще-то у меня ru_RU.UTF-8. Но все, что я написал, применимо и для любой другой unicode-локали. Только симлинки по-другому называться будут, благо шрифты те же самые для всех unicode-локалей.

Пару дней назад я попробовал (неважно почему :)) настроить еще и de_DE.UTF-8. Результат Вы видите.

2 anonymous (*) (2002-08-13 18:05:10.319)

> В GoldEd таже фишка, неправильно пашет.

Если б я хоть раз в жизни этот самый GoldEd видал, мог бы сказать что-то внятное. Но если ЭТО использует gtk, то можно попробовать описанную ранее процедуру. Хотя никто не может запретить разработчикам так "хорошо" написать программу, что будут проблемы с локализацией ( это в gtk-то, где все и так в unicode хранится, а потом перекодируется куда надо) :(.

> Интересно как можно нормально консоль для unicode настроить?

В Debian можно для этого поставить console-cyrillic ( это если требуется локаль ru_RU.UTF-8). В ходе конфигурации скрипт спросит, какая у Вас кодировка ( надо сказать UNICODE ), на какую клавишу повесить переключатель, какой фонт использовать.

Но можно и вручную:

consolechars --force-no-sfm --font LatArCyrHeb-14 --tty=/dev/tty1

loadkeys /usr/share/keymaps/i386/qwerty/ru-utf.kmap.gz

Самое противное в этом то, что не для всех локалей keyboard map :(

P.S. Когда наконец повыздыхают эти cp1251,koi8,cp866!

Cheers,

Dselect ★★★
()

GoldEd как и MC это консольные приложения и скорее всего эту проблемы имеют все приложения использующие ncurses. Мне бы с ними для начала разобратся а уж потом с X'ами.

anonymous
()
Ответ на: комментарий от jackill

"Меня только одно удивляет - в принципе дистрибутивы все похожи,может стоило настроить suse, чем его сносить и ставить тот же дебиан? Или не работало что-то еще?"

Да фиг его знает. Все вроде работало. Не давало покоя количество всякого мусора, который этот suse с собой приволок. Зато под Дебианом поимел полный комплект проблем молодого бойца включая звуковую карту и неплагендплейную ОС. Хочу такой дистр - чтобы не было много лишнего,чтобы нормально самораспознавалось железо и не было проблем с русским

Oleksiy
()
Ответ на: комментарий от Oleksiy

ASPLinux? По крайней мере у меня с ним (7.2) проблем не было.

McGray ★★
()

про проблемы с русским....

> Зато под Дебианом поимел полный комплект проблем молодого бойца

Это что ж за проблемы такие страшные? :)

> включая звуковую карту и неплагендплейную ОС.

А что за карточка? И с чего это ОС не plug&pray, т.е. plug&play?

В 2.4.18 и 2.4.19 ядрах по умолчанию включено plug&play support. Точно помню - я каждый раз матюкаюсь, когда кому-нибудь ставлю и ядро пересобираю - приходится вырубать _ТУЧУ_ всякого барахла: plug&play support, hotplug support, usb support и прочую экзотику.

Интересно, кому это все _действительно_ может понадобиться и зачем?

> Хочу такой дистр - чтобы не было много лишнего,чтобы нормально

>самораспознавалось железо и не было проблем с русским

Дак и в Debian вроде особых проблем с железом нет [ имеется в виду (проблемы Debian)/(проблемы ядра Linux) ]. Возиться с IRQ, DMA,... последний раз приходилось год назад с какой-то древней ISA'-шной сетевухой.

Ну, а если что-то хитрое попалось, то все как в любом нормальном *nix: читаем доки, компилим ядро...

С русским проблем я тоже там не встретил ( кроме того, что надо слегка поглумиться над gtkrc.iso-10646-1 и gtkrc.utf-8 ). А так с полпинка заработало - сгенерил локали, поставил шрифты, сказал export LANG=ru_RU.UTF-8.

А про лишнее я не совсем пойму: base system ~80Mb, остальное - что душе угодно будет :)

Cheers,

Dselect ★★★
()
Ответ на: про проблемы с русским.... от Dselect

"Это что ж за проблемы такие страшные? :)"

Да те самые про которые все новички ноют в конфах: xfree, звук, прочая херня. Под SuSE я уже было забыл что у меня за железо в тачке. А тут вот пришлось снова вспоминать.

"В 2.4.18 и 2.4.19 ядрах по умолчанию включено plug&play support."

Понимаешь, мне лениво было тянуть все CDшки и болванки на них тратить, потому я потянул только первую, а там ядро 2.2.20. А 2.4 аж на четвертой, но с этим 2.2 у меня не хотели сетевые карты нормально заводится, соответственно никакого ФТП и прочего. Говорит что карта получила IRQ 0 что неправильно - поправьте в биосе (какой тут нахер биос может быть, раньше все и так работало). А мне эти все IRQ - китайская грамота. Мой первый РС уже без ISA-слотов шел. А на маке я и слов таких не знаю. Т.е. теоретически я конечно вполне себе представляю что это такое и с чем его едят, но практически ни разу дела не имел. Потом умные люди подскаали - в биосе поправь, только не IRQ :-)

всякого барахла: plug&play support, hotplug support, usb support и прочую экзотику.

Ну, насчет PnP мне и самому не понятно. Если все равно все руками прописывать, какое нафиг ПнП? А насчет УСБ и хотплага - это я постоянно использую. Мыш у меня УСБшный и я его постоянно перевтыкаю в лаптоп и обратно.

Oleksiy
()

про CD

> Понимаешь, мне лениво было тянуть все CDшки и болванки на них

> тратить, потому я потянул только первую

Дак там и на первом CD тоже есть 2.4, точнее - 2.4.18. Просто по умолчанию 2.2.20 используется. А если сказать boot: bf24

так загрузится 2.4.18.

Можно еще было скачать 2 образа дискет (bf24 flavor) и tgz с драйверами, а все остальное по сети ставить.

А ядра, если я правильно помню, лежат на первом CD только там не исходники, а уже скомпилированные (kernel-image-2.4.18-<проц_под_который_оно_оптимизировано> ), а на 4-м - CD исходники и разные патчи

> Под SuSE я уже было забыл что у меня за железо в тачке. А тут вот

> пришлось снова вспоминать.

Дак попробуйте lspci, может чего хорошего расскажет.

> но с этим 2.2 у меня не хотели сетевые карты нормально заводится

Да, там есть проблемы с 3com'-овскими карточками - надо, чтоб драйвер был "намертво" вкомпилирован в ядро, в виде модуля он не захочет работать ( а может, у меня руки кривые ). А с 2.4 все на ура работает.

Пару слов о xfree: вроде бы оно одинаковое во всех дистрибутивах. И конфигуратор там стандартный (xf86cfg). А у 4.x есть замечательная опция -configure, он сам создает конфиг, туда добавить

Section "InputDevice"

Identifier "Generic Keyboard"

Driver "keyboard"

Option "CoreKeyboard"

Option "XkbRules" "xfree86"

Option "XkbModel" "pc105"

Option "XkbLayout" "ru"

Option "XkbVariant" "winkeys"

Option "XkbOptions" "grp:toggle"

EndSection

и немного подправить то, что он про мышь напишет - и все.

Правда, с 2.2 ядром тоже проблемы могут быть со всякими новомодными nVidia ( и с S3 Trio :)). Так что тогда лучше пользоваться 2.4 ядром и XFree 4.2

Dselect ★★★
()

> Понимаешь, мне лениво было тянуть все CDшки и болванки на них тратить, потому я потянул только первую, а там > ядро 2.2.20. А 2.4 аж на четвертой, Ну может мы все-таки научимся читать? Берем первый диск от Debian-a, грузимся с него. Теперь английским по черному написано, что если вы нажмете F3 - то будете иметь возможность выбора как инсталированых ядер, так и опций к ним. Выбираем bf24 и имеем ядро 2.4.18 !!!

Успехов! _________________ Николай.

anonymous
()

наконец-то наткнулся на продуктивный тред по UTF8, такой вот у меня вопрос: а если заменить ncurses на что-нибудь другое? например я наткнулся на sourceforge на библиотеку PDСurses - никто ее ставить не пробовал? как насчет других реализаций curses, даже не под GPL никто не знает?

anonymous
()

Гм, дык а старые конфиги иксов поюзать (от suse)?
А насчет pnp - при загрузке есть kudzu - вот это похоже на pnp (последняя, которую я видел в декабре прошлого года была уже ничего так).

А вообще я не люблю Pnp.

jackill ★★★★★
()

про plug&play и UTF-8 в ncurses

2 anonymous (*) (2002-08-15 10:38:47.857)

Процитирую документацию к libncurses5.2:

"# UTF-8 support:

* when checking LC_ALL, LC_CTYPE, and LANG environment variables for UTF-8 locale, ignore those which are set to an empty value, as per SUSV2. * encode 0xFFFD in UTF-8 with 3 bytes, not 2. * modify _nc_utf8_outch() to avoid sign-extension when checking for out-of-range value."

Так что поддержка UTF-8 там есть ( вообще говоря, оно вроде и так ясно: всякие там base-config, dselect, aptitude спокойно себе работают c ru_RU.UTF-8 локалью ). Просто кое-кому лень переписывать программы, потому и получается нелады с unicode в mc, emacs (но Xemacs работает) :(

2 jackill & Oleksiy

Про PnP. Смысл PnP ( как я понимаю ) в том, чтобы IRQ и диапазон DMA не были раз и навсегда зафиксированы для устройства, и ОС могла сама назначать. А уж как это делается - то ли в пишем конфиг и пользуемся isapnp, то ли пользуемся discover или kudzu - это уже совсем другая сказка ( если я правильно понимаю).

По моему, сама идея PnP существенно отдает бредятиной. Гораздо логичнее стандартизировать устройтва и не маяться.

Cheers,

Dselect ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.