איך להשתמש בו
- הדבק אובייקט JSON או נסה את הדוגמה.
- הפעל את 'השמט ערכי null' אם ה־JSON שלך מכיל ערכי null שאינך צריך.
- העתק את ה־TOML או הורד אותו כקובץ .toml.
איך זה עובד
ה־JSON מפוענח בקפדנות, ולאחר מכן נכתב כ־TOML 1.0 באמצעות ספריית הקוד הפתוח smol-toml. אובייקטים מקוננים הופכים ל־[tables], מערכים של אובייקטים הופכים ל־[[arrays of tables]], ומפתחות שאינם מילים פשוטות נכתבים במרכאות.
TOML אינו יכול לייצג כל מה ש־JSON יכול. שורש המסמך חייב להיות טבלה, לכן מערך JSON או ערך בודד נדחים. אין null ב־TOML: כברירת מחדל, ה־null הראשון מדווח עם הנתיב שלו; ניתן לבחור במקום זאת להשמיט איברי null באובייקטים. null בתוך מערך הוא תמיד שגיאה, כי הסרתו הייתה משנה את המיקומים של שאר האיברים. מערכים שמערבבים טיפוסים (למשל מספרים ומחרוזות) תקינים ב־TOML 1.0 אך לא בגרסה הישנה 0.5, ולכן הם נספרים בהערה.
JSON אינו מבחין בין 1 ל־1.0, ולכן מספרים שלמים נכתבים כמספרים שלמים של TOML. מחרוזות שנראות כמו תאריכים נשארות מחרוזות. הכיוון ההפוך הוא TOML ל־JSON.
דוגמאות
הגדרות אפליקציה
{"server": {"host": "0.0.0.0", "port": 8080}} הופך לטבלת [server] עם המפתחות host ו־port.
רשימת עובדים
"workers": [{"queue": "mail"}, {"queue": "images"}] הופך לשני בלוקים של [[workers]].
שאלות נפוצות
מדוע אסור להשתמש ב־null?
ל־TOML אין ערך null. השמיטו את המפתח או השתמשו בערך כמו מחרוזת ריקה, בהתאם למה שהתוכנה הקוראת מצפה לו.
מדוע מערך של מספרים ומחרוזות מציג הערה?
מערכים עם סוגי ערכים מעורבים מותרים החל מ־TOML 1.0, אבל כלים שמיישמים TOML 0.5 דוחים אותם. ההערה עוזרת אם כלי היעד שלך ישן יותר.
האם 1.0 יישאר מספר עשרוני?
לא. JSON שומר את 1.0 ואת 1 בתור אותו מספר, ולכן הוא הופך למספר השלם 1. כתוב 1.5 או ערוך את ה־TOML אם התוכנה הקוראת זקוקה למספר עשרוני.
פרטיות
ההמרה מתבצעת כולה בדפדפן שלך. ה־JSON וה־TOML שלך אינם מועלים או נשמרים.