Files
vban-cli/src/vban_cli/command.py
onyx-and-iris d9810ce270 enable rich tracebacks
console, error_console are now app attributes.
2026-03-02 12:55:33 +00:00

49 lines
1.2 KiB
Python

from typing import Annotated
from cyclopts import App, Parameter
from .context import Context
from .help import BaseHelpFormatter
app = App(name='command', help_formatter=BaseHelpFormatter())
@app.command(name='show')
def show(
*,
ctx: Annotated[Context, Parameter(parse=False)] = None,
):
"""Bring the Voicemeeter GUI to the foreground."""
ctx.client.command.show()
app.console.print('Voicemeeter GUI should now be in the foreground.')
@app.command(name='hide')
def hide(
*,
ctx: Annotated[Context, Parameter(parse=False)],
):
"""Send the Voicemeeter GUI to the background."""
ctx.client.command.hide()
app.console.print('Voicemeeter GUI should now be in the background.')
@app.command(name='shutdown')
def shutdown(
*,
ctx: Annotated[Context, Parameter(parse=False)],
):
"""Shut down Voicemeeter."""
ctx.client.command.shutdown()
app.console.print('Voicemeeter should now be shut down.')
@app.command(name='restart')
def restart(
*,
ctx: Annotated[Context, Parameter(parse=False)],
):
"""Restart the Voicemeeter engine."""
ctx.client.command.restart()
app.console.print('Voicemeeter engine should now be restarting.')