Loading…

درباره قالب‌بندی TOML آنلاین

فایل‌های پیکربندی `pyproject.toml`، `Cargo.toml` یا `poetry` به هم ریخته؟ TOML خود را جایگذاری کنید یا یک فایل رها کنید و قالب‌بند ما فاصله‌های سفید را نرمال می‌کند، آرایه‌ها و جدول‌های درون‌خطی را مرتب می‌کند و بخش‌های شما را با فاصله‌گذاری یکنواخت نگه می‌دارد. ایده‌آل برای پایتون، Rust، Go، مولدهای سایت استاتیک و هر پروژه‌ای که برای پیکربندی به TOML متکی است.

ویژگی‌های کلیدی قالب‌بند TOML

  • **زیباساز یک‌کلیکی** برای فایل‌ها و قطعات پیکربندی TOML
  • **اندازه تورفت قابل تنظیم** از ۱ تا ۸ فاصله از طریق لغزنده *اندازه تورفت*
  • **تغییر سبک تورفت** – انتخاب بین فاصله یا تب برای تورفت‌گذاری
  • **کنترل پیچیدگی / طول خط** برای نگه‌داری آرایه‌های بلند و جدول‌های درون‌خطی در عرض ستون انتخاب شده
  • پشتیبانی از فایل‌های `.toml` مانند `pyproject.toml`، `Cargo.toml`، `Pipfile.toml`، `poetry.toml` و بیشتر
  • تجزیه‌کننده TOML مبتنی بر Prettier که تاریخ‌ها، آرایه‌ها، جدول‌های تو در تو و جدول‌های درون‌خطی را درک می‌کند
  • قالب‌بندی پایدار و همسان – اجرای مجدد روی همان فایل باعث انحراف قالب‌بندی نمی‌شود
  • کپی یک‌کلیکی خروجی قالب‌بندی شده، آماده برای ویرایشگر یا کامیت شما

🛠️ نحوه قالب‌بندی فایل‌های TOML به صورت آنلاین for toml-formatter

1

۱. TOML خود را پیست یا آپلود کنید

📥 TOML را در ویرایشگر پیست کنید یا یک فایل `.toml` مانند `pyproject.toml` یا `Cargo.toml` را با کشیدن و رها کردن بارگذاری کنید. این ابزار محتوا را به عنوان TOML تجزیه می‌کند، نه INI/JSON عمومی.

2

۲. تنظیمات تورفت و پیچیدگی را انتخاب کنید

⚙️ از لغزنده **اندازه تورفت** برای انتخاب تعداد فاصله‌ها در هر سطح تورفت استفاده کنید و **سبک تورفت** را در صورت ترجیح پروژه به تب تغییر دهید. **پیچیدگی / طول خط** را برای کنترل زمان پیچیدگی آرایه‌های بلند یا جدول‌های درون‌خطی تنظیم کنید (یا آن را روی `۰` قرار دهید تا پیچیدگی غیرفعال شود).

3

۳. روی «قالب‌بندی» کلیک کنید

🚀 دکمه **قالب‌بندی** را فشار دهید. قالب‌بند آرایه‌ها را بازچینش می‌کند، فاصله‌های اطراف `=` و ویرگول‌ها را پاک می‌کند، فاصله‌های جدول را نرمال می‌کند و شکست‌های خط یکسان را اعمال می‌کند در حالی که داده‌های شما را حفظ می‌کند.

4

۴. بررسی، کپی یا ذخیره

🔍 TOML اصلی و قالب‌بندی شده را مقایسه کنید. وقتی راضی بودید، نتیجه را به ویرایشگر خود برگردانید یا آن را به عنوان یک فایل `.toml` جدید در پروژه خود ذخیره کنید.

مشخصات فنی

ویژگی‌های TOML پشتیبانی شده

این قالب‌بند برای پیکربندی‌های پروژه‌های واقعی ساخته شده و ساختارهای مدرن TOML را درک می‌کند.

ویژگیپشتیبانیمثال‌ها / یادداشت‌ها
جدول‌ها و زیرجدول‌ها✅ کامل[tool.poetry], [project], [database.replica]
آرایه‌ها✅ کاملآرایه‌های درون‌خطی و آرایه‌های جدول‌ها
جدول‌های درون‌خطی✅ کاملسرورها = { آلفا = "10.0.0.1"، بتا = "10.0.0.2" }
تاریخ‌ها و زمان‌ها✅ کامل2025-09-23T10:20:30Z و فرمت‌های تاریخ محلی
توضیحات✅ حفظ شده# توضیحات در نزدیکی تنظیماتی که توصیف می‌کنند باقی می‌مانند
رشته‌های چندخطی✅ کاملرشته‌های TOML سه‌گانه برای بلوک‌های متنی طولانی

