xonsh/docs/index.rst

329 lines
7.3 KiB
ReStructuredText
Raw Normal View History

2015-03-07 18:58:14 -06:00
the xonsh shell
===============
2016-03-24 14:06:20 -04:00
.. raw:: html
2015-03-07 18:58:14 -06:00
<p style="text-align:center;">
<span style="font-family:Times;font-size:28px;font-style:normal;font-weight:normal;text-decoration:none;text-transform:none;font-variant:small-caps;color:000000;">
2016-03-24 14:06:20 -04:00
~
2015-03-07 18:58:14 -06:00
<script>
2015-03-08 22:48:34 -05:00
var taglines = [
2015-03-07 18:58:14 -06:00
"Exofrills in the shell",
"No frills in the shell",
"Become the Lord of the Files",
"Break out of your shell",
2015-03-07 22:41:47 -06:00
"The only shell that is also a shell",
"All that is and all that shell be",
2015-03-07 23:35:08 -06:00
"It cannot be that hard",
2015-03-07 23:22:13 -06:00
"Pass the xonsh, Piggy",
2015-03-07 22:41:47 -06:00
"Piggy glanced nervously into hell and cradled the xonsh",
"The xonsh is a symbol",
2015-03-07 23:22:13 -06:00
"It is pronounced <i>conch</i>",
2016-03-12 19:51:05 -08:00
"It is pronounced <i>🐚</i>",
"It is pronounced <i>kɒntʃ</i>",
2015-03-07 18:58:14 -06:00
"The shell, bourne again",
2015-03-08 00:32:17 -06:00
"Snailed it",
2015-03-07 18:58:14 -06:00
"Starfish loves you",
2015-03-07 23:22:13 -06:00
"Come snail away",
2015-03-08 00:32:17 -06:00
"This is Major Tom to Ground Xonshtrol",
2015-03-07 18:58:14 -06:00
"Sally sells csh and keeps xonsh to herself",
2015-03-10 01:25:29 -05:00
"Nice indeed. Everything's accounted for, except your old shell.",
"I wanna thank you for putting me back in my snail shell",
2016-02-09 02:36:57 -05:00
"Crustaceanly Yours",
2016-02-10 11:08:42 -08:00
"With great shell comes great reproducibility",
"None shell pass",
"You shell not pass!",
2016-02-21 10:15:23 -08:00
"The x-on shell",
2016-06-04 22:34:27 -04:00
"Ever wonder why there isn't a Taco Shell? Because it is a corny idea.",
2016-02-25 18:23:30 -05:00
"It is pronounced <i>コンシュ</i>",
2016-05-23 14:19:24 -04:00
"The carcolh will catch you!",
"People xonshtantly mispronounce these things",
"WHAT...is your favorite shell?",
2016-08-23 08:33:47 -04:00
"Conches for the xonsh god!",
"Exploiting the workers and hanging on to outdated imperialist dogma since 2015."
2015-03-07 18:58:14 -06:00
];
2015-03-08 22:48:34 -05:00
document.write(taglines[Math.floor(Math.random() * taglines.length)]);
2015-03-07 18:58:14 -06:00
</script>
~
<br />
<br />
</span>
</p>
2015-09-12 19:57:50 -04:00
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
2016-03-24 14:06:20 -04:00
Linux, Mac OSX, and Windows. Xonsh is meant for the daily use of experts and novices
2015-09-12 19:57:50 -04:00
alike.
2015-03-07 18:58:14 -06:00
2015-03-08 23:55:10 -05:00
**At a glance**
2016-03-24 14:06:20 -04:00
.. raw:: html
2015-03-08 23:55:10 -05:00
2016-03-24 14:06:20 -04:00
<p style="text-align:center;"><script type="text/javascript"
src="https://asciinema.org/a/9kp21a67ahhng25wtzoep3pyx.js"
id="asciicast-9kp21a67ahhng25wtzoep3pyx" async
2015-09-12 18:58:50 -04:00
data-size="medium" data-speed="2"></script>
2015-03-08 23:55:10 -05:00
</p>
2015-03-07 18:58:14 -06:00
=========
Contents
=========
2016-03-13 21:51:59 -04:00
**Installation:**
.. toctree::
2016-05-20 17:58:50 -04:00
:titlesonly:
:maxdepth: 1
2016-03-13 21:51:59 -04:00
2016-05-20 17:58:50 -04:00
dependencies
linux
osx
windows
customization
2016-03-13 21:51:59 -04:00
2016-02-04 22:37:45 -05:00
**Guides:**
2015-03-07 18:58:14 -06:00
.. toctree::
2015-03-28 12:06:09 -05:00
:titlesonly:
2015-03-07 18:58:14 -06:00
:maxdepth: 1
tutorial
2015-08-27 09:56:42 -04:00
tutorial_hist
2016-08-20 17:00:10 -04:00
tutorial_macros
2016-05-11 01:55:53 -04:00
tutorial_xontrib
2016-08-27 22:38:12 -04:00
tutorial_events
2016-06-02 12:08:13 -04:00
tutorial_completers
2016-02-04 22:37:45 -05:00
bash_to_xsh
python_virtual_environments
2016-02-04 22:37:45 -05:00
**Configuration & Setup:**
.. toctree::
:titlesonly:
:maxdepth: 1
2015-09-12 20:27:21 -04:00
xonshrc
2015-10-10 23:22:36 -04:00
xonshconfig
envvars
2015-08-27 09:56:42 -04:00
aliases
2016-05-11 00:57:48 -04:00
xontribs
2016-08-27 22:38:12 -04:00
events
2016-02-04 22:37:45 -05:00
2016-06-18 18:18:46 -04:00
**News & Media:**
.. toctree::
:titlesonly:
:maxdepth: 1
talks_and_articles
quotes
2016-02-04 22:37:45 -05:00
**Development Spiral:**
.. toctree::
:titlesonly:
:maxdepth: 1
2015-03-07 18:58:14 -06:00
api/index
2016-08-27 22:38:12 -04:00
advanced_events
2015-03-28 12:06:09 -05:00
devguide/
2015-03-07 18:58:14 -06:00
previous/index
faq
2015-03-07 23:35:08 -06:00
todo
2015-03-07 18:58:14 -06:00
2015-09-12 19:57:50 -04:00
==========
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.
2016-03-24 14:06:20 -04:00
.. list-table::
2015-09-12 19:57:50 -04:00
:widths: 3 1 1 1 1 1 1
:header-rows: 1
:stub-columns: 1
2016-03-24 14:06:20 -04:00
* -
2015-09-12 19:57:50 -04:00
- Bash
- zsh
- plumbum
- fish
- IPython
- xonsh
* - Sane language
2016-03-24 14:06:20 -04:00
-
-
2015-09-12 19:57:50 -04:00
-
-
-
-
* - Easily scriptable
-
-
-
-
2016-03-24 14:06:20 -04:00
-
2015-09-12 19:57:50 -04:00
-
* - Native cross-platform support
2016-03-24 14:06:20 -04:00
-
-
2015-09-12 19:57:50 -04:00
-
-
-
-
* - Meant as a shell
-
-
2016-03-24 14:06:20 -04:00
-
2015-09-12 19:57:50 -04:00
-
2016-03-24 14:06:20 -04:00
-
2015-09-12 19:57:50 -04:00
-
* - Tab completion
-
-
2016-03-24 14:06:20 -04:00
-
2015-09-12 19:57:50 -04:00
-
-
-
* - Man-page completion
2016-03-24 14:06:20 -04:00
-
-
-
2015-09-12 19:57:50 -04:00
-
2016-03-24 14:06:20 -04:00
-
2015-09-12 19:57:50 -04:00
-
* - Large standard library
2016-03-24 14:06:20 -04:00
-
2015-09-12 19:57:50 -04:00
-
2016-03-24 14:06:20 -04:00
-
-
2015-09-12 19:57:50 -04:00
-
-
* - Typed variables
2016-03-24 14:06:20 -04:00
-
-
2015-09-12 19:57:50 -04:00
-
-
-
-
* - Syntax highlighting
2016-03-24 14:06:20 -04:00
-
-
-
2015-09-12 19:57:50 -04:00
-
- in notebook
- w/ prompt-toolkit
* - Pun in name
-
2016-03-24 14:06:20 -04:00
-
2015-09-12 19:57:50 -04:00
-
2016-03-24 14:06:20 -04:00
-
-
2015-09-12 19:57:50 -04:00
-
* - Rich history
2016-03-24 14:06:20 -04:00
-
-
-
-
-
2015-09-12 19:57:50 -04:00
-
2015-03-07 18:58:14 -06:00
2016-05-22 19:45:03 +02:00
.. include:: dependencies.rst
2015-03-07 19:30:06 -06:00
2015-03-07 18:58:14 -06:00
============
Contributing
============
2016-03-24 14:06:20 -04:00
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
2016-07-16 23:20:35 -07:00
hesitate to ask the mailing list (xonsh@googlegroups.com) or the `Gitter <https://gitter.im/xonsh/xonsh>`_ channel.
See the `Developer's Guide <devguide.html>`_ for more information about contributing.
2015-03-07 19:30:06 -06:00
==========
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
2016-03-24 14:06:20 -04:00
open an issue on GitHub.
2015-03-07 19:30:06 -06:00
`Join the mailing list here! <https://groups.google.com/forum/#!forum/xonsh>`_
2015-03-07 18:58:14 -06:00
=============
Helpful Links
=============
2016-02-10 02:43:04 -05:00
* `Documentation <http://xon.sh>`_
2016-06-28 12:29:42 +08:00
* `Gitter <https://gitter.im/xonsh/xonsh>`_
2015-03-07 19:30:06 -06:00
* `Mailing list <https://groups.google.com/forum/#!forum/xonsh>`_
* `IRC: channel #xonsh on OFTC <http://www.oftc.net/>`_
2016-06-28 12:29:42 +08:00
* `GitHub Repository <https://github.com/xonsh/xonsh>`_
2015-03-07 18:58:14 -06:00
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
2015-03-25 01:58:03 -05:00
.. raw:: html
2015-03-07 18:58:14 -06:00
2016-10-31 07:20:59 -07:00
<a href="https://github.com/xonsh/xonsh" class='github-fork-ribbon' title='Fork me on GitHub'>Fork me on GitHub</a>
<style>
2016-10-31 07:20:59 -07:00
/*!
* Adapted from
* "Fork me on GitHub" CSS ribbon v0.2.0 | MIT License
* https://github.com/simonwhitaker/github-fork-ribbon-css
*/
.github-fork-ribbon, .github-fork-ribbon:hover, .github-fork-ribbon:hover:active {
background:none;
left: inherit;
width: 12.1em;
height: 12.1em;
position: absolute;
overflow: hidden;
top: 0;
right: 0;
z-index: 9999;
pointer-events: none;
text-decoration: none;
text-indent: -999999px;
}
2016-10-31 07:20:59 -07:00
.github-fork-ribbon:before, .github-fork-ribbon:after {
/* The right and left classes determine the side we attach our banner to */
position: absolute;
display: block;
width: 15.38em;
height: 1.54em;
top: 3.23em;
right: -3.23em;
box-sizing: content-box;
transform: rotate(45deg);
}
.github-fork-ribbon:before {
content: "";
padding: .38em 0;
background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1));
box-shadow: 0 0.07em 0.4em 0 rgba(0, 0, 0, 0.3);
pointer-events: auto;
}
.github-fork-ribbon:after {
content: attr(title);
color: #000;
font: 700 1em "Helvetica Neue", Helvetica, Arial, sans-serif;
line-height: 1.54em;
text-decoration: none;
text-align: center;
text-indent: 0;
padding: .15em 0;
margin: .15em 0;
border-width: .08em 0;
border-style: dotted;
border-color: #777;
}
</style>