# LibLouis table for both modern and ancient Greek braille
# ελληνικό σύστημα μπράιγ [Greek Braille System]
# κέντρο εκπαίδευσης και αποκατάστασης τυφλών [Center for Education and Rehabilitation for the Blind]
#
# -----------
#-name: ελληνικό σύστημα μπράιγ
#-index-name: Greek
#-display-name: Greek braille
#
#+language: el
#+type: literary
#+dots: 6
#+contraction: full
# Marked as "direction:both" by Bue Vester-Andersen
# as tests run both forward and backward
#+direction:both
#
#-copyright: 2017, Dave Mielke
#-license: LGPLv2.1
#
#-author: Dave Mielke <dave@mielke.cc>
# -----------
#
# Copyright (C) 2017 Dave Mielke: <dave@mielke.cc>, [http://mielke.cc/]

# 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/>.
#
# Created and maintained by Dave Mielke: <dave@mielke.cc>, [http://mielke.cc/]

##########
# Spaces #
##########

space \x00a0 a
include spaces.uti

##################
# Greek Alphabet #
##################

lowercase \x03B1        1        # α Alpha
lowercase \x03B2        12        # β Beta
lowercase \x03B3        1245        # γ Gamma
lowercase \x03B4        145        # δ Delta
lowercase \x03B5        15        # ε Epsilon
lowercase \x03B6        1356        # ζ Zeta
lowercase \x03B7        345        # η Eta
lowercase \x03B8        1456        # θ Theta
lowercase \x03B9        24        # ι Iota
lowercase \x03BA        13        # κ Kappa
lowercase \x03BB        123        # λ Lambda
lowercase \x03BC        134        # μ Mu
lowercase \x03BD        1345        # ν Nu
lowercase \x03BE        1346        # ξ Xi
lowercase \x03BF        135        # ο Omicron
lowercase \x03C0        1234        # π Pi
lowercase \x03C1        1235        # ρ Rho
lowercase \x03C3        234        # σ Sigma
lowercase \x03C4        2345        # τ Tau
lowercase \x03C5        13456        # υ Upsilon
lowercase \x03C6        124        # φ Phi
lowercase \x03C7        125        # χ Chi
lowercase \x03C8        12346        # ψ Psi
lowercase \x03C9        245        # ω Omega

base uppercase        \x0391 \x03B1        # Αα Alpha
base uppercase        \x0392 \x03B2        # Ββ Beta
base uppercase        \x0393 \x03B3        # Γγ Gamma
base uppercase        \x0394 \x03B4        # Δδ Delta
base uppercase        \x0395 \x03B5        # Εε Epsilon
base uppercase        \x0396 \x03B6        # Ζζ Zeta
base uppercase        \x0397 \x03B7        # Ηη Eta
base uppercase        \x0398 \x03B8        # Θθ Theta
base uppercase        \x0399 \x03B9        # Ιι Iota
base uppercase        \x039A \x03BA        # Κκ Kappa
base uppercase        \x039B \x03BB        # Λλ Lambda
base uppercase        \x039C \x03BC        # Μμ Mu
base uppercase        \x039D \x03BD        # Νν Nu
base uppercase        \x039E \x03BE        # Ξξ Xi
base uppercase        \x039F \x03BF        # Οο Omicron
base uppercase        \x03A0 \x03C0        # Ππ Pi
base uppercase        \x03A1 \x03C1        # Ρρ Rho
base uppercase        \x03A3 \x03C3        # Σσ Sigma
base uppercase        \x03A4 \x03C4        # Ττ Tau
base uppercase        \x03A5 \x03C5        # Υυ Upsilon
base uppercase        \x03A6 \x03C6        # Φφ Phi
base uppercase        \x03A7 \x03C7        # Χχ Chi
base uppercase        \x03A8 \x03C8        # Ψψ Psi
base uppercase        \x03A9 \x03C9        # Ωω Omega

# ς Final Sigma
lowercase \x03C2 234
endword \x03C2 234

#################
# Greek Accents #
#################

sign        \x1FEF        4        # ` Varia Accent (Grave)
sign        \x0384        5        # ΄ Tonos Accent (Acute)
sign        \x1FFD        5        # ´ Oxia Accent (Acute)
sign        \x1FC0        6        # ῀ Perispomeni Accent (Circumflex)

sign        \x1FCD        23456        # ῍ Psili and Varia Accents (Smooth Breathing and Grave)
sign        \x1FCE        356        # ῎ Psili and Oxia Accents (Smooth Breathing and Acute)
sign        \x1FCF        256        # ῏ Psili and Perispomeni Accents (Smooth Breathing and Circumflex)

sign        \x1FFE        1236        # ῾ Dasia Accent (Rough Breathing)
sign        \x1FDD        12356        # ῝ Dasia and Varia Accents (Rough Breathing and Grave)
sign        \x1FDE        26        # ῞ Dasia and Oxia Accents (Rough Breathing and Acute)
sign        \x1FDF        235        # ῟ Dasia and Perispomeni Accents (Rough Breathing and Circumflex)

#            ⠈ v   ⠐ o   ⠠ p   ⠾ p+v ⠴ p+o ⠲ p+p ⠧ d   ⠷ d+v ⠢ d+o ⠖ d+p
attribute accent \x1FEF\x0384\x1FC0\x1FCD\x1FCE\x1FCF\x1FFE\x1FDD\x1FDE\x1FDF

