eurekafag 08.01.2011 19:14 30822938051294516534958177

Итак, блядь, я его запилил. Русский ввод в емаксе, не травмирующий клавиши. С uim, XCompose, японицей и шлюхами (воображаемыми). Мануал для смены раскладок по капслоку и японского ввода по Win+Space:

1) Я взял последний uim, возможно, это не необходимо, но всё производилось над версией 1.6.1.
2) Добавляем в .xinitrc две строки:
xmodmap -e "keycode 66 = F13"
xmodmap -e "clear Lock"

Этим мы лишаем капслок его функции и перевешиваем на F13. Нужно, я так понимаю, потому, что емакс не умеет биндить капслок. Также, сюда можно затолкать setxkbmap -option "compose:rwin"
3) Добавляем в раскладки Anthy и m17n-ru-kbd (скорее всего, надо будет поставить соответствующие пакеты).
4) Переключение (switching) делаем на <Super>space, а toggle — на <F13>.
5) В ~/.xim пишем:
export XMODIFIERS="@im=uim"
export GTK_IM_MODULE=uim
export QT_IM_MODULE=uim
uim-xim&

Возможно, .xim надо будет запускать из .xinitrc, если сам не подтянется. Мне нужно.

6) В ~/.uim пишем:
(require-module "m17nlib")
(define default-widget_m17nlib_input_mode 'action_m17nlib_on)

7) Рестартуем иксы, проверяем наличие процесса uim-xim (он позволит использовать раскладки в urxvt). Емакс следует запускать через XMODIFIERS="" emacs

При таком раскладе у нас будет работать композ везде, русская раскладка не будет мешать хоткеям емакса, можно вводить кану. Как водится, не обошлось без ложки дёгтя — кроме емакса нигде не будет работать compose на русской раскладке. Буквы просто пролетают сквозь него, дожидаясь неалфавитной клавиши. Английские же клавиши и неалфавитные работают прекрасно. Но и в емаксе не всё хорошо! Если не обнулять XMODIFIERS, то всё будет так же, как в других приложениях (русские буквы в композ не включаются), а если обнулить, то они отрабатывают, но как! Вводятся не символы, а нажимаемые клавиши в текущей раскладке, т.е. английские буквы заменятся на соответствующие русские, точка на букву «ю» и т.д. Символы, не имеющие русского аналога, отобразятся нормально. Так что если вы не используете композ для вывода фраз, а только для спецсимволов, то жить можно.

Соснули, прыщепроблемы. Впрочем, у спермарей всё равно нет ни разнообразных гибких методов ввода, ни XCompose, ни мозга для осиливания емакса, так что им это абстрактно, а нам не обидно.

Recommended by: @z56371410
1. Kona-chan 08.01.2011 19:19 Mendoza-desktop

>у спермарей всё равно нет ни разнообразных гибких методов ввода, ни XCompose

У спермарей есть AutoHotKey и Microsoft Keyboard Layout Creator. Это так, для справки.

2. SirAnthony 08.01.2011 19:21 Home

А зачем создавать кучу рц-файлов? Раньше уим в них не умел, да и не нужно.

3. Basileus 08.01.2011 19:23 supremacy

вот оно — ПРЫЩЕБЛЯДСТВО! >_<

4. eurekafagSirAnthony /2 08.01.2011 19:24 30822938051294516534958177

Чтобы менять раскладку не средствами иксов, а самим уимом. Без ~/.uim с указанным содержимым нихуя работать не будет, проверял. Содержимое нашёл в мэйл-листе, там автор беспечно заметил, что они пока не запилили нормальную настройку m17n, так что вот вам КОСТЫЛЬ. Возможно, его получится разместить в ~/.uim.d/customs/, у меня он оттуда не подхватился.

5. SirAnthonyeurekafag /4 08.01.2011 19:24 Home

я писал в .bashrc, все работало.

6. asukafag 08.01.2011 19:25

