Diff for /bookmarktools/www/documentation.html between versions 1.10 and 1.20

version 1.10, 2009/02/05 21:34:52 version 1.20, 2009/02/28 08:30:54
Line 1 Line 1
<!-- MAIN CONTENT --><?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
   
<table border="0" cellspacing="1" cellpadding="1"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
        <thead><th align="left"><h2>Content:</h2></th></thead>        <head>
        <tbody>                <title>Bookmark Tools</title>
                <tr>                <link rel="stylesheet" href="project.css" type="text/css" />
                        <td> 
                                <ul> 
                                        <li><strong>USER GUIDE</strong></li> 
                                        <li><strong>XPCOM</strong> 
                                                <ul> 
                                                        <li><a href="#HowToIndex">HowTo use the index component</a></li> 
                                                        <li><a href="#HowToTidy">HowTo use the tidy component</a></li> 
                                            </ul> 
                                        </li> 
                                        <li><strong>OTHER</strong></li> 
                                </ul> 
                        </td> 
                </tr> 
        </tbody> 
</table> 
 
<br /> 
 
<h2><a name="HowToIndex">HowTo use the index component (uses clucene-core-0.9.20)</a></h2> 
<h3>Writing::</h3> 
<pre class="brush: js"> 
 
        //initialize file object (location: profile directory) 
        var file = Components.classes["@mozilla.org/file/directory_service;1"] 
                                .getService(Components.interfaces.nsIProperties) 
                                .get("ProfD", Components.interfaces.nsIFile); 
 
        file.append("index"); //folder named 'index' 
         
        if(!file.exists() || !file.isDirectory())  
                file.create(Components.interfaces.nsIFile.DIRECTORY_TYPE, 0777); 
 
        //initialize xpcom 
        var writer = Components.classes["@bookmarktools.mozdev.org/search/indexWriter;1"].createInstance(); 
        writer = writer.QueryInterface(Components.interfaces.ICLWriter); 
         
        //set path 
        writer.setPath(file.path); 
         
        //create index document 
        var cl_document = new Object(); 
        cl_document.primaryKey = "key0";                                                //this shoud be a unique key 
        cl_document.name = "CLucene Indexer";                                   //document name 
        cl_document.lastModifiedDate = new Date().getTime();    //date in millis 
        cl_document.content = "Hello World!";                                   //some content 
         
        //append document 
        writer.appendDocument( 
                cl_document.primaryKey, 
                cl_document.name, 
                cl_document.lastModifiedDate, 
                cl_document.content 
        ); 
         
        //optimize data 
        writer.optimize(); 
         
</pre> 
 
<h3>Searching::</h3> 
<pre class="brush: js"> 
 
        //initialize xpcom 
        var reader = Components.classes["@bookmarktools.mozdev.org/search/indexReader;1"].createInstance(); 
        reader = reader.QueryInterface(Components.interfaces.ICLReader); 
         
        //set path 
        reader.setPath(file.path); //see section 'Writing' 
         
        if(reader.exists()){ //check for index data 
                                   
                var query = "Hell*";                <meta http-equiv="Content-Type" content="text/html" />
                var results = Components.classes["@mozilla.org/array;1"]                <meta content="text/css" http-equiv="Content-Style-Type" />
                                                .createInstance(Components.interfaces.nsIMutableArray); 
                reader.search(query, results); 
                                   
                var e = results.enumerate();                <script type="text/javascript" src="scripts/shCore.js"></script>
                while (e.hasMoreElements()) {                <script type="text/javascript" src="scripts/shBrushBash.js"></script>
                        var resultNode = e.getNext().QueryInterface(Components.interfaces.IResultNode);                <script type="text/javascript" src="scripts/shBrushCpp.js"></script>
                        
                        //Object: resultNode                <script type="text/javascript" src="scripts/shBrushCSharp.js"></script>
                        //-> resultNode.primaryKey                <script type="text/javascript" src="scripts/shBrushCss.js"></script>
                        //-> resultNode.score                <script type="text/javascript" src="scripts/shBrushDelphi.js"></script>
                        alert(resultNode.primaryKey + "\n" + resultNode.score);                <script type="text/javascript" src="scripts/shBrushDiff.js"></script>
                }                <script type="text/javascript" src="scripts/shBrushGroovy.js"></script>
                 <script type="text/javascript" src="scripts/shBrushJava.js"></script>
 
                 <script type="text/javascript" src="scripts/shBrushJScript.js"></script>
                 <script type="text/javascript" src="scripts/shBrushPhp.js"></script>
                 <script type="text/javascript" src="scripts/shBrushPlain.js"></script>
                 <script type="text/javascript" src="scripts/shBrushPython.js"></script>
                 <script type="text/javascript" src="scripts/shBrushRuby.js"></script>
                 <script type="text/javascript" src="scripts/shBrushScala.js"></script>
 
                 <script type="text/javascript" src="scripts/shBrushSql.js"></script>
                 <script type="text/javascript" src="scripts/shBrushVb.js"></script>
                 <script type="text/javascript" src="scripts/shBrushXml.js"></script>
                                   
        }else {                <link type="text/css" rel="stylesheet" href="styles/shCore.css"/>
                //display message or do nothing                <link type="text/css" rel="stylesheet" href="styles/shThemeDefault.css"/>
        } 
         
