• Stars
    star
    235
  • Rank 170,119 (Top 4 %)
  • Language
    Python
  • Created about 10 years ago
  • Updated about 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A better export for sharing Keynote presentations, with support for presenter notes.

better-keynote-export

This is a script that can export Keynote presentations in formats that are better for sharing them as standalone documents. Natively,

  • Keynote will export slides with presenter notes as a PDF. But the resulting formatting is terrible, giving 50% of each page of the PDF up to the notes.
  • Keynote will export an HTML document, but it won't include presenter notes with it.

This script addresses both of these issues.

  • It generates a nicely-formatted PDF like this one, suitable for uploading to Speakerdeck or others.
  • It generates an html presentation in a minimalist, reader-friendly format inspired by Maciej CegΕ‚owski.

Examples and Screenshots

Here is an example of the HTML site generated.

You also get PDF presentation slides that look like this:

A nice looking slide

Instead of the crappy ones that Keynote gives you:

A horrible looking slide

A full PDF sample can be found here.

Setup

pyenv virtualenv is a reasonable way to have isolated python environments. Follow their instructions for setting that up and then do this:

$ pyenv virtualenv 3.6.1 better-keynote-export
$ pyenv activate better-keynote-export
$ pip install -r requirements.txt

Usage

Use ./export.py --help to see all of the available options. Basically,

./export.py \
  --keynote=<the keynote file> \
  --outdir=<a path> \
  --title=<the name of the presentation> \
  --twitter-username=<your twitter username>

The output path gets both a PDF file and a self-contained website that you can easily host with (for example) GitHub pages.

Notes

You must have Keynote installed to use this.

Fundamentally, this works by scripting Keynote using Applescript. The details of this helpfully change from Keynote version to version. So if the script isn't working, it might be that I haven't updated it recently and minor tweaks are needed for the latest version of Keynote. Pull requests welcome!

More Repositories

1

pugsql

A HugSQL-inspired database library for Python
Python
673
star
2

juds

A Unix domain socket library for Java
Java
185
star
3

etsy-python

Python access to the Etsy API
Python
64
star
4

experiment-model

experimentcalculator.com
JavaScript
55
star
5

oplogutils

Utilities for inspecting and manipulating the MongoDB oplog
Python
38
star
6

pgproxy

A unit/functional testing proxy for Postgres.
Python
28
star
7

php-heap

GDB functions for debugging and analyzing the PHP heap
Python
18
star
8

clippingsbot

Nerdfight monitoring service
Python
10
star
9

shaken-stocks

Some historical analysis of stocks that experience a serious drop in value.
Python
8
star
10

scala-phps

A Scala language reader for the PHP serialization format.
Scala
8
star
11

sbt-mongodb-plugin

Adds support for a MongoDB test fixture database in simple-build-tool.
Scala
7
star
12

sbt-sqlite-plugin

A simple-build-tool plugin that adds support for sqlite fixtures.
Scala
4
star
13

lacrime

Investigating LA City Crime Data
Python
4
star
14

confluence2.el

An Atlassian Confluence mode for emacs that does not depend on xmlrpc.el.
Emacs Lisp
3
star
15

boringtechnology.club

http://boringtechnology.club
HTML
3
star
16

career-fair

Quick hack for career fair laptop displays. Runs a loop of websites and/or videos.
Python
3
star
17

kinetic-antfarm

A silly KineticJS ant farm animation. From a larger dead project.
JavaScript
3
star
18

minesweeper-clone

A Minesweeper Clone
C#
2
star
19

statsdump

Simple script to analyze statsd UDP traffic.
Python
2
star
20

euler

My Project Euler solutions
Haskell
2
star
21

optimizely-changes

A Google Cloud Function that sends Slack notifications for production-affecting Optimizely changes.
Python
2
star
22

etsy-esp

ESP Game for Etsy Items
JavaScript
2
star
23

pgBoard

A pretty good board...
2
star
24

jacques

JVM remote debugging utility.
Scala
2
star
25

datadriven.club

Data Driven Products Now!
HTML
1
star
26

sc2analysis

Python
1
star
27

causalinference.club

HTML
1
star
28

bon-appetit-rankings

The Definitive Bon Appetit Test Kitchen ca. 2020 Classic Lineup Power Rankings, Visualized
Python
1
star
29

dotemacs

My elisp.
Emacs Lisp
1
star
30

dotfiles

Emacs Lisp
1
star
31

ehrenfest

Ehrenfest's Urn in Processing
1
star
32

buddhabrot

Renders the Buddhabrot plot.
C
1
star
33

advent-of-code

Python
1
star