This patch makes git_prompt_status support three new status variables:
- ZSH_THEME_GIT_PROMPT_AHEAD
- ZSH_THEME_GIT_PROMPT_BEHIND
- ZSH_THEME_GIT_PROMPT_DIVERGED
With these extra variables it's easy to see (1) if you have commits in
your local branch that weren't pushed to the remote (AHEAD), (2) if
there are commits in the remote that you haven't merged/rebased yet
(BEHIND) or (3) if you have local unpushed commits AND the remote has
some commits you haven't merged yet (DIVERGED).
Refer to the first line displayed on `git status -b --porcelain`.
An example setup in a .zsh-theme file would be:
ZSH_THEME_GIT_PROMPT_AHEAD="↑"
ZSH_THEME_GIT_PROMPT_BEHIND="↓"
ZSH_THEME_GIT_PROMPT_DIVERGED="↕"
For certain git repositories, this slows down usage
of the shell horifically.
This option can be set with
git config --add oh-my-zsh.hide-status 1
which will disable checking/showing the status notification
Using the correct_all option is too distracting, and needs a lot of
`nocorrect` aliases to work around this.
Using only "correct" to correct the command itself is more friendly.
After a few weeks of using this, I'd prefer this to not be enabled by default. My bad for suggesting that in the first place.
This reverts commit fc49b4a4de.
This binding doesn't work when the edit-command-line.zsh file is loaded
after the key-bindings.zsh file because 'bindkey -e' in key-bindings.zsh
resets the binding. Moving the bindings to they key-bindings.zsh file
and removing edit-command-line.zsh.
The command C-x C-e opens the current command line for editing
in the editor defined by the $EDITOR environment variable.
Thanks to Craig Bosma and his blog post about this:
http://distrustsimplicity.net/articles/zsh-command-editing