Vibe Index
🎯

learning-multi-script-design

🎯Skill

from pauljbernard/content

learning-multi-script-design skill from pauljbernard/content

learning-multi-script-design

Installation

Install skill:
npx skills add https://github.com/pauljbernard/content --skill learning-multi-script-design
Stars0
AddedJan 25, 2026

Skill Details

SKILL.md

Design learning materials for right-to-left languages, complex scripts, bidirectional text, and multi-script environments. Calculate text expansion factors and specify typography requirements. Use when creating content for Arabic, Hebrew, Asian scripts, or mixed-direction text. Activates on "RTL", "right-to-left", "bidirectional text", or "complex scripts".

Overview

# Learning Multi-Script Design

Design educational materials that properly handle multiple writing systems, right-to-left languages, and complex scripts.

When to Use

  • Creating content for RTL languages (Arabic, Hebrew, Farsi/Persian, Urdu)
  • Supporting complex scripts (Devanagari, Thai, Myanmar, Khmer)
  • Mixed-direction content (English + Arabic)
  • Asian language learning materials
  • Global multilingual platforms

Script Categories

1. Right-to-Left (RTL) Languages

Major RTL Languages:

  • Arabic (and variants)
  • Hebrew
  • Farsi/Persian
  • Urdu
  • Pashto
  • Yiddish

Design Considerations:

  • UI elements flip horizontally
  • Reading direction: right to left
  • Numbers may remain LTR
  • Mixed text creates bidirectional (bidi) challenges

2. Complex Scripts

Characteristics:

  • Devanagari (Hindi, Sanskrit, Marathi): Combining characters, ligatures
  • Thai: No spaces between words, tone marks above/below
  • Myanmar: Circular vowels, stacking
  • Khmer: Multi-level stacking, no word boundaries
  • Tamil, Telugu, Malayalam: Complex conjuncts

Technical Requirements:

  • Unicode support
  • Complex text layout (CTL) engines
  • Proper font rendering
  • Line breaking algorithms

3. East Asian Scripts

CJK (Chinese, Japanese, Korean):

  • Vertical and horizontal text
  • Character spacing
  • Ruby annotation (furigana)
  • Mixed scripts (kanji, hiragana, katakana, romaji)

4. Bidirectional Text

Challenges:

  • Embedding LTR text in RTL (e.g., English words in Arabic)
  • Punctuation placement
  • Number handling
  • URL and code directionality

Text Expansion Factors

Translation Length Changes:

| Source | Target | Expansion Factor |

|--------|--------|------------------|

| English | Arabic | +25% to +30% |

| English | German | +10% to +35% |

| English | Chinese | -20% to -30% |

| English | Spanish | +15% to +30% |

| English | Thai | +15% to +20% |

Design Implications:

  • Button/label sizing
  • Form field lengths
  • Line breaks and pagination
  • UI layout flexibility

Typography Requirements

Font Selection

Requirements by Script:

  • Arabic: Must support contextual forms (initial, medial, final, isolated)
  • Devanagari: Must include conjuncts and ligatures
  • Thai: Requires tone mark positioning
  • CJK: Large character sets (20,000+ glyphs)

Web Safe Options:

  • Arabic: Noto Naskh Arabic, Arial Arabic
  • Hebrew: Noto Sans Hebrew, Arial Hebrew
  • Devanagari: Noto Sans Devanagari
  • CJK: Noto Sans CJK

Line Height and Spacing

Adjustments Needed:

  • Thai/Devanagari: +20-30% line height for marks above/below
  • Arabic: Account for ascenders and descenders
  • CJK: 1.5-2x character height for vertical text

Layout Considerations

RTL Layout Changes

Elements That Flip:

  • ✓ Navigation menus
  • ✓ Breadcrumbs
  • ✓ Progress indicators
  • ✓ Carousels and sliders
  • ✗ Video player controls (stay LTR)
  • ✗ Mathematical formulas (stay LTR)

Form Design

RTL Forms:

  • Labels on right side
  • Input fields align right
  • Validation messages on left
  • Calendar widgets flip

Technical Implementation

HTML/CSS

```html

This is English text: هذا نص عربي

User-generated content

```

```css

/ RTL-specific styles /

[dir="rtl"] .navigation {

text-align: right;

direction: rtl;

}

/ Logical properties (auto-flip) /

.container {

padding-inline-start: 20px; / becomes right in RTL /

margin-inline-end: 10px; / becomes left in RTL /

}

```

CLI Interface

```bash

# RTL language design

/learning.multi-script-design --content "course.html" --target-lang "Arabic" --direction "RTL"

# Calculate expansion

/learning.multi-script-design --source "English course" --target-langs "Arabic,German,Russian" --estimate-expansion

# Complex script requirements

/learning.multi-script-design --content "app-ui/" --scripts "Devanagari,Thai,Myanmar" --output design-spec.md

# Typography recommendations

/learning.multi-script-design --languages "Arabic,Hebrew,Farsi" --recommend-fonts --web-safe

```

Output

  • Layout specifications for target scripts
  • Text expansion estimates
  • Font recommendations
  • CSS/HTML directives
  • Design mockups for RTL
  • Bidirectional text handling guide

Composition

Input from: /learning.translation, /curriculum.package-web, /curriculum.package-pdf

Works with: /learning.localization-engineering, /learning.global-accessibility

Output to: Multi-script ready designs and layouts

Exit Codes

  • 0: Multi-script design complete
  • 1: Unsupported script
  • 2: Insufficient font resources
  • 3: Bidirectional conflicts