aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/term.c
Commit message (Collapse)AuthorAgeFilesLines
* Basic implementation of .Bk/.Ek; from OpenBSD.Ingo Schwarze2010-06-271-3/+8
| | | | OK and one stylistic tweak by kristaps@.
* Churn-ish check-in getting mdoc_parseln() and man_parseln() to accept aKristaps Dzonsons2010-06-261-3/+1
| | | | const struct regset pointer. No functionality.
* Initial chunks for variable-width fonts. Pushes all width calculationsKristaps Dzonsons2010-06-251-5/+23
| | | | | | | | 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
|
* Teach -Tps to ignore backspace-encoding by using a one-char buffer and aKristaps Dzonsons2010-06-111-5/+2
| | | | simple state machine. This paves the way for decorated text.
* Broke ascii_*() functions into term_ascii.cKristaps Dzonsons2010-06-081-242/+13
| | | | Made low-level engine functions into function pointers.
* No functionality changes: just restructuring. DeprecatedKristaps Dzonsons2010-06-081-36/+29
| | | | | terminal_free() in favour of ps_free() and ascii_free(). Moved ps_*() functions into term_ps.c so that they don't clutter up term.c.
* Missing prototype for getsubopt() on NetBSD fixed.VERSION_1_10_1Kristaps Dzonsons2010-06-081-1/+2
|
* Lint fix.Kristaps Dzonsons2010-06-071-2/+2
| | | | Added J.C. Roberts' TODO note.
* First check-in of PostScript output. This does not change any logicKristaps Dzonsons2010-06-071-20/+236
| | | | | | 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.
* Add -Owidth=width option to mandoc -Tascii. Asked for by joerg@ about aKristaps Dzonsons2010-06-071-6/+25
| | | | thousand years ago. Note that this is normalised to >=60.
* Modified version of Ingo Schwarze's patch for hyphen-breaking.Kristaps Dzonsons2010-05-251-7/+18
| | | | | | | Breakable hyphens are cued in the back-ends (with ASCII_HYPH) and acted upon in term.c or ignored in html.c. Also cleaned up XML decl printing (no need for extra vars).
* sync to OpenBSD:Ingo Schwarze2010-05-241-4/+12
| | | | | | | save the visual cursor position in term_flushln() and use that to avoid multiple blank lines in nested lists while still putting subsequent empty list tags each on their own line; "go ahead" kristaps@
* Handle literal tab characters both in literal context (.Bd -literal)Ingo Schwarze2010-05-241-3/+23
| | | | | | | | and outside. In literal context, tab stops are at each eigth column; outside, they are at each fifth column. from OpenBSD mdoc_term.c rev. 1.75; "commit" kristaps@
* 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.
* The function term_flushln() had effectively forked in OpenBSD.Ingo Schwarze2010-05-171-45/+42
| | | | | | | | | | | | | | | | This is the bsd.lv part of the main step to bring it back in sync. At the same time, this prevents trailing whitespace in the output: We delay writing blanks until we are sure printable characters follow. This is achieved by * remembering the end of the word instead of its length * and not using vbl any longer for the control of line breaking * such that vbl can sum up all kinds of white space * before writing a word, printing all the blanks collected in vbl * within the word, adding NBSP chars to vbl, then continuing with the word * after the word, adding blanks to vbl, then starting the next word "looks good" kristaps@
* sync to OpenBSD:Ingo Schwarze2010-05-161-2/+2
| | | | | | introduce a #define to get rid of the magic number describing the ASCII character used to represent non-breaking space; ok kristaps
* Make the output width an option for ascii_alloc and use that to computeJoerg Sonnenberger2010-05-151-5/+9
| | | | the default margin. Hard-code 80 chars/line for now.
* Tiny EOS patch. Back-end cues front-end through flag. Front-end cues ↵Kristaps Dzonsons2010-05-121-2/+7
| | | | output engine with flag.
* Backed out break-at-hyphen changes.Kristaps Dzonsons2010-05-071-39/+4
|
* Removed pipe from front-end ("typographic") recognition as punctuation ↵Kristaps Dzonsons2010-04-081-3/+5
| | | | (noted by Ingo Schwarze).
* Removed erroneous `{' and `}' as punctuation (see mdoc.samples "General ↵Kristaps Dzonsons2010-04-031-22/+53
| | | | | | Syntax" for why this mistake was made). Noted by Ingo Schwarze. Lines of text now break at a hyphen, unless the hyphen is the first or second subsequent in a word. Inspired by a Ingo Schwarze's patch.
* Fixed two very subtle bugs in retaining overstep and maxrmargin widths ↵Kristaps Dzonsons2010-03-231-16/+14
| | | | between parse sequences.
* Big check-in of compatibility layer. This should work on most major ↵Kristaps Dzonsons2010-01-011-1/+5
| | | | architectures. Thanks to Joerg Sonnenberger.
* Fixed \c support for all input and output modes (documented in mandoc_char.7).Kristaps Dzonsons2009-11-121-1/+4
|
* FreeBSD sys/types inclusion fixed.Kristaps Dzonsons2009-11-121-3/+5
|
* Basically re-wrote -Tascii font handling: instead of incrementers forKristaps Dzonsons2009-11-121-88/+148
| | | | | | | | | 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.
* Hooked up -Tascii to a2roffdeco backend.Kristaps Dzonsons2009-11-071-202/+50
|
* -Tascii now correctly ignores \s clauses.Kristaps Dzonsons2009-11-061-12/+90
|
* Correct support for `\fX' font modes in -Tascii.Kristaps Dzonsons2009-11-051-8/+22
|
* Added functionality of -Tascii non-breaking `\~' space.Kristaps Dzonsons2009-11-051-2/+7
|
* Using perror() instead of fprintf for failure from library functions.Kristaps Dzonsons2009-10-311-3/+3
|
* More lint fixes.Kristaps Dzonsons2009-10-301-4/+5
| | | | Removed err.h from inclusions (less main.c--still in progress).
* Lint fixes.Kristaps Dzonsons2009-10-301-3/+5
| | | | Made realloc puke with fprintf.
* Continued safe handling of allocations.Kristaps Dzonsons2009-10-301-3/+6
|
* Removed superfluous memset (thanks Joerg Sonnenberger).Kristaps Dzonsons2009-10-281-3/+2
|
* bzero() -> memset() (noted by Joerg Sonnenberger).Kristaps Dzonsons2009-10-271-3/+9
|
* Merged Ingo's comments on term_flushln() variable names.Kristaps Dzonsons2009-10-271-14/+14
| | | | Fixed assertion (this needs more consideration) when an overstep line is exactly as long as the rmargin.
* Added time.h to various files for FreeBSD compilation (thanks Ulrich Sporlein).Kristaps Dzonsons2009-10-261-1/+2
|
* Lint fix.VERSION_1_9_10Kristaps Dzonsons2009-10-261-2/+3
|
* Fixed overstep patch.Kristaps Dzonsons2009-10-261-2/+3
|
* Removed need for superfluous `os' value in overstep calculation (thanks Ingo ↵Kristaps Dzonsons2009-10-241-8/+5
| | | | Schwarze).
* Fixed order of printing backspace-encoding for terms that are both bold and ↵Kristaps Dzonsons2009-10-221-5/+5
| | | | underlined (noted by Joerg Sonnenberger).
* More fixes to scaling-width multipliers (which, just to make my life ↵Kristaps Dzonsons2009-10-191-5/+8
| | | | difficult, differ not only between -mdoc and -man, but between various invocation, e.g., -offset and -width).
* Made sure devices and formats recognise that -man and -mdoc have different ↵Kristaps Dzonsons2009-10-181-32/+24
| | | | syntax for scaling widths: -mdoc assumes no unit means that the value is a string literal while -man instead uses the default vertical/horizontal scale.
* Arbitrary horizontal and vertical scaling widths now handled by -mdoc -Tascii.Kristaps Dzonsons2009-10-181-1/+84
| | | | Terminal scaling backend pushed into term.c.
* Moved output definitions into main.h.Kristaps Dzonsons2009-10-131-32/+2
| | | | Pushed terminal_{mdoc,man} into {mdoc,man}_term.c.
* Fix hang lists in -Tascii -Tmdoc, which seem to have been broken since ~1.8.x.Kristaps Dzonsons2009-10-101-2/+8
| | | | Noted similarity of HP/TP and -hang/-tag in mandoc.1.
* All special characters sync'd with groff, both -Thtml and -Tascii.Kristaps Dzonsons2009-09-231-1/+4
| | | | Re-added text links to index.sgml (just for show).
* Fixed memory leak on close.Kristaps Dzonsons2009-09-201-2/+2
|