Loading…

درباره فرمت‌دهنده INI زیباساز آنلاین INI

به دنبال فایل‌های INI تمیز و قابل خواندن هستید؟ این ابزار فایل‌های `.ini`، `.cfg` و `.conf` شما را با استفاده از موتور Prettier آگاه از INI فرمت می‌دهد. نرمال‌سازی فاصله‌ها اطراف `=`، حفظ نظرات، کنترل تورفتگی و اجرای اختیاری پایان خطوط یکنواخت تا فایل‌های پیکربندی شما مرتب، آماده برای نسخه‌گذاری و آسان برای بازبینی باقی بمانند.

ویژگی‌های کلیدی فرمت‌کننده INI

  • نرمال‌سازی فاصله‌گذاری اطراف `=` تا کلیدها و مقادیر به طور یکنواخت در هر بخش قابل خواندن باشند
  • حفظ بخش‌ها، کلیدها و نظرات در جای خود در حالی که فضاهای اضافی انتهایی حذف می‌شوند
  • تنظیم اندازه تورفتگی (فاصله) و انتخاب بین فاصله یا تب برای سبک تورفتگی
  • کنترل سبک پایان خط (LF یا CRLF) برای جلوگیری از تفاوت‌های پرسر و صدا در بین پلتفرم‌ها
  • پشتیبانی از کشیدن و رها کردن فایل‌های `.ini`، `.cfg` و `.conf`، به علاوه چسباندن مستقیم در ویرایشگر
  • قالب‌بندی فوری با موتور Prettier آگاه از INI، با پشتیبانی سرور در صورت نیاز
  • حفظ نظرات و خطوط خالی تا مستندات و گروه‌بندی بصری شما دست‌نخورده باقی بمانند

🔧 نحوه استفاده از فرمت‌کننده INI for ini-formatter

1

۱. چسباندن یا بارگذاری پیکربندی شما

محتوای INI خود را در ویرایشگر بچسبانید یا یک فایل `.ini`، `.cfg` یا `.conf` را کشیده و رها کنید. بخش‌هایی مانند `[core]`، `[user]` و جفت‌های استاندارد `key = value` همه پشتیبانی می‌شوند.

2

۲. تنظیم گزینه‌های قالب‌بندی

اندازه تورفتگی را سفارشی کنید، فاصله یا تب را برای تورفتگی انتخاب کنید، و پایان خط خروجی (LF یا CRLF) را برای مطابقت با قراردادهای پروژه یا پلتفرم خود انتخاب نمایید.

3

۳. کپی یا دانلود نتیجه

خروجی قالب‌بندی شده را در پنل پیش‌نمایش بررسی کنید، سپس آن را به ویرایشگر خود برگردانید یا فایل تمیز شده را دانلود کرده و به کنترل نسخه commit کنید.

مشخصات فنی

انواع فایل پشتیبانی شده

فرمت‌کننده بر روی فرمت‌های پیکربندی سبک INI کلاسیک که معمولاً در ویندوز، لینوکس و برنامه‌های مختلف استفاده می‌شوند، متمرکز است.

پسوندتوضیحات
.iniفایل‌های INI سبک ویندوز کلاسیک با هدرهای `[section]` و جفت‌های `key = value`
.cfgفایل‌های پیکربندی عمومی با استفاده از نحو شبیه INI
.confفایل‌های پیکربندی سبک Unix/Linux که از قراردادهای INI-ish پیروی می‌کنند

گزینه‌های موجود (رابط کاربری)

گزینه‌های نمایش داده شده در رابط به طور مستقیم به تنظیمات زیربنایی Prettier / فرمت‌کننده نگاشت می‌شوند:

گزینهتوضیحات
سبک تورفتگیانتخاب بین فاصله‌ها یا تب‌ها برای تورفتگی
اندازه تورفتگیتعداد فاصله‌ها در هر سطح تورفتگی هنگام استفاده از فاصله
پایان خطکنترل پایان‌های خط (LF `\n` یا CRLF `\r\n`) برای سازگاری چندسکویی

