# liblouis: Arabic Grade 2 table

# Based on the official Unified Arabic Braille Project website
# <https://mip.qa/braille>: a comprehensive resource containing all
# details about Arabic braille, including complete references,
# tutorials and awareness articles. It also provides a platform for
# suggestions and comments to improve Arabic braille further.

# Copyright (C) 2018, 2020 by Ikrami Ahmad <ikrami.ahmad@gmail.com>
# Copyright (C) 2020 Mada, Qatar Assistive Technology Center <Braille@mada.org.qa>

# This file 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.

# This file 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 this file; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA

#-index-name: Arabic, contracted
#-display-name: Arabic contracted braille
#+language: ar
#+type: literary
#+contraction: full
#+grade: 2
# Marked as "direction:both" by Bue Vester-Andersen
# as tests run both forward and backward
#+direction: both
#-author: Ikrami Ahmad <ikrami.ahmad@gmail.com>

include ar-ar-g1-core.uti

# first rule: these should be abbriviated everywhere, whether as stand alone word or part of a bigger word.
always برمج 4-12
always بعد 5-12
always بعيد 45-12
always برنامج 456-12

always تعليم 4-2345
always تحت 5-2345
always تدريب 45-2345
always تدريج 456-2345

always ثقاف 4-1456
always أثناء 5-1456
always ثاني 45-1456
always ثالث 456-1456

always جديد 4-245
always جميع 5-245
always جانب 45-245
always جعل 456-245

always أحيان 4-156
always حياة 5-156
always حقيق 45-156
always حول 456-156

always خروج 4-1346
always خصوص 5-1346
always خارج 45-1346
always خاصة 456-1346

always دقيق 4-145
always دائم 5-145
always داخل 45-145
always دليل 456-145

always ذاهب 4-2346
always ذلك 5-2346
always حينئذ 45-2346
always عندئذ 456-2346

always رياض 4-1235
always روح 5-1235
always رئيس 45-1235
always رسول 456-1235

always زواج 4-1356
always زمان 5-1356
always زمن 45-1356
always زوج 456-1356

always سياس 4-234
always سريع 5-234
always سائر 45-234
always سبيل 456-234

always شيئا 4-146
always شديد 5-146
always شاهد 45-146
always شؤون 456-146

always صديق 4-12346
always & 56-4-12346
always صاحب 5-12346
always صغير 45-12346
always صور 456-12346

always ضعيف 4-1246
always ضمير 5-1246
always بعض 45-1246
always ضرور 456-1246

always طبيع 4-23456
always طريق 5-23456
always طبع 45-23456
always طويل 456-23456

always حافظ 4-123456
always ظاهر 5-123456
always ظروف 45-123456
always ظهور 456-123456

always عادة 4-12356
always عزيز 5-12356
always عبارة 45-12356
always عظيم 456-12356

always غادر 4-126
always غير 5-126
always غالب 45-126
always غريب 456-126

always فراغ 4-124
always فوق 5-124
always فائدة 45-124
always فعل 456-124

always قطع 4-12345
always قليل 5-12345
always قريب 45-12345
always قديم 456-12345 # previously partword

always كتاب 4-13
always كثير 5-13
always كبير 45-13
always كاتب 456-13

always لطيف 4-123
always لكن 5-123
always لعل 45-123
always لسان 456-123

always مكفوف 4-134
always مرة 5-134
always معنى 45-134
always معظم 456-134

always ناسب 4-1345
always نفس 5-1345
always ناحية 45-1345
always نعم 456-1345

always هكذا 4-125
always هذا 5-125
always هذه 45-125
always هؤلاء 456-125

always وارد 4-2456
always واحد 5-2456
always واجب 45-2456
always وجود 456-2456

always \x0644\x0627\x0020\x0633\x064A\x0645\x0627 4-1236 # لا سيما
always \x0644\x0627\x0020\x0634\x0643 5-1236 # لا شك
always \x0644\x0627\x0020\x0628\x062F 45-1236 # لا بد
always \x0644\x0627\x0020\x064A\x0632\x0627\x0644 456-1236 # لا يزال

