StaSh - Shell Like an Expert in Pythonista

Inspired by shellista and its variants, StaSh is a serious attempt to implement a Bash-like shell for Pythonista.

Since its initial release, valuable contributions and advices have been received constantly from the Pythonista community. The two most popular utilities are pip (authored by @briarfox) and git (authored by @jsbain). Remarkable contributions are also made by @dgelessus, @pudquick, @oefe, @cclauss, @georg.viehoever, @BBOOXX, @bennr01, @glider-gun, @steljas, @zrzka, @seanld, @zed, @sdushantha and @ywang-bom.

StaSh stands for Pythonista Shell. While Sta may not be the best abbreviation for Pythonista, it forms a concise and meaningful word with the following Sh part. So the name StaSh was chosen to indicate it is a confined environment and great treasures may be found within.

Installation

StaSh can be easily installed via one line of python command (courtesy of @whitone).

import requests as r; exec(r.get('https://bit.ly/get-stash').content)

Simply copy the above line, paste into Pythonista interactive prompt and execute. It installs StaSh as a Python module under the site-packages folder (~/Documents/site-packages/stash) and copies a launching script, ~/Documents/launch_stash.py for easy access.

StaSh works with both Pythonista 2 and 3, though not all commands support python3.

If you have previous versions of StaSh installed (e.g. v0.4.x), You may need to restart Pythonista BEFORE the installation.

If you have a GitHub tool available in Pythonista, such as gitview or gitrepo, you can choose to directly clone or download the repository.

StaSh requires Pythonista v2.0 or Pythonista3 as the new ObjC feature is heavily used. For older Pythonista 1.5 compatible version, please refer to the v0.4 branch.

Starting with 0.7.4, StaSh supports being run on a PC using the tkinter module. This is intended for development purposes and may not offer you the best user experience. To install StaSh on your PC, either use the line above or clone this repository and run setup.py.

Upgrade

Once StaSh is installed, it can be easily updated by running the selfupdate command from within the shell.

selfupdate cannot be used for version 0.4.x and under. A fresh installation is needed. Version 0.7.0 requires a forced update. Please run selfupdate -f.

Notable Features

StaSh has a pile of features that are expected from a real shell. These features are what really set the difference from shellista.

Usage

The usage of StaSh is in principle similar to Bash. A few things to note are:

Acknowledgements

Known Issues

Contributing