1 сентября 2008 г.

О раскладках клавиатуры — 2

Рассказывая о раскладках клавиатуры в прошлый раз, я забыл упомянуть о типографской раскладке Ильи Бирмана. Исправляю это упущение. Особенностью этой раскладки является наличие ещё одного регистра клавиатурной раскладки: по клавише AltGr, или «правому Alt», мы получаем возможность использовать некоторые особенно полезные в блоггерском деле символы Unicode, например кавычки-«ёлочки» или кавычки-„лапки“, или, очень важный, но часто игнорируемый символ, — длинное тире, знак «ударе́ния» и знак §параграфа. Полный список символов можно обнаружить на сайте Ильи. Однако, он предлагает решение для Windows. Внимательный читатель найдёт в самом низу страницы с описанием типографской раскладки ссылку на некую «версию для Линукс».

«Поймав волну», я закатал рукава и принялся за правку конфига, предложенного Сергеем Столяровым, особенностями его решения были раскладка Winkeys для кириллицы (я хотел использовать виндовую машинопись) и переключение между кириллицей и латиницей комбинацией Shift_L+Shift_R (что мне кажется довольно неудобным). Обрадовавшись возможности, я решил убить сразу двух зайцев. Напомню, что Linux — очень гибкая штука, поэтому, взяв в руки напильник и разложив в поле пару граблей, я занялся правкой конфига. В итоге получилось вот это. Раскладки переключаются клавишей Caps_Lock (при этом индикатор работает в стандартном режиме: нажали — загорелся, нажали ещё раз — погас, если случайно переключите с помощью Shift+Caps Lock, рекомендую также переключать обратно, так как индикатор в этом случае менять состояние не будет, а раскладка переключится, кроме того, я оставил рабочей комбинацию Shift_L+Shift_R), пока зажат AltGr («правый Alt») можно вводить типографские символы.

Для того, чтобы заставить это великолепие работать, необходимо положить куда-нибудь этот конфиг, например в ваш домашний каталог, и выполнить следующую команду (для .xkb_config_tl, лежащего в вашем домашнем каталоге):

$ xkbcomp ~/.xkb_config_tl $DISPLAY

Готово. Теперь до конца текущей сессии вы будете наслаждаться комбинацией из раскладок Ильи Бирмана, машинописи Windows и стандартной QWERTY. Стоит ли говорить о том, что этот конфиг можно легко подогнать под себя, например, поменять QWERTY на Dvorak?

Для того, чтобы отныне и всегда ваш новый конфиг запускался вместе с вашей сессией, придётся поплясать с бубном. Ковыряние ~/.xsession не дало результатов, хотя, возможно, я просто не смог с ним разобраться. Я воспользовался встроенным в Xfce4 менеджером автозагрузки, при чём назначил исполнение вышеозначенной команды в xterm:

$ xterm -e "xkbcomp ~/.xkb_config_tl $DISPLAY"

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

Если вы хотите воспользоваться winkeys-вариантом, просто сравните оригинал и мою версию: Caps Lock настраивается в самом низу скрипта.

12 комментариев:

LXj комментирует...

Вообще-то в Xorg есть ещё один механизм ввода специальных символов, позволяющий, например, кавычки-«ёлочки» вводить как (специальная клавиша)-<-<, а длинное тире -- как (специальная клавиша)-тире-тире-тире

http://kaktyc.wordpress.com/2007/02/05/using-exotic-unicode-symbols-in-xorg/

vonderer@darkstar комментирует...

Спасибо за ссылку. Оно работает и в кириллической раскладке? Или необходимо переназначать клавиши?

A.I. комментирует...

Если назначить Compose key на AltGr то можно сделать точно такую же типографическую раскладку

LXj комментирует...

Для сочетаний с буквами или < > в кирилической раскладке не работает, а для тире-тире-тире — работает

vonderer@darkstar комментирует...

Для сочетаний с буквами или < > в кирилической раскладке не работает, а для тире-тире-тире — работает
К сожалению, это главный недостаток, ибо я, да и многие читатели, пользуемся в основном кириллицей, и для постановки кавычек переключать раскладку — не comme il faut.

deksa комментирует...

Тема не сильно меня интересует, но замечу, что мне показалось, что qwerty продуманна куда удобнее, чем йцуке

Андрей «вон» комментирует...

qwerty продуманна куда удобнее, чем йцуке
С точки зрения эргономики?

denger комментирует...

Очень полезная статейка… Попробовал дворака — переучиваться дико сложно, забил. Не так уж много приходиться печатать английский текст. Русскую типографскую раскладку начал использовать, переучиваться толком не надо, изредка путаешься, но всё равно удобнее. Цифры в верхнем регистре понравились ещё со времен французской раскладки.

Одна проблема, у меня линукс, использую раскладку из этой статьи (виндовая typewriter удобнее линуксовой), нету «номера», единица выдаёт знак «#», а в русском языке он не используется. Исправил это путём замены «numbersign» в блоке «AE01» на «numerosign», теперь печатает «№»

Насчёт .xsession — где-то читал, что он работает только для xdm… В гноме автозапуск вообще не нашёл, но искал плохо.

denger, jabber: denger@sibnsk.net

denger комментирует...

Сегодня обновил убунту до 8.10, раскладки стояли в автозагрузке... Перестали работать некоторые клавиши (стрелки, блок над стрелками правые альт и контрол)

Андрей «вон» Т. комментирует...

Видимо, особенности новой версии xkb. Я пока не обновлялся, поэтому вряд ли смогу помочь.

denger комментирует...

виндовая машинопись в убунту 8.10.

Анонимный комментирует...

После обновления убунты до 8.04 перестали печататься с каких положено кнопок - точка, запятая, номер,двоеточие и тд. Объясните доступно как исправить. Я пока новичек. Заранее благодарен.

Отправить комментарий