ОП — хуй и типичная костыльная емаксоблядь. ВЕРНИСЬ НА ГОЙДЖИМ, А ТО ВЫРАСТЕТ БОРОДА И МОЗОЛИ.

7. Basileusasukafag /6 08.01.2011 19:26 supremacy

гойджим говно же, psi+ со всем-в-одном-окне наше всё!

8. eurekafagSirAnthony /5 08.01.2011 19:27 30822938051294516534958177

Что ты туда писал? Лисповые команды? Ну не переключает он раскладку на m17n, а если не она, то переключают иксы, а мы от этого уйти пытались тащемта.

9. SirAnthonyeurekafag /8 08.01.2011 19:29 Home

Вообще я про xim, я не прикручивал к емаксу, оно не нужно.

10. eurekafagSirAnthony /9 08.01.2011 19:30 30822938051294516534958177

Ну .xim можно куда угодно, не суть. Просто у uim нет исключений для приложений, но он поддерживает .XCompose, а остальные методы ввода не поддерживают. Вот и костылим.

11. SirAnthonyeurekafag /10 08.01.2011 19:32 Home

Костыли для исключения так и не приделали? Я как-то находил способ его выключать, но потом не смог включить.

12. eurekafagSirAnthony /11 08.01.2011 19:35 30822938051294516534958177

Не нашёл. Для uim вообще мало инфы, про scim куда больше, но он помер и не развивается официально, а преемник ibus также не умеет XCompose.

13. nextus 08.01.2011 20:46 idea

Пользуюсь стандартной иксовой переключалкой, XCompose работает всегда и везде. На проблемы с хоткеями в кириллице в емакса мне похуй, я уже привык за полгода. Плюс так даже правильнее. По той же причине, у меня раскладка меняется для всей ос, а не для одного окна. Уж лучше так, чем те прыщепроблемы, что описал ты.

14. eurekafagnextus /13 08.01.2011 20:47 30822938051294516534958177

У меня меняется всё везде. Просто теперь в емаксе можно не дёргаться, когда пишешь кириллицей. Например, в чятике.

15. nextuseurekafag /14 08.01.2011 20:51 idea

У меня привычка: после набора сообщения на рюсском, вернуть раскладку на латинский. А то початишься, забудешь, потом полезешь в терминал И ПРИДЁТСЯ ДЁРГАТЬСЯ.

16. nextusKona-chan /1 08.01.2011 20:54 idea

Запили мне мануал, как в спермёрке переключать раскладки по капсу, не ставя punto ыцшесрук

17. Kona-channextus /16 08.01.2011 20:57 Mendoza-desktop

Например, http://www.autohotkey.com/forum/topic270... Нагуглил за две минуты, сам не пробовал, так что никаких претензий насчет работоспособоности, пожалуйста. Удовлетворит тебя такой не-ыцшесрук?

18. nextusKona-chan /17 08.01.2011 20:58 idea

Мне теперь конпелятор ставить на игроблядскую ось? .\_/. Когда я говорил про ман, я имел ввиду ключики реестера какие-нибудь ._.

19. Kona-channextus /18 08.01.2011 20:59 Mendoza-desktop

Тебе шашечки или ехать?

20. nextusKona-chan /19 08.01.2011 21:00 idea

Обязательно шашечки. На машине с шашечками обычно домой пьяный езжу :coolface:

21. asukafagnextus /20 08.01.2011 21:01 NERV

Быдло.

22. nextusasukafag /21 08.01.2011 21:02 idea

._.

23. eurekafag 14.07.2011 06:23 WOK

Стратегически важный фикс. В uim 1.7 больше нет выделенного метода ввода uim, он интегрировался в xim. Поэтому в ~/.xim надо писать теперь так:

export XMODIFIERS="@im=uim"
export GTK_IM_MODULE=xim
export QT_IM_MODULE=xim

Do you really want to delete ?