от Огнян Кулев(1-03-2005)

рейтинг (62)   [ добре ]  [ зле ]

Printer Friendly Вариант за отпечатване

Тази статия не се поддържа повече тук. Сега е част от Книгата за Дебиан.

Съдържание


Въведение

Още статии по темата, но вече не ограничени до Дебиан, могат да се намерят в секцията за кирилизиране на Linux-BG.org. Практически единственото пълно и всепризнато решение на проблема за българизирането на Линукс, независимо от дистрибуцията, е пакетът bglinux на Антон Зиновиев. За щастие той е разработчик в Дебиан и всичко от пакета го има в дистрибуцията като стандартни пакети.

По време на инсталацията на Дебиан

По време на инсталацията се задава въпрос за подредбата на клавиатурата. В списъка е и българската подредба, но изберете подразбиращата се подредба (qwerty/us). В частта за кирилизиране на конзолата се описва много по-гъвкав начин за кирилизиране на клавиатурата.

Последното действие на инсталацията на Дебиан 3.0 е да се стартира програмата tasksel, от която бързо може да си инсталирате практически всичко необходимо за българизиран Линукс. На тази програма е отделена секция в края на статията.

locales: Добавяне на българския език

Инсталира се пакетът locales (CD1) и в настройките на debconf се задава генериране на българските настройки за bg_BG, както и че това е подразбиращият се локал. Поради дефект в пакета locales се налага да изпълните dpkg-reconfigure locales, което отново задава същите въпроси. Ако ви се наложи да променяте списъка на локалите, не редактирайте файла /etc/locale.gen, а използвайте същата тази команда за преконфигуриране на пакета. По този начин, освен генерирането на информацията за българския, се задава глобалният локал на всички програми да е bg_BG. Той се запазва във файла /etc/environment, който се използва от PAM-модула pam_env. Програмите, които в PAM конфигурацията си /etc/pam.d/програма използват този модул, ще използват този локал.

Добавя се редът

 bulgarian		bg_BG.CP1251

във файла /etc/locale.alias.

console-cyrillic: Конзола

За конзолата е достатъчно да се инсталира пакетът console-cyrillic (CD2). На въпросите отговаряйте с подразбиращите се отговори, освен може би на тези въпроси:

Choose the keyboard layout Bulgarian phonetic или Bulgarian BDS
How to toggle between Cyrillic and Latin letters Alt+Shift или нещо друго
What is your encoding? CP1251
Do you want to setup Cyrillic on the console at boot-time? Yes

cyr: Команда за конфигуриране на конзолата

Подробна информация за параметрите, които могат да се предадат на командата cyr, може да получите след изпълнение на cyr --help. Ако се изпълни командата с опция --save, настройките от командния ред се и запазват във файла ~/.cyr_defaults. Следващото изпълнение на cyr без параметри ще конфигурира конзолата според запазените настройки. Така, след като веднъж има запазени потребителски настройки, добавянето на командата cyr 2> /dev/null във файла ~/.bash_profile ще конфигурира конзолата при всяко влизане (login) в системата. (2> /dev/null подтиска грешките при отваряне на терминал в X, като xterm или gnome-terminal.)

XFree86: Графична среда

XKB: Клавиатура

Следните текстове може да ви помогнат, ако искате да разберете повече за разширението XKB на X:

xserver-xfree86: Конфигуриране при инсталиране

По време на инсталирането на пакета xserver-xfree86 трябва да се отговори на следните въпроси:

Въпрос Опция Отговори за българска среда
Please select your keyboard layout XkbLayout
  • bg
Please select your keyboard variant XkbVariant
  • phonetic
  • bds
Please select your keyboard options XkbOptions
  • grp:shift_toggle
  • grp:ctrl_shift_toggle
  • grp:caps_toggle
  • grp:ctrl_alt_toggle
  • grp:alt_shift_toggle
  • grp:menu_toggle

Подробности за смисъла на стойностите на XkbOptions се намират в /etc/X11/xkb/symbols/group.

XF86Config: Редактиране на конфигурирацията на X

Редактирайте файла /etc/X11/XF86Config-4, като копирате секцията InputDevice за клавиатурата преди реда ### BEGIN DEBCONF SECTION, ако го има. След това в копието се добавят или променят следните настройки:

 	Option	"XkbLayout"	"bg"
  	Option	"XkbVariant"	"phonetic"
  	Option	"XkbOptions"	"grp:alt_shift_toggle"
  	Option	"XkbCompat"	"group_led"
 

Различните възможности за стойностите на опциите могат да се видят от предишната секция. Последната опция, XkbCompat, конфигурира лампичката Scroll Lock на клавиатурата да показва дали сме в кирилица или не. Тази опция не може да се зададе по време на конфигурирането на пакета xserver-xfree86.

setxkbmap: Различна подредба за отделен потребител

Командата setxkbmap позволява конфигуриране на клавиатурата от команден ред или скрипт. Такъв скрипт може да се използва при начално зареждане на потребителска X сесия, променяйки глобалните настройки за подредба на клавиатурата. Файлът ~/.xsession (в Дебиан вместо ~/.xinitrc трябва да се използва ~/.xsession) е подходящ за тази цел. Забележете, че този файл може и да не се изпълни от display manager-и, различни от xdm, като kdm или gdm например. Използвайки горните променливи, командата изглежда по следния начин (в квадратни скоби се отбелязват части, които могат да се пропуснат):

 setxkbmap [ -layout XkbLayout ]
           [ -variant XkbVariant ]
           [ -option XkbOptions ]
           [ -compat XkbCompat ]
 

Важна корекция

Непременно трябва да изпълните командата touch /usr/lib/X11/locale/microsoft-cp1251/Compose, понеже някои програми не могат да тръгнат, ако този файл не съществува.

Шрифтове

Ако искате да разберете повече за шрифтовете в X, следните текстове може да ви помогнат:

Имайте впредвид, че в X кодирането на знаците на нашата кирилица се нарича microsoft-cp1251, по специално в имената на шрифтовете, и windows-1251 на всички други места, като поща например. Последното име е и официалното на това кодиране.

В X широко се използват някои предефинирани имена на шрифтове, като fixed или 10x20 например. Версиите на тези шрифтове с кодировка windows-1251 са с префикс w-, като w-fixed и w-10x20 например. Префиксът c- се използва за шрифтове с Уникод кодиране (iso10646-1). Всички так


<< FreeBSD: Графични (десктоп) приложения | Често задавани въпроси за Squid (част 2) >>