Hi!

On 4/21/05, Petr Baudis <[EMAIL PROTECTED]> wrote:
> 
> I made git log colorized if you pass it -c in current git-pasky. 
> 

This has two problems, solved in two patches:
* A space is added in front of  header lines when you use color.
* It does not  work in my (Debian) xterm. This is because here 
  "setterm" only works with TERM=linux.

-------------------------
Strip space in front of colorized header lines.

gitlog.sh: 6d24d857fb6c2f7e810954adaca1990599906f07
--- a/gitlog.sh
+++ b/gitlog.sh
@@ -27,7 +27,7 @@ fi
 base=$(gitXnormid.sh -c $1) || exit 1
 
 rev-tree $base | sort -rn | while read time commit parents; do
-       echo $colheader commit ${commit%:*} $coldefault;
+       echo $colheader""commit ${commit%:*} $coldefault;
        cat-file commit $commit | \
                while read key rest; do
                        case "$key" in
@@ -43,10 +43,10 @@ rev-tree $base | sort -rn | while read t
                                dtz=${tz/+/+ }; dtz=${dtz/-/- }
                                pdate="$(date -Rud "1970-01-01 UTC + $sec sec 
$dtz" 2>/dev/null)"
                                if [ "$pdate" ]; then
-                                       echo -n $color $key $rest | sed 
"s/>.*/> ${pdate/+0000/$tz}/"
+                                       echo -n $color$key $rest | sed "s/>.*/> 
${pdate/+0000/$tz}/"
                                        echo $coldefault
                                else
-                                       echo $color $key $rest $coldefault
+                                       echo $color$key $rest $coldefault
                                fi
                                ;;
                        "")
@@ -56,7 +56,7 @@ rev-tree $base | sort -rn | while read t
                                '
                                ;;
                        *)
-                               echo $colheader $key $rest $coldefault
+                               echo $colheader$key $rest $coldefault
                                ;;
                        esac
 

-------------------------
Uses tput instead of setterm to set colors, seems to work with more
terminals.

gitlog.sh: 6d24d857fb6c2f7e810954adaca1990599906f07
--- a/gitlog.sh
+++ b/gitlog.sh
@@ -11,11 +11,11 @@
 
 if [ "$1" = "-c" ]; then
        shift
-       colheader=$(setterm -foreground green)
-       colauthor=$(setterm -foreground cyan)
-       colcommitter=$(setterm -foreground magenta)
-       colsignoff=$(setterm -foreground yellow)
-       coldefault=$(setterm -foreground default)
+       colheader="$(tput setaf 2)"
+       colauthor="$(tput setaf 6)"
+       colcommitter="$(tput setaf 5)"
+       colsignoff="$(tput setaf 3)"
+       coldefault="$(tput op)"
 else
        colheader=
        colauthor=
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to