غُنّة
أحكام التجويد، مُستنبَطةً.
محرّكٌ يستنبط أحكام التجويد الكلاسيكي. يدخله النصُّ العثماني المشكول فتخرج منه الأحكام: كلُّ موضعٍ يحمل حروفه المُوجِبة، واستنباطه بالعربية والإنجليزية، والإحالة إلى بيت المنظومة الذي جاء منه.
ما الذي يُرجِعه النداء
import { annotateVerse } from "ghunna";
const { text, annotations } = annotateVerse(2, 255);
// each annotation:
// {
// rule: "iqlab",
// name: { arabic: "الإقلاب", transliteration: "iqlāb", english: "conversion to mīm" },
// range: [17, 22], // codepoint range into text
// derivation: "nūn sākinah/tanwīn followed by ب → the nūn is converted to a concealed mīm with ghunnah",
// citation: { text: "tuhfah", lines: [13] }, // line 13 of Tuḥfat al-Aṭfāl
// waqfDependent: false,
// confidence: "certain",
// }
النطاق هو رواية حفصٍ عن عاصم من طريق الشاطبية. والمكتبة مكتوبةٌ بلغة TypeScript الخالصة، تعمل في المتصفّح وفي Node على السواء، وتُشحن بصيغتَي ESM وCJS.
مُستنبَطةٌ لا مأخوذةٌ من جدول
المصادر الرقمية الموجودة للتجويد ــ فيما نعلم كلَّها ــ ترميزٌ لمصحفٍ سبق تلوينه: جدولٌ ثابتٌ من المواضع الملوّنة، منقولٌ من صفحةٍ مطبوعة. وهذه المكتبة تسلك العكس؛ فهي تطبّق الأحكام كما نُصّ عليها في المنظومتين التعليميتين، تحفة الأطفال والمقدمة الجزرية، وتستنبط كلَّ موضعٍ من حروف النص وحركاته وحدها.
ولهذا الفرق صورةٌ تقنيةٌ دقيقة. فالترميز العثماني يحمل إشاراتٍ للنطق مطبوعةً في المصحف: الميم الصغيرة عند مواضع الإقلاب، والمدّة فوق المدود الطويلة. والمحرّك لا يقرؤها البتّة؛ بل هي مُدَّخرةٌ للتحقق حيث يُقارَن ما استُنبِط بما يطبعه المصحف. فمحرّك الاستنباط يمكن أن يُقارَن بالمطبوع، أما نسخُ المطبوع فلا يمكن أن يُقارَن بشيء.
وينتج عن ذلك ثلاثة أمور. الأول: كلُّ موضعٍ يقدر أن يشرح نفسه، فالمخرجات تحمل الاستنباط والإحالة لا مجرّد صنف لون. والثاني: يصير سياق التلاوة معطًى لا افتراضًا مُثبَّتًا؛ انظر نموذج الوقف. والثالث: تصير أُسَرُ الأحكام التي لم تحملها مجموعات البيانات الرقمية قطّ ــ كأحكام التفخيم والترقيق ــ قابلةً للاستنباط كأيّ حكمٍ آخر؛ انظر فهرس الأحكام.
مُتحقَّقٌ منه على المطبوع
قُورِنت مخرجات المحرّك على المصحف كلِّه (٦٢٣٦ آية) بمجموعتَي بياناتٍ مستقلتين، وعند كل موضع نزاعٍ بصور صفحات مصحف دار المعرفة المطبوع نفسه. وبلغ الاتفاق على الأصناف المُطابَقة ٩٩٫٨٠٪ في الوصل و٩٩٫٨٢٪ في الوقف. أما مواضع الاختلاف الـ١٠٨ فلم تُطمَس؛ بل كلُّ موضعٍ مصنَّفٌ ومبحوثٌ في المراجع المنشورة وموثَّقٌ في مواضع الاختلاف. وفي المجموعات الستّ جميعًا ترجّح البيّنةُ الأحكامَ كما نُصّ عليها على ما في مجموعات البيانات، و٩٠ من الـ١٠٨ ترجع إلى خللٍ واحدٍ محدَّدٍ في مُصنِّف المدّ في المجموعة المرجعية.
التثبيت
npm install ghunna
// full package (bundled Qur'an text):
import { annotateVerse, getVerseText } from "ghunna";
// corpus-free core: bring your own Tanzil-Uthmani-encoded text
import { annotate, tokenize, RULE_META } from "ghunna/core";