gitk: "lime" color incompatible with older Tk versions

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

gitk: "lime" color incompatible with older Tk versions

Andrew Janke
Hi, git folks,

I'm having trouble running gitk on Mac OS X 10.9.5. The gitk program
uses the color "lime", which is not present in older versions of Tk,
apparently including the Tk 8.5 which ships with 10.9.

When I try to launch it, I get this error.

|$ gitk Error in startup script: unknown color name "lime" (processing
"-fore" option) invoked from within "$ctext tag conf m2 -fore [lindex
$mergecolors 2]" (procedure "makewindow" line 347) invoked from within
"makewindow" (file "/usr/local/bin/gitk" line 12434)|

This compatibility problem was noted before back in 2012, in
http://www.mail-archive.com/git%40vger.kernel.org/msg14496.html.

Would you consider switching from lime to a hex value color, for
compatibility with users of older versions of Tk? A patch to do so is
below; only the file gitk-git/gitk needs to be changed.

Cheers,
Andrew Janke


diff --git a/gitk-git/gitk b/gitk-git/gitk
index 805a1c7..db5560d 100755
--- a/gitk-git/gitk
+++ b/gitk-git/gitk
@@ -2265,7 +2265,7 @@ proc makewindow {} {
      set h [expr {[font metrics uifont -linespace] + 2}]
      set progresscanv .tf.bar.progress
      canvas $progresscanv -relief sunken -height $h -borderwidth 2
-    set progressitem [$progresscanv create rect -1 0 0 $h -fill lime]
+    set progressitem [$progresscanv create rect -1 0 0 $h -fill "#99FF00"]
      set fprogitem [$progresscanv create rect -1 0 0 $h -fill yellow]
      set rprogitem [$progresscanv create rect -1 0 0 $h -fill red]
      }
@@ -3397,7 +3397,7 @@ set rectmask {
         0x00, 0x00, 0xfc, 0x0f, 0xfc, 0x0f, 0xfc, 0x0f,
         0xfc, 0x0f, 0xfc, 0x0f, 0xfc, 0x0f, 0xfc, 0x0f, 0x00, 0x00};
  }
-image create bitmap reficon-H -background black -foreground lime \
+image create bitmap reficon-H -background black -foreground "#99FF00" \
      -data $rectdata -maskdata $rectmask
  image create bitmap reficon-o -background black -foreground "#ddddff" \
      -data $rectdata -maskdata $rectmask
@@ -12188,7 +12188,7 @@ if {[tk windowingsystem] eq "aqua"} {
      set extdifftool "meld"
  }

