summaryrefslogtreecommitdiffstatshomepage
path: root/mdoc_macro.c
Commit message (Collapse)AuthorAgeFilesLines
* Lint fixes (noops).Kristaps Dzonsons2010-05-311-3/+2
|
* Remove now-superfluous check on `Ta' context.Kristaps Dzonsons2010-05-311-21/+1
|
* Add ability to interpret initial free-form lines as part of a `BlKristaps Dzonsons2010-05-311-2/+12
| | | | | | | | -column' up until the first `It'. This is UGLY and should have all sorts of warnings, and will. On the one hand, it fits with groff's notion of tabs and tab-spaces. On the other hand, it's not really "free-form" text any more. Note that this does not yet accomodate for macros coming on these lines.
* `Ta' scope-checks need to be more specific (until implicit `It' handlingKristaps Dzonsons2010-05-311-2/+5
| | | | comes into play).
* Remove enum mdocargerr from phrase() (unused).Kristaps Dzonsons2010-05-311-23/+97
| | | | | | | | | | | | | | Add `Ta' macro, which is basically a NULL case everywhere but in mdoc_macro.c, where it closes out an existing `It' body scope and opens a new one, then continues parsing as in phrase() (TODO: merge these two?). Fix where scope-breaking was silently just dying instead of printing an error. Fix where trailing `Ta' or tab weren't creating a new MDOC_BODY context. We now support arbitrarily complex `It' contents for `Bl -column'.
* Migrate `Bl -column' phrases to be MDOC_BODY instead of MDOC_HEAD. ThisKristaps Dzonsons2010-05-301-14/+20
| | | | | | | | | | will make it easy for re-entrant parsing of `Ta' macros to fit in with standard closure rules. Added some more regressions for `Bl -column'. Note that one should fail, as documented in the TODO file. Recorded change of AST BNF in mdoc.3.
* Final word on lac/ac. Document flow as it relates to phrasing, as I'llKristaps Dzonsons2010-05-301-5/+18
| | | | | be changing this around and want a record in CVS of what was happening beforehand.
* Obvious fix to last patch: have ARGS_PEND also be flagged for phrase()Kristaps Dzonsons2010-05-301-2/+4
| | | | handling.
* First in several iterative patches in getting complex -column listsKristaps Dzonsons2010-05-301-9/+13
| | | | | | | | supported (which works but is tricky enough that it should be broken down into digestable parts). This simply moves around the propogation of ARGS_PEND into one recognised by phrase(). Added a few regressions for simple -column lists.
* Commit of patch floated on discuss@ a few days ago: if an in_line scopeKristaps Dzonsons2010-05-291-12/+33
| | | | | | | | | | has not been opened and closing punctuation is encountered AND the macro is marked as accepting no-content (or `Li'), then open an empty scope. Added regression tests for `Fl' and `Li' testing this behaviour. Also, squeeze hyph0.in tests into the last characters of each line so that groff doesn't hyphenate and break the test.
* Fixed `Lb' to be in_line (reported by Ulrich Spoerlein).Kristaps Dzonsons2010-05-261-2/+2
| | | | | | | | | Added `Lb' documentation to mdoc.7. Removed harmless but superfluous pre_lb check (was just NULL entries). Added regressions for `Lb' (NOTE that these will only run on new groff, as old groff doesn't support `Lb' at all).
* Enable the unified error/warning enumeration in mandoc.h that'sKristaps Dzonsons2010-05-171-15/+19
| | | | | | | | | | | 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.
* Distinguish OPEN, MIDDLE and CLOSE delimiters (using an enum).Ingo Schwarze2010-05-151-11/+13
| | | | | | | Only OPEN are drawn before the beginning of a macro; this is new, before this, MIDDLE ('|') were drawn in front, too. Only CLOSE are pushed after the end of a macro (as before). ok kristaps@
* More EOS: append_delims() fitted with EOS detection, so ANY macro with ↵Kristaps Dzonsons2010-05-151-7/+22
| | | | | | appended delimiters will properly EOS. Fixed mandoc_eos() to accept sentence punctuation followed by close-delim buffers.
* More `Bl -column' dancing: It children also inherit in-phrase flags (noted ↵Kristaps Dzonsons2010-05-151-23/+15
| | | | by Ingo Schwarze).
* Block-implicit macros now up-propogate end-of-sentence spacing. NOTE: GROFF ↵Kristaps Dzonsons2010-05-141-1/+21
| | | | IS NOT SMART ENOUGH TO DO THIS.
* Removed remaining "1 == ppos" invocations.Kristaps Dzonsons2010-05-141-5/+11
|
* Proper handling of quoted tab-separated column lists.Kristaps Dzonsons2010-05-141-12/+7
|
* Lint fix.Kristaps Dzonsons2010-05-131-1/+2
|
* Fixed bug in -Thtml -mdoc where `Lb' would line-break in LIBRARY section.Kristaps Dzonsons2010-05-131-13/+22
| | | | | Fixed assumption that parse-point == 1 equates to beginning of line (false if whitespace separates macro and control character). Fixed line-break for non-first-macro in several SYNOPSIS macros.
* Introduce ARGS_PEND for `It -column' end-of-line special casing.Kristaps Dzonsons2010-05-091-15/+45
| | | | Initial rules for insane `It -column' tabsep handling.
* Lint fixes (type-safety for enums via -cefuh).Kristaps Dzonsons2010-05-081-4/+4
|
* Initial ARGS_PPHRASE (partial phrase) framework.Kristaps Dzonsons2010-05-071-8/+5
| | | | Running tally of changes in index.sgml.
* enum-ised mdoc_argv() return (better return-value safety).Kristaps Dzonsons2010-05-071-21/+25
|
* margerr -> margserr (getting ready for margverr).Kristaps Dzonsons2010-05-071-10/+10
|
* Protection against running lookup() against quoted words.Kristaps Dzonsons2010-05-071-17/+26
|
* Wrangle mdoc_args() and mdoc_zargs() to use enum return type.Kristaps Dzonsons2010-05-071-125/+145
| | | | | Fixed lookup() and lookup_raw() to correctly use enum type. Quashed in_line_argn() bug (not reported, but there) where mixing return values.
* Fix mdoc bug found by Claus Assmann: `Pf' should be callable.Kristaps Dzonsons2010-04-061-2/+2
|
* Enum-ised REWIND return values.Kristaps Dzonsons2010-04-051-7/+9
|
* Tentative fix of quoted punctuation issue noted by Jason McIntyre, e.g., `Li ↵Kristaps Dzonsons2010-04-051-4/+9
| | | | "!"' rendering the "!" outside of scope.
* Fixed fatal bug in Xo/Xc patch that caused segfaults with last-child ↵Kristaps Dzonsons2010-03-311-9/+14
| | | | explicit-scope macros.
* Re-adjusting UGLY tags.Kristaps Dzonsons2010-03-311-5/+3
| | | | | Fixed removed assignment of type. Removed superfluous checks of mdoc_argflags (from days when comments were a macro tag).
* Macro types enum-ated (enum mdoct) (for easier debugging in gdb of "tok" ↵Kristaps Dzonsons2010-03-311-16/+53
| | | | | | | values). Initial check-in of Ingo Schwarze's patch for Xo/Xc handling (in blocks ifdef'd "UGLY"). Put Oc-close-Op parts into UGLY ifdef blocks.
* Modified in_line_eoln() to handle leading punctuation.VERSION_1_9_20Kristaps Dzonsons2010-03-301-22/+34
|
* Last remaining bits for leading-punctuation in blk_exp().Kristaps Dzonsons2010-03-301-54/+66
|
* Fixed segfault with accidentally-munged tree.Kristaps Dzonsons2010-03-291-11/+9
|
* Integrate Ingo Schwarze's patch for mdoc_iscdelim() (tri-state for opening ↵Kristaps Dzonsons2010-03-291-76/+108
| | | | | | | | | | | and closing macro punctuation). Modify blk_part_exp() to correctly handle leading punctuation before HEAD. Significantly clean up and document blk_part_exp(). Modify blk_part_imp() for to correctly handle leading punctuation before HEAD. Significantly clean up and document blk_part_imp(). Integrate Ingo Schwarze's patch for args() (using new mdoc_iscdelim() format). Documented bad `Ec' handling for later work in mdoc_term.c/mdoc_html.c.
* Made `Xr' compatible with groff calling conventions where arguments ↵Kristaps Dzonsons2010-02-171-3/+19
| | | | | | following the trailing section are implicitly `Ns'd. Based on a patch submitted by Ingo Schwarze.
* Fix in handling Vt in SYNOPSIS with trailing punctuation. Spotted by Joerg ↵Kristaps Dzonsons2010-01-301-2/+28
| | | | Sonnenberger.
* Big check-in of compatibility layer. This should work on most major ↵Kristaps Dzonsons2010-01-011-1/+5
| | | | architectures. Thanks to Joerg Sonnenberger.
* `Fl' has each argument be in a separate scope (thanks Ingo Schwarze).Kristaps Dzonsons2010-01-011-1/+12
| | | | | Situation of `Fl [arg]* "" [arg]*' is fixed: empty arguments are ignored. Note that OpenBSD crashes when this happens. Situation of `Fl' is fixed wrt trailing whitespace.
* Added time.h to various files for FreeBSD compilation (thanks Ulrich Sporlein).Kristaps Dzonsons2009-10-261-1/+2
|
* Added `%U' to -mdoc (doesn't render in a nice way yet).Kristaps Dzonsons2009-10-241-1/+2
|
* Some extra html tags and near-complete Bl: -tag is hopeless (synonym for ↵Kristaps Dzonsons2009-09-201-1/+2
| | | | -hang, now) and -column is still pending.
* Lintifications.Kristaps Dzonsons2009-09-161-14/+14
|
* Lookup hashes are now static tables, ordered first-level by second ↵Kristaps Dzonsons2009-09-161-2/+2
| | | | character, then randomly along a chain. Improves performance by a small fraction and considerably cleans up hash sources.
* Delimiter whitespace is correctly flagged (required some special handling).Kristaps Dzonsons2009-08-201-3/+3
|
* In-line documentation of mdoc_macro file.Kristaps Dzonsons2009-08-191-265/+202
| | | | Moved _NEXT_ macros into _alloc_ routines (where they belong).
* Moved MDOC_NEXT_SIBLING into mdoc_word (libmdoc).Kristaps Dzonsons2009-08-191-10/+1
| | | | De-chunking of word terms in libman.
* Noted areas that need work in libmdoc.Kristaps Dzonsons2009-08-131-2/+3
|