Annotation of bookmarktools/www/documentation.html, revision 1.19

1.18      maik        1: <?xml version="1.0" encoding="UTF-8"?>
                      2: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
                      3: 
                      4: <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
1.16      maik        5:        <head>
1.19    ! maik        6:                <title>Bookmark Tools</title>
1.18      maik        7:                <link rel="stylesheet" href="project.css" type="text/css" />
1.16      maik        8:                
1.18      maik        9:                <meta http-equiv="Content-Type" content="text/html" />
1.16      maik       10:                <meta content="text/css" http-equiv="Content-Style-Type" />
                     11:                
                     12:                <script type="text/javascript" src="scripts/shCore.js"></script>
                     13:                <script type="text/javascript" src="scripts/shBrushBash.js"></script>
                     14:                <script type="text/javascript" src="scripts/shBrushCpp.js"></script>
                     15: 
                     16:                <script type="text/javascript" src="scripts/shBrushCSharp.js"></script>
                     17:                <script type="text/javascript" src="scripts/shBrushCss.js"></script>
                     18:                <script type="text/javascript" src="scripts/shBrushDelphi.js"></script>
                     19:                <script type="text/javascript" src="scripts/shBrushDiff.js"></script>
                     20:                <script type="text/javascript" src="scripts/shBrushGroovy.js"></script>
                     21:                <script type="text/javascript" src="scripts/shBrushJava.js"></script>
                     22: 
                     23:                <script type="text/javascript" src="scripts/shBrushJScript.js"></script>
                     24:                <script type="text/javascript" src="scripts/shBrushPhp.js"></script>
                     25:                <script type="text/javascript" src="scripts/shBrushPlain.js"></script>
                     26:                <script type="text/javascript" src="scripts/shBrushPython.js"></script>
                     27:                <script type="text/javascript" src="scripts/shBrushRuby.js"></script>
                     28:                <script type="text/javascript" src="scripts/shBrushScala.js"></script>
                     29: 
                     30:                <script type="text/javascript" src="scripts/shBrushSql.js"></script>
                     31:                <script type="text/javascript" src="scripts/shBrushVb.js"></script>
                     32:                <script type="text/javascript" src="scripts/shBrushXml.js"></script>
                     33:                
                     34:                <link type="text/css" rel="stylesheet" href="styles/shCore.css"/>
                     35:                <link type="text/css" rel="stylesheet" href="styles/shThemeDefault.css"/>
                     36:                
                     37:                <script type="text/javascript">
                     38:                        SyntaxHighlighter.config.clipboardSwf = 'scripts/clipboard.swf';
                     39:                        SyntaxHighlighter.all();
                     40:                </script>
                     41:        </head>
                     42:        <body>
1.18      maik       43:                <table style="width: 100%;">
                     44:                        <tbody>
                     45:                                <tr>
                     46:                                        <td>
                     47:                                                <div id="main">
                     48:                                                        <div id="menu-container">
                     49:                                                                <a href="http://www.mozdev.org" title="mozdev.org - free project hosting for the mozilla community">
                     50:                                                                        <img src="http://www.mozdev.org/sharedimages/mozdev_tiny.png" width="80" height="15" alt="mozdev.org" />
                     51:                                                                </a>
                     52:                                                                <div id="project-head">Bookmark Tools</div>
                     53:                                                                <div id="project-desc">Developer <a class="simpleLink" href="mailto:maik.gollnick@gmx.de">Maik Gollnick</a></div>
                     54:                                                                <ul id="simple-menu">
                     55:                                                                        <li><a href="index.html" title="Home">Home</a></li>
                     56:                                                                        <li><a href="installation.html" title="Download">Download</a></li>
                     57:                                                                        <li><a href="documentation.html" title="Documentation" class="current">Documentation</a></li>
                     58:                                                                        <li><a href="source.html" title="Source Code">Source Code</a></li>
                     59:                                                                        <li><a href="bugs.html" title="Bugs">Bugs</a></li>
                     60:                                                                        <li><a href="screenshots.html" title="Screenshots">Screenshots</a></li>
                     61:                                                                </ul>
                     62:                                                        </div>
                     63:                                                        <div id="menu-line"></div>
1.16      maik       64:                                                        
1.18      maik       65:                                                        <div id="content">
                     66:                                                                
                     67:                                                                <div>
                     68:                                                                        <h3><a name="Content">Content:</a></h3>
                     69:                                                                        <ul>
                     70:                                                                                <li><strong>USER GUIDE</strong></li>
                     71:                                                                                <li><strong>XPCOM</strong>
                     72:                                                                                        <ul>
1.19    ! maik       73:                                                                                                <li><a class="simpleLink" href="#HowToIndex">HowTo use the index component</a></li>
        !            74:                                                                                                <li><a class="simpleLink" href="#HowToTidy">HowTo use the tidy component</a></li>
