1
0
Fork 0
mirror of https://github.com/ohmyzsh/ohmyzsh.git synced 2024-10-16 11:40:46 +00:00
This commit is contained in:
Rafael Monico 2024-09-23 17:33:04 +02:00 committed by GitHub
commit 30014d5d81
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -5,4 +5,34 @@
if [ $commands[oc] ]; then if [ $commands[oc] ]; then
source <(oc completion zsh) source <(oc completion zsh)
compdef _oc oc compdef _oc oc
OC_PLUGIN_INITIALIZED=no
function oc_prompt_info() {
[ -n "$OPENSHIFT_NAMESPACE" ] && echo -ne "\n(openshift: $OPENSHIFT_NAMESPACE)\n\x00"
}
# TODO Completion
function oc-namespace() {
# TODO -h / --help
# TODO "--clear" should unset variable
# when nothing passed should show usage
# TODO Rename this to "oc" and call binary oc with full path
# so this can become a subcommand: "oc localenv namespace xyz"
[ -n "$1" ] \
&& export OPENSHIFT_NAMESPACE="$1" \
|| unset OPENSHIFT_NAMESPACE
[ "$OC_PLUGIN_INITIALIZED" = "no" ] && {
export PROMPT='$(oc_prompt_info)'"$PROMPT"
# TODO Check if text "oc_prompt_info" is in "$PROMPT"
# instead set this variable
export OC_PLUGIN_INITIALIZED=yes
}
}
alias oc='oc ${OPENSHIFT_NAMESPACE:+"--namespace=$OPENSHIFT_NAMESPACE"}'
else
echo "oc plugin error: oc command not found..."
fi fi