ForHosting KIT · النصوص والذكاء الاصطناعي

تحويل التاب إلى مسافات

الصق كودًا أو نصًا فتتحول كل علامة جدولة إلى العدد نفسه من المسافات، أربع ما لم تختر عرضًا آخر من 1 إلى 16، فتظهر المسافات البادئة متطابقة في أي محرر أو متصفح. وتبقى فواصل الأسطر والمسافات كما هي. مجاني في متصفحك.

  • مجاني
  • يعمل في متصفحك
  • دون تسجيل
  • بياناتك لا تغادر جهازك
استخدمها من الويبAPIالبريدTelegramالتطبيق قريبًا
إذا أدخلت
النص
function hi() { return true; }
تحصل على
النتيجة
function hi() { return true; }
المُدخَل
function hi() { return true; }
النص
function hi() { return true; }
المسافات لكل علامة جدولة
4

غالبًا ما تخلط محررات الكود ولصق الطرفية ومصادر markdown بين أحرف الجدولة غير المرئية والمسافات، فتبدو المسافة البادئة سليمة في أداة وتنزاح في أخرى. تقوم أداة تحويل التاب إلى مسافات هذه بتوسيع كل تاب U+0009 إلى عرض ثابت من مسافات ASCII—أربعة افتراضيًا، أو أي عدد صحيح من واحد إلى ستة عشر—مع الإبقاء على فواصل الأسطر والحروف والمسافات الموجودة دون تغيير. تفشل السلاسل الفارغة أو التي تحتوي على مسافات بيضاء فقط بمدخل غير صالح حتى لا تخزّن الأنابيب تحويلات فارغة. استخدموها عند توحيد المستودعات وفق أدلة أسلوب تعتمد المسافات فقط، أو تجهيز مقتطفات لمتصفحات تعرض التاب بشكل غير متسق، أو تنظيف الصادرات قبل النشر.

ماذا يعني تحويل التاب إلى مسافات ومتى تستخدمونه

لا تعيد الأداة محاذاة الكتل المتداخلة، ولا تحسب وحدات المسافة البادئة بأكبر قاسم مشترك، ولا ترفض الأنماط المختلطة—بل توسّع التاب أينما ظهر، بما في ذلك نقاط التوقف وسط السطر في جداول قديمة أو مقاطع Makefile التي تحتاج فقط إلى تطبيع على مستوى الحرف. فضّلوا هذه الحاسبة عندما تكون نية البحث تحويل التاب إلى مسافات، أو استبدال التاب بمسافات، أو محول تاب إلى مسافة، أو توسيع التاب لعرض متسق.

تشمل مصادر التاب الشائعة النسخ من بيئات IDE بمسافة بادئة بالتاب، وفروق git من فرق مختلطة، وأعمدة CSV أو السجلات المفصولة بالتاب، والسكربتات القديمة التي استخدمت hard tabs للمحاذاة. لا تخلطوا هذه الصفحة مع مطبّعات مستويات المسافة البادئة الكاملة التي تكتشف التداخل غير المنتظم وتعيد كتابة المستويات إلى وحدة أساس؛ ذلك منتج آخر لمشكلة أخرى. تبقى مسافات ASCII الموجودة مسافات؛ وتنمو نقاط كود التاب فقط إلى الحشو المختار.

الاستخدامات الشائعة والحدود العملية

استدعوا أداة تحويل التاب إلى مسافات المجانية داخل المتصفح لتنظيف اللصق وعروض الفصل وتحضير مراجعة الكود والفحوصات السريعة دون تثبيت أداة سطح مكتب أو كتابة سطر واحد بكل لغة. سير عمل نموذجي يوسّع التاب في مقتطف قبل نشر الوثائق حتى يرى القرّاء على الويب مسافة بادئة مستقرة بغض النظر عن عرض التاب في المتصفح. سير آخر يوحّد عينات طلبات السحب مع اتفاقية المسافات فقط للمشروع قبل lint، بينما ينظّف ثالث لصقًا مفصولًا بالتاب ليصبح نصًا أحادي المسافة بمحاذاة مسافات للعرض فقط.

