# liblouis: Character definitions for german tables
#
#  Copyright (C) 2018 SBS Schweizerische Bibliothek für Blinde, Seh- und Lesebehinderte
#  Copyright (C) 2020 Bue Vester-Andersen
#
#  This file is part of liblouis.
#
#  liblouis is free software: you can redistribute it and/or modify it
#  under the terms of the GNU Lesser General Public License as
#  published by the Free Software Foundation, either version 2.1 of the
#  License, or (at your option) any later version.
#
#  liblouis is distributed in the hope that it will be useful, but
#  WITHOUT ANY WARRANTY; without even the implied warranty of
#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
#  Lesser General Public License for more details.
#
#  You should have received a copy of the GNU Lesser General Public
#  License along with liblouis. If not, see
#  <http://www.gnu.org/licenses/>.
#
#-------------------------------------------------------------------------------

space \x00a0 a
include spaces.uti

# ===== BASIC LATIN - 0000-007F ================================================

punctuation   \x0021 235               #33    ! EXCLAMATION MARK
punctuation   \x0022 236               #34    " QUOTATION MARK
sign          \x0023 3456            #35    # NUMBER SIGN
sign          \x0025 123456          #37    % PERCENT SIGN
sign          \x0026 12346           #38    & AMPERSAND
punctuation   \x0027 6               #39    ' APOSTROPHE APOSTROPHE-QUOTE
lowercase     \x0027 6               #39    ' APOSTROPHE APOSTROPHE-QUOTE        # doesn't work with letter!
punctuation   \x0028 236             #40    ( LEFT PARENTHESIS
punctuation   \x0029 356             #41    ) RIGHT PARENTHESIS
punctuation   \x002A 35              #42    * ASTERISK
math          \x002B 235             #43    + PLUS SIGN
punctuation   \x002C 2               #44    , COMMA
punctuation   \x002D 36              #45    - HYPHEN-MINUS
punctuation   \x002E 3               #46    . FULL STOP PERIOD
punctuation   \x002F 256             #47    / SOLIDUS SLASH

# Define letters covering the same dot patterns as digits etc.
sign          \x00A7 346             #167   § SECTION SIGN
lowercase \x00E4  345       #228  ä LATIN LETTER A WITH DIAERESIS
lowercase \x00F6  246       #246  ö LATIN LETTER O WITH DIAERESIS
lowercase \x00FC  1256      #252  ü LATIN LETTER U WITH DIAERESIS
lowercase \x00DF  2346      #223  ß LATIN SMALL LETTER SHARP S

base uppercase  \x00C4 \x00E4     #196 #228  Ää LATIN CAPITAL LETTER A WITH DIAERESIS
base uppercase  \x00D6 \x00F6     #214 #246  Öö LATIN CAPITAL LETTER O WITH DIAERESIS
base uppercase  \x00DC \x00FC     #220 #252  Üü LATIN CAPITAL LETTER U WITH DIAERESIS
base uppercase  \x1e9e \x00DF          #223  ß LATIN SMALL LETTER SHARP S

include digits6DotsPlusDot6.uti

punctuation   \x003A 25              #58    : COLON
punctuation   \x003B 23              #59    ; SEMICOLON
math          \x003C 56              #60    < LESS-THAN SIGN
math          \x003D 2356            #61    = EQUALS SIGN
math          \x003E 45              #62    > GREATER-THAN SIGN
punctuation   \x003F 26              #63    ? QUESTION MARK

include latinLetterDef6Dots.uti

noback sign          \x0060 6-236             #96    `  GRAVE ACCENT
punctuation   \x007B 12356           #123   {  LEFT CURLY BRACKET
sign          \x007C 34              #124   |  VERTICAL LINE
punctuation   \x007D 23456           #125   }  RIGHT CURLY BRACKET
sign          \x007E 2346            #126   ~  TILDE
sign          \x007F 456             #127   [DELETE]

