Skip to main content

It's a Live helps you do live demos non-lively.

Project description

It's a Live

It's a Live is a utility that helps you make live coding demos less error-prone by taking the "live" component and killing it.

It's a Live lets you write commands and keystrokes in a file, which it will then read and open a new terminal for you. Every time you press a key, It's a Live will write one character from the file into the terminal, making it look like you're typing every single command with the practiced ease of a consummate professional.

Installation

You can install It's a Live with pip:

pip install itsalive

That's about it.

Usage

Using It's a Live is pretty simple: Just write some keystrokes or commands in a file and run itsalive with it:

itsalive <command_file>

It's a Live will wait for you to press a key, and, when you do, it will instead emit one character from the command file. This way, you can type whatever old crap and it will look perfectly rehearsed, every time, with no backspaces (unless you add them in). It will also wait for you to press Enter at the end of commands, so you will never skip ahead to the next command by mistake.

What's more, It's a Live is actually running the commands you're typing, so you have full interoperability with other programs.

It's a Live also supports various commands:

  • Ctrl+d will immediately terminate the playback.
  • Ctrl+p will pause automatic playback and give you control of the terminal. This is useful for doing actually live stuff, just make sure to leave everything in a state so that playback can resume later.
  • Ctrl+f will skip forward to the next command.
  • Ctrl+b will skip back to the previous command.
  • Ctrl+u will send a Ctrl+u keystroke (wiping anything on to the left of the cursor) and rewind the current command.
  • Ctrl+e will type out the current command in its entirety.

More stuff

It's a Live supports sending the commands via UDP to another window, so you can see what will be typed while you present. To see the commands, run netcat in UDP server mode on port 5345:

nc -kul 5345

If you want to leave yourself notes, you can add comments to the command file. Comments must start with ## as the first thing on the line, and they will not be typed. They will only be sent via UDP to the listening server.

Special commands

There are special commands you can add to your files. The line must start with them, with no spaces before them.


##@include <filename>: This inserts the contents of <filename> at the position of the include command.

Example: ##@include somefile.py.


License

It's a Live is licensed under the GPL v3 or any later version.

Acknowledgements

I would like to thank my bestie Ian Cromwell, without whom this project would be nameless.

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

itsalive-0.1.3.tar.gz (92.4 kB view details)

Uploaded Source

Built Distribution

itsalive-0.1.3-py3-none-any.whl (18.6 kB view details)

Uploaded Python 3

File details

Details for the file itsalive-0.1.3.tar.gz.

File metadata

  • Download URL: itsalive-0.1.3.tar.gz
  • Upload date:
  • Size: 92.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.22.0

File hashes

Hashes for itsalive-0.1.3.tar.gz
Algorithm Hash digest
SHA256 f64d66686c838654a7f4082001cdd328108bc30a52be2d947e7b4cc61456a1d8
MD5 b68b1ab1c52044c8916b059c48fa966b
BLAKE2b-256 884715cf5a973210409c7fb9eea6c9077792d7b34a936219eecd9ce5c72b9ec0

See more details on using hashes here.

File details

Details for the file itsalive-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: itsalive-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 18.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.22.0

File hashes

Hashes for itsalive-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 961aceafb765036a0c6d2448b33074bb7fe07375bac3ec3ff8bbaa746e993fd1
MD5 93d2ab6187850d3937186d97477dd384
BLAKE2b-256 699aef16b029092ca09d4a2460cecc83a34f125f293b00dad56a5fb16b94ebf2

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