Ⓩàżṛåĸ ⓩ♥âñȳ Çöḿρø§æ

compose_key(V případě, že se nadpis nezobrazuje správně, jedná se o znetvořený text „zázrak zvaný Compose“)

Jedna funkce, kterou používám povážlivě často, je klávesa Compose. Pro mnohé uživatele Linuxu pravděpodobně nejde o nic nového, uživatelé jiného „operačního systému“ se asi nechytají. Je to naprosto parádní vychytávka pro psaní všech možných symbolů. Je mnohem rychlejší, než otvírání mapy znaků. Compose je tak trochu jiná modifikační klávesa, využívá totiž sekvence kláves. Podobně funguje přímé zadávání pomocí Ctrl+Shift+U (které mi, bůh ví proč, už nejede). Na rozdíl od něj sice Compose nepokrývá celé spektrum Unikódu, ale zato nepoužívá čísla, nýbrž zapamatovatelné dvojice (a méně často i vyšší n-tice) znaků.

Takže jak to funguje? Nejdřív se jedna klávesa (nebo kombinace) vyhradí jako Compose key. Úplně se nabízí klávesa Menu (ta divná dole, co jste v životě nepoužili) nebo Super (ta s okýnkem různého stupně stylisace). Protože můj báječný notebook Menu nenabízí (což je chvályhodné, dokud nepotřebujete Compose), používám kombinaci pravého Altu a Controlu. Tučňáčí uživatelé by neměli mít s nastavením problém, neosvícení mohou vyzkoušet některou z variant Compose pro Zlokna.

Klávesu máme nastavenou, je na čase kouzlit. Zadávání probíhá tak, že jednou stisknete Compose (nedržet) a pak po jednom mačkáte klávesy. Zadáte-li platnou kombinaci, zadá se příslušný znak. Výchozí nastavení obsahuje logicky utvořené kombinace pro všemožnou diakritiku:

" u → ü
= u → ű
' s → ś
` e → è
c l → ľ  # 'c' má představovat háček, lze použít i <
^ o → ô  # místo stříšky lze použít i >
, c → ç
~ n → ñ
. r → ṙ
- i → ī
u a → ă
s s → ß
o A → Å
a e → æ
/ o → ø

A takto to funguje snad pro všechny znaky, u nichž to dává alespoň trochu smysl. Pro občasné psaní cizích názvů je Compose ideální, nicméně ještě zdaleka nekončíme. Máte rádi typografické prvky?

- - . → –  # Skutečně pomlčka
- - - → —  # Dlouhá pomlčka (font je možná zobrazí stejně)
. . ­→ …    # Výpustka
? ? → ¿    # A obdobně ¡
! ? → ‽    # Interrobang
, " → „    # České levé uvozovky
< " → “    # České pravé uvozovky
< < → «    # České pravé, francouzské levé
- > → →    # S rovnítkem ⇒

Další časté použití jsou znaky měn, nezřídka se hodí horní a dolní indexy (TeXaře nepřekvapí, že se zadávají pomocí stříšky a podtržítka) a znak promile, který je jen „procento s kolečkem navíc“ a taky se tak zadává: % o → ‰. Z matematických symbolů se občas hodí ≠, ≥, ·, ° a ∞. Přijít na jejich kombinace není těžké, stejně jako objevit ©, ®, ™. Dostupných znaků je mnohem víc, některé logicky odvoditelné, jiné umně skryté. Šikovní hledači jistě odhalí i znak „srp a kladivo“ – no googling!

Co mi ale ve výchozím nastavení chybělo, je řecká abeceda. Dostupný je jen symbol µ (posloupnost m u), ovšem jako předpona SI, nikoli písmeno mí. Zde ovšem vstupuje do hry nejlepší vlastnost této funkce – plná konfigurovatelnost. Můžete si prohlédnout můj konfigurační soubor .XCompose (kódování UTF-8). Kromě alfabety obsahuje i „fajfku“ (✓) a „ironník“ (⸮) a uvozovky jsem si vzhledem k jejich častému používání je přemapoval na symetričtější dvojici kódů.

EDIT: Vstupní metoda GTK+ vaše kódy ignoruje. Proto je třeba použít jinou input method, například xim. V některém z konfiguráků XInputu případně .profile je třeba nastavit GTK_IM_MODULE=xim.

Znáte Compose? Používáte nějaké vlastní kódy? Podělte se v komentářích!