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>
85 lines
2.6 KiB
Markdown
85 lines
2.6 KiB
Markdown
# CLAUDE.md
|
|
|
|
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
|
|
|
|
## Build Commands
|
|
|
|
```bash
|
|
# Build the songbook PDF (two-pass for TOC)
|
|
make
|
|
|
|
# Remove auxiliary files
|
|
make clean
|
|
|
|
# Remove everything including PDF
|
|
make distclean
|
|
```
|
|
|
|
Requires LuaLaTeX (TeX Live) and the `leadsheets` package.
|
|
|
|
## Project Structure
|
|
|
|
```
|
|
songbook.tex # Main document (title page, TOC, song inputs)
|
|
songbook-style.sty # Style package (geometry, fonts, leadsheets config)
|
|
songs/ # One .tex file per song
|
|
fonts/ # Font files (UnifrakturMaguntia for titles)
|
|
images/ # Filler images (empty for now)
|
|
Makefile # Build rules (lualatex, two passes)
|
|
output/ # Generated PDF (gitignored)
|
|
```
|
|
|
|
## How It Works
|
|
|
|
Pure LaTeX songbook using the `leadsheets` package with LuaLaTeX. The style matches the Carmina Leonis songbook format:
|
|
- Song titles in Fraktur/blackletter font (UnifrakturMaguntia)
|
|
- Chords above lyrics in regular weight, black
|
|
- No verse labels (verses separated by blank lines)
|
|
- Metadata (Worte/Weise) at bottom of each song page
|
|
- Reference book cross-references (MO, PfLB) in footer
|
|
- Each song starts on a new page
|
|
- A5 twoside format with page numbers at bottom-outer
|
|
|
|
## Song Format
|
|
|
|
Each song uses the `leadsheets` `song` environment:
|
|
|
|
```latex
|
|
\begin{song}{
|
|
title = Song Title,
|
|
lyrics = Lyricist,
|
|
composer = Composer,
|
|
key = G,
|
|
mundorgel = 42,
|
|
pfadfinderliederbuch = 118,
|
|
note = {Optional note text.},
|
|
}
|
|
|
|
\begin{verse}
|
|
\chord{G}Lyrics with \chord{D}chords above. \\
|
|
Next \chord{C}line here.
|
|
\end{verse}
|
|
|
|
\begin{verse}
|
|
Second verse without chords (or with).
|
|
\end{verse}
|
|
|
|
\end{song}
|
|
```
|
|
|
|
**Important constraints:**
|
|
- Use `\\` for line breaks within verses (not blank lines)
|
|
- Never place two `\chord{}` commands without a space between them — split compound words with a hyphen: `\chord{D}Abend- \chord{A}zeit.`
|
|
- Custom properties: `alias`, `note`, `mundorgel`, `pfadfinderliederbuch`
|
|
- Verse types: `verse` (no label), `verse*` (for custom-labeled sections like Kanon, Ref.)
|
|
- `musicsymbols` library skipped (requires `musix11` font not installed)
|
|
|
|
## Style Details (songbook-style.sty)
|
|
|
|
- Page geometry: A5, margins (top 15mm, bottom 20mm, inner 20mm, outer 12mm)
|
|
- Body font: TeX Gyre Heros (Helvetica clone)
|
|
- Title font: UnifrakturMaguntia (Fraktur/blackletter, from `fonts/` directory)
|
|
- Chord format: small, regular weight, black
|
|
- Song title template: Fraktur title only (metadata rendered at bottom via `after-song` hook)
|
|
- Reference style based on Carmina Leonis (Pfadfinder scout songbook)
|