summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDominik Riebeling <Dominik.Riebeling@gmail.com>2011-06-19 15:43:41 +0000
committerDominik Riebeling <Dominik.Riebeling@gmail.com>2011-06-19 15:43:41 +0000
commite9e0cf59085cb3b3d77c8a2962fd8b80ac4d0c9d (patch)
tree33f3f6ac491d86fdef94b9a1cd9d6bbda9bfabf5
parent8d9b9d247b7415f002fcc4253b4d0818e7f5fbaf (diff)
downloadrockbox-e9e0cf59085cb3b3d77c8a2962fd8b80ac4d0c9d.tar.gz
rockbox-e9e0cf59085cb3b3d77c8a2962fd8b80ac4d0c9d.zip
Manual: add search box to HTML output.
To allow easy searching the HTML (multi page) output add a search box that queries Google. The Google search will get restricted to the location the manual is stored. Google seems to happily accept a subfolder when specifying a domain to search. For this to work the search box has to be created dynamically with the help of a bit JavaScript. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30017 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--manual/Makefile.pdflatex1
-rw-r--r--manual/gsearch.js11
-rw-r--r--manual/rockbox-html.cfg11
3 files changed, 21 insertions, 2 deletions
diff --git a/manual/Makefile.pdflatex b/manual/Makefile.pdflatex
index b5e30dedf6..c351f82fb5 100644
--- a/manual/Makefile.pdflatex
+++ b/manual/Makefile.pdflatex
@@ -17,6 +17,7 @@ buildmanual: rockbox-build.tex pdf
17buildhtml: rockbox-build.tex 17buildhtml: rockbox-build.tex
18 @mkdir -p $(OBJDIR)/html 18 @mkdir -p $(OBJDIR)/html
19 @$(HTLATEX) $(DOCUMENT) "$(HTOPTS1),$(SPLITHTML)" $(HTOPTS2) $(HTOPTS3) 19 @$(HTLATEX) $(DOCUMENT) "$(HTOPTS1),$(SPLITHTML)" $(HTOPTS2) $(HTOPTS3)
20 @cp --parent `cat $(OBJDIR)/html/*.html | sed -e '/\.js/!d;s/.*\"\(.*\.js\)\".*/\1/g;/</d' | uniq` $(OBJDIR)/html
20 @cp --parent `cat $(OBJDIR)/html/*.html | sed -e '/[pj][np]g/!d;s/.*\"\(.*\.[pj][np]g\)\".*/\1/g;/</d'` $(OBJDIR)/html 21 @cp --parent `cat $(OBJDIR)/html/*.html | sed -e '/[pj][np]g/!d;s/.*\"\(.*\.[pj][np]g\)\".*/\1/g;/</d'` $(OBJDIR)/html
21 @cp -r $(OBJDIR)/html $(OBJDIR)/../ 22 @cp -r $(OBJDIR)/html $(OBJDIR)/../
22 23
diff --git a/manual/gsearch.js b/manual/gsearch.js
new file mode 100644
index 0000000000..9b5e3f7aa1
--- /dev/null
+++ b/manual/gsearch.js
@@ -0,0 +1,11 @@
1function gsearch() {
2 var expr=/(.*)\/([^/]+)$/;
3 var loc = expr.exec(window.location)[1];
4 document.getElementById("gsearch").innerHTML = ''
5 + '<form action="http://www.google.com/search">'
6 + 'Search this manual '
7 + '<input name="as_q" size="30">'
8 + '<input value="Google it" type="submit">'
9 + '<input type="hidden" name="as_sitesearch" value="' + loc + '">'
10 + '</form>';
11}
diff --git a/manual/rockbox-html.cfg b/manual/rockbox-html.cfg
index 284bcb36e4..2572125887 100644
--- a/manual/rockbox-html.cfg
+++ b/manual/rockbox-html.cfg
@@ -12,9 +12,16 @@ div.center { margin-left:auto; margin-right:auto; }
12.fancyvrb { background-color:\#c6d6f5; } 12.fancyvrb { background-color:\#c6d6f5; }
13table.multicols { width:95\%; margin-left:auto; margin-right:auto; text-align:justify; } 13table.multicols { width:95\%; margin-left:auto; margin-right:auto; text-align:justify; }
14.crosslinks { color:\#ffffff; text-align:center; background-color:\#6887bb; padding:8px; } 14.crosslinks { color:\#ffffff; text-align:center; background-color:\#6887bb; padding:8px; }
15div.crosslinks>p>a { color:\#ffffff; } 15div.crosslinks>a { color:\#ffffff; }
16hr { display:none; } 16hr { display:none; }
17} 17}
18\EndPreamble 18\EndPreamble
19\Configure{Link}{a}{href=}{name=}{} 19\Configure{Link}{a}{href=}{name=}{}
20 20\Configure{@HEAD}{\HCode{<script type="text/javascript" src="gsearch.js"></script>}}
21\Configure{BODY}{\HCode{<body onload="gsearch();">}}{\HCode{</body>}}
22\Configure{crosslinks*}{next}{up}{prev}{}
23\Configure{crosslinks+}%
24{\HCode{<div style='float:left;'><a href='http://www.rockbox.org'><img src='http://www.rockbox.org/rockbox100.png'/></a></div><div id='gsearch' style='float:right;'>Enable JavaScript to show search field.</div><div style='clear:both;' class='crosslinks'>}}%
25{\HCode{</div>}}%
26{\HCode{<div class='crosslinks'>}}%
27{\HCode{</div>}}