##########################
# Greek Accented Letters #
##########################

lowercase \x03AC 5-1 # ά Alpha with Tonos
lowercase \x1F71 5-1 # ά Alpha with Oxia
lowercase \x1F70 4-1 # ὰ Alpha with Varia
lowercase \x1FB1 1 # ᾱ Alpha with Macron
lowercase \x1FB0 1 # ᾰ Alpha with Vrachy
lowercase \x1F00 1 # ἀ Alpha with Psili
lowercase \x1F04 356-1 # ἄ Alpha with Psili and Oxia
lowercase \x1F02 23456-1 # ἂ Alpha with Psili and Varia
lowercase \x1F06 256-1 # ἆ Alpha with Psili and Perispomeni
lowercase \x1F01 1236-1 # ἁ Alpha with Dasia
lowercase \x1F05 26-1 # ἅ Alpha with Dasia and Oxia
lowercase \x1F03 12356-1 # ἃ Alpha with Dasia and Varia
lowercase \x1F07 235-1 # ἇ Alpha with Dasia and Perispomeni
lowercase \x03AD 5-15 # έ Epsilon with Tonos
lowercase \x1F73 5-15 # έ Epsilon with Oxia
lowercase \x1F72 4-15 # ὲ Epsilon with Varia
lowercase \x1F10 15 # ἐ Epsilon with Psili
lowercase \x1F14 356-15 # ἔ Epsilon with Psili and Oxia
lowercase \x1F12 23456-15 # ἒ Epsilon with Psili and Varia
lowercase \x1F11 1236-15 # ἑ Epsilon with Dasia
lowercase \x1F15 26-15 # ἕ Epsilon with Dasia and Oxia
lowercase \x1F13 12356-15 # ἓ Epsilon with Dasia and Varia
lowercase \x03AE 5-345 # ή Eta with Tonos
lowercase \x1F75 5-345 # ή Eta with Oxia
lowercase \x1F74 4-345 # ὴ Eta with Varia
lowercase \x1F20 345 # ἠ Eta with Psili
lowercase \x1F24 356-345 # ἤ Eta with Psili and Oxia
lowercase \x1F22 23456-345 # ἢ Eta with Psili and Varia
lowercase \x1F26 256-345 # ἦ Eta with Psili and Perispomeni
lowercase \x1F21 1236-345 # ἡ Eta with Dasia
lowercase \x1F25 26-345 # ἥ Eta with Dasia and Oxia
lowercase \x1F23 12356-345 # ἣ Eta with Dasia and Varia
lowercase \x1F27 235-345 # ἧ Eta with Dasia and Perispomeni
lowercase \x03CA 24 # ϊ Iota with Dialytika
lowercase \x03AF 5-24 # ί Iota with Tonos
lowercase \x1F77 5-24 # ί Iota with Oxia
lowercase \x1F76 4-24 # ὶ Iota with Varia
lowercase \x1FD1 24 # ῑ Iota with Macron
lowercase \x1FD0 24 # ῐ Iota with Vrachy
lowercase \x1F30 24 # ἰ Iota with Psili
lowercase \x1F34 356-24 # ἴ Iota with Psili and Oxia
lowercase \x1F32 23456-24 # ἲ Iota with Psili and Varia
lowercase \x1F36 256-24 # ἶ Iota with Psili and Perispomeni
lowercase \x1F31 1236-24 # ἱ Iota with Dasia
lowercase \x1F35 26-24 # ἵ Iota with Dasia and Oxia
lowercase \x1F33 12356-24 # ἳ Iota with Dasia and Varia
lowercase \x1F37 235-24 # ἷ Iota with Dasia and Perispomeni
lowercase \x03CC 5-135 # ό Omicron with Tonos
lowercase \x1F79 5-135 # ό Omicron with Oxia
lowercase \x1F78 4-135 # ὸ Omicron with Varia
lowercase \x1F40 135 # ὀ Omicron with Psili
lowercase \x1F44 356-135 # ὄ Omicron with Psili and Oxia
lowercase \x1F42 23456-135 # ὂ Omicron with Psili and Varia
lowercase \x1F41 1236-135 # ὁ Omicron with Dasia
lowercase \x1F45 26-135 # ὅ Omicron with Dasia and Oxia
lowercase \x1F43 12356-135 # ὃ Omicron with Dasia and Varia
lowercase \x1FE5 1236-1235 # ῥ Rho with Dasia
lowercase \x03CB 13456 # ϋ Upsilon with Dialytika
lowercase \x03CD 5-13456 # ύ Upsilon with Tonos
lowercase \x1F7B 5-13456 # ύ Upsilon with Oxia
lowercase \x1F7A 4-13456 # ὺ Upsilon with Varia
lowercase \x1FE1 13456 # ῡ Upsilon with Macron
lowercase \x1FE0 13456 # ῠ Upsilon with Vrachy
lowercase \x1F51 1236-13456 # ὑ Upsilon with Dasia
lowercase \x1F55 26-13456 # ὕ Upsilon with Dasia and Oxia
lowercase \x1F53 12356-13456 # ὓ Upsilon with Dasia and Varia
lowercase \x1F57 235-13456 # ὗ Upsilon with Dasia and Perispomeni
lowercase \x03CE 5-245 # ώ Omega with Tonos
lowercase \x1F7D 5-245 # ώ Omega with Oxia
lowercase \x1F7C 4-245 # ὼ Omega with Varia
lowercase \x1F60 245 # ὠ Omega with Psili
lowercase \x1F64 356-245 # ὤ Omega with Psili and Oxia
lowercase \x1F62 23456-245 # ὢ Omega with Psili and Varia
lowercase \x1F66 256-245 # ὦ Omega with Psili and Perispomeni
lowercase \x1F61 1236-245 # ὡ Omega with Dasia
lowercase \x1F65 26-245 # ὥ Omega with Dasia and Oxia
lowercase \x1F63 12356-245 # ὣ Omega with Dasia and Varia
lowercase \x1F67 235-245 # ὧ Omega with Dasia and Perispomeni