قوانین قالب‌بندی (متناسب با INI)

قالب‌بند از یک پلاگین Prettier متناسب با INI استفاده می‌کند و برای حفظ ساختار پیکربندی شما طراحی شده است:

جنبهرفتاریادداشت‌ها
بخش‌هاسربرگ‌های [section] بدون تغییر نگه‌داری می‌شوندفضای سفید اطراف نام بخش‌ها نرمال می‌شود (مثلاً `[ user ]` → `[user]`)
کلیدها و مقادیر`key = value` نرمال شدهاطمینان از فاصله‌گذاری یکنواخت اطراف `=` در حالی که متن اصلی کلید/مقدار حفظ می‌شود
توضیحاتخطوطی که با `;` یا `#` شروع می‌شوند حفظ می‌شوندموقعیت توضیحات در صورت امکان حفظ می‌شود تا مستندات نگهداری شود
خطوط خالیبین بخش‌ها حفظ می‌شوندبه حفظ گروه‌بندی بصری کمک می‌کند در حالی که فاصله‌های اضافی انتها حذف می‌شوند
رمزگذاریUTF-8 مورد انتظاررمزگذاری‌های غیرمعمول ممکن است نیاز به تبدیل قبل از قالب‌بندی داشته باشند

خطاها و موارد خاص

INI به صورت سست مشخص شده و فایل‌های دنیای واقعی گاهی مرزها را جابجا می‌کنند. هنگامی که قالب‌بند با مشکل مواجه می‌شود، معمولاً سریع با یک خطا متوقف می‌شود:

نشانهعلت محتملچه چیزی را بررسی کنید
پیام خطای غیرمنتظرهساختار غیر INI یا فرمت‌های ترکیبیاطمینان حاصل کنید که فایل عمدتاً به سبک `[section]` + `key = value` است
خروجی قطع‌شده / عجیبداده‌های باینری جاسازی‌شده یا کاراکترهای کنترلی غیرمعمولبلوک‌های باینری را حذف کنید یا آن‌ها را به فرمت دیگری صادر کنید
جابجایی توضیحاتنرمال‌سازی تهاجمی در موارد خاصبررسی موقعیت‌یابی در اطراف بلوک‌های نظرات سنگین یا جداکننده‌های غیرمعمول

جایگزین‌های خط فرمان

ابزارهای CLI را ترجیح می‌دهید یا می‌خواهید همه چیز محلی بماند؟ در اینجا چند بلوک سازنده وجود دارد که می‌توانید تطبیق دهید.

پایتون

تجزیه و انتشار مجدد INI با configparser (پایه)

python - << 'PY'
import configparser, sys
config = configparser.ConfigParser()
config.read('input.ini', encoding='utf-8')
with open('formatted.ini', 'w', encoding='utf-8') as f:
    config.write(f)
PY

از configparser داخلی پایتون برای خواندن و نوشتن بخش‌ها و کلیدها استفاده می‌کند. توجه: نظرات و ترتیب ممکن است حفظ نشوند.

یونیکس/لینوکس

ترازبندی بسیار تقریبی علامت مساوی با awk

awk -F '=' 'NF==2 { printf "%-24s = %s\n", $1, $2; next } { print }' input.ini > aligned.ini

ترازبندی ساده ستونی برای خطوط `کلید = مقدار`؛ نظرات و مقادیر پیچیده ممکن است نیاز به بررسی دستی داشته باشند.

موارد استفاده متداول

مدیریت سیستم

  • پاکسازی فایل‌های `.conf` لینوکس قبل از commit کردن آنها در مخازن زیرساخت
  • مرتب‌سازی فایل‌های `.ini` / `.cfg` برنامه‌های دسکتاپ برای عیب‌یابی آسان‌تر
