From 07853890e8f2c0ad83127a806c62201c4c042360 Mon Sep 17 00:00:00 2001 From: nmemmert <67961292+nmemmert@users.noreply.github.com> Date: Mon, 3 Aug 2026 11:20:06 -0400 Subject: [PATCH] Upgrade spelling worksheet to a proper print sheet MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Name/Date header line on every print - Numbered words (1. after, 2. again…) - Ruled write slots: solid baseline + faint midline guide instead of bare underline - Mode picker (screen-only): toggle between Practice (word shown, write twice) and Dictation/Test (numbered blank lines only) before hitting Print Co-Authored-By: Claude Sonnet 4.6 --- public/app.js | 99 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 75 insertions(+), 24 deletions(-) diff --git a/public/app.js b/public/app.js index 4915749..c07fdf6 100644 --- a/public/app.js +++ b/public/app.js @@ -512,32 +512,83 @@ $('#btn-print-list').addEventListener('click', async () => { }); function printSpellingWorksheet(name, words) { - const rows = words - .map((w) => { - const sentence = w.sentence ? `
${esc(w.sentence)}
` : ''; - return ` - ${esc(w.word)}${sentence} - - - `; - }) - .join(''); + const practiceRows = words.map((w, i) => { + const sentence = w.sentence + ? `
${esc(w.sentence)}
` + : ''; + return ` + ${i + 1}. ${esc(w.word)}${sentence} +
+
+ `; + }).join(''); + + const dictRows = words.map((w, i) => + `
${i + 1}.
` + ).join(''); + const win = window.open('', '_blank'); win.document.write(`Spelling: ${esc(name)} - -

✏️ Spelling: ${esc(name)}

-

Write each word twice — once to practice, once from memory.

- - - ${rows} -
WordPracticeFrom memory
-