sign          \x0024 4-234              #36    $ DOLLAR SIGN
sign          \x0040 4-345           #64    @  COMMERCIAL AT
punctuation   \x005B 6-2356          #91    [  LEFT SQUARE BRACKET
sign          \x005C 4-34            #92    \  REVERSE SOLIDUS
punctuation   \x005D 6-2356          #93    ]  RIGHT SQUARE BRACKET
noback sign          \x005E 4-2346          #94    ^  CIRCUMFLEX ACCENT
sign          \x005F 4-456           #95    _  LOW LINE

# ===== LATIN-1 SUPPLEMENT: 0080-00FF ==========================================
# Note: Letters covering only one Braille cell have been moved up.

punctuation   \x00A1 6-235           #161   ¡ INVERTED EXCLAMATION MARK
sign          \x00A2 4-14            #162   ¢ CENT SIGN
sign          \x00A3 4-123           #163   £ POUND SIGN
sign          \x00A4 0               #164   ¤ CURRENCY SIGN
sign          \x00A5 4-13456         #165   ¥ YEN SIGN
sign          \x00A6 5-36            #166   ¦ BROKEN BAR
sign          \x00A8 0               #168   ¨ DIAERESIS
sign          \x00A9 2356-45-14-2356 #169   © COPYRIGHT SIGN
lowercase     \x00AA 1               #170   ª FEMININE ORDINAL INDICATOR
punctuation   \x00AB 236             #171   « LEFT-POINTING DOUBLE ANGLE QUOTATION MARK
sign          \x00AC 4-25-35               #172   ¬ NOT SIGN
sign          \x00AD 0               #173   ­ SOFT HYPHEN
sign          \x00AE 6-2356-45-1235-2356   #174 ® REGISTERED SIGN
sign          \x00AF 0               #175   ¯ MACRON
sign          \x00B0 4-356           #176   ° DEGREE SIGN
math          \x00B1 235-36          #177   ± PLUS-MINUS SIGN
sign          \x00B2 34-23           #178   ² SUPERSCRIPT TWO
sign          \x00B3 34-25           #179   ³ SUPERSCRIPT THREE
noback sign          \x00B4 6-356               #180   ´ ACUTE ACCENT
sign          \x00B5 56-134          #181   µ MICRO SIGN
sign          \x00B6 0               #182   ¶ PILCROW SIGN
sign          \x00B7 0               #183   · MIDDLE DOT
sign          \x00B8 0               #184   ¸ CEDILLA
sign          \x00B9 0               #185   ¹ SUPERSCRIPT ONE
lowercase     \x00BA 135             #186   º MASCULINE ORDINAL INDICATOR
punctuation   \x00BB 356             #187   » RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK
math          \x00BC 3456-1-256      #188   ¼ VULGAR FRACTION ONE QUARTER
math          \x00BD 3456-1-23       #189   ½ VULGAR FRACTION ONE HALF
math          \x00BE 3456-14-256     #190   ¾ VULGAR FRACTION THREE QUARTERS
punctuation   \x00BF 6-26            #191   ¿ INVERTED QUESTION MARK
math          \x00D7 236             #215   × MULTIPLICATION SIGN
math          \x00F7 0               #247   ÷ DIVISION SIGN

# ===== GENERAL PUNCTUATION: 2000-206F =========================================

