| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
|
|
|
|
| |
including various tweaks to the whatis(8) manual;
ok kristaps@
|
|
|
|
|
|
| |
Also allow for a CSS_DIR to specify alternate CSS locations.
Finally, some clutter as I assume that "css" and "progname" are already
HTML-safe.
|
| |
|
|
|
|
|
| |
specified, write them out using a SELECT box. Else write nothing (the
manroot will still be checked if it's specified).
|
|
|
|
|
|
|
|
| |
reserved for paths within a manroot). This functionality is bare-bones:
right now, the default manroot is the first one scanned from the cache
directory. At some point this will be sexy and smooth, but it's easy to
upgrade functionality by modifying pathgen() and so forth. If a manroot
isn't parsed from the "manpath=", results are always empty.
|
|
|
|
| |
just uses the first manroot by default.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Deprecate kvals (key/value pairs for QUERY_STRING values). Since there's
only one place that uses this, kval_parse (now http_parse()) dumps directly
into struct query, which is more high-level.
- Put query values directly into struct req.
- The biggest difference is dynamic support for multiple "manroots". A
"manroot" is a path with an "etc/catman.conf" file. When the cgi starts,
it (prefix) recurses through its CACHE_DIR searching for "etc" directories.
When one's found, it sees if a catman.conf file exists. This is marked
as a manroot and appended to a list. The name of a manroot is the path
without slashes (e.g., OpenBSD/4.9 -> "OpenBSD 4.9").
Right now "manroot" isn't enabled. The first manroot is chosen as the
real one. I'll add the interface to it in the next checkins, but it'll be
quite simple.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
query mode.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
man.cgi should sort in the first place -- it wasn't before.
Revert uppercasing of man.cgi title.
|
|
|
|
|
| |
complicated than this. Also make the title be printed out in caps as it
is in apropos(1) and whatis(1).
|
|
|
|
|
|
| |
needs work because specifying an arch with "arch=i386" will return results
that don't have an arch specified. I think this is weird, but it will need
to be supported if we want backwards compatibility.
|
|
|
|
|
|
|
| |
expression text) be whatis. This is a much nicer default than apropos,
which can be scary. While here, fix the cat.css location (erroneously
put in the response page instead of the catman page) and add bits for
a default style-sheet.
|
|
|
|
| |
Also, set a custom CSS for man.cgi catman files.
|
|
|
|
|
|
|
|
|
|
|
|
| |
and properly handles some funny troff-isms we've exposed. I originally
wanted to use man2html.c (found on W3's website with no known author)
but the code is dodgy. This will need some more work (links, etc.) but
does a decent job thusfar.
Note: I think it's better style NOT to use <pre>, and instead have each
line employ <BR> afterward. This allows browsers to break the lines if
necessary. This can be changed trivially (replacing the newline and pre
tags with the <BR> and new tag).
|
|
|
|
|
|
|
| |
Also make catman's man.conf be generated as catman.conf to avoid clobbering
a real man.conf file.
Finally, add a placeholder catman() function to man.cgi for preformatted
manuals in the cache.
|
|
|
|
| |
formatting manpages is now linked into man.cgi.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(1) Insecure. This means that we're operating over the full file-system
with access to mandoc(1). In this mode, mandocdb entries are formatted
on-the-fly. The $INSECURE environment variable must be passed to
man.cgi for this mode to work.
(2) Secure. Manuals are assumed to be pre-formatted in a cache directory,
which may be set with $CACHE_DIR but default to /cache/man.cgi.
This mode works with manup(8), which updates the cached pages from
outside of the jail. man.cgi simply locates the manual file and
outputs it to stdout.
|
|
|
|
|
|
|
| |
In other words, if you smash this into a cgi-bin directory, it will Just
Work for your system's manuals (it of course needs access to mandoc(1) and
your file-system, hence "non-jailed").
The notion of a jailed case is much more subtle and being worked on now.
|
|
|
|
|
|
|
| |
submitted to tech@ on 16/11/2011, 01:39. It has been updated to account
for the logical-operator functions and to avoid keeping a live pointer into
the DBT value, which is not guaranteed to be consistent across calls into
the bdb library.
|
|
|
|
|
|
|
|
|
|
| |
set of keywords already exists is a bad idea, so reuse the mdoc(7)
macro names as apropos(1) search types. This is a gain in brevity
as well. Some time ago, kristaps@ agreed in principle.
The search type bit field constants are used by both mandocdb(8) and
apropos(1) and should better stay in sync, so give them their own
header file.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
this when it completes; this is to keep it in-tree.
Right now this uses prefix notation. Ignore it. I'll make this into
infix notation real soon.
The goal of this (exprcomp and exprexec) is to have arbitrary logical
expressions.
|
|
inspired by apropos.c and mandoc-tools' mandoc-cgi.c). This uses UTF-8
right now for its re-writing, but will soon accomodate for the regular
suspects (this is a rather simple matter).
I also introduce man.cgi (cgi.c), which is a standalone CGI that replaces
mandoc-tools' mandoc.cgi. Right now it's just a framework.
|