id = "bmon" name = "bmon" homepage = "https://github.com/tgraf/bmon" description = "Interface bandwidth monitor" executables = ["bmon"] platforms = ["macos", "linux"] [dotfiles] # The bmon(1) manual documents the user configuration file as $HOME/.bmonrc # (and the system file as /etc/bmon.conf): # https://man7.org/linux/man-pages/man1/bmon.1.html paths = ["~/.bmonrc"] secret = [] [commands] format = 1 label = "Monitor bandwidth" description = "Start bmon with common display, interval and module options. Module-specific settings go inside the input/output module strings." quality = "ai-draft" parser = { end_of_options = "--", interleave = "permute", long_equals = true, short_attached = true, short_bundles = false } [[commands.source]] id = "man" kind = "manual" url = "https://manpages.debian.org/bookworm/bmon/bmon.8.en.html" revision = "bookworm" evidence = """ -i, --input=MODULE[:OPTIONS][,MODULE...] -o, --outputMODULE[:OPTIONS][,MODULE...] -U, --use-si -f, --configfile=FILE -p, --policy=POLICY -r, --read-interval=FLOAT -R, --rate-interval=FLOAT -b, --use-bit -L, --lifetime=FLOAT """ [[commands.field]] id = "policy" label = "Interface policy" description = "Which interfaces to show, for example a comma-separated list of names." type = "string" option = ["--policy", "-p"] sources = ["man"] [[commands.field]] id = "use_bit" label = "Show bits per second" type = "boolean" option = ["--use-bit", "-b"] sources = ["man"] [[commands.field]] id = "use_si" label = "Use SI units (1 KB = 1000 bytes)" type = "boolean" option = ["--use-si", "-U"] sources = ["man"] [[commands.field]] id = "read_interval" label = "Read interval (seconds)" type = "number" option = ["--read-interval", "-r"] sources = ["man"] [[commands.field]] id = "rate_interval" label = "Rate interval (seconds)" type = "number" option = ["--rate-interval", "-R"] sources = ["man"] [[commands.field]] id = "lifetime" label = "Element lifetime (seconds)" type = "number" option = ["--lifetime", "-L"] sources = ["man"] [[commands.field]] id = "input" label = "Input modules" type = "string" option = ["--input", "-i"] suggestions = [{ value = "netlink", label = "netlink" }, { value = "proc", label = "proc" }] sources = ["man"] [[commands.field]] id = "output" label = "Output modules" type = "string" option = ["-o"] suggestions = [{ value = "curses", label = "curses" }, { value = "ascii", label = "ascii" }] sources = ["man"] [[commands.field]] id = "configfile" label = "Config file" type = "path" option = ["--configfile", "-f"] path = { kind = "file", role = "input" } sources = ["man"] [[commands.task]] id = "monitor" label = "Monitor in bits per second" fields = ["policy", "use_bit", "read_interval"] set = { use_bit = [true] } [[commands.group]] id = "basic" label = "Basic" fields = ["policy", "use_bit", "use_si", "read_interval"] [[commands.group]] id = "advanced" label = "Advanced" fields = ["rate_interval", "lifetime", "input", "output", "configfile"]