Markdown
Why Use plain text (like markdown) to write things? Dr Kieran Healy has a nice website explaining how
The Markdown Guide for the Perplexed
Desktop Tools
- Typora — a minimal markdown reading & writing app is probably the most featureful Markdown editor for Mac.
- Markdeep is a technology for writing plain text documents that will look good in any web browser. It supports diagrams, common styling conventions, and equations as extensions of Markdown syntax.
- Marp is a cross-platform Markdown Presentation Writer. HN discussion
- MedleyText - Take programming notes with style
-
VNote - A note-taking application that knows programmers and Markdown better – Qt app.
-
fabiospampinato/notable: The markdown-based note-taking app that doesn’t suck. – Electron app.
-
Glow terminal based markdown reader.
-
markdown-service-tools are a collection of OS X Services designed to make writing Markdown text that much easier.
Wrappers
Foliant
Foliant is a all-in-one documentation authoring tool. It lets you produce standalone documents in pdf and docx, as well as websites, from single Markdown source. Foliant is a higher order tool, which means it uses other programs to do its job. For pdf and docx, it uses Pandoc, for websites it uses MkDocs. Foliant preprocessors let you include parts of documents in other documents, show and hide content with flags, render diagrams from text, and much more.
Who Is Foliant for?
You’ll love Foliant if you:
- need to ship documentation as pdf, docx, and website forms
- want to use Markdown with consistent extension system instead of custome syntax for every new bit of functionality
- like reStructuredText’s extensibility and Asciidoc’s flexibility, but actually would rather use Markdown
- want a tool that you can actually write custom extensions for without dealing with something as overengineered as Sphinx
- have documentation spread across many repos and want to reuse parts between documents
pp - A generic Preprocessor (with Pandoc in mind)
PP is a text preprocessor designed for Pandoc (and more generally Markdown and reStructuredText).
pp
now implements:
- macros
- literate programming
- GraphViz, PlantUML and ditaa diagrams
- Asymptote and R figures
- Bash, Cmd, PowerShell, Python, Lua, Haskell and R scripts
- Mustache
PDF conversion
- yogsototh/mkdocs: No brainer Markdown to HTML and PDF
- Geemili/mdproof: A standalone markdown to PDF converter
- parrt/bookish: A tool that translates augmented markdown into HTML or latex – “a translator that generates HTML using SVG for equations and PDF from native latex equations.” It was created to write this document with 100s of equations – “The Matrix Calculus You Need For Deep Learning”
- vsch/flexmark-java: Java Markdown parser with source level AST. CommonMark 0.28, emulation of: pegdown, kramdown, markdown.pl, MultiMarkdown. With HTML to MD, MD to PDF, MD to DOCX conversion modules.
Command line tools
-
Automatic citation extraction from URLs - phiresky’s blog (
pandoc-url2cite
) -
mermaid - Generation of diagrams and flowcharts from text in a similar manner as markdown.
- Markdown to Confluence Convertor. TL;DR – Install:
gem install markdown2confluence
and use it:markdown2confluence foo.md
- lunaryorn/mdcat: Cat for markdown
- termbook is a command-line tool and library designed to make
mdbook
documentation executable. “…it is essentially nothing more than an mdbook clone with a custom preprocessor.” - Demobox is a quick & stylish way of getting a demo page up and running for your new react component.
Python One liner:
python3 -m markdown -x markdown.extensions.fenced_code -x markdown.extensions.codehilite index.md > index2.html
Browser tools
- HackMD - Collaborative markdown notes via Data stories
- Markdown Presentations For Developers on GitHub, GitLab and Bitbucket - GitPitch. Typical - GitPitch Slideshow URL https://gitpitch.com/user/repo/branch.
- Remark – “A simple, in-browser, Markdown-driven slideshow tool targeted at people who know their way around HTML and CSS”
- ivanceras/spongedown: Markdown with svg bob support. docs. LIVE
- hiroppy/fusuma: ✍️Make slides with Markdown easily.
- Convert Medium Posts to Markdown – “Make Medium Reable Again”
Libraries
- Mistune for Python
-
- claims to be fastest markdown renderer for Python
mistune.markdown('I am using **mistune markdown parser**')
- options are configurable
- contribs
lowdown — simple markdown translator is a Markdown translator producing HTML5 and roff documents in the ms and man formats. Written in C. “Beyond the basic Markdown syntax support, lowdown supports the following Markdown features and extensions: autolinking, fenced code, tables, superscripts, footnotes, disabled inline HTML, “smartypants”, metadata, commonmark (in progress). You can control which parser features are used by using the -d (disable feature) and -e (enable feature) flags.”
Gottox/smu: simple markup - markdown like syntax
syntax-tree/mdast: Markdown Abstract Syntax Tree format; see also syntax-tree/unist: Universal Syntax Tree used by unifiedjs
lkesteloot/teamten’s markdown parser in Java is very easy to understand how the parsing works. It is a good read!
competing mark-up languages
-
Shirakumo/markless: An text markup standard focusing on being intuitive and fast to parse.
-
bakpakin/bkdoc: Markup format and compiler that can output to different document formats.
-
ArchieML –” was created at The New York Times to make it easier to write and edit structured text on deadline that could be rendered in web pages, or more specifically, rendered in interactive graphics.One of the main goals was to make it easy to tag text as data, without having type a lot of special characters.”
-
eno – ” is a structured, plain-text notation language, related in many ways to its ancestors and relatives JSON, YAML, TOML, ArchieML, StrictYAML, and others. Through its simple syntax and versatile nature it targets a wide audience, both in regards to cultural background as well as technical ability. As a modern foundational technology for file-based content it enables highly productive and reliable application development, and the possibility to create file-based content applications for a wider and more diverse user audience than was previously possible.”
-
Documenting and Presenting with Pillar Pillar is a markup syntax and associated tools to write and generate documentation and books. (from the Smalltalk world).