Функция compose отличается от мертвой клавиши.
Собственно, композиция останавливает интервал и печатает следующие символы в одном месте. Так что даже если у вашего шрифта нет è, он будет создан из e и `. Они по-прежнему два персонажа в одном пространстве.
Мертвая вещь - это что-то другое: вы печатаете мертвую клавишу "` "и ничего не видите. но следующее "е" будет заменено символом "è" в юникоде, который представляет собой один символ (а не два в одном и том же месте).
Deadkey будет работать только с комбинациями, которые приведут к символам Unicode, в то время как составлять работу со всеми комбинациями клавиш (теоретически, это зависит от ОС и приложения)
Существуют комбинации обоих методов (составление с допустимым результатом Unicode, автоматически конвертируемым в Unicode), поэтому вы создаете C = приводит к реальному символу €, а не просто печатает C и = в одном и том же месте.
Сначала составляется алфавитный символ, затем следует модификация. При использовании Deadkey сначала дается модификация (deadkey), а затем буквенный символ.
Например, в windows: deadkey «` »и" e "(Unicode U+0060 и U+0065) приведут к" è "(символ Unicode 00E8)
e +0300 <\ALT> получит такую же оптику, но с двумя символами (Unicode U +0065 и U +0300)
Конечно, реальный юникод - более строгий метод. Но составьте более гибко:
deadkey " " and "w" (Unicode U+0060 and U+0077) will result in "
w" (нет доступных символов Unicode), вы не получите композицию
w +0300 <\ALT> получит символ `over w в качестве композиции, а не символ Юникода, поэтому он работает (если его полезность - другой вопрос)
Раскладка клавиатуры с помощью deadkeys может быть запрограммирована с помощью бесплатного конвертера раскладки клавиатуры от Microsoft, так что вы можете переназначать функции deadkey на слои (например, слой AltGr практически пустой, вы можете отобразить deadkeys там), помощь goot для необходимых определений греческая раскладка клавиатуры.
Ключи составления также могут быть сопоставлены, но не нажимайте на мертвую клавишу в определении, а просто введите юникод действительных составных ключей (начиная с U+0300)
Сложнее всего будет создавать и создавать «мертвые ключи» на WindowsPC с ограниченными правами пользователя (в офисе), где вы не сможете вносить изменения в драйвер и запускать собственные программы.
Для этого вы можете использовать программируемую клавиатуру (например, POS-клавиатуры) или микроконтроллерный конвертер (Soarer-Converter with teensy ++2.0). Там вы можете поместить составные символы в Unicode в дополнительные слои.
Способ сделать настоящие «мертвые клавиши» в аппаратном обеспечении нелегок - вам нужно запрограммировать свой собственный адаптер, никто не сделал этого сейчас (но Соарер думает о разработке своего конвертера для него)