The Markdown Guide
repository·master·Indexed 26 days ago
https://github.com/mattcone/markdown-guideA comprehensive reference for Markdown syntax and usage for beginners and experts. It covers basic syntax including blockquotes, inline code, code blocks, emphasis, escaping characters, headings, horizontal rules, HTML tags, images, line breaks, and various linking methods. The guide also provides best practices for cross-parser compatibility.
What's inside Markdown Guide
- Marked 2 is a proprietary macOS application designed for previewing (not editing) Markdown files. It serves as a desktop Markdown renderer that can be used by dragging and dropping files onto the application icon. It is particularly useful for users of text editors without built-in preview capabilities (like Vim) to provide a side-by-side live preview of rendered Markdown.
Overview of Deepdwn Markdown Editor
masterDeepdwn is an offline-only, feature-rich Markdown editing suite available for Windows, Mac, and Linux. It supports document organization via tags and categories in YAML front matter, and supports backlinks to connect documents.
Key features include:
- Editing Tools: Document outline, distraction-free mode, table auto-formatting, Vim and Emacs keybindings, automatic list continuation, and persistent section folding.
- Media & Assets: Image drag-and-drop with in-editor previews.
- Analytics: Per-file and global word count history.
- Advanced Rendering: Support for Mermaid diagrams, AsciiMath, Katex, mhchem (math/chemistry), sheet music, guitar tabs, and songbooks.
Overview of teedoc static site generator
masterteedoc is an open-source static site generator written in Python that converts Markdown files and Jupyter notebooks into documentation websites. It is designed for multiple documentation sites, wikis, or knowledge bases and uses themistuneMarkdown parser.Overview of StackEdit online editor
masterStackEdit is a powerful online Markdown editor that runs directly in your web browser, requiring no local installation. It supports syncing and saving files to third-party services, outputting to various file formats using custom templates, and configuring file metadata. It also supports LaTeX and UML diagrams. Note that some file export formats (like PDF) require a subscription.Overview of GitJournal
masterGitJournal is a mobile-first Markdown editor that integrates with Git for note syncing. It allows you to sync notes using any Git repository accessible via SSH, such as GitHub, GitLab, Gitea, or a self-hosted server. It is designed to give users control over their data using the open Git protocol.HackMD Syntax Support Overview
masterHackMD is a real-time collaborative Markdown editor that supports CommonMark and several extended syntax elements. In addition to standard Markdown, it supports:
- MathJax: For mathematical formulas.
- Mermaid and Graphviz: For rendering UML diagrams.
- Vega-lite: For data visualizations.
It also supports various extended Markdown features like definition lists, task lists, strikethrough, subscript, superscript, and emoji.
Explore additional Markdown learning resources
masterFor further learning beyond this guide, you can consult the following resources:
- Original Documentation: John Gruber's Markdown documentation by the creator of Markdown.
- Interactive Learning: Markdown Tutorial, an open-source site for practicing Markdown in a web browser.
- Tooling & Lists: Awesome Markdown for a curated list of Markdown tools and resources.
- Advanced Typesetting: Typesetting Markdown for information on using pandoc and ConTeXt to typeset documents.
Understand the Markdown processing workflow
masterMarkdown writing follows a four-part process to convert plaintext into viewable documents:
- Create: Write content in a text editor or dedicated application, saving the file with an
.mdor.markdownextension. - Open: Load the file into a Markdown application.
- Convert: Use a Markdown processor (also called a parser or implementation) within the application to convert the Markdown text into HTML.
- View/Export: View the resulting HTML in a web browser, or use the application to export the document to other formats like PDF.
Note that a Markdown application (the user interface) and a Markdown processor (the engine that performs the conversion) are separate components, though many applications combine them into a single user experience.
- Create: Write content in a text editor or dedicated application, saving the file with an
Understand Markdown flavors
masterMarkdown is not a single, unified standard; instead, different applications implement different versions known as flavors. These flavors act like language dialects—while the core concepts remain similar, the specific syntax supported can vary significantly between applications (e.g., JotBird vs. Ulysses).
When choosing an application, be aware that "Markdown support" can mean different things: it might only include basic syntax elements or include extended syntax elements. To ensure your files remain portable across different tools, select an application with robust Markdown support.
Understand Markdown fundamentals
masterMarkdown is a lightweight markup language used to add formatting elements to plaintext text documents. Unlike WYSIWYG (What You See Is What You Get) editors like Microsoft Word where you click buttons to format text, Markdown requires you to add specific syntax directly into the text to indicate formatting.
Key characteristics:
- Readability: The syntax is designed to be readable and unobtrusive, meaning the document remains legible even when not rendered.
- Portability: Markdown files are plaintext and can be edited in any text editor or specialized Markdown application across macOS, Windows, Linux, iOS, and Android.
- Syntax-based: Formatting is achieved by adding characters (like
#or**) around text.
Create basic blockquotes
masterTo create a blockquote, add a
>character in front of a paragraph.> Dorothy followed her through many of the beautiful rooms in her castle.Apply bold and italic emphasis in Markdown
masterYou can combine bold and italic styles by using three asterisks (
***) or three underscores (___) before and after a word or phrase.To emphasize the middle of a word (without spaces), wrap the target letters in three asterisks.
Best Practice: Because different Markdown processors handle underscores differently within words, use asterisks (
*) instead of underscores (_) when emphasizing the middle of a word to ensure maximum compatibility.This text is ***really important***. This text is ___really important___ This text is __*really important*__. This text is **_really important_**. # Best practice for middle-of-word emphasis: This is really***very***important text.