الميزات الرئيسية لمنسق 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. انسخ أو نزل النتيجة
راجع الإخراج المنسق في لوحة المعاينة، ثم انسخه مرة أخرى إلى محررك أو حمل الملف النظيف وأضفه إلى التحكم في الإصدار.
المواصفات الفنية
أنواع الملفات المدعومة
يستهدف المنسق تنسيقات التكوين الكلاسيكية من نوع INI الشائعة الاستخدام في Windows وLinux وفي التطبيقات المختلفة.
| الامتداد | الوصف |
|---|---|
| .ini | ملفات INI كلاسيكية على نمط Windows مع رؤوس `[section]` وأزواج `key = value` |
| .cfg | ملفات التكوين العامة التي تستخدم بناء جملة مشابه لـ INI |
| .conf | ملفات التكوين على نمط Unix/Linux التي تتبع اتفاقيات شبيهة بـ INI |
الخيارات المتاحة (واجهة المستخدم)
تتعين الخيارات المعروضة في الواجهة مباشرة على إعدادات 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` في لينكس قبل إضافتها إلى مستودعات البنية التحتية
- ترتيب ملفات `.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؟
Pro Tips
شغّل المنمّق قبل إيداع ملفات `.ini` بحيث تُظهر الاختلافات تغييرات التكوين الحقيقية فقط، وليس ضوضاء المسافات.
فضّل المسافات بدلاً من علامات الجدولة في ملفات INI ما لم تتطلب أداة محددة علامات الجدولة—المسافات أكثر اتساقاً عبر المنصات والمحررات.
احتفظ بنمط واحد معياري لجميع تكوينات INI في المستودع؛ خلط الأنماط عبر الخدمات يجعل المراجعة واستكشاف الأخطاء أصعب.
إذا كان مشروعك يستخدم كلًا من INI وYAML/JSON، فطبق منمقات مخصصة لكل منها بحيث يظل نمط التكوين متسقاً عبر التنسيقات.
Additional Resources
Other Tools
- محسن CSS
- محسن HTML
- محسن Javascript
- محسن PHP
- منتقي الألوان
- مستخرج Sprite
- فك تشفير Base64
- تشفير Base64
- منسق Csharp
- منسق CSV
- Dockerfile Formatter
- منسق Elm
- منسق ENV
- منسق Go
- منسق Graphql
- منسق Hcl
- منسق JSON
- منسق Latex
- منسق Markdown
- منسق Objectivec
- Php Formatter
- منسق Proto
- منسق Python
- منسق Ruby
- منسق Rust
- منسق Scala
- منسق سكريبت Shell
- منسق SQL
- منسق SVG
- منسق Swift
- منسق TOML
- Typescript Formatter
- منسق XML
- منسق YAML
- منسق Yarn
- مختصر CSS
- Html Minifier
- Javascript Minifier
- مختصر JSON
- مصغر XML
- عارض رؤوس HTTP
- PDF إلى نص
- مختبر Regex
- مدقق ترتيب SERP
- بحث Whois