base uppercase \x0386 \x03AC # Άά Alpha with Tonos
base uppercase \x1FBB \x1F71 # Άά Alpha with Oxia
base uppercase \x1FBA \x1F70 # Ὰὰ Alpha with Varia
base uppercase \x1FB9 \x1FB1 # Ᾱᾱ Alpha with Macron
base uppercase \x1FB8 \x1FB0 # Ᾰᾰ Alpha with Vrachy
base uppercase \x1F08 \x1F00 # Ἀἀ Alpha with Psili
base uppercase \x1F0C \x1F04 # Ἄἄ Alpha with Psili and Oxia
base uppercase \x1F0A \x1F02 # Ἂἂ Alpha with Psili and Varia
base uppercase \x1F0E \x1F06 # Ἆἆ Alpha with Psili and Perispomeni
base uppercase \x1F09 \x1F01 # Ἁἁ Alpha with Dasia
base uppercase \x1F0D \x1F05 # Ἅἅ Alpha with Dasia and Oxia
base uppercase \x1F0B \x1F03 # Ἃἃ Alpha with Dasia and Varia
base uppercase \x1F0F \x1F07 # Ἇἇ Alpha with Dasia and Perispomeni
base uppercase \x0388 \x03AD # Έέ Epsilon with Tonos
base uppercase \x1FC9 \x1F73 # Έέ Epsilon with Oxia
base uppercase \x1FC8 \x1F72 # Ὲὲ Epsilon with Varia
base uppercase \x1F18 \x1F10 # Ἐἐ Epsilon with Psili
base uppercase \x1F1C \x1F14 # Ἔἔ Epsilon with Psili and Oxia
base uppercase \x1F1A \x1F12 # Ἒἒ Epsilon with Psili and Varia
base uppercase \x1F19 \x1F11 # Ἑἑ Epsilon with Dasia
base uppercase \x1F1D \x1F15 # Ἕἕ Epsilon with Dasia and Oxia
base uppercase \x1F1B \x1F13 # Ἓἓ Epsilon with Dasia and Varia
base uppercase \x0389 \x03AE # Ήή Eta with Tonos
base uppercase \x1FCB \x1F75 # Ήή Eta with Oxia
base uppercase \x1FCA \x1F74 # Ὴὴ Eta with Varia
base uppercase \x1F28 \x1F20 # Ἠἠ Eta with Psili
base uppercase \x1F2C \x1F24 # Ἤἤ Eta with Psili and Oxia
base uppercase \x1F2A \x1F22 # Ἢἢ Eta with Psili and Varia
base uppercase \x1F2E \x1F26 # Ἦἦ Eta with Psili and Perispomeni
base uppercase \x1F29 \x1F21 # Ἡἡ Eta with Dasia
base uppercase \x1F2D \x1F25 # Ἥἥ Eta with Dasia and Oxia
base uppercase \x1F2B \x1F23 # Ἣἣ Eta with Dasia and Varia
base uppercase \x1F2F \x1F27 # Ἧἧ Eta with Dasia and Perispomeni
base uppercase \x03AA \x03CA # Ϊϊ Iota with Dialytika
base uppercase \x038A \x03AF # Ίί Iota with Tonos
base uppercase \x1FDB \x1F77 # Ίί Iota with Oxia
base uppercase \x1FDA \x1F76 # Ὶὶ Iota with Varia
base uppercase \x1FD9 \x1FD1 # Ῑῑ Iota with Macron
base uppercase \x1FD8 \x1FD0 # Ῐῐ Iota with Vrachy
base uppercase \x1F38 \x1F30 # Ἰἰ Iota with Psili
base uppercase \x1F3C \x1F34 # Ἴἴ Iota with Psili and Oxia
base uppercase \x1F3A \x1F32 # Ἲἲ Iota with Psili and Varia
base uppercase \x1F3E \x1F36 # Ἶἶ Iota with Psili and Perispomeni
base uppercase \x1F39 \x1F31 # Ἱἱ Iota with Dasia
base uppercase \x1F3D \x1F35 # Ἵἵ Iota with Dasia and Oxia
base uppercase \x1F3B \x1F33 # Ἳἳ Iota with Dasia and Varia
base uppercase \x1F3F \x1F37 # Ἷἷ Iota with Dasia and Perispomeni
base uppercase \x038C \x03CC # Όό Omicron with Tonos
base uppercase \x1FF9 \x1F79 # Όό Omicron with Oxia
base uppercase \x1FF8 \x1F78 # Ὸὸ Omicron with Varia
base uppercase \x1F48 \x1F40 # Ὀὀ Omicron with Psili
base uppercase \x1F4C \x1F44 # Ὄὄ Omicron with Psili and Oxia
base uppercase \x1F4A \x1F42 # Ὂὂ Omicron with Psili and Varia
base uppercase \x1F49 \x1F41 # Ὁὁ Omicron with Dasia
base uppercase \x1F4D \x1F45 # Ὅὅ Omicron with Dasia and Oxia
base uppercase \x1F4B \x1F43 # Ὃὃ Omicron with Dasia and Varia
base uppercase \x1FEC \x1FE5 # Ῥῥ Rho with Dasia
base uppercase \x03AB \x03CB # Ϋϋ Upsilon with Dialytika
base uppercase \x038E \x03CD # Ύύ Upsilon with Tonos
base uppercase \x1FEB \x1F7B # Ύύ Upsilon with Oxia
base uppercase \x1FEA \x1F7A # Ὺὺ Upsilon with Varia
base uppercase \x1FE9 \x1FE1 # Ῡῡ Upsilon with Macron
base uppercase \x1FE8 \x1FE0 # Ῠῠ Upsilon with Vrachy
base uppercase \x1F59 \x1F51 # Ὑὑ Upsilon with Dasia
base uppercase \x1F5D \x1F55 # Ὕὕ Upsilon with Dasia and Oxia
base uppercase \x1F5B \x1F53 # Ὓὓ Upsilon with Dasia and Varia
base uppercase \x1F5F \x1F57 # Ὗὗ Upsilon with Dasia and Perispomeni
base uppercase \x038F \x03CE # Ώώ Omega with Tonos
base uppercase \x1FFB \x1F7D # Ώώ Omega with Oxia
base uppercase \x1FFA \x1F7C # Ὼὼ Omega with Varia
base uppercase \x1F68 \x1F60 # Ὠὠ Omega with Psili
base uppercase \x1F6C \x1F64 # Ὤὤ Omega with Psili and Oxia
base uppercase \x1F6A \x1F62 # Ὢὢ Omega with Psili and Varia
base uppercase \x1F6E \x1F66 # Ὦὦ Omega with Psili and Perispomeni
base uppercase \x1F69 \x1F61 # Ὡὡ Omega with Dasia
base uppercase \x1F6D \x1F65 # Ὥὥ Omega with Dasia and Oxia
base uppercase \x1F6B \x1F63 # Ὣὣ Omega with Dasia and Varia
base uppercase \x1F6F \x1F67 # Ὧὧ Omega with Dasia and Perispomeni

