28 Commits
Author SHA1 Message Date
jessica parsons 985091d673 use calloc instead of malloc when initializing footnotes & flags 2025-09-08 09:31:16 -07:00
jessica parsons 8ddfb981ef redo the html5 flag option to make it a per-MMIOT thing, instead of being a global block that we have to deallocate when we're done; also take the opportunity to clean up mkd_initmmiot to have it set fags & html5 extraflags instead of duplicating that code in three places 2025-09-03 17:26:21 -07:00
jessica parsons 61c748f021 add support for extended attributes on [] & ![] links 2025-08-30 01:09:53 -07:00
david parsons faa5150346 add the new runtime flag ALT_AS_TITLE; if an image has no title, use the alt text as the title 2023-02-21 11:03:12 -08:00
David Seifert 7afa5c6242 Make C99 clean
* Clang 16 (and likely GCC 14) will enforce strict C99 semantics
  and break old K&R C declarations and require correct C89
  function prototypes.

Bug: https://bugs.gentoo.org/870952
Clang: https://discourse.llvm.org/t/configure-script-breakage-with-the-new-werror-implicit-function-declaration/65213/9
2022-10-27 11:08:49 -07:00
david parsons e12437122a rolling in the v2.2.7c fix to tag behavior patch 2022-10-04 12:07:49 -07:00
david parsons d9847e36be add an exerciser to verify flag set, flag clear, and flag copy 2022-05-13 20:14:37 -07:00
david parsons b3f7b306e7 clean up the internals of mkd_copy_flags() 2022-05-13 19:20:23 -07:00
david parsons b79887284a add a flag copy function 2022-05-13 16:38:45 -07:00
david parsons e3042eb904 add a free_flags() function to complement the flag blob maker 2020-04-08 11:46:26 -07:00
david parsons 2e900346a0 make the published mkd_flag_t opaque and add a new function (mkd_flags()) to generate a flag structure and return it in malloced memory 2020-03-07 19:56:22 -08:00
david parsons b9e867b574 redo the whole flags dealie as an opaque blob 2019-12-07 22:49:52 -08:00
david parsons b52ec440d4 strip out MKD_STRICT as a single flag (convert it into a composite flag that turns off a whole bunch of extensions); use that flagbit to disable github checkbox items, strip out MKD_DLIST as a single flag (convert it into a mask of MKD_DLDISCOUNT|MKD_DLEXTRA, and rework pgm_options so that 'strict' and 'relaxed' apply only to emphasis and 'standard' is the flag that sets & clears flags to make it closer to the standard. Version 3 because I'm fucking with the published interface 2019-04-14 20:56:55 -07:00
david parsons 7fdc188f07 clean up all references to flags; define them EVERYWHERE as mkd_flag_t 2018-09-18 08:25:27 -07:00
david parsons 32feae5ed4 Add EXPLICITLIST to flags.c 2017-03-08 07:11:01 -08:00
david parsons f3681ccc8d Eat one of the two remaining flag bits (64-bin flag_t, here we
come!) to make LaTeX support a runtime flag.
2016-05-21 21:58:50 -07:00
Nathan Phillip Brink 5da3388382 Convert urlencodedanchor to a runtime flag for issue #124.
Instead of `./configure.sh --with-urlencoded-anchor`, now use
`-furlencodedanchor` or `MKD_URLENCODEDANCHOR`.
2015-07-13 03:24:31 +00:00
Nathan Phillip Brink 5790b66a4a Make githubtags configurable at runtime for issue #124.
Instead of `./configure.sh --with-github-tags`, specify `-fgithubtags`
or `MKD_GITHUBTAGS`. Shows up in `markdown -VV` as `GITHUBTAGS`
instead of `GITHUB-TAGS` now.
2015-07-13 03:24:31 +00:00
Nathan Phillip Brink 2ff7c1f41b Convert compiletime ID Anchor setting to runtime flag for issue #124.
Now specify flag `-fidanchor` or `MKD_IDANCHOR` instead of
`./configure.sh --with-id-anchor`. In `markdown -VV` displays as
`IDANCHOR` or `!IDANCHOR` rather than `ID-ANCHOR`.
2015-07-13 03:24:31 +00:00
Nathan Phillip Brink 088b5ab628 Convert --with-fenced-code to runtime flag for issue #124.
This change is more invasive and difficult for me as not all existing
preprocessor directives directly translate to `if () {}`.

Instead of passing `--with-fenced-code` to `configure.sh`, now use
`MKD_FENCEDCODE` or `-ffencedcode`.

The output of `markdown -VV` will now display `FENCEDCODE` if the
feature is enabled and `!FENCEDCODE` if it is disabled rather than
displaying `FENCED-CODE` if the feature is enabled.
2015-07-13 03:24:30 +00:00
Nathan Phillip Brink 811a8560dd Convert --with-dl to runtime flags for issue #124.
Instead of specifying `./configure.sh --with-dl=both`, specify
`-fdlextra` or `MKD_DLEXTRA` at runtime.
2015-07-13 03:24:29 +00:00
david parsons f34f9a1f51 Add the new option MKD_NOSTYLE, which disables special handling
of style blocks and treats them like plain old html.
2012-08-05 20:30:45 -07:00
david parsons 5a019adc0c Add flags to enable/disable markdown extra footnotes 2011-01-13 12:02:12 -08:00
david parsons 10f340de89 Rename the text for MKD_1_COMPAT to `MKD_1_COMPAT'' (instead of the cutandpasted `1_COMPAT'') 2010-11-10 22:45:19 -08:00
david parsons e767d30715 Don't put out a newline at the end of the runtime flags when not in html mode. 2010-11-10 22:42:19 -08:00
david parsons 3703812fd3 Use two-column output for the html table. 2010-11-10 22:31:14 -08:00
david parsons 796c9f70c7 Rework the html output for mkd_flags_are to use <s>strikethrough</s> on options that are logically OFF. 2010-11-10 17:19:16 -08:00
david parsons 6922fdfe94 Add a couple of functions that write the current runtime configuration
(either a flags value (mkd_flags_are) or of an MMIOT (mkd_mmiot_flags))
to a FILE.    `markdown -VV` prints out the flags for now, and the
functions are there for other people to use as they desire.
2010-11-10 15:30:39 -08:00