Lq-text First Public Beta Release, October 1990
Copyright 1990 Liam R. E. Quin -- See the file COPYRIGHT for details.


Lqtext is a text retrieval package.

That means you can tell it about lots of files, and later you can ask
it questions about them.
The questions have to be
	which files contain this word?
	which files contain this phrase?
but this information turns out to be rather useful.

Lqtext has been designed to be reasonably fast.  It uses an inverted
index, which is simply a kind of database.  This tends to be smaller than
the size of the data, but more than half as large.  You still need to keep
the original data.

Commands are
	lqword -- information about words
	lqphrase -- look up phrases
	lqaddfile -- add files to the database (at any time)
	lqshow -- show the matches on the screen (uses curses)
	lqtext -- (System V.3.2 only) curses-based front end.

There are about 11,000 lines of C in total, or which 8,000 are the
text database and 3,000 are the curses front end (lqtext).

Here are some examples, based mostly on the (King James) New Testament,
simply because that is what I have lying around.

$ time lqphrase 'wept bitterly'
0000017 0000032 NT/Matthew/matt26.kjv
0000013 0000027 NT/Luke/luke22.kjv

real        0.2
You should just be able to type
	make all
but life is not ideal, and you should first edit the Makefile.
Probably it still won't work, because your V7 Pixel-100L Turbo doesn't
have a C compiler.  Tough.
Seriously, see PORTING if you have any problems.

user        0.0
sys         0.1
$ time lqword 'jesus' > /dev/null
real        1.0
user        0.6
sys         0.2
$ time lqword 'jesus' > XXX
real        1.0
user        0.6
sys         0.3
$ wc XXX
    986   6896  59907 XXX
$ cat XXX
       WID | Where   | Total   | Word
===========|=========|=========|============================================
       308 |    4736 |     983 | jesu
               Jesus |     0/  2 F=99 | NT/Matthew/matt01.kjv
               Jesus |     2/ 41 F=3  | NT/Matthew/matt01.kjv
               Jesus |     3/ 14 F=99 | NT/Matthew/matt01.kjv
(and so on for 983 lines)
$ # So there are nine hundred and eighty-three matches.  The rest of
$ # the listing shows for each match the block in the file, the word
$ # within the block, a flags field and the filename.
$ # The "where" in the header shows the address in the database, and
$ # WID is the word's unique identifier.