</pre> 
 
<h3>Lookup::</h3> 
<pre class="brush: js"> 
 
        //initialize xpcom 
        var reader = Components.classes["@bookmarktools.mozdev.org/search/indexReader;1"].createInstance(); 
        reader = reader.QueryInterface(Components.interfaces.ICLReader); 
         
        //set path 
        reader.setPath(file.path); //see section 'Writing' 
         
        var results = Components.classes["@mozilla.org/array;1"] 
                                        .createInstance(Components.interfaces.nsIMutableArray); 
        reader.lookup(results); 
         
        var e = results.enumerate(); 
        while (e.hasMoreElements()) { 
                var lookupNode = e.getNext().QueryInterface(Components.interfaces.ILookupNode); 
                                   
                //Object: lookupNode                <script type="text/javascript">
                //-> lookupNode.primaryKey                        SyntaxHighlighter.config.clipboardSwf = 'scripts/clipboard.swf';
                //-> lookupNode.name                        SyntaxHighlighter.all();
                alert(lookupNode.primaryKey + "\n" + lookupNode.name);                </script>
        }        </head>
        <body>
</pre>                <table style="width: 100%;">
                        <tbody>
<h3>Delete documents::</h3>                                <tr>
<pre class="brush: js">                                        <td>
                                                <div id="main">
        //initialize xpcom                                                        <div id="menu-container">
        var writer = Components.classes["@bookmarktools.mozdev.org/search/indexWriter;1"].createInstance();                                                                <a href="http://www.mozdev.org" title="mozdev.org - free project hosting for the mozilla community">
        writer = writer.QueryInterface(Components.interfaces.ICLWriter);                                                                        <img src="http://www.mozdev.org/sharedimages/mozdev_tiny.png" width="80" height="15" alt="mozdev.org" />
                                                                        </a>
        //set path                                                                <div id="project-head">Bookmark Tools</div>
        writer.setPath(file.path); //see section 'Writing'                                                                <div id="project-desc">Developer <a class="simpleLink" href="mailto:maik.gollnick@gmx.de">Maik Gollnick</a></div>
                                                                        <ul id="simple-menu">
        //delete documents with index 0, 5 and 2                                                                        <li><a href="index.html" title="Home">Home</a></li>
        var docs = [0, 5, 2];                                                                        <li><a href="installation.html" title="Download">Download</a></li>
        writer.deleteDocument(docs, docs.length);                                                                        <li><a href="documentation.html" title="Documentation" class="current">Documentation</a></li>
                                                                        <li><a href="source.html" title="Source Code">Source Code</a></li>
</pre>                                                                        <li><a href="bugs.html" title="Bugs">Bugs</a></li>
                                                                        <li><a href="screenshots.html" title="Screenshots">Screenshots</a></li>
<br />                                                                        <li style="float: right;"><div style="color: black;">Hits: <?php include ('counter.php'); ?></div></li>
                                                                </ul>
