tek/Justfile

117 lines
3.3 KiB
Makefile

default:
bacon -sj test
status:
cargo c
cloc --by-file src/
git status
upstreams := "codeberg origin" # TODO!
amend:
git commit --amend
push:
git push -u codeberg main && git push -u origin main
tpush:
git push --tags -u codeberg && git push --tags -u origin
fpush:
git push -fu codeberg main && git push -fu origin main
ftpush:
git push --tags -fu codeberg && git push --tags -fu origin
debug := "reset && cargo run --"
release := "reset && cargo run --release --"
name := "-n tek"
bpm := "-b 174"
midi-in := "-i '.*nanoKey.*capture.*'"
midi-out := "-o '.*Komplete.*playback.*MIDI*'"
# TODO: arranger track mappings
#-i "1=Midi-Bridge:nanoKEY Studio 2:(capture_0) nanoKEY Studio nanoKEY Studio _"
#-o "1=Midi-Bridge:Komplete Audio 6 1:(playback_0) Komplete Audio 6 MIDI 1"
#-i "2=Midi-Bridge:nanoKEY Studio 2:(capture_0) nanoKEY Studio nanoKEY Studio _"
#-o "2=Midi-Bridge:Komplete Audio 6 1:(playback_0) Komplete Audio 6 MIDI 1"
#-i "3=Midi-Bridge:nanoKEY Studio 2:(capture_0) nanoKEY Studio nanoKEY Studio _"
#-o "3=Midi-Bridge:Komplete Audio 6 1:(playback_0) Komplete Audio 6 MIDI 1"
#-i "4=Midi-Bridge:nanoKEY Studio 2:(capture_0) nanoKEY Studio nanoKEY Studio _"
#-o "4=Midi-Bridge:Komplete Audio 6 1:(playback_0) Komplete Audio 6 MIDI 1"
run:
{{debug}}
release:
{{release}}
clock:
{{debug}} {{name}} {{bpm}} clock
clock-release:
{{release}} {{name}} {{bpm}} clock
arranger:
{{debug}} {{name}} {{bpm}} arranger
arranger-ext:
{{debug}} {{name}} {{bpm}} {{midi-in}} {{midi-out}} arranger
arranger-release:
{{release}} {{name}} {{bpm}} arranger
arranger-release-ext:
{{release}} {{name}} {{bpm}} {{midi-in}} {{midi-out}} arranger
groovebox:
{{debug}} {{name}} {{bpm}} groovebox
groovebox-ext:
reset
{{debug}} {{name}} {{bpm}} {{midi-in}} {{midi-out}} groovebox \
-l "Komplete Audio 6 Pro:capture_AUX1" \
-r "Komplete Audio 6 Pro:capture_AUX1" \
-L "Komplete Audio 6 Pro:playback_AUX1" \
-R "Komplete Audio 6 Pro:playback_AUX1"
groovebox-release:
{{release}} {{name}} {{bpm}} groovebox
groovebox-release-ext:
{{release}} {{name}} {{bpm}} {{midi-in}} {{midi-out}} groovebox \
-l "Komplete Audio 6 Pro:capture_AUX1" \
-r "Komplete Audio 6 Pro:capture_AUX1" \
-L "Komplete Audio 6 Pro:playback_AUX1" \
-R "Komplete Audio 6 Pro:playback_AUX2"
groovebox-release-ext-browser:
reset
cargo run --release -- groovebox -n tek \
-b 112 \
-i "Midi-Bridge:nanoKEY Studio 1:(capture_0) nanoKEY Studio nanoKEY Studio _" \
-l "Firefox:output_FL" \
-r "Firefox:output_FR" \
-L "Komplete Audio 6 Pro:playback_AUX1" \
-R "Komplete Audio 6 Pro:playback_AUX2"
sequencer:
{{debug}} {{name}} {{bpm}} sequencer
sequencer-ext:
{{debug}} {{name}} {{bpm}} {{midi-in}} {{midi-out}} sequencer
sequencer-release:
{{release}} {{name}} {{bpm}} sequencer
sequencer-release-ext:
{{release}} {{name}} {{bpm}} {{midi-in}} {{midi-out}} sequencer
mixer:
{{debug}} mixer
track:
{{debug}} track
sampler:
{{debug}} sampler
plugin:
{{debug}} plugin
edn:
reset
cargo run --example edn
test:
reset
cd engine && cargo test && cd ..
cd layout && cargo test && cd ..
cd edn && cargo test && cd ..
cd tui && cargo test && cd ..
cargo test
cloc:
for src in {cli/src,edn/src,examples,input/src,jack/src,midi/src,output/src,time/src,tui/src,src}; do echo $src; cloc $src; done