انتقل إلى المحتوى الرئيسي

Variable: FRAMEWORK_TEXT_PATTERN

const FRAMEWORK_TEXT_PATTERN: string

Defined in: packages/contracts/src/primitives.ts:183

The rules on the characters of a framework's published text: DISPLAY_NAME_PATTERN and, in addition, no Default_Ignorable_Code_Point anywhere. That property covers the soft hyphen (U+00AD), the Arabic letter mark (U+061C), the zero-width characters (U+200B to U+200F, the joiner and non-joiner among them), U+2060 to U+206F, the variation selectors and U+FEFF.

Why stricter than a display name: a framework is a document people quote, compare and sign under, and an invisible character is how two sentences that read the same differ (a requirement keyword split by a joiner reads as MUST and is not one). A display name keeps the joiner and non-joiner because Persian names need the non-joiner and emoji need the joiner; framework prose needs neither: Arabic joins its letters without them, and placing a Latin term in Arabic text is the renderer's work (an isolate in the page), not a mark stored in the sentence. The residual is a framework written in a language whose orthography needs the non-joiner (Persian, Urdu): it would be refused, and widening this for it is a decision to make when one is authored.