summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* implement -Tman .No and .Mt; OpenBSD rev. 1.23Ingo Schwarze2012-07-091-14/+26
|
* fix .Lk for -Tascii and implement it for -TmanIngo Schwarze2012-07-082-17/+45
| | | | OpenBSD rev. 1.22 and 1.142, respectively
* fix vertical spacing for -Tman SYNOPSIS .Fn .Fo .Ft .In .Nm .Va .VtIngo Schwarze2012-07-081-11/+64
| | | | OpenBSD rev. 1.21
* implement -Tman .AnIngo Schwarze2012-07-082-1/+31
| | | | | also reset -[no]split mode at .Sh AUTHORS in -Tascii OpenBSD rev. 1.20 and 1.141, respectively
* Add flags to insert a .sp or .br request before the next output,Ingo Schwarze2012-07-081-49/+29
| | | | | | shortening some frequent idioms and preparing for better vertical spacing in the SYNOPSIS; no functional change intended. OpenBSD rev. 1.19
* Instead of adding one integer variable for each global boolean output flagIngo Schwarze2012-07-081-180/+176
| | | | | | | and passing around a structure containing them into each and every function, just use a single static bitfield. In preparation for adding more output flags to support more features. OpenBSD rev. 1.18
* implement -Tman .VaIngo Schwarze2012-07-081-2/+2
| | | | | and fix -Tman .Vt for the non-SYNOPSIS case OpenBSD rev. 1.17
* implement -Tman .Vt; OpenBSD rev. 1.15 and 1.16Ingo Schwarze2012-07-081-1/+41
|
* Basic implementation of -Tman .Fo and .Fa;Ingo Schwarze2012-07-081-16/+81
| | | | | | | again, some blank lines still missing from the output. While here, remove the trailing semicolon from .Fn when outside .Sh SYNOPSIS. OpenBSD rev. 1.14
* rudimentary support for -Tman .Ft and .Fn;Ingo Schwarze2012-07-071-2/+48
| | | | | some blank lines are still missing from the output OpenBSD rev. 1.13
* basic support for -Tman .In; OpenBSD rev. 1.12Ingo Schwarze2012-07-071-1/+32
|
* after .Lb in library section, break the line in the final outputIngo Schwarze2012-07-071-1/+13
|
* implement -Tman .Bk; OpenBSD rev. 1.10Ingo Schwarze2012-07-071-4/+35
|
* implement -Tman .Sm; OpenBSD rev. 1.9Ingo Schwarze2012-07-071-3/+19
|
* implement -Tman .Bd -offset and -compact; OpenBSD rev. 1.8Ingo Schwarze2012-07-071-1/+35
|
* minor -mdoc -Tman fixesIngo Schwarze2012-07-071-2/+9
| | | | | | | | | * right after .Ns, avoid breaking the line in man code * after .Fl without arguments, do not insert a blank into man code * before each .Nm in .Sh SYNOPSIS, insert a .br into man code * skip .Pp arguments, don't copy them to man code OpenBSD rev. 1.7
* When i moved some low-level stuff from mdoc(7) and man(7)Ingo Schwarze2012-06-202-20/+24
| | | | | | | to roff(7) some time ago, i forgot to adjust the cross-references. Reported by Tim van der Molen <tbvdm at xs4all dot nl>, thanks. ok jmc@
* Add `cc' support.Kristaps Dzonsons2012-06-127-33/+74
| | | | | | | | | | | | | | | This was reported by espie@ and in the TODO. Caveat: `cc' has buggy behaviour when invoked in groff(1) and followed by a line-breaking control character macro, e.g., in a -man doc, .cc | .B foo 'B foo |cc 'B foo will cause groff(1) to behave properly for `.B' but inline the macro definition for `B' when invoked with the line-breaking macro.
* Fix typo (back-space -> backslash).Kristaps Dzonsons2012-06-121-1/+1
|
* Fix an assert() raised by `RS' when following `TP'.Kristaps Dzonsons2012-06-122-7/+1
| | | | | | The reason was that `RS' wasn't BSCOPE'd, so the next-line (BLINE) scope opened by `TP' would still be in the HEAD macro. This was from joerg@'s archive of failures.
* Allow compilation on Mac OSX.Kristaps Dzonsons2012-06-092-0/+2
|
* Stop producing xhtml/pdf/etc for webpage (logs indicate that nobody actuallyKristaps Dzonsons2012-06-092-124/+11
| | | | looks at them).
* Merge whatis.1 into apropos.1 (and remove), add whatis bits to aproposKristaps Dzonsons2012-06-0910-327/+127
| | | | (via mansearch), and merge mandocdb.h into mansearch.h (and remove).
* While I'm rooting around, note that we depend on sqlite3 now, not berkeley.Kristaps Dzonsons2012-06-091-7/+5
|
* Remove catman(8): it's superfluous.Kristaps Dzonsons2012-06-094-638/+5
| | | | | | | | Users of man.cgi should be able to just copy in their directories and have the CGI fine everything on its own or just suck it up or, in the cases of multiple manroots, have a simple config file. Besides, now that mandocdb(8) is using relative paths for everything, needing a fancy "cp -R" is silly.
* Ths SYNCHRONOUS = off optimisation fails on my Mac OSX. Take it out untilKristaps Dzonsons2012-06-091-0/+2
| | | | I can test properly for this feature.
* Make test-ohash.c work on OpenBSD (it now works on have/havenots of OpenBSDKristaps Dzonsons2012-06-091-1/+1
| | | | and OSX).
* Add a compatibility interface for ohash.Kristaps Dzonsons2012-06-096-3/+447
| | | | | | | | | | This include's espie@'s wholesale src/lib/libc/ohash directory from OpenBSD into compat_ohash.c (with a single copyright/license notice at the top) and src/include/ohash.h as compat_ohash.h. The ohash_int.h part of compat_ohash.c has been changed only in that ohash.h points to compat_ohash.h. Added HAVE_OHASH test (test-ohash.c) to Makefile. In mandocdb.c and mansearch.c, check HAVE_OHASH test for inclusion.
* Turn off sqlite3 synchronous mode when creating a new database.Kristaps Dzonsons2012-06-082-38/+54
| | | | | | This makes it run about 5x faster. While here, wrap some sqlite3 statements in #defines to extract errors. (Really, the warning/error/etc. macros should be functionified.)
* Allow mansearch to fail if invariancy (cwd) is violated. Also be moreKristaps Dzonsons2012-06-081-20/+34
| | | | verbose if sqlite3 errors occur.
* Use C99 syntax for declaring the string-hash key array.Kristaps Dzonsons2012-06-081-3/+3
|
* Remove lint from Makefile.Kristaps Dzonsons2012-06-084-1205/+41
| | | | | | | Disable some parts of the build (man.cgi, etc.) while sqlite3 is being merged in nice and slow. Remove the bit swapping stuff in config.h.post. Remove apropos_db (replaced by mansearch).
* Flip apropos to use mansearch instead of apropos_db.Kristaps Dzonsons2012-06-083-258/+233
| | | | | | | | | This makes the utility much smaller and simpler. A lot of functionality has been omitted while the sqlite3 search routines improve (logical operations, etc.). It still needs work to make the output more conventional. Also add the manpage utility, which I use extensively as a mind-meld of apropos and man.
* Re-tooled mandocdb using sqlite3 and ohash.Kristaps Dzonsons2012-06-083-1497/+1432
| | | | | | | | | | See the tech@ mailing list entries in June 2012 for details, as well as the discuss@ mailing list entries from March 2012. Among other changes, this utility now: 1. uses a single sqlite3 database instead of several berkeley dbs 2. stores utf-8 encoded strings 3. using ohash to aggressively hash its contents 4. using fts() instead of manually walking directories
* Add a new mansearch.h interface, which replaces apropos_db.cKristaps Dzonsons2012-06-082-0/+474
| | | | | | This is a much more minimal interface that stuffs all operations into a single function. It uses sqlite3 and ohash.
* Use size_t in catman to match manpath.h.Kristaps Dzonsons2012-06-081-1/+2
| | | | | Note this file will not be connected to the build for a little while as I get the new sqlite3 stuff in.
* Use size_t in manpath instead of int.Kristaps Dzonsons2012-06-082-6/+6
|
* forgot to commit one request bu espie@Ingo Schwarze2012-06-051-0/+3
|
* Close a preceding implicit block before opening an explicit block.Ingo Schwarze2012-06-031-16/+28
| | | | | | | | To allow doing so, no longer abuse rew_scope() to unwind explicit blocks; explicitly call man_unscope() instead. Fixing the indentation of slapd.conf(5) in the OpenLDAP port; thanks to guenther@ for the report.
* Minimal implementation of .EX and .EE for GNU compatibility.Ingo Schwarze2012-06-027-3/+25
| | | | | Do not use this, it is not portable and only defined in esr's man-ext. For example, sox(1) wants these macros.
* Fix blank line handling in .if.Ingo Schwarze2012-05-311-33/+24
| | | | | | | | | | In particular, two cases were wrong: - single-line .if with trailing whitespace gave no blank line - multiline .if with \{ but without \{\ gave no blank line While here, simplify roff_cond() by partially reordering the code. "good one" kristaps@
* While i already got my fingers dirty on mandoc_escape(),Ingo Schwarze2012-05-311-67/+64
| | | | | | | | | | | | | profit of the occasion to pull out some spaghetti, that is, three confusing variables and fourteen pointless assignments among them; instead, always operate on the official pointers **start, **end, and *sz, each of which conveys an obvious meaning. No functional change intended, and the new tests confirm that everything still (err...) "works", as far as that word can be applied to the kind of roff(7) mock-up code i'm polishing here. "just commit" kristaps@
* Make recursive parsing of roff(7) escapes actually work in the general case,Ingo Schwarze2012-05-311-117/+36
| | | | | | | | | | | | | | in particular when the inner escapes are preceded or followed by other terms. While doing so, remove lots of bogus code that was trying to make pointless distinctions between numeric and non-numeric escape sequences, while both actually share the same syntax and we ignore the semantics anyway. This prevents some of the strings defined in the pod2man(1) preamble from producing garbage output, in particular in scandinavian words. Of course, proper rendering of scandinavian national characters cannot be expected even with these fixes. "just commit" kristaps@
* Implement the roff \z escape sequence, intended to output the nextIngo Schwarze2012-05-316-39/+125
| | | | | | | | | | | | | | | | | | character without advancing the cursor position; implement it to simply skip the next character, as it will usually be overwritten. With this change, the pod2man(1) preamble user-defined string \*:, intended to render as a diaeresis or umlaut diacritic above the preceding character, is rendered in a slightly less ugly way, though still not correctly. It was rendered as "z.." and is now rendered as ".". Given that the definition of \*: uses elaborate manual \h positioning, there is little chance for mandoc(1) to ever render it correctly, but at least we can refrain from printing out a spurious "z", and we can make the \z do something semi-reasonable for easier cases. "just commit" kristaps@
* catch up with the changed interface of mparse_alloc(), see mandoc.h rev 1.100Ingo Schwarze2012-05-311-1/+1
|
* .if vertical spacing now fixed in OpenBSDIngo Schwarze2012-05-311-4/+0
|
* clarify two entries related to roff(7) escapesIngo Schwarze2012-05-281-3/+4
|
* Fix the vertical spacing around tbl(7) instances in man(7).Ingo Schwarze2012-05-273-4/+12
| | | | | | | | | | | | | | | Groff forces the document author to manually request sufficient spacing after .TE - that is, at least .sp 1v after a table with the "box" option and at least .sp 2v after a table with the "doublebox" option - or else it clobbers the box. I consider that insane, so i'm not imitating groff in that respect. Instead, i add at least as much vertical space as groff, or more where required to avoid clobbering the box. Consequently, output will be identical for input that looks sane with groff, and mandoc will make output look better for input that looks bad with groff. "Please check them in and I'll look into them later!" kristaps@
* Correct width of horizontal spans; relevant in case of centered orIngo Schwarze2012-05-271-3/+11
| | | | | | | | flush right text, for boxes, and when more columns follow the span. Issue found by sthen@ in the net/arp-scan(1) port manual. "Please check them in and I'll look into them later!" kristaps@
* Do not handle vertical lines as additional tbl(7) columns,Ingo Schwarze2012-05-276-221/+71
| | | | | | | | | | | | | | | | instead save their properties with the following column. This simplifies layout parsing and saves a lot of code related to column handling. At output time, print all white space and vertical lines separating columns before printing the following column, and none after printing the preceding column, considerably simplifying white space handling and width calculations. No functional change, but it saves 150 lines of code, and it allows the next patch to tbl_term.c, tbl_literal(). "Please check them in and I'll look into them later!" kristaps@