1
0
mirror of https://github.com/dcarrillo/prezto.git synced 2024-12-22 18:38:00 +00:00

Ensure we use the same function definition syntax everywhere

This commit is contained in:
Kaleb Elwert 2017-07-06 16:00:58 -07:00
parent 75a60bc7bf
commit a70bce3ea6
2 changed files with 39 additions and 37 deletions

View File

@ -30,7 +30,7 @@ there are a number of additional things to keep in mind.
- Local variables should be used whenever possible. - Local variables should be used whenever possible.
- Prefer `zstyle` over environment variables for configuration. - 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. - The 80 character hard limit can be waved for readability.
#### Using an Alternative zprezto Directory #### Using an Alternative zprezto Directory

View File

@ -20,49 +20,51 @@ unset min_zsh_version
# zprezto convenience updater # zprezto convenience updater
# The function is surrounded by ( ) instead of { } so it starts in a subshell # The function is surrounded by ( ) instead of { } so it starts in a subshell
# and won't affect the environment of the calling shell # and won't affect the environment of the calling shell
function zprezto-update () ( function zprezto-update {
function cannot-fast-forward { (
local STATUS="$1" function cannot-fast-forward {
[[ -n "${STATUS}" ]] && printf "%s\n" "${STATUS}" local STATUS="$1"
printf "Unable to fast-forward the changes. You can fix this by " [[ -n "${STATUS}" ]] && printf "%s\n" "${STATUS}"
printf "running\ncd '%s' and then\n'git pull' " "${ZPREZTODIR}" printf "Unable to fast-forward the changes. You can fix this by "
printf "to manually pull and possibly merge in changes\n" 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)" cd -q -- "${ZPREZTODIR}" || return 7
if [[ "$orig_branch" == "master" ]]; then local orig_branch="$(git symbolic-ref HEAD 2>/dev/null | cut -d '/' -f 3)"
git fetch || return "$?" if [[ "$orig_branch" == "master" ]]; then
local UPSTREAM=$(git rev-parse '@{u}') git fetch || return "$?"
local LOCAL=$(git rev-parse @) local UPSTREAM=$(git rev-parse '@{u}')
local REMOTE=$(git rev-parse "$UPSTREAM") local LOCAL=$(git rev-parse @)
local BASE=$(git merge-base @ "$UPSTREAM") local REMOTE=$(git rev-parse "$UPSTREAM")
if [[ $LOCAL == $REMOTE ]]; then local BASE=$(git merge-base @ "$UPSTREAM")
printf "There are no updates.\n" if [[ $LOCAL == $REMOTE ]]; then
return 0 printf "There are no updates.\n"
elif [[ $LOCAL == $BASE ]]; then return 0
printf "There is an update availible. Trying to pull.\n\n" elif [[ $LOCAL == $BASE ]]; then
if git pull --ff-only; then printf "There is an update availible. Trying to pull.\n\n"
printf "Syncing submodules\n" if git pull --ff-only; then
git submodule update --recursive printf "Syncing submodules\n"
return $? 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 else
cannot-fast-forward cannot-fast-forward "Upstream and local have diverged."
return 1 return 1
fi fi
elif [[ $REMOTE == $BASE ]]; then
cannot-fast-forward "Commits in master that aren't in upstream."
return 1
else 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 return 1
fi 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 return 1
fi )
return 1 }
)
# #
# Module Loader # Module Loader
# #