It's like screen's stuff command, without screen
Project description
shtuff ![Deploy to PyPI](https://pypi-camo.freetls.fastly.net/9ab35bcb7d7f6f9daa3551fc8e448cc6fa0e1933/68747470733a2f2f6769746875622e636f6d2f6a666c792f7368747566662f616374696f6e732f776f726b666c6f77732f63692e796d6c2f62616467652e737667)
Shell stuff will stuff commands into a shell à la tmux send-keys
or screen stuff
.
Installation
If your environment is configured to use Python 3 by default:
$ pip install shtuff
Otherwise:
$ pip3 install shtuff
Please note: shtuff
only works on Python 3.7+!
Examples
In shell A, run:
$ shtuff as shell-a
In shell B, run:
$ shtuff into shell-a "git status"
Observe how shell A ran git status
.
An example use case for shtuff new
might be a setup script to open a couple
shells automatically. Consider this script:
#!/usr/bin/env bash
termite -e "shtuff new vim" &
termite -e "shtuff new 'tail -f /var/log/somelog.log'" &
This script will open two terminals, one running vim, and one running tail.
Development
Install your local copy:
$ pip3 install -e .
Unless you know what you are doing, we highly recommend running tests inside a virtual environment. Here is how you can create and activate a virtual environment:
$ python3 -m venv .venv
$ source .venv/bin/activate
You can leave the virtual environment via deactivate
:
$ deactivate
Run tests:
$ make test
Releasing
We release using Makefile, choose the relevant target:
$ make release-major
$ make release-minor
$ make release-patch
and wait for the automated deploy to PyPi!
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.