# liblouis: U.S. English 6 dot computer braille table
#
#-name: U.S. English Computer Braille Code (CBC)
#-index-name: English, U.S., computer, 6-dot
#-display-name: English 6-dot computer braille as used in the U.S.
#
#+language: en
#+region: en-US
#+type: computer
#+dots: 6
#+system: ebae
# Marked as "direction:both" by Bue Vester-Andersen
# as it is a computer Braille table.
#+direction: both
#
# Computer Braille Code reference:
# http://liblouis.io/braille-specs/english/#computer-braille-code-cbc
#
#-copyright: 2019, Timothy Wynn
#-copyright: 2021, BAUM Engineering
#-license: LGPLv2.1
#
#  Copyright (C) 2019 Timothy Wynn <tmthywynn8@gmail.com>
#  Copyright (C) 2021, BAUM Engineering <liblouis@baum.ro>
#
#  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/>.
#
# Notes:
# * Print characters, braille dots, and meanings are defined according
#   to the "COMPUTER BRAILLE CODE SYMBOLS: ASCII ORDER" and the
#   "Additional Computer Braille Code Symbols" tables (pp. 53-62) of the
#   Computer Braille Code (CBC; 2000) manual.
# * Character-Definition Opcodes were copied from en-us-comp8.ctb.
#   Irrelevant and/or predefined Character-Definition Opcodes were
#   disregarded as needed (e.g. letter and number Character-Definition
#   Opcodes as defined by latinLetterDef6Dots.uti and litdigits6Dots.uti).
# * Major portions of the CBC manual have been disregarded due to
#   transcriber-specific decisions (i.e. unable to be automated).
# * Rationale of decisions made were interpreted from the following
#   section(s) of the CBC manual:
#   4.2 Shift Indicator
#   4.3 Caps Lock Indicator
#   8.1 Isolated Lower-Cell Signs
#   10.1 Emphasis Indicators
#   16.1 Termination Indicator#
#
# TODO:
# * Compbrl opcode and its comp6 subset (used in EBAE tables):
#   11.1 Computer Braille Code Indicators
# * Nemeth (used in EBAE tables):
#   12.0 Nemeth Code Indicators
# * Superscript and subscript numbers (is it possible?:
#   15.0 Half-Line Shifts

# Character Definitions:
include spaces.uti

# Alphanumeric characters:
include latinLetterDef6Dots.uti
include loweredDigits6Dots.uti

# Single-cell symbols:
punctuation ! 2346 exclamation point
punctuation " 5 quotation marks, double quotes
sign # 3456 number sign, pound sign (weight)
sign $ 1246 dollar sign
sign % 146 percent sign
sign & 12346 ampersand
punctuation ' 3 apostrophe, single quote
punctuation \x2019 3 # right single quotation mark
punctuation \x00b4 3 # acute accent
punctuation ( 12356 left parenthesis
punctuation ) 23456 right parenthesis
sign * 16 asterisk, multiplication sign
math + 346 plus sign
punctuation , 6 comma
math - 36 hyphen, minus sign
punctuation . 46 period, decimal point
math / 34 slash, division sign
punctuation : 156 colon
punctuation ; 56 semicolon
math < 126 less than
math = 123456 equals
math > 345 greater than
punctuation ? 1456 question mark
sign @ 4 at
punctuation [ 246 left bracket
sign \\ 1256 backslash
punctuation ] 12456 right bracket
sign ^ 45 up arrow/caret

# Braille symbols with the 456 prefix:
sign _ 456-456 underscore
sign _ 456 unused except as prefix for forward and back-translation
sign ` 456-4 grave accent
punctuation { 456-246 left brace
sign | 456-1256 vertical bar
punctuation } 456-12456 right brace
math ~ 456-45 tilde

# Braille Indicators:
capsletter 456 shift indicator
begcapsword 456-345 caps lock indicator
endcapsword 456-126 caps release indicator
capsmodechars 0123456789!"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~ # if letters are separated by numbers, punctuation, etc.

# Emphasis Indicators:
emphclass italic
begemph italic 456-16 begin emphasis
endemph italic 456-34 end emphasis
emphclass underline
begemph underline 456-16 begin emphasis
endemph underline 456-34 end emphasis
emphclass bold
begemph bold 456-16 begin emphasis
endemph bold 456-34 end emphasis

# Isolated Lower-Cell Signs:
# Single-digit number:
lowword 0 456-356 0
lowword 1 456-2 1
lowword 2 456-23 2
lowword 3 456-25 3
lowword 4 456-256 4
lowword 5 456-26 5
lowword 6 456-235 6
lowword 7 456-2356 7
lowword 8 456-236 8
lowword 9 456-35 9
# Quotation mark, apostrophe, comma, hyphen/minus sign, and semicolon:
lowword " 456-5 quotation marks, double quotes
lowword ' 456-3 apostrophe, single quote
lowword , 456-6 comma
lowword - 456-36 hyphen, minus sign
lowword ; 456-56 semicolon