اردو سورٹنگ کے لیے اطلاقیہ

نبیل

تکنیکی معاون
السلام علیکم،
اگرچہ الفاظ کو حروف تہجی کے اعتبار سے ترتیب (lexicographic sorting) دینے کی سہولت تقریباً ہر پروگرامنگ لینگویج اور مختلف سوفٹویر میں فراہم کی جاتی ہے، لیکن ابھی تک اردو کے الفاظ کو درست طریقے سے ترتیب دینے کی سہولت کسی پروگرامنگ لینگویج میں موجود نہیں ہے۔ اس کی ایک مثال فورم پر ممبران کی فہرست میں ہی دیکھی جا سکتی ہے جہاں پ اور ٹ سے شروع ہونے والے الفاظ ی سے شروع ہونے والے الفاظ کے بعد دکھائے جاتے ہیں۔ مائیکروسوفٹ ایکسل میں اردو الفاظ کی کوئی لسٹ سورٹ کرنے کے بھی ایسے ہی نتائج برآمد ہوتے ہیں۔ اگرچہ کرلپ کی سائٹ پر اردو سورٹنگ کے لیے ایک پروگرام دستیاب ہے لیکن اس میں صرف ایک محدود تعداد میں الفاظ کو سورٹ کیا جا سکتا ہے۔

اردو کے الفاظ کو حروف تہجی کے لحاظ سے ترتیب دینے کی ضرورت مختلف صورتوں میں پیش آ سکتی ہے۔ میں نے عارف کریم کے کہنے پر ایک اطلاقیہ لکھا ہے جس کے ذریعے اردو الفاظ کو حروف تہجی کے اعتبار سے درست ترتیب میں سورٹ کیا جا سکتا ہے۔ میں اس پروگرام کو بھی بمعہ سورس کوڈ یہاں فراہم کر رہا ہوں۔ یہ پروگرام سی شارپ میں لکھا گیا ہے اور سورس کوڈ میں ویژوئل سٹوڈیو 2008 کا پراجیکٹ شامل ہے۔ اس پروگرام میں آپ اردو کے حروف کی ترتیب کا اپنی مرضی سے تعین بھی کر سکتے ہیں جیسا کہ ذیل کی تصویر میں دکھایا گیا ہے:

attachment.php


اردو الفاظ کی لسٹ‌ کو سورٹ کرنے کے لیے Tools->Sort پر جا کر الفاظ والی ٹیکسٹ فائل کا انتخاب کریں اور Sort بٹن پر کلک کر دیں جیسا کہ ذیل کی تصویر میں دکھایا گیا ہے:

attachment.php

ترتیب دیے گئے الفاظ کی لسٹ ایک اور ٹیکسٹ فائل میں محفوظ کر دی جائے گی جس کا نام اصل فائل کے نام کے آخر میں _sorted شامل کر کے بنایا جائے گا۔ مثال کے طور پر اگر sample.txt کو سورٹ کیا جائے تو ترتیب دیے گئے الفاظ sample_sorted.txt فائل میں سیو ہوں گے۔

اس پروگرام کو استعمال کرتے ہوئے ذیل کی باتوں کا دھیان رکھیں:

1۔ یہ پروگرام اعراب کے بغیر الفاظ کو سورٹ کرتا ہے
2۔ اس پروگرام میں صرف اردو کے الفاظ سورٹ ہوتے ہیں، یعنی اردو اور انگریزی الفاظ کے مسکچر کو سورٹ نہیں کیا جاتا

اس پروگرام پر تبصروں اور سوالات کے لیے اسی تھریڈ کو استعمال کیا جا سکتا ہے۔
والسلام
 

Attachments

  • sortorder.gif
    sortorder.gif
    9.1 KB · مناظر: 121
  • UrduSort.zip
    8 KB · مناظر: 21
  • UrduSort_src.zip
    36.6 KB · مناظر: 23
  • sortdlg.gif
    sortdlg.gif
    6.9 KB · مناظر: 120

arifkarim

معطل
جزاک اللہ نبیل بھائی! ایک اور بہترین کاوش پر مبارک باد۔:applause:
اعراب کیلئے جو آئیڈیا فراہم کیا تھا۔ اسپر کام کرکے انکی سارٹنگ کیلئے بھی کارآمد بنایا جا سکتا ہے!
 

اظفر

محفلین
عجیب بات ہے ویسے کہ اردو میں ابھی تک یہ نہیں تھا ۔ یہ سی شارپ تو جاوا جیسی ہے بالکل :eek:
 

arifkarim