always يسير 4-24
always أيام 5-24
always يمكن 45-24
always يقول 456-24

always أعلى 4-135
always أولى 5-135
always أدنى 6-135
always أخرى 45-135
always أغنى 56-135
always أقصى 456-135

always جملة 4-16
always ساعة 5-16
always تارة 45-16
always تربية 56-16
always لحظة 456-16

always أكبر 4-34
always أحد 5-34
always أسفل 6-34
always أخير 45-34
always أصغر 56-34
always أكثر 456-34

always مؤمن 4-1256
always مسؤول 5-1256
always مؤلف 6-1256
always مؤسس 45-1256
always مؤتمر 56-1256
always مؤثر 456-1256

always قائل 4-13456
always لأجل 5-13456
always سائل 6-13456
always قائم 45-13456
always شائع 56-13456
always فائز 456-13456

always آداب 4-345
always آراء 5-345
always آفاق 6-345
always آخر 45-345
always آثار 56-345
always أيها 456-345

always \x0644\x0645\x0020\x064A\x0639\x062F 4-15 # لم يعد
always \x0644\x0645\x0020\x064A\x0643\x0646 5-15 # لم يكن
always \x0644\x0645\x0020\x064A\x062A\x0645\x0643\x0646 6-15 # لم يتمكن
always \x0644\x0645\x0020\x0020\x064A\x0644\x0628\x062B 45-15 # لم يلبث
always \x0644\x0645\x0020\x064A\x0633\x062A\x0637\x0639 56-15 # لم يستطع
always \x0644\x0645\x0020\x064A\x0632\x0644 456-15 # لم يزل

always حقوق 4-136
always حاسب 5-136
always حاسوب 6-136
always حروف 45-136
always حدود 56-136
always دنيا 456-136

always ال 14
always اللائي 4-14
always الذي 5-14
always الناس 6-14
always التي 45-14
always اللاتي 56-14
always الذين 456-14

always كان 1245
always كون 4-1245
always كائن 5-1245
always كلم 6-1245
always كريم 45-1245
always تكوين 56-1245
always تكنولوجي 456-1245

always ما 1234
always \x0645\x0627\x0020\x0632\x0627\x0644 4-1234 # ما زال
always ماذا 5-1234
always \x0645\x0627\x0020\x0627\x0646\x0641\x0643 6-1234 # ما انفك
always \x0645\x0627\x0020\x0628\x0631\x062D 45-1234 # ما برح
always \x0645\x0627\x0020\x062F\x0627\x0645 56-1234 # ما دام
always \x0645\x0627\x0020\x0639\x062F\x0627 456-1234 # ما عدا

always هم 12456
always هاجر 4-12456
always هاتف 5-12456
always هامش 6-12456
always هندس 45-12456
always هيئة 56-12456
always هيمن 456-12456

always إحصاء 4-246
always إنسان 5-246
always إنتاج 6-246
always إسلام 45-246
always إخراج 56-246
always إيمان 456-246

always ين 346
always ينطبق 4-346
always ينمو 5-346
always ينعكس 6-346
always ينبغي 45-346
always ينتشر 56-346
always يندرج 456-346

#Second rule: these should be abbriviated if they come as a single word only, they can't be abbriviated if part of bigger word.
word أو 1
contraction ا
word بل 12
contraction ب
word ثم 1456
contraction ث
word قد 3
contraction ء
word كل 345
word آ 56-56-345 # double letter sign because of always آثار 56-345

#Third rule: these should be abbriviated if they are a word or at the beginning of a word only, because of their similarity with diacritic symbols.
sufword لم 15
sufword ِ 56-56-15 # double letter sign because of always لم يستطع 56-15
sufword عن 35
word ٍ 56-56-35 # using double letter sign because of sign * 56-35
sufword إلى 26
contraction ٌ
sufword حيث 136
sufword ُ 56-56-136 # double letter sign because of always حدود 56-136
sufword مع 23
contraction ً
sufword لل 25
contraction ْ

