{
  "description": "Convert text or source files to PostScript with enscript, optionally with syntax highlighting, and write to a file or a printer. Fonts, filters, fancy headers, underlays and special escapes are left out.",
  "options": [
    {
      "names": [
        "--output",
        "-p"
      ],
      "description": "Write PostScript to this file instead of the default printer.",
      "args": {
        "name": "output",
        "description": "Write PostScript to this file instead of the default printer.",
        "isOptional": false,
        "template": "filepaths"
      },
      "isDangerous": true
    },
    {
      "names": [
        "--printer",
        "-P"
      ],
      "description": "Spool the output to this named printer.",
      "args": {
        "name": "printer",
        "description": "Spool the output to this named printer.",
        "isOptional": false
      }
    },
    {
      "names": [
        "--highlight"
      ],
      "description": "Syntax-highlight using this language name (enscript --help-highlight lists them).",
      "args": {
        "name": "highlight",
        "description": "Syntax-highlight using this language name (enscript --help-highlight lists them).",
        "isOptional": false
      }
    },
    {
      "names": [
        "--columns"
      ],
      "description": "Columns per page",
      "args": {
        "name": "columns",
        "isOptional": false
      },
      "isRequired": true
    },
    {
      "names": [
        "--landscape",
        "-r"
      ],
      "description": "Landscape"
    },
    {
      "names": [
        "--portrait",
        "-R"
      ],
      "description": "Portrait"
    },
    {
      "names": [
        "-C"
      ],
      "description": "Line numbers"
    },
    {
      "names": [
        "--no-header",
        "-B"
      ],
      "description": "No page header"
    },
    {
      "names": [
        "--borders",
        "-j"
      ],
      "description": "Page borders"
    },
    {
      "names": [
        "--title",
        "-t"
      ],
      "description": "Job title",
      "args": {
        "name": "title",
        "isOptional": false
      }
    },
    {
      "names": [
        "--tabsize",
        "-T"
      ],
      "description": "Tab size",
      "args": {
        "name": "tabsize",
        "isOptional": false
      },
      "isRequired": true
    },
    {
      "names": [
        "--media",
        "-M"
      ],
      "description": "Paper size name, for example A4 or Letter.",
      "args": {
        "name": "media",
        "description": "Paper size name, for example A4 or Letter.",
        "isOptional": false,
        "suggestions": [
          {
            "name": "A4",
            "description": "A4"
          },
          {
            "name": "Letter",
            "description": "Letter"
          }
        ]
      }
    },
    {
      "names": [
        "--copies",
        "-n"
      ],
      "description": "Copies",
      "args": {
        "name": "copies",
        "isOptional": false
      },
      "isRequired": true
    }
  ],
  "args": [
    {
      "name": "files",
      "description": "Leave empty to read standard input.",
      "isOptional": true,
      "isVariadic": true,
      "template": "filepaths"
    }
  ],
  "name": "enscript"
}
