سعادت
تکنیکی معاون
۳۹ویں انٹرنیشنلائزیشن اور یونیکوڈ کانفرنس میں SIL کی جانب سے نستعلیق ٹائپوگرافی کے چیلنجز اور انہیں حل کرنے کے لیے گریفائٹ میں حالیہ شامل ہونے والے collision-fixing فیچرز کے اوپر ایک گفتگو پیش کی گئی تھی۔ اس گفتگو کی سلائیڈز اور نوٹس اب ویب پر دستیاب ہیں۔
اس گفتگو میں پہلے نستعلیق کا تعارف پیش کیا گیا ہے، اور پھر نستعلیق ٹائپوگرافی کے چیلنجز (گلفس کی تعداد، حروف کی اشکال کا پچھلے کی بجائے اگلے حروف پر منحصر ہونا، گلفس/نقاط کا ٹکراؤ) کی تفصیل بیان کی گئی ہے۔ اس کے بعد موجودہ ٹیکنالوجی کی خوبیوں اور خامیوں کا ایک جائزہ لیا گیا ہے، جس میں اوپن ٹائپ اور کسٹم ٹائپ سیٹنگ انوائرنمنٹس (اِن پیج، اور ڈیکوٹائپ کا ACE) کا ذکر موجود ہے۔
اوپن ٹائپ نستعلیق فونٹس میں نوری نستعلیق، نفیس نستعلیق، اور نوٹو نستعلیق اردو کا مختصراً تجزیہ کیا گیا ہے۔ ایک اقتباس کا ترجمہ/تلخیص درج ذیل ہے:
اس کے بعد ان ٹائپوگرافک ضروریات کا ذکر ہے جو SIL کے خیال میں ابھی تک پوری نہیں ہوئیں:
اس سب کے بعد اس گفتگو کا سب سے دلچسپ حصہ شروع ہوتا ہے: گریفائٹ میں شامل خودکار collision fixing۔ SIL کا ہدف ایک ایسا نظام تشکیل دینا ہے جس کی مدد سے نستعلیق کی ٹائپوگرافک ضروریات خود کار طور پر اور تسلی بخش رفتار میں پوری ہو سکیں، اور جس کا نتیجہ پرفیکٹ نہ سہی، لیکن اچھا ہو۔
گلفس کے درمیان ٹکراؤ کو معلوم کرنے کے لیے گریفائٹ کے اس نئے نظام میں سب سے پہلے تمام گلفس کی آؤٹ لائنز کی approximation معلوم کی جاتی ہے، اور پھر اس approximation ڈیٹا کو ایک خاص ٹیبل میں محفوظ کر لیا جاتا ہے (یہ تمام کام گریفائٹ کا کمپائلر کرتا ہے) :
اگلی سلائیڈز میں ایک مثال موجود ہے، جس میں ’ی‘ کے نقطوں پر فوکس کیا گیا ہے:
’ی‘ کے دو نقطے (سبز رنگ میں) ’ج‘ کے نقطے سے ٹکرا رہے ہیں۔ نیلے رنگ کے polygons ’ھ‘، ’ی‘، اور ’ج‘ کے گلفس کی approximations کو ظاہر کر رہے ہیں۔ جبکہ مستطیل اس تمام جگہ کو ظاہر کر رہا ہے جس کے اندر رہتے ہوئے سبز نقطوں کو حرکت کرنے کی اجازت ہے۔
گریفائٹ کا الگوردھم اس بات کا اندازہ لگانے کی کوشش کرتا ہے کہ مطلوبہ گلف کس سمت میں (افقی، عمودی، یا diagonally) حرکت کر سکتا ہے۔ اوپر تصویر میں سبز نقطوں کی diagonal حرکت کو ظاہر کیا گیا ہے۔ سرخ رنگ کے حصے وہ ہیں جہاں نقطوں کو پلیس نہیں کیا جا سکتا (کیونکہ وہاں پہلے سے گلفس موجود ہیں)۔
گلفس کے گرد ایک مارجن بھی موجود ہوتا ہے، جسے گلابی رنگ سے واضح کیا گیا ہے۔ کچھ گلابی اور سرخ حصے سبز نقطوں کے ساتھ overlap کر رہے ہیں، جو اس بات کو ظاہر کرتا ہے کہ سبز نقطے واقعی دیگر گلفس سے ٹکرا رہے ہیں۔
ایک فونٹ ڈویلپر ان تمام پیرامیٹرز کو متعین کر سکتا ہے، یعنی:
گریفائٹ فونٹس ڈویلپ کرنے کی یوٹیلیٹی، Graide اس بات کا اختیار دیتی ہے کہ ٹکراؤ سے بچنے کے اس عمل کو ڈیبگ کیا جا سکے، اور اس عمل کو مرحلہ وار دیکھا جا سکے:
اگلی سلائیڈز میں SIL کے عوامی نستعلیق کا ذکر ہے، جو گریفائٹ کے انہی نئے فیچرز کو استعمال کرتے ہوئے بنایا گیا ہے، اور جس کا مقصد نستعلیق استعمال کرنے والی تمام زبانوں کو سپّورٹ کرنا ہے۔ اس فونٹ میں کئی فیچرز ایسے ہیں جنہیں استعمال کے وقت صارفین فعال یا غیر فعال سکتے ہیں، جیسے ’ہ‘ کے نیچے موجود hook:
اس مثال میں ایک بات یہ بھی نوٹ کیجیے کہ ’پ‘ کے نقطے اور ’زیر‘ خود بخود ’ہ‘ کے hook کو جگہ دینے کے لیے دائیں جانب سرک گئے ہیں، اور فونٹ ڈویلپر کو اس کے لیے خاص طور پر کوئی لُک اپ وغیرہ نہیں لکھنا پڑا۔
(ویسے، ’ہ‘ کے hook کو اردو میں کیا کہیں گے؟ متلاشی ، شاید آپ کو علم ہو؟ )
ایک اور فیچر کی مثال کرننگ کو تنگ یا کھلا کرنے کی ہے:
اوپر سلائیڈ میں اس فیچر کو لِبرے آفس میں استعمال ہوتے ہوئے دکھایا گیا ہے۔ اس کے علاوہ میں سی-ایس-ایس میں font-feature-settings کے ذریعے بھی اس فیچر کو استعمال کرنے کا کامیاب تجربہ چکا ہوں۔
اگلی سلائیڈ میں گریفائٹ کو سپّورٹ کرنے والی ایپلیکیشنز کا ذکر ہے:
یہاں ایک دلچسپ بات نوٹ کیجیے: اِنڈیزائن کے لیے بھی گریفائٹ کا ایک پلگ اِن، GrInD کے نام سے موجود ہے۔ اب اس بات کا تو علم نہیں کہ یہ پلگ اِن گریفائٹ کے نئے فیچرز اور اِن ڈیزائن کے جدید ورژنز کو سپّورٹ کرتا ہے یا نہیں، لیکن arifkarim یا دیگر احباب اس کو مزید دیکھ سکتے ہیں۔
(ایک اور نام SILE بھی سلائیڈ میں موجود ہے، جو TeX اور اِن ڈیزائن سے انسپائرڈ ایک جدید ٹائپ سیٹنگ سوفٹویئر ہے، اور جس کی ڈویلپمنٹ زور و شور سے جاری ہے۔ احباب چاہیں تو اسے بھی ایکسپلور کر سکتے ہیں۔)
اس سب کے بعد گفتگو کا خلاصہ، مستقبل کے لیے منصوبے وغیرہ، اور SIL کے ساتھ رابطے کی تفصیلات ہیں، اور جس کے بعد گفتگو کا اختتام ہوتا ہے۔
اب آپ سب کے بارے میں تو علم نہیں، لیکن کم از کم میری دلچسپی گریفائٹ میں کہیں زیادہ بڑھ چکی ہے! اور ہاں، اوپر موجود تمام باتیں میں نے کافی اختصار کے ساتھ بیان کی ہیں (اور عین ممکن ہے کہ ان میں غلطیاں بھی موجود ہوں)، لہٰذا تفصیل سے پڑھنے کے لیے گفتگو کی سلائیڈز ضرور ڈاؤنلوڈ کیجیے اور لطف اٹھائیے۔
ربط: Using Graphite to Address Challenges in Nastaliq-style Arabic Script
اس گفتگو میں پہلے نستعلیق کا تعارف پیش کیا گیا ہے، اور پھر نستعلیق ٹائپوگرافی کے چیلنجز (گلفس کی تعداد، حروف کی اشکال کا پچھلے کی بجائے اگلے حروف پر منحصر ہونا، گلفس/نقاط کا ٹکراؤ) کی تفصیل بیان کی گئی ہے۔ اس کے بعد موجودہ ٹیکنالوجی کی خوبیوں اور خامیوں کا ایک جائزہ لیا گیا ہے، جس میں اوپن ٹائپ اور کسٹم ٹائپ سیٹنگ انوائرنمنٹس (اِن پیج، اور ڈیکوٹائپ کا ACE) کا ذکر موجود ہے۔
اوپن ٹائپ نستعلیق فونٹس میں نوری نستعلیق، نفیس نستعلیق، اور نوٹو نستعلیق اردو کا مختصراً تجزیہ کیا گیا ہے۔ ایک اقتباس کا ترجمہ/تلخیص درج ذیل ہے:
اوپن ٹائپ نستعلیق فونٹس بنانے کے لیے مختلف طریقے اختیار کیے جاتے رہے ہیں۔ نوری نستعلیق میں ہر contextual sequence کے لیے ایک الگ گلف [یعنی لگیچر یا ترسیمہ] موجود ہے۔ اس تکنیک کے ذریعے نقطوں کو ان کی بہترین جگہ پر رکھا جا سکتا ہے۔ نتیجتاً فونٹ [کی شیپنگ] کا معیار بہت اعلٰی ہے، لیکن یہ معیاری رینڈرنگ صرف انہی حروف کے sequences کے لیے کام کرتی ہے جنہیں خاص طور پر فونٹ میں شامل کیا جائے، اور یوں یہ تکنیک اردو کے علاوہ دیگر بیشتر زبانوں کے لیے ناکافی ہے۔ اس کے علاوہ، اگر اعراب بیچ میں آ جائیں تو اس تکنیک کے ذریعے یہ اندازہ لگانا بھی مشکل ہوتا ہے کہ کونسا کمپاؤنڈ گلف [یا لگیچر] استعمال کیا جائے یا پھر اس کمپاؤنڈ گلف [یا لگیچر] پر اعراب کی پلیسمنٹ کیسے کی جائے۔
دیگر بیشتر فونٹس میں ہر حرف کے لیے ایک الگ گلف استعمال ہوتا ہے، اور نقطوں کی پلیسمنٹ کرنے کے لیے خصوصی لُک اپس کی ایک بھرمار شامل ہوتی ہے۔ مثال کے طور پر، نفیس نستعلیق میں ۴۰ فیصد کے قریب اوپن ٹائپ لُک اپس کا مقصد نقطوں کے ٹکراؤ کو حل کرنا ہے۔
جہاں نفیس نستعلیق میں نقطوں کی جگہوں کو باریکی سے متعین کرنے کے لیے خصوصی اینکر پوائنٹس کا استعمال ہوتا ہے، وہاں نوٹو نستعلیق میں [نقطوں کو] شفٹ کرنے کے لیے مخصوص کلاسز اور nested contextual اصولوں کا سہارا لیا جاتا ہے۔
ایسے فونٹس اوپن ٹائپ کی حدود کو اچھی طرح آزماتے رہتے ہیں اور ان کو مختلف اوپن ٹائپ انجنز میں موجود غیر مطابقت کی وجہ سے اکثر مشکلات کا سامنا کرنا پڑتا ہے۔ یوں ایسے فونٹس کی انجینیئرنگ کسی خاص انجن کو سامنے رکھتے ہوئے کی جاتی ہے، اور اگر وہ انجن تبدیل ہو جائے یا کسی اور انجن پر اس فونٹ کو استعمال کیا جائے تو مشکلات پیش آتی ہیں۔
بہت کم فونٹس ایسے ہیں جو اعراب کو اچھے طریقے سے برت سکتے ہیں۔ یہ اردو کے لیے تو قابلِ قبول ہوتا ہے، لیکن دیگر زبانوں جیسے سرائیکی اور مارواڑی کے لیے نہیں جن میں اعراب کا کثرت سے استعمال ہوتا ہے۔
[…]
نوٹو نستعلیق حال ہی میں ریلیز ہونے والا ایک فونٹ ہے جس میں گلفس کے ٹکراؤ کو کافی اچھے طریقے سے ہینڈل کیا گیا ہے۔ البتہ ہم اپنی لغات کے ۲ سے ۳ فیصد الفاظ میں پھر بھی ٹکراؤ پاتے ہیں۔ یہ عام ٹیکسٹ، ای-میل، یہاں تک کہ ویب صفحات کے لیے بھی کافی ہو سکتا ہے، لیکن اعلٰی معیار کی پرنٹ مطبوعات کے لیے یہ قابلِ قبول نہیں ہے۔
اس کے بعد ان ٹائپوگرافک ضروریات کا ذکر ہے جو SIL کے خیال میں ابھی تک پوری نہیں ہوئیں:
- اردو کے ساتھ ساتھ دیگر زبانوں کی سپّورٹ
- اعراب
- نقطوں کی تعداد
- حروف کے نا معلوم sequences، وغیرہ
اس سب کے بعد اس گفتگو کا سب سے دلچسپ حصہ شروع ہوتا ہے: گریفائٹ میں شامل خودکار collision fixing۔ SIL کا ہدف ایک ایسا نظام تشکیل دینا ہے جس کی مدد سے نستعلیق کی ٹائپوگرافک ضروریات خود کار طور پر اور تسلی بخش رفتار میں پوری ہو سکیں، اور جس کا نتیجہ پرفیکٹ نہ سہی، لیکن اچھا ہو۔
گلفس کے درمیان ٹکراؤ کو معلوم کرنے کے لیے گریفائٹ کے اس نئے نظام میں سب سے پہلے تمام گلفس کی آؤٹ لائنز کی approximation معلوم کی جاتی ہے، اور پھر اس approximation ڈیٹا کو ایک خاص ٹیبل میں محفوظ کر لیا جاتا ہے (یہ تمام کام گریفائٹ کا کمپائلر کرتا ہے) :
اگلی سلائیڈز میں ایک مثال موجود ہے، جس میں ’ی‘ کے نقطوں پر فوکس کیا گیا ہے:
’ی‘ کے دو نقطے (سبز رنگ میں) ’ج‘ کے نقطے سے ٹکرا رہے ہیں۔ نیلے رنگ کے polygons ’ھ‘، ’ی‘، اور ’ج‘ کے گلفس کی approximations کو ظاہر کر رہے ہیں۔ جبکہ مستطیل اس تمام جگہ کو ظاہر کر رہا ہے جس کے اندر رہتے ہوئے سبز نقطوں کو حرکت کرنے کی اجازت ہے۔
گریفائٹ کا الگوردھم اس بات کا اندازہ لگانے کی کوشش کرتا ہے کہ مطلوبہ گلف کس سمت میں (افقی، عمودی، یا diagonally) حرکت کر سکتا ہے۔ اوپر تصویر میں سبز نقطوں کی diagonal حرکت کو ظاہر کیا گیا ہے۔ سرخ رنگ کے حصے وہ ہیں جہاں نقطوں کو پلیس نہیں کیا جا سکتا (کیونکہ وہاں پہلے سے گلفس موجود ہیں)۔
گلفس کے گرد ایک مارجن بھی موجود ہوتا ہے، جسے گلابی رنگ سے واضح کیا گیا ہے۔ کچھ گلابی اور سرخ حصے سبز نقطوں کے ساتھ overlap کر رہے ہیں، جو اس بات کو ظاہر کرتا ہے کہ سبز نقطے واقعی دیگر گلفس سے ٹکرا رہے ہیں۔
ایک فونٹ ڈویلپر ان تمام پیرامیٹرز کو متعین کر سکتا ہے، یعنی:
- حرکت کو محدود کرنے والا مستطیل
- گلفس کا مارجن
- گلفس کے آس پاس ایسے حصے جہاں کسی دوسرے گلف کو آنے کی اجازت نہیں (مثلاً، نکتوں کو عموماً ’ک‘ کے بالائی سٹروک کو پھلانگنے کی اجازت نہیں ہوتی۔)
- کرننگ۔ جو میکانزم ٹکراؤ کو جانچ کر گلفس کو دور لے کر جا سکتا ہے، وہی میکانزم گلفس کو ایک دوسرے کے قریب لانے کے لیے بھی استعمال کیا جا سکتا ہے:
گریفائٹ فونٹس ڈویلپ کرنے کی یوٹیلیٹی، Graide اس بات کا اختیار دیتی ہے کہ ٹکراؤ سے بچنے کے اس عمل کو ڈیبگ کیا جا سکے، اور اس عمل کو مرحلہ وار دیکھا جا سکے:
اگلی سلائیڈز میں SIL کے عوامی نستعلیق کا ذکر ہے، جو گریفائٹ کے انہی نئے فیچرز کو استعمال کرتے ہوئے بنایا گیا ہے، اور جس کا مقصد نستعلیق استعمال کرنے والی تمام زبانوں کو سپّورٹ کرنا ہے۔ اس فونٹ میں کئی فیچرز ایسے ہیں جنہیں استعمال کے وقت صارفین فعال یا غیر فعال سکتے ہیں، جیسے ’ہ‘ کے نیچے موجود hook:
اس مثال میں ایک بات یہ بھی نوٹ کیجیے کہ ’پ‘ کے نقطے اور ’زیر‘ خود بخود ’ہ‘ کے hook کو جگہ دینے کے لیے دائیں جانب سرک گئے ہیں، اور فونٹ ڈویلپر کو اس کے لیے خاص طور پر کوئی لُک اپ وغیرہ نہیں لکھنا پڑا۔
(ویسے، ’ہ‘ کے hook کو اردو میں کیا کہیں گے؟ متلاشی ، شاید آپ کو علم ہو؟ )
ایک اور فیچر کی مثال کرننگ کو تنگ یا کھلا کرنے کی ہے:
اوپر سلائیڈ میں اس فیچر کو لِبرے آفس میں استعمال ہوتے ہوئے دکھایا گیا ہے۔ اس کے علاوہ میں سی-ایس-ایس میں font-feature-settings کے ذریعے بھی اس فیچر کو استعمال کرنے کا کامیاب تجربہ چکا ہوں۔
اگلی سلائیڈ میں گریفائٹ کو سپّورٹ کرنے والی ایپلیکیشنز کا ذکر ہے:
یہاں ایک دلچسپ بات نوٹ کیجیے: اِنڈیزائن کے لیے بھی گریفائٹ کا ایک پلگ اِن، GrInD کے نام سے موجود ہے۔ اب اس بات کا تو علم نہیں کہ یہ پلگ اِن گریفائٹ کے نئے فیچرز اور اِن ڈیزائن کے جدید ورژنز کو سپّورٹ کرتا ہے یا نہیں، لیکن arifkarim یا دیگر احباب اس کو مزید دیکھ سکتے ہیں۔
(ایک اور نام SILE بھی سلائیڈ میں موجود ہے، جو TeX اور اِن ڈیزائن سے انسپائرڈ ایک جدید ٹائپ سیٹنگ سوفٹویئر ہے، اور جس کی ڈویلپمنٹ زور و شور سے جاری ہے۔ احباب چاہیں تو اسے بھی ایکسپلور کر سکتے ہیں۔)
اس سب کے بعد گفتگو کا خلاصہ، مستقبل کے لیے منصوبے وغیرہ، اور SIL کے ساتھ رابطے کی تفصیلات ہیں، اور جس کے بعد گفتگو کا اختتام ہوتا ہے۔
اب آپ سب کے بارے میں تو علم نہیں، لیکن کم از کم میری دلچسپی گریفائٹ میں کہیں زیادہ بڑھ چکی ہے! اور ہاں، اوپر موجود تمام باتیں میں نے کافی اختصار کے ساتھ بیان کی ہیں (اور عین ممکن ہے کہ ان میں غلطیاں بھی موجود ہوں)، لہٰذا تفصیل سے پڑھنے کے لیے گفتگو کی سلائیڈز ضرور ڈاؤنلوڈ کیجیے اور لطف اٹھائیے۔
ربط: Using Graphite to Address Challenges in Nastaliq-style Arabic Script