Вопрос русификации консоли FREESCO.
Немного выдержек из форума, топик: "Русификация., Еще один извечный вопрос..... "Radiohead
Posted: Apr 6 2004, 02:53 PM
В документации сказано, что для локализации Freesco необходимо скопировать файл с необходимой кодировкой (в нашем случае ru.) в директорию /kbd что и было сделано. На всякий случай файл us. лежащий в этом-же директории был уничтожен.
Тем не менее, тексты в русской кодировке (не важно KOI-8 или WIN1251) все равно не читаются
Файлы я просматриваю и редактирую с помощью mc.
У кого какие мысли есть?
Guest
Posted: Mar 29 2005, 05:39 AM
Привет!
Это сообщение набрано полностью в т.ч. русскими буквами под freesco
в терминале с помошью PuTTY (telnet, SSH клиент).
Проверим есть ли какие-нибудь отличия при наборе русских букв:
1. Без Shift inglish:
`1234567890-=
qwertyuiop[]\
asdfghjkl;'
zxcvbnm,./
2. C Shift inglish:
~!@#$%^&*()_+
QWERTYUIOP{}|
ASDFGHJKL:"
ZXCVBNM<>?
3.Без Shift russian:
ё1234567890-=
йцукенгшщзхъ\
фывапролджэ
ячсмитьбю.
4. С Shift russian:
Ё!"©;%:?*()_+
ЙЦУКЕНГШЩЗХЪ
ФЫВАПРОЛДЖЭ
ЯЧСМИТЬБЮ,
Проверка закончена! Как видим отличий нет. Что бы все это заработало необходимо:
- В каталог ./boot/kbd/ положить из дистибутива freesco файлик ru.gz и удалить us.gz
- В меню настройках PuTTY найти пункт "Translations" и устаноить кодировку Win1251 (Cyrillic) или др.
- Сохранить настроки PuTTY
- Для того что бы MC мог отображать русские буквы надо в меню Options -> Display bits установить галочки в пунктах Full 8 bit input и Full 8 bit output.
- Для того что бы появились русские буквы в lynx отредактируйте файлик lynx.cfg, там все просто.
P.S. Пункт 2 можно менять по ходу дела, если вдруг понабиться другая кодировка, для этого кликаем правой кнопкой на окне терминала ищем меню Change settings и далее как в п.2
аlexax
Posted: Apr 4 2005, 08:04 AM
QUOTE -- (Radiohead @ Apr 6 2004, 02:53 PM) ---- Skip -- QUOTE
Описанный метод позволяет работать с русскими шрифтами в терминале PuTTY и не подходит для стандартной консоли freesco.
Проблема в том, что для полной русификации консоли freesco нужен не только файл ru.bz (раскладка клавиатуры), но и фонты для отображения русских символов, а так же их загрузчик. Ранее для русификации консоли для slackware был создан комплект easy-cyrillic, включающий в себя все необходимое, но под freesco он не работает Может кто возьмется адаптацией? Могу скинуть архив на e-mail.
PS. Для переключения раскладки с русского на английский и обратно используйте Left Alt + Left Shift
Ну вот я нашел этот пакет, Easy Cyrillic v 1.0.3,и посмотрел что там внутри. Кстати оказалось что один из авторов сего пакета Сергей Сторожевых, основатель проекта FREESCO.
Поставился он на мою Slackware (это та что идет для разработчиков пакетов для FREESCO ~40Mb), без вопросов. Cоответственно должен работать без вопросов и на FREESCO. Только просмотреть его надоть, как он шрифты устанавливает. Он пошел достаточно хитрым путем, использует один шрифт с раскладкой CP866, и несколько различных экранных мапперов, что достаточно удобно так как занимает меньше места на винте :) Но у меня его конфигурация не заработала. Почему то mapscr не выполнял своих функций. Полазив в манах я обнаружил что setfont сам умеет подключать файлы smap.
Что я и реализовал в своем пакете EasyCyrLite. Теперь у меня даже mc русским стало :)
Так как FREESCO сама умеет подключать раскладку клавиатуры, то я пошел путем наименьшего сопртивления, реализовав только подключение и переключение экранных шрифтов. Вообще то, самая прелесть оригинального Easy Cyrillic в том что у него очень качественная раскладка клавиатуры, которая переключаеться, в зависимости от контекста, и очень мощный инсталлятор. Но так, как мне главное было иногда читать кое-что с консоли, то мне было достаточно этих возможностей.
Теперь что касаеться русского в http сервере, он по умолчанию отдает странички с iso-8859-1, что меня не устраивало.
А у thttpd есть еще и такой параметр командной строки как -T
Строка непосредственного запуска находиться в функции fn1()
fn1() {
[ "$LOGHTTP" != n -o "$BOOTMOD" = debug ] || D="-l /dev/null"
echo -n "Starting $4 HTTP server... $CR"
thttpd $1 -p $2 -u $3 $D -T koi8-r
= $? "Done $CC port $2"
}
Здесь уже добавлен необходимый параметр.
Единственное что необходимо сделать только в версии 0.3.4 FREESCO, это скопировать ваш файл rc_httpd из /rc в /pkg/rc. Так как в /rc он разворачивается из образа рамдиска при каждой загрузке, а вот искать его будет сначала в /pkg/rc.
Ну а с PuTTY я надеюсь все ясно :)
P.S. Возникла проблема с perl :(. Так, как locale не установлен полноценно, perl ругался на настройки локали :(.
В документации, указано и такое решение этой проблемы(временное): необходимо переменной окружения PERL_BADLANG присвоить значение ложь ('' или 0).
Но соответственно при этом locale в perl использовать будет нельзя.
23554250