#fourth rule: these should be abbriviated if they came as a seperate word and if they came in the middle of words only, because of their similarity to punctuation marks.
lowword هو 236
lowword متى 2356
midword هو 236
midword متى 2356

#fifth rule: these should be abbriviated if they come as a word or part of a word at the beginning or the middle, because of their similarity with punctuation marks that close sentences.
lowword من 356
lowword في 235
lowword ست 256
begmidword من 356
begmidword في 235
begmidword ست 256

#sixth rule: if the following abbriviations come as single words, they should be abbriviated normally. but if they come as a part of bigger word, dots 36 must be placed before the character that represents the abbreviated word.
#firstly we will identify them as part of bigger words.
partword تلك 36-2345
partword جدا 36-245
partword حتى 36-156
partword خير 36-1346
partword إذا 36-246
partword دخول 36-145 
partword ذاكر 36-2346 
partword ربما 36-1235 
partword زاول 36-1356 
partword سوف 36-234 
partword أيضا 36-1246 
partword شيء 36-146 
partword صار 36-12346 
partword فقط 36-23456
partword ظهر 36-123456 
partword عسى 36-12356 
partword غاية 36-126 
partword فلما 36-124 
partword قرب 36-12345 
partword كيف 36-13 
partword ليس 36-123 
partword مثل 36-134 
partword نحو 36-1345 
partword هناك 36-125
partword ولما 36-2456
partword يوم 36-24 
partword على 36-135 
partword قبل 36-16 
partword أولئك 36-1256 
partword إلا 36-13456 
partword أسئلة 36-34

#as a single word, no 36 placed before the character.
word تلك 2345
contraction ت
word جدا 245
contraction ج
word حتى 156
contraction ح
word خير 1346
contraction خ
word إذا 246
word دخول 145
contraction د
word ذاكر 2346
contraction ذ
word ربما 1235
contraction ر
word زاول 1356 
contraction ز
word سوف 234 
contraction س
word أيضا 1246 
contraction ض
word شيء 146 
contraction ش
word صار 12346 
contraction ص
word فقط 23456 
contraction ط
word ظهر 123456 
contraction ظ
word عسى 12356 
contraction ع
word غاية 126 
contraction غ
word فلما 124 
contraction ف
word قرب 12345 
contraction ق
word كيف 13 
contraction ك
word ليس 123 
contraction ل
word مثل 134 
contraction م
word نحو 1345 
contraction ن
word هناك 125
contraction ه
word ولما 2456 
contraction و
word يوم 24 
contraction ي
word على 135
word ى 56-56-135 # double letter sign because of always أغنى 56-135
word قبل 16 
word ة 56-56-16 # double letter sign because of always تربية 56-16
word أولئك 1256 
word ؤ 56-56-1256 # double letter sign because of always مؤتمر 56-1256
word إلا 13456
word ئ 56-56-13456 # double letter sign because of always شائع 56-13456
word إسئلة 34 
word أ 56-56-34 # double letter sign because of always أصغر 56-34

#seventh rule: if the letter that procedes any of these abbreviations consists of dots 1 2 and 3 only, they should not be abbreviated.
#here i will use the match opcode to define the 6 possible characters that can come before these contractions.
match ل ون %[_.^] 2456-1345
match ب ون %[_.^] 2456-1345
match ا ون %[_.^] 2456-1345
match ك ون %[_.^] 2456-1345
match ء ون %[_.^] 2456-1345
match َ ون %[_.^] 2456-1345

match ل ات %[_.^] 1-2345
match ب ات %[_.^] 1-2345
match ا ات %[_.^] 1-2345
match ك ات %[_.^] 1-2345
match ء ات %[_.^] 1-2345
match َ ات %[_.^] 1-2345

match ل ية %[_.^] 24-16
match ب ية %[_.^] 24-16
match ا ية %[_.^] 24-16
match ك ية %[_.^] 24-16
match ء ية %[_.^] 24-16
match َ ية %[_.^] 24-16

#eighth rule: those should be abbreviated only at the end of word.
endword ات 46
endword ون 456
endword ية 45
endword وا 3456