summaryrefslogtreecommitdiffstats
path: root/regress/roff
Commit message (Collapse)AuthorAgeFilesLines
* Minimal implementation of the \h (horizontal motion) escape sequence.Ingo Schwarze2017-06-011-2/+2
| | | | Good enough to cope with the average DocBook insanity.
* Basic implementation of the roff(7) .ti (temporary indent) request.Ingo Schwarze2017-05-086-1/+83
| | | | Needed by about four dozen ports (thanks to naddy@ for the research).
* Basic implementation of the roff(7) .ta (define tab stops) request.Ingo Schwarze2017-05-076-1/+106
| | | | | | This is the first feature made possible by the parser reorganization. Improves the formatting of the SYNOPSIS in many Xenocara GL manuals. Also important for ports, as reported by many, including naddy@.
* Move .sp to the roff modules. Enough infrastructure is in placeIngo Schwarze2017-05-051-0/+1
| | | | now that this actually saves code: -70 LOC.
* Move handling of the roff(7) .ft request from the man(7)Ingo Schwarze2017-05-054-2/+33
| | | | | modules to the new roff(7) modules. As a side effect, mdoc(7) now handles .ft, too. Of course, do not use that.
* Parser reorg:Ingo Schwarze2017-05-047-12/+12
| | | | | Generate the first node on the roff level: .br Fix some column numbers in diagnostic messages while here.
* Really commit some files that failed to get committed in this commit:Ingo Schwarze2017-03-091-0/+1
| | | | | | | Now that markdown output is tested for almost everything, test all input files in -T markdown output mode by default and only mark those files with SKIP_MARKDOWN that are not to be tested. Much easier to read, and almost minus 40 lines of Makefile code.
* prevent infinite recursion while expanding the argumentsIngo Schwarze2017-03-083-1/+8
| | | | of a user-defined macro; issue found by tb@ with afl(1)
* If a user-defined macro is aborted because it exceeds the stackIngo Schwarze2017-03-074-2/+31
| | | | | | | | | | | | | | | | | | | limit, usually due to infinite recursion, discard whatever remains in all those open stack levels. Otherwise, insane constructions like the following could generate macros of enormous size, causing mandoc(1) to die from memory exhaustion: .de m \" original macro definition .m \" recursion to blow up the stack .de m \" definition to be run during the call of .m marked (*) very long plain text (some kilobytes) .m \" expand the above a thousand times while unwinding the stack .. \" end of the original definition .m \" (*) recursively generate a ridiculously large macro .. \" end of recursively generated definition .m \" execute the giant macro, exhausting memory Very creative abuse found by tb@ with afl(1).
* Many people have been complaining for a long time that ``...'' looksIngo Schwarze2017-02-173-3/+3
| | | | | | | | | | | ugly in -Tascii output. For that reason, bentley@ submitted patches to render "..." instead to groff in November 2014 (yes, more than two years ago). Carsten Kunze yesterday merged them for the upcoming groff-1.22.4 release. Yay! Consequently, do the same in mandoc: Render \(Lq and \(Rq (which are used for .Do, .Dq, .Lb, and .St) as '"' in -Tascii output. All other output modes including -Tutf8 remain unchanged.
* Finally port the OpenBSD regression suite.Ingo Schwarze2017-02-08172-0/+3303
| | | | | Both kristaps@ and wiz@ repeated asked for this, literally for years.
* Move the regression suite to the attic.Ingo Schwarze2014-03-0329-532/+0
| | | | | | | It has not been used or maintained for several years, and we won't start using it now. Devlopment regression testing is done in OpenBSD, and there is no value in maintaining two regression suites in parallel.
* Fix adding some minimal intelligence to conditional parser. See roff.7Kristaps Dzonsons2010-06-101-0/+30
| | | | | | | | | | for what's supported. This simplified the roff_cond() function quite nicely. From a bug report by uqs@. Added regression test based on bug-report example by uqs@. Also added ROFF_DEBUG to see what the hell the parser is actually doing. Obviously turned off by default.
* Regression made old-groff-friendly.Kristaps Dzonsons2010-06-011-2/+0
|
* Fixed condition of `\}' closing a conditional at the start of the line.Kristaps Dzonsons2010-06-011-0/+95
| | | | | | | | Fixed flushed-out condition of \} causing subsequent arguments to be truncated, when in fact the whole line should be passed through (if the conditional succeeds) to the front-end and the \} ignored there. Added regression test of this behaviour.
* Full support for ie/el. This completes the initial roff support.Kristaps Dzonsons2010-05-1723-16/+197
| | | | | Added test files for ie/el. Using `if 0' as a baseline for "false" roff instructions instead of `if t'.
* libroff now is aware of which sub-nodes should be interpreted even in aKristaps Dzonsons2010-05-172-0/+33
| | | | | | | | | | conditional-negative context so as to preserve structural integrity. Initial "rules" (deny/allow) are now inherited for future work in evaluating conditionals. Lint-fix noted by Joerg. Added regression tests for zany constructs.
* `ig' support in all its glory. TryKristaps Dzonsons2010-05-168-0/+97
| | | | | | | | | | | | | | | | | | .ig ig asdf .ig fdsa .. or .ig if asdf .if n \ foo for a laugh. It all works. Lots of regression tests supporting this and documentation for the same.
* Regression tests in place for `.if' in libroff.Kristaps Dzonsons2010-05-168-0/+98
Check against some strange `.if' constructs I missed. Added initial roff.7 manual.