mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-02 22:54:52 +00:00
git-arc: Retain color status messages
Newer versions of archanist have an --ansi option to always include the ansi colors when doing an arc list (or any command really). Add this to the arc list that's relevant. Add filter to filter out the 'bolding' though since that interferes with our parsing. This should restore the color output afterdf834e06bb
. Fixes:df834e06bb
Sponsored by: Netflix Reviewed by: markj, jhb Differential Revision: https://reviews.freebsd.org/D43459
This commit is contained in:
parent
12bae251fb
commit
e1735b35e3
|
@ -159,12 +159,12 @@ arc_call_conduit()
|
|||
}
|
||||
|
||||
#
|
||||
# Filter the output of arc list to remove the warnings as above, as well as any
|
||||
# stray escape sequences that are in the list (it interferes with the parsing)
|
||||
# Filter the output of arc list to remove the warnings as above, as well as
|
||||
# the bolding sequence (the color sequence remains intact).
|
||||
#
|
||||
arc_list()
|
||||
{
|
||||
arc list "$@" | sed 's/\x1b\[[0-9;]*m//g' | grep -v '^Warning: '
|
||||
arc list "$@" | grep -v '^Warning: ' | sed -E 's/\x1b\[1m//g;s/\x1b\[m//g'
|
||||
}
|
||||
|
||||
diff2phid()
|
||||
|
@ -219,7 +219,7 @@ title2diff()
|
|||
local title
|
||||
|
||||
title=$(echo $1 | sed 's/"/\\"/g')
|
||||
arc_list |
|
||||
arc_list --no-ansi |
|
||||
awk -F': ' '{
|
||||
if (substr($0, index($0, FS) + length(FS)) == "'"$title"'") {
|
||||
print substr($1, match($1, "D[1-9][0-9]*"))
|
||||
|
@ -430,7 +430,7 @@ gitarc__list()
|
|||
local chash commit commits diff openrevs title
|
||||
|
||||
commits=$(build_commit_list "$@")
|
||||
openrevs=$(arc_list)
|
||||
openrevs=$(arc_list --ansi)
|
||||
|
||||
for commit in $commits; do
|
||||
chash=$(git show -s --format='%C(auto)%h' "$commit")
|
||||
|
@ -449,7 +449,7 @@ gitarc__list()
|
|||
awk -F'D[1-9][0-9]*: ' \
|
||||
'{if ($2 == "'"$(echo $title | sed 's/"/\\"/g')"'") print $0}')
|
||||
if [ -z "$diff" ]; then
|
||||
echo "No Review : $title"
|
||||
echo "No Review : $title"
|
||||
elif [ "$(echo "$diff" | wc -l)" -ne 1 ]; then
|
||||
echo -n "Ambiguous Reviews: "
|
||||
echo "$diff" | grep -E -o 'D[1-9][0-9]*:' | tr -d ':' \
|
||||
|
|
Loading…
Reference in a new issue