mirror of
https://github.com/dcarrillo/prezto.git
synced 2024-12-22 08:08:00 +00:00
Ensure we use the same function definition syntax everywhere
This commit is contained in:
parent
75a60bc7bf
commit
a70bce3ea6
@ -30,7 +30,7 @@ there are a number of additional things to keep in mind.
|
||||
|
||||
- Local variables should be used whenever possible.
|
||||
- Prefer `zstyle` over environment variables for configuration.
|
||||
- Use the `my_func()` syntax for defining functions.
|
||||
- Use the function keyword to define functions.
|
||||
- The 80 character hard limit can be waved for readability.
|
||||
|
||||
#### Using an Alternative zprezto Directory
|
||||
|
74
init.zsh
74
init.zsh
@ -20,49 +20,51 @@ unset min_zsh_version
|
||||
# zprezto convenience updater
|
||||
# The function is surrounded by ( ) instead of { } so it starts in a subshell
|
||||
# and won't affect the environment of the calling shell
|
||||
function zprezto-update () (
|
||||
function cannot-fast-forward {
|
||||
local STATUS="$1"
|
||||
[[ -n "${STATUS}" ]] && printf "%s\n" "${STATUS}"
|
||||
printf "Unable to fast-forward the changes. You can fix this by "
|
||||
printf "running\ncd '%s' and then\n'git pull' " "${ZPREZTODIR}"
|
||||
printf "to manually pull and possibly merge in changes\n"
|
||||
}
|
||||
cd -q -- "${ZPREZTODIR}" || return 7
|
||||
local orig_branch="$(git symbolic-ref HEAD 2>/dev/null | cut -d '/' -f 3)"
|
||||
if [[ "$orig_branch" == "master" ]]; then
|
||||
git fetch || return "$?"
|
||||
local UPSTREAM=$(git rev-parse '@{u}')
|
||||
local LOCAL=$(git rev-parse @)
|
||||
local REMOTE=$(git rev-parse "$UPSTREAM")
|
||||
local BASE=$(git merge-base @ "$UPSTREAM")
|
||||
if [[ $LOCAL == $REMOTE ]]; then
|
||||
printf "There are no updates.\n"
|
||||
return 0
|
||||
elif [[ $LOCAL == $BASE ]]; then
|
||||
printf "There is an update availible. Trying to pull.\n\n"
|
||||
if git pull --ff-only; then
|
||||
printf "Syncing submodules\n"
|
||||
git submodule update --recursive
|
||||
return $?
|
||||
function zprezto-update {
|
||||
(
|
||||
function cannot-fast-forward {
|
||||
local STATUS="$1"
|
||||
[[ -n "${STATUS}" ]] && printf "%s\n" "${STATUS}"
|
||||
printf "Unable to fast-forward the changes. You can fix this by "
|
||||
printf "running\ncd '%s' and then\n'git pull' " "${ZPREZTODIR}"
|
||||
printf "to manually pull and possibly merge in changes\n"
|
||||
}
|
||||
cd -q -- "${ZPREZTODIR}" || return 7
|
||||
local orig_branch="$(git symbolic-ref HEAD 2>/dev/null | cut -d '/' -f 3)"
|
||||
if [[ "$orig_branch" == "master" ]]; then
|
||||
git fetch || return "$?"
|
||||
local UPSTREAM=$(git rev-parse '@{u}')
|
||||
local LOCAL=$(git rev-parse @)
|
||||
local REMOTE=$(git rev-parse "$UPSTREAM")
|
||||
local BASE=$(git merge-base @ "$UPSTREAM")
|
||||
if [[ $LOCAL == $REMOTE ]]; then
|
||||
printf "There are no updates.\n"
|
||||
return 0
|
||||
elif [[ $LOCAL == $BASE ]]; then
|
||||
printf "There is an update availible. Trying to pull.\n\n"
|
||||
if git pull --ff-only; then
|
||||
printf "Syncing submodules\n"
|
||||
git submodule update --recursive
|
||||
return $?
|
||||
else
|
||||
cannot-fast-forward
|
||||
return 1
|
||||
fi
|
||||
elif [[ $REMOTE == $BASE ]]; then
|
||||
cannot-fast-forward "Commits in master that aren't in upstream."
|
||||
return 1
|
||||
else
|
||||
cannot-fast-forward
|
||||
cannot-fast-forward "Upstream and local have diverged."
|
||||
return 1
|
||||
fi
|
||||
elif [[ $REMOTE == $BASE ]]; then
|
||||
cannot-fast-forward "Commits in master that aren't in upstream."
|
||||
return 1
|
||||
else
|
||||
cannot-fast-forward "Upstream and local have diverged."
|
||||
printf "zprezto install at '%s' is not on the master branch " "${ZPREZTODIR}"
|
||||
printf "(you're on '%s')\nUnable to automatically update.\n" "${orig_branch}"
|
||||
return 1
|
||||
fi
|
||||
else
|
||||
printf "zprezto install at '%s' is not on the master branch " "${ZPREZTODIR}"
|
||||
printf "(you're on '%s')\nUnable to automatically update.\n" "${orig_branch}"
|
||||
return 1
|
||||
fi
|
||||
return 1
|
||||
)
|
||||
)
|
||||
}
|
||||
#
|
||||
# Module Loader
|
||||
#
|
||||
|
Loading…
Reference in New Issue
Block a user