[![Build Status](https://img.shields.io/pypi/v/onthefly.svg)](https://pypi.python.org/pypi/onthefly)
onthefly
========
*onthefly* allows you to emulate typing the contents of an input file by wildly pressing the <kbd>a</kbd><kbd>s</kbd><kbd>d</kbd><kbd>f</kbd><kbd>j</kbd><kbd>k</kbd><kbd>l</kbd><kbd>;</kbd> keys on your keyboard.
Great for live coding presentations.
![Demo](../assets/demo.gif)
Features
--------
* Unicode support (you need [ibus](https://wiki.archlinux.org/title/IBus) installed and running)
* Works with any text editor (in fact, with any program)
Installation
------------
Install and update using pip:
```bash
> sudo python -m pip install onthefly
```
Usage
-----
Identify your keyboard's device path with the command line tool `evtest`:
```bash
> sudo evtest
ID Device Name ...
------------------------------------------------------------- ...
0 /dev/input/event0 Lid Switch ...
1 /dev/input/event1 Power Button ...
2 /dev/input/event2 Sleep Button ...
3 /dev/input/event3 Power Button ...
4 /dev/input/event4 AT Translated Set 2 keyboard ...
5 /dev/input/event5 Video Bus ...
6 /dev/input/event6 Logitech M215 2nd Gen ...
7 /dev/input/event7 Logitech K330 ...
8 /dev/input/event8 SynPS/2 Synaptics TouchPad ...
.
.
.
```
From this output, we see that my keyboard (a Logitech K330) has the device path `/dev/input/event7`.
Pass your keyboard's *device path* as an argument to the `--keyboard` option when invoking *onthefly* for the first time.
```bash
> onthefly --keyboard="/dev/input/event7" /path/to/file
```
Note that *onthefly* prompts for the root password in order to have access to the keyboard events.
The keyboard's device path is remembered so you do not have to re-enter it in future invocations:
```bash
> onthefly /path/to/file
```
Type the <kbd>F9</kbd> key to quit the program at any moment.
Use the <kbd>Backspace</kbd> key to erase characters without going out of sync with the input file.
License
-------
* Free software: MIT license
Credits
-------
This package was created with [Cookiecutter](https://github.com/audreyr/cookiecutter) and the [audreyr/cookiecutter-pypackage](https://github.com/audreyr/cookiecutter-pypackage) project template.
Raw data
{
"_id": null,
"home_page": "https://github.com/mroavi/onthefly",
"name": "onthefly",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.5",
"maintainer_email": "",
"keywords": "onthefly",
"author": "Martin Roa Villescas",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/13/64/04714b31fe7b8692aa3aca795fcccc25d72e726d518dc8737b9e7208045b/onthefly-1.1.5.tar.gz",
"platform": null,
"description": "[![Build Status](https://img.shields.io/pypi/v/onthefly.svg)](https://pypi.python.org/pypi/onthefly)\n\nonthefly\n========\n\n*onthefly* allows you to emulate typing the contents of an input file by wildly pressing the <kbd>a</kbd><kbd>s</kbd><kbd>d</kbd><kbd>f</kbd><kbd>j</kbd><kbd>k</kbd><kbd>l</kbd><kbd>;</kbd> keys on your keyboard.\n\nGreat for live coding presentations.\n\n![Demo](../assets/demo.gif)\n\n\nFeatures\n--------\n\n* Unicode support (you need [ibus](https://wiki.archlinux.org/title/IBus) installed and running)\n* Works with any text editor (in fact, with any program)\n\n\nInstallation\n------------\n\nInstall and update using pip:\n\n```bash\n> sudo python -m pip install onthefly\n```\n\nUsage\n-----\n\nIdentify your keyboard's device path with the command line tool `evtest`:\n\n```bash\n> sudo evtest\n\nID Device Name ...\n------------------------------------------------------------- ...\n0 /dev/input/event0 Lid Switch ...\n1 /dev/input/event1 Power Button ...\n2 /dev/input/event2 Sleep Button ...\n3 /dev/input/event3 Power Button ...\n4 /dev/input/event4 AT Translated Set 2 keyboard ...\n5 /dev/input/event5 Video Bus ...\n6 /dev/input/event6 Logitech M215 2nd Gen ...\n7 /dev/input/event7 Logitech K330 ...\n8 /dev/input/event8 SynPS/2 Synaptics TouchPad ...\n.\n.\n.\n```\n\nFrom this output, we see that my keyboard (a Logitech K330) has the device path `/dev/input/event7`.\n\nPass your keyboard's *device path* as an argument to the `--keyboard` option when invoking *onthefly* for the first time.\n\n```bash\n> onthefly --keyboard=\"/dev/input/event7\" /path/to/file\n```\n\nNote that *onthefly* prompts for the root password in order to have access to the keyboard events.\n\nThe keyboard's device path is remembered so you do not have to re-enter it in future invocations:\n\n```bash\n> onthefly /path/to/file\n```\n\nType the <kbd>F9</kbd> key to quit the program at any moment.\nUse the <kbd>Backspace</kbd> key to erase characters without going out of sync with the input file.\n\nLicense\n-------\n\n* Free software: MIT license\n\n\nCredits\n-------\n\nThis package was created with [Cookiecutter](https://github.com/audreyr/cookiecutter) and the [audreyr/cookiecutter-pypackage](https://github.com/audreyr/cookiecutter-pypackage) project template.\n",
"bugtrack_url": null,
"license": "MIT license",
"summary": "Type like a god on-the-fly",
"version": "1.1.5",
"split_keywords": [
"onthefly"
],
"urls": [
{
"comment_text": "",
"digests": {
"md5": "b5af01068b19bb1f44e72acb76d8a522",
"sha256": "1219e5eca90803526aa84da8632ffad675344b07570c7332002282060958902d"
},
"downloads": -1,
"filename": "onthefly-1.1.5-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "b5af01068b19bb1f44e72acb76d8a522",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.5",
"size": 7355,
"upload_time": "2022-12-14T10:48:24",
"upload_time_iso_8601": "2022-12-14T10:48:24.369644Z",
"url": "https://files.pythonhosted.org/packages/35/97/f8c87cb758528c7a4dbd21f36376fb54bdbd786f82dfbaed58f592d4bec1/onthefly-1.1.5-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"md5": "d76ea9d4a8fecd4362b8e09ab1147673",
"sha256": "b935c5fa1613a96a2cb93f5236e396d66fa3b75a65b95fd2cbfd3f4b42abd8d1"
},
"downloads": -1,
"filename": "onthefly-1.1.5.tar.gz",
"has_sig": false,
"md5_digest": "d76ea9d4a8fecd4362b8e09ab1147673",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.5",
"size": 13406,
"upload_time": "2022-12-14T10:48:26",
"upload_time_iso_8601": "2022-12-14T10:48:26.487835Z",
"url": "https://files.pythonhosted.org/packages/13/64/04714b31fe7b8692aa3aca795fcccc25d72e726d518dc8737b9e7208045b/onthefly-1.1.5.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-12-14 10:48:26",
"github": true,
"gitlab": false,
"bitbucket": false,
"github_user": "mroavi",
"github_project": "onthefly",
"travis_ci": true,
"coveralls": false,
"github_actions": false,
"tox": true,
"lcname": "onthefly"
}