uppercase \x1FBC 1-35 # ᾼ Capital Alpha with Prosgegrammeni
uppercase \x1F88 1-35 # ᾈ Capital Alpha with Psili and Prosgegrammeni
uppercase \x1F8C 356-1-35 # ᾌ Capital Alpha with Psili and Oxia and Prosgegrammeni
uppercase \x1F8A 23456-1-35 # ᾊ Capital Alpha with Psili and Varia and Prosgegrammeni
uppercase \x1F8E 256-1-35 # ᾎ Capital Alpha with Psili and Perispomeni and Prosgegrammeni
uppercase \x1F89 1236-1-35 # ᾉ Capital Alpha with Dasia and Prosgegrammeni
uppercase \x1F8D 26-1-35 # ᾍ Capital Alpha with Dasia and Oxia and Prosgegrammeni
uppercase \x1F8B 12356-1-35 # ᾋ Capital Alpha with Dasia and Varia and Prosgegrammeni
uppercase \x1F8F 235-1-35 # ᾏ Capital Alpha with Dasia and Perispomeni and Prosgegrammeni
uppercase \x1FCC 3456 # ῌ Capital Eta with Prosgegrammeni
uppercase \x1F98 3456 # ᾘ Capital Eta with Psili and Prosgegrammeni
uppercase \x1F9C 356-3456 # ᾜ Capital Eta with Psili and Oxia and Prosgegrammeni
uppercase \x1F9A 23456-3456 # ᾚ Capital Eta with Psili and Varia and Prosgegrammeni
uppercase \x1F9E 256-3456 # ᾞ Capital Eta with Psili and Perispomeni and Prosgegrammeni
uppercase \x1F99 1236-3456 # ᾙ Capital Eta with Dasia and Prosgegrammeni
uppercase \x1F9D 26-3456 # ᾝ Capital Eta with Dasia and Oxia and Prosgegrammeni
uppercase \x1F9B 12356-3456 # ᾛ Capital Eta with Dasia and Varia and Prosgegrammeni
uppercase \x1F9F 235-3456 # ᾟ Capital Eta with Dasia and Perispomeni and Prosgegrammeni
uppercase \x1FFC 2456 # ῼ Capital Omega with Prosgegrammeni
uppercase \x1FA8 2456 # ᾨ Capital Omega with Psili and Prosgegrammeni
uppercase \x1FAC 356-2456 # ᾬ Capital Omega with Psili and Oxia and Prosgegrammeni
uppercase \x1FAA 23456-2456 # ᾪ Capital Omega with Psili and Varia and Prosgegrammeni
uppercase \x1FAE 256-2456 # ᾮ Capital Omega with Psili and Perispomeni and Prosgegrammeni
uppercase \x1FA9 1236-2456 # ᾩ Capital Omega with Dasia and Prosgegrammeni
uppercase \x1FAD 26-2456 # ᾭ Capital Omega with Dasia and Oxia and Prosgegrammeni
uppercase \x1FAB 12356-2456 # ᾫ Capital Omega with Dasia and Varia and Prosgegrammeni
uppercase \x1FAF 235-2456 # ᾯ Capital Omega with Dasia and Perispomeni and Prosgegrammeni

