Command Line Interface¶ ↑
showoff [global options] command [command options] [arguments...]
-
Use the command
help
to get a summary of commands -
Use the command
help command_name
to get a help forcommand_name
-
Use
--
to stop command line argument processing; useful if your arguments have dashes in them
Commands¶ ↑
add
-
Add a new slide at the end in a given dir
create
-
Create new showoff presentation
skeleton
-
Generate a full presentation based on a
showoff.json
outline help
-
Shows list of commands or help for one command
heroku
-
Setup your presentation to serve on Heroku
github
-
Setup your presentation to serve on GitHub Pages
serve
-
Serves the showoff presentation in the current directory (or a given dir)
static
-
Generate static version of presentation
validate
-
Validate the consistency of your presentation
showoff help [command]
¶ ↑
Shows list of commands or help for one command
showoff add [title]
¶ ↑
Add a new slide at the end in a given dir
- Aliases
-
new
-
Outputs or creates a new slide. With -d and -n, a new slide is created in the given dir, numbered to appear as the last slide in that dir (use -u to avoid numbering). Without those, outputs the slide markdown to stdout (useful for shelling out from your editor). You may also specify a source file to use for a code slide.
Options are specified after the command.
-d, --dir=dir
-
Slide dir (where to put a new slide file)
-n, --name=basename
-
Slide name (name of the new slide file)
-s, --source=path to file
-
Include code from the given file as the slide body
-t, --style, --type=valid showoff style/type
-
Slide Type/Style ( default:
title
) -u, --nonumber
-
Don't number the slide, use the given name verbatim
showoff create dir_name
¶ ↑
Create new showoff presentation
- Aliases
-
init
-
This command helps start a new Showoff presentation by setting up the proper directory structure for you. It takes the directory name you would like Showoff to create for you.
Options are specified after the command.
-d, --slidedir=arg
-
sample slide directory name ( default:
one
). Pass a comma-separated list to create multiple directories. -n, --nosamples
-
Don't create sample slides
showoff heroku heroku_name
¶ ↑
Setup your presentation to serve on Heroku
Creates the configuration files needed to Herokuize a Showoff presentation and then deploy it for you. This will register the new project on Heroku if needed and create the git remote for you.
Open your new presentation by running heroku open
.
Requires the heroku
and bundler
gems to be
installed properly.
showoff github
¶ ↑
Generates a static version of your site and puts it in a gh-pages branch for static serving on GitHub.
Options are specified after the command.
-f, --force
-
force overwrite of existing Gemfile/.gems and config.ru files if they exist
-g, --dotgems
-
Use older-style .gems file instead of bundler-style Gemfile
-p, --password=arg
-
add password protection to your heroku site
showoff serve
¶ ↑
Serves the showoff presentation in the current directory
Options are specified after the command. More arguments
can be seen by running showoff serve --help
.
-f, --pres_file=arg
-
Presentation file (default:
showoff.json
) -h, --host=arg
-
Host or ip to run on ( default:
localhost
) -p, --port=arg
-
Port on which to run ( default:
9090
) -u, --url=address
-
Git URL to a repository containing the presentation ( default:
none
)
showoff skeleton
¶ ↑
Reads a showoff.json
file and generates a skeleton
presentation, with one sample slide file for each entry in the
showoff.json
. Clearly this only works when listing all slide
files. If you're only listing sections, then it will only create the
directories for you.
Options are specified after the command.
-f, --file=arg
-
Presentation file (default:
showoff.json
)
showoff static [name]
¶ ↑
Generate static version of presentation with an optional supplemental materials type.
showoff validate
¶ ↑
This will validate the consistency of a presentation. If a
showoff.json
file is present, it will be used to determine the
list of slide files. If not, it will use shell globbing to identify the
list.
Each missing file or section directory is identified, then validation scripts are run against code blocks on each file. By default, validators are known for Perl, Puppet, Python, Ruby, and Shell. See PRESENTATION.rdoc to define custom validators.
Options are specified after the command.
-f, --file=arg
-
Presentation file (default:
showoff.json
)
showoff pdf [name]
¶ ↑
Generate PDF version of presentation with an optional output filename. This
requires the pdfkit
gem and the wkhtmltopdf
rendering engine installed into your $PATH
.
Note: It's sometimes easier to browse to the /print
endpoint and print the page using your browser's native print function
or use showoff static
and using another tool to render the
HTML files into a PDF.
Shell Auto Completion¶ ↑
ZSH completion¶ ↑
You can complete commands and options in ZSH, by installing a script:
mkdir -p $HOME/.zsh/Completion cp script/_showoff $HOME/.zsh/Completion echo 'fpath=(~/.zsh/Completion $fpath)' >> $HOME/.zshrc
bash
completion¶ ↑
You can complete commands for showoff by putting the following in your
.bashrc
(or whatever you use when starting bash
):
complete -F get_showoff_commands function get_showoff_commands() { if [ -z $2 ] ; then COMPREPLY=(`showoff help -c`) else COMPREPLY=(`showoff help -c $2`) fi }
You can also install that as an executable script such as
/etc/bash_completion.d/showoff
.