1.18      maik       75:                                                                                        </ul>
                     76:                                                                                </li>
                     77:                                                                                <li><strong>OTHER</strong></li>
                     78:                                                                        </ul>
                     79:                                                                        <br />
                     80:                                                                </div>
                     81: 
                     82:                                                                <div class="separator"></div>
                     83:                                                                        
1.19    ! maik       84:                                                                <br />
1.18      maik       85: 
1.19    ! maik       86:                                                                <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>
        !            87:                                                                <h4>Writing::</h4>
        !            88:                                                                <pre class="brush: js font-size: 80%">
        !            89: 
        !            90:                                                                        //initialize file object (location: profile directory)
        !            91:                                                                        var file = Components.classes["@mozilla.org/file/directory_service;1"]
        !            92:                                                                                                .getService(Components.interfaces.nsIProperties)
        !            93:                                                                                                .get("ProfD", Components.interfaces.nsIFile);
1.18      maik       94: 
1.19    ! maik       95:                                                                        file.append("index"); //folder named 'index'
        !            96:                                                                        
        !            97:                                                                        if(!file.exists() || !file.isDirectory()) 
        !            98:                                                                                file.create(Components.interfaces.nsIFile.DIRECTORY_TYPE, 0777);
1.18      maik       99: 
1.19    ! maik      100:                                                                        //initialize xpcom
        !           101:                                                                        var writer = Components.classes["@bookmarktools.mozdev.org/search/indexWriter;1"].createInstance();
        !           102:                                                                        writer = writer.QueryInterface(Components.interfaces.ICLWriter);
        !           103:                                                                        
        !           104:                                                                        //set path
        !           105:                                                                        writer.setPath(file.path);
        !           106:                                                                        
        !           107:                                                                        //create index document
        !           108:                                                                        var cl_document = new Object();
        !           109:                                                                        cl_document.primaryKey = "key0";                                                //this shoud be a unique key
        !           110:                                                                        cl_document.name = "first document";                                    //document name
        !           111:                                                                        cl_document.content = "Hello World!";                                   //some content
        !           112:                                                                        
        !           113:                                                                        //append document
        !           114:                                                                        writer.appendDocument(
        !           115:                                                                                cl_document.primaryKey,
        !           116:                                                                                cl_document.name,
        !           117:                                                                                cl_document.content
        !           118:                                                                        );
        !           119:                                                                        
        !           120:                                                                        //optimize data
        !           121:                                                                        writer.optimize();
        !           122:                                                                        
        !           123:                                                                </pre>
1.18      maik      124: 
1.19    ! maik      125:                                                                <h4>Searching::</h4>
        !           126:                                                                <pre class="brush: js font-size: 80%">
1.18      maik      127: 
1.19    ! maik      128:                                                                        //initialize xpcom
        !           129:                                                                        var reader = Components.classes["@bookmarktools.mozdev.org/search/indexReader;1"].createInstance();
        !           130:                                                                        reader = reader.QueryInterface(Components.interfaces.ICLReader);
        !           131:                                                                        
        !           132:                                                                        //set path
        !           133:                                                                        reader.setPath(file.path); //see section 'Writing'
        !           134:                                                                        
        !           135:                                                                        if(reader.exists()){ //check for index data
1.18      maik      136:                                                                                
1.19    ! maik      137:                                                                                var query = "Hell*";
1.18      maik      138:                                                                                var results = Components.classes["@mozilla.org/array;1"]
                    139:                                                                                                                .createInstance(Components.interfaces.nsIMutableArray);
1.19    ! maik      140:                                                                                reader.search(query, results);
1.18      maik      141:                                                                                
                    142:                                                                                var e = results.enumerate();
                    143:                                                                                while (e.hasMoreElements()) {
1.19    ! maik      144:                                                                                        var resultNode = e.getNext().QueryInterface(Components.interfaces.IResultNode);
1.18      maik      145:                                                                                        
1.19    ! maik      146:                                                                                        //Object: resultNode
        !           147:                                                                                        //-> resultNode.primaryKey
        !           148:                                                                                        //-> resultNode.score
        !           149:                                                                                        alert(resultNode.primaryKey + "\n" + resultNode.score);
1.18      maik      150:                                                                                }
1.19    ! maik      151:                                                                                
        !           152:                                                                        }else {
        !           153:                                                                                //display message or do nothing
        !           154:                                                                        }
        !           155:                                                                        
        !           156:                                                                </pre>
1.18      maik      157: 
1.19    ! maik      158:                                                                <h4>Lookup::</h4>
        !           159:                                                                <pre class="brush: js font-size: 80%">