<h2><a name="HowToTidy">HowTo use the tidy component (uses ctidy version 060405)</a></h2>                                                        </div>
<h3>Cleanup::</h3>                                                        <div id="menu-line"></div>
<pre class="brush: js">                                                        
                                                        <div id="content">
        //initialize xpcom                                                                
        var tidy = Components.classes["@bookmarktools.mozdev.org/repair/tidy;1"].createInstance();                                                                <div>
        tidy = tidy.QueryInterface(Components.interfaces.ITidy);                                                                        <h3><a name="Content">Content:</a></h3>
                                                                                <ul>
        var src = "                                                                                <li><strong>USER GUIDE</strong></li>
        &lt;html&gt;                                                                                <li><strong>XPCOM</strong>
                &lt;head&gt;&lt;/head&gt;                                                                                        <ul>
                &lt;body                                                                                                <li><a class="simpleLink" href="#HowToIndex">HowTo use the index component</a></li>
                        broken body tag & no entity                                                                                                <li><a class="simpleLink" href="#HowToTidy">HowTo use the tidy component</a></li>
                &lt;/body&gt;                                                                                        </ul>
        &lt;/html>";                                                                                </li>
                                                                                        <li><strong>OTHER</strong></li>
        //result contains the repaired html/xhtml/xml source                                                                        </ul>
        //otherwise a error message returned                                                                        <br />
        var result = tidy.cleanup(src);                                                                </div>
        
        if(result == "Tidy: no output"){                                                                <div class="separator"></div>
                alert("error returned");                                                                        
        }else {                                                                <br />
                alert(src);
        }                                                                <h3><a href="#Content"><img src="./images/back.png" alt="back" title="back" /></a><a name="HowToIndex">HowTo use the index component (uses clucene-core-0.9.20)</a></h3>
                                                                        <h4>Writing::</h4>
