Markdown 的目標是實現「易讀易寫」。

不過最需要強調的便是它的可讀性。一份使用 Markdown 格式撰寫的文件應該可以直接以純文字發佈,並且看起來不會像是由許多標籤或是格式指令所構成。

因此 Markdown 的語法全由標點符號所組成,並經過嚴謹慎選,是為了讓它們看起來就像所要表達的意思。像是在文字兩旁加上星號,看起來就像*強調*。Markdown 的清單看起來,嗯,就是清單。假如你有使用過電子郵件,區塊引言看起來就真的像是引用一段文字。


Code blocks use the peppermint theme.

class Awesome < ActiveRecord::Base
  include EvenMoreAwesome

  validates_presence_of :something
  validates :email, email_format: true

  def initialize(email, name = nil) = email = name
<!DOCTYPE html>

<style>body {width: 500px;}</style>

<script type="application/javascript">
  function $init() {return true;}

  <p checked class="title" id='title'>Title</p>
  <!-- here goes the rest of the page -->


In this way of using Liquid tag highlight, you can add language identifier (here is ruby) or its supported aliases (rb for ruby). Here is the list for supported languages:

  • actionscript: ActionScript [aliases: as,as3]
  • apache: configuration files for Apache web server
  • apiblueprint: Markdown based API description language. [aliases: apiblueprint,apib]
  • applescript: The AppleScript scripting language by Apple Inc. (
  • biml: BIML, Business Intelligence Markup Language
  • c: The C programming language
  • ceylon: Say more, more clearly.
  • cfscript: CFScript, the CFML scripting language [aliases: cfc]
  • clojure: The Clojure programming language ( [aliases: clj,cljs]
  • cmake: The cross-platform, open-source build system
  • coffeescript: The Coffeescript programming language ( [aliases: coffee,coffee-script]
  • common_lisp: The Common Lisp variant of Lisp ( [aliases: cl,common-lisp,elisp,emacs-lisp]
  • conf: A generic lexer for configuration files [aliases: config,configuration]
  • coq: Coq (
  • cpp: The C++ programming language [aliases: c++]
  • csharp: a multi-paradigm language targeting .NET [aliases: c#,cs]
  • css: Cascading Style Sheets, used to style web pages
  • d: The D programming language( [aliases: dlang]
  • dart: The Dart programming language (
  • diff: Lexes unified diffs or patches [aliases: patch,udiff]
  • eiffel: Eiffel programming language
  • elixir: Elixir language ( [aliases: elixir,exs]
  • erb: Embedded ruby template files [aliases: eruby,rhtml]
  • erlang: The Erlang programming language ( [aliases: erl]
  • factor: Factor, the practical stack language (
  • fortran: Fortran 95 Programming Language
  • gherkin: A business-readable spec DSL ( ) [aliases: cucumber,behat]
  • glsl: The GLSL shader language
  • go: The Go programming language ( [aliases: go,golang]
  • gradle: A powerful build system for the JVM
  • groovy: The Groovy programming language (
  • haml: The Haml templating system for Ruby ( [aliases: HAML]
  • handlebars: the Handlebars and Mustache templating languages [aliases: hbs,mustache]
  • haskell: The Haskell programming language ( [aliases: hs]
  • html: HTML, the markup language of the web
  • http: http requests and responses
  • ini: the INI configuration format
  • io: The IO programming language (
  • java: The Java programming language (
  • javascript: JavaScript, the browser scripting language [aliases: js]
  • jinja: Django/Jinja template engine ( [aliases: django]
  • json: JavaScript Object Notation (
  • json-doc: JavaScript Object Notation with extenstions for documentation
  • jsonnet: An elegant, formally-specified config language for JSON
  • julia: The Julia programming language [aliases: jl]
  • kotlin: Kotlin
  • liquid: Liquid is a templating engine for Ruby (
  • literate_coffeescript: Literate coffeescript [aliases: litcoffee]
  • literate_haskell: Literate haskell [aliases: lithaskell,lhaskell,lhs]
  • llvm: The LLVM Compiler Infrastructure (
  • lua: Lua (
  • make: Makefile syntax [aliases: makefile,mf,gnumake,bsdmake]
  • markdown: Markdown, a light-weight markup language for authors [aliases: md,mkd]
  • matlab: Matlab [aliases: m]
  • moonscript: Moonscript ( [aliases: moon]
  • nasm: Netwide Assembler
  • nginx: configuration files for the nginx web server (
  • nim: The Nim programming language ( [aliases: nimrod]
  • objective_c: an extension of C commonly used to write Apple software [aliases: objc]
  • ocaml: Objective CAML (
  • pascal: a procedural programming language commonly used as a teaching language.
  • perl: The Perl scripting language ( [aliases: pl]
  • php: The PHP scripting language ( [aliases: php,php3,php4,php5]
  • plaintext: A boring lexer that doesn’t highlight anything [aliases: text]
  • powershell: powershell [aliases: posh]
  • praat: The Praat scripting language (
  • prolog: The Prolog programming language ( [aliases: prolog]
  • properties: .properties config files for Java
  • protouf: Google’s language-neutral, platform-neutral, extensible mechanism for serializing structured data [aliases: proto]
  • puppet: The Puppet configuration management language ( [aliases: pp]
  • python: The Python programming language ( [aliases: py]
  • qml: QML, a UI markup language [aliases: qml]
  • r: The R statistics language ( [aliases: r,R,s,S]
  • racket: Racket is a Lisp descended from Scheme (
  • ruby: The Ruby programming language ( [aliases: rb]
  • rust: The Rust programming language ( [aliases: rs]
  • sass: The Sass stylesheet language language (
  • scala: The Scala programming language ( [aliases: scala]
  • scheme: The Scheme variant of Lisp
  • scss: SCSS stylesheets (
  • sed: sed, the ultimate stream editor
  • shell: Various shell languages, including sh and bash [aliases: bash,zsh,ksh,sh]
  • shell_session: A generic lexer for shell session and command line [aliases: terminal,console]
  • slim: The Slim template language
  • smalltalk: The Smalltalk programming language [aliases: st,squeak]
  • smarty: Smarty Template Engine [aliases: smarty]
  • sml: Standard ML [aliases: ml]
  • sql: Structured Query Language, for relational databases
  • swift: Multi paradigm, compiled programming language developed by Apple for iOS and OS X development.(
  • tap: Test Anything Protocol [aliases: tap]
  • tcl: The Tool Command Language (
  • tex: The TeX typesetting system [aliases: TeX,LaTeX,latex]
  • toml: the TOML configuration format (
  • tulip: The tulip programming language [aliases: tlp]
  • twig: Twig template engine (
  • typescript: TypeScript, a superset of JavaScript [aliases: ts]
  • vb: Visual Basic [aliases: visualbasic]
  • verilog: The System Verilog hardware description language
  • viml: VimL, the scripting language for the Vim editor ( [aliases: vim,vimscript,ex]
  • xml: XML
  • yaml: Yaml Ain’t Markup Language ( [aliases: yml]


They’re responsive, and well-proportioned (in padding, line-height, margin, and font-size).

They draw the perfect amount of attention

This allows your content to have the proper informational and contextual hierarchy. Yay.


  • Apples
  • Oranges
  • Potatoes
  • Milk
  1. Mow the lawn
  2. Feed the dog
  3. Dance




You can use the markdown quote syntax, > for simple quotes.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse quis porta mauris.

LaTeX 支援

The default math delimiters are $$. Hence $$ E = m \cdot c^2 $$ yields \(E = m \cdot c^2\)

And here’s something more fancy:

\[\zeta(s) = \frac{1}{\Gamma(s)} \int \limits_0^\infty x^{s-1} \sum_{n=1}^\infty e^{-nx} \mathrm{d}x = \frac{1}{\Gamma(s)} \int \limits_0^\infty \frac{x^{s-1}}{e^x - 1} \mathrm{d}x\]

There’s more being added all the time

Checkout the Github repository to request, or add, features.

Happy writing.