###############################################################################
# BRLTTY - A background process providing access to the console screen (when in
#          text mode) for a blind person using a refreshable braille display.
#
# Copyright (C) 1995-2023 by The BRLTTY Developers.
#
# BRLTTY comes with ABSOLUTELY NO WARRANTY.
#
# This is free software, placed 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. Please see the file LICENSE-LGPL for details.
#
# Web Page: http://brltty.app/
#
# This software is maintained by Dave Mielke <dave@mielke.cc>.
###############################################################################

# BRLTTY Text Table - German

# the standard representations for the letters of the Latin alphabet
include ltr-latin.tti

# the standard representations for the Latin control characters
include ctl-latin.tti

# the numbers 1-9 are represented by the letters a-i with dot 6 added
# the number 0 is represented by dots 346
include num-dot6.tti

# special characters
char \u20AC	(   45 7 )  # ⡘ € [EURO SIGN]

# generated by ttbtest: charset=iso-8859-1
char \x00	(  345 78)  # 00 ⣜   [NULL]
# Latin control characters  # 01-1A
char \x1B	(123 5678)  # 1B ⣷   [ESCAPE]
char \x1C	(  34  78)  # 1C ⣌   [INFORMATION SEPARATOR FOUR]
char \x1D	( 2345678)  # 1D ⣾   [INFORMATION SEPARATOR THREE]
char \x1E	( 234 678)  # 1E ⣮   [INFORMATION SEPARATOR TWO]
char \x1F	(   45678)  # 1F ⣸   [INFORMATION SEPARATOR ONE]
char \x20	(        )  # 20 ⠀   [SPACE]
char \x21	(    5   )  # 21 ⠐ ! [EXCLAMATION MARK]
char \x22	(   4    )  # 22 ⠈ " [QUOTATION MARK]
char \x23	(  3456  )  # 23 ⠼ # [NUMBER SIGN]
char \x24	(   4 6  )  # 24 ⠨ $ [DOLLAR SIGN]
char \x25	(123456  )  # 25 ⠿ % [PERCENT SIGN]
char \x26	(1234 6  )  # 26 ⠯ & [AMPERSAND]
char \x27	(     6  )  # 27 ⠠ ' [APOSTROPHE]
char \x28	( 23  6  )  # 28 ⠦ ( [LEFT PARENTHESIS]
char \x29	(  3 56  )  # 29 ⠴ ) [RIGHT PARENTHESIS]
char \x2A	(  3 5   )  # 2A ⠔ * [ASTERISK]
char \x2B	( 23 5   )  # 2B ⠖ + [PLUS SIGN]
char \x2C	( 2      )  # 2C ⠂ , [COMMA]
char \x2D	(  3  6  )  # 2D ⠤ - [HYPHEN-MINUS]
char \x2E	(  3     )  # 2E ⠄ . [FULL STOP]
char \x2F	( 2  56  )  # 2F ⠲ / [SOLIDUS]
# Hindu-Arabic numerals     # 30-39
char \x3A	( 2  5   )  # 3A ⠒ : [COLON]
char \x3B	( 23     )  # 3B ⠆ ; [SEMICOLON]
char \x3C	(    56  )  # 3C ⠰ < [LESS-THAN SIGN]
char \x3D	( 23 56  )  # 3D ⠶ = [EQUALS SIGN]
char \x3E	(   45   )  # 3E ⠘ > [GREATER-THAN SIGN]
char \x3F	( 2   6  )  # 3F ⠢ ? [QUESTION MARK]
char \x40	(  345 7 )  # 40 ⡜ @ [COMMERCIAL AT]
# uppercase Latin alphabet  # 41-5A
char \x5B	(123 567 )  # 5B ⡷ [ [LEFT SQUARE BRACKET]
char \x5C	(  34  7 )  # 5C ⡌ \ [REVERSE SOLIDUS]
char \x5D	( 234567 )  # 5D ⡾ ] [RIGHT SQUARE BRACKET]
char \x5E	( 234 67 )  # 5E ⡮ ^ [CIRCUMFLEX ACCENT]
char \x5F	(   4567 )  # 5F ⡸ _ [LOW LINE]
char \x60	(  345   )  # 60 ⠜ ` [GRAVE ACCENT]
# lowercase Latin alphabet  # 61-7A
char \x7B	(123 56  )  # 7B ⠷ { [LEFT CURLY BRACKET]
char \x7C	(  34    )  # 7C ⠌ | [VERTICAL LINE]
char \x7D	( 23456  )  # 7D ⠾ } [RIGHT CURLY BRACKET]
char \x7E	( 234 6  )  # 7E ⠮ ~ [TILDE]
char \x7F	(   456  )  # 7F ⠸   [DELETE]
char \xA1	(  3  67 )  # A1 ⡤ ¡ [INVERTED EXCLAMATION MARK]
char \xA2	(    5  8)  # A2 ⢐ ¢ [CENT SIGN]
char \xA3	(   4 67 )  # A3 ⡨ £ [POUND SIGN]
char \xA4	(  3  678)  # A4 ⣤ ¤ [CURRENCY SIGN]
char \xA5	(   4 6 8)  # A5 ⢨ ¥ [YEN SIGN]
char \xA6	( 2   678)  # A6 ⣢ ¦ [BROKEN BAR]
char \xA7	(12345678)  # A7 ⣿ § [SECTION SIGN]
char \xA8	( 2    78)  # A8 ⣂ ¨ [DIAERESIS]
char \xA9	(1  4567 )  # A9 ⡹ © [COPYRIGHT SIGN]
char \xAA	(12  5  8)  # AA ⢓ ª [FEMININE ORDINAL INDICATOR]
char \xAB	(    5678)  # AB ⣰ « [LEFT-POINTING DOUBLE ANGLE QUOTATION MARK]
char \xAC	( 2  5678)  # AC ⣲ ¬ [NOT SIGN]
char \xAD	(12 4   8)  # AD ⢋ ­ [SOFT HYPHEN]
char \xAE	(   4 678)  # AE ⣨ ® [REGISTERED SIGN]
char \xAF	(12 45  8)  # AF ⢛ ¯ [MACRON]
char \xB0	(   456 8)  # B0 ⢸ ° [DEGREE SIGN]
char \xB1	( 23 5 78)  # B1 ⣖ ± [PLUS-MINUS SIGN]
char \xB2	(12     8)  # B2 ⢃ ² [SUPERSCRIPT TWO]
char \xB3	( 23   7 )  # B3 ⡆ ³ [SUPERSCRIPT THREE]
char \xB4	(1 3 56 8)  # B4 ⢵ ´ [ACUTE ACCENT]
char \xB5	(1 34   8)  # B5 ⢍ µ [MICRO SIGN]
char \xB6	(12345678)  # B6 ⣿ ¶ [PILCROW SIGN]
char \xB7	(  3   7 )  # B7 ⡄ · [MIDDLE DOT]
char \xB8	(1  4   8)  # B8 ⢉ ¸ [CEDILLA]
char \xB9	(   45 7 )  # B9 ⡘ ¹ [SUPERSCRIPT ONE]
char \xBA	( 2 45  8)  # BA ⢚ º [MASCULINE ORDINAL INDICATOR]
char \xBB	(   45 78)  # BB ⣘ » [RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK]
char \xBC	(1 3  6 8)  # BC ⢥ ¼ [VULGAR FRACTION ONE QUARTER]
char \xBD	(123  6 8)  # BD ⢧ ½ [VULGAR FRACTION ONE HALF]
char \xBE	(  34 678)  # BE ⣬ ¾ [VULGAR FRACTION THREE QUARTERS]
char \xBF	(  3    8)  # BF ⢄ ¿ [INVERTED QUESTION MARK]
char \xC0	(  3   78)  # C0 ⣄ À [LATIN CAPITAL LETTER A WITH GRAVE]
char \xC1	( 2    7 )  # C1 ⡂ Á [LATIN CAPITAL LETTER A WITH ACUTE]
char \xC2	(1 3    8)  # C2 ⢅ Â [LATIN CAPITAL LETTER A WITH CIRCUMFLEX]
char \xC3	( 23  67 )  # C3 ⡦ Ã [LATIN CAPITAL LETTER A WITH TILDE]
char \xC4	(    567 )  # C4 ⡰ Ä [LATIN CAPITAL LETTER A WITH DIAERESIS]
char \xC5	(  34567 )  # C5 ⡼ Å [LATIN CAPITAL LETTER A WITH RING ABOVE]
char \xC6	(   4  7 )  # C6 ⡈ Æ [LATIN CAPITAL LETTER AE]
char \xC7	(1234 67 )  # C7 ⡯ Ç [LATIN CAPITAL LETTER C WITH CEDILLA]
char \xC8	( 23   78)  # C8 ⣆ È [LATIN CAPITAL LETTER E WITH GRAVE]
char \xC9	( 23    8)  # C9 ⢆ É [LATIN CAPITAL LETTER E WITH ACUTE]
char \xCA	(       8)  # CA ⢀ Ê [LATIN CAPITAL LETTER E WITH CIRCUMFLEX]
char \xCB	(12345  8)  # CB ⢟ Ë [LATIN CAPITAL LETTER E WITH DIAERESIS]
char \xCC	(123    8)  # CC ⢇ Ì [LATIN CAPITAL LETTER I WITH GRAVE]
char \xCD	( 2  5 78)  # CD ⣒ Í [LATIN CAPITAL LETTER I WITH ACUTE]
char \xCE	(12 45678)  # CE ⣻ Î [LATIN CAPITAL LETTER I WITH CIRCUMFLEX]
char \xCF	(1    67 )  # CF ⡡ Ï [LATIN CAPITAL LETTER I WITH DIAERESIS]
char \xD0	(    5 7 )  # D0 ⡐ Ð [LATIN CAPITAL LETTER ETH]
char \xD1	( 2  567 )  # D1 ⡲ Ñ [LATIN CAPITAL LETTER N WITH TILDE]
char \xD2	( 2     8)  # D2 ⢂ Ò [LATIN CAPITAL LETTER O WITH GRAVE]
char \xD3	( 2 4 678)  # D3 ⣪ Ó [LATIN CAPITAL LETTER O WITH ACUTE]
char \xD4	( 2 4   8)  # D4 ⢊ Ô [LATIN CAPITAL LETTER O WITH CIRCUMFLEX]
char \xD5	(1234 6 8)  # D5 ⢯ Õ [LATIN CAPITAL LETTER O WITH TILDE]
char \xD6	(  3 5  8)  # D6 ⢔ Ö [LATIN CAPITAL LETTER O WITH DIAERESIS]
char \xD7	(123 5  8)  # D7 ⢗ × [MULTIPLICATION SIGN]
char \xD8	(  3 567 )  # D8 ⡴ Ø [LATIN CAPITAL LETTER O WITH STROKE]
char \xD9	(     678)  # D9 ⣠ Ù [LATIN CAPITAL LETTER U WITH GRAVE]
char \xDA	( 2  5 7 )  # DA ⡒ Ú [LATIN CAPITAL LETTER U WITH ACUTE]
char \xDB	(12345678)  # DB ⣿ Û [LATIN CAPITAL LETTER U WITH CIRCUMFLEX]
char \xDC	( 23  6 8)  # DC ⢦ Ü [LATIN CAPITAL LETTER U WITH DIAERESIS]
char \xDD	( 23  678)  # DD ⣦ Ý [LATIN CAPITAL LETTER Y WITH ACUTE]
char \xDE	(  3 5678)  # DE ⣴ Þ [LATIN CAPITAL LETTER THORN]
char \xDF	(  3456 8)  # DF ⢼ ß [LATIN SMALL LETTER SHARP S]
char \xE0	(123 56 8)  # E0 ⢷ à [LATIN SMALL LETTER A WITH GRAVE]
char \xE1	(1    6 8)  # E1 ⢡ á [LATIN SMALL LETTER A WITH ACUTE]
char \xE2	(1    678)  # E2 ⣡ â [LATIN SMALL LETTER A WITH CIRCUMFLEX]
char \xE3	(1234   8)  # E3 ⢏ ã [LATIN SMALL LETTER A WITH TILDE]
char \xE4	(  345  8)  # E4 ⢜ ä [LATIN SMALL LETTER A WITH DIAERESIS]
char \xE5	(  345678)  # E5 ⣼ å [LATIN SMALL LETTER A WITH RING ABOVE]
char \xE6	(   4  78)  # E6 ⣈ æ [LATIN SMALL LETTER AE]
char \xE7	(1234 678)  # E7 ⣯ ç [LATIN SMALL LETTER C WITH CEDILLA]
char \xE8	( 234 6 8)  # E8 ⢮ è [LATIN SMALL LETTER E WITH GRAVE]
char \xE9	(12   6 8)  # E9 ⢣ é [LATIN SMALL LETTER E WITH ACUTE]
char \xEA	(12   678)  # EA ⣣ ê [LATIN SMALL LETTER E WITH CIRCUMFLEX]
char \xEB	(12 4 6 8)  # EB ⢫ ë [LATIN SMALL LETTER E WITH DIAERESIS]
char \xEC	(  34   8)  # EC ⢌ ì [LATIN SMALL LETTER I WITH GRAVE]
char \xED	(1  4 6 8)  # ED ⢩ í [LATIN SMALL LETTER I WITH ACUTE]
char \xEE	(1  4 678)  # EE ⣩ î [LATIN SMALL LETTER I WITH CIRCUMFLEX]
char \xEF	(12 456 8)  # EF ⢻ ï [LATIN SMALL LETTER I WITH DIAERESIS]
char \xF0	( 23 56 8)  # F0 ⢶ ð [LATIN SMALL LETTER ETH]
char \xF1	(1 345  8)  # F1 ⢝ ñ [LATIN SMALL LETTER N WITH TILDE]
char \xF2	(  34 6 8)  # F2 ⢬ ò [LATIN SMALL LETTER O WITH GRAVE]
char \xF3	(1  456 8)  # F3 ⢹ ó [LATIN SMALL LETTER O WITH ACUTE]
char \xF4	(1  45678)  # F4 ⣹ ô [LATIN SMALL LETTER O WITH CIRCUMFLEX]
char \xF5	(1   567 )  # F5 ⡱ õ [LATIN SMALL LETTER O WITH TILDE]
char \xF6	( 2 4 6 8)  # F6 ⢪ ö [LATIN SMALL LETTER O WITH DIAERESIS]
char \xF7	(12  5678)  # F7 ⣳ ÷ [DIVISION SIGN]
char \xF8	(      78)  # F8 ⣀ ø [LATIN SMALL LETTER O WITH STROKE]
char \xF9	( 23456 8)  # F9 ⢾ ù [LATIN SMALL LETTER U WITH GRAVE]
char \xFA	(1   56 8)  # FA ⢱ ú [LATIN SMALL LETTER U WITH ACUTE]
char \xFB	(1   5678)  # FB ⣱ û [LATIN SMALL LETTER U WITH CIRCUMFLEX]
char \xFC	(12  56 8)  # FC ⢳ ü [LATIN SMALL LETTER U WITH DIAERESIS]
char \xFD	( 23 5678)  # FD ⣶ ý [LATIN SMALL LETTER Y WITH ACUTE]
char \xFE	(1234567 )  # FE ⡿ þ [LATIN SMALL LETTER THORN]
char \xFF	(123456 8)  # FF ⢿ ÿ [LATIN SMALL LETTER Y WITH DIAERESIS]

alias	\u2019	\x27	# ’ [RIGHT SINGLE QUOTATION MARK]
alias	\u2295	\x2B	# ⊕ [CIRCLED PLUS]
alias	\u2296	\x2D	# ⊖ [CIRCLED MINUS]
alias	\u2298	\x2F	# ⊘ [CIRCLED DIVISION SLASH]
alias	\u229B	\x2A	# ⊛ [CIRCLED ASTERISK OPERATOR]
alias	\u229C	\x3D	# ⊜ [CIRCLED EQUALS]

include de-chess.tti
include common.tti
