{
  "name": "ruby",
  "description": "Interpreted object-oriented scripting language",
  "options": [
    {
      "names": [
        "--copyright"
      ],
      "description": "Prints the copyright notice"
    },
    {
      "names": [
        "--version"
      ],
      "description": "Prints the version of Ruby interpreter"
    },
    {
      "names": [
        "-0"
      ],
      "description": "Specifies the input record separator ($/) as an octal number",
      "takes_arg": true,
      "arg": {
        "name": "octal"
      }
    },
    {
      "names": [
        "-C"
      ],
      "description": "Causes Ruby to switch to the directory",
      "takes_arg": true,
      "arg": {
        "name": "directory",
        "template": "folders"
      }
    },
    {
      "names": [
        "-F"
      ],
      "description": "Specifies input field separator ($;)",
      "takes_arg": true,
      "arg": {
        "name": "pattern"
      }
    },
    {
      "names": [
        "-I"
      ],
      "description": "Used to tell Ruby where to load the library scripts. Directory path will be added to the load-path variable ($:)",
      "takes_arg": true,
      "arg": {
        "name": "directory",
        "template": "folders"
      }
    },
    {
      "names": [
        "-K"
      ],
      "description": "Specifies KANJI (Japanese) encoding",
      "takes_arg": true,
      "arg": {
        "name": "kcode"
      }
    },
    {
      "names": [
        "-S"
      ],
      "description": "Makes Ruby use the PATH environment variable to search for script, unless its name begins with a slash. This is used to emulate #! on machines that don't support it, in the following manner: #! /usr/l"
    },
    {
      "names": [
        "-T"
      ],
      "description": "Turns on taint checks at the specified level (default 1)",
      "takes_arg": true,
      "arg": {
        "name": "level"
      }
    },
    {
      "names": [
        "-a"
      ],
      "description": "Turns on auto-split mode when used with -n or -p"
    },
    {
      "names": [
        "-c"
      ],
      "description": "Causes Ruby to check the syntax of the script and exit without executing. If there are no syntax errors, Ruby will print “Syntax OK” to the standard output"
    },
    {
      "names": [
        "-d",
        "--debug"
      ],
      "description": "Turns on debug mode. $DEBUG will be set to true"
    },
    {
      "names": [
        "-e"
      ],
      "description": "Specifies script from command-line while telling Ruby not to search the rest of arguments for a script file name",
      "takes_arg": true,
      "arg": {
        "name": "command"
      }
    },
    {
      "names": [
        "-h",
        "--help"
      ],
      "description": "Prints a summary of the options"
    },
    {
      "names": [
        "-i"
      ],
      "description": "Specifies in-place-edit mode. The extension, if specified, is added to old file name to make a backup copy",
      "takes_arg": true,
      "arg": {
        "name": "extension"
      }
    },
    {
      "names": [
        "-l"
      ],
      "description": "Enables automatic line-ending processing, which means to firstly set $\\ to the value of $/, and secondly chops every line read using chop!"
    },
    {
      "names": [
        "-n"
      ],
      "description": "Causes Ruby to assume the following loop around your script"
    },
    {
      "names": [
        "-p"
      ],
      "description": "Acts mostly same as -n switch, but print the value of variable $_ at the each end of the loop"
    },
    {
      "names": [
        "-r"
      ],
      "description": "Causes Ruby to load the library using require",
      "takes_arg": true,
      "arg": {
        "name": "library"
      }
    },
    {
      "names": [
        "-s"
      ],
      "description": "Enables some switch parsing for switches after script name but before any file name arguments (or before a --)"
    },
    {
      "names": [
        "-v",
        "--verbose"
      ],
      "description": "Enables verbose mode"
    },
    {
      "names": [
        "-w"
      ],
      "description": "Enables verbose mode without printing version message at the beginning. It sets the $VERBOSE variable to true"
    },
    {
      "names": [
        "-x"
      ],
      "description": "Tells Ruby that the script is embedded in a message. Leading garbage will be discarded until the first that starts with “#!” and contains the string, “ruby”. Any meaningful switches on that line will ",
      "takes_arg": true,
      "arg": {
        "name": "directory",
        "template": "folders"
      }
    },
    {
      "names": [
        "-y",
        "--yydebug"
      ],
      "description": "Turns on compiler debug mode. Ruby will print a bunch of internal state messages during compiling scripts. You don't have to specify this switch, unless you are going to debug the Ruby interpreter"
    }
  ]
}
