|
|
|
|
@ -292,16 +292,17 @@ function display-release { |
|
|
|
|
function fmt:hash { |
|
|
|
|
#* Uses $hash from outer scope |
|
|
|
|
local hash="${1:-$hash}" |
|
|
|
|
local short_hash="${hash:0:7}" # 7 characters sha, top level sha is 12 characters |
|
|
|
|
case "$output" in |
|
|
|
|
raw) printf '%s' "$hash" ;; |
|
|
|
|
raw) printf '%s' "$short_hash" ;; |
|
|
|
|
text) |
|
|
|
|
local text="\e[33m$hash\e[0m"; # red |
|
|
|
|
local text="\e[33m$short_hash\e[0m"; # red |
|
|
|
|
if supports_hyperlinks; then |
|
|
|
|
printf "\e]8;;%s\a%s\e]8;;\a" "https://github.com/ohmyzsh/ohmyzsh/commit/$hash" $text; |
|
|
|
|
else |
|
|
|
|
echo $text; |
|
|
|
|
fi ;; |
|
|
|
|
md) printf '[`%s`](https://github.com/ohmyzsh/ohmyzsh/commit/%s)' "$hash" "$hash" ;; |
|
|
|
|
md) printf '[`%s`](https://github.com/ohmyzsh/ohmyzsh/commit/%s)' "$short_hash" "$hash" ;; |
|
|
|
|
esac |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@ -512,13 +513,13 @@ function main { |
|
|
|
|
# Git log options |
|
|
|
|
# -z: commits are delimited by null bytes |
|
|
|
|
# --format: [7-char hash]<field sep>[ref names]<field sep>[subject]<field sep>[body] |
|
|
|
|
# --abbrev=7: force commit hashes to be 7 characters long |
|
|
|
|
# --abbrev=7: force commit hashes to be 12 characters long |
|
|
|
|
# --no-merges: merge commits are omitted |
|
|
|
|
# --first-parent: commits from merged branches are omitted |
|
|
|
|
local SEP="0mZmAgIcSeP" |
|
|
|
|
local -a raw_commits |
|
|
|
|
raw_commits=(${(0)"$(command git -c log.showSignature=false log -z \ |
|
|
|
|
--format="%h${SEP}%D${SEP}%s${SEP}%b" --abbrev=7 \ |
|
|
|
|
--format="%h${SEP}%D${SEP}%s${SEP}%b" --abbrev=12 \ |
|
|
|
|
--no-merges --first-parent $range)"}) |
|
|
|
|
|
|
|
|
|
local raw_commit |
|
|
|
|
|