Хорошие сказки заканчиваются хорошо, а плохие честно
Ввод дополнительных символов в Linux. Клавиша Compose
24.03.09 21:36 / Обновлено 28.08.09 15:42 | Версия для печати | Linux |
Немногие знают, что в Windows можно вводить спецсимволы (которых нет на клавиатуре в любой раскладке) непосредственно с клавиатуры. Без использования таблицы символов. Для этого, удерживая клавишу Alt, нужно ввести код символа.
Это одна из немногих вещей, которые действительно удобны в Windows, и когда я окончательно пересел на линух, мне её очень не хватало. Пока я не узнал про клавишу Compose.
Клавиша Compose (или композитная) — это назначаемая клавиша. Её нажатие сигнализирует о том, что следующие введённые символы надо рассматривать как комбинацию и вывести единственный символ, сопоставленный этой комбинации.
Как включить
В Ubuntu 8.10: Система » Параметры » Клавиатура. Откроется окно «Настройка клавиатуры», в нём перейти на ярлык «Раскладки» и нажать кнопку «Другие опции». В появившемся окне «Параметры раскладки» раскрыть пункт списка «Положение клавиши Compose» и проставить галочки напротив клавиш, которые хотите сделать композитными. Лично у меня такая клавиша одна — это правый Win (или Super).
Как использовать
Вот наиболее распространённые композитные сочетания:
Комбинация клавиш | Символ | Описание | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Compose > > | » | Литературная правая кавычка | ||||||||||
Compose Ctrl + Shift u #. Ctrl и Shift зажимаются одновременно, дальше вводим букву u и номер символа в юникоде. При вводе код символа отображается, поэтому при ошибке можно сразу сделать изменения. Сам код можно посмотреть в таблице символов. СсылкиКомментарииvalera
Как всё просто реализовано на сотовых телефонах и как муторно это же сделано на компъютерах. Для настроек в linux-системах нужна в основном латиница и спецсимволы которых не так уж и много, а поддержка символов из экзотических языков, это уже лишнее.
Мысль не понял.
В конфигах не используются дополнительные символы (которых нет непосредственно на клавиатуре).
Для кого-то и русский язык — экзотический. Здесь же речь о том, как быстро набрать строчку типа «Microsoft® Windows®© XP™» в любой программе, в любой области ввода текста и не прибегая к таблице символов.
и ни в одном мануале с клавишей Compose не написано как ставится значок ™ ))
Ну, он ставится чуть проще, чем знач0к ½ )
Ты знаешь что не прав? На самом деле начинать надо с вопросов консоли (отображение, экранный вывод, набор шрифтов) и раскладки клавиатуры (en masse — соответствующей нанесённым на артефакт меткам). То, что ты даже не упомянул про альтернативу Compose в лице Level3… ЗЫ: Последняя ссылка битая 🙁 У тебя остро не хватает ссылки на полный свод символов, вводимых посредством Compose в базисе _первичной_ (!) документации. ЗЗЫ: В части выбора клавиши Compose склонен согласиться с мнением Ивана Шихалёва: Caps Lock не нужен, на его месте прекрасно становится Compose. А lwin прямо-таки напрашивается на должность Level3 (rwin в моём случае отсутствует).
Я ж акын. Увидел что-то — пишу, чтоб не забыть. Разобрался получше — дописываю. Обнаружил ошибку — исправляю. Кстати, никто не запрещает дополнять материал в комментариях. Полезные вещи уходят в заметку, со временем.
http://fsymbols.com/keyboard/linux/compose/
Зацени грамотность и компетентность публики: http://joyreactor.cc/post/601761
Тема включения фичи раскрыта неполно! В gtk (gtk2?) по умолчанию используется какая-то экзотическая (зашитая при компилляции) таблица символов. Для исправления поведения нужно… практически задать пременную окружения:
Альтернативой ‘xim’ является модуль ‘ibus’. И чтобы потом ссылку долго не искать, отмечаю альтернативное и весьма достойное (хоть и не безупречное) раскрытие темы:
Символ рубля в основных шрифтах нарисовали. Достоинством Compose относительно Level3 является поддержка пользовательского конфигурационного файла. :»₽» # Ruble Symbol
Если вы видите эту надпись, Техническая информация Источник Gnome: ввод символов по кодуБольшинство опытных пользователей Windows знают про возможность ввода символа по его коду: Alt-[номер на дополнительной клавиатуре]. Самые опытные знают, что поведение различается у юникодных и неюникодных программ (юникодные хотят двухбайтный код, неюникодные — код в текущей кодировке). Особенно приятно пользоваться этим методом на ноутбуках, где дополнительная клавиатура либо отсутствует, либо доступна с использованием регистра Fn. Большинство пользователей линукса знают о Compose key. И о том, что с её помощью можно вводить часто необходимые знаки, такие как кавычки-ёлочки (« == Compose > ), тире (— = Compose —), символ параграфа (§ = Compose s o), всякие умляуты и диакриты (àãå, Compose `a, Compose a, Compose o a), символ фунта (£ = Compose L -), неразрывный пробел (Сompose и два пробела) и т.д. Но иногда хочется вводить странные символы (например, Ѧ или забавные значки из раздела «различные символы» таблицы юникода: ☭, или даже символы других языков: シツ, あ, красивые нестандартные скобки: 【такие】 или 〘「такие」, или даже 《такие 》。 Есть унылый вариант — ковыряться в таблице символов. Интересно первые два-три раза. Дальше их хочется вводить быстрее. И этот метод есть: Ctrl-Shift-U — после этого удерживая шифт нужно ввести нужный код в шестнадцатиричном виде (т.е. 1 — 4 символа). Сами коды можно посмотреть в той же таблице символов. Однако, метод работает только в gnome-приложениях (например, в опере с момента ухода с Qt она работать перестала). А в Inkscape оно работает даже интереснее — там после нажатия Ctrl-Shift-U в подсказке появляется будущий символ, и можно поправить опечатку в вводе кода символа. Источник Как печатать специальные символы в Linux?В окнах есть возможность набирать с клавиатуры специальные знаки, удерживая клавишу Alt и вводя несколько цифр, в зависимости от того, какой знак вы хотите использовать. Работает ли он с Linux так же? Вы можете использовать Ctrl + Shift + с u последующим кодом в шестнадцатеричном виде . (Вам нужно только удерживать Ctrl и Shift во время набора кода) X использует то, что называется ключом compose . Нажатием Compose , some key , some key . в последовательности, вы можете вводить символы. У меня есть мой ключ для записи Menu ; вводить © (символ авторского права), я хотел бы использовать Menu , o , c . Полный список комбинаций клавиш X compose можно найти онлайн (200 КиБ) или локально в /usr/share/X11/locale/en_US.UTF-8/Compose . В Gnome ключ компоновки можно установить, выбрав «Настройки» → «Клавиатура» → вкладка «Макеты» → «Параметры макета» → «Положение». Ввод символов Unicode в Linux различен. В UTF-8 и Unicode FAQ есть раздел, содержащий различные методы ввода :
Другие методы, которые вы могли бы использовать:
Источник Как вводить специальные символы в Linux?в windows есть возможность вводить с клавиатуры специальные знаки, удерживая клавишу alt и набрав несколько цифр, что зависит от знака, который вы хотите использовать. Работает ли он с linux таким же образом? 5 ответовможно использовать Ctrl + Shift + u затем код hex. (Вам нужно только удерживать Ctrl и Shift при вводе кода) X использует то, что называется compose ключ. Нажав Compose , какой-то ключ , какой-то ключ . в последовательности можно вводить символы. У меня ключ compose установлен в Menu ; тип © (символ авторского права), я хотел бы использовать Menu , o , c . полный список комбинаций клавиш X compose можно найти онлайн (200 кб), или локально в /usr/share/X11/locale/en_US.UTF-8/Compose . в Gnome, клавиша compose может быть установлена, перейдя в настройки → Клавиатура → вкладка макеты → параметры макета → положение клавиши Compose. ввод символов Юникода в Linux варьируется. The UTF-8 и Unicode FAQ есть раздел, содержащий различные методы ввода:
другие методы вы могли бы использовать:
консоль Linux также поддерживает клавиши compose (клавиша compose часто Alt + AltGr или PrintScrn ) — см. как определить ключ Compose в терминале на Unix и Linux Stack Exchange для деталей. Источник Ввод произвольных символов при помощи Compose Key: настройкаМногие знают, что в Linux есть специальная кнопка: Compose. Её действие аналогично виндовым сочетаниям Alt+NumPad (Например, нажатие Alt+0169 даёт символ ©), но не требует хранить перед глазами таблицу кодов символов 🙂 Если настроить правый Alt как Compose Key, то нажав RAlt+O+C получаем тот же значок копирайта: ©. В статье я опишу способ назначения произвольных сочетаний клавиш для символов. Это будет удобно в первую очередь математикам: не нужно будет лазить в таблицу символов чтобы ввести «∀ε>0 ∃δ(ε)≕δ>0: ∀x∈O(x₀) |f(x) ВключаемПервое что нужно сделать чтобы получить доступ к Compose Key – включить его 🙂 Достаточно удобно установить правый Alt в качестве составной кнопки: вряд ли он часто используется. Примеры будут для Ubuntu, в других дистрибутивах не должно быть большого отличия. Есть три способа включить Compose Key:
/.xinitrc указать следующее: setxkbmap -options «compose:ralt. » Может потребоваться перезапуск X сервера. Если всё сделано правильно, проверяем: жмём RAlt, отпускаем, потом (с шифтом) O и C. Должен получиться значок копирайта ©. Конфиг/.XCompose и будем описывать там свои сочетания клавиш, которые отменят все стандартные. /.XCompose строку: В угловых скобках подряд описывается сочетание клавиш. Compose в терминах X-сервера называется «Multi_key». Дальше идёт двоеточие, и в кавычках указывается символ (или строка!), получающийся при нажатии этих клавиш. Последний – Unicode код символа, его вводить не обязательно. Хорошим тоном считается в комментарии дать оригинальное название символа, которое можно подсмотреть в таблице символов. Важный момент: все названия клавиш в конфиге регистрозависимы: так, и – разные клавиши, причём, второй вариант не будет распознан иксами. Внимательно! Узнаём названия клавишОткрываем консоль, и выполняем следующее: Настраиваем: «–» U2013 # EN DASH И последнее: если хочется просто расширить существующий набор символов и ничего не менять, в начале файла инклюдим стандартный: Готовое решениеНе буду приводить всю таблицу и расписывать её создание, лишь дам ссылку на проект на гуглокоде где можно скачать моё творение и подправить под себя. Файл будет обновляться в процесса расширения набора символов и поиска багов 🙂 UPD: исправил баг с пересекающимися © и Ⓒ. На гуглокоде лежит обновлённый файл и пхп скрипт, проверяющий все последовательности на пересечения. Источник |