the xonsh shell
===============
.. raw:: html
~
~
Xonsh is a Python-ish, BASHwards-looking shell language and command prompt.
The language is a superset of Python 3.4+ with additional shell primitives
that you are used to from Bash and IPython. It works on all major systems including
Linux, Mac OSX, and Windows. Xonsh is meant for the daily use of experts and novices
alike.
**At a glance**
.. raw:: html
=========
Contents
=========
.. toctree::
:titlesonly:
:maxdepth: 1
tutorial
tutorial_hist
xonshrc
xonshconfig
envvars
aliases
windows
api/index
devguide/
previous/index
faq
todo
============
Installation
============
You can install xonsh using conda, pip, or from source.
**conda:**
.. code-block:: bash
$ conda install -c scopatz xonsh
**pip:**
.. code-block:: bash
$ pip install xonsh
**source:** Download the source `from github `_
(`zip file `_), then run
the following from the source directory,
.. code-block:: bash
$ python setup.py install
Arch Linux users can install xonsh from the Arch User Repository with e.g.
yaourt or aura:
**yaourt:**
.. code-block:: bash
$ yaourt -Sa xonsh # yaourt will call sudo when needed
**aura:**
.. code-block:: bash
$ sudo aura -A xonsh
If you run into any problems, please let us know!
==========
Comparison
==========
Xonsh is significantly different from most other shells or shell tools. The following
table lists features and capabilities that various tools may or may not share.
.. list-table::
:widths: 3 1 1 1 1 1 1
:header-rows: 1
:stub-columns: 1
* -
- Bash
- zsh
- plumbum
- fish
- IPython
- xonsh
* - Sane language
-
-
- ✓
- ✓
- ✓
- ✓
* - Easily scriptable
- ✓
- ✓
- ✓
- ✓
-
- ✓
* - Native cross-platform support
-
-
- ✓
- ✓
- ✓
- ✓
* - Meant as a shell
- ✓
- ✓
-
- ✓
-
- ✓
* - Tab completion
- ✓
- ✓
-
- ✓
- ✓
- ✓
* - Man-page completion
-
-
-
- ✓
-
- ✓
* - Large standard library
-
- ✓
-
-
- ✓
- ✓
* - Typed variables
-
-
- ✓
- ✓
- ✓
- ✓
* - Syntax highlighting
-
-
-
- ✓
- in notebook
- w/ prompt-toolkit
* - Pun in name
- ✓
-
- ✓
-
-
- ✓
* - Rich history
-
-
-
-
-
- ✓
============
Dependencies
============
Xonsh currently has the following external dependencies,
*Run Time:*
#. Python v3.4+
#. PLY
#. prompt-toolkit (optional)
*Documentation:*
#. Sphinx
#. Numpydoc
#. Cloud Sphinx Theme
============
Contributing
============
We highly encourage contributions to xonsh! If you would like to contribute,
it is as easy as forking the repository on GitHub, making your changes, and
issuing a pull request. If you have any questions about this process don't
hesitate to ask the mailing list (xonsh@googlegroups.com).
==========
Contact Us
==========
If you have questions or comments, please send them to the mailing list
xonsh@googlegroups.com, page us on IRC, contact the author directly, or
open an issue on GitHub.
`Join the mailing list here! `_
=============
Helpful Links
=============
* `Documentation `_
* `Mailing list `_
* `GitHub Repository `_
* `IRC: channel #xonsh on OFTC `_
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
.. raw:: html