Markdown Formatting

Markdown is the core textual format of documents. Constellate supports several bells and whistles on top of standard Markdown. If you want more customizability or different features, feel free to file a feature request. Here's a whirlwind tour of what syntax Constellate supports: the Markdown source is on the right.

Constellate uses Elastic UI for the core Markdown parsing, so it supports everything Elastic UI does. That page demonstrates all of the syntax: here are the highlights and the Constellate-specific stuff.

Text can be bold, italic, both, strikethrough, or code. Code blocks are supported, with copy buttons and syntax highlighting by default. Provide the language to ensure the highlighting looks good:

function this_is_js_code() {
  if (0 != 1)  {
    console.log('Math still works');
  }
}

Importantly, a single line break is not rendered as a new line: to set off a new paragraph, you need an empty line between paragraphs. You may be used to some Markdown services that treat any newline character as a line break, but Constellate requires a double newline. This lets you keep line lengths short without forcing a bunch of individual paragraphs: see how this line looks in the source code.

TablesAre CoolRight Aligned (note the colon in the markup!)
SomeData12
MoreCells40
TotalUp52
  • Unordered lists can be made with hyphens or asterisks.
    • Levels of nesting are supported.
      • And deeper still...
  1. Ordered lists are also supported.
  2. The numbers don't matter, as they're auto-incremented properly.
    1. These can be nested too.
      1. Using four spaces...

Horizontal rules can be made using underscores or hyphens.

This is what a blockquote looks like, using > before each line.

—Someone at some point, probably

The first three levels of headers impact the document structure, but you can use other headers freely.

H5
H6

Links look like this. [link text](link URL)

Links to image URLs will display inline if you add a ! before:

Image alt text


Now the stuff Constellate tacks on:

LaTeX\LaTeX can be used1, both inline like this\mathrm{this} using single dollar signs or display mode using two:

This equation will be centered and big.ex2dx=π \mathrm{This\ equation\ will\ be\ centered\ and\ big.} \\ \int_{-\infty}^{\infty} e^{-x^2}\, dx = \sqrt{\pi}

You can include raw HTML for more control, although whenever possible try to use Markdown to make sure your output is styled correctly. For example, you might force a certain color, even though this is generally discouraged.

Everyone loves 😂 emojis! 😭 Either use the Unicode character directly, like 😂, or :joy:

Footnotes are very nice to have.hi You use [^id] for the footnote itself and [^id]: for the footnote definition.hover It doesn't matter where you put the footnote definitionany: all of the footnotes will be put into a collapsible container at the bottom of the page. Hovering over footnotes will show the footnote, and clicking on them will open the container and scroll to them. Each footnote gets a link back as well.hi

There are a couple automated transformations that make writing text easier. The straight apostrophe and double quote become the curled versions, like 'so' and "so"; -- becomes --; and ... becomes ..., the ellipsis character.


  1. Constellate uses KaTeX, not MathJax, which is a small difference from how notebooks are rendered in the browser.
  2. Here's an example. Note how there are two links to this footnote.
  3. I can't vouch that this formatting will always look great, but LaTeX\LaTeX and standard markup are supported.
  4. This definition even precedes its reference!
Code

Markdown Formatting

Markdown is the core textual format of documents. Constellate supports several bells and whistles on top of standard Markdown. If you want more customizability or different features, feel free to file a feature request. Here's a whirlwind tour of what syntax Constellate supports: the Markdown source is on the right.

Constellate uses Elastic UI for the core Markdown parsing, so it supports everything Elastic UI does. That page demonstrates all of the syntax: here are the highlights and the Constellate-specific stuff.

Text can be bold, italic, both, strikethrough, or code. Code blocks are supported, with copy buttons and syntax highlighting by default. Provide the language to ensure the highlighting looks good:

function this_is_js_code() {
  if (0 != 1)  {
    console.log('Math still works');
  }
}

Importantly, a single line break is not rendered as a new line: to set off a new paragraph, you need an empty line between paragraphs. You may be used to some Markdown services that treat any newline character as a line break, but Constellate requires a double newline. This lets you keep line lengths short without forcing a bunch of individual paragraphs: see how this line looks in the source code.

TablesAre CoolRight Aligned (note the colon in the markup!)
SomeData12
MoreCells40
TotalUp52
  • Unordered lists can be made with hyphens or asterisks.
    • Levels of nesting are supported.
      • And deeper still...
  1. Ordered lists are also supported.
  2. The numbers don't matter, as they're auto-incremented properly.
    1. These can be nested too.
      1. Using four spaces...

Horizontal rules can be made using underscores or hyphens.

This is what a blockquote looks like, using > before each line.

—Someone at some point, probably

The first three levels of headers impact the document structure, but you can use other headers freely.

H5
H6

Links look like this. [link text](link URL)

Links to image URLs will display inline if you add a ! before:

Image alt text


Now the stuff Constellate tacks on:

LaTeX\LaTeX can be used1, both inline like this\mathrm{this} using single dollar signs or display mode using two:

This equation will be centered and big.ex2dx=π \mathrm{This\ equation\ will\ be\ centered\ and\ big.} \\ \int_{-\infty}^{\infty} e^{-x^2}\, dx = \sqrt{\pi}

You can include raw HTML for more control, although whenever possible try to use Markdown to make sure your output is styled correctly. For example, you might force a certain color, even though this is generally discouraged.

Everyone loves 😂 emojis! 😭 Either use the Unicode character directly, like 😂, or :joy:

Footnotes are very nice to have.hi You use [^id] for the footnote itself and [^id]: for the footnote definition.hover It doesn't matter where you put the footnote definitionany: all of the footnotes will be put into a collapsible container at the bottom of the page. Hovering over footnotes will show the footnote, and clicking on them will open the container and scroll to them. Each footnote gets a link back as well.hi

There are a couple automated transformations that make writing text easier. The straight apostrophe and double quote become the curled versions, like 'so' and "so"; -- becomes --; and ... becomes ..., the ellipsis character.


  1. Constellate uses KaTeX, not MathJax, which is a small difference from how notebooks are rendered in the browser.
  2. Here's an example. Note how there are two links to this footnote.
  3. I can't vouch that this formatting will always look great, but LaTeX\LaTeX and standard markup are supported.
  4. This definition even precedes its reference!
Code