{
  "id": "minicom",
  "name": "minicom",
  "homepage": "https://salsa.debian.org/minicom-team/minicom",
  "description": "A menu-driven terminal emulator for serial communication.",
  "executables": [
    "minicom"
  ],
  "dotfiles": {
    "paths": [
      "~/.minirc.dfl",
      "~/.minirc.*"
    ],
    "secret": [],
    "side_effect": false
  },
  "commands": {
    "format": 1,
    "label": "Open a serial terminal",
    "description": "Start minicom on a serial device with common overrides. Setup mode, scripts, status-line formats and character-set options are left out.",
    "quality": "ai-draft",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": true
    },
    "source": [
      {
        "id": "man",
        "kind": "manual",
        "url": "https://man7.org/linux/man-pages/man1/minicom.1.html",
        "revision": "minicom(1)",
        "evidence": "-D, --device\n            Specify the device, overriding the value given in the\n-b, --baudrate\n            Specify the baud rate, overriding the value given in the\n-C, --capturefile=FILE\n            filename.  Open capture file at startup.\n-d, --dial=ENTRY\n-t, --term=TERM\n-c, --color=on/off\n-w, --wrap\n-H, --displayhex\n-m, --metakey\n-o, --noinit\n-s, --setup\n-7, --7bit\n-8, --8bit\n[configuration] argument: minicom [options] [configuration]"
      }
    ],
    "field": [
      {
        "id": "device",
        "label": "Serial device",
        "type": "path",
        "path": {
          "kind": "file",
          "role": "input"
        },
        "option": [
          "--device",
          "-D"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "baudrate",
        "label": "Baud rate",
        "type": "integer",
        "option": [
          "--baudrate",
          "-b"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "capture",
        "label": "Capture file",
        "type": "path",
        "path": {
          "kind": "file",
          "role": "output"
        },
        "option": [
          "--capturefile",
          "-C"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "dial",
        "label": "Dial entry",
        "type": "string",
        "option": [
          "--dial",
          "-d"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "term",
        "label": "Terminal type",
        "type": "string",
        "option": [
          "--term",
          "-t"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "color",
        "label": "Color",
        "type": "enum",
        "option": [
          "--color",
          "-c"
        ],
        "choices": [
          {
            "value": "on",
            "label": "On"
          },
          {
            "value": "off",
            "label": "Off"
          }
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "wrap",
        "label": "Line wrap at startup",
        "type": "boolean",
        "option": [
          "--wrap",
          "-w"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "displayhex",
        "label": "Hex output",
        "type": "boolean",
        "option": [
          "--displayhex",
          "-H"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "metakey",
        "label": "Meta/Alt as command key",
        "type": "boolean",
        "option": [
          "--metakey",
          "-m"
        ],
        "sources": [
          "man"
        ]
      },
      {
        "id": "noinit",
        "label": "Skip modem initialisation",
        "description": "Skips lock-file checks; use only after quitting without reset.",
        "type": "boolean",
        "option": [
          "--noinit",
          "-o"
        ],
        "sources": [
          "man"
        ]
      }
    ],
    "task": [
      {
        "id": "open",
        "label": "Open device at baud rate",
        "fields": [
          "device",
          "baudrate"
        ],
        "required": [
          "device"
        ]
      },
      {
        "id": "capture",
        "label": "Open with capture file",
        "fields": [
          "device",
          "baudrate",
          "capture"
        ],
        "required": [
          "device",
          "capture"
        ]
      }
    ],
    "group": [
      {
        "id": "basic",
        "label": "Basic",
        "fields": [
          "device",
          "baudrate",
          "capture",
          "dial"
        ]
      },
      {
        "id": "advanced",
        "label": "Advanced",
        "fields": [
          "term",
          "color",
          "wrap",
          "displayhex",
          "metakey",
          "noinit"
        ]
      }
    ]
  }
}
