LINUX.ORG.RU

Извращенное переключение раскладки

 , ,


2

2

Здравствуйте, мне нужны советы/идеи/какая угодно помощь касательно переключения трех раскладок. Весь процесс представляет из себя жуткий костыль, отказаться от которого мне не хочется, очень уж удобно. Дело обстоит так:

в автостарте

setxkbmap -layout 'us,ru,ua' -option 'caps:none,lv3:ralt_switch'

также есть флаг-файл в домашней директории, в котором написано либо ru, либо ua. При нажатии правой клавиши Super переключается раскладка между англ. и той, которая в файле. а при нажатии комбинации из двух Super'ов раскладка в файле сменяется одна другой. проблема в том, что отзывчивость этой гадости оставляет желать лучшего, особенно когда машина чем-то нагружена. Помогите, посоветуйте способ удобно переключать раскладку менее варварским способом.

PS. Индикация раскладки - xxkb (только индикация)


Либо использовать нормальный IM вместо иксового говна, либо вместо дёрганья setxkbmap (это реально очень медленно и плохо во всех отношениях) использовать kbdd через DBus (интерфейс описан в мане, даже с элементарным dbus-send это будет в хрениллион раз быстрее твоих костылей).

anonymous
()

Я делаю так, у меня дефолт загружается как 'us,ua', когда нужно общаться с половцами, то по Mod4+F6 включается 'us,ru', вернуться на 'us,ua' — Mod4+F5 соответственно. Еще у меня таким образом на F7 испанский, а на F8 — картули эна, F9 — фарси.

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

setxkbmap -layout 'us,ua' -variant 'winkeys' -option 'grp:caps_toggle,grp_led:caps'
setxkbmap -layout 'us,ru' -variant 'winkeys' -option 'grp:caps_toggle,grp_led:caps'

и так далее.

slon
()

Все просто, не использовать ua.

anonymous
()

Помогите, посоветуйте способ удобно переключать раскладку менее варварским способом.

Помогаю и советую: выкинь переключалки раскладок и используй включалки: одна клавиша включает английскую раскладку, вторая — включает православную, третья — включает варварскую. Заодно избавишься от опечаток типа ghbdtn, так как очень быстро привыкаешь нажимать нужную клавишу в начале печати.

В качестве включателей удобно использовать клавиши-модификаторы: шифты, контролы, альты и т. д. Мои фавориты: левый контрол для латиницы, правый контрол для русского. Если захочешь попробовать, то ходи сюда за техническими средствами. Предлагаемые технические средства на нагруженной машине тормозят незаметно, так как не читают и не пишут файлов, не запускают новых процессов при переключении раскладок.

debugger ★★★★★
()
Последнее исправление: debugger (всего исправлений: 1)
Ответ на: комментарий от slon

Я делаю так…

И чем твой способ отличается от топикстартерного? Чел жаловался:

проблема в том, что отзывчивость этой гадости оставляет желать лучшего, особенно когда машина чем-то нагружена.

Твоя система будет точно так же тормозить из-за того что требуется запуск процессов.

debugger ★★★★★
()
Ответ на: комментарий от slon

Тоже так делаю. Даже французские буковки отдельно от английских делаю, хотя пользую канадскую раскладку qwerty.

anonymous
()
Ответ на: комментарий от debugger

Впервые слышу и отказываюсь верить, что у кого-то где-то при каких-то условиях тормозит переключение раскладки через хоткей, на который замаплен setxkbmap, я отказываюсь даже обсуждать это.

slon
()

PS. Индикация раскладки - xxkb (только индикация)

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

slon
()
Ответ на: комментарий от anonymous

Я забыл сказать что на правом Super висит баш скрипт, который устанавливает раскладку при помощи xkb-switch

gribf
() автор топика

У меня отзывчивость мгновенная. Даже при 12309 - секунды две. Может, у тебя Ubuntu? Там переключалка пропатчена на Отжатие клавиш вместо Нажатия

ZenitharChampion ★★★★★
()

Самый удобный из «дешёвых» вариантов(для стандартной клавиатуры и стандартного ПО) - вот тут но вместо caps_toggle - grp:lctrl_rctrl_switch. Второе по удобству - дефолтный в современных гномах «super+space», переключающий на прошлую раскладку.

DonkeyHot ★★★★★
()
Ответ на: комментарий от slon

А у этой шняги нет проблем с запоминанием раскладки для каждого окна? Например, я в браузере пишу это сообщение на русском, переключаюсь на текстовый редактор, меняю пару раскладок, пишу что-нибудь там, а потом снова возвращаюсь в браузер. Какая раскладка в таком случае будет в браузере, и что случится, если в нём переключить раскладку?

sudopacman ★★★★★
()
Ответ на: комментарий от debugger

Мои фавориты: левый контрол для латиницы, правый контрол для русского

Хотел также себе сделать, но у меня перестали работать сочетания контрол+другая клавиша. Как ты это поборол?

anonymous
()
Ответ на: комментарий от slon

Ну. kbdd запоминает раскладку каждого окна. Но будет ли он помнить её, если режим setxkbmap сменится? Или он будет запоминать режим для каждого окна?

sudopacman ★★★★★
()
Последнее исправление: sudopacman (всего исправлений: 1)
Ответ на: комментарий от debugger

Прочитал про таппер, на предыдущий комментарий можешь не отвечать.

anonymous
()
Ответ на: комментарий от sudopacman

Нет, не запомнит, точнее запомнит кириллическую (т.е. не английскую), но не ту, что была.

Переключишь еще раз, с тебя не убудет, такие вещи делаются на автомате, даже не задумываешься об этом.

slon
()

Советую не делать так: постоянно помнить, на какую раскладку ты переключишься с английской — ад.

x3al ★★★★★
()
Ответ на: комментарий от sudopacman

раскладка одна на все. правда иногда в терминаторе остается англ., но это не всегда удается воспроизвести, так что одна на все меня устраивает, тем более переключение всегда под рукой

gribf
() автор топика
Ответ на: комментарий от x3al

нет, из lv3 можно быстро получить необходимую букву другой раскладки. разницы между ними почти нет.

gribf
() автор топика
Ответ на: комментарий от anonymous

Но и костыля на башскрипте - тоже. Вот если бы он вставлял вместо setxbkmap однострочник на Баше - другое дело

ZenitharChampion ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.