Improved handling of color diff.
This commit is contained in:
parent
2679db1ffb
commit
fb26ff880c
1 changed files with 21 additions and 11 deletions
26
alias.zsh
26
alias.zsh
|
@ -80,17 +80,27 @@ fi
|
||||||
|
|
||||||
# Diff/Make
|
# Diff/Make
|
||||||
if zstyle -t ':omz:alias:diff' color; then
|
if zstyle -t ':omz:alias:diff' color; then
|
||||||
if (( $+commands[colordiff] )); then
|
|
||||||
alias diff='colordiff -u'
|
|
||||||
compdef colordiff=diff
|
|
||||||
elif (( $+commands[git] )); then
|
|
||||||
function diff() {
|
function diff() {
|
||||||
git --no-pager diff --color=always --no-ext-diff --no-index "$@";
|
if (( $+commands[colordiff] )); then
|
||||||
}
|
"$commands[diff]" --unified "$@" | colordiff --difftype diffu
|
||||||
compdef _git diff=git-diff
|
elif (( $+commands[git] )); then
|
||||||
|
git --no-pager diff --color=auto --no-ext-diff --no-index "$@"
|
||||||
else
|
else
|
||||||
alias diff='diff -u'
|
"$commands[diff]" --unified "$@"
|
||||||
fi
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
function wdiff() {
|
||||||
|
if (( $+commands[wdiff] )) && (( $+commands[colordiff] )); then
|
||||||
|
"$commands[diff]" --unified "$@" | "$commands[wdiff]" --diff-input --avoid-wraps | colordiff --difftype wdiff
|
||||||
|
elif (( $+commands[git] )); then
|
||||||
|
git --no-pager diff --color=auto --no-ext-diff --no-index --word-diff "$@"
|
||||||
|
elif (( $+commands[wdiff] )); then
|
||||||
|
"$commands[diff]" --unified "$@" | "$commands[wdiff]" --diff-input --avoid-wraps
|
||||||
|
else
|
||||||
|
print "zsh: command not found: $0" >&2
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
if (( $+commands[colormake] )); then
|
if (( $+commands[colormake] )); then
|
||||||
alias make='colormake'
|
alias make='colormake'
|
||||||
|
|
Loading…
Reference in a new issue