-set colors {lime red blue magenta darkgrey brown orange}
+set colors {"#99FF00" red blue magenta darkgrey brown orange}
  if {[tk windowingsystem] eq "win32"} {
      set uicolor SystemButtonFace
      set uifgcolor SystemButtonText
@@ -12206,12 +12206,12 @@ if {[tk windowingsystem] eq "win32"} {
  }
  set diffcolors {red "#00a000" blue}
  set diffcontext 3
-set mergecolors {red blue lime purple brown "#009090" magenta "#808000"
"#009000" "#ff0080" cyan "#b07070" "#70b0f0" "#70f0b0" "#f0b070" "#ff70b0"}
+set mergecolors {red blue "#99FF00" purple brown "#009090" magenta
"#808000" "#009000" "#ff0080" cyan "#b07070" "#70b0f0" "#70f0b0"
"#f0b070" "#ff70b0"}
  set ignorespace 0
  set worddiff ""
  set markbgcolor "#e0e0ff"

-set headbgcolor lime
+set headbgcolor "#99FF00"
  set headfgcolor black
  set headoutlinecolor black
  set remotebgcolor #ffddaa
@@ -12226,7 +12226,7 @@ set linehoverfgcolor black
  set linehoveroutlinecolor black
  set mainheadcirclecolor yellow
  set workingfilescirclecolor red
-set indexcirclecolor lime
+set indexcirclecolor "#99FF00"
  set circlecolors {white blue gray blue blue}
  set linkfgcolor blue
  set circleoutlinecolor $fgcolor

--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Reply | Threaded
Open this post in threaded view
|

Re: gitk: "lime" color incompatible with older Tk versions

Stefan Beller-4
+ Paul Mackerras, who maintains gitk

On Sun, May 1, 2016 at 10:03 AM, Andrew Janke <[hidden email]> wrote:

> Hi, git folks,
>
> I'm having trouble running gitk on Mac OS X 10.9.5. The gitk program uses
> the color "lime", which is not present in older versions of Tk, apparently
> including the Tk 8.5 which ships with 10.9.
>
> When I try to launch it, I get this error.
>
> |$ gitk Error in startup script: unknown color name "lime" (processing
> "-fore" option) invoked from within "$ctext tag conf m2 -fore [lindex
> $mergecolors 2]" (procedure "makewindow" line 347) invoked from within
> "makewindow" (file "/usr/local/bin/gitk" line 12434)|
>
> This compatibility problem was noted before back in 2012, in
> http://www.mail-archive.com/git%40vger.kernel.org/msg14496.html.
>
> Would you consider switching from lime to a hex value color, for
> compatibility with users of older versions of Tk? A patch to do so is below;
> only the file gitk-git/gitk needs to be changed.
>
> Cheers,
> Andrew Janke
>
>
> diff --git a/gitk-git/gitk b/gitk-git/gitk
> index 805a1c7..db5560d 100755
> --- a/gitk-git/gitk
> +++ b/gitk-git/gitk
> @@ -2265,7 +2265,7 @@ proc makewindow {} {
>      set h [expr {[font metrics uifont -linespace] + 2}]
>      set progresscanv .tf.bar.progress
>      canvas $progresscanv -relief sunken -height $h -borderwidth 2
> -    set progressitem [$progresscanv create rect -1 0 0 $h -fill lime]
> +    set progressitem [$progresscanv create rect -1 0 0 $h -fill "#99FF00"]
>      set fprogitem [$progresscanv create rect -1 0 0 $h -fill yellow]
>      set rprogitem [$progresscanv create rect -1 0 0 $h -fill red]
>      }
> @@ -3397,7 +3397,7 @@ set rectmask {
>         0x00, 0x00, 0xfc, 0x0f, 0xfc, 0x0f, 0xfc, 0x0f,
>         0xfc, 0x0f, 0xfc, 0x0f, 0xfc, 0x0f, 0xfc, 0x0f, 0x00, 0x00};
>  }
> -image create bitmap reficon-H -background black -foreground lime \
> +image create bitmap reficon-H -background black -foreground "#99FF00" \
>      -data $rectdata -maskdata $rectmask
>  image create bitmap reficon-o -background black -foreground "#ddddff" \
>      -data $rectdata -maskdata $rectmask
> @@ -12188,7 +12188,7 @@ if {[tk windowingsystem] eq "aqua"} {
>      set extdifftool "meld"
>  }
>
> -set colors {lime red blue magenta darkgrey brown orange}
> +set colors {"#99FF00" red blue magenta darkgrey brown orange}
>  if {[tk windowingsystem] eq "win32"} {
>      set uicolor SystemButtonFace
>      set uifgcolor SystemButtonText
> @@ -12206,12 +12206,12 @@ if {[tk windowingsystem] eq "win32"} {
>  }
>  set diffcolors {red "#00a000" blue}
>  set diffcontext 3
> -set mergecolors {red blue lime purple brown "#009090" magenta "#808000"
> "#009000" "#ff0080" cyan "#b07070" "#70b0f0" "#70f0b0" "#f0b070" "#ff70b0"}
> +set mergecolors {red blue "#99FF00" purple brown "#009090" magenta
> "#808000" "#009000" "#ff0080" cyan "#b07070" "#70b0f0" "#70f0b0" "#f0b070"
> "#ff70b0"}
>  set ignorespace 0
>  set worddiff ""
>  set markbgcolor "#e0e0ff"
>
> -set headbgcolor lime
> +set headbgcolor "#99FF00"
>  set headfgcolor black
>  set headoutlinecolor black
>  set remotebgcolor #ffddaa
> @@ -12226,7 +12226,7 @@ set linehoverfgcolor black
>  set linehoveroutlinecolor black
>  set mainheadcirclecolor yellow
>  set workingfilescirclecolor red
> -set indexcirclecolor lime
> +set indexcirclecolor "#99FF00"
>  set circlecolors {white blue gray blue blue}
>  set linkfgcolor blue
>  set circleoutlinecolor $fgcolor
>
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to [hidden email]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [hidden email]
More majordomo info at  http://vger.kernel.org/majordomo-info.html