# for Emacs: -*- coding: utf-8 -*-
include "%L"
# def emit(keys, codepoint, word):
# print ('<Multi_key> %s <period>\t: "%s"\tU%04X\t\t# CIRCLED DIGIT %s' %
# (keys, unichr(codepoint), codepoint, word)).encode('utf8')
# numbers = 'one two three four five six seven eight nine ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen twenty'
# words = numbers.upper().split()
# emit('<0>', 0x24EA, "ZERO")
# for num, word in zip(range(1, 21), words):
# emit(' '.join("<%s>" % char for char in str(num)), 0x245f + num, word)
# michi's:
# Custom additions: Typography
<Multi_key> <period> <period> <period> : "…" U2026 # HORIZONTAL ELLIPSIS
# These two are already present for me:
# <Multi_key> <minus> <minus> <minus> : "—" U2014 # EM DASH
# <Multi_key> <minus> <minus> <period> : "–" U2013 # EN DASH
<Multi_key> <minus> <minus> <space> : "– " # EN DASH (followed by space)
<Multi_key> <minus> <asciitilde> <minus> : "―" U2015 # HORIZONTAL BAR
<Multi_key> <backslash> <minus> : "" U00AD # SOFT HYPHEN
<Multi_key> <comma> <space> : "‚" U201A # SINGLE LOW-9 QUOTATION MARK
<Multi_key> <comma> <comma> : "„" U201E # DOUBLE LOW-9 QUOTATION MARK
<Multi_key> <apostrophe> <space> : "’" U2019 # RIGHT SINGLE QUOTATION MARK
<Multi_key> <apostrophe> <apostrophe> : "”" U201D # RIGHT DOUBLE QUOTATION MARK
<Multi_key> <grave> <space> : "‘" U2018 # LEFT SINGLE QUOTATION MARK
<Multi_key> <grave> <grave> : "“" U201C # LEFT DOUBLE QUOTATION MARK
<Multi_key> <less> <bar> : "↵" U21B5 # DOWNWARDS ARROW WITH CORNER LEFTWARDS
<Multi_key> <o> <period> : "•" U2022 # BULLET
# By default <Multi_key> <period> <period> does this, but we broke that with the ... binding.
<Multi_key> <o> <comma> : "·" periodcentered # MIDDLE DOT
# Already present for me:
# <Multi_key> <space> <space> : " " U00A0 # NO-BREAK SPACE
# Do we want/need these?
<Multi_key> <d> <a> <g> : "†" U2020 # DAGGER
<Multi_key> <d> <d> <a> <g> : "‡" U2021 # DOUBLE DAGGER
# We already have THIN SPACE below, as <space> <apostrophe>! Keep both?
<Multi_key> <backslash> <comma> : " " U2009 # THIN SPACE
<Multi_key> <minus> <less> : "←" leftarrow # LEFTWARDS ARROW
<Multi_key> <minus> <asciicircum> : "↑" uparrow # UPWARDS ARROW
<Multi_key> <minus> <greater> : "→" rightarrow # RIGHTWARDS ARROW
<Multi_key> <minus> <v> : "↓" downarrow # DOWNWARDS ARROW
<Multi_key> <less> <minus> <greater> : "↔" U2194 # LEFT RIGHT ARROW (kragen's)
<Multi_key> <Left> <Left> : "←" leftarrow # LEFTWARDS ARROW
<Multi_key> <Up> <Up> : "↑" uparrow # UPWARDS ARROW
<Multi_key> <Right> <Right> : "→" rightarrow # RIGHTWARDS ARROW
<Multi_key> <Down> <Down> : "↓" downarrow # DOWNWARDS ARROW
<Multi_key> <Left> <Right> : "↔" U2194 # LEFT RIGHT ARROW (kragen's)
<Multi_key> <Up> <Down> : "↕" U2195 # UP DOWN ARROW (kragen's)
<Multi_key> <F> <Left> : "☚" U261A # BLACK LEFT POINTING INDEX
<Multi_key> <F> <Right> : "☛" U261B # BLACK RIGHT POINTING INDEX
<Multi_key> <f> <Left> : "☜" U261C # WHITE LEFT POINTING INDEX
<Multi_key> <f> <Up> : "☝" U261D # WHITE UP POINTING INDEX
<Multi_key> <f> <Right> : "☞" U261E # WHITE RIGHT POINTING INDEX
<Multi_key> <f> <Down> : "☟" U261F # WHITE DOWN POINTING INDEX
# For some logical statements. I prefer doubled arrows for implication.
<Multi_key> <equal> <greater> : "⇒" U21D2 # RIGHTWARDS DOUBLE ARROW
<Multi_key> <equal> <less> : "⇐" U21D0 # LEFTWARDS DOUBLE ARROW
<Multi_key> <less> <minus> <equal> <greater> : "⇔" U21D4 # LEFT RIGHT DOUBLE ARROW
<Multi_key> <equal> <Right> <Right> : "⇒" U21D2 # RIGHTWARDS DOUBLE ARROW
<Multi_key> <equal> <Left> <Left> : "⇐" U21D0 # LEFTWARDS DOUBLE ARROW
<Multi_key> <equal> <Left> <Right> : "⇔" U21D4 # LEFT RIGHT DOUBLE ARROW
<Multi_key> <equal> <Up> <Up> : "⇑" U21D1 # UPWARDS DOUBLE ARROW
<Multi_key> <equal> <Down> <Down> : "⇓" U21D3 # DOWNWARDS DOUBLE ARROW
<Multi_key> <equal> <Up> <Down> : "⇕" U21D5 # UP DOWN DOUBLE ARROW
# These are just too cool-looking not to have (if your font supports them)
<Multi_key> <equal> <period> <equal> : "⸎" U2E0E # EDITORIAL CORONIS
<Multi_key> <ampersand> <p> <a> <l> <m> : "⸙" U2E19 # PALM BRANCH
<Multi_key> <o> <parenright> :"ɔ" U0254 # LATIN SMALL LETTER OPEN O
<Multi_key> <O> <parenright> :"Ɔ" U0186 # LATIN CAPITAL LETTER OPEN O
<Multi_key> <f> <f> : "ff" UFB00 # LATIN LIGATURE FF
<Multi_key> <f> <i> : "fi" UFB01 # LATIN LIGATURE FI
<Multi_key> <f> <l> : "fl" UFB02 # LATIN LIGATURE FL
<Multi_key> <s> <t> : "st" UFB06 # LATIN SMALL LIGATURE ST
<Multi_key> <f> <t> : "ſt" UFB05 # LATIN SMALL LIGATURE LONG S T
# allow me still to use my ſ key, okay?
<Multi_key> <U017F> <t> : "ſt" UFB05 # LATIN SMALL LIGATURE LONG S T
# ß is already available as <s><s> I think. But now it comes in industrial size!
<Multi_key> <S> <S> : "ẞ" U1E9E # LATIN CAPITAL LETTER SHARP S
# Eventually we'll have to look over the really crazy-cakes Latin letters
# they're adding as "mediævalist extensions"
# Custom additions: Mathematical symbols
<Multi_key> <exclam> <equal> : "≠" U2260 # NOT EQUAL TO
<Multi_key> <slash> <equal> : "≠" U2260 # NOT EQUAL TO
<Multi_key> <less> <equal> : "≤" U2264 # LESS-THAN OR EQUAL TO
<Multi_key> <greater> <equal> : "≥" U2265 # GREATER-THAN OR EQUAL TO
<Multi_key> <exclam> <less> <greater> : "≸" U2278 # NEITHER LESS-THAN NOR GREATER-THAN
# MUCH is usually enough for me. No need for VERY.
<Multi_key> <plus> <less> : "≪" U226A # MUCH LESS-THAN
<Multi_key> <plus> <greater> : "≫" U226B # MUCH GREATER-THAN
# Damn. That makes this conflict with the standard plus plus -> #
<Multi_key> <plus> <plus> <less> : "⋘" U22D8 # VERY MUCH LESS-THAN
<Multi_key> <plus> <plus> <greater> : "⋙" U22D9 # VERY MUCH GREATER-THAN
<Multi_key> <i> <n> : "∈" U2208 # ELEMENT OF
<Multi_key> <exclam> <i> <n> : "∉" U2209 # NOT AN ELEMENT OF
<Multi_key> <U2208> <slash> : "∉" U2209 # NOT AN ELEMENT OF (I have ∈ on my keyboard...)
<Multi_key> <n> <i> : "∋" U220B # CONTAINS AS MEMBER (I hope this doesn't conflict)
<Multi_key> <slash> <n> <i> : "∌" U220C # DOES NOT CONTAIN AS MEMBER
# <exclam><n><i> would conflict, with <exclam> <n> for N WITH UNDERDOT, etc.
<Multi_key> <U220B> <slash> : "∌" U220C # DOES NOT CONTAIN AS MEMBER
<Multi_key> <asciitilde> <equal> : "≅" U2245 # APPROXIMATELY EQUAL TO (It actually means "congruent"!)
<Multi_key> <colon> <equal> : "≔" U2254 # COLON EQUALS
<Multi_key> <equal> <question> : "≟" U225f # QUESTIONED EQUAL TO
<Multi_key> <equal> <d> <e> <f> : "≝" U225D # EQUAL TO BY DEFINITION
<Multi_key> <equal> <equal> : "≡" U2261 # IDENTICAL TO
# Using <slash> conflicts.
<Multi_key> <equal> <bar> <equal> : "≢" U2262 # NOT IDENTICAL TO
# We already have ±
<Multi_key> <minus> <plus> : "∓" U2213 # MINUS OR PLUS SIGN
<Multi_key> <s> <q> : "√" U221A # SQUARE ROOT
# “(Note: I had put the backslash in position 5/15. It enabled the
# ALGOL “and” to be “/\” and the “or” to be “\/”.)” --- Bob Bemer,
# http://home.ccil.org/~remlaps/www.bobbemer.com/BRACES.HTM, quoting
# himself in “A view of the history of the ISO character code”, 1972
<Multi_key> <slash> <backslash> : "∧" U2227 # LOGICAL AND
<Multi_key> <backslash> <slash> : "∨" U2228 # LOGICAL OR
<Multi_key> <backslash> <underscore> <slash> : "⊻" U22BB # XOR
<Multi_key> <o> <asterisk> : "∘" U2218 # RING OPERATOR (function composition)
<Multi_key> <0> <slash> : "∅" U2205 # EMPTY SET (thanks jsled!)
<Multi_key> <slash> <0> : "∅" U2205 # EMPTY SET
# I'm hoping { can work as a set mnemonic
<Multi_key> <braceleft> <U> : "∪" U222A # UNION
<Multi_key> <braceleft> <asciicircum> : "∩" U2229 # INTERSECTION
<Multi_key> <braceleft> <parenleft> : "⊂" U2282 # SUBSET OF
<Multi_key> <braceleft> <parenright> : "⊃" U2283 # SUPERSET OF
<Multi_key> <E> <E> : "∃" U2203 # THERE EXISTS
# We can't use ! E E, because ! E maps to E-WITH-UNDERDOT.
<Multi_key> <slash> <E> <E> : "∄" U2204 # THERE DOES NOT EXIST
<Multi_key> <A> <A> : "∀" U2200 # FOR ALL
<Multi_key> <ampersand> <Q> <E> <D> : "∎" U220E # END OF PROOF
<Multi_key> <8> <8> : "∞" U221E # INFINITY
<Multi_key> <ampersand> <a> <l> <e> <p> <h> : "ℵ" U2135 # ALEF SYMBOL
<Multi_key> <ampersand> <a> <l> <e> <p> <0> : "ℵ₀" # ALEF Null
<Multi_key> <ampersand> <a> <l> <e> <p> <1> : "ℵ₁" # ALEF One
<Multi_key> <ampersand> <a> <l> <e> <f> : "ℵ" U2135 # ALEF SYMBOL
<Multi_key> <parenleft> <plus> <parenright> : "⊕" U2295 # CIRCLED PLUS
<Multi_key> <parenleft> <minus> <parenright> : "⊖" U2296 # CIRCLED MINUS
<Multi_key> <parenleft> <x> <x> <parenright> : "⊗" U2297 # CIRCLED TIMES
<Multi_key> <parenleft> <slash> <parenright> : "⊘" U2298 # CIRCLED DIVISION SLASH
<Multi_key> <parenleft> <asterisk> <parenright> : "⊛" U229B # CIRCLED ASTERISK OPERATOR
<Multi_key> <period> <quotedbl> : "∴" U2234 # THEREFORE
<Multi_key> <quotedbl> <period> : "∵" U2235 # BECAUSE
<Multi_key> <percent> <percent> : "‱" U2031 # PER TEN THOUSAND (basis points)
<Multi_key> <asciicircum> <greater> : "⃗" U20D7 # COMBINING RIGHT ARROW ABOVE (vector)
# There's a whole passel of these guys starting at U+1D538 but I have no fonts for those.
<Multi_key> <bar> <C> : "ℂ" U2102 # DOUBLE-STRUCK CAPITAL C (set of complex numbers)
<Multi_key> <bar> <N> : "ℕ" U2115 # DOUBLE-STRUCK CAPITAL N (natural number)
<Multi_key> <bar> <P> : "ℙ" U2119 # DOUBLE-STRUCK CAPITAL P
<Multi_key> <bar> <Q> : "ℚ" U211A # DOUBLE-STRUCK CAPITAL Q (set of rational numbers)
<Multi_key> <bar> <R> : "ℝ" U211D # DOUBLE-STRUCK CAPITAL R (set of real numbers)
<Multi_key> <bar> <Z> : "ℤ" U2124 # DOUBLE-STRUCK CAPITAL Z (set of integers)
<Multi_key> <bar> <H> : "ℍ" U210d # DOUBLE-STRUCK CAPITAL H
<Multi_key> <bar> <e> : "ⅇ" U2147 # DOUBLE-STRUCK ITALIC SMALL E
<Multi_key> <bar> <i> : "ⅈ" U2148 # DOUBLE-STRUCK ITALIC SMALL I
<Multi_key> <bar> <j> : "ⅉ" U2149 # DOUBLE-STRUCK ITALIC SMALL J
<Multi_key> <bar> <asterisk> <p> : "ℼ" U213C # DOUBLE-STRUCK SMALL PI
<Multi_key> <bar> <Greek_pi> : "ℼ" U213C # DOUBLE-STRUCK SMALL PI
<Multi_key> <bar> <asterisk> <P> : "ℿ" U213C # DOUBLE-STRUCK CAPITAL PI
<Multi_key> <bar> <Greek_PI> : "ℿ" U213C # DOUBLE-STRUCK CAPITAL PI
<Multi_key> <bar> <asterisk> <S> : "⅀" U2140 # DOUBLE-STRUCK N-ARY SUMMATION
<Multi_key> <bar> <Greek_SIGMA> : "⅀" U2140 # DOUBLE-STRUCK N-ARY SUMMATION
<Multi_key> <l> <l> : "ℓ" U2113 # SCRIPT SMALL L
<Multi_key> <bracketleft> <bracketleft> : "⊏" U228F # SQUARE IMAGE OF
<Multi_key> <bracketleft> <equal> : "⊑" U2291 # SQUARE IMAGE OF OR EQUAL TO
<Multi_key> <bracketleft> <underscore> : "⊑" U2291 # SQUARE IMAGE OF OR EQUAL TO
<Multi_key> <bracketright> <bracketright>: "⊐" U2290 # SQUARE ORIGINAL OF
<Multi_key> <bracketright> <equal> : "⊒" U2291 # SQUARE ORIGINAL OF OR EQUAL TO
<Multi_key> <bracketright> <underscore> : "⊒" U2291 # SQUARE ORIGINAL OF OR EQUAL TO
# If I did more Haskell, I'd want this more:
<Multi_key> <underscore> <bar> <underscore>: "⊥" U22A5 # UP TACK (bottom)
# Handy for UNIX filenames... but XXX conflicts with standard <Multi_key> <slash> <slash> → "\"
<Multi_key> <slash> <slash> : "⁄" U2044 # FRACTION SLASH
# The system file gives us subscript numbers, plus/minus, and parens. But
# there are letters missing. It would be nice to have at least a few of them.
<Multi_key> <underscore> <i> : "ᵢ" U1D62 # LATIN SUBSCRIPT SMALL LETTER I
<Multi_key> <underscore> <o> : "ₒ" U2092 # LATIN SUBSCRIPT SMALL LETTER O
<Multi_key> <underscore> <x> : "ₓ" U2093 # LATIN SUBSCRIPT SMALL LETTER X
<Multi_key> <underscore> <j> : "ⱼ" U2C7C # LATIN SUBSCRIPT SMALL LETTER J
# I can't believe there's no subscript N!
# Custom additions: Greek letters. Mapping corresponds to Emacs Greek
# input method. Aristotle Pagaltzis informs me that this is the
# standard Greek keyboard layout, which is good.
<Multi_key> <asterisk> <a> : "α" U03B1 # GREEK SMALL LETTER ALPHA
<Multi_key> <asterisk> <b> : "β" U03B2 # GREEK SMALL LETTER BETA
<Multi_key> <asterisk> <c> : "ψ" U03C8 # GREEK SMALL LETTER PSI
<Multi_key> <asterisk> <d> : "δ" U03B4 # GREEK SMALL LETTER DELTA
<Multi_key> <asterisk> <e> : "ε" U03B5 # GREEK SMALL LETTER EPSILON
<Multi_key> <asterisk> <f> : "φ" U03C6 # GREEK SMALL LETTER PHI
<Multi_key> <asterisk> <g> : "γ" U03B3 # GREEK SMALL LETTER GAMMA
<Multi_key> <asterisk> <h> : "η" U03B7 # GREEK SMALL LETTER ΕΤΑ
<Multi_key> <asterisk> <i> : "ι" U03B9 # GREEK SMALL LETTER ΙΟΤΑ
<Multi_key> <asterisk> <j> : "ξ" U03BE # GREEK SMALL LETTER XI
<Multi_key> <asterisk> <k> : "κ" U03BA # GREEK SMALL LETTER KAPPA
<Multi_key> <asterisk> <l> : "λ" U03BB # GREEK SMALL LETTER LAMBDA
<Multi_key> <asterisk> <m> : "μ" U03BC # GREEK SMALL LETTER MU
<Multi_key> <asterisk> <n> : "ν" U03BD # GREEK SMALL LETTER NU
<Multi_key> <asterisk> <o> : "ο" U03BF # GREEK SMALL LETTER OMICRON
<Multi_key> <asterisk> <p> : "π" U03C0 # GREEK SMALL LETTER PI
# no mapping for q; in Emacs that's ";"
# U037E GREEK QUESTION MARK is canonically equivalent to U003B SEMICOLON.
<Multi_key> <asterisk> <r> : "ρ" U03C1 # GREEK SMALL LETTER RHO
<Multi_key> <asterisk> <s> : "σ" U03C3 # GREEK SMALL LETTER SIGMA
<Multi_key> <asterisk> <t> : "τ" U03C4 # GREEK SMALL LETTER TAU
<Multi_key> <asterisk> <u> : "θ" U03B8 # GREEK SMALL LETTER THETA
<Multi_key> <asterisk> <v> : "ω" U03C9 # GREEK SMALL LETTER OMEGA
<Multi_key> <asterisk> <w> : "ς" U03C2 # GREEK SMALL LETTER FINAL SIGMA
<Multi_key> <asterisk> <x> : "χ" U03C7 # GREEK SMALL LETTER CHI
<Multi_key> <asterisk> <y> : "υ" U03C5 # GREEK SMALL LETTER UPSILON
<Multi_key> <asterisk> <z> : "ζ" U03B6 # GREEK SMALL LETTER ZETA
# Capital greek letters.
<Multi_key> <asterisk> <A> : "Α" U0391 # GREEK CAPITAL LETTER ALPHA
<Multi_key> <asterisk> <B> : "Β" U0392 # GREEK CAPITAL LETTER BETA
<Multi_key> <asterisk> <C> : "Ψ" U03A8 # GREEK CAPITAL LETTER PSI
<Multi_key> <asterisk> <D> : "Δ" U0394 # GREEK CAPITAL LETTER DELTA
<Multi_key> <asterisk> <E> : "Ε" U0395 # GREEK CAPITAL LETTER EPSILON
<Multi_key> <asterisk> <F> : "Φ" U03A6 # GREEK CAPITAL LETTER PHI
<Multi_key> <asterisk> <G> : "Γ" U0393 # GREEK CAPITAL LETTER GAMMA
<Multi_key> <asterisk> <H> : "Η" U0397 # GREEK CAPITAL LETTER ΕΤΑ
<Multi_key> <asterisk> <I> : "Ι" U0399 # GREEK CAPITAL LETTER ΙΟΤΑ
<Multi_key> <asterisk> <J> : "Ξ" U039E # GREEK CAPITAL LETTER XI
<Multi_key> <asterisk> <K> : "Κ" U039A # GREEK CAPITAL LETTER KAPPA
<Multi_key> <asterisk> <L> : "Λ" U039B # GREEK CAPITAL LETTER LAMBDA
<Multi_key> <asterisk> <M> : "Μ" U039C # GREEK CAPITAL LETTER MU
<Multi_key> <asterisk> <N> : "Ν" U039D # GREEK CAPITAL LETTER NU
<Multi_key> <asterisk> <O> : "Ο" U039F # GREEK CAPITAL LETTER OMICRON
<Multi_key> <asterisk> <P> : "Π" U03A0 # GREEK CAPITAL LETTER PI
# no mapping for Q; in Emacs that's ":"
<Multi_key> <asterisk> <R> : "Ρ" U03A1 # GREEK CAPITAL LETTER RHO
<Multi_key> <asterisk> <S> : "Σ" U03A3 # GREEK CAPITAL LETTER SIGMA
<Multi_key> <asterisk> <T> : "Τ" U03A4 # GREEK CAPITAL LETTER TAU
<Multi_key> <asterisk> <U> : "Θ" U0398 # GREEK CAPITAL LETTER THETA
<Multi_key> <asterisk> <V> : "Ω" U03A9 # GREEK CAPITAL LETTER OMEGA
# Emacs maps W to "Σ", but I think that’s stupid
# I think that's from the Greek keyboard.
<Multi_key> <asterisk> <X> : "Χ" U03A7 # GREEK CAPITAL LETTER CHI
<Multi_key> <asterisk> <Y> : "Υ" U03A5 # GREEK CAPITAL LETTER UPSILON
<Multi_key> <asterisk> <Z> : "Ζ" U0396 # GREEK CAPITAL LETTER ZETA
# Some archaic Greek. If we only wanted *normal* characters we wouldn't be
# doing this at all!
# "period" will indicate a sort of variant of some kind; asterisk is still the "greek" marker
<Multi_key> <asterisk> <period> <p> : "ϖ" U03D6 # GREEK PI SYMBOL
# Reserving .f in case we want PHI SYMBOL. Digamma was "w" sound anyway.
<Multi_key> <asterisk> <period> <w> : "ϝ" U03DD # GREEK SMALL LETTER DIGAMMA
<Multi_key> <asterisk> <period> <W> : "Ϝ" U03DC # GREEK CAPITAL LETTER DIGAMMA
<Multi_key> <asterisk> <Q> : "Ϟ" U03DE # GREEK LETTER QOPPA
<Multi_key> <asterisk> <q> : "ϟ" U03DF # GREEK SMALL LETTER QOPPA
<Multi_key> <asterisk> <period> <Q> : "Ϙ" U03D8 # GREEK LETTER ARCHAIC QOPPA
<Multi_key> <asterisk> <period> <q> : "ϙ" U03D9 # GREEK SMALL LETTER ARCHAIC QOPPA
<Multi_key> <asterisk> <ampersand> : "ϗ" U03D7 # GREEK KAI SYMBOL
<Multi_key> <asterisk> <period> <Z> : "Ϡ" U03E0 # GREEK LETTER SAMPI
<Multi_key> <asterisk> <period> <z> : "ϡ" U03E1 # GREEK SMALL LETTER SAMPI
<Multi_key> <asterisk> <period> <period> <Z> : "Ͳ" U0372 # GREEK CAPITAL LETTER ARCHAIC SAMPI
<Multi_key> <asterisk> <period> <period> <z> : "ͳ" U0373 # GREEK SMALL LETTER ARCHAIC SAMPI
# Sorry, couldn't think of better ones for these. Might want .s for SAN.
<Multi_key> <asterisk> <question> : "Ϛ" U03DA # GREEK LETTER STIGMA
<Multi_key> <asterisk> <slash> : "ϛ" U03DB # GREEK SMALL LETTER STIGMA
<Multi_key> <asterisk> <apostrophe> : "ʹ" U02B9 # MODIFIER LETTER PRIME, canonically equivalent to U0374 GREEK NUMERAL SIGN
# While we're at it...
<Multi_key> <asterisk> <period> <apostrophe> : "′" U2032 # PRIME
<Multi_key> <asterisk> <period> <quotedbl> : "″" U2033 # DOUBLE PRIME
<Multi_key> <asterisk> <comma> : "͵" U0375 # GREEK LOWER NUMERAL SIGN (for thousands)
# Do we want BETA SYMBOL, RHO SYMBOL, KAPPA SYMBOL, PHI SYMBOL, THETA SYMBOL?
# The format makes them obvious enough I guess. PI SYMBOL is different enough
# that there's no question, and it is separate from these.
<Multi_key> <asterisk> <period> <b> : "ϐ" U03D0 # GREEK BETA SYMBOL
<Multi_key> <asterisk> <period> <u> : "ϑ" U03D1 # GREEK THETA SYMBOL
<Multi_key> <asterisk> <period> <Y> : "ϒ" U03D2 # GREEK UPSILON WITH HOOK SYMBOL
<Multi_key> <asterisk> <period> <f> : "ϕ" U03D5 # GREEK PHI SYMBOL
<Multi_key> <asterisk> <period> <k> : "ϰ" U03F0 # GREEK KAPPA SYMBOL
<Multi_key> <asterisk> <period> <r> : "ϱ" U03F1 # GREEK RHO SYMBOL
<Multi_key> <asterisk> <period> <U> : "ϴ" U03F4 # GREEK CAPITAL THETA SYMBOL
<Multi_key> <asterisk> <period> <e> : "ϵ" U03F5 # GREEK LUNATE EPSILON SYMBOL
# Not doing the lunate sigmas and dotted versions thereof... What about SAN, which is at least a letter?
# If you wanted to actually type in Greek, you would also need άίέ
# etc. But you would probably just switch to a Greek keyboard layout.
# Custom additions: fractions
<Multi_key> <1> <3> : "⅓" U2153 # VULGAR FRACTION ONE THIRD
<Multi_key> <2> <3> : "⅔" U2154 # VULGAR FRACTION TWO THIRDS
# more extensive fractions from jsled
<Multi_key> <1> <5> : "⅕" U2155 # VULGAR FRACTION ONE FIFTH
<Multi_key> <2> <5> : "⅖" U2156 # VULGAR FRACTION TWO FIFTHS
<Multi_key> <3> <5> : "⅗" U2157 # VULGAR FRACTION THREE FIFTHS
<Multi_key> <4> <5> : "⅘" U2158 # VULGAR FRACTION FOUR FIFTHS
<Multi_key> <1> <6> : "⅙" U2159 # VULGAR FRACTION ONE SIXTH
<Multi_key> <5> <6> : "⅚" U215A # VULGAR FRACTION FIVE SIXTHS
<Multi_key> <1> <8> : "⅛" U215B # VULGAR FRACTION ONE EIGHTH
<Multi_key> <3> <8> : "⅜" U215C # VULGAR FRACTION THREE EIGHTHS
<Multi_key> <5> <8> : "⅝" U215D # VULGAR FRACTION FIVE EIGHTHS
<Multi_key> <7> <8> : "⅞" U215E # VULGAR FRACTION SEVEN EIGHTHS
# How about roman numerals? Percent for numerical mnemonic?
# Does this go against the spirit of this file? These symbols are accessible
# as regular letters and would look okay. Maybe only for I-X?
<Multi_key> <percent> <1> : "ⅰ" U2170 # SMALL ROMAN NUMERAL ONE
<Multi_key> <percent> <2> : "ⅱ" U2171 # SMALL ROMAN NUMERAL TWO
<Multi_key> <percent> <3> : "ⅲ" U2172 # SMALL ROMAN NUMERAL THREE
<Multi_key> <percent> <4> : "ⅳ" U2173 # SMALL ROMAN NUMERAL FOUR
<Multi_key> <percent> <5> : "ⅴ" U2174 # SMALL ROMAN NUMERAL FIVE
<Multi_key> <percent> <6> : "ⅵ" U2175 # SMALL ROMAN NUMERAL SIX
<Multi_key> <percent> <7> : "ⅶ" U2176 # SMALL ROMAN NUMERAL SEVEN
<Multi_key> <percent> <8> : "ⅷ" U2177 # SMALL ROMAN NUMERAL EIGHT
<Multi_key> <percent> <9> : "ⅸ" U2178 # SMALL ROMAN NUMERAL NINE
<Multi_key> <percent> <x> : "ⅹ" U2179 # SMALL ROMAN NUMERAL TEN
# How do we handle eleven and twelve?
<Multi_key> <percent> <underscore> <1> : "ⅺ" U217A # SMALL ROMAN NUMERAL ELEVEN
<Multi_key> <percent> <underscore> <2> : "ⅻ" U217B # SMALL ROMAN NUMERAL TWELVE
# That okay?
<Multi_key> <percent> <l> : "ⅼ" U217C # SMALL ROMAN NUMERAL FIFTY
<Multi_key> <percent> <c> : "ⅽ" U217D # SMALL ROMAN NUMERAL ONE HUNDRED
<Multi_key> <percent> <d> : "ⅾ" U217E # SMALL ROMAN NUMERAL FIVE HUNDRED
<Multi_key> <percent> <m> : "ⅿ" U217F # SMALL ROMAN NUMERAL ONE THOUSAND
###
<Multi_key> <percent> <0> <1> : "Ⅰ" U2160 # ROMAN NUMERAL ONE
<Multi_key> <percent> <0> <2> : "Ⅱ" U2161 # ROMAN NUMERAL TWO
<Multi_key> <percent> <0> <3> : "Ⅲ" U2162 # ROMAN NUMERAL THREE
<Multi_key> <percent> <0> <4> : "Ⅳ" U2163 # ROMAN NUMERAL FOUR
<Multi_key> <percent> <0> <5> : "Ⅴ" U2164 # ROMAN NUMERAL FIVE
<Multi_key> <percent> <0> <6> : "Ⅵ" U2165 # ROMAN NUMERAL SIX
<Multi_key> <percent> <0> <7> : "Ⅶ" U2166 # ROMAN NUMERAL SEVEN
<Multi_key> <percent> <0> <8> : "Ⅷ" U2167 # ROMAN NUMERAL EIGHT
<Multi_key> <percent> <0> <9> : "Ⅸ" U2168 # ROMAN NUMERAL NINE
<Multi_key> <percent> <0> <x> : "Ⅹ" U2169 # ROMAN NUMERAL TEN
# How do we handle eleven and twelve?
<Multi_key> <percent> <underscore> <0> <1> : "Ⅺ" U216A # ROMAN NUMERAL ELEVEL
<Multi_key> <percent> <underscore> <0> <2> : "Ⅻ" U216B # ROMAN NUMERAL TWELVE
<Multi_key> <percent> <0> <l> : "Ⅼ" U216C # ROMAN NUMERAL FIFTY
<Multi_key> <percent> <0> <c> : "Ⅽ" U216D # ROMAN NUMERAL ONE HUNDRED
<Multi_key> <percent> <0> <d> : "Ⅾ" U216E # ROMAN NUMERAL FIVE HUNDRED
<Multi_key> <percent> <0> <m> : "Ⅿ" U216F # ROMAN NUMERAL ONE THOUSAND
<Multi_key> <percent> <X> : "Ⅹ" U2169 # ROMAN NUMERAL TEN
<Multi_key> <percent> <L> : "Ⅼ" U216C # ROMAN NUMERAL FIFTY
<Multi_key> <percent> <C> : "Ⅽ" U216D # ROMAN NUMERAL ONE HUNDRED
<Multi_key> <percent> <D> : "Ⅾ" U216E # ROMAN NUMERAL FIVE HUNDRED
<Multi_key> <percent> <M> : "Ⅿ" U216F # ROMAN NUMERAL ONE THOUSAND
# Custom additions: for chat (kragen)
<Multi_key> <parenleft> <colon> : "☻" U263B # BLACK SMILING FACE
<Multi_key> <colon> <parenright> : "☺" U263A # WHITE SMILING FACE
<Multi_key> <colon> <parenleft> : "☹" U2639 # WHITE FROWNING FACE
<Multi_key> <colon> <asciitilde> : "⍨" U2368 # APL FUNCTIONAL SYMBOL TILDE DIAERESIS
<Multi_key> <colon> <bar> : "⸚" U2E1A # HYPHEN WITH DIAERESIS
<Multi_key> <exclam> <question> : "‽" U203D # INTERROBANG
<Multi_key> <question> <exclam> : "‽" U203D # INTERROBANG (in case you can’t remember the order)
<Multi_key> <questiondown> <exclamdown> : "⸘" U2E18 # INVERTED INTERROBANG (if you have a ¡ key. Otheriwise...? "?i" maybe?
<Multi_key> <exclamdown> <questiondown> : "⸘" U2E18 # INVERTED INTERROBANG (if you have a ¡ key. Otheriwise...? "?i" maybe?
# Totally going to need 2E2E REVERSED QUESTION MARK as soon as it starts being
# supported. Also big hunks of Latin Extended-D, A720- et seq.
<Multi_key> <question> <less> : "⸮" U2E2E # REVERSED QUESTION MARK
<Multi_key> <less> <3> : "♥" U2665 # BLACK HEART SUIT
<Multi_key> <3> <3> : "♣" U2663 # BLACK CLUB SUIT
<Multi_key> <less> <greater> : "♢" U2662 # WHITE DIAMOND SUIT
<Multi_key> <3> <minus> : "♠" U2660 # BLACK SPADE SUIT
<Multi_key> <E> <greater> : "♡" U2661 # WHITE HEART SUIT
<Multi_key> <ampersand> <p> <c> : "☮" U262E # PEACE SYMBOL
<Multi_key> <ampersand> <y> <y> : "☯" U262F # YIN YANG
# For some reason, I don't really like these word-based mnemonics. But until we have something better... -clsn
# are the ampersand versions better? -kragen
<Multi_key> <ampersand> <t> <e> <l> : "☎" U260E # BLACK TELEPHONE
<Multi_key> <ampersand> <t> <e> <a> : "☕" U2615 # HOT BEVERAGE
# These last two bother me less, though they can still be improved.
# Other possibly useful symbols:
# 2668 HOT SPRINGS (for chat, for running off to shower?)
# 2624 CADEUCEUS
# 2611 BALLOT BOX WITH CHECK, or some other checkmark
# Better keystrokes anyone?
<Multi_key> <ampersand> <c> <h> <k> : "☑" U2611 # BALLOT BOX WITH CHECK
# 267B BLACK UNIVERSAL RECYCLING SYMBOL
# 269C FLEUR-DE-LIS (maybe <f><d><l> would be okay)
<Multi_key> <ampersand> <a> <t> <o> <m> : "⚛" U269B # ATOM SYMBOL
<Multi_key> <ampersand> <c> <c> <c> <p> : "☭" U262D # HAMMER AND SICKLE
<Multi_key> <slash> <exclam> <backslash> : "⚠" U26A0 # WARNING SIGN
<Multi_key> <exclam> <asciicircum> : "⚠" U26A0 # WARNING SIGN
<Multi_key> <ampersand> <z> <a> <p> : "⚡" U26A1 # HIGH VOLTAGE SIGN
<Multi_key> <ampersand> <r> <a> : "☢" U2622 # RADIOACTIVE SIGN
<Multi_key> <ampersand> <b> <h> : "☣" U2623 # BIOHAZARD SIGN
# 26B0 COFFIN ?
# One of the SNOWFLAKEs?
# SNOWMAN? COMET? ANCHOR? WHEELCHAIR SYMBOL?
# Maybe if we go with having a "word" symbol and spelling out lots and
# lots of whole words, we can have all the planets.
# "Word Symbol" Notion:
# Have a semi-reserved symbol reserved for this. Probably ampersand.
# Something that isn't already used for much. Then you can happily make
# all the &-j-u-p-i-t-e-r and &-a-r-i-e-s combos you want without worrying
# that you'll run into a combination already used, like "ca"=ǎ or something.
# (unless you have whole words that are prefixes). Worth doing?
# I think so. -Kragen
#
# I already have STAR OF DAVID on another map.
# 2B1A DOTTED SQUARE -- and/or some other hollow square/rectangle?
# 231A, 231B -- WATCH and HOURGLASS
# 2328 KEYBOARD?
# 23D4 METRICAL LONG OVER TWO SHORTS a.k.a. METRICAL BOOBS
# 0950 DEVANAGARI OM?
# 214C PER SIGN?
# 212E ESTIMATED SYMBOL?
<Multi_key> <o> <minus> <plus> : "♀" U2640 # FEMALE SIGN
<Multi_key> <o> <minus> <greater> : "♂" U2642 # MALE SIGN
<Multi_key> <O> <X>: "☠" U2620 # SKULL AND CROSSBONES
# Can we get better keycodes for these?
<Multi_key> <equal> <minus> : "☞" U261E # WHITE RIGHT POINTING INDEX
<Multi_key> <minus> <equal> : "☜" U261C # WHITE LEFT POINTING INDEX
<Multi_key> <asterisk> <asterisk> :"★" U2605 # BLACK STAR
<Multi_key> <asterisk> <0> :"☆" U2606 # WHITE STAR
<Multi_key> <asterisk> <3> :"⁂" U2042 # ASTERISM
<Multi_key> <asterisk> <numbersign> :"✯" U272F # PINWHEEL STAR
<Multi_key> <at> <numbersign> : "⌘" U2318 # PLACE OF INTEREST SIGN
<Multi_key> <space> <apostrophe> : " " U2009 # THIN SPACE
<Multi_key> <parenleft> <parenright>: "◌" U25CC # DOTTED CIRCLE
<Multi_key> <asterisk> <parenleft> : "﴾" UFD3E # ORNATE LEFT PARENTHESIS
<Multi_key> <asterisk> <parenright> : "﴿" UFD3F # ORNATE RIGHT PARENTHESIS
<Multi_key> <k> <s> : "ʘ" U0298 # LATIN LETTER BILABIAL CLICK (kiss sound)
<Multi_key> <bar> <greater> : "‣" U2023 # TRIANGULAR BULLET
<Multi_key> <asciicircum> <minus> : "⁻" U207B # SUPERSCRIPT MINUS
<Multi_key> <asciitilde> <asciitilde> : "≈" U2248 # ALMOST EQUAL TO
<Multi_key> <s> <h> : "ʃ" U0283 # LATIN SMALL LETTER ESH
<Multi_key> <z> <h> : "ʒ" U0292 # LATIN SMALL LETTER EZH
<Multi_key> <l> <h> : "ɬ" U026C # LATIN SMALL LETTER L WITH BELT
<Multi_key> <l> <3> : "ɮ" U026E # LATIN SMALL LETTER LEZH
<Multi_key> <y> <g> : "ȝ" U021D # LATIN SMALL LETTER YOGH
<Multi_key> <Y> <G> : "Ȝ" U021C # LATIN CAPITAL LETTER YOGH
<Multi_key> <question> <period> : "ʔ" U0294 # LATIN LETTER GLOTTAL STOP
# ɪ? ɚ? ɣ? ɬ? ɮ? ɯ? ʊ? ᴥ? Important enough to add?
<Multi_key> <N> <o> : "№" U2116 # NUMERO SIGN
# There are all kinds of awesome combining characters in the U+0300 page.
# However, I don’t know how I would use a lot of them. x͜͡y?
# There are a bunch of other awesome combining characters like U+20E0
<Multi_key> <asterisk> <period> <period> <period> : "๛" U0E5B # THAI CHARACTER KHOMUT (end of chapter)
#
# Music stuff. # is the music mnemonic.
<Multi_key> <numbersign> <b> : "♭" U266d # MUSIC FLAT SIGN
<Multi_key> <numbersign> <f> : "♮" U266e # MUSIC NATURAL SIGN
<Multi_key> <numbersign> <equal> : "♮" U266e # MUSIC NATURAL SIGN
<Multi_key> <numbersign> <numbersign> : "♯" U266f # MUSIC SHARP SIGN
<Multi_key> <numbersign> <G> : "𝄞" U0001d11e # MUSICAL SYMBOL G CLEF
<Multi_key> <numbersign> <F> : "𝄢" U0001d122 # MUSICAL SYMBOL F CLEF
<Multi_key> <numbersign> <C> : "𝄡" U0001d121 # MUSICAL SYMBOL C CLEF
<Multi_key> <numbersign> <o> <slash> : "♪" U266a # EIGHTH NOTE
<Multi_key> <numbersign> <o> <o> : "♫" U266b # BEAMED EIGHTH NOTES
# Combining accents, for making things you don't have precomposed chars or keystrokes for:
<Multi_key> <backslash> <grave> : "̀" U0300 # COMBINING GRAVE ACCENT
<Multi_key> <backslash> <apostrophe> : "́" U0301 # COMBINING ACUTE ACCENT
<Multi_key> <backslash> <asciicircum> : "̂" U0302 # COMBINING CIRCUMFLEX ACCENT
<Multi_key> <backslash> <asciitilde> : "̃" U0303 # COMBINING TILDE
<Multi_key> <backslash> <equal> : "̄" U0304 # COMBINING MACRON
<Multi_key> <backslash> <backslash> <equal> : "̅" U0305 # COMBINING OVERLINE -- ???
<Multi_key> <backslash> <U> : "̆" U0306 # COMBINING BREVE
<Multi_key> <backslash> <period> : "̇" U0307 # COMBINING DOT ABOVE
<Multi_key> <backslash> <quotedbl> : "̈" U0308 # COMBINING DIAERESIS
<Multi_key> <backslash> <question> : "̉" U0309 # COMBINING HOOK ABOVE
<Multi_key> <backslash> <o> : "̊" U030a # COMBINING RING ABOVE
<Multi_key> <backslash> <backslash> <apostrophe> : "̋" U030b # COMBINING DOUBLE ACUTE ACCENT -- ??
<Multi_key> <backslash> <c> : "̌" U030c # COMBINING CARON
# These two conflict!!
<Multi_key> <backslash> <bar> : "̍" U030d # COMBINING VERTICAL LINE ABOVE
<Multi_key> <backslash> <bar> <bar> : "̎" U030e # COMBINING DOUBLE VERTICAL LINE ABOVE
<Multi_key> <backslash> <backslash> <grave> : "̏" U030f # COMBINING DOUBLE GRAVE ACCENT
<Multi_key> <backslash> <f> <m> : "͒" U0352 # COMBINING FERMATA
<Multi_key> <backslash> <parenleft> <period>: : "̐" U0310 # COMBINING CHANDRABINDU
<Multi_key> <backslash> <i> <b> : "̑" U0311 # COMBINING INVERTED BREVE -- ??
<Multi_key> <backslash> <parenleft> <parenright>: "⃝" U20DD # COMBINING ENCLOSING CIRCLE
<Multi_key> <backslash> <parenleft> <slash> <parenright>: "⃠" U20E0 # COMBINING ENCLOSING CIRCLE BACKSLASH
<Multi_key> <backslash> <exclam> : "̣" U0323 # COMBINING DOT BELOW
# With only one underscore it conflicts with stuff.
<Multi_key> <backslash> <underscore> <underscore> : "̱" U0331 # COMBINING MACRON BELOW
<Multi_key> <backslash> <backslash> <underscore> : "̲" U0332 # COMBINING LOW LINE
<Multi_key> <backslash> <backslash> <backslash> <underscore> : "̳" U0333 # COMBINING DOUBLE LOW LINE
# The @ sign will signify reversal to the bottom of the glyph, 'kay?
<Multi_key> <backslash> <at> <o> : "̥" U0325 # COMBINING RING BELOW
<Multi_key> <backslash> <at> <c> : "̬" U032c # COMBINING CARON BELOW
<Multi_key> <backslash> <at> <asciicircum> : "̭" U032d # COMBINING CIRCUMFLEX ACCENT BELOW
<Multi_key> <backslash> <at> <U> : "̮" U032e # COMBINING BREVE BELOW
<Multi_key> <backslash> <at> <i> <b> : "̯" U032f # COMBINING INVERTED BREVE BELOW -- ??
<Multi_key> <period> <parenright> : "͒" U0352 # COMBINING FERMATA
# How about for a little extra control:
<Multi_key> <Z> <W> <S> <P> : "" U200B # ZERO WIDTH SPACE
<Multi_key> <Z> <W> <N> <J> : "" U200C # ZERO WIDTH NON-JOINER
<Multi_key> <Z> <W> <J> : "" U200D # ZERO WIDTH JOINER
<Multi_key> <L> <R> <M> : "" U200E # LEFT-TO-RIGHT MARK
<Multi_key> <R> <L> <M> : "" U200F # RIGHT-TO-LEFT MARK
# I never understood the whole embedding/pop thing, so I'm leaving those out
# for now.
<Multi_key> <L> <R> <O> : "" U202D # LEFT-TO-RIGHT OVERRIDE
<Multi_key> <R> <L> <O> : "" U202E # RIGHT-TO-LEFT OVERRIDE
<Multi_key> <B> <O> <M> : "" UFEFF # ZERO WIDTH NO-BREAK SPACE (Byte Order Mark)
# See also http://bleah.co.uk/~simon/stuff/XCompose
# and http://dotfiles.org/~inky/.XCompose
# and http://paste.lisp.org/display/73094