Re: языковая раскладка каждому окну отдельно + индикатор?
Денис -> debian-russian@lists.debian.org @ Mon, 28 Sep 2009 07:21:49 +0800:
>> Д> А как делают переключатель раскладок, запоминающий язык для
>> каждого Д> окна?
>>
>> Берут WM-независимую утилиту, которая это умеет. xxkb, например.
Д> xxkb не запоминает раскладки в awesome3. только флажок показывает в
Д> трее
Боюсь, что это значит, что awesome3 слишком awesome. Потому что мой
конфиг существенно отличается только отсутствием флажка в трее и
запретом mainwindow - и мне до сих пор не попадалось WM, в котором он не
работает.
Д> вот мой конфиг:
Д> XXkb.mainwindow.xpm.1: en15.xpm
Д> XXkb.mainwindow.xpm.2: ru15.xpm
Д> XXkb.mainwindow.xpm.3: su15.xpm
Д> XXkb.mainwindow.xpm.4:
Д> XXkb.mainwindow.label.font: -misc-*-r-*-13-*
Д> XXkb.mainwindow.enable: yes
Д> XXkb.mainwindow.geometry: 15x15
Д> XXkb.mainwindow.in_tray: KDE2
Д> XXkb.controls.mainwindow_delete: no
Д> XXkb.button.enable: no
Д> XXkb.controls.two_state: no
Д> (ещё не понравилось отсутствие описания типа конфига в манах,
Д> поставляющихся с дебианом, пришлось применять эвристику :))
Да ладно, есть там описание. Устарело, правда... В апстриме его не
чинят. Пока руки не доходят посмотреть внимательно и переписать.
>> Идея у нее в том, что она отслеживает события смены группы и
>> перехода фокуса и при необходимости корректирует ситуацию посылкой
>> дополнительных событий смены группы.
Д> а кстати, не логично было бы разделить такую "отслеживалку" и
Д> отображалку флагов языков в трее?
Д> xxkb делает это посредством пришлёпывания поверх заголовка окна
Д> маленького окошка, на сколько я понимаю, а лучше бы с этим справилась
Д> сама wm.
Во-первых, для этого надо как минимум иметь трей. Я, например, его не
держу. Во-вторых, окошко это xxkb выводит не столько для показа
раскладки (с этим как раз справляется и mainwindow), сколько для того,
чтобы можно было переключить раскладку в данном окне мышью. В том числе
- поменять группу на нестандартную, для которой нет штатной
переключалки. Отображалка в трее для этого не годится, поскольку пока
мышь в нее попадет, информация о том, в каком окне надо поменять
раскладку, будет потеряна.
А может, и не будет - менять надо там, где фокус... Хотя вот когда в
мозилле xxkb периодически не срабатывает - это, если я правильно
ошибаюсь, от закидонов gtk как раз с фокусом.
Д> и ещё не удалось вывести флажок поверх содержимого окна (у меня tiled
Д> wm, заголовки окон вообще в стороне находятся, но я не против если
Д> небольшой флажок закроет содержимое окна)
Мне удалось. Ну то есть не то чтобы "удалось" - тот же конфиг, что для
fvwm, замечательно работает и с stumpwm. Видимо, awesome нарушает
какие-то типичные для WM соглашения, на которые закладывается xxkb (у
него тоже, сколь я помню переписку с Ваней Паскалем, "вся физика на
побочных эффектах"), а stumpwm - нет.
--
Science is like sex: sometimes something useful comes out, but that's
not why we're doing it.
-- Richard Feynman
Reply to: