Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

twosheds

https://badge.fury.io/py/twosheds.png https://pypip.in/d/twosheds/badge.png https://travis-ci.org/Ceasar/twosheds.svg?branch=master

twosheds is a library, written in Python, for making command language interpreters, or shells.

While shells like bash and zsh are powerful, extending them and customizing them is hard; you need to write in inexpressive arcane languages, such as bash script or C. twosheds helps you write and customize your own shell, in pure Python:

>>> import twosheds
>>> shell = twosheds.Shell()
>>> shell.serve_forever()
$ whoami
arthurjackson
$ ls
AUTHORS.rst       build             requirements.txt  test_twosheds.py
LICENSE           dist              scripts           tests
Makefile          docs              setup.cfg         twosheds
README.rst        env               setup.py          twosheds.egg-info

Get started now.

Features

  • Substitution
  • History
  • Tab completion
  • Highly extensible

Installation

To install twosheds, simply:

$ pip install twosheds

Documentation

Documentation is available at http://twosheds.readthedocs.org/en/latest/.

Contribute

twosheds is under active development and contributions are especially welcome.

  1. Check for open issues or open a fresh issue to start a discussion around a feature idea or a bug.
  2. Fork the repository on GitHub to start making your changes to the master branch (or branch off it).
  3. Write a test which shows that the bug was fixed or that the feature works as expected.
  4. Send a pull request and bug the maintainer until its get merged and published. Make sure to add yourself to AUTHORS. :)

Support

If you have questions or issues about twosheds, there are several options:

Send a Tweet

If your question is less than 140 characters, feel free to tweet at the maintainer, @Ceasar_Bautista.

File an Issue

If you notice some unexpected behavior in twosheds, or want to see support for a new feature, file an issue on GitHub issues.

E-mail

I'm more than happy to answer any personal or in-depth questions about twosheds. Feel free to email cbautista@gmail.com.