source: stylesheets/lfs-xsl/docbook-xsl-1.78.1/webhelp/docs/ch03s02.html@ b1a51ac1

7.5-systemd 7.6-systemd 7.7-systemd 7.8-systemd 7.9-systemd
Last change on this file since b1a51ac1 was b1a51ac1, checked in by Krejzi <krejzi@…>, 11 years ago

Import new branch

git-svn-id: http://svn.linuxfromscratch.org/LFS/branches/systemd/BOOK@10389 4aa44e1e-78dd-0310-a6d2-fbcd4c07a689

  • Property mode set to 100644
File size: 15.4 KB
Line 
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml"><head>
3<meta http-equiv="X-UA-Compatible" content="IE=edge"></meta>
4<meta http-equiv="Content-Type" content="text/html; charset=utf-8"></meta>
5<title>Search - - README: Web-based Help from DocBook XML</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"></meta><link rel="home" href="index.html" title="README: Web-based Help from DocBook XML"></link><link rel="up" href="ch03.html" title="Developer Docs"></link><link rel="prev" href="ch03s01.html" title="Design"></link><link rel="next" href="ch03s02s01.html" title="New Stemmers"></link><meta name="Section-title" content="Search"></meta><script type="text/javascript">
6 //The id for tree cookie
7 var treeCookieId = "treeview-1102";
8 var language = "en";
9 var w = new Object();
10 //Localization
11 txt_filesfound = 'Results';
12 txt_enter_at_least_1_char = "You must enter at least one character.";
13 txt_browser_not_supported = "JavaScript is disabled on your browser. Please enable JavaScript to enjoy all the features of this site.";
14 txt_please_wait = "Please wait. Search in progress...";
15 txt_results_for = "Results for: ";
16 </script><link rel="shortcut icon" href="favicon.ico" type="image/x-icon"></link><link rel="stylesheet" type="text/css" href="common/css/positioning.css"></link><link rel="stylesheet" type="text/css" href="common/jquery/theme-redmond/jquery-ui-1.8.2.custom.css"></link><link rel="stylesheet" type="text/css" href="common/jquery/treeview/jquery.treeview.css"></link><style type="text/css">
17
18#noscript{
19 font-weight:bold;
20 background-color: #55AA55;
21 font-weight: bold;
22 height: 25spx;
23 z-index: 3000;
24 top:0px;
25 width:100%;
26 position: relative;
27 border-bottom: solid 5px black;
28 text-align:center;
29 color: white;
30}
31
32input {
33 margin-bottom: 5px;
34 margin-top: 2px;
35}
36.folder {
37 display: block;
38 height: 22px;
39 padding-left: 20px;
40 background: transparent url(common/jquery/treeview/images/folder.gif) 0 0px no-repeat;
41}
42span.contentsTab {
43 padding-left: 20px;
44 background: url(common/images/toc-icon.png) no-repeat 0 center;
45}
46span.searchTab {
47 padding-left: 20px;
48 background: url(common/images/search-icon.png) no-repeat 0 center;
49}
50
51/* Overide jquery treeview's defaults for ul. */
52.treeview ul {
53 background-color: transparent;
54 margin-top: 4px;
55}
56#webhelp-currentid {
57 background-color: #D8D8D8 !important;
58}
59.treeview .hover { color: black; }
60.filetree li span a { text-decoration: none; font-size: 12px; color: #517291; }
61
62/* Override jquery-ui's default css customizations. These are supposed to take precedence over those.*/
63.ui-widget-content {
64 border: 0px;
65 background: none;
66 color: none;
67}
68.ui-widget-header {
69 color: #e9e8e9;
70 border-left: 1px solid #e5e5e5;
71 border-right: 1px solid #e5e5e5;
72 border-bottom: 1px solid #bbc4c5;
73 border-top: 4px solid #e5e5e5;
74 border: medium none;
75 background: #F4F4F4; /* old browsers */
76 background: -moz-linear-gradient(top, #F4F4F4 0%, #E6E4E5 100%); /* firefox */
77 background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#F4F4F4), color-stop(100%,#E6E4E5)); /* webkit */
78 font-weight: none;
79}
80.ui-widget-header a { color: none; }
81.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
82border: none; background: none; font-weight: none; color: none; }
83.ui-state-default a, .ui-state-default a:link, .ui-state-default a:visited { color: black; text-decoration: none; }
84.ui-state-hover, .ui-widget-content .ui-state-hover, .ui-widget-header .ui-state-hover, .ui-state-focus, .ui-widget-content .ui-state-focus, .ui-widget-header .ui-state-focus { border: none; background: none; font-weight: none; color: none; }
85
86.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active { border: none; background: none; font-weight: none; color: none; }
87.ui-state-active a, .ui-state-active a:link, .ui-state-active a:visited {
88 color: black; text-decoration: none;
89 background: #C6C6C6; /* old browsers */
90 background: -moz-linear-gradient(top, #C6C6C6 0%, #D8D8D8 100%); /* firefox */
91 background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#C6C6C6), color-stop(100%,#D8D8D8)); /* webkit */
92 -webkit-border-radius:15px; -moz-border-radius:10px;
93 border: 1px solid #f1f1f1;
94}
95.ui-corner-all { border-radius: 0 0 0 0; }
96
97.ui-tabs { padding: .2em;}
98.ui-tabs .ui-tabs-nav li { top: 0px; margin: -2px 0 1px; text-transform: uppercase; font-size: 10.5px;}
99.ui-tabs .ui-tabs-nav li a { padding: .25em 2em .25em 1em; margin: .5em; text-shadow: 0 1px 0 rgba(255,255,255,.5); }
100 /**
101 * Basic Layout Theme
102 *
103 * This theme uses the default layout class-names for all classes
104 * Add any 'custom class-names', from options: paneClass, resizerClass, togglerClass
105 */
106
107 .ui-layout-pane { /* all 'panes' */
108 background: #FFF;
109 border: 1px solid #BBB;
110 padding: 05x;
111 overflow: auto;
112 }
113
114 .ui-layout-resizer { /* all 'resizer-bars' */
115 background: #DDD;
116 top:100px
117 }
118
119 .ui-layout-toggler { /* all 'toggler-buttons' */
120 background: #AAA;
121 }
122
123 </style><!--[if IE]>
124 <link rel="stylesheet" type="text/css" href="../common/css/ie.css"/>
125 <![endif]--><script type="text/javascript" src="common/browserDetect.js"></script><script type="text/javascript" src="common/jquery/jquery-1.7.2.min.js"></script><script type="text/javascript" src="common/jquery/jquery.ui.all.js"></script><script type="text/javascript" src="common/jquery/jquery.cookie.js"></script><script type="text/javascript" src="common/jquery/treeview/jquery.treeview.min.js"></script><script type="text/javascript" src="common/jquery/layout/jquery.layout.js"></script><script type="text/javascript" src="search/l10n.js"></script><script type="text/javascript" src="search/htmlFileInfoList.js"></script><script type="text/javascript" src="search/nwSearchFnt.js"></script><script type="text/javascript" src="search/stemmers/en_stemmer.js"><!--//make this scalable to other languages as well.--></script><script type="text/javascript" src="search/index-1.js"></script><script type="text/javascript" src="search/index-2.js"></script><script type="text/javascript" src="search/index-3.js"></script></head><body><noscript><div id="noscript">JavaScript is disabled on your browser. Please enable JavaScript to enjoy all the features of this site.</div></noscript><div id="header"><a href="index.html"><img style="margin-right: 2px; height: 59px; padding-right: 25px; padding-top: 8px" align="right" src="common/images/logo.png" alt=" Documentation"></img></a><h1>README: Web-based Help from DocBook XML<br></br>Developer Docs</h1><div id="navheader"><table class="navLinks"><tr><td><a id="showHideButton" href="#" onclick="myLayout.toggle('west')" class="pointLeft" tabindex="5" title="Hide TOC tree">Sidebar
126 </a></td><td><a accesskey="p" class="navLinkPrevious" tabindex="5" href="ch03s01.html">Prev</a>
127 |
128 <a accesskey="u" class="navLinkUp" tabindex="5" href="ch03.html">Up</a>
129 |
130 <a accesskey="n" class="navLinkNext" tabindex="5" href="ch03s02s01.html">Next</a></td></tr></table></div></div><div id="content"><div class="section"><div xmlns="" class="titlepage"><div><div><h2 xmlns="http://www.w3.org/1999/xhtml" class="title" style="clear: both"><a id="idp282832"></a>Search</h2></div></div></div>
131<div class="toc"><dl class="toc"><dt><span class="section"><a href="ch03s02s01.html">New Stemmers</a></span></dt></dl></div><p class="summary">Overview design of Search mechanism.</p><p>The serching is a fully client-side implementation of querying texts for content
132 searching. There's no server involved. So, the search queries by the users are processed by
133 JavaScript inside the browser, and displays the matching results by comparing the query with
134 a simplified 'index' that too resides in JavaScript. Mainly the search mechanism has two
135 parts. </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Indexing: First we need to traverse the content in
136 the docs folder and index the words in it. This is done
137 by <code class="filename">webhelpindexer.jar</code> in
138 <code class="filename">xsl/extentions/</code> folder. You can
139 invoke it by <code class="code">ant index</code> command from the
140 root of webhelp of directory. The source of
141 webhelpindexer is now moved to it's own location at
142 <code class="filename">trunk/xsl-webhelpindexer/</code>.
143 Checkout the Docbook trunk svn directory to get this
144 source. Then, do your changes and recompile it by simply
145 running <code class="code">ant</code> command. My assumption is that
146 it can be opened by Netbeans IDE by one click. Or if you
147 are using IntelliJ Idea, you can simply create a new
148 project from existing sources. Indexer has extensive
149 support for features such as word scoring, stemming of
150 words, and support for languages English, German,
151 French. For CJK (Chinese, Japanese, Korean) languages,
152 it uses bi-gram tokenizing to break up the words (since
153 CJK languages does not have spaces between
154 words).</p><p> When <code class="code">ant index</code> is run, it generates five output files: </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem"><p><code class="filename">htmlFileList.js</code> - This contains an array named
155 <code class="code">fl</code> which stores details all the files indexed by the indexer.
156 Further, the doStem in it defines whether stemming should be used. It defaults
157 to false.</p></li><li class="listitem"><p><code class="filename">htmlFileInfoList.js</code> -
158 This includes some meta data about the indexed
159 files in an array named <code class="code">fil</code>. It
160 includes details about file name, file (html)
161 title, a summary of the content. Format would look
162 like, <code class="code">fil["4"]= "ch03.html@@@Developer
163 Docs@@@This chapter provides an overview of how
164 webhelp is implemented.";</code>
165 </p></li><li class="listitem"><p><code class="filename">index-*.js</code> (Three index files) - These three files
166 actually stores the index of the content. Index is added to an array named
167 <code class="code">w</code>.</p></li></ul></div></li><li class="listitem"><p> Querying: Query processing happens totally in client side. Following JavaScript
168 files handles them. </p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: circle; "><li class="listitem"><p><code class="filename">nwSearchFnt.js</code> - This handles the user query and
169 returns the search results. It does query word tokenizing, drop unnecessary
170 punctuations and common words, do stemming if docbook language supports it,
171 etc.</p></li><li class="listitem"><p><code class="filename">{$indexer-language-code}_stemmer.js</code> - This includes the
172 stemming library. <code class="filename">nwSearchFnt.js</code> file calls
173 <code class="code">stemmer</code> method in this file for stemming. ex: <code class="code">var stem =
174 stemmer(foobar);</code>
175 </p></li></ul></div><p>
176 </p></li></ul></div><p>
177 <a id="idp304304" class="indexterm"></a></p></div><script type="text/javascript" src="common/main.js"></script><script type="text/javascript" src="common/splitterInit.js"></script><div class="navfooter"><hr></hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s01.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03s02s01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> </td></tr></table></div></div><div id="sidebar"><div id="leftnavigation" style="padding-top:3px;"><div id="tabs"><ul><li><a href="#treeDiv" style="outline:0;" tabindex="1"><span class="contentsTab">Contents</span></a></li><li><a href="#searchDiv" style="outline:0;" tabindex="1" onclick="doSearch()"><span class="searchTab">Search</span></a></li></ul><div id="treeDiv"><img src="common/images/loading.gif" alt="loading table of contents..." id="tocLoading" style="display:block;"></img><div id="ulTreeDiv" style="display:none"><ul id="tree" class="filetree"><li><span class="file"><a href="ch01.html" tabindex="1">Introduction</a></span></li><li><span class="file"><a href="ch02.html" tabindex="1">Using the package</a></span><ul><li><span class="file"><a href="ch02s01.html" tabindex="1">Generating webhelp output using the Ant build.xml
178 file</a></span></li><li><span class="file"><a href="ch02s02.html" tabindex="1">Using and customizing the output</a></span><ul><li><span class="file"><a href="ch02s02s01.html" tabindex="1">Recommended Apache configurations</a></span></li></ul></li><li><span class="file"><a href="ch02s03.html" tabindex="1">Search indexing</a></span></li><li><span class="file"><a href="ch02s04.html" tabindex="1">Adding support for other (non-CJKV) languages</a></span></li><li><span class="file"><a href="ch02s05.html" tabindex="1">Adding images</a></span></li></ul></li><li><span class="file"><a href="ch03.html" tabindex="1">Developer Docs</a></span><ul><li><span class="file"><a href="ch03s01.html" tabindex="1">Design</a></span></li><li id="webhelp-currentid"><span class="file"><a href="ch03s02.html" tabindex="1">Search</a></span><ul><li><span class="file"><a href="ch03s02s01.html" tabindex="1">New Stemmers</a></span></li></ul></li></ul></li><li><span class="file"><a href="ch04.html" tabindex="1">FAQ</a></span></li><li><span class="file"><a href="ch05.html" tabindex="1">Test section</a></span><ul><li><span class="file"><a href="ch05s01.html" tabindex="1">Some search words for testing</a></span></li><li><span class="file"><a href="ch05s02.html" tabindex="1">Some search words for testing (inflected)</a></span></li></ul></li><li><span class="file"><a href="ix01.html" tabindex="1">Index</a></span></li></ul></div></div><div id="searchDiv"><div id="search"><form onsubmit="Verifie(searchForm);return false" name="searchForm" class="searchForm"><div><input id="textToSearch" name="textToSearch" type="search" placeholder="Search" class="searchText" tabindex="1"></input> &nbsp; <input onclick="Verifie(searchForm)" type="button" class="searchButton" value="Go" id="doSearch" tabindex="1"></input></div></form></div><div id="searchResults"><center></center></div><p class="searchHighlight"><a href="#" onclick="toggleHighlight()">Search Highlighter (On/Off)</a></p></div></div></div></div></body></html>
Note: See TracBrowser for help on using the repository browser.