Subject: Re: gitk broken or user error?

From: Seth Falcon <[email-masked]>
Date: Mon, 13 Nov 2006 14:28:07 -0800

Paul Mackerras <[email-masked]> writes:
> Those lines are intended to enable the "Edit view" and "Delete view"
> entries in the View menu.  Those entries start out disabled and are
> supposed to be disabled when the "All files" view is displayed, and
> enabled when any other view is displayed.
>
> I suspect that under OSX, the menu gets an extra entry, or something,
> that throws off the numbering.  Instead of commenting out those lines,
> could you instead try changing the 2 and 3 to "Edit*" and "Delete*"
> instead?  If that works I'll do a patch to fix the problem properly.

I tried this patch:

diff --git a/gitk b/gitk
index ab383b3..e7ea4e2 100755
--- a/gitk
+++ b/gitk
@@ -6305,8 +6305,8 @@ if {$cmdline_files ne {} || $revtreeargs
     set viewargs(1) $revtreeargs
     set viewperm(1) 0
     addviewmenu 1
-    .bar.view entryconf 2 -state normal
-    .bar.view entryconf 3 -state normal
+    .bar.view entryconf "Edit*" -state normal
+    .bar.view entryconf "Delete*" -state normal
 }
 
 if {[info exists permviews]} {

And, yes, this allows gitk to load up and be useful.  So this is much
better than the current behavior.  However, if I try clicking on the
"All files" view in the view menu, I get an error box along these
lines:

    unknown option "-state"
    unknown option "-state"
        while executing
    ".bar.view entryconf 3 -state [expr {$n == 0? "disabled": "normal"}]"
        (procedure "showview" line 56)
        invoked from within
    "showview 0"
        (menu invoke)

Perhaps a similar fix is needed in other parts of the code.  

+ seth