Проект перекладу KDE на російську був початий Денисом Першиним в 1998 р. Зараз цим займається невелика команда перекладачів, а координує проект Григорій Мохин.
Якщо вам скоріше хочеться скористатися плодами її праці — встановіть у себе KDE
>=2.1. Врахуйте, що 2.0 і 2.0.1 не йдуть ні в яке порівняння з 2.1 ні в тому, що стосується
самої середовища, ані в якості перекладу на російську.
Цей документ адресований тим, хто хотів би працювати в KDE по-російськи. Його мета –
постаратися відповісти на питання, зазвичай постають при русифікації KDE, а також дати
деякі додаткові відомості та посилання, з яких стане ясно, чому це варто
робити саме так.
Питання 1: Що таке русифікація KDE?
Питання 2: Як налаштувати відображення графічного інтерфейсу по-російськи?
Питання 3: Навіщо потрібна правильна локаль?
Питання 4: чи Можна залишити графічний інтерфейс англійською?
Питання 5: Як налаштувати шрифти?
Питання 6: чи Можна запускати окремі програми на іншу мову?
Питання 7: Як настроїти введення російською з русифікацією X-сервера?
Питання 8: Як ще можна налаштувати enter по-російськи?
Питання 9: Що робити, якщо enter по-російськи все-таки не працює?

1. Що таке русифікація KDE?
У Росії кількість людей, які знають англійську, невелика. Багато, хто хотів би
використовувати вільне програмне забезпечення, не можуть цього зробити через мовний
бар’єру. KDE — це перший Unix-десктоп, який добре говорить по-російськи. Для повної
русифікації потрібно налаштувати мову графічного інтерфейсу (меню, заголовки вікон і т. д.),
введення російською і відображення на екрані по-російськи. Вам знадобиться пакет російської
локалізації KDE, kde-i18n-uk.tar.bz2 або його готова версія, зібрана постачальником
вашого дистрибутива, якщо він ще не встановлений.
2. Як налаштувати відображення графічного інтерфейсу по-російськи?
Перш за все встановіть змінну оточення LANG, наприклад, прописавши в своєму домашньому
в каталозі файлі ~/.profile рядок:
export LANG=ru_RU.KOI8-R
Увійдіть у систему, щоб змінна середовища була задана до запуску X-сервера. Ця
змінна визначає правильну російську локаль. Далі виберіть у Центрі керування KDE
у розділі Personalization->Country & Language Росію, російську мову як основний і
кодування koi8-R. Можливо, в деяких програмах, або До-меню з’являться знаки
питання, тоді просто вийдіть з KDE і зайдіть ще раз.
3. Навіщо потрібна правильна локаль?
Вона потрібна як Х-бібліотеки, так і бібліотек Qt для правильної перекодування з
кодування UTF-8 у восьмибитную локаль і назад. Про це у всіх подробицях можна
прочитати на сторінці Олександра Воропая, присвяченій локалі. У версії KDE нижче 2.1
і Qt нижче 2.3.0 без завдання правильної локалі все працювало б неправильно. Тепер же,
починаючи з Qt 2.3.0 виправлені деякі помилки, і ви можете спробувати обійтися без
явного завдання локалі, вказавши LANG=«З». Це має як свої плюси, так і мінуси, про що
див. нижче, пп. 7 та 8.
4. Можна залишити графічний інтерфейс англійською?
Можна. Якщо у вас алергія на російськомовний інтерфейс і вам потрібно тільки налаштувати
відображення і введення російською, залиште інтерфейс англійською і переходите відразу до
налаштування шрифтів і Х-сервера.
5. Як налаштувати шрифти?
Якщо у вас російський інтерфейс, виберіть у Центрі керування KDE пункт
Налаштування->Зовнішній вигляд і інтерфейс->Шрифти та налаштуйте шрифти на свій смак.
До речі, Qt, починаючи з 2.3.0, підтримує згладжування (antialiasing) шрифтів, про що можна
прочитати тут.
Шрифти можна налаштовувати і в окремих додатках, і це важливо, якщо у вас раптом
десь замість російських символів відображаються знаки питання — швидше за все, потрібно просто
поміняти кодування шрифту на koi8-r.
6. Можна запускати окремі програми на іншу мову?
Можна. Наприклад, якщо ви хочете запустити KMail з німецьким інтерфейсом, в той час як
інші додатки — з російською, додайте наступні рядки в конфігураційний
файл програми, тобто в ~/.kde/share/config/kmailrc:
[Locale]
Charset=iso8859-1
Country=de
Language=de
При цьому, природно, повинен бути встановлений пакет німецької локалізації kde-i18n-de.
7. Як настроїти введення російською з русифікацією X-сервера?
Найкраще — налаштувати клавіатурний модуль Х-сервера xkb. Ось які налаштування можна
прописати у файлі XF86Config (для 4.0 і вище):
Section «InputDevice»…
Option XkbRules» «xfree86»
Option «XkbModel» «pc105»
Option «XkbLayout» «ru»
Option «XkbOptions» «grp:toggle,grp_led:scroll»
# остання строчка служить для перемикання правим Alt
# і відображення цього лампочкою Scroll Lock

