This file is indexed.

/usr/share/liblouis/tables/text_nabcc.dis is in liblouis-data 2.4.1-1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
# This file is obsolete. Do not use!

# liblouis: text.nabcc.dis
#
# Based on the braille contraction modules in BRLTTY
#
# Original copyright (C) 1995-2004 by The BRLTTY Team. All rights reserved.
#
# liblouis copyright 2004 by 
# ViewPlus Technologies, inc.,  www.viewplustech.com .
# and
# Computers to Help People, Inc., www.chpi.org  
# All rights reserved.
#
# liblouis  comes with ABSOLUTELY NO WARRANTY.
#
# This is free software, placed under the terms of the
# GNU General Public License, as published by the Free Software
# Foundation.  Please see the file COPYING for details.
#
# Maintained by John J. Boyer, director@chpi.org, www.chpi.org

# This is a description of the default text translation 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 Description
display \X0020 0			#32  space
display \X0061 1			#97  a  Latin small letter a
display \X0062 12			#98  b Latin small letter b
display \X0063 14			#99  c Latin small letter c
display \X0064 145		#100 d Latin small letter d
display \X0065 15			#101 e Latin small letter e
display \X0066 124		#102 f Latin small letter f
display \X0067 1245		#103 g Latin small letter g
display \X0068 125		#104 h Latin small letter h
display \X0069  24		#105 i Latin small letter i
display \X006A  245		#106 j Latin small letter j
display \X006B 13			#107 k Latin small letter k
display \X006C 123		#108 l Latin small letter l
display \X006D 134		#109 m Latin small letter m
display \X006E 1345		#110 n Latin small letter n
display \X006F 135		#111 o Latin small letter o
display \X0070 1234		#112 p Latin small letter p
display \X0071 12345	#113 q Latin small letter q
display \X0072 1235		#114 r Latin small letter r
display \X0073 234		#115 s Latin small letter s
display \X0074  2345	#116 t Latin small letter t
display \X0075 136		#117 u Latin small letter u
display \X0076 1236		#118 v Latin small letter v
display \X0077  2456	#119 w Latin small letter w
display \X0078 1346		#120 x Latin small letter x
display \X0079 13456	#121 y Latin small letter y
display \X007A 1356		#122 z Latin small letter z

# The 26 uppercase letters A-Z) are the same as their lowercase counterparts 
# except that dot7 is added:

        #Hex   Dots		Dec	Char Description
display \X0041 1			#65	A Latin capital letter a
display \X0042 12			#66	B Latin capital letter b
display \X0043 14			#67	C Latin capital letter c
display \X0044 145		#68	D Latin capital letter d
display \X0045 15			#69	E Latin capital letter e
display \X0046 124		#70	F Latin capital letter f
display \X0047 1245		#71	G Latin capital letter g
display \X0048 125		#72	H Latin capital letter h
display \X0049 24			#73	I Latin capital letter i
display \X004A 245		#74	J Latin capital letter j
display \X004B 13			#75	K Latin capital letter k
display \X004C 123		#76	L Latin capital letter l
display \X004D 134		#77	M Latin capital letter m
display \X004E 1345		#78	N Latin capital letter n
display \X004F 135		#79	O Latin capital letter o
display \X0050 1234		#80	P Latin capital letter p
display \X0051 12345	#81	Q Latin capital letter q
display \X0052 1235		#82	R Latin capital letter r
display \X0053 234		#83	S Latin capital letter s
display \X0054 2345		#84	T Latin capital letter t
display \X0055 136		#85	U Latin capital letter u
display \X0056 1236		#86	V Latin capital letter v
display \X0057 2456		#87	W Latin capital letter w
display \X0058 1346		#88	X Latin capital letter x
display \X0059 13456  #89	Y Latin capital letter y
display \X005A 1356		#90	Z Latin capital letter z

# The 10 decimal digits 0-9) are the same as in the Nemeth Code:

