Skip to main content

Takes markdown and turns it into an html slideshow.

Project description

Build Status

markdown-to-presentation

A build tool to turn markdown into an html presentation and then publish to gh-pages

Installation

pip install markdown-to-presentation

Usage

Set up the following files:

# Theme variables for reveal.js
assets/_theme.scss

# application-specific scss
assets/_app.scss

# copied into build directory
assets/*.png

# contains slides
slides.md

Slides must be delimited by a blank line followed by *** followed by a blank line. When rendered as markdown *** will be a horizontal rule. If you need a horizontal rule in your slides, use --- or ___ instead.

Here's an example slides.md:

# Title slide
## subtitle

***

## first slide

- bullet 1
- bullet 2
- bullet 3

If you need raw html in your slides, use a special rawhtml code block:

```rawhtml
<div>this html will be <em>injected</em> directly</div>
```

A sample makefile which works well with this:

all: run-build

venv: requirements.txt
    rm -rf venv
    virtualenv venv -ppython3.6
    venv/bin/pip install -rrequirements.txt
    venv/bin/pre-commit install -f --install-hooks

.PHONY: run-build
run-build: venv
    venv/bin/markdown-to-presentation run-build

.PHONY: push
push: venv
    venv/bin/markdown-to-presentation push index.htm build

clean:
    rm -rf .mtp venv build index.htm

Hooking up push to github pages

Acquire a push token which has the public_repo permission.

Use travis encrypt to encrypt your push token as GH_TOKEN=.... You'll need the yaml it spits out to fill out your .travis.yml.

Make a .travis.yml which looks something like this:

install: pip install virtualenv
script: make
after_success: make push
branches:
    except:
        - gh-pages
env:
    global:
        # GH_TOKEN
        - secure: ...

For your make push target, invoke something like this:

.PHONY: push
push: venv
    venv/bin/markdown-to-presentation push index.htm build

The markdown-to-presentation push executable takes the following arguments:

$ markdown-to-presentation push --help
usage: markdown-to-presentation push [-h] [--master-branch MASTER_BRANCH]
                                     [--pages-branch PAGES_BRANCH]
                                     paths [paths ...]

positional arguments:
  paths

optional arguments:
  -h, --help            show this help message and exit
  --master-branch MASTER_BRANCH
  --pages-branch PAGES_BRANCH

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

markdown_to_presentation-0.0.30.tar.gz (7.2 kB view hashes)

Uploaded Source

Built Distribution

markdown_to_presentation-0.0.30-py2.py3-none-any.whl (7.8 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page