This is a Jekyll theme for using Tufte CSS alongside pandoc-sidenote. It's
based off of
You may ask, "What's the difference between this and tufte-jekyll?"
Using pandoc-sidenote, we don't have to use {% sidenote %}...{% sidenote %}
and can instead just use [^1] like normal Pandoc markdown.
For a demo, see https://jez.io/talks/.
There are two external dependencies in order to use this theme. You can install
them through your package manager (like apt-get or brew):
# EXAMPLE: This is for macOS. Change if you're on Linux.
# Note: you must have pandoc version 2.0 or greater
brew install pandoc
brew install jez/formulae/pandoc-sidenote
Next, add this line to your Jekyll site's Gemfile:
gem "tufte-pandoc-jekyll"
And add these lines to your Jekyll site's _config.yml:
theme: tufte-pandoc-jekyll
gems:
- jekyll-pandoc
And then execute:
$ bundle
Or install it yourself as:
$ gem install tufte-pandoc-jekyll
Note: while
tufte-pandoc-cssoptionally includes the Solarized Light colorscheme, it's enabled by default here, with no easy way to opt-out. This is probably fine for you, but if it's not, feel free to make a PR that allows opting out.
The following variables are used by this theme.
site.titlesite.authorsite.baseurlsite.header_includespage.header_includes<head>site.include_afterpage.include_after<body> before the contentsite.include_beforepage.include_before<body> after the contentpage.layoutindex, page, or postindex won't have a "Return home" link at the bottom of the pagepage.titlepage.subtitlepage.datepage.keywordspage.mathtrue, we'll include KaTeX for displaying math formulas_config.ymlYou'll need to update your _config.yml to compile the site using Pandoc. Make
sure you've followed the installation instructions.
gems:
- jekyll-pandoc
markdown: Pandoc
pandoc:
extensions:
- section-divs
- from: 'markdown+tex_math_single_backslash'
- filter: 'pandoc-sidenote'
Optional: remove section-divs if you want to insert <section> tags manually.
To make a release:
vim tufte-pandoc-jekyll.gemspec
git commit tufte-pandoc-jekyll.gemspec -m 'Bump version'
git tag "$version"
git push --tags origin master
gem build tufte-pandoc-jekyll.gemspec
gem push "tufte-pandoc-jekyll-$version.gem"