summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* * clean catman.o which was missingIngo Schwarze2017-07-201-13/+5
| | | | | | * delete WWW_OBJS which i don't use * do not complain about *.out_markdown * bump VERSION to 1.14.2 (not released yet)
* syncIngo Schwarze2017-07-201-2/+2
|
* Fix incorrectly swapped labels of left/right arrows; from bentley@.Ingo Schwarze2017-07-201-1/+1
|
* delete some entries that have been taken care ofIngo Schwarze2017-07-191-47/+0
|
* more bits for 1.14.2Ingo Schwarze2017-07-191-5/+9
|
* Prefer arch-dependent over arch-independent pages if the name priority,Ingo Schwarze2017-07-191-3/+19
| | | | | | | | the section number, and all names match. Changes little on installed systems except the ordering of apropos(1) results, because we install base and Xenocara manuals in different trees, but fixes lookup of pages like apm(4) vs. apm(4/amd64) in man.cgi(8). Issue discovered by martian67 on freenode and reported via tj@.
* Run the regression tests iteratively rather than recursively.Ingo Schwarze2017-07-182-232/+236
| | | | | | | Simpler user interface, better summary output, simpler code, and slightly faster. Inspired by espie@'s request to avoid needless recursive make(1) in the OpenBSD regression testing tree.
* The only elements using floats are dt.It-tag,Ingo Schwarze2017-07-161-2/+3
| | | | | | so the only elements allowed to the right of them are dd.It-tag. Fixes overlapping rendering after long tag lists without bodies, for example in the Xenocara apm(4) manual. Issue reported by tj@.
* test -diag -width and -inset -widthIngo Schwarze2017-07-169-12/+20
|
* In .Bl -tag and -hang, do not print a margin-left style attributeIngo Schwarze2017-07-153-20/+27
| | | | | | for each individual item if the -width argument matches the default of 6n. Suggested by Steffen Nurpmeso <steffen at sdaoden dot eu> on <groff at GNU dot org> in April 2017.
* use the same width increase logic for .Bl -hang as for .Bl -tagIngo Schwarze2017-07-152-2/+2
|
* If -column, -diag, -inset, -item, or -ohang lists have a -width,Ingo Schwarze2017-07-151-4/+5
| | | | | don't just talk about ignoring it, actually do ignore it. No change for terminal output, improves HTML output.
* correct left margins for different classes of definition listsIngo Schwarze2017-07-151-5/+5
|
* print the right character for mathematical overbar; from bentley@Ingo Schwarze2017-07-155-5/+5
|
* Improve rev. 1.250 further:Ingo Schwarze2017-07-151-1/+1
| | | | | | | | If a database is empty, we already don't write a database file and delete an existing one. If none exists, that only means the database was empty and remains so, which is not an error. So don't nag about it, in particular because that would be a weekly(8) annoyance. Issue reported by jmc@.
* first draft of the 1.14.2 release notesIngo Schwarze2017-07-151-0/+74
|
* always give commas their own <mo> element,Ingo Schwarze2017-07-141-1/+1
| | | | suggested by bentley@, improves e.g. glMultMatrix(3)
* The .Dd and .TH macros must interrupt .ce, too;Ingo Schwarze2017-07-141-1/+2
| | | | fixing tree corruption and assertion failure found by jsg@ with afl(1)
* Explicitly initialize a variable where the compiler is (understandably)Ingo Schwarze2017-07-141-5/+6
| | | | | | unable to figure out that it is never used uninitialized. While here, tweak the content of the variable to make its usage easier to understand. No functional change.
* Fix an assertion failure triggered by print_otag("sw+-l", NULL).Ingo Schwarze2017-07-141-1/+6
| | | | | | Even though we skip the style when the argument is NULL, we must still consume the options. Not found with afl(1), but during manual testing of the previous patch...
* Handle .Bl -compact via CSS rather than writing individual styleIngo Schwarze2017-07-144-49/+26
| | | | | | | | attributes into .It blocks; suggested by Steffen Nurpmeso <steffen at sdaoden dot eu> on <groff at GNU dot org> in April 2017. Delete margin-bottom and margin-top style names and the 'v' argument letter from print_otag() because they are no longer used.
* print HTML character references as 4+ digits hexadecimal, like Unicode;Ingo Schwarze2017-07-1412-334/+334
| | | | from bentley@, tweaked by me
* do not print <math class="eqn"><mrow></mrow></math> for empty .EQ;Ingo Schwarze2017-07-141-0/+3
| | | | issue reported by bentley@
* eqn(7) nits from bentley@Ingo Schwarze2017-07-141-0/+9
|
* eqn(7) .EQ has to break man(7) next-line scope, or tree corruptionIngo Schwarze2017-07-131-0/+2
| | | | and use after free many ensue; again found by jsg@ with afl(1)
* Simplify by creating struct roff_node syntax tree nodes for tbl(7)Ingo Schwarze2017-07-088-93/+58
| | | | | | | | | | | | right from roff_parseln() rather than delegating to read.c, similar to what i just did for eqn(7). The interface function roff_span() becomes obsolete and is deleted, the former interface function roff_addtbl() becomes static, the interface functions tbl_read() and tbl_cdata() become void, and minus twelve linus of code. No functional change.
* fix an assertion failure triggered by .ce in next-line scope;Ingo Schwarze2017-07-081-1/+2
| | | | found by jsg@ with afl(1)
* 1. Eliminate struct eqn, instead use the existing membersIngo Schwarze2017-07-0814-192/+111
| | | | | | of struct roff_node which is allocated for each equation anyway. 2. Do not keep a list of equation parsers, one parser is enough. Minus fifty lines of code, no functional change.
* Correctly handle horizontal spans at the beginning of rows,Ingo Schwarze2017-07-081-8/+9
| | | | | | | | fixing an assertion failure found by jsg@ with afl(1). While here, also drop printing of whitespace in tbl_data() which makes no difference because column positioning code in term_tbl() already takes care of that.
* garbage collect unused enum member EQN_ROOTIngo Schwarze2017-07-072-4/+0
|
* add parentheses to the output where required for disambiguationIngo Schwarze2017-07-0710-15/+37
|
* simplify the eqn_box_makebinary() function by removing the trivial posIngo Schwarze2017-07-071-12/+10
| | | | parameter; also minus two lines of code; no functional change
* Radically simplify the definitions what the message levels ERRORIngo Schwarze2017-07-071-25/+6
| | | | and WARNING mean: minus 20 lines of mdoc source. OK jmc@.
* Now that we have the -Wstyle message level, downgrade six warningsIngo Schwarze2017-07-0620-140/+140
| | | | | | that are not syntax mistakes and that do not cause wrong formatting or content to style suggestions. Also upgrade two warnings that may cause information loss to errors.
* Fix operator precedence according to Brian W. Kernighan and LorindaIngo Schwarze2017-07-0622-44/+105
| | | | | L. Cherry, "Typesetting Mathematics - User's Guide (Second Edition)", August 15, 1978, paragraph 23; swarm of bugs pointed out by bentley@.
* The EQN_LISTONE box type is pointless.Ingo Schwarze2017-07-055-15/+22
| | | | | | Simplify by just using EQN_LIST with expectargs = 1. Noticed while investigating a bug report from bentley@. No functional change.
* nits about trailing punctuation found with mandoc -TlintIngo Schwarze2017-07-052-17/+17
|
* various nits found with mandoc -TlintIngo Schwarze2017-07-046-10/+16
|
* Fix handling of \} on roff request lines.Ingo Schwarze2017-07-043-18/+33
| | | | Cures bogus error messages in pages generated with pod2man(1).
* It turns out association of tbl spans with layout rows is simpler thanIngo Schwarze2017-07-045-54/+71
| | | | i thought. Fixing a bug in curs_addch(3) and minus 25 lines of code.
* adjust to today's change of the OpenBSD groff portIngo Schwarze2017-07-041-1/+1
|
* Messages of the -Wbase level now print STYLE:. Since thisIngo Schwarze2017-07-041244-2724/+2681
| | | | | | | | causes horrible churn anyway, profit of the opportunity to stop excessive testing, such that this is hopefully the last instance of such churn. Consistently use OpenBSD RCS tags, blank .Os, blank fourth .TH argument, and Mdocdate like everywhere else. Use -Ios=OpenBSD for platform-independent predictable output.
* Printing "BASE:" in messages about violations of base system conventionsIngo Schwarze2017-07-043-3/+8
| | | | | is confusing, simply print "STYLE:", which is intuitive and does not sound excessively alarming; suggested by jmc@, OK tedu@ jmc@.
* report trailing delimiters after macros where they are usually a mistake;Ingo Schwarze2017-07-034-55/+105
| | | | the idea came up in a discussion with Thomas Klausner <wiz at NetBSD>
* warn about time machines; suggested by Thomas Klausner <wiz @ NetBSD>Ingo Schwarze2017-07-034-2/+20
|
* If a single page references the same non-existent manual more thanIngo Schwarze2017-07-023-1/+8
| | | | | | once, print "(N times)" after the message "referenced manual not found", to lessen the risk that people fix the first instance and miss the others; jmc@ confirmed that this is useful.
* add warning "cross reference to self"; inspired by mdoclintIngo Schwarze2017-07-027-13/+52
|
* When checking cross references with -Tlint, ultimately fall back toIngo Schwarze2017-07-011-2/+11
| | | | | | | | | | | | | | | | | looking in the current working directory. Not a security issue because the files are never open(2)ed, only access(2)ed. Requested by jmc@ and inspired by mdoclint(1). This cannot be perfect because it only works for files having the exact filename ./pagename.sec - mandoc has no way to figure out which files might contain a manual for multiple names, or that files in autohell might be called ./pagename.man.in instead, or which subdirectories might contain additional source files. Also, it may hide messages if you have bogus stuff lying around in the directory where you run mandoc -Tlint. But jmc@ considers it important, and good enough for everyday use. Also avoid leaking the memory for the file name while here.
* When checking the validity of cross references with -Tlint,Ingo Schwarze2017-07-011-6/+12
| | | | | | | | | | | | | fall back from database search to file system search just like man(1) does when looking up manuals. This is not too expensive because on a system having up-to-date mandoc.db(5) files, it only prolongs the time needed to check *invalid* references - and you are not supposed to have many of those, right? And on a system with missing or invalid mandoc.db(5) files, spending a bit of time and warning loudly about the real problem is also better than quickly issuing bogus warnings about cross references that are actually valid.
* Basic reporting of .Xrs to manual pages that don't existIngo Schwarze2017-07-0115-19/+244
| | | | | | | | | | | | in the base system, inspired by mdoclint(1). We are able to do this because (1) the -mdoc parser, the -Tlint validator, and the man(1) manual page lookup code are all in the same program and (2) the mandoc.db(5) database format allows fast lookup. Feedback from, previous versions tested by, and OK jmc@. A few features will be added to this in the tree, step by step.