هل من الممكن السماح بمسافة غير قابلة للكسر (NBSP، U+00A0) وحتى المسافة الضيقة غير القابلة للكسر (NNBSP، U+202F) في المنشورات؟
حاليًا، يتم استبدالها بمسافة عادية (SP، U+0020) بواسطة Discourse (حتى في القطع البرمجية)، مما يؤدي إلى كسر عرض الأرقام في اللغة الفرنسية عند التفاف النص.
في اللغة الفرنسية، يجب أن تكون هناك مسافة ضيقة غير قابلة للكسر على الأقل قبل علامات الترقيم مثل !?;:»، وبعد علامات الترقيم مثل «–—، وبين مجموعات من ثلاثة أرقام في الأرقام الكبيرة.
إليك مثال على عرض غير متوافق مع المعايير الفرنسية:
ثم تعمل بالفعل!
عدلت مشاركتي في المنتدى الآخر والآن تُعرض الأرقام بشكل جيد.
لا يوجد كيان HTML باسم محدد، لكن يمكنني استخدام رمز يونيكود بهذه الطريقة.
شكرًا على حل البديل، @codinghorror.
+1 على هذا، في الفرنسية نستخدم مسافة غير قابلة للفصل قبل : و ! و ? لأنها تُفصل عن الكلمة السابقة ولا نريد أن تنتقل إلى السطر التالي.
السلوك الحالي لاستبدال المسافات غير القابلة للفصل بمسافات عادية:
بإبقاء المسافة غير القابلة للفصل، لم يعد هناك “فاصلة منقوطة منفردة”:
لا أعتقد أن هناك حاجة إلى تسلسل هروب HTML لهذه الأحرف، تمامًا كما لا توجد حاجة لتسلسل هروب HTML لأي أحرف غير ASCII أخرى: تُقدَّم الصفحات للمتصفح مشفّرة بترميز UTF-8، والمسافة غير القابلة للفصل، مثل جميع الأحرف الأخرى، لها تمثيل في UTF-8، على سبيل المثال:
→، √، ½، ñ، Ł، …
(وبعبارة أخرى، لماذا يسمح Discourse بمعظم تسلسلات Unicode لكنه لا يسمح بالمسافات غير القابلة للفصل؟)
أعتقد أن هذا تم لتجنب شكل من أشكال المضايقات التافهة حيث يقوم الأشخاص بإجراء تعديلات على المشاركات ولا يغيرون شيئًا ويقول الناس وهم يحكّون رؤوسهم… ماذا تغير؟
نعم، هذا ما أتذكره أيضًا. سأكون على ما يرام في إزالة هذه الطريقة mornalize_whitespaces شريطة أن يكون لدينا طريقة أفضل للقيام/عرض الاختلافات عندما يتم استخدام “أحرف” كهذه للتخريب.
هل يمكن تحقيق mornalize_whitespaces عند طلب إعداد جديد (قيد التشغيل افتراضيًا)؟ عندها يمكن لمسؤول محلي إلغاء الاشتراك في هذه الميزة عندما، بالنسبة لاستخدامه، يكون الضرر أقل مشكلة من الطباعة؟
في « Lexique des règles typographiques en usage à l’Imprimerie nationale » (مسرد قواعد الطباعة المستخدمة في المطبعة الوطنية)، صفحة 149 نرى: « espace fine insécable ؟ espace juistifiante » لذا فهم لا يطلبون استخدام U+00A0 (مسافة غير قابلة للكسر) ولكن U+202F (مسافة ضيقة غير قابلة للكسر) (والتي لا أعرف كيف أكتبها على لوحة المفاتيح الخاصة بي، ولكنها لا تزال ليست U+0020 (مسافة). (للأسف الكتاب ليس مجانيًا لذلك ليس لدي رابط تشعبي له).
ويكيبيديا الفرنسية تقول: « En France, il est d’usage de placer une espace fine insécable avant le point d’interrogation, ou une espace insécable si la fine n’est pas disponible. » (في فرنسا، من المعتاد وضع مسافة رفيعة غير قابلة للكسر قبل علامة الاستفهام، أو مسافة غير قابلة للكسر إذا لم تكن المسافة الرفيعة متاحة.)
دراسة/كتيب واحد للمبتدئين الذين يعتقدون أنهم يستطيعون تعلم اللغة الفرنسية يجب أن أعود…، لا أعرف ما هو باللغة الإنجليزية ولكنه شيء مثل مدرسة مجتمعية مسائية للكبار - طريقة لقضاء وقت الفراغ وتعلم شيء جديد - وأخذ صورة لهذا النص.
لكنني أصحح. أنت تعرف بالتأكيد هذا أفضل مني على الإطلاق،