lowercase \x1FB6 6-1 # ᾶ Small Alpha with Perispomeni
lowercase \x1FB3 1-35 # ᾳ Small Alpha with Ypogegrammeni
lowercase \x1FB4 5-1-35 # ᾴ Small Alpha with Oxia and Ypogegrammeni
lowercase \x1FB2 4-1-35 # ᾲ Small Alpha with Varia and Ypogegrammeni
lowercase \x1FB7 6-1-35 # ᾷ Small Alpha with Perispomeni and Ypogegrammeni
lowercase \x1F80 1-35 # ᾀ Small Alpha with Psili and Ypogegrammeni
lowercase \x1F84 356-1-35 # ᾄ Small Alpha with Psili and Oxia and Ypogegrammeni
lowercase \x1F82 23456-1-35 # ᾂ Small Alpha with Psili and Varia and Ypogegrammeni
lowercase \x1F86 256-1-35 # ᾆ Small Alpha with Psili and Perispomeni and Ypogegrammeni
lowercase \x1F81 1236-1-35 # ᾁ Small Alpha with Dasia and Ypogegrammeni
lowercase \x1F85 26-1-35 # ᾅ Small Alpha with Dasia and Oxia and Ypogegrammeni
lowercase \x1F83 12356-1-35 # ᾃ Small Alpha with Dasia and Varia and Ypogegrammeni
lowercase \x1F87 235-1-35 # ᾇ Small Alpha with Dasia and Perispomeni and Ypogegrammeni
lowercase \x1FC6 6-345 # ῆ Small Eta with Perispomeni
lowercase \x1FC3 3456 # ῃ Small Eta with Ypogegrammeni
lowercase \x1FC4 5-3456 # ῄ Small Eta with Oxia and Ypogegrammeni
lowercase \x1FC2 4-3456 # ῂ Small Eta with Varia and Ypogegrammeni
lowercase \x1FC7 6-3456 # ῇ Small Eta with Perispomeni and Ypogegrammeni
lowercase \x1F90 3456 # ᾐ Small Eta with Psili and Ypogegrammeni
lowercase \x1F94 356-3456 # ᾔ Small Eta with Psili and Oxia and Ypogegrammeni
lowercase \x1F92 23456-3456 # ᾒ Small Eta with Psili and Varia and Ypogegrammeni
lowercase \x1F96 256-3456 # ᾖ Small Eta with Psili and Perispomeni and Ypogegrammeni
lowercase \x1F91 1236-3456 # ᾑ Small Eta with Dasia and Ypogegrammeni
lowercase \x1F95 26-3456 # ᾕ Small Eta with Dasia and Oxia and Ypogegrammeni
lowercase \x1F93 12356-3456 # ᾓ Small Eta with Dasia and Varia and Ypogegrammeni
lowercase \x1F97 235-3456 # ᾗ Small Eta with Dasia and Perispomeni and Ypogegrammeni
lowercase \x0390 5-24 # ΐ Small Iota with Dialytika and Tonos
lowercase \x1FD3 5-24 # ΐ Small Iota with Dialytika and Oxia
lowercase \x1FD2 4-24 # ῒ Small Iota with Dialytika and Varia
lowercase \x1FD6 6-24 # ῖ Small Iota with Perispomeni
lowercase \x1FD7 6-24 # ῗ Small Iota with Dialytika and Perispomeni
lowercase \x1FE4 1235 # ῤ Small Rho with Psili
lowercase \x03B0 5-13456 # ΰ Small Upsilon with Dialytika and Tonos
lowercase \x1FE3 5-13456 # ΰ Small Upsilon with Dialytika and Oxia
lowercase \x1FE2 4-13456 # ῢ Small Upsilon with Dialytika and Varia
lowercase \x1FE6 6-13456 # ῦ Small Upsilon with Perispomeni
lowercase \x1FE7 6-13456 # ῧ Small Upsilon with Dialytika and Perispomeni
lowercase \x1F50 13456 # ὐ Small Upsilon with Psili
lowercase \x1F54 356-13456 # ὔ Small Upsilon with Psili and Oxia
lowercase \x1F52 23456-13456 # ὒ Small Upsilon with Psili and Varia
lowercase \x1F56 256-13456 # ὖ Small Upsilon with Psili and Perispomeni
lowercase \x1FF6 6-245 # ῶ Small Omega with Perispomeni
lowercase \x1FF3 2456 # ῳ Small Omega with Ypogegrammeni
lowercase \x1FF4 5-2456 # ῴ Small Omega with Oxia and Ypogegrammeni
lowercase \x1FF2 4-2456 # ῲ Small Omega with Varia and Ypogegrammeni
lowercase \x1FF7 6-2456 # ῷ Small Omega with Perispomeni and Ypogegrammeni
lowercase \x1FA0 2456 # ᾠ Small Omega with Psili and Ypogegrammeni
lowercase \x1FA4 356-2456 # ᾤ Small Omega with Psili and Oxia and Ypogegrammeni
lowercase \x1FA2 23456-2456 # ᾢ Small Omega with Psili and Varia and Ypogegrammeni
lowercase \x1FA6 256-2456 # ᾦ Small Omega with Psili and Perispomeni and Ypogegrammeni
lowercase \x1FA1 1236-2456 # ᾡ Small Omega with Dasia and Ypogegrammeni
lowercase \x1FA5 26-2456 # ᾥ Small Omega with Dasia and Oxia and Ypogegrammeni
lowercase \x1FA3 12356-2456 # ᾣ Small Omega with Dasia and Varia and Ypogegrammeni
lowercase \x1FA7 235-2456 # ᾧ Small Omega with Dasia and Perispomeni and Ypogegrammeni

