Linux - это интересно!
Вы не вошли.
Прежде, чем дать описания проекта, отвечу на вопрос "зачем?". Я давно задавался целью написания утилиты для раскладки клавиатуры, которая умеет привязывать раскладку к приложению в разных WM/DE. Пробовал xxkb и fbxkb, но они обладают лишь привязкой раскладки к окнам. Приведу пример, когда привязка к окнам не удобна: запускаем pidgin/gajim/qutim/psi, открываем контакт лист, переключаем с по-умолчанию английской раскладки на русскую, "сворачиваем" программу в трей, вызываем программу из трея и... видим английскую раскладку, тогда как с привязкой раскладки к приложению будет английская. Таких примеров можно привести много, но лучше я расскажу дальше о программе.
Программа написана на языке Си и использует только библиотеки GTK (GNOME не требуется).
Программа основана на исходном коде проекта xfce4-xkb-plugin и наследует его функции:
Привязка раскладки клавиатуры глобально, к окнам или к приложению
Раскладка по-умолчанию (пример ситуации, когда хочется что бы на русской раскладке загорался scrollock светодиод и она же была раскладкой по-умолчанию для новых окон)
При количестве раскладок больше двух по клику левой кнопкой мыши отображается список доступных раскладок, иначе выполняется попытка переключиться на следующую раскладку
Так же, при прокрутке колесом мыши раскладка переключается вперед или назад в зависимости от направления.
Программа доступна по лицензии GPL2
Краткая инструкция по установке:
1. Устанавливаем нужные для сборки из исходников пакеты:
sudo apt-get install libwnck-dev libxklavier-dev2. Загружаем архив gxkb с исходным кодом, распаковываем и переходим в каталог с исходниками
wget http://www.crunchbang.org.ua/download/gxkb-0.3.tar.gz
tar xvfz gxkb-0.3.tar.gz
cd gxkb-0.3
так же, возможно скачать архив с sf.net3. Собираем и устанавливаем из исходников
./configure && make && sudo make install
Настройка программы:
При первом запуске программы будут использоваться настройки по-умолчанию, а именно привязка раскладки к приложению, две раскладки US/RU которые переключаются по Alt+Shift, а так же включение светодиода scrollock на русской раскладке. При выходе из программы настройки будут сохранены в файле ~/.config/gxkb.cfg, который теперь можно отредактировать обычным текстовым редактором. Ниже пример файла настроек по-умолчанию:
[xkb config]
group_policy=2
default_group=0
never_modify_config=false
model=pc105
layouts=us,ru
variants=,
toggle_option=grp:alt_shift_toggle,grp_led:scroll,terminate:ctrl_alt_bksp
compose_key_position=
group_policy - параметр отвечающий за привязку раскладки. Может принимать значения: 0 - глобальная раскладка, 1 - привязка раскладки к окнам, 2 - привязка раскладки к приложениям
default_group - раскладка по умолчанию для новых окон. Отсчет начинается с нуля, потому 1 раскладка будет нулевой, 2-я первой и т.д.
never_modify_config - gxkb не будет пытаться заменить настройки X11 раскладок и их переключение, а так же не будет при выходе из программы переписывать свой файл настроек.
model - модель клавиатуры.
layouts - раскладки клавиатуры
variants - варианты раскладок
toggle_option - параметры переключения раскладок
compose_key_position - назначение клавиши Compose
Известные проблемы:
Вопрос: gnome2/gnome3,unity,e17, (возможно и kde3/kde4) - не корректно меняется раскладка при переключении окон
Ответ: нужно в настройках DE найти управление раскладками системы и отключить функции наследования раскладки от прошлого окна и функцию разделение раскладки по окнам
Вопрос: gnome3,unity - не отображается значок раскладки в трее
Ответ: в связи с разными версиями gnome 3 как точно вернуть значок в трей подскажет гугл, но можно поступить иначе, программа на самом деле запущена и выполняет свои функции, для визуального отображения можно пользоваться стандартным индикатором раскладки gnome3 или unity. Главное не забыть про отключение разделения раскладки по окнам в индикаторе gnome3/unity.
Вне форума
Прежде, чем дать описания проекта, отвечу на вопрос "зачем?"
"Зачем?" этот вопрос из репертуара ЛОРовсих троллей, хабракабровых аналитигов и других полусумасшедших из типа ИТ блогов.
Лично я любое приложение оцениваю по удобству и полезности для себя, а не по критерию "это ещё один велосипед"
Делая обзоры fbxkb и QXKB проискал подобные приложения, "живых" оказалось мало...
Сейчас мне малость некогда, но пакетик для Salix 13.37 собрал и проверил, позже на 14.0 проверю и плотнее изучу! Взять пакетик можно ТУТ.
Судя по описанию у меня в Openbox"е она должна прижиться!
Спасибо!
ЗЫ: Все нафигачеры, зачемучеры и прочие подобные будут удалены!
Можете даже не отписывать! Ну или пишите на хлор&хабалюдям!
Если приложение свободное, то это не значит что его могут все свободно обсерать!
Вне форума
@posixru, приживется не только в openbox Кстати, я не вижу возможности редактирования сообщения...
Отредактировано ZEN (22-03-2013 12:25:03)
Вне форума
Выпустил версию 0.4, устранил пару багов связанных с поиском имени файла флага. Все изменения можно найти на sourceforge.net/p/gxkb, вместе с deb-пакетами для Debian Wheezy x86 и x86_64. А так же, силами сообщества, собран и помещен в AUR пакет для Arch Linux.
Вне форума
@posixru, приживется не только в openbox
Кстати, я не вижу возможности редактирования сообщения...
Разобрались? )
zenway admin
Вне форума
ZEN пишет:@posixru, приживется не только в openbox
Кстати, я не вижу возможности редактирования сообщения...
Разобрались? )
Да, с этим больше проблем нет )
Вне форума
Чего то не любит он немецкую раскладку... Записал ей конфиг (~/.config/gxkb.cfg):
[xkb config]
group_policy=2
default_group=0
never_modify_config=false
model=pc105
layouts=de,ru
variants=,
toggle_option=grp:lwin_toggle,grp_led:scroll,terminate:ctrl_alt_bksp
А он его при запуске в дефолтный переписывает, сделал его только для чтения, всё путём...
Если чего, это уидено на Xubuntu 12.10, Арче с Опенбоксом и на Слаке с MATE (одинаково везде)
По правому клику:
По левому клику только переключает раскладку...
Вне форума
Чего то не любит он немецкую раскладку...
А он его при запуске в дефолтный переписывает, сделал его только для чтения, всё путём...
немецкую раскладку дефолтной делает? Тут вариант параметр
default_group=0
поставить в
default_group=1
тогда по-умолчанию будет российская раскладка и на этой раскладке будет загораться скрол. Логика простая
de,ru,ua
соответственно нумеруются с нуля
0,1,2
ну или поменять
layouts=de,ru
на
layouts=ru,de
но тогда за альтернативную раскладку будет считаться de и при переключении на немецкую будет загораться скролл
Отредактировано ZEN (25-03-2013 21:53:06)
Вне форума
немецкую раскладку дефолтной делает? Тут вариант параметр
Не... Скидывается весь конфиг в дефолтный. Сделал его для записи, перезапустил gxkb и в конфиге опять:
/bin/bash
[xkb config]
group_policy=2
default_group=0
never_modify_config=false
model=pc105
layouts=us,ru
variants=,
toggle_option=grp:alt_shift_toggle,grp_led:scroll,terminate:ctrl_alt_bksp
compose_key_position=
Тот что показал выше устраивает, если его сделать только для чтения, нормально работает...
Вне форума
Не... Скидывается весь конфиг в дефолтный.
интересное поведение... У меня такое было в случае, если запущена другая программа для управления раскладок. Как правило они ловят одинаково событие, что раскладки сменились и пытаются перечитать конфиг. Я в трее не вижу, но может в процессах висит xxkb?
По левому клику только переключает раскладку...
все верно, если раскладок больше двух, будет отображаться меню
Вне форума
если запущена другая программа для управления раскладок
Из ДЕ настройки не используются, да и не стоят они полностью, что из XFCE что из MATE используются/стоят только панельки, поверх Опенбокса, сторонних утилит тоже нет, есть только в автозапуске:
setxkbmap -layout de,ru -variant -option grp:lwin_toggle,grp_led:scroll,terminate:ctrl_alt_bksp &
все верно, если раскладок больше двух, будет отображаться меню
Ну с этим ясно, почему то так и подумал, но проверить вот не догадался...
Вне форума
Из ДЕ настройки не используются, да и не стоят они полностью, что из XFCE что из MATE используются/стоят только панельки, поверх Опенбокса, сторонних утилит тоже нет, есть только в автозапуске:
Все равно не понятно... Программа сохраняет конфиг при выходе из программы. Соответственно, если вписать в конфиг настройки и закрыть после этого запущенный gxkb, то конфиг перетрется теми настройками с которыми был запущен gxkb. Точно изменения в конфиг вносились с не запущенным gxkb?
Вне форума
Ну да, хотя по всякому пробовал, сейчас вот четыре выставил:
Но... Если не сделать "только для чтения" скидывает:
Вне форума
А можно показать вывод
ps aux
?
Вне форума
Вне форума
да, странная ситуация... С учетом, что в процессах используется часть гнома, я бы попробовал выполнить
gconftool-2 --set "/desktop/gnome/peripherals/keyboard/general/groupPerWindow" --type bool FALSE
но не факт, что это причина. А просто в процессе использования не сбрасывается на us/ru, только именно при выключении программы?
Вне форума
vovans пишет:ZEN пишет:@posixru, приживется не только в openbox
Кстати, я не вижу возможности редактирования сообщения...
Разобрались? )
Да, с этим больше проблем нет )
Странно, что такой вопрос возник. На нашем форуме это как-то неочевидно?
Извините, что влажу в обсуждение, но для меня это важно ) ибо я уже не могу увидеть этот форум "как в первый раз"
zenway admin
Вне форума
Странно, что такой вопрос возник. На нашем форуме это как-то неочевидно?
Извините, что влажу в обсуждение, но для меня это важно ) ибо я уже не могу увидеть этот форум "как в первый раз"
На сколько я понимаю, в здешних настройках fluxbb выставлен таймер, по истечению которого сообщение редактировать нельзя. Именно это послужило просьбой отредактировать первый пост. Другое дело, что я привык не ограничено раз редактировать сообщение, благо тоже админ у себя на форуме
Вне форума
ок, понятно ) просто, мало ли, что там пользователь наредактирует спустя приличное время ) ведь нельзя же перечитывать все посты регулярно )) так что, это удобная фича форума )) но я о ней уже и забыл. У меня-то полные права и я не вижу этого )
zenway admin
Вне форума
использования не сбрасывается на us/ru, только именно при выключении программы?
В процессе нет, только при перезапуске софины...
Есть Manjaro Linux "Openbox-Lite", чистый и ничем гномо-мыше-матовым не осквернённый!
По попозже, или завтра опробую на нём...
У меня-то полные права и я не вижу этого )
Вне форума
В процессе нет, только при перезапуске софины...
Есть Manjaro Linux "Openbox-Lite", чистый и ничем гномо-мыше-матовым не осквернённый!
По попозже, или завтра опробую на нём...
Ситуация все равно интересная ) Неделю тестирования вместе со знакомыми на Debian 6/7, Crunchbang, Arch, Ubuntu, Elementary OS и... все равно появилась внештатная ситуация. И причина не явная
Вне форума
все равно появилась внештатная ситуация. И причина не явная
Мои Слака и Арч представляют из себя винегрет с зимним салатом, перемешанные в одном тазике и посыпанные кокосовой стружкой! Хотя уже и Xubuntu несильно от них отличается... Много чего на них ставилось, удалялось правилось... Из "свежего и чистого" сейчас только Manjaro под рукой, ещё не настраивался, вот и поглядим как на нём будет, для чистоты эксперимента! ))
Вне форума
Опробировал на "чистой" Manjaro "Openbox-Lite", всё работает по человечески...
И с двумя и с тремя раскладками:
Вне форума
это хорошо) до версии 0.5 нужно будет переработать значок в трее. В других дистрибах нормально, а вот xubuntu порадовали:
Xfce 4.8, 4.10 - одинаково. И такой же эффект у sbxkb, fbxkb и возможно других программ, которые в трее используют прямоугольные значки. Видимо нужно создавать квадратный виджет и вписывать в него прямоугольник.
Кстати, может пригодится, версия с поддержкой старых версий библиотеки libxklavier
http://crunchbang.org.ua/download/gxkb-0.4.1.tar.gz
на sf.net еще не заливал, так как тестировал только на CentOS 6.3 и Debian Lenny, но по первым результатам работает...
Вне форума
на sf.net еще не заливал, так как тестировал только на
Ну и на openDesktop.org надо выставить, в раздел gtk-apps.org, тестеров добавится...
Вне форума
[ Сгенерировано за 0.022 сек, 9 запросов выполнено - Использовано памяти: 1.75 Мбайт (Пик: 1.8 Мбайт) ]