#Hex Dots Dec Char Description
display \X0030 356 #480digit zero
display \X0031 2 #491digit one
display \X0032 23 #502digit two
display \X0033 25 #513digit three
display \X0034  256 #524digit four
display \X0035  26 #535digit five
display \X0036  235 #546digit six
display \X0037  2356 #557digit seven
display \X0038  236 #568digit eight
display \X0039 35 #579digit nine

# Common symbols used within mathematical expressions by popular computer
# programming languages are the same as in the Nemeth Code:

#Hex Dots Dec Char Description
display \X002E 46 #46.full stop
display \X002B 346 #43+plus sign
display \X002D 36 #45-hyphen-minus
display \X002A 16 #42*asterisk
display \X002F 34  #47/solidus
display \X0028 12356 #40left parenthesis
display \X0029  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 Description
display \X0026 12346	#38 &		 ampersand
display \X0023   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 dot7 to any character within the lowercase block 96-127)
# yields its corresponding character within the uppercase block 64-95) except
# that removing dot7 from the DEL control character yields the underscore.

				#Hex			Dots Dec	Char	Description
display \X002C      6		#44 ,			comma
display \X003B     56		#59 ;			semicolon
display \X003A	156			#58 :			colon
display \X0021   2346		#33 !			exclamation mark
display \X003F  1456		#63 ?			question mark
display \X0022    5			#34 "			quotation mark
display \X0027  3				#39 '			apostrophe
display \X0060   4			#96 `			grave accent
display \X005E   457		#94 ^			circumflex accent
display \X007E   45     #126 ~    tilde

display \X005B  246			#91  [	left square bracket
display \X005D 12456		#93  ]	right square bracket
display \X007B  256			#123 {	left curly bracket
display \X007D 12456		#125 }	right curly bracket
display \X003D 123456		#61  =	equals sign
display \X003C 126			#60  <	less-than sign
display \X003E 345			#62  >	greater-than sign
display \X0024 1246			#36  $	dollar sign
display \X0025 146			#37  %	percent sign
display \X0040 47				#64  @	commercial at
display \X007C 1256 # 124|vertical line
display \X005C 12567  #92\reverse solidus
display \X005F 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 block64-95)
# and the lowercase block 96-127) except that dots7 and8 are both used.

#Hex Dots Dec Char Description
display \X0000 478 #0^@null
display \X0001 178 #1^Astart of heading
display \X0002 1278 #2^Bstart of text
display \X0003 1478 #3^Cend of text
display \X0004 14578 #4^Dend of transmission
display \X0005 1578 #5^Eenquiry
display \X0006 12478 #6^Facknowledge
display \X0007 124578 #7^Gbell
display \X0008 12578 #8^Hbackspace
display \X0009  2478 #9^Ihorizontal tabulation
display \X000A  24578 #10^Jline feed
display \X000B 1378 #11^Kvertical tabulation
display \X000C 12378 #12^Lform feed
display \X000D 13478 #13^Mcarriage return
display \X000E 134578 #14^Nshift out
display \X000F 13578 #15^Oshift in
display \X0010 123478 #16^Pdata link escape
display \X0011 1234578 #17^Qdevice control one
display \X0012 123578 #18^Rdevice control two
display \X0013 23478 #19^Sdevice control three
display \X0014  234578 #20^Tdevice control four
display \X0015 13678 #21^Unegative acknowledge
display \X0016 123678 #22^Vsynchronous idle
display \X0017  245678 #23^Wend of transmission block
display \X0018 134678 #24^Xcancel
display \X0019 1345678 #25^Yend of medium
display \X001A 135678 #26^Zsubstitute
display \X001B  24678 #27^[escape
display \X001C 125678 #28^\file separator
display \X001D 1245678 #29^]group separator
display \X001E 4578 #30^^record separator
display \X001F 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 dot8 is used.