معطل
عجیب بات ہے ویسے کہ اردو میں ابھی تک یہ نہیں تھا ۔ یہ سی شارپ تو جاوا جیسی ہے بالکل :eek:

جی ہاں سی شارپ ایک آسان آبجیکٹ بیسڈ پروگرامنگ لینگوئج ہے۔ جہاں تک اُردو سارٹنگ کا سوال ہے تو واقعی ابھی تک اتنا کارآمد ٹُول تخلیق نہیں کیا جا سکا ہے!
 

نبیل

تکنیکی معاون
نبیل کیا آپ سورٹنگ سے پہلے یونیکوڈ نارملائزیشن کر رہے ہیں؟

جی نہیں زیک۔ اس کی بجائے یہ کیا جا رہا ہے کہ ئ اور ؤ وغیرہ کو علیحدہ حروف تصور کیا گیا ہے اور ان کا الگ سے سورٹ آرڈر مقرر کیا گیا ہے۔ یہ ترتیب psname.xml فائل میں محفوظ ہے اور اسے پروگرام میں تبدیل کیا جا سکتا ہے۔
 

arifkarim

معطل
جی نہیں زیک۔ اس کی بجائے یہ کیا جا رہا ہے کہ ئ اور ؤ وغیرہ کو علیحدہ حروف تصور کیا گیا ہے اور ان کا الگ سے سورٹ آرڈر مقرر کیا گیا ہے۔ یہ ترتیب psname.xml فائل میں محفوظ ہے اور اسے پروگرام میں تبدیل کیا جا سکتا ہے۔

میں نے اسی psname.xml کے آخر میں کچھ اعراب شامل کرکے سارٹنگ کی کوشش کی تو اسنے ایرر کے بغیر انکو پراسیس کر دیا۔ لیکن ظاہر ہے رزلٹ دُرست نہیں آیا;)
http://www.fileden.com/files/2008/5/23/1926615/psname.xml
 

اظفر

محفلین
اس میں سے محمد جیسا لفظ آجاے تو کیا ہوگا؟
مطلب بالفرض‌یہ لسٹ ہے
وقاص
نبیل
اخلاق
زیک
عارف
محمد اکرم
اکرم


تو کیا یہ محمد اکرم م کے کھاتے میں آے گا؟
ناموں‌والی فہرست میں عام طور پر محمد کو ایکسکلوڈ کیا جاتا ہے کیوں ہمارے 50 فیصد ناموں کے ساتھ تو محمد آتا ہے ۔ psname.xml میں اس کو ایکسکلوڈ کرنے کا کوئی طریقہ ہے؟
 

نعیم سعید

محفلین
جزاک اللہ نبیل بھائی اردو سورٹنگ واقعی ایک بہت اہم ضرورت تھی، اس اطلاقیے نے بے شک ایک اہم ضرورت کو پورا کیا ہے۔
اس اطلاقیے سے متعلق چند تجاویز ہیں ممکن ہو سکے تو ان پر بھی توجہ دی جائے۔
پہلی صورت: لیگیچرز کی سورٹنگ درست ہوتی ہے۔مثلاً:
ا
ر
د
و
محفل
پو
ر
ٹل
دوسری صورت: لیگیچرز کے مجموعہ سے لفظ لکھیں تو بھی سورٹنگ درست ہوتی ہے۔ مثلاً:
اردو
محفل
فورم
تیسری صورت: لیکن جب ان الفاظ کے مجموعے کو لکھیں تو اطلاقیہ سورٹنگ نہیں کر پاتا۔ مثلاً:
اردو محفل فورم

شاید آپ نے اس اطاقیے کو صرف فونٹ میکرز کی ضروریات کو مدّنظر رکھ کر تیار کیا ہے۔ کیونکہ فونٹ میکرز کو عموماً ابتدائی دو صورتوں میں سورنٹگ کی ضرورت پیش آتی ہے۔ میری رائے ہے کہ اس اطلاقیے میں تیسری صورت میں سورٹنگ کی سہولت بھی شامل ہونی چاہئے۔ کیونکہ جن عبارات کو سورٹ کرنے کی ضرورت پیش آتی اکثر تیسری صورت والی ہی ہوتی ہیں۔
اور اگر اس اطلاقیے کا ‘‘ایم ایس آفس’’ میں چلنا ممکن ہو جائے تو کیا ہی بات، یہ مجھے نہیں معلوم کہ ایسا ہونا ممکن ہے یا نہیں یہ تو آپ ہی بہتر جانتے ہیں۔ میں نے تو صرف اپنی رائے دی ہے۔
 

نبیل

