aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/man_term.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove `i' and `r' macro handlers. These macros, originally part of theKristaps Dzonsons2010-12-081-3/+1
| | | | | | | | me package, aren't recognised by "groff -mandoc" so we don't need to do so either. Discussed on tech@ with schwarze@. While at it, remove references to `b' in man.7. As far as I know, this was never supported anyway.
* Add support for `ft' macro found in groff(7). Based on a patch byKristaps Dzonsons2010-12-061-1/+44
| | | | | schwarze@, but without the -T[x]html handling, which structurally does not work. Also add man.7 documentation (not in original patch).
* My favourite: removing lots of code in favour of smaller, tighter code.Kristaps Dzonsons2010-12-061-80/+50
| | | | | Merge patch by schwarze@ consolidating RB, BR, etc. into one function. man_html.c already does this.
* Header for `PP', `P', and `LP' should never be printed.Kristaps Dzonsons2010-12-061-2/+2
|
* Remove `Sp', `Vb', and `Ve' (as per schwarze@'s changes in OpenBSD),Kristaps Dzonsons2010-12-051-7/+2
| | | | which are now accomodated for the new libroff modifications.
* Allow string lengths to account for escapes. Now all calls to calculateKristaps Dzonsons2010-09-151-1/+5
| | | | | | | | | | | | | | | | | | | | | column width in -Tascii, -Tpdf, and -Tps will account for "more real" string lengths. Example: .Bl -tag -width \s[+123424]foo .It bar baz .El The size escape will be correctly tossed. .Bl -tag -width \(aqbar .It \(aqbar baz .El The \(aq will be correctly handled.
* Collapse `nf', `fi', `Vb', and `Ve' into one function as in man_html.c.VERSION_1_10_5_PREPDFKristaps Dzonsons2010-07-231-19/+18
|
* Added `in' macro support for -man -Tascii. This is not yet supported inKristaps Dzonsons2010-07-221-1/+44
| | | | -Thtml (I'm surprised to note that neither is LITERAL mode).
* Bring `sp', `Sp', and `br' behaviour for -man in line with how -mdoc'sKristaps Dzonsons2010-07-221-16/+11
| | | | | is handled: correctly. This removes superfluous line breaks in many -man manuals.
* Have `nf' and `fi' flush lines. This is necessary or the LITERAL willKristaps Dzonsons2010-07-221-1/+3
| | | | | | be meaningless when invoked within a non-flushing context. This based on a formatting bug report submitted by Jonathon Gray (jsg@) via Christian Weisgerber (naddy@).
* correct lots of copyright notices;Ingo Schwarze2010-07-131-2/+2
| | | | ok kristaps@
* Re-constitution of `ds' symbol processing. First, push theKristaps Dzonsons2010-07-071-2/+1
| | | | | | | | | roff_getstr() family of functions into roff.c with the "first_string" directly in struct roff. Second, pre-process each line for reserved words in libroff, splicing and re-running a line if it has one (this allows defined symbols to be macros). Remove term.c's invocation of the roff_getstrn() function. Removed function documentation in roff.3 and added roff.7 `ds' documentation.
* Churn-ish check-in getting mdoc_parseln() and man_parseln() to accept aKristaps Dzonsons2010-06-261-1/+2
| | | | const struct regset pointer. No functionality.
* Initial chunks for variable-width fonts. Pushes all width calculationsKristaps Dzonsons2010-06-251-41/+39
| | | | | | | | in mdoc_term.c and man_term.c down into term.c. This is still not implemented in term.c, although stubs for width calculations are in place. From now on, offset, rmargin, and other layout variables are abstract screen widths. They will resolve to the the familiar values for -Tascii but -Tps will eventually use points instead of chars.
* Churn as I finish email address migration kth.se -> bsd.lv.Kristaps Dzonsons2010-06-191-2/+2
|
* Fix a regression that crept in in man_term.c 1.73 and mdoc_term.c 1.144.Ingo Schwarze2010-06-101-3/+3
| | | | | | | | | | | | | | | | When the title line uses special characters, mandoc will segfault. Thus, first set up the character tables, then print the header, as we always did. Found in OpenBSD /usr/src/usr.sbin/bind/bin/check/named-checkconf.8. While here, set p->tabwidth in terminal_man() for symmetry with terminal_mdoc(), as suggested by millert@ (and already committed to OpenBSD earlier). Since 5 is the default, this is not strictly required, but it is certainly clearer and more robust. "looks fine" kristaps@
* Have the standard manpage header and footer print on every page of -TpsKristaps Dzonsons2010-06-091-2/+2
| | | | | | | | | | | | | | | output. This is more tricky than you may think: we can't just call the header function out-of-state (i.e., before a flushln has occured) because we'd clobber our current state. Thus, we call at the beginning and dump the output into an auxiliary buffer. For the record, I don't think there's any other clean way to do this. The only other Way That Works is to copy-aside *all* termp state, zero it, and do the necessary headf/footf. This is just as complex, as memory needs to be alloc'd and free'd per margin. Unfortunately, this prohibits page numbering (the margin is only printed once), so I'll probably end up re-writing this down the line.
* First check-in of PostScript output. This does not change any logicKristaps Dzonsons2010-06-071-9/+15
| | | | | | within term.c, but does add a small shim over putchar() that switches on the output engine. Prints, for this initial version, only monospace and without font decorations. It's a start.
* Allow bad -man dates to flow verbatim into the front-ends. Noted byKristaps Dzonsons2010-05-261-2/+5
| | | | Ulrich Spoerlein.
* Enable the unified error/warning enumeration in mandoc.h that'sKristaps Dzonsons2010-05-171-1/+2
| | | | | | | | | | | stringified in main.c. Allow `An' to handle an argument and child (with a warning). Allow `Rv' and `Ex' to work without a prior `Nm' as groff does (with a warning). Allow inconsistent column syntax to only raise a warning.
* Add support for .AT. Properly implement .UC. Add regress tests.Joerg Sonnenberger2010-05-171-1/+2
|
* groff uses three vspaces before the footer too.Joerg Sonnenberger2010-05-171-1/+3
|
* Remove `am', `ami', `de', `dei', and `.' from -man, as they're now in the ↵Kristaps Dzonsons2010-05-151-6/+1
| | | | roff preprocessor.
* Pull `ig' out of -man and leave it the roff preparser.Kristaps Dzonsons2010-05-151-2/+1
|
* For .IP groff requires a single space only after the head, adopt.Joerg Sonnenberger2010-05-151-3/+1
|
* Make the output width an option for ascii_alloc and use that to computeJoerg Sonnenberger2010-05-151-3/+7
| | | | the default margin. Hard-code 80 chars/line for now.
* Removed restriction on integer manual sections in -man.Kristaps Dzonsons2010-05-151-2/+2
|
* End-of-sentence spacing for -man -Tascii.Kristaps Dzonsons2010-05-121-1/+4
|
* Back out OpenBSD special case (ok Ingo Schwarze).Kristaps Dzonsons2010-05-101-12/+12
|
* Proper leading spaces for new- and old-groff in -man -Tascii mode.Kristaps Dzonsons2010-05-101-2/+20
|
* -man also now has unbound margins for literal context.Kristaps Dzonsons2010-05-101-5/+3
|
* Using man_node_delete() instead of man_node_free()/man_node_freelist() and ↵Kristaps Dzonsons2010-03-241-1/+9
| | | | | | | friends (much simpler). Split blk_imp() into blk_exp() (explicit macros), blk_dotted() (roff macros), and the original. Added de, dei, am, ami, and ig roff macros (for now, these are discarded within the parse).
* Fixed two very subtle bugs in retaining overstep and maxrmargin widths ↵Kristaps Dzonsons2010-03-231-2/+5
| | | | between parse sequences.
* Support for pod2man standard header macros (Vb, Ve, Sp). Based largely on a ↵Kristaps Dzonsons2010-03-231-10/+24
| | | | set of patches by Ingo Schwarze.
* Accomodate (libman) for next-line macros followed by non-text macros `na', ↵Kristaps Dzonsons2010-03-221-37/+44
| | | | | | `sp', and `br'. Based on a patch by Ingo Schwarze.
* Big check-in of compatibility layer. This should work on most major ↵Kristaps Dzonsons2010-01-011-6/+5
| | | | architectures. Thanks to Joerg Sonnenberger.
* Fixed \c support for all input and output modes (documented in mandoc_char.7).Kristaps Dzonsons2009-11-121-12/+3
|
* Deprecated ".i <notext>" support (nobody uses it -- it can be re-added, but ↵Kristaps Dzonsons2009-11-121-14/+2
| | | | adds a bit of complexity that I'd rather avoid).
* Basically re-wrote -Tascii font handling: instead of incrementers forKristaps Dzonsons2009-11-121-80/+36
| | | | | | | | | bold and underline, we use a stack (no cascading, no double-font-mode). Font modes with \f only affect the current stack point, as documented in mdoc.7 and man.7. While -mdoc stacks fonts with embedded macros, -man replaces them (the stack is always size 1). This works for all invocations in supported systems' manual corpora to date. It doesn't support groff's insanity with line-scoped \f as documented in mdoc.7.
* Noted that -man text decoration is re-set when exiting a macro invocation.Kristaps Dzonsons2009-11-101-2/+6
|
* Disable metafonts when printing document footer.Kristaps Dzonsons2009-11-101-1/+3
|
* Consolidated `RI' and `IR' handlers (-man -Tascii).Kristaps Dzonsons2009-11-051-25/+10
|
* Fixed `RI' (was reversed).Kristaps Dzonsons2009-11-051-3/+3
|
* More lint fixes.Kristaps Dzonsons2009-10-301-2/+1
| | | | Removed err.h from inclusions (less main.c--still in progress).
* Removed dynamic allocations of header/footer data.Kristaps Dzonsons2009-10-271-18/+7
|
* Full `%U' support.Kristaps Dzonsons2009-10-261-30/+30
| | | | | | | `Lk' display fixed. Renamed arg2xxxx as a2xxxx for consistency. Renamed print_foot to print_man_foot for consistency. Removed default printing of `~' when `Lk' not provided (not sure where I got that from).
* Added `PD' to -man (doesn't do anything, yet).Kristaps Dzonsons2009-10-241-1/+4
|
* Fixed maddening mismatch between groff and strftime mismatch of day ("%e"). ↵Kristaps Dzonsons2009-10-221-7/+3
| | | | Noted by Ulrich Sporlein.
* Fixed strftime stray %d -> %e (pointed out by Ulrich Sporlein).Kristaps Dzonsons2009-10-211-2/+2
|
* Lint fixes.Kristaps Dzonsons2009-10-181-4/+4
|