Commit Graph
14 Commits
Author SHA1 Message Date
david parsons e645861ae2 Tweaks to argument handling 2012-03-07 08:40:42 -08:00
david parsons 6eacbc931b I macro if(e) into if( (e) ) if gcc or clang are detected 2012-01-24 09:53:51 -08:00
david parsons 094b09800e 1. In configure.inc, check for (and comment disapprovingly) if someone is inflicting clang on discount.
2. strip types off `main()`s so that stupid clang won't die.
2011-10-06 23:26:33 -07:00
David Parsons 8ca7a50e70 mkd_text() is now mkd_generateline(); the new
function `mkd_line()` formats a line into a string,
similarly to `mkd_toc()`, `mkd_xml()`, and so on.

There are a whole bunch of new public functions now,
so I'm pushing the version up to 1.4.0
2009-05-12 10:49:51 -07:00
david parsons 5c6115c601 1. Add the new amalloc module, which (if enabled with
--enable-amalloc) replaced malloc and its ilk with
    versions that attempt to maintain a linked list of
    allocated blocks that can be printed to stderr with
    the `adump()` function.

2.  Clean up a couple more places where I leak memory
    during the first level parse.

3.  tweak cstring.h to try to chase down places where
    the C compiler might optimize EXPAND() into producing
    broken code.
2008-04-03 11:22:07 -07:00
david parsons 41c153a48a Replace all alloca()s with malloc() 2008-03-13 16:49:46 -07:00
david parsons dd79f848b7 1. version[] -> markdown_version[]
2. clean up \-escapes so that only special characters will be escaped.
 3. Use the entity � as a token break.
 4. check for the existance of goddamn gcc
2008-02-18 10:09:23 -08:00
david parsons 52bc316ff9 1. in mkdio.h, tweak the MMIOT abstract type from `void\*'' to `void''.
2. in `theme.c` ...
    1. use a keyword table instead of an inline islike() cascade.
    2. make `?theme source?` print the **basename** of the pagename, and
    3. add the new `?theme path?` to print the dirname of the pagename
3. when configuring, check for a sane (reentrant) `basename()` function.
4. when giving the package version#, say `discount` instead of `markdown`
2008-01-23 11:43:54 -08:00
David Parsons 20dc07feb2 1. lowercase tag names for better compatability with anal-retentive
newer web standards.
2. clean up the usage comment and example in the header.
2008-01-13 11:27:46 -08:00
david parsons bbbf1d03e7 In mkd2html, don't #include <libgen.h> unless the system has it.
Also in mkd2html, define a `basename()` if the system doesn't have it.
2008-01-13 01:44:41 -08:00
David Parsons 880d338ffb 1. Trim back leading spaces when returning fields from the document header.
2. `#include <string.h>` in cstring.h so we can get the prototype for
   `memmove()`
3. Update the mkd2html test program.
2008-01-13 01:40:33 -08:00
david parsons 7701fda2ee Remember how I said that the 0.9 published interface was likely to be
the official published interface for version 1.0?  I lied.
2008-01-11 15:42:13 -08:00
david parsons 3fc49328f3 Rework the published interface.
1. Officially expose mkd_compile(), mkd_cleanup(),
       mkd_generatehtml().
    2. Internally use the new Document structure, which
       hold the markup and (optionally) header information.
    3. Support ``--enable-<foo>`` during configure.sh
       * change --with-dl-tag to --enable-dl-tag.
       * add --enable-pandoc-header to support pandoc headers.
2008-01-10 12:22:39 -08:00
david parsons b73546a9bf 1. Write a sample program that uses some of the so-far-unpublished internal
interfaces to generate a complete web page.

2. Add the paragraph flow testcase to version control.
2008-01-08 22:35:16 -08:00