Files
calctext/_bmad-output/implementation-artifacts/14-4-rtl-language-support.md
2026-03-16 19:54:53 -04:00

37 lines
1.5 KiB
Markdown

---
epic: 14
story: 14.4
title: "RTL Language Support"
status: draft
---
## Epic 14 — Accessibility & Internationalization
**Goal:** Make CalcPad usable by everyone regardless of ability, language, or locale.
### Story 14.4: RTL Language Support
As a user who writes in Arabic or Hebrew,
I want the CalcPad interface to mirror for right-to-left languages,
So that the layout feels natural and text flows in the correct direction.
**Acceptance Criteria:**
**Given** the user's system locale or CalcPad language preference is set to an RTL language (Arabic or Hebrew)
**When** the application renders
**Then** the overall layout is mirrored: sidebar appears on the right, toolbar items are right-aligned, text input is right-aligned
**And** the result column position mirrors accordingly
**Given** an RTL layout is active
**When** the user types numeric expressions (e.g., `150 * 3`)
**Then** numbers and mathematical operators remain in left-to-right order
**And** variable names containing Latin characters remain LTR within the RTL context (bidirectional text handling)
**Given** an RTL layout is active
**When** mixed content appears (Arabic label text with numeric expressions)
**Then** the Unicode Bidirectional Algorithm is applied correctly
**And** the visual order of the expression is mathematically readable
**Given** the user switches between an RTL and LTR language in settings
**When** the language change is applied
**Then** the layout mirrors or un-mirrors immediately without requiring an application restart