← ClaudeAtlas

tab-formattinglisted

Format a guitar tab or chord sheet into a clean, readable layout, or render a monospace PDF songbook. Use when the user pastes or links chords/tab (chords over lyrics, ASCII tablature, a Capo/Key/Tuning header) and asks to clean it up, align the chords, "make this readable," or print/PDF a songbook.
cportka/claude-plugins · ★ 0 · AI & Automation · score 70
Install: claude install-skill cportka/claude-plugins
# Tab / Chord Formatter Turn a messy tab or chord sheet into a **clean, standard, readable** one and output it as plain text. The input is usually copied from somewhere — a web page, a forum, an email — so it arrives with broken alignment, HTML entities, stray tags, inconsistent section labels, and random blank lines. Your job is to produce the canonical layout described in **`reference.md`**. There are two halves to this, and keeping them separate is the whole method: 1. **Mechanical cleanup is deterministic — run the script.** It never guesses. 2. **Alignment and structure need judgment — that is you.** A monospace chord line only means anything if each chord sits above the right syllable, and a paste often destroys that spacing. Restoring it, inferring sections, and standardizing chord names is the model's job. ## 1. Run the normalizer first ``` ${CLAUDE_PLUGIN_ROOT}/skills/tab-formatting/scripts/format-tab.py < input.txt # or pass a path: ${CLAUDE_PLUGIN_ROOT}/skills/tab-formatting/scripts/format-tab.py input.txt ``` It does only the safe, reversible things (strip tags/entities, normalize endings, standardize `[Section]` labels, collapse blank runs — full list in `--help`), never a line's **internal** spacing (that spacing IS the chord/lyric alignment), and is idempotent. It deliberately does **not** touch alignment — pass its output to step 2. If the user pasted the tab inline rather than as a file, you can still reason over it directly; the script is most u