Blame | Last modification | View Log | RSS feed
################################################################################ 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-2018 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.com/## This software is maintained by Dave Mielke <dave@mielke.cc>.################################################################################ BRLTTY Text Table - English (North American Braille Computer Code)# This is a description of the default text table used by BRLTTY.# It's based on the North American Braille Computer Code, but defines the full# Latin1 (ISO-8859-1) character set.# The 95 printable characters of the standard 7-bit US-ASCII character set# (32-126) are identical to their representations within the North American# Braille Computer Code (these are the only characters which the NABCC actually# defines). Characters from literary braille, symbols from The Nemeth Braille# Code for Mathematics and Science Notation, and a bit of human imagination# have all been combined to create an easy-to-remember, one-to-one mapping# between each character and its braille counterpart. All possible combinations# involving only the original 6 braille dots are used, but that only allows for# 64 out of the required 95 character representations. The presence or absence# of dot 7 is used to differentiate between pairs of characters which either# are very closely related in meaning or, in a few cases where a more intuitive# reason couldn't be found, have a very close logical relationship within the# US-ASCII code. Dot 8 isn't used at all.# The space and the 26 lowercase letters (a-z) are the same as in literary# braille:#Hex Dots Dec Char Descriptionchar \X20 ( ) # 32 spacechar \X61 (1 ) # 97 a latin small letter achar \X62 (12 ) # 98 b latin small letter bchar \X63 (1 4 ) # 99 c latin small letter cchar \X64 (1 45 ) # 100 d latin small letter dchar \X65 (1 5 ) # 101 e latin small letter echar \X66 (12 4 ) # 102 f latin small letter fchar \X67 (12 45 ) # 103 g latin small letter gchar \X68 (12 5 ) # 104 h latin small letter hchar \X69 ( 2 4 ) # 105 i latin small letter ichar \X6A ( 2 45 ) # 106 j latin small letter jchar \X6B (1 3 ) # 107 k latin small letter kchar \X6C (123 ) # 108 l latin small letter lchar \X6D (1 34 ) # 109 m latin small letter mchar \X6E (1 345 ) # 110 n latin small letter nchar \X6F (1 3 5 ) # 111 o latin small letter ochar \X70 (1234 ) # 112 p latin small letter pchar \X71 (12345 ) # 113 q latin small letter qchar \X72 (123 5 ) # 114 r latin small letter rchar \X73 ( 234 ) # 115 s latin small letter schar \X74 ( 2345 ) # 116 t latin small letter tchar \X75 (1 3 6 ) # 117 u latin small letter uchar \X76 (123 6 ) # 118 v latin small letter vchar \X77 ( 2 456 ) # 119 w latin small letter wchar \X78 (1 34 6 ) # 120 x latin small letter xchar \X79 (1 3456 ) # 121 y latin small letter ychar \X7A (1 3 56 ) # 122 z latin small letter z# The 26 uppercase letters (A-Z) are the same as their lowercase counterparts# except that dot 7 is added:#Hex Dots Dec Char Descriptionchar \X41 (1 7 ) # 65 A latin capital letter achar \X42 (12 7 ) # 66 B latin capital letter bchar \X43 (1 4 7 ) # 67 C latin capital letter cchar \X44 (1 45 7 ) # 68 D latin capital letter dchar \X45 (1 5 7 ) # 69 E latin capital letter echar \X46 (12 4 7 ) # 70 F latin capital letter fchar \X47 (12 45 7 ) # 71 G latin capital letter gchar \X48 (12 5 7 ) # 72 H latin capital letter hchar \X49 ( 2 4 7 ) # 73 I latin capital letter ichar \X4A ( 2 45 7 ) # 74 J latin capital letter jchar \X4B (1 3 7 ) # 75 K latin capital letter kchar \X4C (123 7 ) # 76 L latin capital letter lchar \X4D (1 34 7 ) # 77 M latin capital letter mchar \X4E (1 345 7 ) # 78 N latin capital letter nchar \X4F (1 3 5 7 ) # 79 O latin capital letter ochar \X50 (1234 7 ) # 80 P latin capital letter pchar \X51 (12345 7 ) # 81 Q latin capital letter qchar \X52 (123 5 7 ) # 82 R latin capital letter rchar \X53 ( 234 7 ) # 83 S latin capital letter schar \X54 ( 2345 7 ) # 84 T latin capital letter tchar \X55 (1 3 67 ) # 85 U latin capital letter uchar \X56 (123 67 ) # 86 V latin capital letter vchar \X57 ( 2 4567 ) # 87 W latin capital letter wchar \X58 (1 34 67 ) # 88 X latin capital letter xchar \X59 (1 34567 ) # 89 Y latin capital letter ychar \X5A (1 3 567 ) # 90 Z latin capital letter z# The 10 decimal digits (0-9) are the same as in the Nemeth Code:#Hex Dots Dec Char Descriptionchar \X30 ( 3 56 ) # 48 0 digit zerochar \X31 ( 2 ) # 49 1 digit onechar \X32 ( 23 ) # 50 2 digit twochar \X33 ( 2 5 ) # 51 3 digit threechar \X34 ( 2 56 ) # 52 4 digit fourchar \X35 ( 2 6 ) # 53 5 digit fivechar \X36 ( 23 5 ) # 54 6 digit sixchar \X37 ( 23 56 ) # 55 7 digit sevenchar \X38 ( 23 6 ) # 56 8 digit eightchar \X39 ( 3 5 ) # 57 9 digit nine# Common symbols used within mathematical expressions by popular computer# programming languages are the same as in the Nemeth Code:#Hex Dots Dec Char Descriptionchar \X2E ( 4 6 ) # 46 . full stopchar \X2B ( 34 6 ) # 43 + plus signchar \X2D ( 3 6 ) # 45 - hyphen-minuschar \X2A (1 6 ) # 42 * asteriskchar \X2F ( 34 ) # 47 / soliduschar \X28 (123 56 ) # 40 ( left parenthesischar \X29 ( 23456 ) # 41 ) right parenthesis# With all of these major considerations having been taken into account,# convenient representations were still available, and are used, for some of# the remaining characters:#Hex Dots Dec Char Descriptionchar \X26 (1234 6 ) # 38 & ampersandchar \X23 ( 3456 ) # 35 # number sign# The remaining characters are what they are. Dot 7 isn't used either within# the number block (32-63) or, with the exception of the DEL control character# (127), within the lowercase block (96-127). With the exception of the# underscore (95), dot 7 is used for every character within the uppercase block# (64-95). Adding dot 7 to any character within the lowercase block (96-127)# yields its corresponding character within the uppercase block (64-95) except# that removing dot 7 from the DEL control character yields the underscore.#Hex Dots Dec Char Descriptionchar \X2C ( 6 ) # 44 , commachar \X3B ( 56 ) # 59 ; semicolonchar \X3A (1 56 ) # 58 : colonchar \X21 ( 234 6 ) # 33 ! exclamation markchar \X3F (1 456 ) # 63 ? question markchar \X22 ( 5 ) # 34 " quotation markchar \X27 ( 3 ) # 39 ' apostrophechar \X60 ( 4 ) # 96 ` grave accentchar \X5E ( 45 7 ) # 94 ^ circumflex accentchar \X7E ( 45 ) # 126 ~ tildechar \X5B ( 2 4 67 ) # 91 [ left square bracketchar \X5D (12 4567 ) # 93 ] right square bracketchar \X7B ( 2 4 6 ) # 123 { left curly bracketchar \X7D (12 456 ) # 125 } right curly bracketchar \X3D (123456 ) # 61 = equals signchar \X3C (12 6 ) # 60 < less-than signchar \X3E ( 345 ) # 62 > greater-than signchar \X24 (12 4 6 ) # 36 $ dollar signchar \X25 (1 4 6 ) # 37 % percent signchar \X40 ( 4 7 ) # 64 @ commercial atchar \X7C (12 56 ) # 124 | vertical linechar \X5C (12 567 ) # 92 \ reverse soliduschar \X5F ( 456 ) # 95 _ low line# Each of the characters within the basic control character block (0-31) is the# same as its corresponding character within both the uppercase block (64-95)# and the lowercase block (96-127) except that dots 7 and 8 are both used.#Hex Dots Dec Char Descriptionchar \X00 ( 4 78) # 0 ^@ nullchar \X01 (1 78) # 1 ^A start of headingchar \X02 (12 78) # 2 ^B start of textchar \X03 (1 4 78) # 3 ^C end of textchar \X04 (1 45 78) # 4 ^D end of transmissionchar \X05 (1 5 78) # 5 ^E enquirychar \X06 (12 4 78) # 6 ^F acknowledgechar \X07 (12 45 78) # 7 ^G bellchar \X08 (12 5 78) # 8 ^H backspacechar \X09 ( 2 4 78) # 9 ^I horizontal tabulationchar \X0A ( 2 45 78) # 10 ^J line feedchar \X0B (1 3 78) # 11 ^K vertical tabulationchar \X0C (123 78) # 12 ^L form feedchar \X0D (1 34 78) # 13 ^M carriage returnchar \X0E (1 345 78) # 14 ^N shift outchar \X0F (1 3 5 78) # 15 ^O shift inchar \X10 (1234 78) # 16 ^P data link escapechar \X11 (12345 78) # 17 ^Q device control onechar \X12 (123 5 78) # 18 ^R device control twochar \X13 ( 234 78) # 19 ^S device control threechar \X14 ( 2345 78) # 20 ^T device control fourchar \X15 (1 3 678) # 21 ^U negative acknowledgechar \X16 (123 678) # 22 ^V synchronous idlechar \X17 ( 2 45678) # 23 ^W end of transmission blockchar \X18 (1 34 678) # 24 ^X cancelchar \X19 (1 345678) # 25 ^Y end of mediumchar \X1A (1 3 5678) # 26 ^Z substitutechar \X1B ( 2 4 678) # 27 ^[ escapechar \X1C (12 5678) # 28 ^\ file separatorchar \X1D (12 45678) # 29 ^] group separatorchar \X1E ( 45 78) # 30 ^^ record separatorchar \X1F ( 45678) # 31 ^_ unit separator# Each of the characters within the extended control character block (128-159)# is the same as its corresponding character within the basic control character# block (0-31) except that only dot 8 is used.#Hex Dots Dec Char Descriptionchar \X80 ( 4 8) # 128 ~@ <control>char \X81 (1 8) # 129 ~A <control>char \X82 (12 8) # 130 ~B break permitted herechar \X83 (1 4 8) # 131 ~C no break herechar \X84 (1 45 8) # 132 ~D <control>char \X85 (1 5 8) # 133 ~E next linechar \X86 (12 4 8) # 134 ~F start of selected areachar \X87 (12 45 8) # 135 ~G end of selected areachar \X88 (12 5 8) # 136 ~H character tabulation setchar \X89 ( 2 4 8) # 137 ~I character tabulation with justificationchar \X8A ( 2 45 8) # 138 ~J line tabulation setchar \X8B (1 3 8) # 139 ~K partial line downchar \X8C (123 8) # 140 ~L partial line upchar \X8D (1 34 8) # 141 ~M reverse line feedchar \X8E (1 345 8) # 142 ~N single shift twochar \X8F (1 3 5 8) # 143 ~O single shift threechar \X90 (1234 8) # 144 ~P device control stringchar \X91 (12345 8) # 145 ~Q private use onechar \X92 (123 5 8) # 146 ~R private use twochar \X93 ( 234 8) # 147 ~S set transmit statechar \X94 ( 2345 8) # 148 ~T cancel characterchar \X95 (1 3 6 8) # 149 ~U message waitingchar \X96 (123 6 8) # 150 ~V start of guarded areachar \X97 ( 2 456 8) # 151 ~W end of guarded areachar \X98 (1 34 6 8) # 152 ~X start of stringchar \X99 (1 3456 8) # 153 ~Y <control>char \X9A (1 3 56 8) # 154 ~Z single character introducerchar \X9B ( 2 4 6 8) # 155 ~[ control sequence introducerchar \X9C (12 56 8) # 156 ~\ string terminatorchar \X9D (12 456 8) # 157 ~] operating system commandchar \X9E ( 45 8) # 158 ~^ privacy messagechar \X9F ( 456 8) # 159 ~_ application program command# Representations for the uppercase accented letters are drawn from the# remaining combinations which use both dots 7 and 8. The representation for a# lowercase accented letter is the same as its uppercase counterpart except# that dot 7 isn't used. This scheme retains the use of dot 7 as the modifier# for a capitalized letter. The only exception to these rules is that, due to# the nature of the Latin1 character set, the German lowercase double-s is# treated as though it were an uppercase y-dieresis (neither has an uppercase# definition). These representations have been gathered, as much as possible,# into logical groupings.# The 5 letters with a circumflex accent (^) use the [1-5] dot combinations:#Hex Dots Dec Char Descriptionchar \XC2 ( 2 78) # 194 Â latin capital letter a with circumflexchar \XCA ( 23 78) # 202 Ê latin capital letter e with circumflexchar \XCE ( 2 5 78) # 206 Î latin capital letter i with circumflexchar \XD4 ( 2 5678) # 212 Ô latin capital letter o with circumflexchar \XDB ( 2 678) # 219 Û latin capital letter u with circumflexchar \XE2 ( 2 8) # 226 â latin small letter a with circumflexchar \XEA ( 23 8) # 234 ê latin small letter e with circumflexchar \XEE ( 2 5 8) # 238 î latin small letter i with circumflexchar \XF4 ( 2 56 8) # 244 ô latin small letter o with circumflexchar \XFB ( 2 6 8) # 251 û latin small letter u with circumflex# The 5 letters with a grave accent (`) use the [6-0] dot combinations:#Hex Dots Dec Char Descriptionchar \XC0 ( 23 5 78) # 192 À latin capital letter a with gravechar \XC8 ( 23 5678) # 200 È latin capital letter e with gravechar \XCC ( 23 678) # 204 Ì latin capital letter i with gravechar \XD2 ( 3 5 78) # 210 Ò latin capital letter o with gravechar \XD9 ( 3 5678) # 217 Ù latin capital letter u with gravechar \XE0 ( 23 5 8) # 224 à latin small letter a with gravechar \XE8 ( 23 56 8) # 232 è latin small letter e with gravechar \XEC ( 23 6 8) # 236 ì latin small letter i with gravechar \XF2 ( 3 5 8) # 242 ò latin small letter o with gravechar \XF9 ( 3 56 8) # 249 ù latin small letter u with grave# The 6 letters with an acute accent (') use the [a-f] dot combinations with# dots 3 and 6 added:#Hex Dots Dec Char Descriptionchar \XC1 (1 678) # 193 Á latin capital letter a with acutechar \XC9 (12 678) # 201 É latin capital letter e with acutechar \XCD (1 4 678) # 205 Í latin capital letter i with acutechar \XD3 (1 45678) # 211 Ó latin capital letter o with acutechar \XDA (1 5678) # 218 Ú latin capital letter u with acutechar \XDD (12 4 678) # 221 Ý latin capital letter y with acutechar \XE1 (1 6 8) # 225 á latin small letter a with acutechar \XE9 (12 6 8) # 233 é latin small letter e with acutechar \XED (1 4 6 8) # 237 í latin small letter i with acutechar \XF3 (1 456 8) # 243 ó latin small letter o with acutechar \XFA (1 56 8) # 250 ú latin small letter u with acutechar \XFD (12 4 6 8) # 253 ý latin small letter y with acute# The 6 letters with a dieresis accent (") use the [f-j] dot combinations with# dots 3 and 6 added, and the number sign (because it fits the sequence# reasonably well):#Hex Dots Dec Char Descriptionchar \XC4 (1234 678) # 196 Ä latin capital letter a with diaeresischar \XCB (12345678) # 203 Ë latin capital letter e with diaeresischar \XCF (123 5678) # 207 Ï latin capital letter i with diaeresischar \XD6 ( 234 678) # 214 Ö latin capital letter o with diaeresischar \XDC ( 2345678) # 220 Ü latin capital letter u with diaeresischar \XE4 (1234 6 8) # 228 ä latin small letter a with diaeresischar \XEB (123456 8) # 235 ë latin small letter e with diaeresischar \XEF (123 56 8) # 239 ï latin small letter i with diaeresischar \XF6 ( 234 6 8) # 246 ö latin small letter o with diaeresischar \XFC ( 23456 8) # 252 ü latin small letter u with diaeresischar \XFF ( 3456 8) # 255 ÿ latin small letter y with diaeresis# There is no uppercase y-dieresis in the Latin1 character set. The German# lowercase double-s, which also doesn't have an uppercase counterpart in the# Latin1 character set, uses its representation:#Hex Dots Dec Char Descriptionchar \XDF ( 345678) # 223 ß latin small letter sharp s# The remaining accented letters are:#Hex Dots Dec Char Descriptionchar \XC3 ( 5 78) # 195 Ã latin capital letter a with tildechar \XD1 ( 4 678) # 209 Ñ latin capital letter n with tildechar \XD5 ( 5678) # 213 Õ latin capital letter o with tildechar \XC5 ( 345 78) # 197 Å latin capital letter a with ring abovechar \XC7 ( 34 678) # 199 Ç latin capital letter c with cedillachar \XD8 ( 34 78) # 216 Ø latin capital letter o with strokechar \XC6 ( 3 78) # 198 Æ latin capital letter aechar \XD0 ( 678) # 208 Ð latin capital letter ethchar \XDE ( 3 678) # 222 Þ latin capital letter thornchar \XE3 ( 5 8) # 227 ã latin small letter a with tildechar \XF1 ( 4 6 8) # 241 ñ latin small letter n with tildechar \XF5 ( 56 8) # 245 õ latin small letter o with tildechar \XE5 ( 345 8) # 229 å latin small letter a with ring abovechar \XE7 ( 34 6 8) # 231 ç latin small letter c with cedillachar \XF8 ( 34 8) # 248 ø latin small letter o with strokechar \XE6 ( 3 8) # 230 æ latin small letter aechar \XF0 ( 6 8) # 240 ð latin small letter ethchar \XFE ( 3 6 8) # 254 þ latin small letter thorn# Some characters are the same as other characters which they resemble but with# dot 7 added:#Hex Dots Dec Char Descriptionchar \XAD ( 3 67 ) # 173 soft hyphenchar \XAB (12 67 ) # 171 « left-pointing double angle quotation markchar \XBB ( 345 7 ) # 187 » right-pointing double angle quotation markchar \XA6 (1 567 ) # 166 ¦ broken barchar \XB9 ( 2 7 ) # 185 ¹ superscript onechar \XB2 ( 23 7 ) # 178 ² superscript twochar \XB3 ( 2 5 7 ) # 179 ³ superscript threechar \XB1 ( 34 67 ) # 177 ± plus-minus signchar \XD7 (1 67 ) # 215 × multiplication signchar \XF7 ( 34 7 ) # 247 ÷ division signchar \XB7 ( 4 67 ) # 183 · middle dotchar \XA1 ( 234 67 ) # 161 ¡ inverted exclamation markchar \XBF (1 4567 ) # 191 ¿ inverted question markchar \XA2 (12 4 67 ) # 162 ¢ cent signchar \XA3 ( 34567 ) # 163 £ pound sign# A few more characters follow this same convention but their relationships# to their base characters is a bit obscure:#Hex Dots Dec Char Descriptionchar \XA4 (1 4 67 ) # 164 ¤ currency signchar \XA5 (1234 67 ) # 165 ¥ yen sign# Some characters are represented by the first letters of their names lowered# by one row of dots:#Hex Dots Dec Char Descriptionchar \XAC ( 2 567 ) # 172 ¬ not signchar \XB6 ( 23 5 7 ) # 182 ¶ pilcrow signchar \XA9 ( 23 567 ) # 169 © copyright signchar \XAE ( 23 67 ) # 174 ® registered signchar \XA7 ( 3 5 7 ) # 167 § section signchar \XB0 ( 3 567 ) # 176 ° degree sign# The three fraction characters use combinations of dots 1 and 4 (which# progress from left to right as the value of the fraction increases) together# with dots 2,3,5,6,7:#Hex Dots Dec Char Descriptionchar \XBC (123 567 ) # 188 ¼ vulgar fraction one quarterchar \XBD (1234567 ) # 189 ½ vulgar fraction one halfchar \XBE ( 234567 ) # 190 ¾ vulgar fraction three quarters# Each of the three extended accent characters is the same as its conventional# compose character but with dot 7 added:#Hex Dots Dec Char Descriptionchar \XB4 ( 3 7 ) # 180 ´ acute accentchar \XB8 ( 67 ) # 184 ¸ cedillachar \XA8 ( 5 7 ) # 168 ¨ diaeresis# The two gender symbols are:#Hex Dots Dec Char Descriptionchar \XBA ( 7 ) # 186 º masculine ordinal indicatorchar \XAA ( 8) # 170 ª feminine ordinal indicator# The three remaining characters are:#Hex Dots Dec Char Descriptionchar \XAF ( 2 67 ) # 175 ¯ macronchar \XB5 ( 567 ) # 181 µ micro sign# The nonbreaking space is dots 7 and 8 because this presents a sequence of# nonbreaking spaces as a smooth low line segment.#Hex Dots Dec Char Descriptionchar \X7F ( 4567 ) # 127 ^? deleteinclude ltr-alias.ttiinclude num-alias.ttiinclude common.tti