Mixing full-width and half-width punctuation breaks reading rhythm
Aliases: mixed-script punctuation · CJK punctuation · full-width half-width · punctuation spacing
What it is
Context-aware mixed-script punctuation distinguishes accidental mixing of Chinese and English punctuation conventions in one discourse layer from legitimate embedded quotations, code, brands, URLs, and structured data. A Chinese matrix clause commonly uses punctuation suited to Chinese composition, while a complete English span follows English practice. Yet “the matrix language owns every symbol” is too coarse: span boundaries, ownership of the mark, locale style, and machine semantics also matter.
Why it happens
Full-width and half-width forms are only visible clues. Glyph placement, surrounding space, line-start and line-end prohibitions, wrapping, fonts, and nested quotation rules also differ. Uncontrolled mixing changes pause width, baseline, and breaks, and interpolation can create duplicate spaces, stranded marks, or bad wrapping. Blind normalization causes the opposite damage by corrupting code, email, versions, brand spelling, or a complete English quotation. A reliable template knows the outer language, embedded-span type, and which span owns punctuation, then applies target-locale composition rules.
Studying it
Cross outer Chinese/English language, embedded type, punctuation position, and wrap condition. Include ordinary terms, full quotations, parentheses, numbers, code, URLs, brands, variables, and RTL spans. Native reviewers classify faults and legitimate embedding; tests measure segmentation, misreading, search time, and layout defects under real fonts, platforms, widths, and zoom. For lint and auto-fix tools, report precision, damaging conversions, and missed spacing or line-break faults rather than treating every half-width mark as a defect.
Where it stops holding
Mixed script is not itself wrong. “使用 Apple ID 登录,” an English title, user-authored text, and approved brand spelling can remain. Code, commands, paths, email, URLs, versions, and machine-readable identifiers require literal symbols; mathematics and domain formats may have separate standards. Japanese, Korean, and regional Chinese practices do not collapse into one “CJK rule.” A font or line-breaking defect may originate in fallback and layout engines rather than copy characters.
Applying it
- Document punctuation, spacing, quotation, list, numeric, and line-breaking rules for each target locale. Mark language and type on embedded spans instead of storing only an unstructured string.
- Lint resources and rendered output for suspicious width mixing, duplicate spacing, prohibited line positions, and marks around placeholders. Exclude code, URLs, brands, user content, and structured fields as typed nodes, not fragile text allowlists.
- Prohibit context-free global replacement. Auto-fix only deterministic cases and route the rest to native editing; a full quotation and a borrowed short term need separate treatment.
- Test production fonts, narrow screens, zoom, copy/paste, and screen readers for spacing, wrapping, fallback, and pauses. Store locale, font, template, and variable values with regressions.
Related
- Same group: T1.06.1 Heading capitalization rules must be consistent · T1.06.2 End punctuation is usually omitted in short labels · T1.06.4 Exclamation marks need a budget
- Adjacent: S1.03.1 Missing glyphs trigger fallback and change layout · S1.06.3 Use complete sentence templates with placeholders
- Search terms:
mixed-script punctuation·CJK punctuation·full-width half-width