#Hex Dots Dec Char Description
display \X0080 48 # 128~@<control>
display \X0081 18 # 129~A<control>
display \X0082 128 # 130~Bbreak permitted here
display \X0083 148 # 131~Cno break here
display \X0084 1458 # 132~D<control>
display \X0085 158 # 133~Enext line
display \X0086 1248 # 134~Fstart of selected area
display \X0087 12458 # 135~Gend of selected area
display \X0088 1258 # 136~Hcharacter tabulation set
display \X0089  248 # 137~Icharacter tabulation with justification
display \X008A  2458 # 138~Jline tabulation set
display \X008B 138 # 139~Kpartial line down
display \X008C 1238 # 140~Lpartial line up
display \X008D 1348 # 141~Mreverse line feed
display \X008E 13458 # 142~Nsingle shift two
display \X008F 1358 # 143~Osingle shift three
display \X0090 12348 # 144~Pdevice control string
display \X0091 123458 # 145~Qprivate use one
display \X0092 12358 # 146~Rprivate use two
display \X0093 2348 # 147~Sset transmit state
display \X0094  23458 # 148~Tcancel character
display \X0095 1368 # 149~Umessage waiting
display \X0096 12368 # 150~Vstart of guarded area
display \X0097  24568 # 151~Wend of guarded area
display \X0098 13468 # 152~Xstart of string
display \X0099 134568 # 153~Y<control>
display \X009A 13568 # 154~Zsingle character introducer
display \X009B  2468 # 155~[control sequence introducer
display \X009C 12568 # 156~\string terminator
display \X009D 124568 # 157~]operating system command
display \X009E 458 # 158~^privacy message


# 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  Latin 1 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	Description
display \X009F 4568 # 159				~_application program command
display \X00A0 0				#160			no-break space
display \X00A1 23467  #161 ¡		inverted exclamation mark
display \X00A2 4	   #162 ¢		cent sign
display \X00A3 34567  # 163£pound sign
display \X00A4 1467  # 164¤currency sign
display \X00A5 123467  # 165¥yen sign
display \X00A6 1567  # 166¦broken bar
display \X00A7 357  # 167§section sign
display \X00A8  57  # 168¨diaeresis
display \X00A9  23567  # 169©copyright sign
display \X00AA 8 # 170ªfeminine ordinal indicator
display \X00AB 1267  # 171«left-pointing double angle quotation mark
display \X00AC  2567  # 172¬not sign
display \X00AD 367  # 173­soft hyphen
display \X00AE  2367  # 174®registered sign
display \X00AF  267  # 175¯macron
display \X00B0 3567  # 176°degree sign

