Skip to main content

Amaze your friends by running Python doctests in a fake interactive shell

Project description

PlayerPiano amazes your friends by running Python doctests in a fake interactive shell.

See the PlayerPiano PyPI page for more info, or this blog post for a demo.

playerpiano plays back a recorded shell session in a terminal.

recorderpiano can be used to record a shell session for later playback.

Usage

Run playerpiano <options> <FILE>, where FILE is a file containing doctests or the name of a module. Do not pass mymodule.py directly, it will confuse the doctest parser. Use mymodule instead.

Pressing any keys will type source lines, stop at the end of each source block.

Press enter to show the results block.

EOF (^D) will exit the program at the end.

Break (^C) will interrrupt the program immediately.

Options

The --color option will syntax-highlight source lines. It is currently hard-coded for a black background terminal. Use --color3 for Python 3 syntax highlighting.

The --no-terminal option will disable output on the main terminal. This is less than useful at present.

The --fifo option takes the name of a fifo to duplicate output to. After starting playerpiano with this option, you must run cat name_of_fifo in another terminal before any output will be displayed. This is useful when presenting using a projector. Start a second xterm & run cat, then put it on the overhead (with the main terminal on your laptop). This allows you to see what you’re doing.

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

PlayerPiano-0.3.0.tar.gz (10.2 kB view details)

Uploaded Source

File details

Details for the file PlayerPiano-0.3.0.tar.gz.

File metadata

  • Download URL: PlayerPiano-0.3.0.tar.gz
  • Upload date:
  • Size: 10.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for PlayerPiano-0.3.0.tar.gz
Algorithm Hash digest
SHA256 9971705e61109e90c96ab4bb9272c85021ce033f8399856308b115d73eb3892f
MD5 3bc01d58dfa0b3bd82e08fb995633299
BLAKE2b-256 5ae81368da6a873ff5c06f2a065ddcdac195b03a2839d17c0489878ce82c9b96

See more details on using hashes here.

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