اقرنوا هذه النقطة النهائية مع أدوات تقليم الأسطر أو إزالة المسافات البيضاء فقط عندما تكون الخطوة التالية نية SEO مختلفة؛ واحتفظوا بتحويل التاب إلى مسافات كصفحة هبوط خاصة حتى لا يختلط مصطلح البحث مع أدوات طي المسافات أو مستويات المسافة البادئة. لا تتوقعوا إزالة وسوم HTML أو إعادة كتابة بنية markdown أو نقاط تاب ذكية تحاذي مضاعفات الأعمدة بما يتجاوز التوسيع بعرض ثابت—فتلك مشكلات منفصلة.

فرض أدلة أسلوب بالمسافات فقط

وسّعوا hard tabs في مقتطفات الكود وعينات الإعداد قبل الالتزام أو النشر حتى تبقى المستودعات التي تمنع التاب متسقة دون إعادة محاذاة المستويات المنطقية.

عرض ويب وmarkdown مستقر

حوّلوا التاب إلى مسافات في الوثائق وكتل كود المدونات حتى تعرض المتصفحات والمحركات ذات عرض التاب المختلف المحاذاة نفسها.

كيف أحوّل التاب إلى مسافات بهذه الأداة؟

حقل result في الاستجابة هو السلسلة بعد توسيع كل تاب إلى ذلك العدد من المسافات.

هل تعيد محاذاة مستويات الكود المتداخلة؟

لا. تستبدل فقط أحرف الجدولة بعرض ثابت من المسافات. لاكتشاف مستويات المسافة البادئة وتطبيعها استخدموا قدرة مخصّصة لتطبيع المسافة البادئة.

ماذا يحدث لعلامات الجدولة في وسط السطر؟

تُستبدل هي أيضًا. تصبح كل علامة جدولة العدد المختار من المسافات أينما كانت، فالعلامة بين عمودين تعطي المسافات نفسها التي تعطيها علامة في بداية السطر.

كيف أعرف عدد علامات الجدولة التي استُبدلت؟

تعرض النتيجة عدد العلامات المستبدلة ومقدار زيادة طول النص. ففي دالة قصيرة من ثلاثة أسطر فيها سطر واحد مزاح، تُستبدل علامة واحدة ويزيد النص من 31 إلى 34 حرفًا.

لماذا تتغير المسافات البادئة من برنامج إلى آخر؟

لأن علامة الجدولة محرف غير مرئي يعرضه كل محرر أو متصفح بعرضه الخاص. أما المسافات فعرضها ثابت، لذا تبقى المحاذاة نفسها في كل مكان بعد التحويل.

كل ما في هذه الصفحة متاح برمجيًا. هذا القسم موجّه للفرق التقنية التي تريد ربط الأداة بأنظمتها الخاصة؛ بقية المستخدمين يمكنهم استخدام الأداة أعلاه مباشرة دون الحاجة لقراءة ما يلي.

POSThttps://api.kit.forhosting.com/str/tabs-to-spaces

صادِق على طلبك بترويسة Bearer، وأرسل طلب POST واحدًا لتدخل مهمتك قائمة التنفيذ فورًا؛ ثم تستلم النتيجة عبر webhook أو رابط موقّع.

