id = "moc"
name = "MOC"
homepage = "https://moc.daper.net/"
description = "Music On Console audio player."
executables = ["mocp"]
platforms = ["linux"]
[dotfiles]
paths = [
"~/.moc/config",
"~/.moc/themes/",
]
secret = []
[commands]
format = 1
label = "Control MOC"
description = "Start the player on a folder, queue or append files without opening the interface, or send transport commands to a running server. Theme, config and option overrides are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false }
[[commands.source]]
id = "help"
kind = "manual"
url = "https://manpages.debian.org/unstable/moc/mocp.1.en.html"
revision = "2.6.0~svn-r3005-12"
evidence = """
mocp [OPTIONS] [FILE|DIR ...]
-m, --music-dir
-q, --enqueue
-a, --append
-c, --clear
-p, --play
-l, --playit
-f, --next
-r, --previous
-s, --stop
-x, --exit
-P, --pause
-U, --unpause
-G, --toggle-pause
-i, --info
"""
[[commands.field]]
id = "music_dir"
label = "Start in MusicDir"
type = "boolean"
option = ["--music-dir", "-m"]
sources = ["help"]
[[commands.field]]
id = "enqueue"
label = "Add to queue (no interface)"
type = "boolean"
option = ["--enqueue", "-q"]
sources = ["help"]
[[commands.field]]
id = "append"
label = "Append to playlist (no interface)"
type = "boolean"
option = ["--append", "-a"]
sources = ["help"]
[[commands.field]]
id = "clear"
label = "Clear playlist"
type = "boolean"
option = ["--clear", "-c"]
sources = ["help"]
[[commands.field]]
id = "play"
label = "Play from first item"
type = "boolean"
option = ["--play", "-p"]
sources = ["help"]
[[commands.field]]
id = "playit"
label = "Play files without touching playlist"
type = "boolean"
option = ["--playit", "-l"]
sources = ["help"]
[[commands.field]]
id = "toggle_pause"
label = "Toggle pause"
type = "boolean"
option = ["--toggle-pause", "-G"]
sources = ["help"]
[[commands.field]]
id = "next"
label = "Next song"
type = "boolean"
option = ["--next", "-f"]
sources = ["help"]
[[commands.field]]
id = "previous"
label = "Previous song"
type = "boolean"
option = ["--previous", "-r"]
sources = ["help"]
[[commands.field]]
id = "stop"
label = "Stop playing"
type = "boolean"
option = ["--stop", "-s"]
sources = ["help"]
[[commands.field]]
id = "info"
label = "Print current file info"
type = "boolean"
option = ["--info", "-i"]
sources = ["help"]
[[commands.field]]
id = "exit"
label = "Bring down the server"
type = "boolean"
option = ["--exit", "-x"]
effect = "exec"
sources = ["help"]
[[commands.field]]
id = "files"
label = "Files or directories"
type = "path"
position = 0
multiple = true
path = { kind = "any", role = "input" }
sources = ["help"]
[[commands.task]]
id = "open"
label = "Open player on files"
fields = ["files", "music_dir"]
[[commands.task]]
id = "append_files"
label = "Append to playlist"
fields = ["append", "files"]
required = ["files"]
set = { append = [true] }
lock = ["append"]
[[commands.task]]
id = "toggle"
label = "Toggle pause"
fields = ["toggle_pause"]
set = { toggle_pause = [true] }
lock = ["toggle_pause"]
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["files", "music_dir", "enqueue", "append", "clear", "play", "playit", "toggle_pause", "next", "previous", "stop", "info", "exit"]