Files
NilsBriggenandClaude Opus 5.5 d4e1fbe87d CLI: scenes, banks, profiles, mic, JSON, real volume
- Strips can be named by the label you gave them; names ignore case.
- New: mic, banks, scenes, scene save, profile, profiles, state (JSON).
- --json for strips, banks, scenes and profiles.
- set --volume sets the volume itself, through the strip's range and curve.
- bank N checks N against the profile's banks.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-12 09:17:50 +02:00

42 lines
1.5 KiB
Plaintext

#compdef slidewire
_slidewire() {
local -a commands
commands=(
'strips:list strips with volume and assignment'
'set:set or change a strip'"'"'s volume'
'mute:mute or unmute a strip'
'mic:mute or unmute the microphone'
'bank:switch to a bank'
'banks:show the current bank'
'scene:recall or save a scene'
'scenes:list scenes'
'profile:switch profile'
'profiles:list profiles'
'state:everything as JSON'
)
if (( CURRENT == 2 )); then
_describe 'command' commands
_arguments \
'--minimized[start in the tray]' \
'--list-ports[list MIDI ports]' \
'--monitor[print incoming MIDI]:pattern:' \
'--doctor[check why a controller does not show up]:pattern:' \
'--install-icon[install a menu entry and icons]' \
'--uninstall[remove the menu entry, icons and autostart]' \
'--write-icons[write theme icons]:directory:_files -/' \
'(-V --version)'{-V,--version}'[print the version]' \
'(-h --help)'{-h,--help}'[show help]'
return
fi
case $words[2] in
mute) (( CURRENT == 4 )) && _values 'mode' on off toggle ;;
mic) (( CURRENT == 3 )) && _values 'mode' on off toggle ;;
scene) (( CURRENT == 3 )) && _values 'scene' save ;;
set) _arguments '--volume[set the volume itself, through the strip'"'"'s range]' ;;
strips|scenes|banks|profiles) _arguments '--json[print JSON]' ;;
esac
}
_slidewire "$@"