summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Allow -man to process EQN as well. Also fix a segfault in missing caseKristaps Dzonsons2011-02-098-3/+41
| | | | statements in the post-handler for EQN in -mdoc and -man.
* Allow EQN data to be pushed down into libmdoc via mdoc_addeqn(). OnlyKristaps Dzonsons2011-02-0910-6/+46
| | | | the adding itself is implemented; equation data is not yet shown.
* Put tbl_alloc function right into the addspan() one, as this is the onlyKristaps Dzonsons2011-02-082-38/+17
| | | | place that it's called.
* The macro .Ns has no effect at the beginning of an input line;Ingo Schwarze2011-02-072-9/+11
| | | | ok kristaps@ jmc@.
* Fix a regression caused by mdoc_term.c 1.214 / mdoc_html.c 1.148:Ingo Schwarze2011-02-062-3/+7
| | | | | Inside .Bk or inside the SYNOPSIS, Unix variant macros cleared the keep flag.
* Some pre-handlers produce output, so reorder the code to set upIngo Schwarze2011-02-061-20/+25
| | | | | | keep flags before they are called. Without this bugfix, .Bk was ineffective in some cases. "looks reasonable" kristaps@
* Use tbl_span line number for warnings/errors.Kristaps Dzonsons2011-02-062-3/+2
|
* Let the line-number of a tbl_span be remembered.Kristaps Dzonsons2011-02-065-16/+15
|
* Add initial libmdoc and libman top-most machinery for accepting TBLKristaps Dzonsons2011-02-069-1/+29
| | | | | directives. For now this will just ignore them (except for -Ttree, which just notes that an EQN's been accepted).
* Add initial EQN support to mandoc. This parses, then throws away, dataKristaps Dzonsons2011-02-067-12/+175
| | | | | | | | between EQ and EN roff blocks. EQN is different from TBL in that data after .EQ is unilaterally considered an equation until an .EN. Thus, there's no need to jump through hoops in having table spans and so on. This is ONLY the parse code framework in libroff. EQN is not yet passed into the backends.
* TODO note on that `.TS', `.TE' etc. aren't real roff macros and troffKristaps Dzonsons2011-02-031-0/+6
| | | | won't recognise them when invoked as e.g. `. TS' (we, however, do).
* If `Ns' is specified on its own line, it should be ignored. This isKristaps Dzonsons2011-02-027-7/+20
| | | | | shitty groff behaviour. Do the same, but raise a warning to this effect. This from a TODO noted by schwarze@.
* Note an error found in the wild.Kristaps Dzonsons2011-01-311-0/+3
|
* Implement the \N'number' (numbered character) roff escape sequence.Ingo Schwarze2011-01-307-3/+117
| | | | | | | Don't use it in new manuals, it is inherently non-portable, but we need it for backward-compatibility with existing manuals, for example in Xenocara driver pages. ok kristaps@ jmc@ and tested by Matthieu Herrb (matthieu at openbsd dot org)
* When in a <PRE>, don't print out the <BR> before lines that have leadingKristaps Dzonsons2011-01-292-4/+19
| | | | whitespace.
* Remove unnecessary conditional...Kristaps Dzonsons2011-01-252-4/+2
|
* Arguments to `Bsx' and friends are separated by a non-breaking space.Kristaps Dzonsons2011-01-253-6/+13
| | | | This removes a TODO raised by schwarze@.
* Push capitalisation of `Bx' second argument into validator, where it belongs.Kristaps Dzonsons2011-01-253-15/+25
|
* Properly uppercase the first-letter of the `Bx' second argument.Kristaps Dzonsons2011-01-252-5/+15
|
* Have `Bx' accept two arguments, not just one, and join these argumentsKristaps Dzonsons2011-01-254-18/+36
| | | | with "xxBSD-yy"
* Avoid double blank line before a table preceded by .PP.Ingo Schwarze2011-01-251-0/+3
| | | | ok kristaps@
* Since tbl_data() can now produce multiple spans, let parsebuf()Ingo Schwarze2011-01-254-10/+20
| | | | | | | generate man(7) or mdoc(7) nodes for all these spans, not only for the last one. Restores the horizontal lines in the cpu(4/hppa) tables. ok kristaps@
* Do not skip data after horizontal lines in the layout.Ingo Schwarze2011-01-251-16/+44
| | | | | | | | | | Instead, let one line of input data add two new spans to the tbl tree during one single call of tbl_data(). Note that this causes the horizontal line to get parsed into the tbl tree, but not yet used in the output, which will be fixed next. Avoids data loss in cpu(4/hppa). ok kristaps@
* correct horizontal spacing of data cellsIngo Schwarze2011-01-252-9/+12
| | | | | | correct alignment of centered cells adjust horizontal rule width to the new spacing ok kristaps@
* If %B is specified, quote %T. Noted by schwarze@ in the TODO.Kristaps Dzonsons2011-01-254-10/+5
|
* Ignore .ns (no-space mode), .ps (change point size), .ta (tab control)Ingo Schwarze2011-01-252-0/+20
| | | | | | for now. All of these just cause a bit too much or too little whitespace, but no serious formatting problems. Triggered by reports from brad@.
* As noticed by deraadt@, it goes without saying that text filesIngo Schwarze2011-01-253-10/+0
| | | | | | on a UNIX system use UNIX conventions, and UNIX tools working on them expect that. ok jmc@
* Skip carriage return before newline, if any.Ingo Schwarze2011-01-241-3/+20
| | | | | | As pointed out by Joerg Sonnenberger, this is useful because we use mmap(3) and look for '\n' by hand. "check it in" kristaps@
* Better explain roff(7) macro argument quoting;Ingo Schwarze2011-01-242-6/+42
| | | | ok jmc@.
* results of some systematic comparisonsIngo Schwarze2011-01-241-1/+94
|
* not implemented: adjustmentIngo Schwarze2011-01-231-0/+13
|
* Fix another regression caused by the reorg of print_man_node() in rev. 1.97:Ingo Schwarze2011-01-231-0/+3
| | | | End-of-sentence spacing got lost for man(7) after plain text lines.
* some more reports from brad@Ingo Schwarze2011-01-221-0/+10
|
* missing: .ns, .UR; reported by brad@Ingo Schwarze2011-01-221-4/+8
|
* sort missing features, no change of contentIngo Schwarze2011-01-221-18/+28
|
* Lots of in-line macros require arguments but were not marked as such.Ingo Schwarze2011-01-221-9/+9
| | | | Check prompted by kristaps@.
* Check argument count validation for all in_line() macros.Ingo Schwarze2011-01-221-36/+20
| | | | | | | | Most empty in_line() macros are already removed by the parser, so there is no need to check again in mdoc_validate.c. This also downgrades almost all remaining argument count issues from ERROR to WARNING. ok kristaps@
* When finding the roff .it request (line trap),Ingo Schwarze2011-01-222-1/+6
| | | | | make it clear that you cannot use mandoc to format that page (yet). Triggered by a report from brad@, ok kristaps@.
* "decimalpoint" is in fact supported.Kristaps Dzonsons2011-01-171-2/+0
|
* Refrain from throwing fatal errors forIngo Schwarze2011-01-173-37/+27
| | | | | | | * .br .sp .nf .fi .na with arguments - just skip the arguments * .TH lacking arguments - use empty strings instead like groff * .TH with excessive arguments - skip those Reminded by joerg@, ok kristaps@.
* When processing a blank text line, do not break out of text processingIngo Schwarze2011-01-161-2/+2
| | | | | | into macro processing code. Fixing a regression introduced in 1.95, found because it caused segfaults in my regression suite. OK kristaps@
* Implement the roff .rm request (remove macro).Ingo Schwarze2011-01-161-11/+18
| | | | | | Using the new roff_getname() function, this is really simple. Breaks mandoc of the habit of reporting an error in each pod2man(1) preamble. Reminded by a report from brad@; ok kristaps@.
* Change how -Thtml behaves with tables: use multiple rows, with widthsKristaps Dzonsons2011-01-135-49/+112
| | | | | | | | | set by COL, until an external macro is encountered. At this point in time, close out the table and process the macro. When the first table row is again re-encountered, re-start the table. This requires a bit of tracking added to "struct html", but the change is very small and follows the logic of meta-fonts. This all follows a bug-report by joerg@.
* Incorporate same fix for -man post-validation deletion of nodes. ThisKristaps Dzonsons2011-01-121-2/+9
| | | | isn't known to cause any problems, but better safe than sorry.
* Downgrade -man message of ignored empty paragraph to MANDOC_IGNPAR. TheKristaps Dzonsons2011-01-123-38/+31
| | | | | | | | | | | change in man_macro.c was from an assertion caused by a subtle problem: (1) macro is removed, causing m->last to be m->last->parent; (2) by jumping to the m->last->parent after post-validation, the original m->last->parent is skipped; (3) the rewinder climbs to the root of the tree and aborts. The original issue recorded in the TODO by schwarze@, reminded by Brad Smith.
* Make out-of-context `fi' invocations not cause an error, but just aKristaps Dzonsons2011-01-124-5/+3
| | | | warning. From a TODO by schwarze@, originally noted by Brad Smith.
* Bring in -Tascii comments for -Thtml MANH_LITERAL line-breaking stuff.Kristaps Dzonsons2011-01-121-5/+15
|
* Make sure that -Thtml doesn't break within literal lines. This is theKristaps Dzonsons2011-01-122-17/+5
| | | | same logic as the -Tascii case. Also remove the TODO.
* Make -man -Tascii not break within literal lines, e.g.,Kristaps Dzonsons2011-01-121-27/+33
| | | | | | | | | | .nf .B hello world .fi Also, clean up the print_man_node() function a little bit. This problem has long since been in the TODO and was recently noted again by Brad Smith. The -T[x]html fix will follow...
* If the first character of free-form text is whitespace, then a newlineKristaps Dzonsons2011-01-129-10/+42
| | | | shall precede outputted text (surprise!).