JSON کو YAML میں تبدیل کرنا JavaScript Object Notation ↔ YAML Ain't Markup Language مفت آن لائن محفوظ
ایک JSON فائل چھوڑیں اور YAML لے جائیں۔ پڑھنا اور لکھنا یہیں، آپ کے براؤزر میں ہوتا ہے، سو فائل آپ کے آلے سے باہر نہیں جاتی — اور یہ سفر کیا بچاتا ہے اور کیا نہیں، وہ نیچے لکھا ہے، آپ کے دریافت کرنے پر نہیں چھوڑا گیا۔
اپنی فائل بدلیے
یہاں ایک JSON فائل چھوڑیں، یا کوئی چنیں۔
آپ کی فائل اس آلے سے باہر نہیں جاتی۔ سب کچھ آپ کے براؤزر میں چلتا ہے۔
کچھ بھی اپ لوڈ نہیں
JSON سے تبدیلی
JSON میں تبدیلی
یہ صورتیں کہاں سے آئیں
CSV سب سے پرانی اور سب سے کم معیار بند ہے: ایک جدول جو متن کی سطروں کی صورت لکھا گیا، 1970ء کی دہائی سے زیرِ استعمال اور تحریری طور پر بیان ہوا 2005ء میں، جب تک ہر پروگرام خود ہی طے کر چکا تھا کہ جدا کرنے والا نشان کیا ہے اور واوین کب لگانے ہیں۔ XML 1998ء میں SGML سے نکلا، ایسی دستاویزوں کے لیے جنہیں سخت ساخت اٹھانی ہو اور کسی خاکے پر پرکھا جانا ہو۔ JSON کو ڈگلس کراک فورڈ نے 2001ء کے آس پاس جاوا اسکرپٹ سے کھینچ نکالا، جان بوجھ کر اسے اشیا، فہرستوں، اعداد اور حرفی لڑیوں تک گھٹا دیا — اور یہی سادگی ویب پر اس کے غلبے کا سبب ہے۔ YAML اس کا پڑھنے کے قابل عم زاد ہے، جہاں اندر کی جگہ وہ کام کرتی ہے جو کہیں اور قوسین کرتے ہیں۔ ان کے درمیان تبدیلی میں بس ایک بات اہم ہے: CSV چپٹی ہے، سطروں اور کالموں کی جالی؛ جبکہ JSON، XML اور YAML درخت ہیں۔
آپ انہیں کہاں ملتے ہیں
CSV وہ ہے جو حسابی شیٹ برآمد کرتی ہے اور جو کوئی محاسب، کوئی دکان کا پلیٹ فارم یا بینک کا گوشوارہ آپ کو تھماتا ہے۔ JSON وہ زبان ہے جو ویب کی خدمات آپس میں بولتی ہیں، اور ترتیبات کی فائلیں بھی بڑھتے بڑھتے اسی میں لکھی جاتی ہیں۔ XML پرانے ادارہ جاتی نظاموں میں، بل سازی کے معیاروں میں، اور خود دفتری صورتوں کے اندر زندہ ہے۔ YAML وہ جگہ ہے جہاں انسان ہاتھ سے ترتیبات لکھتے ہیں۔ ان کے درمیان تبدیلی روز کا وہ کام ہے جو اعداد و شمار کو اُن کی جائے پیدائش سے وہاں لے جاتا ہے جہاں ان کی ضرورت ہے۔
اکثر پوچھے جانے والے سوالات
میری CSV ایکسل میں ایک ہی کالم کے طور پر کھلی۔ کیوں؟
کیونکہ آپ کی حسابی شیٹ کسی اور جدا کرنے والے نشان کی منتظر تھی۔ ایکسل کمپیوٹر کی علاقائی ترتیبات کے فہرستی نشان کی پیروی کرتا ہے، اور وہ ہر اُس جگہ سیمی کولن ہوتا ہے جہاں کاما پہلے ہی اعشاریے کا نشان ہے — یعنی برِاعظمی یورپ کے بڑے حصے میں۔ تب کاموں سے جدا کی گئی فائل متن کے ایک ہی کالم جیسی دکھتی ہے۔ فائل پر دو بار کلک کرنے کے بجائے درآمد کی کھڑکی برتیں اور نشان صراحتاً بتائیں۔ اسی علاقائی ترتیب سے یہ بھی ہوتا ہے کہ 3.5 کبھی تاریخ بن کر پہنچ جاتا ہے۔
میرا تہ در تہ JSON صاف ستھری حسابی شیٹ کیوں نہیں بن پاتا؟
کیونکہ حسابی شیٹ چپٹی ہے اور JSON ایک درخت۔ ایک سطر ہر کالم کے لیے ایک قدر رکھتی ہے؛ جبکہ JSON کی ایک شے کسی خانے کے اندر کی فہرست کے اندر ایک اور فہرست رکھ سکتی ہے۔ تبدیلی کا مطلب ہے یہ چننا کہ اسے کیسے چپٹا کیا جائے: یا تو تہ در تہ ناموں کو جوڑ کر ایک لمبا کالم عنوان بنا دیں، یا والدین والی سطر کو ہر بچے کے لیے ایک بار دہرا دیں۔ دونوں سمجھوتے ہیں، اور کوئی بھی خودبخود واپس نہیں ہو سکتا — اسی لیے حسابی شیٹ سے اصل شکل کی طرف لوٹنے کے لیے عموماً انسانی فیصلہ درکار ہوتا ہے۔
کیا فائل کا معیار گرتا ہے؟
یہ اس پر منحصر ہے کہ دونوں صورتیں کیا سنبھال سکتی ہیں۔ ایسی صورتوں کے بیچ تبدیلی جو ایک ہی چیز رکھتی ہوں — PNG سے BMP، WAV سے FLAC — کچھ نہیں کھوتی۔ ایسی صورت میں بدلنا جو جگہ بچانے کے لیے معلومات پھینک دے، جیسے JPEG یا MP3، ہر بار تھوڑا کھوتا ہے، اور واپس بدلنے سے وہ لوٹتا نہیں۔ جہاں چناؤ ممکن ہو، یہ صفحہ سب سے چھوٹی فائل بنانے کے بجائے اصل معیار برقرار رکھنے کی طرف جھکتا ہے۔
کیا میری فائل کہیں اپ لوڈ ہوتی ہے؟
نہیں۔ تبدیلی آپ ہی کی مشین پر، آپ کے براؤزر کے اندر ہوتی ہے؛ فائل وہاں سے کبھی باہر نہیں جاتی، اور یہاں کوئی سرور ہے ہی نہیں جو اسے لے سکے۔ اسی لیے بڑی فائل کو اپ لوڈ نہیں بلکہ آپ کی اپنی یادداشت محدود کرتی ہے، اور اسی لیے جو کچھ آپ بدلتے ہیں وہ کسی کے ریکارڈ میں نہیں آ سکتا — ہمارے ریکارڈ میں بھی نہیں۔ البتہ آواز اور فلم کے اوزار پہلی بار استعمال پر اپنا تبدیلی کا انجن اِسی سائٹ سے لاتے ہیں — تقریباً تیس میگابائٹ، صرف ایک بار؛ اس کے بعد بھی کام سارا آپ ہی کی مشین پر ہوتا ہے۔
لوگ JSON کو YAML میں کیوں تبدیل کرتے ہیں
JSON وہ علامتی طریقہ ہے جو پروگراموں کو پسند ہے: سخت، مختصر اور ہر زبان کی سمجھ میں آنے والا۔ مگر یہ لوگوں کے ساتھ نرمی نہیں برتتا۔ لمبی JSON فائل قوسین، مربع قوسین، اقتباسی نشانوں اور کاماؤں کا جنگل ہوتی ہے، جس میں تبصرے کی گنجائش نہیں اور آخر کا ایک اضافی کاما سب کچھ توڑ سکتا ہے۔ YAML وہ علامتی طریقہ ہے جسے لوگ تب چنتے ہیں جب انہیں ڈیٹا ہاتھ سے پڑھنا اور ایڈٹ کرنا ہو۔ یہ قوسین کی جگہ اندراج (انڈنٹیشن) استعمال کرتا ہے، تبصروں کی اجازت دیتا ہے اور تقریباً خاکے کی طرح پڑھا جاتا ہے، اسی لیے یہ ترتیب کے لیے پسندیدہ بن گیا: بلڈ پائپ لائنیں، کنٹینر کی تعریفیں، تعیناتی کی فائلیں، اسٹیٹک سائٹوں اور دستاویزی اوزاروں کی ترتیبات۔ جب ڈیٹا JSON کے طور پر آئے اور آپ اس پر ایسی شکل میں کام کرنا چاہیں جو پڑھنے میں خوشگوار ہو تو تبدیلی ضروری ہو جاتی ہے۔ اسی لیے لوگ JSON کو YAML میں تبدیل کرتے ہیں۔
صورتیں روزمرہ کی ہیں۔ ایک ڈیولپر جس کے پاس کسی اوزار کا نتیجہ JSON میں ہے اور وہ اسے ترتیب کی فائل بنانا چاہتا ہے۔ ایک ٹیم جو ترتیبات ایک نظام سے دوسرے میں لے جا رہی ہے اور پڑھنے کے قابل شکل کو ترجیح دیتی ہے۔ ایک لکھنے والا جو API کے جواب کی ساخت بے ترتیبی کے بغیر پڑھنا چاہتا ہے۔ ایک طالب علم جو دیکھنا چاہتا ہے کہ قوسین اندراج میں کیسے بدلتے ہیں۔ ہر صورت میں ڈیٹا وہی ہے، اور صرف علامتی طریقہ بدلتا ہے۔
یہ صفحہ JSON کو YAML میں آپ کے براؤزر میں تبدیل کرتا ہے۔ آپ کی فائل یہیں پڑھی اور لکھی جاتی ہے، اس لیے وہ آپ کے آلے سے باہر نہیں جاتی، جو ترتیب کی فائلوں کے لیے اہم ہے، جن میں اکثر پتے، اندرونی نظاموں کے نام اور کبھی کبھی راز ہوتے ہیں۔ اور صفحہ پہلے سے بتاتا ہے کہ پار جانے میں کیا برقرار رہتا ہے اور کیا نہیں رہ سکتا، بجائے اس کے کہ آپ کو خود دریافت کرنا پڑے۔ نیچے آپ کو ملے گا کہ تبدیلی کیسے کام کرتی ہے، گہری تہہ داری اور لمبی تاروں کے ساتھ کیا ہوتا ہے اور صاف ستھرا نتیجہ کیسے ملے۔
تبدیلی کیسے کام کرتی ہے
دونوں علامتی طریقوں میں ایک ہی شکلیں
آپ کی JSON آپ کے براؤزر کے اندر پڑھی جاتی ہے، اور اس کی ساخت YAML کے طور پر لکھ دی جاتی ہے۔ دونوں ایک ہی شکلیں رکھتے ہیں، اور ہر چیز دونوں سمتوں میں برقرار رہتی ہے: نقشے، فہرستیں، تاریں، اعداد، بولین اور null۔ JSON کی شے YAML میں نقشہ بنتی ہے، صف سلسلہ بنتی ہے، اور سادہ قدریں اپنی اقسام برقرار رکھتی ہیں۔ کلید port جس کی قدر عدد 8080 ہو port: 8080 دیتی ہے، اور کلید enabled جس کی قدر true ہو enabled: true دیتی ہے۔
دہرائی ہوئی ساختیں پوری لکھی جاتی ہیں
YAML کے پاس تکرار سے بچنے کا طریقہ ہے، اینکرز اور عرف کے ساتھ۔ کنورٹر اسے استعمال نہیں کرتا۔ دہرائی ہوئی ساختیں اینکرز کے بجائے پوری لکھی جاتی ہیں، اس لیے فائل سیدھی نیچے پڑھی جاتی ہے۔ اس سے YAML تھوڑی لمبی ہو جاتی ہے، مگر اس میں کسی چیز کو کہیں اور ڈھونڈنے کی ضرورت نہیں پڑتی، اور ہر قاری ہر بلاک کو الگ سے سمجھ سکتا ہے۔
کلیدیں اپنی ترتیب رکھتی ہیں
کلیدیں وہی ترتیب رکھتی ہیں جو JSON میں تھی۔ YAML اسی سلسلے میں پڑھی جاتی ہے جس میں ماخذ ہے، اس لیے جو JSON کو جانتا ہے وہ فوراً اپنا راستہ پا لے گا۔
کیا برقرار رہتا ہے
وہ سب جو ڈیٹا ہے
ہر چیز برقرار رہتی ہے، دونوں سمتوں میں: نقشے، فہرستیں، تاریں، اعداد، بولین اور null۔ اگر وہ آپ کی JSON میں قدر تھی تو وہ YAML میں بھی قدر ہے، اسی قسم کے ساتھ۔
وہ تاریں جنہیں تحفظ چاہیے
کچھ تاریں اگر YAML میں سادہ لکھی جائیں تو غلط پڑھی جائیں گی: لفظ true، اقتباس میں لکھا عدد، کولن والا متن۔ کنورٹر ایسی تاروں کو اقتباس میں لکھتا ہے تاکہ وہ تاریں ہی لوٹیں اور بولین یا اعداد نہ بن جائیں۔ JSON کی وہ تار جو "true" کہے YAML میں بھی تار رہتی ہے۔
یونیکوڈ
اعراب والے حروف، علامتیں اور دوسرے حروفِ تہجی کے حروف جیسے ہیں ویسے رکھے جاتے ہیں، اس لیے کئی زبانوں والی فائل پڑھنے کے قابل رہتی ہے۔
JSON کو YAML میں تبدیل کرنے سے پہلے آپ کو کیا جاننا چاہیے
گہری تہہ داری کا مطلب گہرا اندراج
YAML اپنے اندراج میں معنی رکھتی ہے، اس لیے جو قدر گہری تہہ میں جا نکلے وہ گہرے اندراج والی فائل بنتی ہے: پڑھنے کے لائق، مگر مختصر نہیں۔ آٹھ سطحوں کے JSON درخت سے ایسی سطریں ملتی ہیں جو بائیں حاشیے سے بہت دور شروع ہوتی ہیں۔ اگر یہ بوجھل ہو جائے تو ساخت کو اس کے ماخذ پر چپٹا کرنے پر غور کیجیے۔
لمبی تاریں لپیٹی جاتی ہیں
لمبی تاریں تقریباً سو کالموں پر لپیٹی جاتی ہیں، جس سے سطر ٹوٹنے کی جگہیں بدلتی ہیں مگر قدر نہیں بدلتی۔ جو پیراگراف JSON میں ایک لمبی سطر تھا وہ YAML میں کئی سطروں میں نظر آتا ہے، مگر متن وہی ہے۔ YAML پڑھنے والے پروگرام کو اصل تار ملتی ہے۔
تبصرے گھڑے نہیں جا سکتے
YAML تبصروں کی اجازت دیتی ہے، مگر JSON میں کوئی نہیں ہوتا، اس لیے نتیجے میں بھی نہیں۔ آپ بعد میں ہاتھ سے وضاحتیں شامل کر سکتے ہیں، جو فائل کو YAML میں رکھنے کی بنیادی وجوہات میں سے ایک ہے۔
یہاں JSON کو YAML میں کیسے تبدیل کریں
اپنی فائل شامل کیجیے
JSON فائل کو صفحے پر چھوڑیے یا اپنے آلے سے چنیے۔ وہ آپ کے براؤزر کے اندر پڑھی جاتی ہے اور اپ لوڈ نہیں ہوتی۔
تبدیل کیجیے
بٹن دبائیے۔ عام سائز کی فائل ایک لمحہ لیتی ہے۔ مکمل ہونے تک صفحہ کھلا رکھیے۔
ڈاؤن لوڈ کیجیے اور جانچیے
YAML ڈاؤن لوڈ کیجیے اور متن کے ایڈیٹر میں کھولیے۔ شروع اور آخر دیکھیے، اور جانچیے کہ ساخت اور اقسام وہی ہیں جن کی آپ کو توقع تھی۔
JSON اور YAML پر قریب سے نظر
ایک ہی ڈیٹا کے دو علامتی طریقے
JSON اس لیے بنائی گئی تھی کہ پروگرام اسے آسانی سے پڑھ اور لکھ سکیں۔ YAML اس لیے بنائی گئی کہ لوگوں کے لیے آسان ہو۔ وہ اتنے ملتے ہیں کہ JSON تقریباً YAML کا ذیلی سیٹ ہے، اور YAML ریڈر عموماً JSON پڑھ سکتا ہے۔ اس لیے JSON کو YAML میں تبدیل کرنا ڈیٹا کو بدلنا نہیں بلکہ اسے نیا لباس پہنانا ہے، ایسی شکل میں جس میں نوٹوں کی گنجائش ہے اور رموزِ اوقاف کی بھیڑ نہیں۔
اندراج کو احتیاط کیوں چاہیے
چونکہ YAML اندراج پر انحصار کرتی ہے، اس لیے غلط جگہ پر لکھی سطر مفہوم بدل دیتی ہے۔ کنورٹر اندراج کو یکساں طور پر لکھتا ہے، خالی جگہوں کے ساتھ اور ہر سطح پر ایک ہی چوڑائی کے ساتھ، اس لیے فائل بنتے وقت درست ہوتی ہے۔ جب آپ بعد میں اسے ایڈٹ کریں تو وہی چوڑائی رکھیے، اور ٹیب سے بچیے، جس کی YAML اندراج کے لیے اجازت نہیں دیتی۔
پڑھنے کے لائق مگر ہمیشہ چھوٹی نہیں
YAML کو اکثر JSON سے زیادہ مختصر بتایا جاتا ہے، کیونکہ وہ قوسین اور کلیدوں کے گرد اقتباسی نشان چھوڑ دیتی ہے۔ چپٹے ڈیٹا کے لیے یہ درست ہے۔ گہری تہہ والے ڈیٹا کے لیے اندراج اسے حروف کے لحاظ سے لمبا کر سکتا ہے۔ فائدہ پڑھنے کی آسانی میں ہے، سائز میں نہیں۔
عام صورتیں تفصیل سے
اوزار کے نتیجے کو ترتیب میں بدلنا
اوزار اکثر اپنی ترتیبات یا نتائج JSON کے طور پر پرنٹ کرتے ہیں۔ JSON کو YAML میں تبدیل کیجیے، تبصرے شامل کیجیے اور اسے ترتیب کی فائل کے طور پر رکھیے جسے لوگ سنبھالتے ہیں۔
نظاموں کے درمیان ترتیبات منتقل کرنا
JSON استعمال کرنے والے نظام سے YAML استعمال کرنے والے نظام میں ترتیب لے جانا ایک تبدیلی کی بات ہے، جس کے بعد جانچ کہ ہدف کلیدیں قبول کرتا ہے۔
API کا جواب پڑھنا
API کا جواب قوسین کی سینکڑوں سطروں تک جا سکتا ہے۔ YAML میں وہی ڈیٹا خاکے کی طرح پڑھا جاتا ہے، اور آپ ساخت ایک نظر میں دیکھ سکتے ہیں۔
تدریس اور دستاویزات
وہی ڈیٹا دونوں علامتی طریقوں میں دکھانا یہ سکھانے کا اچھا طریقہ ہے کہ ساخت یافتہ ڈیٹا کیسے کام کرتا ہے۔ جن دستاویزات میں YAML کی مثالیں ہوں وہ اکثر پڑھنے میں آسان ہوتی ہیں۔
JSON کو YAML میں تبدیل کرنے سے پہلے عملی مشورے
جانچیے کہ JSON درست ہے
بھٹکا ہوا کاما یا غائب اقتباسی نشان تبدیلی کو روک دے گا۔ اگر صفحہ غلطی بتائے تو فائل کو ایسے ایڈیٹر میں کھولیے جو JSON کے مسائل نمایاں کرتا ہو اور اس سطر کو ٹھیک کیجیے جس کی طرف وہ اشارہ کرتا ہے۔
جہاں ہو سکے چپٹا کیجیے
اگر ساخت ضرورت سے زیادہ گہری ہے تو پہلے اسے سادہ کیجیے۔ چپٹی ساخت ایسی YAML دیتی ہے جسے پڑھنا اور ایڈٹ کرنا آسان ہو۔
صارف کے بارے میں سوچیے
دیکھیے کہ YAML کو کون پڑھے گا۔ کچھ اوزار مخصوص کلیدوں کے نام اور اقسام کی توقع رکھتے ہیں، اور بعد میں YAML ایڈٹ کرنے سے پہلے JSON کو ایڈجسٹ کرنا آسان ہے۔
بڑی فائلیں
سب کچھ آپ کے آلے پر چلتا ہے، اس لیے بہت بڑی فائل کو میموری چاہیے۔ کئی میگا بائٹ کی فائلوں کے لیے کمپیوٹر استعمال کیجیے، اور اگر صفحہ مشکل میں پڑے تو ڈیٹا تقسیم کیجیے۔
تبدیلی سے پہلے لوگ جو سوال پوچھتے ہیں
کیا میرا ڈیٹا بدل جائے گا؟
نہیں۔ ہر چیز دونوں سمتوں میں برقرار رہتی ہے: نقشے، فہرستیں، تاریں، اعداد، بولین اور null۔
میری لمبی تاریں کئی سطروں میں کیوں بٹ گئیں؟
لمبی تاریں تقریباً سو کالموں پر لپیٹی جاتی ہیں۔ اس سے سطر ٹوٹنے کی جگہیں بدلتی ہیں مگر قدر نہیں بدلتی۔
میری فائل میں اتنا اندراج کیوں ہے؟
کیونکہ ڈیٹا گہری تہہ داری رکھتا ہے، اور YAML تہہ داری کو اندراج سے ظاہر کرتی ہے۔
اینکرز کہاں ہیں؟
دہرائی ہوئی ساختیں اینکرز کے بجائے پوری لکھی جاتی ہیں، اس لیے فائل سیدھی نیچے پڑھی جاتی ہے۔
کیا میری فائل اپ لوڈ ہوتی ہے؟
نہیں۔ تبدیلی آپ کے براؤزر میں چلتی ہے اور فائل آپ کے آلے سے باہر نہیں جاتی۔
کیا میں واپس JSON میں جا سکتا ہوں؟
جی ہاں۔ YAML سے JSON فائل کو واپس پڑھتا ہے، البتہ جو تبصرے آپ نے شامل کیے وہ باقی نہیں رہیں گے۔
JSON کو YAML میں تبدیل کرتے وقت سمجھداری سے انتخاب
کیا واقعی YAML کی ضرورت ہے؟
اگر وصول کنندہ اوزار JSON پڑھتا ہے تو JSON رکھیے۔ تبدیلی تب کیجیے جب لوگوں کو فائل پڑھنی اور ایڈٹ کرنی ہو، یا جب اوزار YAML مانگے۔
دوسری منزلیں
اگر منزل مارک اپ کی فائل ہو تو JSON سے XML اس کے بعد آ سکتا ہے۔ جدولوں کے لیے JSON سے CSV اور JSON سے XLSX اسپریڈ شیٹوں کے کام آتے ہیں۔
JSON کو سنبھال کر رکھیے
اگر JSON کسی پروگرام سے آتی ہے تو وہی اصل ہے۔ اسے رکھیے، اور جب وہ بدلے تو YAML دوبارہ بنائیے۔
تبدیلی کے بعد اچھا نتیجہ حاصل کرنا
تبصرے شامل کیجیے
نتیجے میں کوئی نہیں، اور یہی وہ جگہ ہے جہاں YAML چمکتی ہے۔ ہر بلاک کے اوپر مختصر نوٹ لکھیے کہ وہ کیا کرتا ہے اور کون سی قدریں جائز ہیں۔
اقسام جانچیے
ورژن، کوڈ اور جھنڈوں جیسی قدروں پر نظر ڈالیے۔ یقینی بنائیے کہ جہاں آپ کو تار چاہیے وہاں تار ہے اور جہاں عدد چاہیے وہاں عدد۔
اندراج کو یکساں رکھیے
ایڈٹ کرتے وقت خالی جگہیں استعمال کیجیے اور ہر سطح پر وہی چوڑائی رکھیے۔ ایسا ایڈیٹر جو خالی جگہیں دکھاتا ہو اور YAML جانچتا ہو آپ کو غلطیوں سے بچائے گا۔
اپنی JSON تیار کرنا تاکہ وہ اچھی طرح تبدیل ہو
اسے باقاعدہ رکھیے
جب آپ JSON کو YAML میں تبدیل کرتے ہیں تو باقاعدہ ڈیٹا بہترین تبدیل ہوتا ہے: یکساں کلیدیں اور واضح اقسام۔ بے قاعدہ ڈیٹا درست مگر بے ترتیب نتیجہ دیتا ہے۔
کلیدوں کے نام واضح رکھیے
لوگ YAML پڑھیں گے، اس لیے ایسی کلیدیں چنیے جو اپنا مطلب بتائیں۔ ترتیب کو سنبھالنا آسان ہوتا ہے جب اس کے نام سادہ ہوں۔
پہلے چھوٹے ٹکڑے سے آزمائیے
اگر آپ کی فائل بڑی ہے تو ایک حصہ آزمائشی فائل میں لے لیجیے اور اسے تبدیل کیجیے۔ نتیجے پر ایک سرسری نظر دکھاتی ہے کہ ساخت وہی ہے جس کی آپ کو توقع تھی یا نہیں۔
JSON کو YAML میں تبدیل کرنے کے بعد YAML کے ساتھ کام
وہ نوٹ شامل کیجیے جو JSON نہیں رکھ سکتی تھی
تازہ تبدیل شدہ فائل کے ساتھ پہلا کام یہ ہے کہ اسے اوپر سے پڑھیے اور جہاں کوئی اجنبی الجھے وہاں تبصرے شامل کیجیے۔ کسی سیکشن کے اوپر مختصر سطر جو بتائے کہ وہ کس چیز کو قابو کرتا ہے، کہیں اور رکھے ہوئے ایک صفحے کی دستاویز سے زیادہ قیمتی ہے، کیونکہ وہ اس چیز کے ساتھ بیٹھی ہے جس کی وہ وضاحت کرتی ہے۔ جب آپ JSON کو YAML میں تبدیل کرتے ہیں تو یہی بنیادی فائدہ آپ کو ملتا ہے۔
متعلقہ ترتیبات کو اکٹھا کیجیے
کلیدیں وہ ترتیب رکھتی ہیں جو JSON میں تھی، جو شاید وہ ترتیب ہو جس میں کسی پروگرام نے انہیں نکالا۔ YAML میں آپ آزاد ہیں کہ انہیں دوبارہ ترتیب دیں تاکہ متعلقہ ترتیبات ساتھ بیٹھیں، گروپوں کے درمیان خالی سطر کے ساتھ۔ چونکہ نقشے میں کلیدوں کی ترتیب زیادہ تر قارئین کے لیے کوئی معنی نہیں رکھتی، یہ محفوظ ہے، مگر اپنا اوزار دیکھ لیجیے کہ کہیں وہ اس کی پروا تو نہیں کرتا۔
دیکھیے کہ وصول کنندہ اوزار کیا توقع رکھتا ہے
درست YAML فائل لازمی طور پر درست ترتیب نہیں ہوتی۔ اوزار مخصوص کلیدوں اور اقسام کی توقع رکھتے ہیں، اور کچھ نامعلوم کلیدوں کے بارے میں سخت ہوتے ہیں۔ تبدیلی کے بعد فائل کا اوزار کی دستاویز سے موازنہ کیجیے، اور اگر اس کا اپنا جانچنے والا ہو تو اسے چلائیے۔
ورژن کنٹرول استعمال کیجیے
YAML میں ترتیب کا سطر بہ سطر موازنہ آسان ہے، جو اسے ورژن کنٹرول کے لیے موزوں بناتا ہے۔ تبدیل شدہ فائل کمٹ کیجیے اور ساتھیوں کو ہر تبدیلی واضح فرق کے طور پر دیکھنے دیجیے، جو منی فائی کی ہوئی JSON کی ایک سطر کے ساتھ کہیں مشکل تھا۔
رازوں کا خیال رکھیے
اوزاروں سے برآمد شدہ JSON میں کبھی کبھی ٹوکن اور پاس ورڈ شامل ہوتے ہیں۔ چونکہ تبدیلی آپ کے براؤزر میں ہوتی ہے، اس لیے کچھ آپ کے آلے سے باہر نہیں جاتا، مگر YAML فائل میں وہی راز ہوں گے۔ فائل کمٹ یا شیئر کرنے سے پہلے انہیں ہٹا دیجیے، یا کسی زیادہ محفوظ جگہ منتقل کیجیے۔
ایڈٹ کرتے وقت اندراج پر نظر رکھیے
جب آپ ہاتھ سے ایڈٹ شروع کرتے ہیں تو بنیادی خطرہ وہ سطر ہے جو ایک خالی جگہ غلط ہو۔ ایسا ایڈیٹر استعمال کیجیے جو لکھتے وقت خالی جگہیں دکھاتا ہو اور YAML جانچتا ہو، اور ہر سطح پر وہی چوڑائی رکھیے جو کنورٹر نے رکھی تھی۔
ماخذ بدلنے پر دوبارہ تبدیل کیجیے
اگر JSON کوئی پروگرام بناتا ہے اور وقتاً فوقتاً بدلتی ہے تو ہر نئے نسخے کے لیے JSON کو YAML میں دوبارہ تبدیل کیجیے، اور اپنے تبصرے پرانی فائل سے نئی میں ملا دیجیے۔ موازنہ کرنے والا اوزار اس کو منٹوں کی بات بنا دیتا ہے۔
رازداری اور ہینڈلنگ
ترتیب کے لیے مقامی تبدیلی کیوں اہم ہے
ترتیب کی فائلوں میں اکثر پتے، اندرونی نظاموں کے نام اور کبھی کبھی کلیدیں اور پاس ورڈ ہوتے ہیں۔ بہت سے آن لائن کنورٹر آپ کی فائل سرور پر اپ لوڈ کرتے ہیں، اسے پروسیس کرتے ہیں اور نتیجہ واپس بھیجتے ہیں، اور کچھ دیر کے لیے ایک نقل ایسی مشین پر رہتی ہے جس پر آپ کا قابو نہیں۔ یہاں آپ کا اپنا براؤزر کام کرتا ہے، اس لیے فائل آپ کے آلے پر رہتی ہے۔
صفحہ چھوڑنے پر کیا ہوتا ہے
جب آپ صفحہ بند کرتے ہیں تو تبدیل شدہ فائل براؤزر سے غائب ہو جاتی ہے، اس لیے پہلے اسے ڈاؤن لوڈ کر لیجیے۔ آپ کی فائل کے بارے میں کچھ بھی محفوظ نہیں رہتا۔
اگر کچھ غلط ہو جائے
صفحہ کہتا ہے کہ فائل درست JSON نہیں
کوئی بھٹکا ہوا کاما، غائب اقتباسی نشان یا قوسین ہو سکتا ہے جو بند نہیں ہوتا۔ فائل کو ایسے ایڈیٹر میں کھولیے جو JSON کی غلطیاں نمایاں کرتا ہو اور اس سطر کو ٹھیک کیجیے جس کی طرف وہ اشارہ کرتا ہے۔
اوزار YAML کو رد کر دیتا ہے
کلیدوں کے نام اور اقسام جانچیے جن کی وہ توقع رکھتا ہے۔ YAML درست ہے، مگر ہو سکتا ہے اوزار کو مختلف نام یا مختلف ساخت چاہیے۔
بڑی فائل کے ساتھ صفحہ جم جاتا ہے
سب کچھ آپ کے آلے پر چلتا ہے، اور بڑی فائل کو میموری چاہیے۔ کمپیوٹر پر دوبارہ کوشش کیجیے، یا ڈیٹا تقسیم کیجیے۔
متعلقہ اوزار
اوزاروں کا یہی خاندان پڑوسی کاموں کو بھی سنبھالتا ہے۔ واپس جانے کے لیے YAML سے JSON استعمال کیجیے۔ مارک اپ کے لیے JSON سے XML اور XML سے JSON ان دونوں کے درمیان تبدیلی کرتے ہیں۔ جدولوں کے لیے JSON سے CSV، CSV سے JSON، JSON سے XLSX اور XLSX سے JSON ہیں۔
ایک عملی مثال
فرض کیجیے کوئی اوزار اپنی ترتیبات 150 سطروں کی JSON فائل کے طور پر پرنٹ کرتا ہے، اور آپ انہیں اپنے ریپوزٹری میں ایسی ترتیب کے طور پر رکھنا چاہتے ہیں جسے ساتھی پڑھ اور جس پر تبصرہ کر سکیں۔ آپ فائل یہاں چھوڑتے ہیں اور بٹن دباتے ہیں۔ ایک لمحے بعد آپ تقریباً 90 سطروں کی YAML ڈاؤن لوڈ کرتے ہیں جس میں ساخت خاکے کی طرح پڑھی جاتی ہے۔ آپ ہر سیکشن کے اوپر تبصرہ شامل کرتے ہیں، اسے کمٹ کرتے ہیں اور ٹیم کو بتاتے ہیں کہ ایڈٹ کہاں کرنا ہے۔ JSON اوزار کے نتیجے کے طور پر رہتی ہے۔
ایک مختصر چیک لسٹ
تبدیلی سے پہلے
جانچیے کہ JSON درست ہے۔ ہو سکے تو گہری تہہ داری کو سادہ کیجیے۔ JSON کو سنبھال کر رکھیے۔
تبدیلی کے دوران
فائل تیار ہونے تک صفحے پر رہیے۔
تبدیلی کے بعد
YAML کھولیے، ساخت اور اقسام جانچیے، تبصرے شامل کیجیے اور اسے اس اوزار کے ساتھ آزمائیے جو اسے پڑھے گا۔
عام غلطیاں
چھوٹی فائل کی توقع رکھنا
گہری تہہ داری گہرا اندراج بناتی ہے۔ YAML زیادہ پڑھنے کے لائق ہے، ہمیشہ چھوٹی نہیں۔
ٹیب کے ساتھ ایڈٹ کرنا
YAML اندراج کے لیے ٹیب کی اجازت نہیں دیتی۔ خالی جگہیں استعمال کیجیے۔
ماخذ کھو دینا
اگر JSON کسی پروگرام سے آتی ہے تو اسے رکھیے اور جب وہ بدلے تو YAML دوبارہ بنائیے۔
آپ کی فائل آپ کے آلے پر رہتی ہے
تبدیلی مقامی طور پر ہوتی ہے۔ آپ کی فائل آپ کا اپنا براؤزر پڑھتا ہے، وہیں دوبارہ لکھتا ہے اور YAML کے طور پر واپس دیتا ہے۔ کچھ اپ لوڈ نہیں ہوتا، اس لیے کوئی نقل سرور پر نہیں رہتی اور کوئی اور اسے نہیں پڑھ سکتا۔ نجی مواد والی ترتیب کے لیے JSON کو YAML میں تبدیل کرنے کا یہی محفوظ طریقہ ہے۔
خلاصہ
یہاں JSON کو YAML میں تبدیل کرنے کے لیے فائل چھوڑیے اور بٹن دبائیے۔ یہ آپ کے براؤزر میں پڑھی اور لکھی جاتی ہے، اس لیے فائل آپ کے آلے سے باہر نہیں جاتی۔ ہر چیز برقرار رہتی ہے، دونوں سمتوں میں: نقشے، فہرستیں، تاریں، اعداد، بولین اور null۔ دہرائی ہوئی ساختیں اینکرز کے بجائے پوری لکھی جاتی ہیں، اس لیے فائل سیدھی نیچے پڑھی جاتی ہے۔ YAML اپنے اندراج میں معنی رکھتی ہے، اس لیے جو قدر گہری تہہ میں جا نکلے وہ گہرے اندراج والی فائل بنتی ہے، پڑھنے کے لائق مگر مختصر نہیں۔ لمبی تاریں تقریباً سو کالموں پر لپیٹی جاتی ہیں، جس سے سطر ٹوٹنے کی جگہیں بدلتی ہیں مگر قدر نہیں بدلتی۔ کلیدیں وہی ترتیب رکھتی ہیں جو JSON میں تھی۔