[
  [
    "start",
    [
      "comment",
      "#!/bin/sh"
    ]
  ],
  [
    "start"
  ],
  [
    "start",
    [
      "comment",
      "# Script to open a browser to current branch"
    ]
  ],
  [
    "start",
    [
      "comment",
      "# Repo formats:"
    ]
  ],
  [
    "start",
    [
      "comment",
      "# ssh   git@github.com:richo/gh_pr.git"
    ]
  ],
  [
    "start",
    [
      "comment",
      "# http  https://richoH@github.com/richo/gh_pr.git"
    ]
  ],
  [
    "start",
    [
      "comment",
      "# git   git://github.com/richo/gh_pr.git"
    ]
  ],
  [
    "start"
  ],
  [
    "start",
    [
      "variable",
      "username="
    ],
    [
      "keyword.operator",
      "`"
    ],
    [
      "identifier",
      "git"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "config"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "--"
    ],
    [
      "identifier",
      "get"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "github"
    ],
    [
      "text",
      "."
    ],
    [
      "identifier",
      "user"
    ],
    [
      "keyword.operator",
      "`"
    ]
  ],
  [
    "start"
  ],
  [
    "start",
    [
      "support.function",
      "get_repo()"
    ],
    [
      "text",
      " "
    ],
    [
      "paren.lparen",
      "{"
    ]
  ],
  [
    "start",
    [
      "text",
      "    "
    ],
    [
      "identifier",
      "git"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "remote"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "v"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "|"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "grep"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "$"
    ],
    [
      "paren.lparen",
      "{"
    ],
    [
      "variable",
      "@"
    ],
    [
      "keyword.operator",
      ":-"
    ],
    [
      "variable",
      "$username"
    ],
    [
      "paren.rparen",
      "}"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "|"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword",
      "while"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword",
      "read"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "remote"
    ],
    [
      "punctuation.operator",
      ";"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword",
      "do"
    ]
  ],
  [
    "start",
    [
      "text",
      "      "
    ],
    [
      "keyword",
      "if"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "repo="
    ],
    [
      "keyword.operator",
      "`"
    ],
    [
      "support.function.builtin",
      "echo"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "$remote"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "|"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "grep"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "E"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "o"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "git@github.com:[^ ]*"
    ],
    [
      "string.end",
      "\""
    ],
    [
      "keyword.operator",
      "`"
    ],
    [
      "punctuation.operator",
      ";"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword",
      "then"
    ]
  ],
  [
    "start",
    [
      "text",
      "          "
    ],
    [
      "support.function.builtin",
      "echo"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "$repo"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "|"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "sed"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "e"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "s/^git@github\\.com://"
    ],
    [
      "string.end",
      "\""
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "e"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "s/\\.git$//"
    ],
    [
      "string.end",
      "\""
    ]
  ],
  [
    "start",
    [
      "text",
      "          "
    ],
    [
      "support.function.builtin",
      "exit"
    ],
    [
      "text",
      " "
    ],
    [
      "constant.numeric",
      "1"
    ]
  ],
  [
    "start",
    [
      "text",
      "      "
    ],
    [
      "keyword",
      "fi"
    ]
  ],
  [
    "start",
    [
      "text",
      "      "
    ],
    [
      "keyword",
      "if"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "repo="
    ],
    [
      "keyword.operator",
      "`"
    ],
    [
      "support.function.builtin",
      "echo"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "$remote"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "|"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "grep"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "E"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "o"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "https?://([^@]*@)?github.com/[^ ]*\\.git"
    ],
    [
      "string.end",
      "\""
    ],
    [
      "keyword.operator",
      "`"
    ],
    [
      "punctuation.operator",
      ";"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword",
      "then"
    ]
  ],
  [
    "start",
    [
      "text",
      "          "
    ],
    [
      "support.function.builtin",
      "echo"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "$repo"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "|"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "sed"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "e"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "s|^https?://||"
    ],
    [
      "string.end",
      "\""
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "e"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "s/^.*github\\.com\\///"
    ],
    [
      "string.end",
      "\""
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "e"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "s/\\.git$//"
    ],
    [
      "string.end",
      "\""
    ]
  ],
  [
    "start",
    [
      "text",
      "          "
    ],
    [
      "support.function.builtin",
      "exit"
    ],
    [
      "text",
      " "
    ],
    [
      "constant.numeric",
      "1"
    ]
  ],
  [
    "start",
    [
      "text",
      "      "
    ],
    [
      "keyword",
      "fi"
    ]
  ],
  [
    "start",
    [
      "text",
      "      "
    ],
    [
      "keyword",
      "if"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "repo="
    ],
    [
      "keyword.operator",
      "`"
    ],
    [
      "support.function.builtin",
      "echo"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "$remote"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "|"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "grep"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "E"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "o"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "git://github.com/[^ ]*\\.git"
    ],
    [
      "string.end",
      "\""
    ],
    [
      "keyword.operator",
      "`"
    ],
    [
      "punctuation.operator",
      ";"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword",
      "then"
    ]
  ],
  [
    "start",
    [
      "text",
      "          "
    ],
    [
      "support.function.builtin",
      "echo"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "$repo"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "|"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "sed"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "e"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "s|^git://github.com/||"
    ],
    [
      "string.end",
      "\""
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "e"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "s/\\.git$//"
    ],
    [
      "string.end",
      "\""
    ]
  ],
  [
    "start",
    [
      "text",
      "          "
    ],
    [
      "support.function.builtin",
      "exit"
    ],
    [
      "text",
      " "
    ],
    [
      "constant.numeric",
      "1"
    ]
  ],
  [
    "start",
    [
      "text",
      "      "
    ],
    [
      "keyword",
      "fi"
    ]
  ],
  [
    "start",
    [
      "text",
      "    "
    ],
    [
      "keyword",
      "done"
    ]
  ],
  [
    "start"
  ],
  [
    "start",
    [
      "text",
      "    "
    ],
    [
      "keyword",
      "if"
    ],
    [
      "text",
      " "
    ],
    [
      "paren.lparen",
      "["
    ],
    [
      "text",
      " "
    ],
    [
      "variable.language",
      "$?"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "eq"
    ],
    [
      "text",
      " "
    ],
    [
      "constant.numeric",
      "0"
    ],
    [
      "text",
      " "
    ],
    [
      "paren.rparen",
      "]"
    ],
    [
      "punctuation.operator",
      ";"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword",
      "then"
    ]
  ],
  [
    "start",
    [
      "text",
      "        "
    ],
    [
      "support.function.builtin",
      "echo"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "Couldn't find a valid remote"
    ],
    [
      "string.end",
      "\""
    ],
    [
      "text",
      " "
    ],
    [
      "keyword.operator",
      ">"
    ],
    [
      "support.function",
      "&2"
    ]
  ],
  [
    "start",
    [
      "text",
      "        "
    ],
    [
      "support.function.builtin",
      "exit"
    ],
    [
      "text",
      " "
    ],
    [
      "constant.numeric",
      "1"
    ]
  ],
  [
    "start",
    [
      "text",
      "    "
    ],
    [
      "keyword",
      "fi"
    ]
  ],
  [
    "start",
    [
      "paren.rparen",
      "}"
    ]
  ],
  [
    "start"
  ],
  [
    "start",
    [
      "support.function.builtin",
      "echo"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "$"
    ],
    [
      "paren.lparen",
      "{"
    ],
    [
      "keyword.operator",
      "#"
    ],
    [
      "variable",
      "x"
    ],
    [
      "paren.lparen",
      "["
    ],
    [
      "text",
      "@"
    ],
    [
      "paren.rparen",
      "]}"
    ]
  ],
  [
    "start"
  ],
  [
    "start",
    [
      "keyword",
      "if"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "repo="
    ],
    [
      "keyword.operator",
      "`"
    ],
    [
      "identifier",
      "get_repo"
    ],
    [
      "text",
      " "
    ],
    [
      "variable",
      "$@"
    ],
    [
      "keyword.operator",
      "`"
    ],
    [
      "punctuation.operator",
      ";"
    ],
    [
      "text",
      " "
    ],
    [
      "keyword",
      "then"
    ]
  ],
  [
    "start",
    [
      "text",
      "    "
    ],
    [
      "variable",
      "branch="
    ],
    [
      "keyword.operator",
      "`"
    ],
    [
      "identifier",
      "git"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "symbolic"
    ],
    [
      "keyword.operator",
      "-"
    ],
    [
      "identifier",
      "ref"
    ],
    [
      "text",
      " "
    ],
    [
      "identifier",
      "HEAD"
    ],
    [
      "text",
      " "
    ],
    [
      "constant.numeric",
      "2"
    ],
    [
      "keyword.operator",
      ">/"
    ],
    [
      "identifier",
      "dev"
    ],
    [
      "keyword.operator",
      "/"
    ],
    [
      "identifier",
      "null"
    ],
    [
      "keyword.operator",
      "`"
    ]
  ],
  [
    "start",
    [
      "text",
      "    "
    ],
    [
      "support.function.builtin",
      "echo"
    ],
    [
      "text",
      " "
    ],
    [
      "string.start",
      "\""
    ],
    [
      "string",
      "http://github.com/"
    ],
    [
      "variable",
      "$repo"
    ],
    [
      "string",
      "/pull/new/"
    ],
    [
      "variable",
      "$"
    ],
    [
      "paren.lparen",
      "{"
    ],
    [
      "variable",
      "branch"
    ],
    [
      "keyword.operator",
      "##"
    ],
    [
      "identifier",
      "refs"
    ],
    [
      "keyword.operator",
      "/"
    ],
    [
      "identifier",
      "heads"
    ],
    [
      "keyword.operator",
      "/"
    ],
    [
      "paren.rparen",
      "}"
    ],
    [
      "string.end",
      "\""
    ]
  ],
  [
    "start",
    [
      "keyword",
      "else"
    ]
  ],
  [
    "start",
    [
      "text",
      "    "
    ],
    [
      "support.function.builtin",
      "exit"
    ],
    [
      "text",
      " "
    ],
    [
      "constant.numeric",
      "1"
    ]
  ],
  [
    "start",
    [
      "keyword",
      "fi"
    ]
  ],
  [
    "start"
  ]
]