Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
structure to represent search patterns.
The matching code has been due for a rewrite for a long time. There
are two goals in this rewrite:
(1) Make the matchers not a black box, so that the various frontends
can provide interactive editing of search patterns, so that it's
easier to write new analysis and/or execution functions on search
patterns, etc.
The specific mechanism I chose is to make the pattern type be a
"poor man's algebraic datatype": a single data type that can
represent all the legal forms of a search pattern. This flips
us to the other side of the expression problem; since the search
expressions are actually a programming language, this is a more
appropriate place to be.
(2) Add support for Xapian.
(3) Don't put all the code into one enormous file.
(2) isn't necessarily dependent on (1), but if I did (2) first, I would
have to do even more work to do (1).
This commit is the first step in this direction, implementing the core
pattern data type (untested).
|
|
Changed the configure and build procedure to make the libraries for the
GTK+ frontend optional, only compile the GTK+ frontend if the libraries
are present, and allow the GTK+ frontend to be disabled even if they are
present via --disable-gtk.
This is needed so that we can build a non-GUI version of the program
for use in the base system.
|
|
|
|
generic/.
This opens the possibility of using more appropriate rendering
techniques in the command-line code rather than overloading fragments in
that environment; this should perhaps be investigated in the future.
|
|
Makefile to ensure they actually get used everywhere.
|
|
|
|
|
|
|
|
|
|
|