تکنیکی معاون
محترم نعیم سعید، آپ نے درست کہا کہ یہ اطلاقیہ بنیادی طور پر فونٹ سازوں کو ذہن میں رکھ کر لکھا گیا ہے۔ تیسری صورت میں یہ درست سورٹنگ اس لیے نہیں کر رہا ہے کیونکہ اس میں سپیس کا خیال نہیں رکھا گیا ہے۔ میں وقت ملنے پر کوشش کروں گا کہ اسے بھی شامل کر لوں۔ اس اردو سورٹنگ کو ایکسل میں براہ راست استعمال کرنے کے لیے ایکسل کا ایڈ ان لکھنا پڑے گا۔ مجھے آفس کے ایڈ ان لکھنے کا تجربہ نہیں ہے۔ بہرحال اس پر بھی وقت ملنے پر تحقیق کی جا سکتی ہے۔
 

نعیم سعید

محفلین
محترم اظفر بھائی میں آپ کی بات کا مطلب سمجھ نہیں سکا۔ لفظ ‘‘کہانیاں’’ کا کیا مطلب یہاں؟
آپ نے پوسٹ نمبر دس میں نمونے کے طور پر جو لسٹ دی ہے کیا آپ نے اسے سورٹ کر کے بھی دیکھا ہے؟
میرے خیال سے تو وہ سورٹ ہی نہیں ہوگی، کیونکہ اس میں ایک لائن تیسری صورت ہی کی موجود ہے۔

محمد اکرم

میری رائے میں یہ اسی کہانی کا ایک حصہ ہے۔
اور اگر آپ کے پاس سورٹنگ درست ہورہی ہے تو واقعی مجھ سے ہی کچھ غلطی ہورہی ہے۔
 

نعیم سعید

محفلین
جزاک اللہ نبیل بھائی آپ کے جواب سے میری ذہنی الجھن ختم ہوگئی۔ آپ سے اگلی گزارش یہی ہے کہ جلد از جلد تیسری صورت کی سورٹنگ کو بھی ممکن بنائیں تاکہ یوزر اس اطلاقیہ سے بھرپور فائدہ اٹھاسکیں۔
 

نعیم سعید

محفلین
نبیل بھائی جیسا کہ آپ نے خود بھی یہی لکھا ہے کہ یہ اطلاقیہ فونٹ سازوں کی ضروریات کے پیش نظر تیار کیا گیا ہے، تو فونٹ سازوں کے لئے ایک مہربانی اور کردیں۔ یعنی ……
سورٹنگ سے قبل ایک فیچر مزید بڑھا دیں جس میں آپشن کے ساتھ یہ سہولت ہو کہ اگر ٹیکسٹ فائل میں جو الفاظ ایک جیسے آئے ہیں کیا انہیں سورٹنگ میں رپیٹ کرنا ہے یا صرف ایک ہی بار آنا چاہئے۔ یقیناً آپ اس بات کا اندازہ کرسکتے ہیں کہ فونٹ سازوں کے لئے اس سہولت کی کتنی اہمیت ہے۔
 

مکی

معطل
بہترین چیز ہے نبیل بھائی.. مجھے ایک ورڈ لسٹ سورٹ کرنی تھی مگر لینکس پر چلنے سے انکاری ہوگیا.. اپنی قسمت...
 

arifkarim

معطل
جزاک اللہ نبیل بھائی آپ کے جواب سے میری ذہنی الجھن ختم ہوگئی۔ آپ سے اگلی گزارش یہی ہے کہ جلد از جلد تیسری صورت کی سورٹنگ کو بھی ممکن بنائیں تاکہ یوزر اس اطلاقیہ سے بھرپور فائدہ اٹھاسکیں۔

تیسری صورت تو لغات اور انڈیکس بنانے والے کمپوزرز کیلئے مفید ہے۔ کیونکہ اسمیں متعدد بار اسپیس آرہی ہے۔
جہاں تک ایم ایس ایکسل میں ایڈ آن لکھنے کا سوال ہے تو اسکے لئے delphi, vba, c کا استعمال کیا جا سکتا ہے:
http://www.aspfree.com/c/a/Windows-Scripting/Writing-Excel-Addons/
 

arifkarim

معطل
بہترین چیز ہے نبیل بھائی.. مجھے ایک ورڈ لسٹ سورٹ کرنی تھی مگر لینکس پر چلنے سے انکاری ہوگیا.. اپنی قسمت...

کیا لینکس پر ونڈوز پلیٹ فارم کے پروگرامز ایمو لیٹ نہیں ہوتے؟ یہ اطلاقیہ بنیادی طور پر ڈاٹ نیٹ فریم ورک استعمال کرتا ہے!
 
Top