This post is more of a continuously updated note on possible workflows that are based on plain text and the principles of minimal computing.

Plain text and MarkDown

AcademicMarkdown

CriticMarkup

CriticMarkup: extension to MMD for editorial markup of texts. The project website is http://criticmarkup.com/ and the code is hosted on GitHub

  • Integration into tools:
  • Basic Syntax
    • Addition {++ ++}
    • Deletion {-- --}
    • Substitution {~~ ~> ~~}
    • Comment {>> <<}
    • Highlight {== ==}{>> <<}

KramDown

An extension of MarkDown with a strict, unambiguous syntax used in Jekyll. The documentation of the syntax can be found here.

Pandoc and Jekyll

Pandoc can be used as standard processor for markdown in jekyll with the help of small plugins. However, one cannot use any plug-ins if jekyll is run on GitHub-pages, which operate in safe-mode. There was a lengthy discussion on the jekyll forum whether or not to include pandoc as a markdown processor. Unfortunately this has been rejected by the jekyll team.

The advantage of pandoc as markdown processor would be support for image captions etc.

Another pandoc plugin for jekyll

jekyll-pandoc

To install it via terminal type

$ gem install jekyll-pandoc

It can then be referenced in one’s site’s _config.yml as markdown: pandoc after the following has been added:

gems: 
    - jekyll-pandoc

jekyll-pandoc-plugin

This was originally designed to work with jekyll 1.x. Some forks have been updated to provide compatibility with jekyll 2.x and 3.x

Git / GitHub

Jekyll

Liquid templating

Liquid templating was designed by and for the shopify website: “Liquid is an open-source, Ruby-based template language created by Shopify. It is the backbone of Shopify themes and is used to load dynamic content on storefronts.”

Images in Jekyll

the standard markdown syntax of ![caption, alt text](path to image file) works with jekyll, but the alt text is not written to a caption element etc.

A comment on stackoverflow suggests to generate a new template file called image.html in _includes

<figure class="image ">
    <a href="">
        <img src="" alt="">
        <figcaption></figcaption>
    </a>
</figure>

and then to call this template with

![My cat, Robert Downey Jr.](/assets/my-cat.jpg)

The regex to replace existing markdown image links with the new liquid ones is:

  1. find: !\[(Page.+)\]\(\{\{site.baseurl\}\}(/assets/.+.png)\)
  2. replace>

Post preview in jekyll

add excerpt_separator: <!--more--> to _config.yml or the YAML block of your individual post.