git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCH] instaweb: use minified gitweb.js if available
@ 2010-03-19  6:02 Mark Rada
  2010-03-19  7:36 ` Johannes Sixt
  0 siblings, 1 reply; 3+ messages in thread
From: Mark Rada @ 2010-03-19  6:02 UTC (permalink / raw
  To: git; +Cc: Junio C Hamano, Jakub Narebski

Makes git-instaweb use gitweb.min.js if it was generated.

Signed-off-by: Mark Rada <marada@uwaterloo.ca>

---
 Makefile        |   13 +++++++------
 git-instaweb.sh |    1 +
 2 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/Makefile b/Makefile
index 7c616f8..1677928 100644
--- a/Makefile
+++ b/Makefile
@@ -1551,12 +1551,12 @@ gitweb:
 	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) all
  ifdef JSMIN
-OTHER_PROGRAMS += gitweb/gitweb.cgi   gitweb/gitweb.min.js
-gitweb/gitweb.cgi: gitweb/gitweb.perl gitweb/gitweb.min.js
+GITWEB_JS=gitweb/gitweb.min.js
 else
-OTHER_PROGRAMS += gitweb/gitweb.cgi
-gitweb/gitweb.cgi: gitweb/gitweb.perl
+GITWEB_JS=gitweb/gitweb.js
 endif
+OTHER_PROGRAMS += gitweb/gitweb.cgi $(GITWEB_JS)
+gitweb/gitweb.cgi: gitweb/gitweb.perl $(GITWEB_PROGRAMS)
 	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) $(patsubst gitweb/%,%,$@)
  ifdef JSMIN
@@ -1574,12 +1574,13 @@ git-instaweb: git-instaweb.sh gitweb/gitweb.cgi gitweb/gitweb.css gitweb/gitweb.
 	    -e '/@@GITWEB_CGI@@/d' \
 	    -e '/@@GITWEB_CSS@@/r gitweb/gitweb.css' \
 	    -e '/@@GITWEB_CSS@@/d' \
-	    -e '/@@GITWEB_JS@@/r gitweb/gitweb.js' \
+	    -e '/@@GITWEB_JS@@/r $(GITWEB_JS)' \
 	    -e '/@@GITWEB_JS@@/d' \
 	    -e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
 	    $@.sh > $@+ && \
 	chmod +x $@+ && \
-	mv $@+ $@
+	mv $@+ $@ && \
+	sed -i '' -e 's/min\.js/js/' $@
 else # NO_PERL
 $(patsubst %.perl,%,$(SCRIPT_PERL)) git-instaweb: % : unimplemented.sh
 	$(QUIET_GEN)$(RM) $@ $@+ && \
diff --git a/git-instaweb.sh b/git-instaweb.sh
index 6a65f25..72f8c39 100755
--- a/git-instaweb.sh
+++ b/git-instaweb.sh
@@ -397,6 +397,7 @@ EOFGITWEB
 gitweb_js () {
 	cat > "$1" <<\EOFGITWEB
 @@GITWEB_JS@@
+
 EOFGITWEB
 }
 -- 1.7.0.1.300.gd855a

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH] instaweb: use minified gitweb.js if available
  2010-03-19  6:02 [PATCH] instaweb: use minified gitweb.js if available Mark Rada
@ 2010-03-19  7:36 ` Johannes Sixt
  2010-03-19 14:07   ` Mark Rada
  0 siblings, 1 reply; 3+ messages in thread
From: Johannes Sixt @ 2010-03-19  7:36 UTC (permalink / raw
  To: Mark Rada; +Cc: git, Junio C Hamano, Jakub Narebski

Mark Rada schrieb:
> --- a/Makefile
> +++ b/Makefile
> @@ -1551,12 +1551,12 @@ gitweb:
>  	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) all
>   ifdef JSMIN
> -OTHER_PROGRAMS += gitweb/gitweb.cgi   gitweb/gitweb.min.js
> -gitweb/gitweb.cgi: gitweb/gitweb.perl gitweb/gitweb.min.js
> +GITWEB_JS=gitweb/gitweb.min.js
>  else
> -OTHER_PROGRAMS += gitweb/gitweb.cgi
> -gitweb/gitweb.cgi: gitweb/gitweb.perl
> +GITWEB_JS=gitweb/gitweb.js
>  endif
> +OTHER_PROGRAMS += gitweb/gitweb.cgi $(GITWEB_JS)
> +gitweb/gitweb.cgi: gitweb/gitweb.perl $(GITWEB_PROGRAMS)
>  	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) $(patsubst gitweb/%,%,$@)
>   ifdef JSMIN
> @@ -1574,12 +1574,13 @@ git-instaweb: git-instaweb.sh gitweb/gitweb.cgi gitweb/gitweb.css gitweb/gitweb.
>  	    -e '/@@GITWEB_CGI@@/d' \
>  	    -e '/@@GITWEB_CSS@@/r gitweb/gitweb.css' \
>  	    -e '/@@GITWEB_CSS@@/d' \
> -	    -e '/@@GITWEB_JS@@/r gitweb/gitweb.js' \
> +	    -e '/@@GITWEB_JS@@/r $(GITWEB_JS)' \
>  	    -e '/@@GITWEB_JS@@/d' \
>  	    -e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
>  	    $@.sh > $@+ && \
>  	chmod +x $@+ && \
> -	mv $@+ $@
> +	mv $@+ $@ && \
> +	sed -i '' -e 's/min\.js/js/' $@

sed -i is not portable. But do you need it at all? Can't you add this
change to the -e list above?

> --- a/git-instaweb.sh
> +++ b/git-instaweb.sh
> @@ -397,6 +397,7 @@ EOFGITWEB
>  gitweb_js () {
>  	cat > "$1" <<\EOFGITWEB
>  @@GITWEB_JS@@
> +
>  EOFGITWEB
>  }
>  -- 1.7.0.1.300.gd855a

This new blank line is an accident, isn't it?

-- Hannes

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH] instaweb: use minified gitweb.js if available
  2010-03-19  7:36 ` Johannes Sixt