#######################
# General Punctuation #
#######################

# Hyphen
sign        -        36
hyphen        -        36

punctuation        '        3        # ’ Apostrophe
always '\x03C2 3-234
always \x03C3' 234-3

punctuation , 2 # , Comma
midnum , 2 # Decimal Point

punctuation        :        25        # : Colon

punctuation        \x0387        23        # · Ano Teleia (Semicolon)
punctuation        \x1FBD        3        # ᾽ Koronis (Apostrophe)
punctuation        \x2015        6-36        # ― Dialog (Horizontal) Bar
punctuation        \x2018        3        # ‘ Left Single Quote
punctuation        \x2019        3        # ’ Right Single Quote
punctuation        \x2026        3-3-3        # … Horizontal Ellipsis

#########
# Signs #
#########

sign        *        35-35        # Asterisk
sign        /        34        # Slash
sign        _        456        # Underline
sign        @        4-1        # At Sign
sign        %        4-356        # Percent Sign
sign        €        4-15        # Euro Sign
sign        $        4-234        # Dollar Sign

################
# Math Symbols #
################

math        +        346        # Addition

math        \x2212        36        # Subtraction
endnum        -        36        # Subtraction

math        \x00D7        46-16        # Multiplication
endnum        *        46-16        # Multiplication

math        \x00F7        46-34        # Division
endnum        /        46-34        # Division

math        =        46-13        # Equals
math        <        5-13        # Less Than
math        >        46-2        # Greater Than

#################
# Braille Cells #
#################

include braille-patterns.cti

##########################
# Positional Punctuation #
##########################

# . Period
punctuation . 256
midnum . 46 # Digit Grouping
postpunc . 256

# « Greek Opening Quotation Mark (Left-Pointing Double Angle Quotation Mark)
punctuation \x00AB 23678
prepunc     \x00AB 236

# » Greek Closing Quotation Mark (Right-Pointing Double Angle Quotation Mark)
punctuation \x00BB 35678
postpunc    \x00BB 356

# "" English Quotation Marks
punctuation " 235678
prepunc     " 6-236
postpunc    " 356-3

# ( Opening Parenthesis
punctuation ( 23678
prepunc     ( 2356

# ) Closing Parenthesis
punctuation ) 35678
postpunc    ) 2356

# [ Opening Bracket
punctuation [ 1235678
prepunc     [ 12356

# ] Closing Bracket
punctuation ] 2345678
postpunc    ] 23456

# { Opening Brace
punctuation { 1234678
prepunc     { 12346

# } Closing Brace
punctuation } 1345678
postpunc    } 13456

# ? English Question Mark
punctuation ? 236
postpunc ? 236

# ! Exclamation Mark
punctuation        !        235
postpunc        !        235

# ; Greek Question Mark
punctuation        \x037E        26
postpunc        \x037E        26

###########
# Numbers #
###########

include digits6Dots.uti

numsign 3456
include litdigits6Dots.uti

####################
# Greek Diphthongs #
####################

# For the diphthong contractions to be mroe easily coded,
# we first remove accents that don't generate any braille.

# The Dialytika isn't rendered in braille.
noback correct "\x03AA" "\x0399" # ΪΙ Capital Iota with Dialytika
noback correct "\x03CA" "\x03B9" # ϊι Small Iota with Dialytika
noback correct "\x0390" "\x03AF" # ΐί Small Iota with Dialytika and Tonos
noback correct "\x1FD3" "\x1F77" # ΐί Small Iota with Dialytika and Oxia
noback correct "\x1FD2" "\x1F76" # ῒὶ Small Iota with Dialytika and Varia
noback correct "\x1FD7" "\x1FD6" # ῗῖ Small Iota with Dialytika and Perispomeni
noback correct "\x03AB" "\x03A5" # ΫΥ Capital Upsilon with Dialytika
noback correct "\x03CB" "\x03C5" # ϋυ Small Upsilon with Dialytika
noback correct "\x03B0" "\x03CD" # ΰύ Small Upsilon with Dialytika and Tonos
noback correct "\x1FE3" "\x1F7B" # ΰύ Small Upsilon with Dialytika and Oxia
noback correct "\x1FE2" "\x1F7A" # ῢὺ Small Upsilon with Dialytika and Varia
noback correct "\x1FE7" "\x1FE6" # ῧῦ Small Upsilon with Dialytika and Perispomeni

