38 lines
1.5 KiB
Markdown
38 lines
1.5 KiB
Markdown
---
|
|
epic: 10
|
|
story: 10.1
|
|
title: "Headers, Comments & Labels"
|
|
status: draft
|
|
---
|
|
|
|
## Epic 10 — Notepad UX (Cross-Platform Spec)
|
|
**Goal:** Consistent editor behavior specified once, implemented per platform.
|
|
|
|
### Story 10.1: Headers, Comments & Labels
|
|
|
|
As a user,
|
|
I want to organize my sheets with headers, comments, and labels,
|
|
So that my calculations are readable, structured, and self-documenting.
|
|
|
|
**Acceptance Criteria:**
|
|
|
|
**Given** a user types a line beginning with `#`
|
|
**When** the line is parsed by the engine
|
|
**Then** it is treated as a section heading and is not evaluated
|
|
**And** it is rendered visually as a heading (larger/bold text) on all platforms
|
|
|
|
**Given** a user types a line beginning with `//`
|
|
**When** the line is parsed by the engine
|
|
**Then** it is treated as a comment, is not evaluated, and produces no answer
|
|
**And** it is rendered in a dimmed/muted style on all platforms
|
|
|
|
**Given** a user types a line with a prefix ending in `:` before an expression (e.g., `Rent: 1500`)
|
|
**When** the line is parsed by the engine
|
|
**Then** the label portion (before and including `:`) is not evaluated
|
|
**And** only the expression after the label is evaluated and its result displayed in the answer column
|
|
|
|
**Given** headers, comments, and labels are used in a sheet
|
|
**When** the sheet is opened on any supported platform (macOS, web, CLI)
|
|
**Then** each element type is parsed identically by the shared engine
|
|
**And** visual rendering is appropriate to each platform's conventions
|