گزینه‌های قالب‌بندی (نگاشت شده به کنترل‌های ابزار)

این گزینه‌ها مستقیماً در رابط کاربری نمایش داده شده و به پلاگین پایه‌ای Prettier TOML متصل شده‌اند:

گزینهکنترل رابط کاربریمحدوده / مقادیرپیش‌فرض
اندازه تورفتگیاسلایدر اندازه تورفتگی1–8 فاصله2 فاصله
سبک تورفتگیانتخاب سبک تورفتگیفاصله‌ها / تب‌هافاصله‌ها
طول خطپیچیدن / طول خط0–120 ستون (0 = بدون پیچیدن مؤثر)80 ستون
پایان خطانتهای خط (داخلی)LF / CRLFLF در خروجی مرورگر

ورودی و محدودیت‌ها

این ابزار برای فایل‌های TOML کوچک تا متوسط که معمولاً در مخازن برنامه یافت می‌شوند بهینه‌سازی شده است.

پارامترمقدار / رفتاریادداشت‌ها
پسوند فایل‌ها.tomlهر فایل پیکربندی مبتنی بر TOML
انواع MIMEapplication/toml, text/x-tomlبرای تشخیص فایل در منطقه کشیدن و رها کردن استفاده می‌شود
حداکثر حجم فایل~5 مگابایتفایل‌های بزرگتر ممکن است کندتر باشند و بهتر است در CI مدیریت شوند
حداکثر کاراکترها≈ 2,000,000محدودیت سخت در زمان اجرای فرمت‌کننده برای جلوگیری از قفل شدن مرورگر

اعتبارسنجی و مدیریت خطا

اگر فایل شما TOML معتبری نیست (مثلاً `=` گم شده یا نقل‌قول‌ها مطابقت ندارند)، فرمت‌کننده معمولاً یک خطای قابل خواندن به جای خروجی فرمت‌شده برمی‌گرداند. خط نشان‌داده‌شده را اصلاح کرده و دوباره فرمت‌کننده را اجرا کنید.

جایگزین‌های خط فرمان برای فرمت‌دهی TOML

از نتیجه راضی هستید و می‌خواهید همان سبک را در CI یا هوک‌های پیش‌کامیت داشته باشید؟ در اینجا گزینه‌های مناسب CLI آورده شده‌اند:

کراس‌پلتفرم (Node.js / Prettier)

نصب Prettier و پلاگین TOML

npm install --save-dev prettier prettier-plugin-toml

Prettier و تجزیه‌کننده TOML را به پروژه شما اضافه می‌کند.

فرمت‌دهی فایل TOML با Prettier

npx prettier --parser toml --write pyproject.toml

`pyproject.toml` را با استفاده از قوانین TOML مربوط به Prettier بازنویسی می‌کند.

لینوکس / مک‌اواس / ویندوز (Taplo CLI)

فرمت‌دهی TOML با استفاده از Taplo

taplo fmt pyproject.toml

یک فرمت‌کننده محبوب دیگر CLI برای فایل‌های TOML.

بررسی فرمت در CI

taplo fmt --check .

اگر فایل‌های TOML به درستی فرمت نشده باشند، ساخت را متوقف می‌کند.

از این ابزار آنلاین برای ویرایش‌های سریع و آزمایش‌ها استفاده کنید، سپس همان سبک را با Prettier یا Taplo در خطوط لوله CI خود اعمال کنید.

موارد استفاده رایج فرمت‌کننده TOML

بسته‌بندی پایتون (`pyproject.toml`)

اطلاعات متادیتای پروژه پایتون و پیکربندی ابزارها را تمیز و آسان برای بررسی نگه دارید.

  • تراز کردن بخش‌های `[project]`، `[tool.poetry]` و `[tool.black]`.
  • یکسان‌سازی آرایه‌های وابستگی و مشخص‌کننده‌های نسخه.
  • خواندن تفاوت‌های پیکربندی را در درخواست‌های pull آسان‌تر کنید.
[project]
name = "my-app"
version = "0.1.0"

[tool.black]
line-length = 88
include = "\.(py|pyi)$"

پروژه‌های راست (`Cargo.toml`)