# The Psili when not used with any other accent isn't rendered in braille.
noback correct "\x1F08" "\x0391" # ἈΑ Capital Alpha with Psili
noback correct "\x1F18" "\x0395" # ἘΕ Capital Epsilon with Psili
noback correct "\x1F28" "\x0397" # ἨΗ Capital Eta with Psili
noback correct "\x1F38" "\x0399" # ἸΙ Capital Iota with Psili
noback correct "\x1F48" "\x039F" # ὈΟ Capital Omicron with Psili
noback correct "\x1F68" "\x03A9" # ὨΩ Capital Omega with Psili
noback correct "\x1F00" "\x03B1" # ἀα Small Alpha with Psili
noback correct "\x1F10" "\x03B5" # ἐε Small Epsilon with Psili
noback correct "\x1F20" "\x03B7" # ἠη Small Eta with Psili
noback correct "\x1F30" "\x03B9" # ἰι Small Iota with Psili
noback correct "\x1F40" "\x03BF" # ὀο Small Omicron with Psili
noback correct "\x1FE4" "\x03C1" # ῤρ Small Rho with Psili
noback correct "\x1F50" "\x03C5" # ὐυ Small Upsilon with Psili
noback correct "\x1F60" "\x03C9" # ὠω Small Omega with Psili

# These are the diphthong contractions.
always \x03B1\x03B9        126        # αι Alpha Iota
always \x03B1\x03C5        16        # αυ Alpha Upsilon
always \x03B5\x03B9        146        # ει Epsilon Iota
always \x03B5\x03C5        156        # ευ Epsilon Upsilon
always \x03B7\x03C5        1256        # ηυ Eta Upsilon
always \x03BF\x03B9        246        # οι Omicron Iota
always \x03BF\x03C5        136        # ου Omicron Upsilon
always \x03C5\x03B9        12456        # υι Upsilon Iota

# Accents are always applied to the second vowel of a diphthong.

# For forward translation, move the accents to before the contraction.
noback pass2 @1[%accent]@24        *@126        # αι Alpha Iota
noback pass2 @1[%accent]@13456        *@16        # αυ Alpha Upsilon
noback pass2 @15[%accent]@24        *@146        # ει Epsilon Iota
noback pass2 @15[%accent]@13456        *@156        # ευ Epsilon Upsilon
noback pass2 @345[%accent]@13456        *@1256        # ηυ Eta Upsilon
noback pass2 @135[%accent]@24        *@246        # οι Omicron Iota
noback pass2 @135[%accent]@13456        *@136        # ου Omicron Upsilon
noback pass2 @13456[%accent]@24        *@12456        # υι Upsilon Iota

# For back translation, move the accents to before the second vowel.
nofor pass2 [%accent]@126        @1*@24        # αι Alpha Iota
nofor pass2 [%accent]@16        @1*@13456        # αυ Alpha Upsilon
nofor pass2 [%accent]@146        @15*@24        # ει Epsilon Iota
nofor pass2 [%accent]@156        @15*@13456        # ευ Epsilon Upsilon
nofor pass2 [%accent]@1256        @345*@13456        # ηυ Eta Upsilon
nofor pass2 [%accent]@246        @135*@24        # οι Omicron Iota
nofor pass2 [%accent]@136        @135*@13456        # ου Omicron Upsilon
nofor pass2 [%accent]@12456        @13456*@24        # υι Upsilon Iota

##############
# Indicators #
##############

capsletter        46
begcapsword 46-46

####################
# English Alphabet #
####################

# Define all of them as just letters in order to avoid Greek capital signs.
# Add virtual dot E to the uppercase letters, and virtual dot F to the
# lowercase letters, so that they have unique braille representations that
# don't overlap with those used for Greek characters.

# The uppercase English letters.
letter A 1e
letter B 12e
letter C 14e
letter D 145e
letter E 15e
letter F 124e
letter G 1245e
letter H 125e
letter I 24e
letter J 245e
letter K 13e
letter L 123e
letter M 134e
letter N 1345e
letter O 135e
letter P 1234e
letter Q 12345e
letter R 1235e
letter S 234e
letter T 2345e
letter U 136e
letter V 1236e
letter W 2456e
letter X 1346e
letter Y 13456e
letter Z 1356e

# The lowercase English letters.
letter a 1f
letter b 12f
letter c 14f
letter d 145f
letter e 15f
letter f 124f
letter g 1245f
letter h 125f
letter i 24f
letter j 245f
letter k 13f
letter l 123f
letter m 134f
letter n 1345f
letter o 135f
letter p 1234f
letter q 12345f
letter r 1235f
letter s 234f
letter t 2345f
letter u 136f
letter v 1236f
letter w 2456f
letter x 1346f
letter y 13456f
letter z 1356f

##########################################
# Forward Translation of English Letters #
##########################################

# Prepend the English letter sign to each block of English letters.
attribute englishLetter abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
noback pass2 %englishLetter. @56*

# Prepend the English capital sign to each uppercase English letter.
attribute englishUpper ABCDEFGHIJKLMNOPQRSTUVWXYZ
noback pass3 %englishUpper @6*

