مُعدّل ملف Make
مرشد
مُعدّل ملف Make
أدخل ملف Make وستُوحّد المُدخلات وفقًا لقواعد التسجيل المُصرّفة من GNU make. ستُصلح تلقائيًا أسطر الوصف التي تستخدم مسافات بدلًا من أعمدة (السبب الأكثر شيوعًا لحدوث أخطاء "مفقود الربط" ومشكلة شائعة في ملفات Make مُولدة من الذكاء الاصطناعي). كما تُنظّف المسافات الخلفية، الأسطر الفارغة المفرطة، ومسافات التعيين غير المتسقة في نفس العملية، مع عرض كل تغيير لكي تُراجعه قبل النسخ.
كيفية استخدام
- أدخل ملف Make الخاص بك إلى شريط الإدخال — أو انقر اختر مثالًا لتحميل نموذج يحتوي على مشاكل مقصودة.
- اختر عرض الأعمدة (يُستخدم للكشف عن الأسطر المُIndented التي يجب أن تُحوَّل إلى أعمدة).
- إيقاف تشغيل خيارات التنظيف: تحويل المسافات إلى أعمدة على أسطر الوصف، إزالة المسافات الخلفية، توحيد سلسلة الأسطر الفارغة، توحيد مسافات التعيين، وتحديث تعيينات المتغيرات المتتالية بشكل اختياري.
- راجع ملخص المشكلات وقائمة التصحيحات على كل سطر، ثم قم بنسخ أو تنزيل الملف المُعدّ.
خصائص
- إصلاح أعمدة الوصف – يحوّل أسطر الوصف المُسَمّاة بالمسافات إلى أسطر مُسَمّاة بأعمدة (الذي يُقبله GNU make فقط).
- تصنيف السطر الذكي – يُميّز الأهداف، تعيينات المتغيرات، الشروط (
ifeq,else,endif)، الأوامر (include,vpath,export)، وأسطر الوصف. - مسافات التعيين – يُوحّد المسافات حول
=,:=,::=,?=,+=و، و!=. - المحاكاة المُستقلة للعمود – يُوحّد تعيينات المتغيرات المتتالية إلى نفس عمود المُؤشر لتحسين القابلية للقراءة.
- مُلخص المشكلات – يُعرض كل تغيير مع رقم السطر الأصلي لكي تُراجع التغييرات.
- السلامة في مساحات الحدود – يُحتفظ بالمحتوى بين
defineوendefبشكل مُباشر. - بالكامل من جانب العميل – لا يُخرج ملف Make الخاص بك من المتصفح.
التعليمات
-
لماذا يتطلب GNU make أعمدة لأسطر الوصف؟
يستخدم مُحلّل Make مُحرفًا واحدًا من الأعمدة كمُحدد واضح يُشير إلى أن السطر جزء من وصف القاعدة. تم اعتماد هذا الاختيار قبل أول إصدار علني لـ Make في عام 1977، وتم تثبيته لأن الأعمدة كانت موثوقة كمُحدد مُسبق للسطر، وستُستبعد من المسافات داخل تعيينات المتغيرات أو تعريف الأهداف. حتى وإن أثارت هذا التغيير سوء فهم على مدى عقود، فإن تغيير هذه القاعدة سيُسبب توقفًا سلبيًا لعشرات الملايين من الملفات القائمة، لذا يحتفظ GNU make بأعمدة كقيمة الافتراضية RECIPEPREFIX.
-
ما الفرق بين =، :=، ::=، ?=، += و != في ملفات Make؟
التعيين المتكرر (=) يؤجل التوسع حتى استخدام المتغير، لذا يتم البحث عن المتغيرات عند استخدامها. التعيين البسيط (:=) والتعيين البسيط وفقًا لـ POSIX (::=) يتوسع من الطرف الأيمن فورًا، لذا يتم تثبيت القيمة عند التعرّف. التعيين الشرطي (?=) يُحدد المتغير فقط إذا لم يكن موجودًا حاليًا، وهو مفيد لقيم الافتراض التي يمكن تغييرها من بيئة التشغيل. التعيين المُضاف (+=) يُضيف إلى القيمة الحالية، ويُحتفظ بذوق التعيين المتكرر أو البسيط الأصلي. التعيين بالشيل (!=) يُنفذ الطرف الأيمن كأوامر شيل ويُخزن الناتج، وهو مماثل للعلامات المُستخدمة في الشيل.
-
ما الفرق بين سطر الوصف وسطر التمديد؟
السطر المُستخدم كمُعامل هو السطر المُIndented الذي يُنفذ كجزء من إجراءات القاعدة؛ في Make القياسي يجب أن يبدأ بحرف الأعمدة. السطر المُتمدد هو أي سطر ينتهي بـ \ في السطر السابق، مما يربط السطرين منطقيًا. يُورث السطر المُتمدد سياق السطر السابق، لذا فإن السطر المُتمدد كمُعامل لا يزال مُعاملًا، وسطر التعيين المُتمدد لا يزال تعيينًا. لا يُغيّر التمديد على السطر المُتمدد كيفية تحليل make.
-
لماذا يُحتاج إلى أهداف .PHONY وتأثيرها على التحليل؟
يُخبر Make أن الأسماء المذكورة ليست ملفات حقيقية بل هي علامات للإجراءات، لذا يجب أن يُنفذ إجراءاتها بغض النظر عن أي ملف يحمل نفس الاسم في المجلد. بدون ذلك، سيُعطّل Make الهدف "تنظيف" لأن Make سيُعتبر الهدف محدثًا. لا يُغيّر .PHONY قواعد تحليل السطر أو تسلسل التسجيلات — يجب أن يبدأ السطر المُستخدم كمُعامل بحرف الأعمدة — لكنه يُغيّر منطق مقارنة الأوقات بحيث يُعتبر السطر مُحدثًا في كل مرة يتم فيها التسجيل.
تثبيت ملحقاتنا
أضف أدوات IO إلى متصفحك المفضل للوصول الفوري والبحث بشكل أسرع
恵 وصلت لوحة النتائج!
لوحة النتائج هي طريقة ممتعة لتتبع ألعابك، يتم تخزين جميع البيانات في متصفحك. المزيد من الميزات قريبا!