مانیفست‌های بسته راست را در محیط‌های کاری و میکروسرویس‌ها مرتب کنید.

  • نگه داشتن `[dependencies]` و `[dev-dependencies]` مرتب و با فاصله‌گذاری یکنواخت.
  • نرمال‌سازی جداول درون‌خطی مورد استفاده برای پرچم‌های ویژگی پیچیده.
  • استانداردسازی قالب‌بندی در چندین کرت در یک فضای کاری.
[package]
name = "my-crate"
version = "0.1.0"
edition = "2021"

[dependencies]
serde = { version = "1.0", features = ["derive"] }
tokio = { version = "1", features = ["full"] }

سایت‌های استاتیک و ابزارها (Hugo, Zola و غیره)

تمیز کردن TOML مورد استفاده برای مولدهای سایت استاتیک و ابزارهای متفرقه.

  • قالب‌بندی `config.toml` برای Hugo یا سایر مولدهای سایت استاتیک.
  • نگه داشتن بلوک‌های پیکربندی چندزبانه قابل خواندن.
  • نرمال‌سازی لیست‌های طولانی مانند ورودی‌های منو و طبقه‌بندی‌ها.

❓ Frequently Asked Questions

فرمتر TOML چیست؟

یک فرمتر TOML به طور خودکار فایل‌های TOML شما را بازسازی می‌کند تا از یک سبک یکپارچه پیروی کنند: تورفتگی‌ها را اصلاح می‌کند، آرایه‌ها و جداول درون‌خطی را تراز می‌کند، فاصله‌های اطراف `=` و کاماها را نرمال می‌کند و داده‌ها را حفظ می‌کند در حالی که خواندن و بررسی آن را آسان‌تر می‌سازد.

📏چگونه باید اندازه و سبک تورفتگی را انتخاب کنم؟

اگر تیم شما ترجیح خاصی ندارد، **2 فاصله** پیش‌فرض خوبی است. با سبکی که قبلاً در مخزن شما استفاده شده است مطابقت دهید: اگر فایل‌ها عمدتاً با فاصله تورفتگی دارند، به استفاده از فاصله ادامه دهید؛ اگر تب‌ها استاندارد تیم هستند، **سبک تورفتگی** را به تب تغییر دهید تا تغییرات جدید با کد موجود تراز شوند.

🧪آیا فرمتر نحو TOML را اعتبارسنجی می‌کند؟

تجزیه‌کننده پایه TOML نامعتبر را رد می‌کند (مثلاً `=` گمشده یا نقل‌قول‌های ناهماهنگ). در این حالت، ابزار به جای خروجی قالب‌بندی شده، یک پیام خطا نشان می‌دهد، بنابراین می‌توانید مشکل را برطرف کرده و دوباره تلاش کنید.

🔁آیا اجرای فرمتر می‌تواند رفتار پیکربندی من را تغییر دهد؟

فرمتر طوری طراحی شده است که **حفظ‌کننده معناشناسی** باشد: فقط فاصله‌های سفید و چیدمان را تغییر می‌دهد، نه کلیدها، مقادیر یا ساختار جدول. تا زمانی که فایل اصلی TOML معتبر باشد، معنای پیکربندی شما باید یکسان باقی بماند.

🔒آیا قالب‌بندی فایل‌های پیکربندی حساس ایمن است؟

مانند هر ابزار آنلاین دیگری، از چسباندن مطالب بسیار حساس مانند اسرار تولید خودداری کنید. برای پیکربندی‌های بسیار محرمانه، از یک فرمتر TOML محلی (مانند Prettier یا Taplo) در داخل محیط توسعه خصوصی خود استفاده کنید.

Pro Tips

Best Practice

یک `pyproject.toml` یا `Cargo.toml` زیبا قالب‌بندی شده در شاخه اصلی خود نگه دارید، سپس همان سبک را در CI با استفاده از Prettier یا Taplo اعمال کنید.

Best Practice

TOML را قبل از ثبت تغییرات بزرگ وابستگی یا پیکربندی قالب‌بندی کنید تا تفاوت‌های Git شما روی **تغییرات واقعی** متمرکز شود، نه نویز فاصله‌های سفید.

Best Practice

هنگام بازآرایی پیکربندی‌ها، ابتدا فایل را قالب‌بندی کنید، ثبت کنید، سپس مقادیر را تغییر دهید. این کار بررسی آنچه واقعاً تغییر کرده است را آسان‌تر می‌کند.

Best Practice

از **اندازه تورفتگی** و **طول بسته‌بندی** یکسان در تمام فایل‌های TOML خود استفاده کنید تا پیمایش بین پروژه‌ها و بررسی کدها یکنواخت به نظر برسند.

Additional Resources

Other Tools