LM 16 Cinnamon: Ввод нестандартных символов с клавиатуры
Вроде бы инструкций и описаний этого дела в интернете до фига. Но странно, что они либо какие-то сложные или запутанные, либо касаются олдскульных систем, с "правильным" расположением "правильного" /etc/X11/xorg.conf, чего на Ubuntu-based осях давно уже нет.
В ОС LinuxMint 16 "Petra" Cinnamon данная задача решается не просто и даже не очень просто, а примитивно.
Открываем "Центр управления" → "Региональные настройки".
Там открываем вкладку "Раскладки клавиатуры", а в ней – "Параметры", где:
- 1) Открываем "Положение клавиши Compose" и выбираем клавишу (я выбрал Pause/Break)
2) Открываем "Разные параметры совместимости" и ставим галку на "Включить дополнительные типографские символы".
Готово!
Конкретный пример использования
Чтобы, к примеру, получить такое:
Сегодня к ночи морозец поприжал, уже -9°
нужно в LibreOffice либо в Gedit или в чем там вы печатаете, набрать всё до знака градуса, затем (переключившись в eng-раскладку) нажать однократно Pause/Break и дважды нажать "o", т.е., иными словами, набрать комбинацию "о-о". В результате напечатается знак градуса, а действие compose-клавиши Pause/Break будет сброшено до следующего нажатия.
Сочетания клавиш для нестандартных символов
Даже ежу понятно, что главное в этом деле — иметь под рукой список кейбиндов для символов, либо лошадиную память для их хранения. Второе, как вы понимаете, отпадает, поскольку противоречит концепции сайта MintMem.com
Самый популярный в интернете список расположен здесь. Разумно добавить эту страницу в закладки, или сделать из нее удобную выжимку для личных нужд, как это сделал Алекс Эфрос aka Powerman.
Как настроить кейбинды "под себя", выяснить "истинные" имена клавиш и написать свой конфиг, смотрите статью автора под ником "о_О Тынц" на Хабре.
Еще несколько полезных ссылок:
Ввод символов с акцентами в Linux
Как набирать с клавиатуры ударения в словах
Как задавать произвольные Compose-последовательности
2014-12-15 в 15:31:08
Ваша заметка сподвигла меня на сочинение суперминималистического справочника по compose sequence http://alv.me/?p=7691
2014-12-15 в 15:50:55
Нужное дело!
Я всё собирался смастерить шпаргалку побольше, да пока соберусь...
2015-01-06 в 08:48:29
Можно забиндить любые нужные символы на любые клавиши, прописав 1 строчку в xmodmap. Я остановился на этом, т.к. остальные решения, которые находил, почему-то не срабатывали. Опишу здесь, т.к. сам долго искал в гугле и не нашел ничего подобного.
Допустим нужно забиндить « и », на клавиши Page Up и Page Down соответственно. Сначала через xev (запускать в терминале) узнаем keycode этих клавиш.
После этого идем в Character Map (на минте) или его аналог, где узнаем коды клавиш « и » в UTF-16 (это есть в описании каждого символа).
После этого идем в Startup Applications и создаем по очереди 2 Startup Program следующего содержания:
xmodmap -e "keycode 112 = 0x00AB"
и
xmodmap -e "keycode 117 = 0x00BB"
Где 112 - keycode Page Up, 112 - Page Down, а 0x00AB и 0x00BB - коды клавиш « и » соответственно.
2015-01-06 в 11:01:36
Очень интересно, спасибо. Любознательным читателям будет полезно, хотя, должен сказать, это несколько другая лига, ближе к Арчу.
Да и кажется мне, что и решение это отработано не в LM (в Минте "Character Map" и "Startup Applications" давно уже "Таблица символов" и "Запускаемые приложения"). Следует также пояснить, почему кейкод берется в utf-16, а не в utf-8.
И главное: какова реальная применимость такого способа? На клаве практически нет "лишних" клавиш, часто берёт досада, что их вообще мало. В таких условиях гораздо более правильным выглядит не переназначение клавиш, а включение дополнительного режима, как это и сделано в методе Compose (или как в "нормальном" режиме вима, где есть еще и пользовательское пространство имен). Ваш способ не расширяет возможности клавы, а модифицирует их.
Но, повторяю, любопытным читателям (какими должны быть все линуксоиды
) будет знать об этом интересно и полезно.