متوفر أيضًا بلغات أخرى: English · Español · Português · Français
المحارف الممنوعة في أسماء الملفات
الصق اسمًا واختر النظام الذي يعنيك لتحصل على اسم يُحفَظ فعلًا، مع بيان كل تغيير بدل تطبيقه في صمت.
ما الذي يجعل اسم الملف ممنوعًا؟
أقلّ مما تتوقّع في أنظمة، وأكثر بكثير مما تتوقّع في أخرى، وهنا تكمن المشكلة كلها. فلينكس يمنع شيئين اثنين داخل الاسم لا غير: البايت الصفري والشرطة المائلة. وما عداهما مباح: النقطتان وعلامات الاستفهام والنقاط في الآخر وملف اسمه NUL. ويزيد ماك واحدًا هو النقطتان، وقد ورثهما عن HFS حيث كانتا فاصل المسارات، ولهذا يبدّل الـFinder بين النقطتين والشرطة المائلة حين يعرض عليك اسمًا.
أما ويندوز فهو المتشدّد. يمنع تسعة محارف مطبوعة: أصغر من، وأكبر من، والنقطتين، وعلامة الاقتباس المزدوجة، والشرطة المائلة، والمائلة العكسية، والشرطة العمودية، وعلامة الاستفهام، والنجمة، ومعها البايت الصفري وكل محارف التحكّم من 1 إلى 31. ويرفض الأسماء المنتهية بنقطة أو مسافة. ويحجز طائفة من أسماء الأجهزة لا تصلح اسمًا لملف في أي مجلد.
فالاسم الذي يعمل على جهازك قد يفشل على جهاز زميلك، أو داخل ملف مضغوط يفتحه هو في ويندوز. وهذه الأداة تطبّق ما تطلبه من القواعد، وتطبّقها كلها معًا افتراضًا.
طريقة الاستخدام
- اكتب الاسم أو الصقه. الاسم وحده لا المسار كله، فالقواعد المهمة هنا تنطبق على جزء واحد في كل مرة.
- اختر القواعد التي تُطبَّق. «آمن في كل مكان» هو الافتراضي وهو أشدّها على الإطلاق، وأما الأنظمة منفردةً فلحين تعرف تمامًا أين سينتهي الملف.
- اقرأ ما الذي تغيّر لا النتيجة وحدها. يظهر كل تغيير مع سببه، وتخبرك لوحة أيُّ الأنظمة الثلاثة كان ليرفض الاسم الذي كتبته أنت.
الأسماء المحجوزة ثمانية وعشرون لا اثنان وعشرون
تكاد كل قائمة لأسماء ويندوز المحجوزة تعطي الاثنين والعشرين نفسها: CON وPRN وAUX وNUL، ومن COM1 إلى COM9، ومن LPT1 إلى LPT9. وتضمّ وثائق مايكروسوفت ستة أخرى، وهي التي يستحق الأمر معرفتها لأنه لا سبيل إلى تخمينها.
وتلك الستة هي COM وLPT مكتوبتين بأرقام علوية، أي المحارف ¹ و² و³ من ISO/IEC 8859-1. وتشرح مايكروسوفت السبب في حاشية على الصفحة ذاتها: ويندوز يعرف تلك المحارف أرقامًا ويعدّها جزءًا صحيحًا من اسم جهاز COM أو LPT، فتغدو محجوزة في كل المجلدات. بل تعطي الوثائق الاختبار نفسه، فتذكر أن الكتابة إلى COM متبوعة بواحد علوي لا تُنشئ ملفًّا.
والحجز يبقى مع الامتداد أيضًا، وهذا ما يوقع أكثر الناس. فـNUL.txt وNUL.tar.gz كلاهما يساوي NUL، لأن القاعدة تنطبق على كل ما قبل النقطة الأولى لا على ما قبل الأخيرة. والأداة التي تقطع عند النقطة الأخيرة تفوتها الحالة الثانية، وهذه تقطع عند الأولى.
ما لا تفعله هذه الأداة
هي تنظّف اسمًا لا مسارًا. فحدّ الـ260 محرفًا في ويندوز حدٌّ على المسار كاملًا، ولا تستطيع أداة تنظر إلى اسم واحد أن تعرف كم سيعمق موضعه؛ أما الـ255 محرفًا التي تفرضها هذه الصفحة فهي الحدّ لكل اسم على حدة في أكثر أنظمة الملفات. وكثيرًا ما يُخلط بين الرقمين وهما لا يقيسان الشيء نفسه.
ولا تستطيع أن تخبرك بما سيقبله نظام ملفاتك أنت بعينه. فالقواعد هنا هي الموثّقة لويندوز ولـPOSIX ولماك، غير أن مشاركة شبكية أو ذاكرة USB بنظام FAT أو عميل مزامنة سحابية قد يكون كل منها أشدّ، وأحيانًا بطرق غير موثّقة. والاسم الذي تسمّيه هذه الصفحة آمنًا في كل مكان آمنٌ إزاء القواعد المنشورة، وهذا أقصى ما تعد به أداة ساكنة.
وهي تُبقي النقطة الأولى عن قصد. فوثائق مايكروسوفت تقول صراحةً إن النقطة مقبولة أول الاسم، فـ.gitignore و.env مباحان في ويندوز، وإنما المشكلة في النقطة الأخيرة وحدها. وحذفها كما تفعل بعض الأدوات يكسر الملفات المخفية بلا سبب.
لماذا هي مجانية؟
القواعد بضع مئات من البايتات في جداول، وإعادة التسمية تجري في متصفحك أنت. فلا يُرفع شيء مما تكتبه، ولا يُسجَّل شيء، ولا حساب عليك إنشاؤه.
بلا تسجيل، وبلا حدود، وبلا علامة مائية على أي شيء تنسخه.