@ 2010-03-19 14:07   ` Mark Rada
  0 siblings, 0 replies; 3+ messages in thread
From: Mark Rada @ 2010-03-19 14:07 UTC (permalink / raw
  To: Johannes Sixt; +Cc: git, Junio C Hamano, Jakub Narebski

On 10-03-19 3:36 AM, Johannes Sixt wrote:
> Mark Rada schrieb:
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -1551,12 +1551,12 @@ gitweb:
>>  	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) all
>>   ifdef JSMIN
>> -OTHER_PROGRAMS += gitweb/gitweb.cgi   gitweb/gitweb.min.js
>> -gitweb/gitweb.cgi: gitweb/gitweb.perl gitweb/gitweb.min.js
>> +GITWEB_JS=gitweb/gitweb.min.js
>>  else
>> -OTHER_PROGRAMS += gitweb/gitweb.cgi
>> -gitweb/gitweb.cgi: gitweb/gitweb.perl
>> +GITWEB_JS=gitweb/gitweb.js
>>  endif
>> +OTHER_PROGRAMS += gitweb/gitweb.cgi $(GITWEB_JS)
>> +gitweb/gitweb.cgi: gitweb/gitweb.perl $(GITWEB_PROGRAMS)
>>  	$(QUIET_SUBDIR0)gitweb $(QUIET_SUBDIR1) $(patsubst gitweb/%,%,$@)
>>   ifdef JSMIN
>> @@ -1574,12 +1574,13 @@ git-instaweb: git-instaweb.sh gitweb/gitweb.cgi gitweb/gitweb.css gitweb/gitweb.
>>  	    -e '/@@GITWEB_CGI@@/d' \
>>  	    -e '/@@GITWEB_CSS@@/r gitweb/gitweb.css' \
>>  	    -e '/@@GITWEB_CSS@@/d' \
>> -	    -e '/@@GITWEB_JS@@/r gitweb/gitweb.js' \
>> +	    -e '/@@GITWEB_JS@@/r $(GITWEB_JS)' \
>>  	    -e '/@@GITWEB_JS@@/d' \
>>  	    -e 's|@@PERL@@|$(PERL_PATH_SQ)|g' \
>>  	    $@.sh > $@+ && \
>>  	chmod +x $@+ && \
>> -	mv $@+ $@
>> +	mv $@+ $@ && \
>> +	sed -i '' -e 's/min\.js/js/' $@
> 
> sed -i is not portable. But do you need it at all? Can't you add this
> change to the -e list above?

Hmm, the reason I made the change in a separate command was that
the only place that min.js needed to be modified was in gitweb.cgi
and only after it has been copied into git-instaweb.

We want to leave the actual gitweb.cgi as using gitweb.min.js, but
the way instaweb creates the gitweb directory makes it create a
gitweb.js no matter what (this is a bug if you create a minified
gitweb.js because gitweb.cgi will look for a non-existant
gitweb.min.js).

I figured that the smallest solution was to just edit the copied
gitweb.cgi to use gitweb.js again, but since it is not portable I
will have to either have messier code to do the same thing or
make git-instaweb change the name of gitweb.js only in the case
that we are using a minified gitweb.js.

Since I see no advantage or disadvantage to either, I'll flip a
coin to decide this later on when I have some time.


>> --- a/git-instaweb.sh
>> +++ b/git-instaweb.sh
>> @@ -397,6 +397,7 @@ EOFGITWEB
>>  gitweb_js () {
>>  	cat > "$1" <<\EOFGITWEB
>>  @@GITWEB_JS@@
>> +
>>  EOFGITWEB
>>  }
>>  -- 1.7.0.1.300.gd855a
> 
> This new blank line is an accident, isn't it?

Nope, this new line is here because the minifier I used cut the
extra new line from the end of gitweb.js and then the EOFGITWEB
token ended up on the same line as gitweb.js.

> -- Hannes
> 
> --
> To unsubscribe from this list: send the line "unsubscribe git" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


-- 
Mark Rada (ferrous26)
marada@uwaterloo.ca

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2010-03-19 14:12 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-03-19  6:02 [PATCH] instaweb: use minified gitweb.js if available Mark Rada
2010-03-19  7:36 ` Johannes Sixt
2010-03-19 14:07   ` Mark Rada

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).