From: J.H. Date: Wed, 16 Mar 2011 22:48:47 GMT Subject: Re: [PATCH] gitweb: highlight: replace tabs with spaces Message-ID: <4D813E4F.1030304@eaglescrag.net> In-Reply-To: <6ac7d48cfdf4192c3240c1ecbd4e5522@localhost> On 03/16/2011 03:34 PM, Kevin Cernekee wrote: > Consider the following code fragment: > > /* > * test > */ > > vim ":set list" mode shows that the first character on each line is a > tab: > > ^I/*$ > ^I * test$ > ^I */$ > > By default, the "highlight" program will retain the tabs in the HTML > output: > > $ highlight --fragment --syntax c test.c > /* > * test > */ > > vim list mode: > > ^I/*$ > ^I * test$ > ^I */$ > > In gitweb, this winds up looking something like: > > 1 /* > 2 * test > 3 */ > > I tried both Firefox and Opera and saw the same behavior. > > The desired output is: > > 1 /* > 2 * test > 3 */ > > This can be accomplished by specifying "--replace-tabs=8" on the > highlight command line. > > Signed-off-by: Kevin Cernekee > --- > gitweb/gitweb.perl | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/gitweb/gitweb.perl b/gitweb/gitweb.perl > index d171ad5..649e10a 100755 > --- a/gitweb/gitweb.perl > +++ b/gitweb/gitweb.perl > @@ -3485,7 +3485,7 @@ sub run_highlighter { > close $fd; > open $fd, quote_command(git_cmd(), "cat-file", "blob", $hash)." | ". > quote_command($highlight_bin). > - " --fragment --syntax $syntax |" > + " --replace-tabs=8 --fragment --syntax $syntax |" > or die_error(500, "Couldn't open file or run syntax highlighter"); > return $fd; > } Looks fine to me. - John 'Warthog9' Hawley