diff options
| author | Arpit Chakladar <arpitchakladar+git@gmail.com> | 2026-08-12 01:25:26 +0530 |
|---|---|---|
| committer | Arpit Chakladar <arpitchakladar+git@gmail.com> | 2026-08-29 03:50:25 +0530 |
| commit | 192a77c32acd38393da5f6f40440d09036b37e1b (patch) | |
| tree | 3b5b64d1625a9355e69839cd75a7f12c0a6395da /modules/development/git | |
| parent | 59b585cbd75a217d1c0dce166fa81f67099e0d7c (diff) | |
| download | home-manager-config-192a77c32acd38393da5f6f40440d09036b37e1b.tar.gz home-manager-config-192a77c32acd38393da5f6f40440d09036b37e1b.zip | |
refactor: moved the git-log-graph into a separate script
Diffstat (limited to 'modules/development/git')
| -rw-r--r-- | modules/development/git/default.nix | 84 |
1 files changed, 2 insertions, 82 deletions
diff --git a/modules/development/git/default.nix b/modules/development/git/default.nix index 031194b..8e27d3b 100644 --- a/modules/development/git/default.nix +++ b/modules/development/git/default.nix @@ -104,88 +104,8 @@ }; core.askPass = ""; alias = { - log-graph = '' - !f() { - fmt=$(printf '\033[1;34mCommit:\033[0m \033[33m%%h\033[0m \033[91m%%d\033[0m%%n\x01%%H\x01%%n\033[1;34mParents:\033[0m \033[35m%%p\033[0m%%n\033[1;34mAuthor:\033[0m \033[32m%%an\033[0m <\033[96m%%ae\033[0m>%%n\033[1;34mDate:\033[0m \033[36m%%ad (%%ar)\033[0m%%n%%n%%B%%n\033[90m--------------------------------------------------------\033[0m') - git-graph --model custom --color always --sparse --style round --format="$fmt" | awk ' - index($0, "\x01") > 0 { - line = $0 - start = index(line, "\x01") - rest = substr(line, start + 1) - stop = index(rest, "\x01") - hash = substr(rest, 1, stop - 1) - prefix = substr(line, 1, start - 1) - - gsub(/\033\[[0-9;]*[a-zA-Z]/, "", hash) - gsub(/[^0-9a-fA-F]/, "", hash) - - if (length(hash) >= 7) { - cmd = "git log -1 --format=\"%G?|%GK\" " hash " 2>/dev/null" - cmd | getline sig - close(cmd) - split(sig, a, "|") - st = a[1]; key = a[2] - } else { - st = ""; key = "" - } - - if (st == "G") label = "\033[32mgood\033[0m" - else if (st == "B") label = "\033[31mbad\033[0m" - else if (st == "U") label = "\033[33muntrusted\033[0m" - else if (st == "X") label = "\033[33mexpired sig\033[0m" - else if (st == "Y") label = "\033[33mexpired key\033[0m" - else if (st == "R") label = "\033[31mrevoked\033[0m" - else if (st == "E") label = "\033[90munverifiable\033[0m" - else label = "\033[90mnone\033[0m" - keydisp = (key == "") ? "\033[90m-\033[0m" : "\033[35m" key "\033[0m" - printf "%s\033[1;34mSignature:\033[0m %s %s\n", prefix, label, keydisp - next - } - { print } - ' - }; f | less -R - ''; - log-graph-embed = '' - !f() { - fmt=$(printf '\033[1;34mCommit:\033[0m \033[33m%%h\033[0m \033[91m%%d\033[0m%%n\x01%%H\x01%%n\033[1;34mParents:\033[0m \033[35m%%p\033[0m%%n\033[1;34mAuthor:\033[0m \033[32m%%an\033[0m <\033[96m%%ae\033[0m>%%n\033[1;34mDate:\033[0m \033[36m%%ad (%%ar)\033[0m%%n%%n%%B%%n\033[90m--------------------------------------------------------\033[0m') - git-graph --model custom --color always --sparse --style round --no-pager --format="$fmt" | awk ' - index($0, "\x01") > 0 { - line = $0 - start = index(line, "\x01") - rest = substr(line, start + 1) - stop = index(rest, "\x01") - hash = substr(rest, 1, stop - 1) - prefix = substr(line, 1, start - 1) - - gsub(/\033\[[0-9;]*[a-zA-Z]/, "", hash) - gsub(/[^0-9a-fA-F]/, "", hash) - - if (length(hash) >= 7) { - cmd = "git log -1 --format=\"%G?|%GK\" " hash " 2>/dev/null" - cmd | getline sig - close(cmd) - split(sig, a, "|") - st = a[1]; key = a[2] - } else { - st = ""; key = "" - } - - if (st == "G") label = "\033[32mgood\033[0m" - else if (st == "B") label = "\033[31mbad\033[0m" - else if (st == "U") label = "\033[33muntrusted\033[0m" - else if (st == "X") label = "\033[33mexpired sig\033[0m" - else if (st == "Y") label = "\033[33mexpired key\033[0m" - else if (st == "R") label = "\033[31mrevoked\033[0m" - else if (st == "E") label = "\033[90munverifiable\033[0m" - else label = "\033[90mnone\033[0m" - keydisp = (key == "") ? "\033[90m-\033[0m" : "\033[35m" key "\033[0m" - printf "%s\033[1;34mSignature:\033[0m %s %s\n", prefix, label, keydisp - next - } - { print } - ' - }; f - ''; + log-graph = "!git-log-graph"; + log-graph-embed = "!GIT_LOG_GRAPH_EMBED=1 git-log-graph"; }; } ( |
