{"id":31923670,"url":"https://github.com/fletcher/multimarkdown-4","last_synced_at":"2025-10-25T16:37:08.997Z","repository":{"id":8390703,"uuid":"9967301","full_name":"fletcher/MultiMarkdown-4","owner":"fletcher","description":"This project is now deprecated.  Please use MultiMarkdown-6 instead!","archived":false,"fork":false,"pushed_at":"2015-11-12T19:09:20.000Z","size":6922,"stargazers_count":307,"open_issues_count":7,"forks_count":62,"subscribers_count":35,"default_branch":"master","last_synced_at":"2023-11-07T15:16:53.566Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://github.com/fletcher/MultiMarkdown-5","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fletcher.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-05-09T20:03:05.000Z","updated_at":"2023-11-07T15:16:53.567Z","dependencies_parsed_at":"2022-08-26T22:30:48.952Z","dependency_job_id":null,"html_url":"https://github.com/fletcher/MultiMarkdown-4","commit_stats":null,"previous_names":[],"tags_count":19,"template":null,"template_full_name":null,"purl":"pkg:github/fletcher/MultiMarkdown-4","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fletcher%2FMultiMarkdown-4","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fletcher%2FMultiMarkdown-4/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fletcher%2FMultiMarkdown-4/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fletcher%2FMultiMarkdown-4/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fletcher","download_url":"https://codeload.github.com/fletcher/MultiMarkdown-4/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fletcher%2FMultiMarkdown-4/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279017193,"owners_count":26086017,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-13T02:00:06.723Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-13T23:55:43.671Z","updated_at":"2025-10-13T23:56:22.983Z","avatar_url":"https://github.com/fletcher.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Title:\tMultiMarkdown 4 ReadMe  \nAuthor:\tFletcher T. Penney  \nBase Header Level:\t2  \n\nIntroduction\n===============\n\n[Markdown] is a simple markup language used to convert plain text into HTML. \n\n[MultiMarkdown] is a derivative of Markdown that adds new syntax features, such as footnotes, tables, and metadata. Additionally, it offers mechanisms to convert plain text into LaTeX in addition to HTML. \n\n\n## Background ##\n\nMultiMarkdown started as a Perl script, which was modified from the original Markdown.pl.\n\nMultiMarkdown v3 (aka 'peg-multimarkdown') was based on John MacFarlane's [peg-markdown].  It used a parsing expression grammar (PEG), and was written in C in order to compile on almost any operating system.  Thanks to work by Daniel Jalkut, MMD v3 was built so that it didn't have any external library requirements.\n\nMultiMarkdown v4 is basically a complete rewrite of v3.  It uses the same basic PEG for parsing (Multi)Markdown text, but otherwise is almost completely rebuilt:\n\n* The code is designed to be easier to maintain --- it's divided into separate files on a more logical structure\n* All memory leaks (to my knowledge) have been fixed\n* [greg] is used instead of [peg/leg] to create the parser --- this allows the parser to be thread-safe\n* The [test suite] has been modified to account for several improvements.  MMD should fail one of the basic Markdown tests (see [peg-markdown] for more information).\n* Command line options are *slightly* different.\n\n\n# Installation #\n\nYou can compile for yourself, or download a precompiled binary from the [downloads] page.\n\n* Download the source from the [github] web site using `git`\n* `git submodule init` and then `git submodule update` to download `greg` and the test suite\n* Run `make` to compile.\n* Run `make test-all | less` to verify that the build is correct.  As mentioned, one of the tests is expected to fail; the rest should pass on all systems.  \n* Run `sudo make install` and (optionally) `sudo make install-scripts` to install `multimarkdown` and the helper scripts.\n\n\n# Usage #\n\nOnce installed, you simply do something like the following: \n\n* `multimarkdown file.txt` --- process text into HTML. \n\n* `multimarkdown -c file.txt` --- use a compatibility mode that emulates the original Markdown. \n\n* `multimarkdown -t latex file.txt` --- output the results as LaTeX instead of HTML. This can then be processed into a PDF if you have LaTeX installed. You can further specify the `LaTeX Mode` metadata to customize output for compatibility with `memoir` or `beamer` classes. \n\n* `multimarkdown -t odf file.txt` --- output the results as an OpenDocument Text Flat XML file. Does require the plugin be installed in your copy of OpenOffice, which is available at the [peg-multimarkdown-downloads] page. LibreOffice includes this plugin by default. \n\n* `multimarkdown -t opml file.txt` --- convert the MMD text file to an MMD OPML file, compatible with OmniOutliner and certain other outlining and mind-mapping programs (including iThoughts and iThoughtsHD). \n\n* `multimarkdown -h` --- display help and additional options. \n\n* `multimarkdown -b *.txt` --- `-b` or `--batch` mode can process multiple files at once, converting `file.txt` to `file.html` or `file.tex` as directed. Using this feature, you can convert a directory of MultiMarkdown text files into HTML files, or LaTeX files with a single command without having to specify the output files manually. **CAUTION**: This will overwrite existing files with the `html` or `tex` extension, so use with caution. \n\n\n# Notes #\n\nIf you get an error that `greg` fails to build try `touch greg/greg.c`.  I had an issue where the timestamp on that file might have been too old, which caused the build to fail.\n\n\n# LyX Support #\n\nCharles R. Cowan (\u003chttps://github.com/crcowan\u003e) added support for conversion to [LyX](http://www.lyx.org/).  Support for this should be considered to be in alpha/beta, and is not guaranteed.  Issues related to LyX can be added to the MultiMarkdown [issues] page on github, but will need to be answered by Charles.  I am happy to include this code in the main MMD repo, but since I don't use LyX I can't support it myself.  If this arrangement becomes a problem, then LyX support can be removed and it can be kept as a separate fork.\n\n# More Information #\n\nTo get more information about MultiMarkdown, check out the [website][MultiMarkdown] or [User's Guide].\n\n[peg-markdown]:\thttps://github.com/jgm/peg-markdown\n[Markdown]:\thttp://daringfireball.net/projects/markdown/\n[MultiMarkdown]:\thttp://fletcherpenney.net/multimarkdown/\n[peg-multimarkdown]:\thttps://github.com/fletcher/peg-multimarkdown\n[peg-multimarkdown-downloads]:\thttps://github.com/fletcher/peg-multimarkdown/downloads\n[fink]:\thttp://www.finkproject.org/\n[downloads]:\thttp://fletcherpenney.net/multimarkdown/download/\n[GTK+]:\thttp://www.gtk.org/\n[homebrew]:\thttps://github.com/mxcl/homebrew\n[MacPorts]:\thttp://www.macports.org/\n[test suite]:\thttps://github.com/fletcher/MMD-Test-Suite\n[github]:\thttps://github.com/fletcher/MultiMarkdown-4\n[greg]:\thttps://github.com/nddrylliog/greg\n[peg/leg]:\thttp://piumarta.com/software/peg/\n[issues]:\thttps://github.com/fletcher/MultiMarkdown-4/issues\n[User's Guide]:\thttp://fletcher.github.io/MultiMarkdown-4/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffletcher%2Fmultimarkdown-4","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffletcher%2Fmultimarkdown-4","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffletcher%2Fmultimarkdown-4/lists"}