punctuation   \x2013 6-36            #8211          EN DASH
punctuation   \x2014 6-36            #8212          EM DASH
punctuation   \x2018 6-236           #8216          LEFT SINGLE QUOTATION MARK
punctuation   \x2019 6-356           #8217          RIGHT SINGLE QUOTATION MARK
punctuation   \x201A 6-236           #8218          SINGLE LOW-9 QUOTATION MARK
punctuation   \x201B 6-356           #8219          SINGLE HIGH-REVERSED-9 QUOTATION MARK
punctuation   \x201C 236             #8220          LEFT DOUBLE QUOTATION MARK
punctuation   \x201D 356             #8221          RIGHT DOUBLE QUOTATION MARK
punctuation   \x201E 236             #8222          DOUBLE LOW-9 QUOTATION MARK
punctuation   \x201F 356             #8223          DOUBLE HIGH-REVERSED-9 QUOTATION MARK
noback sign          \x2020 4-235           #8224          DAGGER
noback sign          \x2026 3-3-3           #8230          ...
sign          \x2030 3456-245-356-356      #8240    PER MILLE SIGN
sign          \x2031 3456-245-356-356-356  #8241    PER TEN THOUSAND SIGN
sign          \x2032 4-35            #8242          PRIME
sign          \x2033 4-35-35         #8243          DOUBLE PRIME
noback punctuation   \x2039 6-236                          SINGLE LEFT-POINTING ANGLE QUOTATION MARK
noback punctuation   \x203a 6-356                          SINGLE RIGHT-POINTING ANGLE QUOTATION MARK

# ===== CURRENCY SYMBOLS: 20A0-20CF ============================================

noback sign          \x20A0 4-15            #8352          EURO-CURRENCY SIGN (apparently not proper)
sign          \x20AC 4-15            #8364          EURO SIGN

# ===== LETTERLIKE SYMBOLS 2100-214F ===========================================

sign          \x2122 6-2356-45-2345-134-2356 #8482   TRADE MARK SIGN

# ===== NUMBER FORMS: 2150-218F ================================================

math          \x2153 3456-1-25               VULGAR FRACTION ONE THIRD
math          \x2154 3456-12-25              VULGAR FRACTION TWO THIRDS
math          \x2155 3456-1-26               VULGAR FRACTION ONE FIFTH
math          \x2156 3456-12-26              VULGAR FRACTION TWO FIFTHS
math          \x2157 3456-14-26              VULGAR FRACTION THREE FIFTHS
math          \x2158 3456-145-26             VULGAR FRACTION FOUR FIFTHS
math          \x2159 3456-1-235              VULGAR FRACTION ONE SIXTH
math          \x215a 3456-15-235             VULGAR FRACTION FIVE SIXTHS
math          \x215b 3456-1-236              VULGAR FRACTION ONE EIGHTH
math          \x215c 3456-14-236             VULGAR FRACTION THREE EIGHTHS
math          \x215d 3456-15-236             VULGAR FRACTION FIVE EIGHTHS
math          \x215e 3456-1245-236           VULGAR FRACTION SEVEN EIGHTHS

# ===== ARROWS: 2190-21FF ======================================================

sign          \x2190 0-246-25-25-0           LEFTWARDS ARROW
sign          \x2192 0-25-25-135-0           RIGHTWARDS ARROW
sign          \x2194 0-246-25-25-135-0       LEFT RIGHT ARROW

# ===== MATHEMATICAL OPERATORS: 2200-22FF ======================================

math          \x2212 36a             #8722   MINUS SIGN
math          \x2215 25              #8725   DIVISION SLASH
math          \x2217 35              #8727   ASTERISK OPERATOR
math          \x223C 25-25           #8764   TILDE OPERATOR
math          \x2245 26-26           #8773   APPROXIMATELY EQUAL TO
math          \x2259 26              #8793   ESTIMATES
math          \x2260 35-2356         #8800   NOT EQUAL TO
math          \x2261 2356-2356       #8801   IDENTICAL TO
math          \x2264 246-2356        #8804   LESS-THAN OR EQUAL TO
math          \x2265 135-2356        #8805   GREATER-THAN OR EQUAL TO
math          \x2266 246-2356        #8806   LESS-THAN OVER EQUAL TO
math          \x2267 135-2356        #8807   GREATER-THAN OVER EQUAL TO
math          \x22c5 3               #8901   DOT OPERATOR
math          \x22c6 3               #8902   STAR OPERATOR

# ===== MISCELLANEOUS TECHNICAL: 2300-23FF =====================================

punctuation   \x2329 5-2356          #9001 LEFT-POINTING ANGLE BRACKET
punctuation   \x232a 5-2356          #9002 RIGHT-POINTING ANGLE BRACKET

