Настраивать поведение клавиши Compose?

Я пытаюсь сделать так, чтобы эти последовательности создания производили следующие символы:

AA ==> Ä
OO ==> Ö
UU ==> Ü
aa ==> ä
oo ==> ö
uu ==> ü

Я пытался изменить мой ~/.XCompose, и моя система создает, но она не работает (после полный перезапуск).

Я все еще получаю значения по умолчанию.

(

AA ==> Å
OO ==> [nothing]
UU ==> Ŭ
aa ==> å
oo ==> °
uu ==> ŭ

)

В чем хитрость, чтобы заставить это работать?

Вот мой ~/.XCompose (в точности как сейчас; немного "лепетание" из первоначальных экспериментов и заметок тоже есть, но я не думаю , что это должно на что-то влиять, да?):

# ~/.XCompose
# This file defines custom Compose sequences for Unicode characters

# Import default rules from the system Compose file:
include "/usr/share/X11/locale/en_US.UTF-8/Compose"

# To put some stuff onto compose key strokes:

<Multi_key> <s> <s> : "ß"   ssharp # LATIN SMALL LETTER SHARP S
<Multi_key> <A> <A> : "Ä"   Adiaeresis # LATIN CAPITAL LETTER A WITH DIAERESIS
<Multi_key> <O> <O> : "Ö"   Odiaeresis # LATIN CAPITAL LETTER O WITH DIAERESIS
<Multi_key> <U> <U> : "Ü"   Udiaeresis # LATIN CAPITAL LETTER U WITH DIAERESIS
<Multi_key> <a> <a> : "ä"   adiaeresis # LATIN SMALL LETTER A WITH DIAERESIS
<Multi_key> <o> <o> : "ö"   odiaeresis # LATIN SMALL LETTER O WITH DIAERESIS
<Multi_key> <u> <u> : "ü"   udiaeresis # LATIN SMALL LETTER U WITH DIAERESIS

<Multi_key> <;> <s> : "ß"   ssharp # LATIN SMALL LETTER SHARP S
<Multi_key> <;> <A> : "Ä"   Adiaeresis # LATIN CAPITAL LETTER A WITH DIAERESIS
<Multi_key> <;> <O> : "Ö"   Odiaeresis # LATIN CAPITAL LETTER O WITH DIAERESIS
<Multi_key> <;> <U> : "Ü"   Udiaeresis # LATIN CAPITAL LETTER U WITH DIAERESIS
<Multi_key> <;> <a> : "ä"   adiaeresis # LATIN SMALL LETTER A WITH DIAERESIS
<Multi_key> <;> <o> : "ö"   odiaeresis # LATIN SMALL LETTER O WITH DIAERESIS
<Multi_key> <;> <u> : "ü"   udiaeresis # LATIN SMALL LETTER U WITH DIAERESIS

<Multi_key> <s> <;> : "ß"   ssharp # LATIN SMALL LETTER SHARP S
<Multi_key> <A> <;> : "Ä"   Adiaeresis # LATIN CAPITAL LETTER A WITH DIAERESIS
<Multi_key> <O> <;> : "Ö"   Odiaeresis # LATIN CAPITAL LETTER O WITH DIAERESIS
<Multi_key> <U> <;> : "Ü"   Udiaeresis # LATIN CAPITAL LETTER U WITH DIAERESIS
<Multi_key> <a> <;> : "ä"   adiaeresis # LATIN SMALL LETTER A WITH DIAERESIS
<Multi_key> <o> <;> : "ö"   odiaeresis # LATIN SMALL LETTER O WITH DIAERESIS
<Multi_key> <u> <;> : "ü"   udiaeresis # LATIN SMALL LETTER U WITH DIAERESIS

# examples:
# <Multi_key> <apostrophe> <apostrophe> : "☕"   acute # ACUTE ACCENT
# <Multi_key> <minus> <greater> : "→" U2192 # Compose - >
# <Multi_key> <colon> <parenright> : "☺" U263A   # Compose : )
# <Multi_key> <b> <t> <w> : "by the way" # Compose b t w
# <Multi_key> <less> <p> : "<p></p>" # Compose < p

И вот начало моего система Compose (слишком большой, чтобы вставить все это).

Я regex-replace'd все строки, которые имели бы то же начало, что и новые строки, которые я добавил вверху.

(Таким образом, <Multi_key> <([AaUuOo])> <\1> не получает совпадений, кроме строк, которые я добавил вверху.)

/usr/share/X11/locale/en_US.UTF-8/Compose

# UTF-8 (Unicode) compose sequence
# David.Monniaux@ens.fr
#

# Part 1 - Manual definitions

# Spacing versions of dead accents

<Multi_key> <s> <s> : "ß"   ssharp # LATIN SMALL LETTER SHARP S
<Multi_key> <A> <A> : "Ä"   Adiaeresis # LATIN CAPITAL LETTER A WITH DIAERESIS
<Multi_key> <O> <O> : "Ö"   Odiaeresis # LATIN CAPITAL LETTER O WITH DIAERESIS
<Multi_key> <U> <U> : "Ü"   Udiaeresis # LATIN CAPITAL LETTER U WITH DIAERESIS
<Multi_key> <a> <a> : "ä"   adiaeresis # LATIN SMALL LETTER A WITH DIAERESIS
<Multi_key> <o> <o> : "ö"   odiaeresis # LATIN SMALL LETTER O WITH DIAERESIS
<Multi_key> <u> <u> : "ü"   udiaeresis # LATIN SMALL LETTER U WITH DIAERESIS

(Compose-ss ==> ß по умолчанию поведение, и делает уже работает.)

2
задан 20 September 2017 в 05:39

1 ответ

Для меня просто (моя установка .XCompose перестала работать когда-то вокруг Saucy) было переключиться на UIM. Это было на самом деле безболезненно и делало то, что я хотел, что несколько шокировало меня: -)

$ sudo apt-get install uim
$ im-config -n uim

(и выйдите и войдите, чтобы перезапустить X)

Вуаля! Я могу снова печатать большие буквы! Также Shift-Ctrl-U работает (хотя я сомневаюсь, что буду его использовать). Переключение раскладок клавиатуры через меню GNOME 2 также все еще работает.

(Кроме того, вы не спрашивали, но вы должны просто иметь возможность сказать include "%L" в начале файла, чтобы автоматически найти нужную вещь. Но, может, не исправить то, что не сломалось?)

0
ответ дан 20 September 2017 в 05:39
  • 1
    Если это не проблема, Вы могли бы связаться со мной об этом ISO-образе по электронной почте? еретический в o2.pl – dziki 6 June 2015 в 23:31

Другие вопросы по тегам:

Похожие вопросы: