Commit Graph

15 Commits

Author SHA1 Message Date
shahondin1624
0e8660cd41 Extract and insert 97 images from reference PDF into songs
Extract images from the CL6 PDF using pdfimages, map them to songs
via page-to-CL number matching, and insert \songimage commands.
Add insert-images.py script for repeatable extraction.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 19:03:07 +02:00
shahondin1624
c202f1a792 Convert 47 song anecdotes from comments to note properties
The import script stored anecdotes/historical context as LaTeX
comments. Convert them to the note song property so they render
at the bottom of each song page (matching the reference style).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 18:17:28 +02:00
shahondin1624
e771264244 Add song aliases to TOC and fix page numbering
- 82 songs get alias entries (alternate titles/opening lines) shown
  in italic in the TOC, pointing to the same page as the main title
- Front matter (title, foreword, TOC) has no page numbers
- Song pages start at page 1
- Aliases extracted from reference PDF (CL6) TOC by title matching

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 18:08:20 +02:00
shahondin1624
44ea072716 Remove paragraph indentation and Carmina Leonis from song footer
- Set \parindent to 0pt for clean left-aligned text
- Remove current book column from song page footer (keep only
  reference books: BuLiBu, CL gr., SwA, Barde, LiBock)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 17:23:22 +02:00
shahondin1624
21c369da36 Fix Makefile to auto-stabilize TOC with up to 5 passes
The .songtoc file needs multiple passes to stabilize: pass 1
writes song data, pass 2 reads it into the TOC (changing page
count), pass 3+ stabilizes page references. The Makefile now
loops until the log shows no more "Rerun" warnings or max 5
passes.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 17:11:30 +02:00
shahondin1624
7b99778f67 Fix chord alignment: snap to word boundaries
Improve merge_chord_lyric() to snap chord positions to the start
of the word they fall within, instead of splitting words mid-way.
Fixes artifacts like "Liebespaar \chord{C}e" → "\chord{C}Liebespaare".

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 16:36:06 +02:00
shahondin1624
d875fd225b Rename to Carmina Leonis and add original foreword text
- Rename "Liederbuch" to "Carmina Leonis" in TOC header, song
  footer, and title page
- Replace placeholder foreword with original CL6 introductory text
- Update title page to "Carmina Leonis, 7. Auflage, 2026"

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 16:10:02 +02:00
shahondin1624
44d2fb9b5e Update TOC and footer to use imported reference books
Replace MO/PfLB columns with the actual reference books from the
Carmina Leonis import: BuLiBu, CL (gr.), SwA, Barde, LiBock.
Add third LaTeX pass to Makefile for TOC stabilization.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 15:55:55 +02:00
shahondin1624
93f451eef9 Import 294 songs from Carmina Leonis PDF
Add import-songs.py script that extracts songs from the PDF text
and generates .tex files with leadsheets format. Adds song
properties for all reference books (BuLiBu, BuLiBuII, CL, SwA,
Barde, LiBock). Generates all-songs.tex with alphabetical inputs.

Note: Chord alignment is approximate from PDF extraction and
may need manual review for some songs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
v0.3.0-latex
2026-04-02 15:40:59 +02:00
shahondin1624
ab00b710b1 Fix rowcolors bleeding into chord tabulars
Reset \rowcolors after the TOC longtable to prevent alternating
gray backgrounds from affecting leadsheets' chord placement
tabulars, which was clipping/overlaying song lyrics.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 12:03:27 +02:00
shahondin1624
5a63067b93 Add foreword page and image placement commands
- Introductory page with quote, horizontal rule, and foreword text
- \fillerpage{path} for full-page centered filler images
- \songimage{path} for inline images within song pages
- \fullpageimage{path} for borderless full-page images
- Added graphicx and csquotes packages

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
v0.2.0-latex
2026-04-02 10:54:21 +02:00
shahondin1624
cae0c52b67 Fix TOC page references and song page footer
- Move \label outside dedup guard so it survives the real pass
  (measurement pass labels are discarded inside vbox)
- Song page footer now shows MO/PfLB/Liederbuch table matching TOC
- Fix TEXINPUTS to include output/ for .songtoc file access

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 10:23:04 +02:00
shahondin1624
692be693e9 Add matrix TOC with cross-reference columns
Replace the default LaTeX TOC with a table matching the Carmina
Leonis style: song titles with columns for reference books (MO,
PfLB) and the current songbook page number. Uses expl3 iow to
write song data to a .songtoc file during compilation and reads
it back on the second pass. Alternating row colors via rowcolors.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-02 10:06:05 +02:00
shahondin1624
4024d0e421 Rewrite songbook as pure LaTeX project (Carmina Leonis style)
Replace the Kotlin/Gradle multi-module pipeline with a pure LaTeX
songbook using the leadsheets package and LuaLaTeX. Style matches
the Carmina Leonis (CL6) scout songbook: Fraktur titles, chords
above lyrics, metadata at page bottom, reference book footer.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
v0.1.0-latex
2026-04-01 08:23:57 +02:00
shahondin1624
e386501b57 Initial implementation of songbook toolset
Kotlin/JVM multi-module project for generating a scout songbook PDF
from ChordPro-format text files. Includes ChordPro parser, layout engine
with greedy spread packing for double-page songs, OpenPDF renderer,
CLI (Clikt), Compose Desktop GUI, and 5 sample songs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-17 08:35:42 +01:00