1.18      maik      160: 
1.19    ! maik      161:                                                                        //initialize xpcom
        !           162:                                                                        var reader = Components.classes["@bookmarktools.mozdev.org/search/indexReader;1"].createInstance();
        !           163:                                                                        reader = reader.QueryInterface(Components.interfaces.ICLReader);
        !           164:                                                                        
        !           165:                                                                        //set path
        !           166:                                                                        reader.setPath(file.path); //see section 'Writing'
        !           167:                                                                        
        !           168:                                                                        var results = Components.classes["@mozilla.org/array;1"]
        !           169:                                                                                                        .createInstance(Components.interfaces.nsIMutableArray);
        !           170:                                                                        reader.lookup(results);
        !           171:                                                                        
        !           172:                                                                        var e = results.enumerate();
        !           173:                                                                        while (e.hasMoreElements()) {
        !           174:                                                                                var lookupNode = e.getNext().QueryInterface(Components.interfaces.ILookupNode);
        !           175:                                                                                
        !           176:                                                                                //Object: lookupNode
        !           177:                                                                                //-> lookupNode.primaryKey
        !           178:                                                                                //-> lookupNode.name
        !           179:                                                                                alert(lookupNode.primaryKey + "\n" + lookupNode.name);
        !           180:                                                                        }
        !           181: 
        !           182:                                                                </pre>
        !           183: 
        !           184:                                                                <h4>Delete documents::</h4>
        !           185:                                                                <pre class="brush: js font-size: 80%">
        !           186: 
        !           187:                                                                        //initialize xpcom
        !           188:                                                                        var writer = Components.classes["@bookmarktools.mozdev.org/search/indexWriter;1"].createInstance();
        !           189:                                                                        writer = writer.QueryInterface(Components.interfaces.ICLWriter);
        !           190:                                                                        
        !           191:                                                                        //set path
        !           192:                                                                        writer.setPath(file.path); //see section 'Writing'
        !           193:                                                                        
        !           194:                                                                        //delete documents with index 0, 5 and 2
        !           195:                                                                        var docs = [0, 5, 2];
        !           196:                                                                        writer.deleteDocument(docs, docs.length);
1.18      maik      197: 
1.19    ! maik      198:                                                                </pre>
1.18      maik      199: 
1.19    ! maik      200:                                                                <br />
1.18      maik      201: 
1.19    ! maik      202:                                                                <div class="separator"></div>
        !           203:                                                                
        !           204:                                                                <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>
        !           205:                                                                <h4>Cleanup::</h4>
        !           206:                                                                <pre class="brush: js font-size: 80%">
        !           207: 
        !           208:                                                                        //initialize xpcom
        !           209:                                                                        var tidy = Components.classes["@bookmarktools.mozdev.org/repair/tidy;1"].createInstance();
        !           210:                                                                        tidy = tidy.QueryInterface(Components.interfaces.ITidy);
        !           211:                                                                        
        !           212:                                                                        var src = "
        !           213:                                                                        &lt;html&gt;
        !           214:                                                                                &lt;head&gt;&lt;/head&gt;
        !           215:                                                                                &lt;body
        !           216:                                                                                        broken body tag &amp; no entity
        !           217:                                                                                &lt;/body&gt;
        !           218:                                                                        &lt;/html>";
        !           219:                                                                        
        !           220:                                                                        //result contains the repaired html/xhtml/xml source
        !           221:                                                                        //otherwise a error message returned
        !           222:                                                                        var result = tidy.cleanup(src);
        !           223:                                                                        
        !           224:                                                                        if(result == "Tidy: no output"){
        !           225:                                                                                alert("error returned");
        !           226:                                                                        }else {
        !           227:                                                                                alert(src);
        !           228:                                                                        }
1.18      maik      229:                                                                        
1.19    ! maik      230:                                                                </pre>
        !           231:                                                
1.18      maik      232:                                                        </div>
                    233:                                                </div>
                    234:                                        </td>
                    235:                                </tr>
                    236:                                <tr>
                    237:                                        <td>
                    238:                                                <div id="footer">
                    239:                                                        <table>
                    240:                                                                <tr>
                    241:                                                                        <td>
                    242:                                                                                <a href="http://validator.w3.org/check?uri=referer">
                    243:                                                                                        <img src="http://www.w3.org/Icons/valid-xhtml10-blue"
                    244:                                                                                        alt="Valid XHTML 1.0 Strict" height="31" width="88" />
                    245:                                                                                </a>
                    246:                                                                        </td>
                    247:                                                                        <td style="width: 100%;">
                    248:                                                                                <div style="text-align: center;">
                    249:                                                                                        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>.
                    250:                                                                                </div>
                    251:                                                                        </td>
                    252:                                                                        <td>
                    253:                                                                                <a href="http://jigsaw.w3.org/css-validator/check/referer">
                    254:                                                                                        <img style="border:0;width:88px;height:31px"
                    255:                                                                                        src="http://jigsaw.w3.org/css-validator/images/vcss-blue"
                    256:                                                                                        alt="Valid CSS!" />
                    257:                                                                                </a>
                    258:                                                                        </td>
                    259:                                                                </tr>
                    260:                                                        </table>
                    261:                                                </div>
                    262:                                        </td>
                    263:                                </tr>
                    264:                        </tbody>
                    265:                </table>
1.16      maik      266:        </body>
1.18      maik      267: </html>

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