Не получается русифицировать FreeBSD 4.9 ни в консоли ни в иксах.
Я честно прочитал большую часть форума про русификацию и всякие инструкции, но конкретно решения не нашёл, так что вот
проблемы с вводом символовРусификация консоли: я отредактировал rc.conf как сказано в инструкциях, при печати в консоли файлов с нужной кодировкой он шрифты правильно показывает, то есть с отображением в консоли проблем нет. Но я не могу вводить русские шрифты, нажимаешь капслок, жмёшь клавиши, он пищит и не печатает ничего. В vi печатает что-то типа \xbe на каждое нажатие.
Это я делал под рутом. Зашёл под юзером, для которого у меня стоит русская локаль и в .csh прописано две переменных. Для него отображается весь интерфейс по-русски (что мне не надо нифига), но всё равно не печатает, пищит просто после переключения на русскую раскладку. У меня цель, чтобы интерфейс был английский, а я просто бы мог вводить по-русски.
А пока всё ровно наоборот.
>Не получается русифицировать FreeBSD 4.9 ни в консоли ни в иксах.
насколько помниться я иксы в 5.2.1 так русифицировал:в /etc/X11/XF86Config-4 или как он там у тя называется и где лежит
Section "InputDevice"
...
=> Option "XkbLayout" "us","ru" <=
дописываешь ру + клавиши переключ раскладки
+ потом поставь масдайные шрифты и всё будет тип топ!
Option "XkbOptions" "grp:ctrl_shift_toggle"
EndSectionа как я консоль русифицировал - точно уж и не помню
но намучился здорово
после махинаций с rc.conf надо изменить класс логина для пользователя на рашн логин клас или чё то в этом роде
можно выставлять переменные а можно(вот забыл как именно) с помощью(если ничё не путаю) pw это сделать
вспомню - скажу =)>Я честно прочитал большую часть форума про русификацию и всякие >инструкции, но
>конкретно решения не нашёл, так что вот
>проблемы с вводом символов
>
>Русификация консоли: я отредактировал rc.conf как сказано в инструкциях, при печати в
>консоли файлов с нужной кодировкой он шрифты правильно показывает, то есть
>с отображением в консоли проблем нет. Но я не могу вводить
>русские шрифты, нажимаешь капслок, жмёшь клавиши, он пищит и не печатает
>ничего. В vi печатает что-то типа \xbe на каждое нажатие.
>Это я делал под рутом. Зашёл под юзером, для которого у меня
>стоит русская локаль и в .csh прописано две переменных. Для него
>отображается весь интерфейс по-русски (что мне не надо нифига), но всё
>равно не печатает, пищит просто после переключения на русскую раскладку. У
>меня цель, чтобы интерфейс был английский, а я просто бы мог
>вводить по-русски.
>А пока всё ровно наоборот.
Криво русифицировал.
see http://unix1.jinr.ru/~lavr
freebsd.org.ua
freebsd.org.ru
>Криво русифицировал.
>see http://unix1.jinr.ru/~lavr
>freebsd.org.ua
>freebsd.org.ru
Всё это я уже просмотрел. И даже форум прочитал. А первый сайт у меня на диске лежит скачанный. И pascal.tsu.ru тоже смотрел. Так как в форуме сообщений таких нет, наверно, я что-то не так сделал. Но вдруг, у кого похожая проблема была.
>Не получается русифицировать FreeBSD 4.9 ни в консоли ни в иксах.
>Я честно прочитал большую часть форума про русификацию и всякие инструкции, но
>конкретно решения не нашёл, так что вот
>проблемы с вводом символов
>
>Русификация консоли: я отредактировал rc.conf как сказано в инструкциях, при печати в
>консоли файлов с нужной кодировкой он шрифты правильно показывает, то есть
>с отображением в консоли проблем нет. Но я не могу вводить
>русские шрифты, нажимаешь капслок, жмёшь клавиши, он пищит и не печатает
>ничего. В vi печатает что-то типа \xbe на каждое нажатие.
>Это я делал под рутом. Зашёл под юзером, для которого у меня
>стоит русская локаль и в .csh прописано две переменных. Для него
>отображается весь интерфейс по-русски (что мне не надо нифига), но всё
>равно не печатает, пищит просто после переключения на русскую раскладку. У
>меня цель, чтобы интерфейс был английский, а я просто бы мог
>вводить по-русски.
>А пока всё ровно наоборот.# echo $LANG
LANG - локализация
# echo $TERM
тип эмулируемого терминала (с поддержкой русского или без - зависит от выбранного типа: cons25r или pc3r)
# echo $TERMCAP
база TERMCAP - описания терминалов: vt100, cons25, pc3, xterm и тд и тп,
содержит описание: кол-во колонок, строк, esc-последовательности, кол-во
цветов и тд и тпсодержимое /etc/rc.conf для руссификации: keyboard mapping, fonts
#--lavr, используем фонты CP866(MSDOS) в них более удачная псевдографика
# font для матрицы, если все не нужны оставить наиболее приемлемый
font8x8="cp866-8x8"
font8x14="cp866-8x14"
font8x16="cp866-8x16"
#--lavr мапирование фонта CP866 в KOI8-R
scrnmap="koi8-r2cp866"
#--lavr клавиатурный маппинг для KOI8-R - однократное нажатие CAPS-LOCK
# фонт MSDOS можно использовать ALT-буква
keymap="ru.koi8-r"чтобы по умолчанию на виртуальных терминалах (консоль) использовалась
эмуляция cons25r - поддержка русских, в /etc/ttys:# Virtual terminals
ttyv1 "/usr/libexec/getty Pc" cons25r on secure
ttyv2 "/usr/libexec/getty Pc" cons25r on secure
ttyv3 "/usr/libexec/getty Pc" cons25r on secure
ttyv4 "/usr/libexec/getty Pc" cons25r on secure
ttyv5 "/usr/libexec/getty Pc" cons25r on secure
ttyv6 "/usr/libexec/getty Pc" cons25r on secure
...строка:
ttyv1 "/usr/libexec/getty Pc" cons25r on secureозначает что утилита getty висит и ожидает ввода на терминале ttyv1,
если на этом терминале будет произведен вход - login, по умолчанию
выставится переменная TERM=cons25r, разумеется если она не будет
переопределена в стартовых файла login-shell'а пользователя.
Если на каком-то из виртуальных терминалов НЕ НУЖНА поддержка русских,
выставить cons25 в /etc/ttys или это можно выставить в стартовых скриптах
login-shell'а или прямо в сеансе задать переменную среды TERM.Пример, допустим оставим руссификацию в /etc/rc.conf и /etc/ttys
соответственно мы можем в стартовых скриптах:BOURNE SHELL (/bin/sh) - .profile
CSH/TCSH - .login/.cshrc/.tcshrc
BASH - .profile/.bash_profile/.bashrcизменить переменные LANG и TERM, или одну из них, однако следует помнить
что при изменении LANG будет обрезаться 8'ой бит при вводе, а при изменении TERM будет кривой или обрезанный вывод 8'bit в curses-based приложениях, например в MC.Если же мы хотим чтобы утилиты типа ls, mc и тд и тп имели английский интерфейс, но при этом хотим поддержку ввода/вывода русских(KOI8-R),
необходимо:- проверить руссификацию как описано выше:
[unix1]~ > echo $LANG
ru_RU.KOI8-R
[unix1]~ > echo $TERM
cons25r
[unix1]~ >
[unix1]~ > ls -la .bash*
-rw------- 1 lavr dug 99 16 сен 11:32 .bash_history
-rw------- 1 lavr dug 100 2 янв 17:09 .bash_history.alone
-rw------- 1 lavr dug 8411 31 янв 18:19 .bash_history.unix1
-rw------- 1 lavr dug 184 2 янв 17:17 .bash_history.xnc
-rw-r--r-- 1 lavr dug 6 16 сен 15:06 .bash_logoff
-rw-r--r-- 1 lavr dug 6 16 сен 15:06 .bash_logout
-rw-r--r-- 1 lavr dug 68 16 сен 15:06 .bash_profile
-rw-r--r-- 1 lavr dug 25 16 сен 15:06 .bashrc
[unix1]~ >
видим вывод даты на русском
проверяем отображение и ввод (CAPS LOCK), если все работает - значит
руссифицировали верно, если нет - ищем ошибки- чтобы интерфейс был английский но возможность читать-писать KOI8-R осталась, устанавливаем следующие переменные среды, пример для SHELL=BASH:
[unix1]~ > export LC_TIME=ASCII
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- установили, проверяем:[unix1]~ > ls -la .bash*
-rw------- 1 lavr dug 99 Sep 16 11:32 .bash_history
-rw------- 1 lavr dug 100 Jan 2 17:09 .bash_history.alone
-rw------- 1 lavr dug 8411 Jan 31 18:19 .bash_history.unix1
-rw------- 1 lavr dug 184 Jan 2 17:17 .bash_history.xnc
-rw-r--r-- 1 lavr dug 6 Sep 16 15:06 .bash_logoff
-rw-r--r-- 1 lavr dug 6 Sep 16 15:06 .bash_logout
-rw-r--r-- 1 lavr dug 68 Sep 16 15:06 .bash_profile
-rw-r--r-- 1 lavr dug 25 Sep 16 15:06 .bashrc
[unix1]~ >[unix1]~ > export LC_MESSAGES=ASCII
Все, далее проверяем man, mc, и ввод-вывод русских букв НЕ МЕНЯЯ LANG и TERM
>>Не получается русифицировать FreeBSD 4.9 ни в консоли ни в иксах.
>>Я честно прочитал большую часть форума про русификацию и всякие инструкции, но
>>конкретно решения не нашёл, так что вот
>>проблемы с вводом символов
>>
>>Русификация консоли: я отредактировал rc.conf как сказано в инструкциях, при печати в
>>консоли файлов с нужной кодировкой он шрифты правильно показывает, то есть
>>с отображением в консоли проблем нет. Но я не могу вводить
>>русские шрифты, нажимаешь капслок, жмёшь клавиши, он пищит и не печатает
>>ничего. В vi печатает что-то типа \xbe на каждое нажатие.
>>Это я делал под рутом. Зашёл под юзером, для которого у меня
>>стоит русская локаль и в .csh прописано две переменных. Для него
>>отображается весь интерфейс по-русски (что мне не надо нифига), но всё
>>равно не печатает, пищит просто после переключения на русскую раскладку. У
>>меня цель, чтобы интерфейс был английский, а я просто бы мог
>>вводить по-русски.
>>А пока всё ровно наоборот.
>
># echo $LANG
>
>LANG - локализация
>
># echo $TERM
>
>тип эмулируемого терминала (с поддержкой русского или без - зависит от выбранного
>типа: cons25r или pc3r)
>
># echo $TERMCAP
>
>база TERMCAP - описания терминалов: vt100, cons25, pc3, xterm и тд и
>тп,
>содержит описание: кол-во колонок, строк, esc-последовательности, кол-во
>цветов и тд и тп
>
>содержимое /etc/rc.conf для руссификации: keyboard mapping, fonts
>#--lavr, используем фонты CP866(MSDOS) в них более удачная псевдографика
># font для матрицы, если все не нужны оставить наиболее приемлемый
>font8x8="cp866-8x8"
>font8x14="cp866-8x14"
>font8x16="cp866-8x16"
>#--lavr мапирование фонта CP866 в KOI8-R
>scrnmap="koi8-r2cp866"
>#--lavr клавиатурный маппинг для KOI8-R - однократное нажатие CAPS-LOCK
># фонт MSDOS можно использовать ALT-буква
>keymap="ru.koi8-r"
>
>чтобы по умолчанию на виртуальных терминалах (консоль) использовалась
>эмуляция cons25r - поддержка русских, в /etc/ttys:
>
># Virtual terminals
>ttyv1 "/usr/libexec/getty Pc"
> cons25r on secure
>ttyv2 "/usr/libexec/getty Pc"
> cons25r on secure
>ttyv3 "/usr/libexec/getty Pc"
> cons25r on secure
>ttyv4 "/usr/libexec/getty Pc"
> cons25r on secure
>ttyv5 "/usr/libexec/getty Pc"
> cons25r on secure
>ttyv6 "/usr/libexec/getty Pc"
> cons25r on secure
>...
>
>строка:
>ttyv1 "/usr/libexec/getty Pc"
> cons25r on secure
>
>означает что утилита getty висит и ожидает ввода на терминале ttyv1,
>если на этом терминале будет произведен вход - login, по умолчанию
>выставится переменная TERM=cons25r, разумеется если она не будет
>переопределена в стартовых файла login-shell'а пользователя.
> Если на каком-то из виртуальных терминалов НЕ НУЖНА поддержка русских,
>выставить cons25 в /etc/ttys или это можно выставить в стартовых скриптах
>login-shell'а или прямо в сеансе задать переменную среды TERM.
>
>Пример, допустим оставим руссификацию в /etc/rc.conf и /etc/ttys
>соответственно мы можем в стартовых скриптах:
>
>BOURNE SHELL (/bin/sh) - .profile
>CSH/TCSH - .login/.cshrc/.tcshrc
>BASH - .profile/.bash_profile/.bashrc
>
>изменить переменные LANG и TERM, или одну из них, однако следует помнить
>
>что при изменении LANG будет обрезаться 8'ой бит при вводе, а при
>изменении TERM будет кривой или обрезанный вывод 8'bit в curses-based приложениях,
>например в MC.
>
>Если же мы хотим чтобы утилиты типа ls, mc и тд и
>тп имели английский интерфейс, но при этом хотим поддержку ввода/вывода русских(KOI8-R),
>
>необходимо:
>
>- проверить руссификацию как описано выше:
>
>[unix1]~ > echo $LANG
>ru_RU.KOI8-R
>[unix1]~ > echo $TERM
>cons25r
>[unix1]~ >
>[unix1]~ > ls -la .bash*
>-rw------- 1 lavr dug 99 16 сен
>11:32 .bash_history
>-rw------- 1 lavr dug 100 2 янв
>17:09 .bash_history.alone
>-rw------- 1 lavr dug 8411 31 янв 18:19 .bash_history.unix1
>
>-rw------- 1 lavr dug 184 2 янв
>17:17 .bash_history.xnc
>-rw-r--r-- 1 lavr dug 6 16
>сен 15:06 .bash_logoff
>-rw-r--r-- 1 lavr dug 6 16
>сен 15:06 .bash_logout
>-rw-r--r-- 1 lavr dug 68 16 сен
>15:06 .bash_profile
>-rw-r--r-- 1 lavr dug 25 16 сен
>15:06 .bashrc
>[unix1]~ >
>видим вывод даты на русском
>проверяем отображение и ввод (CAPS LOCK), если все работает - значит
>руссифицировали верно, если нет - ищем ошибки
>
>- чтобы интерфейс был английский но возможность читать-писать KOI8-R осталась, устанавливаем следующие
>переменные среды, пример для SHELL=BASH:
>
>[unix1]~ > export LC_TIME=ASCII
>^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- установили, проверяем:
>
>[unix1]~ > ls -la .bash*
>-rw------- 1 lavr dug 99 Sep 16
>11:32 .bash_history
>-rw------- 1 lavr dug 100 Jan 2
>17:09 .bash_history.alone
>-rw------- 1 lavr dug 8411 Jan 31 18:19 .bash_history.unix1
>
>-rw------- 1 lavr dug 184 Jan 2
>17:17 .bash_history.xnc
>-rw-r--r-- 1 lavr dug 6 Sep
>16 15:06 .bash_logoff
>-rw-r--r-- 1 lavr dug 6 Sep
>16 15:06 .bash_logout
>-rw-r--r-- 1 lavr dug 68 Sep 16
>15:06 .bash_profile
>-rw-r--r-- 1 lavr dug 25 Sep 16
>15:06 .bashrc
>[unix1]~ >
>
>[unix1]~ > export LC_MESSAGES=ASCII
>
>Все, далее проверяем man, mc, и ввод-вывод русских букв НЕ МЕНЯЯ LANG
>и TERM
разумеется переменные среды (локализации) LC_TIME и LC_MESSAGES можно
установить в своих стартовых shell-скриптах, можно и вовсе проверять
или устанавливать тип терминала в тех же стартовых скриптах при login'е
если надо скинь месагу мне на мыло вышлю свои скрипты
разберёшся сам
root:/>chpass....
Class: russian
....
>root:/>chpass
>
>....
>Class: russian
>....Блин неужели проще сидеть и долбить в форуме, нежели чем сначала поискать в Гугле ... Там инфы додури =)
http://www.freebsd.org.ru/how-to/russian/
Короче, всё заработало. А не работало потому что я закомментил установку переменных LANG и MM_CHARSET. А сделал я это потому что Х-сервер и Gnome у меня из-за них стартовал с русским интерфейсом. Теперь у меня другие вопросы появились:
Как мне сделать так, чтобы интерфейс в Х-сервере оставался английским, а у меня появилась бы русская раскладка?
shell какого-то хрена мне тоже ошибки на русском пишет "команда не найдена" и т.д. Когда я кодировки меняю, там ерунда получается. Как мне заставить его писать на английском и чтобы русская раскладка работала?Как мне сделать себе несколько раскладок в консоли под одним юзером? Я думаю написать скрипт, который будет нужным образом ставить кодировки и LANG и MM_CHARSET. Но при этом нужно, чтобы шелл писал сообщения не на языке текущей локали, а на английском всегда. Можно ли это сделать?