# ===== MISCELLANEOUS SYMBOLS: 2600-26FF =======================================

sign          \x2639 6-46-25-36-236  #9785   WHITE FROWNING FACE
sign          \x263a 6-46-25-36-356  #9786   WHITE SMILING FACE

# ===== SPECIAL PURPOSE CHARACTERS (from BOX DRAWING: 2500-257F) ===============

# KUERZUNGSVERBOT und "DUMMY"-TEXT:
lowercase     \x250A abcdef          #9482    BOX DRAWINGS LIGHT QUADRUPLE DASH VERTICAL
# "DUMMY"-ZAHL:
digit         \x250B b               #9483    BOX DRAWINGS HEAVY QUADRUPLE DASH VERTICAL
# GROSSBUCHSTABE (virtual use only):
sign          \x2565 46a             #9573    BOX DRAWINGS DOWN DOUBLE AND HORIZONTAL SINGLE
# GROSSBUCHSTABENFOLGE (virtual use only):
sign          \x2567 45a             #9575    BOX DRAWINGS UP SINGLE AND HORIZONTAL DOUBLE
# ENDE GROSSBUCHSTABENFOLGE (virtual use only):
sign          \x2568 45b             #9576    BOX DRAWINGS UP DOUBLE AND HORIZONTAL SINGLE
# AUFHEBUNGSPUNKT bei Wort-Zahl-Ausdruecken (grade 2):
sign          \x256C ab              #9580    BOX DRAWINGS DOUBLE VERTICAL AND HORIZONTAL
# DOPPELPUNKT bei Zeitangaben:
sign          \x2573 6-25            #9587    BOX DRAWINGS LIGHT DIAGONAL CROSS
# MARKIERUNG FÜR ZAHL-BUCHSTABE-VERBINDUNG (zum Eliminieren überflüssiger Letter-Signs):
digit         \x2504 ac              #9476    BOX DRAWINGS LIGHT TRIPLE DASH HORIZONTAL
# APOSTROPH VOR ZAHL (z.B. Im Jahr '97):
digit         \x2500 69              #9472    BOX DRAWINGS LIGHT HORIZONTAL
# PUNKT VOR ZAHL (z.B. Kaliber .45):
digit         \x2501 39              #9473    BOX DRAWINGS HEAVY HORIZONTAL
# Strich und Punkt vor Zahl (Fr. --.45):
digit         \x2510 36a-36a-3       #9488    BOX DRAWINGS LIGHT DOWN AND LEFT
# Strich und Komma vor Zahl (EUR --,45):
digit         \x2511 36a-36a-2       #9489    BOX DRAWINGS DOWN LIGHT AND LEFT HEAVY

# ===== BRAILLE PATTERNS: 2800-28FF ============================================

