# liblouis: en-us-brf.dis

#  Based on the Linux screenreader BRLTTY, copyright (C) 1999-2006 by
#  The BRLTTY Team
#
#  Copyright (C) 2004-2006 ViewPlus Technologies, Inc. www.viewplus.com
#  Copyright (C) 2004-2006 JJB Software, Inc. www.jjb-software.com
#
#  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/>.
#
# Display table for working with 6-dot BRF files.
#
# This representation form is known as Braille ASCII, or more formally,
# The North American Braille ASCII Code.
#
# Note: Braille ASCII only defines 64 dot combinations consisting of dots 1-6,
# thus this table DOES NOT map combinations with dots 7 and/or 8 to any
# particular output characters.
#
# If your device supports 8-dot braille, or you want to convert a lowercase
# braille file, you may want to use text_nabcc.dis table instead of this one.
#
# For more information, refer to https://en.wikipedia.org/wiki/Braille_ASCII

display \s 0
display A 1
display B 12
display C 14
display D 145
display E 15
display F 124
display G 1245
display H 125
display I 24
display J 245
display K 13
display L 123
display M 134
display N 1345
display O 135
display P 1234
display Q 12345
display R 1235
display S 234
display T 2345
display U 136
display V 1236
display W 2456
display X 1346
display Y 13456
display Z 1356
display 0 356
display 1 2
display 2 23
display 3 25
display 4 256
display 5 26
display 6 235
display 7 2356
display 8 236
display 9 35
display ' 3
display @ 4
display " 5
display , 6
display * 16
display / 34
display - 36
display ^ 45
display . 46
display ; 56
display < 126
display % 146
display : 156
display [ 246
display > 345
display + 346
display _ 456
display $ 1246
display \\ 1256
display ? 1456
display ! 2346
display # 3456
display & 12346
display ( 12356
display ] 12456
display ) 23456
display = 123456