</pre>                                                                <pre class="brush: js font-size: 80%">
                                                                         //initialize file object (location: profile directory)
                                                                         var file = Components.classes["@mozilla.org/file/directory_service;1"]
                                                                                                 .getService(Components.interfaces.nsIProperties)
                                                                                                 .get("ProfD", Components.interfaces.nsIFile);
 
                                                                         file.append("index"); //folder named 'index'
                                                                         
                                                                         if(!file.exists() || !file.isDirectory()) 
                                                                                 file.create(Components.interfaces.nsIFile.DIRECTORY_TYPE, 0777);
 
                                                                         //initialize xpcom
                                                                         var writer = Components.classes["@bookmarktools.mozdev.org/search/indexWriter;1"].createInstance();
                                                                         writer = writer.QueryInterface(Components.interfaces.ICLWriter);
                                                                         
                                                                         //set path
                                                                         writer.setPath(file.path);
                                                                         
                                                                         //create index document
                                                                         var cl_document = new Object();
                                                                         cl_document.primaryKey = "key0";                                                //this shoud be a unique key
                                                                         cl_document.name = "first document";                                    //document name
                                                                         cl_document.content = "Hello World!";                                   //some content
                                                                         
                                                                         //append document
                                                                         writer.appendDocument(
                                                                                 cl_document.primaryKey,
                                                                                 cl_document.name,
                                                                                 cl_document.content
                                                                         );
                                                                         
                                                                         //optimize data
                                                                         writer.optimize();
                                                                         
                                                                 </pre>
 
                                                                 <h4>Searching::</h4>
                                                                 <pre class="brush: js font-size: 80%">
 
                                                                         //initialize xpcom
                                                                         var reader = Components.classes["@bookmarktools.mozdev.org/search/indexReader;1"].createInstance();
                                                                         reader = reader.QueryInterface(Components.interfaces.ICLReader);
                                                                         
                                                                         //set path
                                                                         reader.setPath(file.path); //see section 'Writing'
                                                                         
                                                                         if(reader.exists()){ //check for index data
                                                                                 
                                                                                 var query = "Hell*";
                                                                                 var results = Components.classes["@mozilla.org/array;1"]
                                                                                                                 .createInstance(Components.interfaces.nsIMutableArray);
                                                                                 reader.search(query, results);
                                                                                 
                                                                                 var e = results.enumerate();
                                                                                 while (e.hasMoreElements()) {
                                                                                         var resultNode = e.getNext().QueryInterface(Components.interfaces.IResultNode);
                                                                                         
                                                                                         //Object: resultNode
                                                                                         //-> resultNode.primaryKey
                                                                                         //-> resultNode.score
                                                                                         alert(resultNode.primaryKey + "\n" + resultNode.score);
                                                                                 }
                                                                                 
                                                                         }else {
                                                                                 //display message or do nothing
                                                                         }
                                                                         
                                                                 </pre>
 
                                                                 <h4>Lookup::</h4>
                                                                 <pre class="brush: js font-size: 80%">
 
                                                                         //initialize xpcom
                                                                         var reader = Components.classes["@bookmarktools.mozdev.org/search/indexReader;1"].createInstance();
                                                                         reader = reader.QueryInterface(Components.interfaces.ICLReader);
                                                                         
                                                                         //set path
                                                                         reader.setPath(file.path); //see section 'Writing'
                                                                         
                                                                         var results = Components.classes["@mozilla.org/array;1"]
                                                                                                         .createInstance(Components.interfaces.nsIMutableArray);
                                                                         reader.lookup(results);
                                                                         
                                                                         var e = results.enumerate();
                                                                         while (e.hasMoreElements()) {
                                                                                 var lookupNode = e.getNext().QueryInterface(Components.interfaces.ILookupNode);
                                                                                 
                                                                                 //Object: lookupNode
                                                                                 //-> lookupNode.primaryKey
                                                                                 //-> lookupNode.name
                                                                                 alert(lookupNode.primaryKey + "\n" + lookupNode.name);
                                                                         }
 
                                                                 </pre>
 
                                                                 <h4>Delete documents::</h4>
                                                                 <pre class="brush: js font-size: 80%">
 
                                                                         //initialize xpcom
                                                                         var writer = Components.classes["@bookmarktools.mozdev.org/search/indexWriter;1"].createInstance();
                                                                         writer = writer.QueryInterface(Components.interfaces.ICLWriter);
                                                                         
                                                                         //set path
                                                                         writer.setPath(file.path); //see section 'Writing'
                                                                         
                                                                         //delete documents with index 0, 5 and 2
                                                                         var docs = [0, 5, 2];
                                                                         writer.deleteDocument(docs, docs.length);
 
                                                                 </pre>
 
                                                                 <br />
 
                                                                 <div class="separator"></div>
                                                                 
                                                                 <h3><a href="#Content"><img src="./images/back.png" alt="back" title="back" /></a><a name="HowToTidy">HowTo use the tidy component (uses ctidy version 060405)</a></h3>
                                                                 <h4>Cleanup::</h4>
                                                                 <pre class="brush: js font-size: 80%">
 
                                                                         //initialize xpcom
                                                                         var tidy = Components.classes["@bookmarktools.mozdev.org/repair/tidy;1"].createInstance();
                                                                         tidy = tidy.QueryInterface(Components.interfaces.ITidy);
                                                                         
                                                                         var src = "
                                                                         &lt;html&gt;
                                                                                 &lt;head&gt;&lt;/head&gt;
                                                                                 &lt;body
                                                                                         broken body tag &amp; no entity
                                                                                 &lt;/body&gt;
                                                                         &lt;/html>";
                                                                         
                                                                         //result contains the repaired html/xhtml/xml source
                                                                         //otherwise a error message returned
                                                                         var result = tidy.cleanup(src);
                                                                         
                                                                         if(result == "Tidy: no output"){
                                                                                 alert("error returned");
                                                                         }else {
                                                                                 alert(src);
                                                                         }
                                                                         
                                                                 </pre>
                                                 
                                                         </div>
                                                 </div>
                                         </td>
                                 </tr>
                                 <tr>
                                         <td>
                                                 <div id="footer">
                                                         <table>
                                                                 <tr>
                                                                         <td>
                                                                                 <a href="http://validator.w3.org/check?uri=referer">
                                                                                         <img src="http://www.w3.org/Icons/valid-xhtml10-blue"
                                                                                         alt="Valid XHTML 1.0 Strict" height="31" width="88" />
                                                                                 </a>
                                                                         </td>
                                                                         <td style="width: 100%;">
                                                                                 <div style="text-align: center;">
                                                                                         Project hosted on <a class="simpleLink" href="http://www.mozdev.org/">mozdev.org</a>.<br/> <a class="simpleLink" href="http://www.mozdev.org/copyright.html">Copyright</a> &copy; 2004. All rights reserved. <a class="simpleLink" href="http://www.mozdev.org/community/terms.html">Terms of Use</a>.
                                                                                 </div>
                                                                         </td>
                                                                         <td>
                                                                                 <a href="http://jigsaw.w3.org/css-validator/check/referer">
                                                                                         <img style="border:0;width:88px;height:31px"
                                                                                         src="http://jigsaw.w3.org/css-validator/images/vcss-blue"
                                                                                         alt="Valid CSS!" />
                                                                                 </a>
                                                                         </td>
                                                                 </tr>
                                                         </table>
                                                 </div>
                                         </td>
                                 </tr>
                         </tbody>
                 </table>
         </body>
 </html>

Removed from v.1.10  
changed lines
  Added in v.1.20


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>