curl -X POST https://api.kit.forhosting.com/str/tabs-to-spaces \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text":"function hi() {\n\treturn true;\n}"}'
{
  "text": "function hi() {\n\treturn true;\n}"
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "str.tabs_to_spaces",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

الواجهة غير متزامنة: تستلم task_id فور الإرسال، ويمكنك الاستعلام عن الحالة بمعدل طلب واحد في الثانية.

لكل طلب$0.002

السعر معلن كما تراه: لا tokens ولا نظام نقاط؛ وإن فشلت المهمة فلن تُحاسَب عليها.

HTTPالرمزالمعنى
401unauthorizedمفتاح الوصول مفقود أو غير صالح؛ تحقق من ترويسة Bearer في طلبك.
402insufficient_balanceرصيدك لا يكفي لتنفيذ هذه المهمة؛ أعد شحن الرصيد ثم أعد المحاولة.
404unknown_typeنوع المهمة المطلوب غير موجود في الكتالوج — راجع الاسم المرسل في الطلب.
429rate_limitedتجاوزت الحد المسموح من الطلبات؛ انتظر قليلًا ثم أعد المحاولة.

يعمل الودجت المجاني في المتصفح بالكامل على جهازكم؛ وتفرض واجهة API المدفوعة مسبقًا $0.002 لكل عنصر ناجح عندما تحتاج الخوادم وSDK إلى خطوة التوسيع الحتمية نفسها على نطاق واسع.

ماذا يعني تحويل التاب إلى مسافات ومتى تستخدمونه

تحويل التاب إلى مسافات يعني إعادة كتابة واحدة قابلة للتنبؤ: يُستبدل كل حرف جدولة في المدخل بـ N مسافة عادية تمامًا، حيث N هو spaces_per_tab ويساوي أربعة عند حذف الحقل. ترفع السلاسل الفارغة والتي لا تحتوي إلا على مسافات بيضاء بعد trim خطأ invalid_input، مما يحمي الوظائف الجماعية من كتابة خلايا فارغة عندما كان حقل مطلوب فارغًا.

عقد المدخل ومعلمة العرض وقراءة الاستجابة

أرسلوا جسم JSON مع حقل السلسلة الإلزامي text مضبوطًا على المحتوى غير الفارغ الذي تريدون توسيعه. تُقبل الأسماء البديلة input وvalue وstring وs وcontent وbody عندما تستخدمها عملاء قديمة أو مولّدات نماذج. يجب أن يكون spaces_per_tab الاختياري عددًا صحيحًا من واحد إلى ستة عشر شاملًا؛ احذفوه لاستخدام أربع مسافات لكل تاب، بما يوافق كثيرًا من أدلة الأسلوب وإعدادات المحرر الافتراضية للـsoft tabs. غياب text أو قيمة غير سلسلة أو سلسلة فارغة أو مسافات بيضاء فقط أو spaces_per_tab خارج النطاق المسموح يرفع invalid_input برسالة تسمّي المشكلة، ولا تُحاسب تلك الإخفاقات على API المدفوعة مسبقًا. عند النجاح تتضمن الاستجابة result وtext بالسلسلة الموسَّعة، وinput الذي يعيد الأصل حرفيًا لواجهة قبل وبعد، وspaces_per_tab كالعرض المطبق، وtabs_replaced كعدد أحرف التاب الموسَّعة، وchars_before وchars_after كالأطوال، وchars_added كنمو صافٍ، وmessage كملخص بشري موجز. استخدموا result وحده عندما تحتاجون السلسلة المنظفة فقط؛ وtabs_replaced عندما تسجّل أنبوبة مدى عدوانية التوسيع؛ وchars_added عند تقدير نمو التخزين بعد الانتقال من التاب إلى المسافات. أبقوا الحمولة عند ملفات مصدر ومقتطفات ومستندات عادية تناسب عزل Worker وليس مكبات متعددة الميغابايتات. عند الدمج من SDK، اربطوا result بحقل الإخراج واعرضوا رسائل invalid_input بجانب عنصر النموذج حتى تفشل الإرسالات الفارغة بوضوح في ودجت المتصفح وعلى API على حد سواء.

استخدام API والتسعير وسير العمل والحدود العملية

استخدموا API المدفوعة مسبقًا لـKIT عندما يحتاج مهمة CI أو CMS أو إضافة محرر أو مكتب دعم أو عميل جوال نفس التحويل تحت الرصيد بسعر $0.002 لكل عنصر ناجح؛ ولا تستهلك إخفاقات التحقق الرصيد أبدًا بعد رفض المحرك. يمكن لمؤلفي SDK توثيق text كإلزامي وspaces_per_tab كاختياري، وإظهار مثال نجاح متعدد التاب ومثال خطأ سلسلة فارغة حتى يرى المدمجون جانبي العقد.

fixtures للتكامل المستمر وتنظيف الأنابيب

طبّعوا ملفات الـfixture والنص المرفوع من المستخدم إلى عرض مسافات معروف حتى تتوقف فحوصات المساواة واختبارات golden عن الفشل بسبب أحرف تاب غير مرئية.

ماذا يحدث إذا كان text فارغًا؟

تفشل السلاسل الفارغة والتي تحتوي على مسافات بيضاء فقط بـinvalid_input ولا تُحاسب.

هل أداة تحويل التاب إلى مسافات مجانية؟

تعمل أداة المتصفح مجانًا على جهازكم. تستدعي استدعاءات API رصيد KIT المدفوع مسبقًا بسعر $0.002 لكل عنصر ناجح؛ ولا تُحاسب إخفاقات التحقق.

ماذا يعني tabs_replaced؟

هو عدد أحرف الجدولة U+0009 التي وُسِّعت. chars_added هو chars_after ناقص chars_before ويعكس مقدار نمو السلسلة.

اطّلع على توثيق KIT الكامل ←