#-index-name: Tatar
#-display-name: Tatar braille
#
#+language: tt
#+type: literary
#+dots: 6
#+contraction: no
#+direction: forward

#  Copyright (C) 2021 Andrey Yakuboy <braille@yakuboy.ru>
#
#  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/>.
#
#-maintainer: Andrey Yakuboy

# The Tatar braille code was created by Sharif Kalimullovich Enikeev
# and accepted in 1939. It was described in "Braille codes of the
# national languages of Russia" (a collection of materials); by
# N.D. Shaposhnikova; Moscow, 2017
# <http://liblouis.io/braille-specs/russian>.

# The Tatar braille code is based on the Russian braille and includes 6 additional letters,
# namely Ә, Җ, Ң, Ө, Ү and Һ. Like in ru-litbrl.ctb, the
# following definitions have dot 9 set to make them distinguishable
# from the Latin letters.
lowercase \x04d9 3459
lowercase \x0497 124569
lowercase \x04a3 14569
lowercase \x04e9 1269
lowercase \x04af 134569
lowercase \x04bb 12369

base uppercase \x04d8 \x04d9
base uppercase \x0496 \x0497
base uppercase \x04a2 \x04a3
base uppercase \x04e8 \x04e9
base uppercase \x04ae \x04af
base uppercase \x04ba \x04bb

# As some Tatar letters' definitions conflict with parentheses, the definitions of parentheses should be changed
punctuation ( 2356
punctuation ) 2356

include ru-litbrl.ctb

# Extend classes defined in ru-litbrl.ctb
attribute uppercyrillic \x04d8\x0496\x04a2\x04e8\x04ae\x04ba
attribute lowercyrillic \x04d9\x0497\x04a3\x04e9\x04af\x04bb

# In spite of conflicts of letters and parentheses, in math text parentheses should be marked like in the Russian braille
# The correct opcode is used to avoid conflicts with rules in ru-litbrl.ctb
noback correct $m["("] "\x2823"#4=1                # \x2823 is the dots 126
noback correct ["("]$m "\x2823"#4=1
noback correct $d["("] "\x2823"#4=1
noback correct ["("]$d "\x2823"#4=1
noback correct #4=1[")"] "\x281c"#4=0                # \x281c is the dots 345
noback correct $m[")"] "\x281c"#4=0
noback correct [")"]$m "\x281c"#4=0
noback correct $d[")"] "\x281c"#4=0
noback correct [")"]$d "\x281c"#4=0