summaryrefslogtreecommitdiffstats
path: root/term.c
Commit message (Collapse)AuthorAgeFilesLines
* Assert my copyright, making it explicit that i'm granting the same licenseIngo Schwarze2010-07-041-1/+2
| | | | | on those parts of the code and text that i have written as Kristaps is. "fine with me" kristaps@
* Rudimentary implementation of user-defined strings;Ingo Schwarze2010-07-031-0/+6
| | | | | | no time for more refinement right now. In particular, fixes terminfo(3) and mdoc.samples(7). ok kristaps@, who will add the HTML frontend bits
* Lint tweak.Kristaps Dzonsons2010-07-021-0/+1
|
* Pushed normalisation of scaling units into term_hspan().Kristaps Dzonsons2010-06-301-1/+6
|
* Move term_hspan() calculation into the output devices, where it belongs.Kristaps Dzonsons2010-06-301-34/+1
|
* Clean-up of variable-width glyph support. Adds no new code; onlyKristaps Dzonsons2010-06-281-15/+18
| | | | | restructured to make a bit more readable. Also removed an unused entry in the PS engine structure.
* This enables variable glyph-width output. The checkin will be followedKristaps Dzonsons2010-06-281-11/+14
| | | | | | by a [functionless] clean-up in term_ps.c, but this makes the appropriate changes to "enable" initial proportional-width functionality in term.c and fixes some areas of term_ps.c that were causing errors.
* Tiny commit clarifying flushln() documentation as to what refers toKristaps Dzonsons2010-06-281-3/+4
| | | | | visual screen output and what's an array index (getting closer to variable-width fonting).
* Basic implementation of .Bk/.Ek; from OpenBSD.Ingo Schwarze2010-06-271-2/+7
| | | | OK and one stylistic tweak by kristaps@.
* Churn-ish check-in getting mdoc_parseln() and man_parseln() to accept aKristaps Dzonsons2010-06-261-2/+0
| | | | const struct regset pointer. No functionality.
* Initial chunks for variable-width fonts. Pushes all width calculationsKristaps Dzonsons2010-06-251-4/+22
| | | | | | | | 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-1/+1
|
* Teach -Tps to ignore backspace-encoding by using a one-char buffer and aKristaps Dzonsons2010-06-111-4/+1
| | | | simple state machine. This paves the way for decorated text.
* Broke ascii_*() functions into term_ascii.cKristaps Dzonsons2010-06-081-241/+12
| | | | Made low-level engine functions into function pointers.
* No functionality changes: just restructuring. DeprecatedKristaps Dzonsons2010-06-081-35/+28
| | | | | 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-0/+1
|
* Lint fix.Kristaps Dzonsons2010-06-071-1/+1
| | | | Added J.C. Roberts' TODO note.
* First check-in of PostScript output. This does not change any logicKristaps Dzonsons2010-06-071-19/+235
| | | | | | 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-5/+24
| | | | thousand years ago. Note that this is normalised to >=60.
* Modified version of Ingo Schwarze's patch for hyphen-breaking.Kristaps Dzonsons2010-05-251-6/+17
| | | | | | | 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-3/+11
| | | | | | | 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-2/+22
| | | | | | | | 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-0/+1
| | | | | | | | | | | 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-44/+41
| | | | | | | | | | | | | | | | 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-1/+1
| | | | | | 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-4/+8
| | | | 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-1/+6
| | | | output engine with flag.
* Backed out break-at-hyphen changes.Kristaps Dzonsons2010-05-071-38/+3
|
* Removed pipe from front-end ("typographic") recognition as punctuation ↵Kristaps Dzonsons2010-04-081-2/+4
| | | | (noted by Ingo Schwarze).
* Removed erroneous `{' and `}' as punctuation (see mdoc.samples "General ↵Kristaps Dzonsons2010-04-031-21/+52
| | | | | | 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-15/+13
| | | | between parse sequences.
* Big check-in of compatibility layer. This should work on most major ↵Kristaps Dzonsons2010-01-011-0/+4
| | | | architectures. Thanks to Joerg Sonnenberger.
* Fixed \c support for all input and output modes (documented in mandoc_char.7).Kristaps Dzonsons2009-11-121-0/+3
|
* FreeBSD sys/types inclusion fixed.Kristaps Dzonsons2009-11-121-2/+4
|
* Basically re-wrote -Tascii font handling: instead of incrementers forKristaps Dzonsons2009-11-121-87/+147
| | | | | | | | | 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-201/+49
|
* -Tascii now correctly ignores \s clauses.Kristaps Dzonsons2009-11-061-11/+89
|
* Correct support for `\fX' font modes in -Tascii.Kristaps Dzonsons2009-11-051-7/+21
|
* Added functionality of -Tascii non-breaking `\~' space.Kristaps Dzonsons2009-11-051-1/+6
|
* Using perror() instead of fprintf for failure from library functions.Kristaps Dzonsons2009-10-311-2/+2
|
* More lint fixes.Kristaps Dzonsons2009-10-301-3/+4
| | | | Removed err.h from inclusions (less main.c--still in progress).
* Lint fixes.Kristaps Dzonsons2009-10-301-2/+4
| | | | Made realloc puke with fprintf.
* Continued safe handling of allocations.Kristaps Dzonsons2009-10-301-2/+5
|
* Removed superfluous memset (thanks Joerg Sonnenberger).Kristaps Dzonsons2009-10-281-2/+1
|
* bzero() -> memset() (noted by Joerg Sonnenberger).Kristaps Dzonsons2009-10-271-2/+8
|
* Merged Ingo's comments on term_flushln() variable names.Kristaps Dzonsons2009-10-271-13/+13
| | | | 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-0/+1
|
* Lint fix.VERSION.1.9.10Kristaps Dzonsons2009-10-261-1/+2
|
* Fixed overstep patch.Kristaps Dzonsons2009-10-261-1/+2
|
* Removed need for superfluous `os' value in overstep calculation (thanks Ingo ↵Kristaps Dzonsons2009-10-241-7/+4
| | | | Schwarze).