summaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAgeFilesLines
...
* Header for `PP', `P', and `LP' should never be printed.Kristaps Dzonsons2010-12-062-4/+7
|
* Allow HP/IP/etc. to have no arguments, as they're optional. From a field-Kristaps Dzonsons2010-12-061-4/+2
| | | | tested patch by schwarze@.
* Allow multiple ELINE macros without raising a fatal error. From a field-Kristaps Dzonsons2010-12-061-26/+10
| | | | tested patch by schwarze@.
* Track down a bug of empty `de XX' macros causing uncertain behaviour byKristaps Dzonsons2010-12-062-12/+24
| | | | | | | | | | returning empty strings in roff_getstrn() instead of NULL. This caused maddeningly irregular segfaults in the pod2man preamble for `de IX'. But only on DEC alpha. Also integrate the kinda-probably-safe assertion relaxation in term.c, field-tested by schwarze@. This allows ALL [unpreprocessed] base and xenocara manuals for all BSD systems to run without segfault.
* Merge schwarze@'s relaxation of scope-breaking rules: allow implicitKristaps Dzonsons2010-12-064-28/+28
| | | | ending of scopes and drop stray scope-endings.
* Remove `Sp', `Vb', and `Ve' (as per schwarze@'s changes in OpenBSD),Kristaps Dzonsons2010-12-058-79/+15
| | | | which are now accomodated for the new libroff modifications.
* Remove repeat notification of -width omission. From a patch by schwarze@.Kristaps Dzonsons2010-12-051-7/+2
|
* Remove long-standing FIXME regarding the consolidation of WIDTHARG andKristaps Dzonsons2010-12-053-9/+5
| | | | NOARGV warnings. From patch by schwarze@.
* Merge schwarze@'s patch to allow uname() to fail without causing an exit.Kristaps Dzonsons2010-12-053-8/+11
|
* Merge schwarze@'s changes allowing nested displays. Tweak the patch byKristaps Dzonsons2010-12-056-20/+28
| | | | | | | making sure output doesn't add a superfluous newline with the nested displays. Also add a COMPATIBILITY note. Rename a macro (DATESIZ) to be in line with OpenBSD (DATESIZE).
* Track the parser status both per file (file_status), such thatIngo Schwarze2010-12-021-14/+19
| | | | | | | | we can for example skip rendering on FATAL parsing errors, and globally (exit_status), such that we know what to return. Without this, following files produced no rendered output once a single file suffered from a FATAL error. Bug reported by kristaps@, fix by me.
* Merge schwarze@'s changes to allow for user-defined strings. ThisKristaps Dzonsons2010-12-021-73/+214
| | | | | | | | primarily adds a roff_userdef() function for parsing new defines and modifies the look-up procedure. NOTE: there is a bug hidden away in this update that causes an infinite loop in some pages. The cause is for the moment unknown.
* Fix enum/int mixing.Kristaps Dzonsons2010-12-011-3/+4
|
* Merge OpenBSD's `so' handling (plus some documentation). Great work toKristaps Dzonsons2010-12-013-3/+34
| | | | schwarze@ and joerg@ for his comments!
* Make sure that the manual section defaults to `1' if it's unset. ThisKristaps Dzonsons2010-12-011-1/+3
| | | | | behaviour only happens if `Dt' isn't specified, which can be exhibited by running mandoc -mdoc on a man manual.
* Fix a subtle error in the new main.c where the parse type (mdoc/man) wasKristaps Dzonsons2010-12-011-86/+157
| | | | | | | | | | | | | | | being inherited during the parse sequence, making pset() meaningless. Make sure that the mdoc/man curp pointer is set for each parse from a persistent object. This flushes out an obscure error where `man' pages called with `mdoc' will parse and segfault due to a missing title. Never happened earlier because `mdoc' pages were guaranteed to have a prologue. Fix this later. Also document the new main.c functions. Please make sure these sort of things are documented! Throw in some whitespace to make things a bit more readable.
* Merge restructuring of main.c code. This provided by schwarze@ and inspectedKristaps Dzonsons2010-12-012-131/+218
| | | | | | | | carefully by joerg@. Merge roff.h header for compilation's sake (this is not yet implemented in roff.c.). THIS IS A BUGGY CHECK-IN. The manual type is erroneously kept between runs of the compiler. This is a known bug.
* Fixed a goddamn subtle error causing MDOC_LITERAL to remain set after aKristaps Dzonsons2010-12-011-2/+2
| | | | call to `Dl' or `Bd -literal' or unfilled.
* Re-ordering of roff requests as per OpenBSD.Kristaps Dzonsons2010-12-013-7/+17
| | | | Made `rm' be an error (again, OpenBSD...).
* Low-hanging fruit: add OpenBSD's `ad', `hy', `ne', and `nh' handling.Kristaps Dzonsons2010-12-011-5/+13
| | | | Rename roff_line() -> roff_line_ignore().
* Restore the Id tag that i clobbered in my previous commit,Ingo Schwarze2010-11-301-1/+1
| | | | as pointed out by kristaps@. Sorry!
* Merge OpenBSD mdoc.7 rev. 1.56 and 1.57:Ingo Schwarze2010-11-301-16/+26
| | | | | | | | Define the terms "callable" and "parsed" with more precision. Be more specific about what .Xo can be used for. Be more specific about what "historic groff" refers to. Explicitely mention the nine argument limit below COMPATIBILITY. feedback and ok jmc@
* Kill man_action.c.Kristaps Dzonsons2010-11-305-117/+6
|
* Move all man_action.c routines into man_validate.cKristaps Dzonsons2010-11-302-200/+200
|
* Simplify the many if ( ! mdoc_nmsg()) return(0) etc. calls with just theKristaps Dzonsons2010-11-301-169/+158
| | | | | | | | | | error printing, as this is superseded by exit_status in main.c. Make check_argv() and check_text() return void. Make MDOC_Std test in check_argv() to pre_std(). Re-write post_root() to check more conditions before returning.
* mdoc_action.c is no more. Attic it and remove it from the Makefile.Kristaps Dzonsons2010-11-305-239/+8
| | | | | Remove references to MDOC_ACTED (it was only assertions) and the pre- and post-action functions.
* Moved all prologue actions from mdoc_action.c into mdoc_validate.c. TheKristaps Dzonsons2010-11-302-339/+301
| | | | file is now ready for removal.
* Move post_bl() and subfunctions from mdoc_action.c into mdoc_validate.c.Kristaps Dzonsons2010-11-302-154/+159
|
* Move -column list validation and normal-formisation from mdoc_action.cKristaps Dzonsons2010-11-302-69/+58
| | | | into mdoc_validate.c.
* Migrate `Nm' and `Pa' handling from mdoc_action.c into mdoc_validate.c.Kristaps Dzonsons2010-11-293-53/+45
| | | | Document that `Pa' is replaced by a tilde, just like `Mt'.
* Remove left-over rsord[] in mdoc_actions.c.Kristaps Dzonsons2010-11-294-106/+82
| | | | | | | | | Remove MANDOCERR_BADLIB (not used). Moved `St' handling from mdoc_action.c into mdoc_validate.c. Moved relevant MDOC_LITERAL macros (`Dl', `Bd' subtypes) from mdoc_action.c into mdoc_validate.c.
* Move `Lb' handling from mdoc_action.c into mdoc_validate.c.Kristaps Dzonsons2010-11-292-41/+28
|
* Move `At' handling from mdoc_action.c into mdoc_validate.c.Kristaps Dzonsons2010-11-292-50/+38
|
* Move `Sh' validation from mdoc_action.c. into mdoc_validate.c.Kristaps Dzonsons2010-11-292-88/+48
| | | | | Surprisingly, both functions were doing pretty much the same thing. Make sure that the changes incorporate the union of both.
* Clarifying role of pre_pp (now pre_par), which was confusing me due toKristaps Dzonsons2010-11-291-8/+10
| | | | | its name. Added some more documentation just for clarity's sake. No functional change.
* Note that `Rv' and `Ex' have different values if a manual name has beenKristaps Dzonsons2010-11-291-1/+5
| | | | specified or not.
* Move `Mt', `Ar', and `Li' handling from mdoc_action.c into mdoc_validate.c.Kristaps Dzonsons2010-11-296-63/+61
| | | | | | | | Clarify that `Mt' gets a default `~' (as per groff 1.20) and document it in mdoc.7. Made `Lk' be removed in mdoc_macro.c if it has no arguments. This fixes segfaults in mdoc_{term,html}.c that nobody's managed to raise yet.
* Migrate action for `Rs' into mdoc_validate.c.Kristaps Dzonsons2010-11-292-103/+106
| | | | | | Remove superfluous in-line order_rs function. Merge `Rs' validations {BLOCK, BODY} -> {BODY}. Make invalid children of `Rs' raise an error but otherwise be allowed.
* new: parametric .de, and header lines of excessive lengthIngo Schwarze2010-11-031-1/+14
|
* a bunch of small issues collected during p2k10Ingo Schwarze2010-10-291-1/+21
|
* Referring to terms explained in other manuals, always use .Xr.Ingo Schwarze2010-10-291-4/+4
| | | | | | Otherwise, hyperlinks can't be produced and people will likely miss the additional information available. Suggested by deraadt@.
* Remove a left-over ".Xr groff 1"; patch from jmc@.Ingo Schwarze2010-10-291-4/+3
|
* When mentioning a function documented elsewhere, .Xr is often better than .Fn.Ingo Schwarze2010-10-241-2/+5
| | | | Prodded by guenther@, ok jmc@.
* let .Bsx print just "BSD/OS" like in modern groffIngo Schwarze2010-10-232-4/+4
| | | | from Ulrich Spoerlein <uqs at spoerlein dot net>
* new: escape sequence handlingIngo Schwarze2010-10-231-4/+8
| | | | done: nested displays
* two new TODOs based on submissions by Ulrich SpoerleinIngo Schwarze2010-10-191-1/+14
|
* dream about .de support,Ingo Schwarze2010-10-171-6/+19
| | | | | and remove irrelevant stuff regarding tbl now that it's imported into OpenBSD
* Use proper error for `An' multiple arguments.Kristaps Dzonsons2010-10-113-9/+10
| | | | Making IGNARGV be an ERROR, not a WARNING, as information is lost.
* Quiesce Linux header-inclusion warnings.Kristaps Dzonsons2010-10-112-2/+4
|
* Initial commit of cleaned-up validation code for -mdoc. Remove thoseKristaps Dzonsons2010-10-111-82/+124
| | | | | ugly CPP macros in favour of real functions. Enumerate areas of short- term future cleanup, too.