↔️ move old dotfiles to config
This commit is contained in:
284
config/.zsh/custom/plugins/gh/_gh
Normal file
284
config/.zsh/custom/plugins/gh/_gh
Normal file
@ -0,0 +1,284 @@
|
||||
#compdef _gh gh
|
||||
|
||||
|
||||
function _gh {
|
||||
local -a commands
|
||||
|
||||
_arguments -C \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:' \
|
||||
'--version[Show gh version]' \
|
||||
"1: :->cmnds" \
|
||||
"*::arg:->args"
|
||||
|
||||
case $state in
|
||||
cmnds)
|
||||
commands=(
|
||||
"completion:Generate shell completion scripts"
|
||||
"help:Help about any command"
|
||||
"issue:Create and view issues"
|
||||
"pr:Create, view, and checkout pull requests"
|
||||
"repo:Create, clone, fork, and view repositories"
|
||||
)
|
||||
_describe "command" commands
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$words[1]" in
|
||||
completion)
|
||||
_gh_completion
|
||||
;;
|
||||
help)
|
||||
_gh_help
|
||||
;;
|
||||
issue)
|
||||
_gh_issue
|
||||
;;
|
||||
pr)
|
||||
_gh_pr
|
||||
;;
|
||||
repo)
|
||||
_gh_repo
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
function _gh_completion {
|
||||
_arguments \
|
||||
'(-s --shell)'{-s,--shell}'[Shell type: {bash|zsh|fish|powershell}]:' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_help {
|
||||
_arguments \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
|
||||
function _gh_issue {
|
||||
local -a commands
|
||||
|
||||
_arguments -C \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:' \
|
||||
"1: :->cmnds" \
|
||||
"*::arg:->args"
|
||||
|
||||
case $state in
|
||||
cmnds)
|
||||
commands=(
|
||||
"create:Create a new issue"
|
||||
"list:List and filter issues in this repository"
|
||||
"status:Show status of relevant issues"
|
||||
"view:View an issue"
|
||||
)
|
||||
_describe "command" commands
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$words[1]" in
|
||||
create)
|
||||
_gh_issue_create
|
||||
;;
|
||||
list)
|
||||
_gh_issue_list
|
||||
;;
|
||||
status)
|
||||
_gh_issue_status
|
||||
;;
|
||||
view)
|
||||
_gh_issue_view
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
function _gh_issue_create {
|
||||
_arguments \
|
||||
'(-b --body)'{-b,--body}'[Supply a body. Will prompt for one otherwise.]:' \
|
||||
'(-t --title)'{-t,--title}'[Supply a title. Will prompt for one otherwise.]:' \
|
||||
'(-w --web)'{-w,--web}'[Open the browser to create an issue]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_issue_list {
|
||||
_arguments \
|
||||
'(-a --assignee)'{-a,--assignee}'[Filter by assignee]:' \
|
||||
'(-A --author)'{-A,--author}'[Filter by author]:' \
|
||||
'(*-l *--label)'{\*-l,\*--label}'[Filter by label]:' \
|
||||
'(-L --limit)'{-L,--limit}'[Maximum number of issues to fetch]:' \
|
||||
'(-s --state)'{-s,--state}'[Filter by state: {open|closed|all}]:' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_issue_status {
|
||||
_arguments \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_issue_view {
|
||||
_arguments \
|
||||
'(-w --web)'{-w,--web}'[Open issue in browser]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
|
||||
function _gh_pr {
|
||||
local -a commands
|
||||
|
||||
_arguments -C \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:' \
|
||||
"1: :->cmnds" \
|
||||
"*::arg:->args"
|
||||
|
||||
case $state in
|
||||
cmnds)
|
||||
commands=(
|
||||
"checkout:Check out a pull request in Git"
|
||||
"create:Create a pull request"
|
||||
"list:List and filter pull requests in this repository"
|
||||
"status:Show status of relevant pull requests"
|
||||
"view:View a pull request in the browser"
|
||||
)
|
||||
_describe "command" commands
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$words[1]" in
|
||||
checkout)
|
||||
_gh_pr_checkout
|
||||
;;
|
||||
create)
|
||||
_gh_pr_create
|
||||
;;
|
||||
list)
|
||||
_gh_pr_list
|
||||
;;
|
||||
status)
|
||||
_gh_pr_status
|
||||
;;
|
||||
view)
|
||||
_gh_pr_view
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
function _gh_pr_checkout {
|
||||
_arguments \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_pr_create {
|
||||
_arguments \
|
||||
'(-B --base)'{-B,--base}'[The branch into which you want your code merged]:' \
|
||||
'(-b --body)'{-b,--body}'[Supply a body. Will prompt for one otherwise.]:' \
|
||||
'(-d --draft)'{-d,--draft}'[Mark pull request as a draft]' \
|
||||
'(-f --fill)'{-f,--fill}'[Do not prompt for title/body and just use commit info]' \
|
||||
'(-t --title)'{-t,--title}'[Supply a title. Will prompt for one otherwise.]:' \
|
||||
'(-w --web)'{-w,--web}'[Open the web browser to create a pull request]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_pr_list {
|
||||
_arguments \
|
||||
'(-a --assignee)'{-a,--assignee}'[Filter by assignee]:' \
|
||||
'(-B --base)'{-B,--base}'[Filter by base branch]:' \
|
||||
'(*-l *--label)'{\*-l,\*--label}'[Filter by label]:' \
|
||||
'(-L --limit)'{-L,--limit}'[Maximum number of items to fetch]:' \
|
||||
'(-s --state)'{-s,--state}'[Filter by state: {open|closed|merged|all}]:' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_pr_status {
|
||||
_arguments \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_pr_view {
|
||||
_arguments \
|
||||
'(-w --web)'{-w,--web}'[Open pull request in browser]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
|
||||
function _gh_repo {
|
||||
local -a commands
|
||||
|
||||
_arguments -C \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:' \
|
||||
"1: :->cmnds" \
|
||||
"*::arg:->args"
|
||||
|
||||
case $state in
|
||||
cmnds)
|
||||
commands=(
|
||||
"clone:Clone a repository locally"
|
||||
"create:Create a new repository"
|
||||
"fork:Create a fork of a repository"
|
||||
"view:View a repository in the browser"
|
||||
)
|
||||
_describe "command" commands
|
||||
;;
|
||||
esac
|
||||
|
||||
case "$words[1]" in
|
||||
clone)
|
||||
_gh_repo_clone
|
||||
;;
|
||||
create)
|
||||
_gh_repo_create
|
||||
;;
|
||||
fork)
|
||||
_gh_repo_fork
|
||||
;;
|
||||
view)
|
||||
_gh_repo_view
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
function _gh_repo_clone {
|
||||
_arguments \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_repo_create {
|
||||
_arguments \
|
||||
'(-d --description)'{-d,--description}'[Description of repository]:' \
|
||||
'--enable-issues[Enable issues in the new repository]' \
|
||||
'--enable-wiki[Enable wiki in the new repository]' \
|
||||
'(-h --homepage)'{-h,--homepage}'[Repository home page URL]:' \
|
||||
'--public[Make the new repository public]' \
|
||||
'(-t --team)'{-t,--team}'[The name of the organization team to be granted access]:' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_repo_fork {
|
||||
_arguments \
|
||||
'--clone[Clone fork: {true|false|prompt}]' \
|
||||
'--remote[Add remote for fork: {true|false|prompt}]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
||||
function _gh_repo_view {
|
||||
_arguments \
|
||||
'(-w --web)'{-w,--web}'[Open repository in browser]' \
|
||||
'--help[Show help for command]' \
|
||||
'(-R --repo)'{-R,--repo}'[Select another repository using the `OWNER/REPO` format]:'
|
||||
}
|
||||
|
1
config/.zsh/custom/walkah.zsh
Normal file
1
config/.zsh/custom/walkah.zsh
Normal file
@ -0,0 +1 @@
|
||||
# oh-my-zsh complains without a .zsh file in here
|
18
config/.zsh/custom/walkah.zsh-theme
Normal file
18
config/.zsh/custom/walkah.zsh-theme
Normal file
@ -0,0 +1,18 @@
|
||||
# walkah ZSH Theme
|
||||
|
||||
if [ -z $SSH_CONNECTION ]; then HCOLOR="green"; else HCOLOR="blue"; fi
|
||||
local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})"
|
||||
|
||||
function asdf_prompt() {
|
||||
echo $(asdf current $1|awk '{print $2}')
|
||||
}
|
||||
|
||||
PROMPT='%{$fg[$HCOLOR]%}%m%{$reset_color%}:$(shrink_path -f) $(git_prompt_info)%{$fg[red]%}%(!.#.»)%{$reset_color%} '
|
||||
PROMPT2='%{$fg[red]%}\ %{$reset_color%}'
|
||||
if (( $+commands[asdf] )); then
|
||||
RPS1='%{$fg[cyan]%}(%{$fg[red]%}$(asdf_prompt ruby) %{$fg[green]%}$(asdf_prompt nodejs) %{$fg[blue]%}$(asdf_prompt python)%{$fg[cyan]%}) %{$reset_color%}${return_code}'
|
||||
fi
|
||||
ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}±%{$fg[yellow]%}"
|
||||
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%} "
|
||||
ZSH_THEME_GIT_PROMPT_CLEAN=""
|
||||
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}✗%{$reset_color%}"
|
Reference in New Issue
Block a user