space         \x2800 0               #10240  BRAILLE PATTERN BLANK
sign          \x2801 1               #10241  BRAILLE PATTERN DOTS-1
sign          \x2802 2               #10242  BRAILLE PATTERN DOTS-2
sign          \x2803 12              #10243  BRAILLE PATTERN DOTS-12
sign          \x2804 3               #10244  BRAILLE PATTERN DOTS-3
sign          \x2805 13              #10245  BRAILLE PATTERN DOTS-13
sign          \x2806 23              #10246  BRAILLE PATTERN DOTS-23
sign          \x2807 123             #10247  BRAILLE PATTERN DOTS-123
sign          \x2808 4               #10248  BRAILLE PATTERN DOTS-4
sign          \x2809 14              #10249  BRAILLE PATTERN DOTS-14
sign          \x280a 24              #10250  BRAILLE PATTERN DOTS-24
sign          \x280b 124             #10251  BRAILLE PATTERN DOTS-124
sign          \x280c 34              #10252  BRAILLE PATTERN DOTS-34
sign          \x280d 134             #10253  BRAILLE PATTERN DOTS-134
sign          \x280e 234             #10254  BRAILLE PATTERN DOTS-234
sign          \x280f 1234            #10255  BRAILLE PATTERN DOTS-1234
sign          \x2810 5               #10256  BRAILLE PATTERN DOTS-5
sign          \x2811 15              #10257  BRAILLE PATTERN DOTS-15
sign          \x2812 25              #10258  BRAILLE PATTERN DOTS-25
sign          \x2813 125             #10259  BRAILLE PATTERN DOTS-125
sign          \x2814 35              #10260  BRAILLE PATTERN DOTS-35
sign          \x2815 135             #10261  BRAILLE PATTERN DOTS-135
sign          \x2816 235             #10262  BRAILLE PATTERN DOTS-235
sign          \x2817 1235            #10263  BRAILLE PATTERN DOTS-1235
sign          \x2818 45              #10264  BRAILLE PATTERN DOTS-45
sign          \x2819 145             #10265  BRAILLE PATTERN DOTS-145
sign          \x281a 245             #10266  BRAILLE PATTERN DOTS-245
sign          \x281b 1245            #10267  BRAILLE PATTERN DOTS-1245
sign          \x281c 345             #10268  BRAILLE PATTERN DOTS-345
sign          \x281d 1345            #10269  BRAILLE PATTERN DOTS-1345
sign          \x281e 2345            #10270  BRAILLE PATTERN DOTS-2345
sign          \x281f 12345           #10271  BRAILLE PATTERN DOTS-12345
sign          \x2820 6               #10272  BRAILLE PATTERN DOTS-6
sign          \x2821 16              #10273  BRAILLE PATTERN DOTS-16
sign          \x2822 26              #10274  BRAILLE PATTERN DOTS-26
sign          \x2823 126             #10275  BRAILLE PATTERN DOTS-126
sign          \x2824 36              #10276  BRAILLE PATTERN DOTS-36
sign          \x2825 136             #10277  BRAILLE PATTERN DOTS-136
sign          \x2826 236             #10278  BRAILLE PATTERN DOTS-236
sign          \x2827 1236            #10279  BRAILLE PATTERN DOTS-1236
sign          \x2828 46              #10280  BRAILLE PATTERN DOTS-46
sign          \x2829 146             #10281  BRAILLE PATTERN DOTS-146
sign          \x282a 246             #10282  BRAILLE PATTERN DOTS-246
sign          \x282b 1246            #10283  BRAILLE PATTERN DOTS-1246
sign          \x282c 346             #10284  BRAILLE PATTERN DOTS-346
sign          \x282d 1346            #10285  BRAILLE PATTERN DOTS-1346
sign          \x282e 2346            #10286  BRAILLE PATTERN DOTS-2346
sign          \x282f 12346           #10287  BRAILLE PATTERN DOTS-12346
sign          \x2830 56              #10288  BRAILLE PATTERN DOTS-56
sign          \x2831 156             #10289  BRAILLE PATTERN DOTS-156
sign          \x2832 256             #10290  BRAILLE PATTERN DOTS-256
sign          \x2833 1256            #10291  BRAILLE PATTERN DOTS-1256
sign          \x2834 356             #10292  BRAILLE PATTERN DOTS-356
sign          \x2835 1356            #10293  BRAILLE PATTERN DOTS-1356
sign          \x2836 2356            #10294  BRAILLE PATTERN DOTS-2356
sign          \x2837 12356           #10295  BRAILLE PATTERN DOTS-12356
sign          \x2838 456             #10296  BRAILLE PATTERN DOTS-456
sign          \x2839 1456            #10297  BRAILLE PATTERN DOTS-1456
sign          \x283a 2456            #10298  BRAILLE PATTERN DOTS-2456
sign          \x283b 12456           #10299  BRAILLE PATTERN DOTS-12456
sign          \x283c 3456            #10300  BRAILLE PATTERN DOTS-3456
sign          \x283d 13456           #10301  BRAILLE PATTERN DOTS-13456
sign          \x283e 23456           #10302  BRAILLE PATTERN DOTS-23456
sign          \x283f 123456          #10303  BRAILLE PATTERN DOTS-123456