display \X00C0  23578		# 192		À		Latin capital letter a with grave
display \X00C1	1678		# 193		Á		Latin capital letter a with acute
display \X00C2	16			# 194		Â		Latin capital letter a with circumflex
display \X00C3	578 # 195Ã Latin capital letter a with tilde
display \X00C4	1234678 # 196Ä Latin capital letter a with diaeresis
display \X00C5	34578 # 197Å Latin capital letter a with ring above
display \X00C6	378 # 198Æ Latin capital letter ae
display \X00C7	34678 # 199Ç Latin capital letter c with cedilla
display \X00C8  23567		#	200		È		Latin capital letter e with grave
display \X00C9	12678		# 201É Latin capital letter e with acute
display \X00CA  2378	# 202		Ê		Latin capital letter e with circumflex
display \X00CB 12345678 # 203Ë Latin capital letter e with diaeresis
display \X00CC  23678 # 204Ì Latin capital letter i with grave
display \X00CD 14678 # 205Í Latin capital letter i with acute
display \X00CE  2578	# 206		Î		Latin capital letter i with circumflex
display \X00CF 1235678 # 207Ï Latin capital letter i with diaeresis
display \X00D0 678 # 208Ð Latin capital letter eth
display \X00D1 4678 # 209Ñ Latin capital letter n with tilde
display \X00D2 3578 # 210Ò Latin capital letter o with grave
display \X00D3 145678 # 211Ó Latin capital letter o with acute
display \X00D4  25678 # 212		Ô		Latin capital letter o with circumflex
display \X00D5  5678 # 213Õ Latin capital letter o with tilde
display \X00D6  234678 # 214Ö Latin capital letter o with diaeresis
display \X00D7 167  # 215×multiplication sign
display \X00D8 3478 # 216Ø Latin capital letter o with stroke
display \X00D9 35678 # 217Ù Latin capital letter u with grave
display \X00DA 15678 # 218Ú Latin capital letter u with acute
display \X00DB  2678	# 219		Û		Latin capital letter u with circumflex
display \X00DC  2345678 # 220Ü Latin capital letter u with diaeresis
display \X00DD 124678 # 221Ý Latin capital letter y with acute
display \X00DE 3678 # 222Þ Latin capital letter thorn
display \X00DF 345678 # 223ß Latin small letter sharp s
display \X00E0  2358 # 224à Latin small letter a with grave
display \X00E1 168 # 225á Latin small letter a with acute
display \X00E2	16		# 226		â		Latin small letter a with circumflex
display \X00E3 58 # 227ã Latin small letter a with tilde
display \X00E4 123468 # 228ä Latin small letter a with diaeresis
display \X00E5 3458 # 229å Latin small letter a with ring above
display \X00E6 38 # 230æ Latin small letter ae
display \X00E7 3468 # 231ç Latin small letter c with cedilla
display \X00E8  23568 # 232è Latin small letter e with grave
display \X00E9 1268 # 233é Latin small letter e with acute
display \X00EA  238		# 234		ê		Latin small letter e with circumflex
display \X00EB 1234568 # 235ë Latin small letter e with diaeresis
display \X00EC  2368 # 236ì Latin small letter i with grave
display \X00ED 1468 # 237í Latin small letter i with acute
display \X00EE  258		# 238		î		Latin small letter i with circumflex
display \X00EF 123568 # 239ï Latin small letter i with diaeresis
display \X00F0 68 # 240ð Latin small letter eth
display \X00F1 468 # 241ñ Latin small letter n with tilde
display \X00F2 358 # 242ò Latin small letter o with grave
display \X00F3 14568 # 243ó Latin small letter o with acute
display \X00F4  2568	# 244		ô		Latin small letter o with circumflex
display \X00F5  568 # 245õ Latin small letter o with tilde
display \X00F6  23468 # 246ö Latin small letter o with diaeresis
display \X00F7 347  # 247÷division sign
display \X00F8 348 # 248ø Latin small letter o with stroke
display \X00F9 3568 # 249ù Latin small letter u with grave
display \X00FA 1568 # 250ú Latin small letter u with acute
display \X00FB  268		# 251		û		Latin small letter u with circumflex
display \X00FC  234568 # 252ü Latin small letter u with diaeresis
display \X00FD 12468 # 253ý Latin small letter y with acute
display \X00FE 368 # 254þ Latin small letter thorn
display \X00FF 34568 # 255ÿ Latin small letter y with diaeresis


# Some characters are the same as other characters which they resemble but with
# dot 7 added:

#Hex Dots Dec Char Description


display \X00BB 3457  # 187»right-pointing double angle quotation mark
display \X00B9  27  # 185¹superscript one
display \X00B2 237  # 178²superscript two
display \X00B3 257  # 179³superscript three
display \X00B1 3467  # 177±plus-minus sign
display \X00D7 167  # 215×multiplication sign

display \X00B7 467  # 183·middle dot

display \X00BF 14567  # 191¿inverted question mark



# A few more characters follow this same convention but they're relationships
# to their base characters is a bit obscure:

#Hex Dots Dec Char Description



# Some characters are represented by the first letters of their names lowered
# by one row of dots:

#Hex Dots Dec Char Description

display \X00B6  2357  # 182¶pilcrow 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 Description
display \X00BC 123567  # 188¼vulgar fraction one quarter
display \X00BD 1234567  # 189½vulgar fraction one half
display \X00BE  234567  # 190¾vulgar fraction three quarters

# Each of the three extended accent characters is the same as its conventional
# compose character but with dot7 added:

#Hex Dots Dec Char Description
display \X00B4 37  # 180´acute accent
display \X00B8 67  # 184¸cedilla


# The two gender symbols are:

#Hex Dots Dec Char Description
display \X00BA 7  # 186ºmasculine ordinal indicator


# The three remaining characters are:

#Hex Dots Dec Char Description

display \X00B5  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 Description
display \X007F 4567  # 127^?delete