On 17/09/11 21:26, Chris Packham wrote: > Hi, > > On 17/09/11 14:29, Jeff Epler wrote: >> Some time ago I hardcoded this into gitk for $DAY_JOB and find it very >> useful. I made it configurable in the hopes that it might be adopted >> upstream. (unfortunately, the configurable version is radically >> different from the original hard-coded version, so I can't say this >> has had much testing yet) > > This is definitely something folks at my $dayjob would be interested in. > We've already done some customisation of gitweb to do something similar. > I'm not actually sure what the changes where or how configurable they > are. I'll see if I can dig them out on Monday someone else might want to > polish them into something suitable (I might do it myself if I get some > tuits). > >> The definition of the allowed regular expression in the docs >> probably needs some refinement. Basically, they have to also be REs >> that can be concatenated with the "|" character, which is not true >> of REs that begin with the *** flavor selector (which I had not >> heard of before rereading `man re_syntax` just now) or (?xyz) >> embedded options. Or maybe there's an efficient alternate approach >> to scanning for the next non-overlapping match among several >> patterns that doesn't involve concatenating the patterns. >> >> I'm not sure about the "one line" restriction; at first I thought >> that everything was fed to 'appendwithlinks' in arbitrary chunks, >> but not I see that they are mostly logical chunks (and probably only >> the comment, not the headers or commit descriptors, will have >> anything to linkify). The problem again seems to be how to succinctly >> describe what is permitted. > > For my use case the one line restriction is fine. We tend to put the bug > number in the headline anyway. > > Sometimes when a commit fixes multiple bugs we put all the bug numbers > in separated by commas. I don't know Tcl well enough to tell if your > code supports that or not. > >> There are probably better names for the configuration options, too. > > It'd be nice if the config variables weren't gitk specific. .re and .sub > could be applied to gitweb and maybe other git viewers outside of > gig.git might decide to use them. My bikeshedding suggestion would be to > just drop the gitk prefix and have linkify.re and linkify.sub. That should be linkify.<name>.re and linkify.<name>.sub >> Suggestions? Problems? Successes? > > Re-compiling now. I won't be able to actually test it properly until I'm > back in the office but I can at least check that the links are generated. Slight complication. The URL of our bug tracker has an ampersand '&' in it. Tcl's substitution does what one might expect and puts the matched text where the '&' is. I've tried using url friendly %26 but something eats the %. I've also tried backslashes to no avail. To answer my own question since I started writing this email I've found that using %% works (only the first one gets eaten). Not sure if that's expected behaviour or not (printf escaping maybe?). Also since I've been playing around I've tried a commit with multiple bug numbers on one line and that works as expected. Thanks Chris -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html