[network]
ip = 192.168.0.1
mask = 255.255.255.0
gateway = 192.168.0.254

توسعه نرم‌افزار

  • نگهداری پیکربندی‌های INI محیط‌محور برای برنامه‌ها یا تست‌هارنس‌ها
  • قابل خواندن نگه داشتن پرچم‌های ویژگی و تنظیمات ساخت مبتنی بر INI در کنترل نسخه
[build]
target = production
optimize = true
log_level = info

مستندات و پشتیبانی

  • ایجاد مثال‌های INI تمیز برای فایل‌های README و ویکی‌ها
  • اشتراک‌گذاری پیکربندی‌های حداقلی و قالب‌بندی شده با پشتیبانی یا همکاران

❓ Frequently Asked Questions

🔁آیا فرمت‌کننده منطق کلید/مقدار را تغییر می‌دهد؟

خیر. فرمت‌کننده فقط چیدمان را تنظیم می‌کند: فاصله‌گذاری، تورفتگی و پایان خطوط. کلیدها، مقادیر، بخش‌ها و روابط آنها به عنوان متن حفظ می‌شوند، با فرض معتبر بودن ورودی INI.

🧵با علامت‌های مساوی چه اتفاقی می‌افتد؟

ابزار فضاهای اطراف `=` را نرمال می‌کند تا `key=value`، `key = value` و `key = value` همگی به `key = value` یکسان تبدیل شوند. این کار پیکربندی را برای اسکن و diff آسان‌تر می‌کند.

📦آیا می‌توانم از این برای فایل‌های پیکربندی بزرگ استفاده کنم؟

بله، در محدوده معقول. رابط کاربری فایل‌هایی تا حدود ۵ مگابایت را می‌پذیرد و فرمت‌کننده محدودیت داخلی حدود ۲ میلیون کاراکتر دارد تا در مرورگرهای معمولی پاسخگو بماند.

🔒آیا همه چیز در مرورگر من پردازش می‌شود؟

فرمت‌کننده عمدتاً توسط یک موتور Prettier آگاه از INI که در مرورگر شما اجرا می‌شود، قدرت می‌گیرد. اگر آن موتور یا پلاگین در دسترس نباشد، ابزار ممکن است به یک فرمت‌کننده بک‌اند امن بازگردد. برای پیکربندی‌های بسیار حساس یا خصوصی، باید ابزارهای محلی CLI یا مبتنی بر ویرایشگر را ترجیح دهید.

🧾آیا نحو INI را اعتبارسنجی می‌کند؟

تمرکز آن بر روی قالب‌بندی است نه اعتبارسنجی کامل. بسیاری از فایل‌های نادرست همچنان قالب‌بندی می‌شوند، اما ساختار کاملاً شکسته یا محتوای غیر INI ممکن است خطاها یا خروجی غیرمنتظره تولید کند.

Pro Tips

Best Practice

قبل از کامیت فایل‌های `.ini` فرمت‌دهنده را اجرا کنید تا تفاوت‌ها فقط تغییرات واقعی پیکربندی را نشان دهند، نه نویز فاصله‌گذاری.

Best Practice

در فایل‌های INI فاصله را به جای تب ترجیح دهید، مگر اینکه ابزار خاصی تب را الزامی کند—فاصله‌ها در بین پلتفرم‌ها و ویرایشگرها سازگاری بیشتری دارند.

Best Practice

یک سبک استاندارد برای تمام پیکربندی‌های INI در یک مخزن حفظ کنید؛ ترکیب سبک‌ها در بین سرویس‌ها، بازبینی و عیب‌یابی را سخت‌تر می‌کند.

Best Practice

اگر پروژه شما از هر دو فرمت INI و YAML/JSON استفاده می‌کند، فرمت‌دهنده‌های اختصاصی را به هر کدام اعمال کنید تا سبک پیکربندی در بین فرمت‌ها ثابت بماند.

Additional Resources

Other Tools