Note: This indexer - search-form combination,
works on the file system;
The indexer doesn't crawl! Consequently, it needs to run on the system it indexes.
I use Linklint as an internal
link-checker. It looks for broken links on my own website. One of the reports
it produces is a file called 'file.txt'. Which contains a list of all the
files linked on my website. I use a shell script to generate a list
containing all plain-text-, HTML- and PDF files on my site. Pdftotext is used
to generate text versions of PDF files. There is a file with the extension
'.title' for each PDF file.
The file-list file has following format;
|/var/www/time/T4224.txt||/time/T4224.pdf||Temic U4224B Time Code Receiver|
|/home/rob/WWW/index.html||/~rob/||Rob's home page|
Other shell scripts use this file to generate the
sitemap.html and sitemap.xml.
A combination of a shell script and some C programs is used to index my site. The indexer creates a word-list, a word to document index and an abstracts file. These are used by the web-form.
The software assumes that all HTML files have the '.html' extension.
If this is not the case, you need to modify the shell scripts and C-sources,
to include other extensions.
Furthermore, the software assumes that the charset is
There is no need for a database server. The software maintains the files on it's own.
The functionality of this software is quite limited. But it's also very fast; If I run the indexer from the prompt, the prompt returns right away. Having indexed some 20000 words from ca. 200 documents.
The search-form is very simple too. It produces links
to all the pages which contain all of the searched words. All on one page!
When more then one word is entered, it produces abstracts too. Each abstract contains the first 94 words of the document.
Searched words are highlighted in the abstracts.
Description of file formats.
Some notes on the contents of some of the header files
|Search:||2021-03-15 15:06:27 UTC|
|Indexer:||2021-09-20 10:20:58 UTC|
|2021-03-08||Max word size from 23 to 31 bytes.|
|2021-09-20||Updated no-alnum.h and wc2num.h in order to support Unicode 14.|