Files
ncmr-songs/wip/274
mikkeli e271da634e 274: lyric index for the visualiser
Adds 274-lyrics-index.py and its output 274-lyrics-index.csv: every sung
line resolved to its roster entry, with coordinates and timing.

98 lyric lines -> 99 rows. Columns are start/stop as mm:ss.xx and as
seconds, the line as sung, the roster's full name for it, kind, km,
lat/lon, and km_from/km_to for district headers. stop is the next
timestamp in the file, spacer lines included, so every line has one.

Four aliases cover the gap between sung and registered names: the three
power stations are sung without their operator prefix, and
モトツ橋にモトツシェルター names two facilities, so it emits two rows sharing
one timing and one coordinate. 東に続く is typed as closing, no object.

District headers resolve from the run of objects they introduce, not from
274-districts.json. Those bands are sampled along the road and so cannot
describe a district the road does not enter: 宮下町 has no band at all,
本町東 exists only as 本町東一丁目, and 千栄's band sits at 107.25-107.75
while the station it introduces is at km 104.52, 666 m off the
carriageway inside 千栄.

Object names in the roster are unique, so no other disambiguation is
needed. The script exits non-zero and names any line it cannot resolve.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-16 18:28:37 +09:00
..
2026-09-16 18:28:37 +09:00