Можно ли настроить в uim переключение раскладки по capslock(настроил, но вместе со сменой раскладки происходит смена регистра). И еще, можно ли сделать общесистемный аналог .uim?
> (настроил, но вместе со сменой раскладки происходит смена регистра)
ну, можно попробовать назначить капс на какое-то левое, бесполезное действие, например «grp:caps_toggle».
или, более садистский способ, в файле /etc/X11/xkb/symbols/pc в строке «key <CAPS> { [ Caps_Lock ] };» «Caps_Lock» заменить чем-нибудь бесполезным (но опознаваемым), типа «Mode_switch».
> да, нужно еще сохранять разные раскладки для разных окон
хм…… а вы случайно не КДЕ используете? ;) а то у меня в велогараже как раз есть собственная переключалка на куте4… точнее, переключают иксы, а прога — индикатор + запоминает состояние для каждого окна + переключает состояние uim для данного языка (например, можно настроить, чтобы при переключении на японский автоматом выбирался anthy-utf8). + примитивный плазмоид с индикатором клавиатуры и метода ввода, общается с «переключалкой» по dbus %)
ну он сохраняет метод ввода… я имел в виду иксовые раскладки. если вы переключаете раскладку через смену метода ввода, тогда вопрос снят, неправильно вас понял :)
А можно еще раз, как поменять capslock на другую клавишу и оставить рабочим shift + capslock? У меня в /etc/X11/xkb таких файлов не было, и когда я создал ничего не заработало.
> это же перезатрется при следующем обновлении иксов
так точно. поэтому у меня и стоит знатная система костылей с файлов-враперов %)
хотя есть более извращённый вариант — поставить атрибут -i на нужный файл %)
а пока можете в файле «/usr/share/X11/xkb/symbols/pc» строку «key <CAPS> { [ Caps_Lock ] };» привести к виду «key <CAPS> { [ Mode_switch, Caps_Lock ] };».
А как это работает? По сканкоду <CAPS> должен генерироваться символ F33 (например), а по сканкоду <CAPS> с модификатором Shift - меняться регистр, так?
> А как это работает? По сканкоду <CAPS> должен генерироваться символ F33 (например), а по сканкоду <CAPS> с модификатором Shift - меняться регистр, так?
именно… может, там глобальный тип другой определён, попробуйте так:
неработает. я почему то решил, что изучать, как настраивать раскладку клавиатуры под иксами - это маразм и вместо чтения http://pascal.tsu.ru/other/xkb/ поставил xxkb. в конце концов, можно обойдись и без индикатора раскладки.