Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Fix hyphen-replacement loop. | Kristaps Dzonsons | 2011-07-27 | 1 | -3/+5 |
| | |||||
* | Critical fix to avoid looping forever. | Kristaps Dzonsons | 2011-07-27 | 1 | -1/+3 |
| | |||||
* | Clean up roff_getstrn() function. | Kristaps Dzonsons | 2011-07-27 | 1 | -4/+5 |
| | |||||
* | Simply word allocation in libmdoc and libman. | Kristaps Dzonsons | 2011-07-27 | 2 | -16/+2 |
| | |||||
* | Disable in-line eqn processing for a bit. | Kristaps Dzonsons | 2011-07-27 | 3 | -3/+13 |
| | |||||
* | Move mandoc_hyph() into roff_parsetext() as a single conditional. While | Kristaps Dzonsons | 2011-07-27 | 3 | -59/+31 |
| | | | | | here, do some function renames for clarity and make all function prototypes be in one place. | ||||
* | First, roff_res() has no need to invoke ROFF_RERUN: since it's executed | Kristaps Dzonsons | 2011-07-27 | 2 | -20/+46 |
| | | | | | | | | | | | before any other roff processing occurs, it's Ok to just let it do its thing and pass through. Also, make sure this function is ALWAYS called, not just when first_string is defined. Second, add a new function, roff_parsetext(), that post-processes non-macro lines. This, for the time being, amounts to detecting soft hyphens. This fixes a long-standing bug in that -man now has proper hyphen breaking! | ||||
* | Update mandoc_hyph() to the extent that numbers on either side of the | Kristaps Dzonsons | 2011-07-27 | 1 | -9/+20 |
| | | | | hyphen make for a non-breakable hyphen. Found by random testing. | ||||
* | Use correct column of warning messages and make sure this function is | Kristaps Dzonsons | 2011-07-26 | 1 | -10/+16 |
| | | | | run even when `first_string' isn't defined. | ||||
* | Move checking of escapes into roff.c, where we're already stepping | Kristaps Dzonsons | 2011-07-26 | 3 | -68/+24 |
| | | | | | through looking for user-defined escapes. This clears up a nice bit of validation code. | ||||
* | Implement the first steps of equation parsing from within libmdoc. | Kristaps Dzonsons | 2011-07-25 | 7 | -20/+113 |
| | | | | | | This consists of a shim around the text parser that calls out to libroff if equation components exist on the line. Right now this will do nothing, as the equation delimiter always returns nil. | ||||
* | Slip in a typo.VERSION.1.11.5 | Kristaps Dzonsons | 2011-07-24 | 1 | -1/+1 |
| | |||||
* | We're officially no longer UNIX-specific; make this clear. | Kristaps Dzonsons | 2011-07-24 | 2 | -10/+32 |
| | |||||
* | Scary-looking but otherwise harmless changes allow me to build for Windows. | Kristaps Dzonsons | 2011-07-24 | 14 | -70/+264 |
| | | | | | | | | | | | | That is to say, with mingw32. This amounts to the following: (1) break compat.c into compat_strlcpy.c and compat_strlcat.c (2) add compat_getsubopt.c (from OpenBSD) and test-getsubopt.c (3) add test-strptime.c for HAVE_STRPTIME (4) add ifdef bits here and there, where necessary (5) remove some harmless unportable stuff (u_char, localtime_r) I've added the appropriate mdocml.zip target to the Makefile, too. | ||||
* | Tuned the initial eqn output, making it completely simple. This | Kristaps Dzonsons | 2011-07-24 | 4 | -63/+49 |
| | | | | completes a full initial eqn system, so I'm tagging a release on it. | ||||
* | Flip on equation printing for -T[x]html. | Kristaps Dzonsons | 2011-07-23 | 6 | -14/+101 |
| | |||||
* | Clarify what eqn actually is. | Kristaps Dzonsons | 2011-07-23 | 1 | -0/+3 |
| | |||||
* | Note GNU extensions in eqn.7. Also add `col' and `pile', which are | Kristaps Dzonsons | 2011-07-23 | 3 | -2/+8 |
| | | | | | mentioned briefly in the eqn User's Manual, but otherwise are unspecified. | ||||
* | Add support for tdefine and ndefine. Consolidate some error messages. Add | Kristaps Dzonsons | 2011-07-23 | 7 | -32/+75 |
| | | | | somem more version notes (getting there). Have the equation nanme be captured. | ||||
* | Raise a warning when text follows the `EN'. | Kristaps Dzonsons | 2011-07-23 | 1 | -1/+7 |
| | |||||
* | Add `fat' font. This pretty much brings us in line with the second | Kristaps Dzonsons | 2011-07-23 | 3 | -1/+3 |
| | | | | edition of eqn. | ||||
* | Ignore `back', `fwd', `up', `down', `mark', and `lineup'. | Kristaps Dzonsons | 2011-07-23 | 2 | -3/+45 |
| | |||||
* | Add matrix support. Also remove "above" notion, as all elements in a | Kristaps Dzonsons | 2011-07-23 | 5 | -32/+81 |
| | | | | list are delimited by their "aboveness" and it's superfluous. | ||||
* | The circumflex is also a special space character. | Kristaps Dzonsons | 2011-07-23 | 3 | -24/+37 |
| | | | | | Note this and clean up some documentation in eqn.7. Also add some version notes, although I'm not ready for a release yet. | ||||
* | Check for and throw away `gfont' eqn macros. | Kristaps Dzonsons | 2011-07-22 | 2 | -3/+26 |
| | |||||
* | Add support for `gsize' eqn token (introduced in second-edition troff). | Kristaps Dzonsons | 2011-07-22 | 5 | -13/+42 |
| | |||||
* | Add all rendered symbols used by eqn. I use the Second-Edition User's | Kristaps Dzonsons | 2011-07-22 | 2 | -47/+100 |
| | | | | | Manual (1978) for this, so it should catch most of them. They just map into the mandoc_char escaped characters. | ||||
* | Add support for 1/2, 1/4, and 3/4 (needed by eqn). | Kristaps Dzonsons | 2011-07-22 | 3 | -1/+7 |
| | |||||
* | Clearer documentation of grammar in eqn.7 and addition of Greek symbols. | Kristaps Dzonsons | 2011-07-22 | 1 | -29/+22 |
| | |||||
* | Support translating Greek characters in eqn. | Kristaps Dzonsons | 2011-07-22 | 1 | -0/+94 |
| | |||||
* | Fix left/right nesting in eqn. | Kristaps Dzonsons | 2011-07-22 | 2 | -4/+8 |
| | |||||
* | Add character output (-Tpdf, -Tps, -Tascii) for equations. This is the | Kristaps Dzonsons | 2011-07-22 | 5 | -4/+96 |
| | | | | minimum: unseparated terms. | ||||
* | Protect macro expansion. | Kristaps Dzonsons | 2011-07-22 | 1 | -1/+1 |
| | |||||
* | Use a macro instead of doing a string-fragment compare. I just get | Kristaps Dzonsons | 2011-07-22 | 1 | -28/+23 |
| | | | | | | worried that I'm going to write the wrong size on both sides of the equality (I've already done it a few times). This cleans up the code readability a bit. | ||||
* | Give lists their own eqn function. | Kristaps Dzonsons | 2011-07-22 | 3 | -36/+61 |
| | |||||
* | Accomodate for hard-spaces with tildes. For now, consider them regular | Kristaps Dzonsons | 2011-07-22 | 1 | -4/+16 |
| | | | | | | spaces. Also allow for tabs. Finally, have the parser correctly handle open and close brackets smooshed against other terms. All of these handle "details" noted in the CACM paper. | ||||
* | Fix eqn handling of PILE clauses (multiple ABOVE statements may be | Kristaps Dzonsons | 2011-07-21 | 1 | -17/+14 |
| | | | | specified for each PILE). | ||||
* | Complete eqn.7 parsing. Features all productions from the original 1975 | Kristaps Dzonsons | 2011-07-21 | 7 | -124/+279 |
| | | | | | | | | CACM paper in an LR(1) parse (1 -> eqn_rewind()). Right now the code is a little jungly, but will clear up as I consolidate parse components. The AST structure will also be cleaned up, as right now it's pretty ad hoc (this won't change the parse itself). I added the mandoc_strndup() function will here. | ||||
* | Support `size' constructs in eqn.7. Generalise mandoc_strontou to this | Kristaps Dzonsons | 2011-07-21 | 8 | -15/+31 |
| | | | | effect. | ||||
* | Full support for eqn positionals (above, over, sup, sub, etc.). | Kristaps Dzonsons | 2011-07-21 | 4 | -8/+49 |
| | |||||
* | Add eqn subexpression fonts. | Kristaps Dzonsons | 2011-07-21 | 4 | -17/+52 |
| | |||||
* | Add support for markers. These decorate the last box: see eqn.7. | Kristaps Dzonsons | 2011-07-21 | 4 | -9/+60 |
| | |||||
* | Document `{, }' subexpressions in eqn.7. | Kristaps Dzonsons | 2011-07-21 | 1 | -0/+1 |
| | |||||
* | Support nested `{, }' subexpressions in eqn. Document in code. | Kristaps Dzonsons | 2011-07-21 | 4 | -20/+73 |
| | |||||
* | Make `undef' not expand its argument before undefining it. Document | Kristaps Dzonsons | 2011-07-21 | 2 | -15/+34 |
| | | | | this and have the same behaviour apply to `set' and `define'. | ||||
* | Flip eqn into using parsed nodes. I've temporarily disabled printing | Kristaps Dzonsons | 2011-07-21 | 8 | -63/+128 |
| | | | | | | | these in the front-ends except for -Ttree, which will display the parsed tree. While here, fix that quoted strings aren't scanned for replacement parts. | ||||
* | Finish the eqn syntactic parser. This correctly parses terms and does | Kristaps Dzonsons | 2011-07-21 | 7 | -213/+253 |
| | | | | | | | the proper `define' dance, which amounts to pure word-replace (you can, say, define `foo' as `define' then define `define' as something else). eqn.c is now ready for some semantic parsing of `box' and `eqn' productions as defined by the grammar. | ||||
* | Forgot to add these bits to the last commit. | Kristaps Dzonsons | 2011-07-18 | 2 | -0/+2 |
| | |||||
* | Note that equation definitions are nestable. | Kristaps Dzonsons | 2011-07-18 | 1 | -1/+5 |
| | |||||
* | Definitions in eqn.7 are actually recursive. Do this and add crude | Kristaps Dzonsons | 2011-07-18 | 1 | -7/+29 |
| | | | | protection that we don't nest back to ourselves. |