#  Copyright (C) 2018 Bert Frees <bertfrees@gmail.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/>.

# This table maps the Cyrillic dot patterns that are defined in
# ru-chardefs.cti with a virtual dot 9 to Unicode braille. The dot 9
# is simply dropped.

# Note that ru-letters.dis maps Latin to lowercase letters and
# Cyrillic to uppercase letters. But in Unicode this distinction can
# not be made because the Latin and Cyrillic alphabet are translated
# to the same dot patterns.

include unicode.dis

display \x2841 179
display \x2843 1279
display \x2849 1479
display \x2859 14579
display \x2851 1579
display \x284B 12479
display \x285B 124579
display \x2853 12579
display \x284A 2479
display \x285A 24579
display \x2845 1379
display \x2847 12379
display \x284D 13479
display \x285D 134579
display \x2855 13579
display \x284F 123479
display \x285F 1234579
display \x2857 123579
display \x284E 23479
display \x285E 234579
display \x2865 13679
display \x287A 245679
display \x286D 134679
display \x2875 135679
display \x2861 1679
display \x286F 1234679
display \x2871 15679
display \x2877 1235679
display \x286E 234679
display \x287E 2345679
display \x286A 24679
display \x2873 125679
display \x286B 124679

display \x2801 19
display \x2803 129
display \x2809 149
display \x2819 1459
display \x2811 159
display \x280B 1249
display \x281B 12459
display \x2813 1259
display \x280A 249
display \x281A 2459
display \x2805 139
display \x2807 1239
display \x280D 1349
display \x281D 13459
display \x2815 1359
display \x280F 12349
display \x281F 123459
display \x2817 12359
display \x280E 2349
display \x281E 23459
display \x2825 1369
display \x283A 24569
display \x282D 13469
display \x2835 13569
display \x2821 169
display \x282F 123469
display \x2831 1569
display \x2837 123569
display \x282E 23469
display \x283E 234569
display \x282A 2469
display \x2833 12569
display \x282B 12469

# For Ukrainian letters (defined in uk.utb)
display \x285C 34579
display \x287D 1345679
display \x2879 145679
display \x287B 1245679

display \x281C 3459
display \x283D 134569
display \x2839 14569
display \x283B 124569
