{
  "name": "goto",
  "options": [
    {
      "names": [
        "--help",
        "-h"
      ],
      "description": "Show help for goto"
    },
    {
      "names": [
        "--register",
        "-r"
      ],
      "description": "Registers an alias",
      "takes_arg": true,
      "arg": {
        "name": "alias"
      }
    },
    {
      "names": [
        "--unregister",
        "-u"
      ],
      "description": "Unregister an alias",
      "takes_arg": true,
      "arg": {
        "name": "alias"
      }
    },
    {
      "names": [
        "--push",
        "-p"
      ],
      "description": "Pushes the current directory onto the stack, then performs goto"
    },
    {
      "names": [
        "--pop",
        "-o"
      ],
      "description": "Pops the top directory from the stack, then changes to that directory"
    },
    {
      "names": [
        "--list",
        "-l"
      ],
      "description": "Pops the top directory from the stack, then changes to that directory"
    },
    {
      "names": [
        "--expand",
        "-x"
      ],
      "description": "Expands an alias",
      "takes_arg": true,
      "arg": {
        "name": "alias"
      }
    },
    {
      "names": [
        "--cleanup",
        "-c"
      ],
      "description": "Cleans up non existent directory aliases"
    },
    {
      "names": [
        "--version",
        "-v"
      ],
      "description": "Displays the version of the goto script"
    }
  ],
  "args": [
    {
      "name": "alias"
    }
  ]
}
