tvl-depot/users/Profpatsch/lyric/build.ninja
Profpatsch 9bec21ea1c feat(users/Profpatsch/lyric): add vscode extension & helpers
* tap-bpm: simple CLI program that accepts key inputs and averages a
BPM value

* lyric-timing-mpv-script: If you press Ctrl+l, mpv attaches the
  current timestamp to a .lrc file named after the song.
  This is for manually timing missing songs for uploading them to
  https://lrclib.net/

* extension: vscode extension for `.lrc` files, currently with the
  following features:

    1. A “jump to LRC position” command which reads an .lrc timestamp
    from the current line and expects mpv to listen on
    `~/tmp/mpv-socket` (via `--input-ipc-server`), and will seek to
    the exact timestamp (down to the ms) in the currently playing
    song.

    2. Some initial linting warnings

      - A lint that warns if the difference to the next timestamp is
      more than 10s (which usually means there’s an instrumental and
      the previous line is stuck)

      - A lint that checks that timestamps are monotonically
      increasing

Change-Id: I32a4ac0e2c5bbe3d94e45ffcf647f81bc7c08aa0
Reviewed-on: https://cl.tvl.fyi/c/depot/+/12537
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
2024-10-05 13:49:38 +00:00

17 lines
286 B
Text

builddir = .ninja
outdir = ./dist
jsdir = $outdir/js
rule tsc
command = node_modules/.bin/tsc
build $outdir/index.js: tsc | src/index.ts tsconfig.json
rule run
command = node $in
build run: run $outdir/index.js
build run-tap-bpm: run $outdir/index.js tap-bpm
pool = console