EndSection
Детальніше про це читаємо на сторінках Івана Паскаля і Олександра Канавина (і те, і
інше дуже рекомендується). Такий спосіб установки має ту перевагу, що ви
зможете вводити по-російськи як у KDE, так і в інших віконних менеджерах (або без них :).
Для перевірки налаштування xkb можна запустити xinit і у вікні терміналу спробувати ввести
що-небудь по-російськи.
8. Як ще можна налаштувати enter по-російськи?
Як вже сказано в п. 3, у версії KDE нижче 2.1 і Qt нижче 2.3.0 без завдання правильної
локалі все працювало б неправильно. Мінусом способу установки, зазначеного в п. 7,
є те, що локаль може бути тільки одна (або вам потрібно викручуватись, перемикаючи
LANG перед запуском програми, що вимагає іншу мову). Багатьом же необхідно
працювати більш ніж з двома мовами і розкладками клавіатури. Починаючи з Qt 2.3.0, така
можливість реалізована. Ось як це робиться, наприклад, для трьох розкладок, основний –
англійської і двох додаткових, російської та німецької:

Вимикаємо з ХF86Config локальну розкладку:

Option XkbRules» «xfree86»
Option «XkbModel» «pc105»
# Option «XkbLayout» «de»
# Option «XkbLayout» «ru»
Option XkbCompat» “”
Option «XkbOptions» «grp:toggle,grp_led:scroll»

Прибираємо локаль (export LANG=«POSIX»)

$ locale
LANG=POSIX
LC_CTYPE=«POSIX»

Запускаємо KDE
Налаштовуємо kxkb: у пункті К-меню Налаштування-> Персональні->Розкладка
клавіатури вибираємо три розкладки, первинну en і дві вторинні — de і ru
Після цього все працює (!)
А саме:
розкладки всі перемикаються (xev показує правильні keysums):
en:
KeyPress event, serial 30, synthetic NO window 0x1c00001,
root 0x26, subw 0x0 time 3246720013, (672,25), root:(676,389),
state 0x1, keycode 34 (keysym 0x7b, braceleft), same_screen YES,
XLookupString gives 1 characters: “{“
de:
KeyPress event, serial 28, synthetic NO window 0x1c00001,
root 0x26, subw 0x0 time 3246616076, (84,131), root:(88,495),
state 0x0, keycode 34 (keysym 0xfc, udiaeresis), same_screen YES,
XLookupString gives 1 characters: “”
ru:
KeyPress event, serial 29, synthetic NO window 0x1c00001,
root 0x26, subw 0x0 time 3246625571, (84,131), root:(88,495),
state 0x2000, keycode 34 (keysym 0x6c8, Cyrillic_ha), same_screen YES,
XLookupString gives 0 characters: “”
відображення введеного тексту залежить від кодування шрифту: якщо вводимо
по-російськи, потрібно просто вибрати в додатку шрифт з кодуванням koi-8, якщо
по-німецьки, то — iso8859-1.
Найцікавіше: завдання змінної LANG на введення таким методом не впливає, а впливає
лише на правильність відображення меню та повідомлень програм при виборі мови
інтерфейсу, відмінного від en. Тобто можна ставити LANG=de_DE.ISO8859-1 або
LANG=ru_RU.KOI8-R, це нічого не зіпсує.
Так що можна, наприклад, працювати в KMail на будь-якій мові, просто змінюючи шрифт по мірі
потреби.
9. Що робити, якщо enter по-російськи все-таки не працює?
Це може статися із-за неправильно встановленої локалі при русифікації
X-сервера, як описано в п. 7. Буває, що зусиллями постачальників дистрибутивів введення не
працює, незважаючи на начебто точне дотримання наведених вище вказівок. Це
означає, що десь в надрах системних налаштувань приховані встановлені змінні
середовища. Якщо ви уважно читали Паскаля, то зрозумієте, в чому тут проблема. Замість
теорії наведу приклади з практики.
Перевірити, чи правильно встановлена локаль, можна, поставивши команду
$ export | grep LANG > /tmp/xxx
в скрипт startkde перед запуском kdeinit і подивившись, що з’явиться у створеному файлі
/tmp/xxx. Повинна бути рядок:
declare -x LANG=«uk_ua.KOI8-R»
Припустимо, результат — цей файл містить LANG=en_US. ( OS: Red Hat Linux release
7.0 (Guinness)) Проводимо пошук у файлах конфігурації на предмет рядка en_US. В
файлі /etc/.sysconfig/i18n значиться рядок:
LANG=en_US
Замінюємо її на LANG=ru_RU.KOI8-R. Все працює.
Перевірити, чи немає чогось зайвого, можна командою
$ export | grep «LC_»
У slackware 7.1 це призводить до вилову наступного жучка:
declare -x LC_ALL=«POSIX»
прописаного в /etc/profile. Цю рядок треба або закомментарить (рекомендується), або
поставити у себе LC_ALL=ru_RU (самі пробуйте), тоді все починає працювати.
Якщо все вищеописане не допомогло, ось самий поганий, але працюючий рецепт. Хаковая
русифікація за допомогою xrusmodmap. Викачуємо xruskb. Збираємо (configure; make; make
install — без хитрощів). Введення працює, якщо запустити
$ xrusmodmap /usr/local/share/xruskb/jcuken-koi8.xmm
АЛЕ: якщо ви дочитали досюда, а значить, вам знадобився останній рецепт, то
використовуйте його лише як тимчасове вирішення проблем. Прочитайте у Паскаля, чим погана
така русифікація, розберіться і налаштуйте-таки xkb або kxkb.