TOML পার্সার
TOML (Tom's Obvious Minimal Language) তাৎক্ষণিকভাবে পার্স করে JSON-এ রূপান্তর করুন। সর্বোচ্চ নিরাপত্তা ও গোপনীয়তার জন্য সব প্রক্রিয়াকরণ আপনার ব্রাউজারেই হয়।
পার্স করা JSON এখানে দেখা যাবে...
TOML পার্সার ব্যবহারের পদ্ধতি
TOML পেস্ট করুন
ইনপুট এরিয়ায় আপনার TOML কনফিগারেশন কনটেন্ট লিখুন বা পেস্ট করুন।
পার্স করুন
Parse বাটনে ক্লিক করুন অথবা কনটেন্ট স্বয়ংক্রিয়ভাবে পার্স হবে।
JSON কপি করুন
তৈরি JSON আউটপুট পর্যালোচনা করে ক্লিপবোর্ডে কপি করুন।
TOML কী?
TOML (Tom's Obvious Minimal Language) হলো একটি মিনিমাল কনফিগারেশন ফাইল ফরম্যাট যার স্পষ্ট অর্থবিদ্যার কারণে পড়তে সহজ। টম প্রেস্টন-ওয়ার্নার তৈরি করা TOML একটি হ্যাশ টেবিলে দ্ব্যর্থহীনভাবে ম্যাপ হতে ডিজাইন করা এবং Rust-এর Cargo, Python-এর pip ও Hugo স্ট্যাটিক সাইট জেনারেটরের মতো প্রজেক্টে ব্যবহৃত।
TOML ফিচার
কী-ভ্যালু জোড়া
মৌলিক টাইপের জন্য সরল key = value সিনট্যাক্স
টেবিল (সেকশন)
[section] হেডার দিয়ে কনফিগারেশন সংগঠিত করুন
অ্যারে ও ইনলাইন টেবিল
অ্যারে, নেস্টেড টেবিল ও ইনলাইন টেবিল সিনট্যাক্স সমর্থন
সাধারণ জিজ্ঞাসা
TOML স্ট্রিং, পূর্ণসংখ্যা, ফ্লোট, বুলিয়ান, তারিখ-সময়, অ্যারে ও টেবিল (হ্যাশ ম্যাপ) সমর্থন করে। এটি ইনলাইন টেবিল ও মাল্টিলাইন স্ট্রিংও সমর্থন করে।
TOML বিশেষভাবে কনফিগারেশন ফাইলের জন্য ডিজাইন করা। JSON-এর বিপরীতে এটি কমেন্ট সমর্থন করে ও বেশি মানব-পাঠযোগ্য। YAML-এর বিপরীতে এর গ্রামার কঠোরতর ও সরল, ফলে পার্সিং ত্রুটির সম্ভাবনা কম।
হ্যাঁ! সব পার্সিং সম্পূর্ণরূপে আপনার ব্রাউজারে হয়। কোনো ডেটা কোনো সার্ভারে পাঠানো হয় না, তাই আপনার কনফিগারেশন ফাইল সম্পূর্ণ গোপন থাকে।
[server] একটি টেবিল খোলে; [server.tls] তার ভেতরে আরেকটি নেস্ট করে; আর [[products]] টেবিলের একটি অ্যারে শুরু করে, যেখানে প্রতিটি পুনরাবৃত্ত [[products]] হেডার নতুন এলিমেন্ট যোগ করে - কনফিগারেশন ফাইলে রেকর্ডের তালিকার প্রচলিত রীতি। ইনডেন্টেশন শুধুই চেহারা; ব্র্যাকেট হেডারই কাঠামো নির্ধারণ করে।
TOML 1.0-এ চারটি সাময়িক টাইপ আছে: অফসেট সহ তারিখ-সময় (1979-05-27T07:32:00Z, RFC 3339 ফরম্যাট), অফসেট ছাড়া লোকাল তারিখ-সময়, লোকাল তারিখ (1979-05-27), এবং লোকাল সময় (07:32:00)। টাইমস্ট্যাম্প প্রথম-শ্রেণির ভ্যালু - কোনো কোটিং নেই, কোনো স্ট্রিং পার্সিং নেই - যা JSON বা YAML-এ স্ট্রিং তারিখের যে পুরো শ্রেণির বাগ ঘটায় তা দূর করে।
INI-এর বিপক্ষে: TOML-এর আসল স্পেসিফিকেশন আছে, টাইপযুক্ত ভ্যালু (পূর্ণসংখ্যা, ফ্লোট, বুলিয়ান, তারিখ, অ্যারে) আছে, আর ডটেড-কী রীতির বদলে পরিষ্কার নেস্টিং আছে। JSON-এর বিপক্ষে: কমেন্ট, মাল্টিলাইন স্ট্রিং, আর ট্রেইলিং-কমা ফাঁদ নেই। প্রোগ্রামের মধ্যে ডেটা ইন্টারচেঞ্জের জন্য JSON এখনো ভালো; TOML সরাসরি মানুষের লেখা কনফিগারেশনকে লক্ষ্য করে।
Rust-এর Cargo (Cargo.toml) এটি বিখ্যাত করেছে; Python বিল্ড কনফিগারেশনের জন্য এটিকে মানসম্মত করেছে (pyproject.toml, PEP 518); আর এটি Hugo, Netlify ও অনেক CI সিস্টেমে দেখা যায়। ফরম্যাটটি toml-lang সংস্থা একটি কনফরম্যান্স টেস্ট স্যুটসহ রক্ষণাবেক্ষণ করে - এই কারণেই ভাষাজুড়ে পার্সাররা একমত।
তিন ডাবল কোট লাইন জুড়ে থাকে আসল নিউলাইনসহ এবং হোয়াইটস্পেস ছাঁটার লাইন-শেষ ব্যাকস্ল্যাশ সমর্থন করে; তিন সিঙ্গেল কোট একই কাজ করে কোনো এস্কেপ প্রক্রিয়াকরণ ছাড়াই। সিঙ্গেল-কোটেড লিটারেল স্ট্রিংও এস্কেপ সম্পূর্ণ এড়িয়ে যায় - Windows পাথ (C:\Users\name) আর regex প্যাটার্নের জন্য আদর্শ যেখানে অন্যথায় প্রতিটি ব্যাকস্ল্যাশ দ্বিগুণ করতে হতো।
সম্পর্কিত সরঞ্জাম
প্রামাণ্য রেফারেন্স
এই সরঞ্জামের পেছনের মূল উৎস — দ্বিতীয় হাতের সারাংশ নয়, বরং অফিসিয়াল স্ট্যান্ডার্ড ও স্পেসিফিকেশন।