masai 06.05.2009 00:07
How-to`s — Ввод специальных символов или «типографские раскладки»
Наверняка многие пользователи хотели бы вводить различные специальные символы вроде кавычек-ёлочек («») или длинного тире (—) простыми сочетаниями клавиш, но не знают как. И остается им облизываться на раскладку Бирмана, для которой в Windows есть удобный установочный пакет. Либо копаться по форумам и выполнять загадочные действия: что-то скачивать, что-то где-то править в здоровенном xml-файле. А то и вовсе использовать старую добрую таблицу символов.Однако, всё что нужно, уже может быть в вашем дистрибутиве!
Дело в том, что существуют специальные клавиатурные раскладки, позволяющие вводить спецсимволы при помощи нажатия особой клавиши одновременно с какой-то из обычных клавиш клавиатуры. Например, после нажатия правого Alt и > получается знак ». Всё просто и легко запоминается (» похожа на >). Такие раскладки и называются типографскими.
К сожалению, я сейчас использую только Ubuntu 9.04 и не могу сказать, верно ли сказанное в других дистрибутивах.
В старых версиях для того, чтобы использовать все возможности и удобства расширенной раскладки, мне пришлось (по совету с какого-то сайта) править несколько файлов со списками раскладок, что неудобно, да и неправильно, так как эти файлы принадлежали пакету xkb-data.
После установки Ubuntu 9.04, я хотел было уже опять искать в сети способ включить типографскую раскладку, но тут случайно обнаружил, что всё уже есть в самой системе. Достаточно лишь зайти в настройки клавиатуры («Система» ? «Параметры» ? «Клавиатура» ? вкладка «Раскладки» ? «Параметры раскладки») и включить соответствующую галочку.
Теперь пару слов о том, как же теперь эти символы вводить. В качестве «волшебной клавиши» для ввода по умолчанию используется правый Alt, но это можно изменить в том же окне в разделе «Key to choose 3rd level».
Раскладка, конечно не такая богатая, как некоторые другие, но всё, что нужно позволяет легко вводить. Вот несколько полезных сочетаний:
Alt-> »
Alt-< «
Alt-- —
Alt-. …
Остальные можно посмотреть, распечатав раскладку в том же окне настроек клавиатуры.
Несколько слов для тех, кто не хочет или не может пользоваться гномовским клавиатурным настройщиком. Активировать расширенные раскладки можно командой setxbmap. Пример того, как это сделать, я подсмотрел на сайте Сергея Столярова.
1 |
|
Эта команда задаёт способ переключения (grp:capstoggle, т.е. клавишей Caps Lock), индикатор, используемый для отображения раскладки (grpled:caps, т.е. индикатор Caps Lock), а также непосредственно раскладки (us+typo и ru:2+typo). Как можно заметить, слой с дополнительными символами добавляется к обеим раскладкам (us и ru).
Если вы используете другой способ настройки XKB, то вы должны там заменить us на us+typo и ru на ru:2+typo.
Upd. Я забыл упомянуть (спасибо пользователю konkere за подсказку) о другом, даже более мощном штатном способе ввода спецсимволов — клавише Compose. О нём довольно много написано в интернете, поэтому отсылаю читателя к википедии и гуглу. Скажу лишь о некоторых недостатках этого способа.
Чтобы ввести сочетание Compose + > + > нужно переключаться в английскую раскладку, так как в русской нет символа >. (Имеется в виду обычная русская раскладка, которую можно видеть на клавиатуре. Расширенная русская позволяет вводить как < и > — Alt-Shift-б и Alt-Shift-б — так и квадратные и круглые скобки без дополнительных переключений.) Можно, конечно, использовать ~/.XCompose, что было бы очень удобно, так как позволяет создавать свои раскладки, но в гномовских приложениях используется другой метод ввода и файл с настройками просто проигнорируется.
Upd. 2 Ещё рекомендую включить опцию «Unicode additions».
Тогда можно будет указанным выше способом вводить при помощи цифровой клавиатуры стрелки (????) и некоторые математические операторы (???).
Upd. 3 Пользователь pluton натолкнул меня на мысль об еще одном способе ввода символов — по их коду в Unicode. Для этого нужно нажать Ctrl-Shift-U. Появится маленькая подчеркнутая буква u, после которой нужно ввести 16-ричный код символа и нажать пробел. К сожалению, использовать этот способ для ввода текстов в Firefox не получится, так как там это сочетание клавиш, по-видимому, уже используется для отображения исходного кода посещённой страницы. Но в текстовых редакторах (например в gedit) этот способ может пригодиться (если, конечно, вы помните все коды Unicode ;)).
Кросспост
konkere 06.05.2009 00:25 #
+ 3 -
Меня compose вполне устраивает.
О, кстати, забыл о нём упомянуть!
Но у compose есть недостаток. Чтобы ввести Compose + > + > нужно переключаться в английскую раскладку. Можно, конечно, использовать ~/.XCompose, что было бы очень и очень удобно, позволяя свои раскладки создавать, но в гномовских приложениях используется другой метод ввода и файл с настройками просто проигнорируется.
Но у compose есть недостаток. Чтобы ввести Compose + > + > нужно переключаться в английскую раскладку. Можно, конечно, использовать ~/.XCompose, что было бы очень и очень удобно, позволяя свои раскладки создавать, но в гномовских приложениях используется другой метод ввода и файл с настройками просто проигнорируется.
ой, я так часто переключаю раскладку, что уже не особо на это внимание обращаю
Если "гномовских"=="GTKшных", то это лечится:
export GTK_IM_MODULE="xim" # где-нибудь в стартовых скриптах
Да, Gtk-шных. Но если не хочется по каким-то причинам менять метод ввода, то тогда ничего не поделаешь, таблица клавиш жестко в исходниках прописана.
спасибо за информацию. а никто не знает, как вводить символы по их кодам (типа Alt+код в офтопике)?
compose немного не удобен тем, что занимается дополнительная клавиша, которую для других действий использовать нельзя
compose немного не удобен тем, что занимается дополнительная клавиша, которую для других действий использовать нельзя
Нужно нажать Ctrl-shift-U. Появится маленькая подчеркнутая буква u. После этого нужно ввести 16-ричный код символа и нажать Enter. Появится нужный символ.
Источник — https://help.ubuntu.com/community/ComposeKey
Источник — https://help.ubuntu.com/community/ComposeKey
Нужно нажать Ctrl-shift-U. Появится маленькая подчеркнутая буква u. После этого нужно ввести 16-ричный код символа и нажать Enter. Появится нужный символ.
я встречал этот способ, но у меня не работает. проверял в кате и опере. KDE 3.5.10. переключалка раскладки -- caps. как бы починить это дело?
ps. кстати, в статье написано, что после ввода надо нажать пробел
А, ну да, пробел. :) Но и с Enter работает. Видимо, это Gtkшная штука всё же. А в опере есть и свой способ ввода чиссел по коду: http://www.myopera.net/forums/arhiv/44247.html
Только в Firefox работать не будет, там на этом показ исходного текста странички висит. Но в gedit отлично вводится всё.
Уже не помню где взял этот конфиг http://dumpz.org/8301/
Но с ним делается так /usr/bin/xkbcomp /home/kane/.xkb_config $DISPLAY
Этот метод лучше потому что не имеет значение дистрибутив и не имеет значение наличие окружения рабочего стола :)
Но с ним делается так /usr/bin/xkbcomp /home/kane/.xkb_config $DISPLAY
Этот метод лучше потому что не имеет значение дистрибутив и не имеет значение наличие окружения рабочего стола :)
На хабре в кросспосте этой статьи (кстати, спасибо exelens, а то я там хоть и зарегистрирован, пароль давно забыл, а восстанавливать лениво :)) упоминали раскладку rukbi. Я когда-то пробовал её установить, но она у меня не «завелась». Не отображалась в списке раскладок, а копаться в настройках ради дополнительных стрелочек мне не хотелось. Но всё же интересно, пользуется ли кто-то ей?
Упоминал её, видимо, я. :)
Нужно выбирать не в «Раскладках по стране», а в «Раскладках по языку».
С первого раза всё ок. :)
Нужно выбирать не в «Раскладках по стране», а в «Раскладках по языку».
С первого раза всё ок. :)
Да у меня и там не было. Где уж я только не искал. Ну, раз у других работает, значит всё же дело во мне. :)