# Remove virtual dot F from the lowercase English letters.
noback pass4 [@1F] @1 # a
noback pass4 [@12F] @12 # b
noback pass4 [@14F] @14 # c
noback pass4 [@145F] @145 # d
noback pass4 [@15F] @15 # e
noback pass4 [@124F] @124 # f
noback pass4 [@1245F] @1245 # g
noback pass4 [@125F] @125 # h
noback pass4 [@24F] @24 # i
noback pass4 [@245F] @245 # j
noback pass4 [@13F] @13 # k
noback pass4 [@123F] @123 # l
noback pass4 [@134F] @134 # m
noback pass4 [@1345F] @1345 # n
noback pass4 [@135F] @135 # o
noback pass4 [@1234F] @1234 # p
noback pass4 [@12345F] @12345 # q
noback pass4 [@1235F] @1235 # r
noback pass4 [@234F] @234 # s
noback pass4 [@2345F] @2345 # t
noback pass4 [@136F] @136 # u
noback pass4 [@1236F] @1236 # v
noback pass4 [@2456F] @2456 # w
noback pass4 [@1346F] @1346 # x
noback pass4 [@13456F] @13456 # y
noback pass4 [@1356F] @1356 # z

# Remove virtual dot E from the uppercase English letters.
noback pass4 [@1E] @1 # A
noback pass4 [@12E] @12 # B
noback pass4 [@14E] @14 # C
noback pass4 [@145E] @145 # D
noback pass4 [@15E] @15 # E
noback pass4 [@124E] @124 # F
noback pass4 [@1245E] @1245 # G
noback pass4 [@125E] @125 # H
noback pass4 [@24E] @24 # I
noback pass4 [@245E] @245 # J
noback pass4 [@13E] @13 # K
noback pass4 [@123E] @123 # L
noback pass4 [@134E] @134 # M
noback pass4 [@1345E] @1345 # N
noback pass4 [@135E] @135 # O
noback pass4 [@1234E] @1234 # P
noback pass4 [@12345E] @12345 # Q
noback pass4 [@1235E] @1235 # R
noback pass4 [@234E] @234 # S
noback pass4 [@2345E] @2345 # T
noback pass4 [@136E] @136 # U
noback pass4 [@1236E] @1236 # V
noback pass4 [@2456E] @2456 # W
noback pass4 [@1346E] @1346 # X
noback pass4 [@13456E] @13456 # Y
noback pass4 [@1356E] @1356 # Z

###########################################
# Backward Translation of English Letters #
###########################################

nofor pass2 @56 ?#1=1
nofor pass2 #1=1@6 ?#1=2
nofor pass2 [$a] *#1=0

# Add virtual dot F to indicate a lowercase English letter.
nofor pass2 #1=1@1 @1F # a
nofor pass2 #1=1@12 @12F # b
nofor pass2 #1=1@14 @14F # c
nofor pass2 #1=1@145 @145F # d
nofor pass2 #1=1@15 @15F # e
nofor pass2 #1=1@124 @124F # f
nofor pass2 #1=1@1245 @1245F # g
nofor pass2 #1=1@125 @125F # h
nofor pass2 #1=1@24 @24F # i
nofor pass2 #1=1@245 @245F # j
nofor pass2 #1=1@13 @13F # k
nofor pass2 #1=1@123 @123F # l
nofor pass2 #1=1@134 @134F # m
nofor pass2 #1=1@1345 @1345F # n
nofor pass2 #1=1@135 @135F # o
nofor pass2 #1=1@1234 @1234F # p
nofor pass2 #1=1@12345 @12345F # q
nofor pass2 #1=1@1235 @1235F # r
nofor pass2 #1=1@234 @234F # s
nofor pass2 #1=1@2345 @2345F # t
nofor pass2 #1=1@136 @136F # u
nofor pass2 #1=1@1236 @1236F # v
nofor pass2 #1=1@2456 @2456F # w
nofor pass2 #1=1@1346 @1346F # x
nofor pass2 #1=1@13456 @13456F # y
nofor pass2 #1=1@1356 @1356F # z

# Add virtual dot E to indicate an uppercase English letter.
nofor pass2 #1=2@1 @1E#1=1 # A
nofor pass2 #1=2@12 @12E#1=1 # B
nofor pass2 #1=2@14 @14E#1=1 # C
nofor pass2 #1=2@145 @145E#1=1 # D
nofor pass2 #1=2@15 @15E#1=1 # E
nofor pass2 #1=2@124 @124E#1=1 # F
nofor pass2 #1=2@1245 @1245E#1=1 # G
nofor pass2 #1=2@125 @125E#1=1 # H
nofor pass2 #1=2@24 @24E#1=1 # I
nofor pass2 #1=2@245 @245E#1=1 # J
nofor pass2 #1=2@13 @13E#1=1 # K
nofor pass2 #1=2@123 @123E#1=1 # L
nofor pass2 #1=2@134 @134E#1=1 # M
nofor pass2 #1=2@1345 @1345E#1=1 # N
nofor pass2 #1=2@135 @135E#1=1 # O
nofor pass2 #1=2@1234 @1234E#1=1 # P
nofor pass2 #1=2@12345 @12345E#1=1 # Q
nofor pass2 #1=2@1235 @1235E#1=1 # R
nofor pass2 #1=2@234 @234E#1=1 # S
nofor pass2 #1=2@2345 @2345E#1=1 # T
nofor pass2 #1=2@136 @136E#1=1 # U
nofor pass2 #1=2@1236 @1236E#1=1 # V
nofor pass2 #1=2@2456 @2456E#1=1 # W
nofor pass2 #1=2@1346 @1346E#1=1 # X
nofor pass2 #1=2@13456 @13456E#1=1 # Y
nofor pass2 #1=2@1356 @1356E#1=1 # Z