README.md in deckrb-0.4.2 vs README.md in deckrb-0.5.0

- old
+ new

@@ -52,21 +52,23 @@ * each H1 (single hash) designates the beginning of a new slide * explicit `!SLIDE` or `<!SLIDE>` directives can split slides too -- use `<!SLIDE>` so they look like comments when rendered into normal HTML * links to image files are resolved relative to the source file -- no more broken images in markdown previews, and no need to put all your images in a separate directory! * add CSS classes to slides inside the slide directive - - e.g. `<!SLIDE center>` gives `<section class="slide center">` * generated HTML is pretty-printed for easier "view source" -* uses deck.js' "swiss" theme and several extensions, including `goto`, `menu`, `navigation`, `status`, `hash`, and `scale` +* uses deck.js' "swiss" and "horizontal-slide" themes (configurable) +* uses several deck.js extensions, including `goto`, `menu`, `navigation`, `status`, `hash`, and `scale` * uses RedCarpet markdown extensions, including * tables <http://michelf.com/projects/php-markdown/extra/#table> * fenced code blocks <http://michelf.com/projects/php-markdown/extra/#fenced-code-blocks> * mostly backwards-compatible with Showoff, i.e. you can specify a `showoff.json` file on the command line * if the parameter (or 'sections' entry) starts with '# ' then it's parsed as literal markdown, not a file * code syntax highlighting using Coderay * specify language at the top of the block using either ::: or @@@ * e.g. `@@@ ruby` -* there's a simple table of contents (click the [toc] link on lower left to toggle) +* there's a simple table of contents (click the [contents] link on lower left to toggle) * this is currently very primitive and should be redone and/or integrated into deck.js +* lines beginning with `.notes ` are skipped ## Command-Line API `deck foo.md` @@ -75,15 +77,35 @@ * can specify multiple source files in a row * can also specify a showoff.json file to load multiple markdown files ### Options - --port, -p <i>: Specify alternate port (default: 4333) - --build, -b: Build an HTML file instead of launching a server (WARNING: not very useful yet) - --version, -v: Print version and exit - --help, -h: Show this message + --port, -p <i>: Specify alternate port (default: 4333) + --build, -b: Build an HTML file instead of launching a server (WARNING: not very useful yet) + --style, -s <s>: Specify the style theme from deck.js/themes/style/ (default: swiss) + --transition, -t <s>: Specify the transition theme from deck.js/themes/transition/ (default: horizontal-slide) + --version, -v: Print version and exit + --help, -h: Show this message +## Themes + +`deck.js` has several themes for styling and animating your presentation. +You can select these from the command line or from a `showoff.json` file with the `style` and `transition` options. +Currently the following themes are available: + +### Style Themes + +* neon +* swiss +* web-2.0 + +### Transition Themes + +* fade +* horizontal-slide +* vertical-slide + ## Deploying to Heroku To deploy your slides as a Heroku app, put them into a Git repo, and add a file called `config.ru` with contents like this: @@ -99,31 +121,37 @@ gem "deckrb" Then deploy to Heroku as usual (e.g. `heroku apps:create`). -(Note that Deck::RackApp can accept either a filename or an array of filenames.) +Note that `Deck::RackApp.build` can accept either a filename or an array of filenames. +It also accepts options, e.g. + run Deck::RackApp.build('slides.md', transition: 'fade') + + ## Known Issues (Bugs and Limitations) * If you're running Webrick, you may not be able to kill the server with Ctrl-C. This is apparently due to a bug in recent versions of Webrick. * Workaround: `gem install thin` -- if thin is installed, deck will use it instead of webrick -* auxiliary files (e.g. images) are interleaved in URL path space, so overlapping file names might not resolve to the right file +* Auxiliary files (e.g. images) are interleaved in URL path space, so overlapping file names might not resolve to the right file. * todo: rewrite internal links to files and serve them relative to current dir, not slide dir * H1s (which split slides) are converted to H2s for compatibility with deck.js's CSS themes * unless they're the only item on the slide, in which case they remain H1s -* we use RedCarpet to process markdown, which doesn't work exactly the same as RDiscount... for example: +* We use RedCarpet to process markdown, which doesn't work exactly the same as RDiscount... for example: * indented code blocks under a bullet point may need to be indented more * code blocks must be separated from the previous text by a newline -* slide scaling isn't perfect; sometimes either resizing or reloading will improve the layout +* Slide scaling isn't perfect; sometimes either resizing or reloading will improve the layout. Report bugs on <http://github.com/alexch/deck.rb/issues> ## Credits * deck.js by Caleb at <http://imakewebthings.com> * deck.rb by Alex Chaffee <http://alexchaffee.com>, with help from * Steven! Ragnarök <http://nuclearsandwich.com> + * David Doolin <http://dool.in> + * and other awesome patchers ### See Also * [Web Slide Show GGroup](https://groups.google.com/group/webslideshow) * [Showoff](https://github.com/schacon/showoff) by Scott Chacon