Navigation

  • index
  • modules    
  • next    
  • xonsh 0.8.0 documentation »
  • the xonsh shell
  • Try It Now!
  • Comparison
  • Installation
    • Dependencies
    • Development Dependencies
    • Linux Guide
      • Installation
      • Dependencies
      • Development Dependencies
      • Customization
      • Possible conflicts with Bash
      • Default Ubuntu .bashrc breaks Foreign Shell Functions
    • OSX Guide
      • Installation
      • Extras for macOS
      • Dependencies
      • Development Dependencies
      • Customization
    • Windows Guide
      • Installation
      • Usage
    • Customizing xonsh
      • How do I…
  • Dependencies
  • Development Dependencies
  • News & Media
    • Talks & Articles
      • Talks
      • Articles
    • Quotes
  • Guides
    • Tutorial
      • Starting xonsh
      • Basics
      • Environment Variables
      • Running Commands
      • Python-mode vs Subprocess-mode
      • Quoting
      • Captured Subprocess with $() and !()
      • Uncaptured Subprocess with $[] and ![]
      • Python Evaluation with @()
      • Command Substitution with @$()
      • Nesting Subprocesses
      • Pipes
      • Logical Subprocess And
      • Logical Subprocess Or
      • Input/Output Redirection
      • Background Jobs
      • Job Control
      • String Literals in Subprocess-mode
      • Filename Globbing with *
      • Advanced Path Search with Backticks
      • Help & Superhelp with ? & ??
      • Compile, Evaluate, & Execute
      • Aliases
      • Up, Down, Tab
      • Customizing the Prompt
      • Executing Commands and Scripts
      • Importing Xonsh (*.xsh)
      • That’s All, Folks
    • Tutorial: History
      • How is xonsh history different?
      • Why have rich history?
      • history command
      • show action
      • id action
      • file action
      • info action
      • replay action
      • diff action
      • gc action
      • History Indexing
      • Exciting Technical Detail: Lazy JSON
      • Exciting Technical Detail: Teeing and Pseudo Terminals
      • Sqlite History Backend
      • Fun ideas for history data
    • Tutorial: Macros
      • What are macro instructions?
      • When and where are macros used?
      • Function Macros
      • Calling Function Macros
      • Writing Function Macros
      • Subprocess Macros
      • Context Manager Macros
      • Take Away
    • Tutorial: Extensions (Xontribs)
      • Overview
      • Structure
      • Loading Xontribs
      • Listing Known Xontribs
      • Authoring Xontribs
      • Tell Us About Your Xontrib!
    • Tutorial: Events
      • Overview
      • Show me the code!
      • Can I use this, too?
      • Further Reading
    • Tutorial: Programmable Tab-Completion
      • Overview
      • Structure
      • Listing Active Completers
      • Writing a New Completer
      • Registering a Completer
      • Removing a Completer
    • Tutorial: Write Your Own History Backend
      • Start with a Minimal History Template
      • Setup CouchDB
      • Initialize History Backend
      • Save History to CouchDB
      • Retrieve History Items
      • Try Out Our New History Backend
      • History Garbage Collection
      • Other History Options
      • Wrap Up
    • Tutorial: Subprocess Strings
      • No Escape
      • Justification
      • The Quotes Stay
      • Further Reading
    • Tutorial: prompt_toolkit custom keybindings
      • Overview
      • Control characters
      • Useful imports
      • Custom keyload function
      • What commands can keybindings run?
      • Restrict actions with filters
    • Bash to Xonsh Translation Guide
    • Subprocess Types Table
    • Python Virtual Environments
      • Vox
  • Config Files and Settings
    • Run Control File
    • Snippets for xonshrc
      • Adjust how git branch label behaves
      • Get better colors from the ls command
    • Environment Variables
      • Listing
    • Built-in Aliases
      • cd
      • pushd
      • popd
      • dirs
      • jobs
      • fg
      • bg
      • EOF, exit, and quit
      • exec and xexec
      • source
      • source-bash
      • source-foreign
      • history
      • replay
      • timeit
      • scp-resume
      • showcmd
      • ipynb
      • trace
      • xpip
      • xonfig
      • Windows cmd Aliases
      • activate/deactivate on Windows with Anaconda
      • sudo on Windows
      • ls
      • grep
      • xontrib
    • Xontribs
      • Information
    • Core Events
      • Listing
  • Contributing
  • Contact Us
  • Helpful Links
  • Development Spiral
    • Xonsh API
      • Xonsh Standard Library
      • Lexer (xonsh.lexer)
      • Parser (xonsh.parser)
      • Abstract Syntax Tree (xonsh.ast)
      • Compilation, Evaluation, & Execution (xonsh.execer)
      • Import Hooks (xonsh.imphooks)
      • Built-Ins (xonsh.built_ins)
      • Environment (xonsh.environ)
      • Aliases (xonsh.aliases)
      • Directory Stack (xonsh.dirstack)
      • Job Control (xonsh.jobs)
      • Python Procedures as Subprocess Commands (xonsh.proc)
      • Object Inspectors (xonsh.inspectors)
      • Xonsh History API
      • Tab Completer (xonsh.completer)
      • Completers API
      • Prompt formatter API
      • Main Shell Command Prompt (xonsh.shell)
      • Base Shell Class (xonsh.base_shell)
      • Readline Shell (xonsh.readline_shell)
      • Prompt Toolkit 2 Shell (xonsh.ptk2.shell)
      • Prompt Toolkit 2 History Object (xonsh.ptk2.history)
      • Prompt Toolkit 2 Completer (xonsh.ptk2.completer)
      • Prompt Toolkit 2 Key Bindings (xonsh.ptk2.key_bindings)
      • Pretty printing (xonsh.pretty)
      • Replay History (xonsh.replay)
      • History Diff’er (xonsh.diff_history)
      • Core Utilities API
      • Events (xonsh.events)
      • Tools (xonsh.tools)
      • Platform-specific constants and implementations (xonsh.platform)
      • JSON Utilities (xonsh.jsonutils)
      • Lazy JSON Files (xonsh.lazyjson)
      • Lazy & Self-destructive Objects (xonsh.lazyasd)
      • Open Python Files (xonsh.openpy)
      • Foreign Shell Tools (xonsh.foreign_shells)
      • Commands Cache (xonsh.commands_cache)
      • Tracer (xonsh.tracer)
      • Command Line Interface (xonsh.main)
      • Color Tools (xonsh.color_tools)
      • Pygments Hooks (xonsh.pyghooks)
      • Jupyter Kernel (xonsh.jupyter_kernel)
      • Jupyter Shell (xonsh.jupyter_shell)
      • Wizard Making Tools (xonsh.wizard)
      • Xonsh Configuration Utility (xonsh.xonfig)
      • Compiling and Caching of Xonsh Code (xonsh.codecache)
      • Context Managers for Xonsh (xonsh.contexts)
      • Matplotlib Hooks (xontrib.mplhooks)
      • Vox (xontrib.voxapi)
      • Prompt Toolkit Shell (xonsh.ptk.shell)
      • Prompt Toolkit History Object (xonsh.ptk.history)
      • Prompt Toolkit Completer (xonsh.ptk.completer)
      • Prompt Toolkit Key Bindings (xonsh.ptk.key_bindings)
    • Advanced Events
      • Why Unordered?
      • So how do I handle results?
      • What are Species?
    • Developer’s Guide
      • Making Your First Change
      • Changelog
      • Style Guide
      • How to Test
      • How to Document
      • Building the Website
      • Branches and Releases
      • Document History
    • Xonsh Change Log
      • v0.8.0
      • v0.7.10
      • v0.7.9
      • v0.7.8
      • v0.7.7
      • v0.7.6
      • v0.7.5
      • v0.7.4
      • v0.7.3
      • v0.7.2
      • v0.7.1
      • v0.7.0
      • v0.6.10
      • v0.6.9
      • v0.6.8
      • v0.6.7
      • v0.6.6
      • v0.6.5
      • v0.6.4
      • v0.6.3
      • v0.6.2
      • v0.6.1
      • v0.6.0
      • v0.5.12
      • v0.5.11
      • v0.5.10
      • v0.5.9
      • v0.5.8
      • v0.5.7
      • v0.5.6
      • v0.5.5
      • v0.5.4
      • v0.5.3
      • v0.5.2
      • v0.5.1
      • v0.5.0
      • v0.4.7
      • v0.4.6
      • v0.4.5
      • v0.4.4
      • v0.4.3
      • v0.4.2
      • v0.4.1
      • v0.4.0
      • v0.3.4
      • v0.3.3
      • v0.3.2
      • v0.3.1
      • v0.3.0
      • v0.2.7
      • v0.2.6
      • v0.2.5
      • v0.2.1 - v0.2.4
      • v0.2.0
      • v0.1.0
      • <v0.1.0
    • Frequently Asked Questions
      • 1. Why xonsh?
      • 2. Why not another exotic shell, such as fish?
      • 3. Why not just use the IPython command line interface?
      • 4. So how does this all work?
      • 5. Context-sensitive parsing is gross
      • 6. My Branches are Timing Out?!
      • 7. exec
      • 8. Gotchas
    • Wishlist & To-Dos
      • 1. Tab completion from man pages
      • 2. urwid based command prompt
      • 3. Support and testing for other platforms
  • the xonsh shell
  • Comparison
  • Installation
    • Dependencies
    • Development Dependencies
    • Linux Guide
      • Installation
      • Dependencies
      • Development Dependencies
      • Customization
      • Possible conflicts with Bash
      • Default Ubuntu .bashrc breaks Foreign Shell Functions
    • OSX Guide
      • Installation
      • Extras for macOS
      • Dependencies
      • Development Dependencies
      • Customization
    • Windows Guide
      • Installation
      • Usage
    • Customizing xonsh
      • How do I…
  • Dependencies
  • Development Dependencies
  • News & Media
    • Talks & Articles
      • Talks
      • Articles
    • Quotes
  • Guides
    • Tutorial
      • Starting xonsh
      • Basics
      • Environment Variables
      • Running Commands
      • Python-mode vs Subprocess-mode
      • Quoting
      • Captured Subprocess with $() and !()
      • Uncaptured Subprocess with $[] and ![]
      • Python Evaluation with @()
      • Command Substitution with @$()
      • Nesting Subprocesses
      • Pipes
      • Logical Subprocess And
      • Logical Subprocess Or
      • Input/Output Redirection
      • Background Jobs
      • Job Control
      • String Literals in Subprocess-mode
      • Filename Globbing with *
      • Advanced Path Search with Backticks
      • Help & Superhelp with ? & ??
      • Compile, Evaluate, & Execute
      • Aliases
      • Up, Down, Tab
      • Customizing the Prompt
      • Executing Commands and Scripts
      • Importing Xonsh (*.xsh)
      • That’s All, Folks
    • Tutorial: History
      • How is xonsh history different?
      • Why have rich history?
      • history command
      • show action
      • id action
      • file action
      • info action
      • replay action
      • diff action
      • gc action
      • History Indexing
      • Exciting Technical Detail: Lazy JSON
      • Exciting Technical Detail: Teeing and Pseudo Terminals
      • Sqlite History Backend
      • Fun ideas for history data
    • Tutorial: Macros
      • What are macro instructions?
      • When and where are macros used?
      • Function Macros
      • Calling Function Macros
      • Writing Function Macros
      • Subprocess Macros
      • Context Manager Macros
      • Take Away
    • Tutorial: Extensions (Xontribs)
      • Overview
      • Structure
      • Loading Xontribs
      • Listing Known Xontribs
      • Authoring Xontribs
      • Tell Us About Your Xontrib!
    • Tutorial: Events
      • Overview
      • Show me the code!
      • Can I use this, too?
      • Further Reading
    • Tutorial: Programmable Tab-Completion
      • Overview
      • Structure
      • Listing Active Completers
      • Writing a New Completer
      • Registering a Completer
      • Removing a Completer
    • Tutorial: Write Your Own History Backend
      • Start with a Minimal History Template
      • Setup CouchDB
      • Initialize History Backend
      • Save History to CouchDB
      • Retrieve History Items
      • Try Out Our New History Backend
      • History Garbage Collection
      • Other History Options
      • Wrap Up
    • Tutorial: Subprocess Strings
      • No Escape
      • Justification
      • The Quotes Stay
      • Further Reading
    • Tutorial: prompt_toolkit custom keybindings
      • Overview
      • Control characters
      • Useful imports
      • Custom keyload function
      • What commands can keybindings run?
      • Restrict actions with filters
    • Bash to Xonsh Translation Guide
    • Subprocess Types Table
    • Python Virtual Environments
      • Vox
  • Config Files and Settings
    • Run Control File
    • Snippets for xonshrc
      • Adjust how git branch label behaves
      • Get better colors from the ls command
    • Environment Variables
      • Listing
    • Built-in Aliases
      • cd
      • pushd
      • popd
      • dirs
      • jobs
      • fg
      • bg
      • EOF, exit, and quit
      • exec and xexec
      • source
      • source-bash
      • source-foreign
      • history
      • replay
      • timeit
      • scp-resume
      • showcmd
      • ipynb
      • trace
      • xpip
      • xonfig
      • Windows cmd Aliases
      • activate/deactivate on Windows with Anaconda
      • sudo on Windows
      • ls
      • grep
      • xontrib
    • Xontribs
      • Information
    • Core Events
      • Listing
  • Contributing
  • Development Spiral
    • Xonsh API
      • Xonsh Standard Library
      • Lexer (xonsh.lexer)
      • Parser (xonsh.parser)
      • Abstract Syntax Tree (xonsh.ast)
      • Compilation, Evaluation, & Execution (xonsh.execer)
      • Import Hooks (xonsh.imphooks)
      • Built-Ins (xonsh.built_ins)
      • Environment (xonsh.environ)
      • Aliases (xonsh.aliases)
      • Directory Stack (xonsh.dirstack)
      • Job Control (xonsh.jobs)
      • Python Procedures as Subprocess Commands (xonsh.proc)
      • Object Inspectors (xonsh.inspectors)
      • Xonsh History API
      • Tab Completer (xonsh.completer)
      • Completers API
      • Prompt formatter API
      • Main Shell Command Prompt (xonsh.shell)
      • Base Shell Class (xonsh.base_shell)
      • Readline Shell (xonsh.readline_shell)
      • Prompt Toolkit 2 Shell (xonsh.ptk2.shell)
      • Prompt Toolkit 2 History Object (xonsh.ptk2.history)
      • Prompt Toolkit 2 Completer (xonsh.ptk2.completer)
      • Prompt Toolkit 2 Key Bindings (xonsh.ptk2.key_bindings)
      • Pretty printing (xonsh.pretty)
      • Replay History (xonsh.replay)
      • History Diff’er (xonsh.diff_history)
      • Core Utilities API
      • Events (xonsh.events)
      • Tools (xonsh.tools)
      • Platform-specific constants and implementations (xonsh.platform)
      • JSON Utilities (xonsh.jsonutils)
      • Lazy JSON Files (xonsh.lazyjson)
      • Lazy & Self-destructive Objects (xonsh.lazyasd)
      • Open Python Files (xonsh.openpy)
      • Foreign Shell Tools (xonsh.foreign_shells)
      • Commands Cache (xonsh.commands_cache)
      • Tracer (xonsh.tracer)
      • Command Line Interface (xonsh.main)
      • Color Tools (xonsh.color_tools)
      • Pygments Hooks (xonsh.pyghooks)
      • Jupyter Kernel (xonsh.jupyter_kernel)
      • Jupyter Shell (xonsh.jupyter_shell)
      • Wizard Making Tools (xonsh.wizard)
      • Xonsh Configuration Utility (xonsh.xonfig)
      • Compiling and Caching of Xonsh Code (xonsh.codecache)
      • Context Managers for Xonsh (xonsh.contexts)
      • Matplotlib Hooks (xontrib.mplhooks)
      • Vox (xontrib.voxapi)
      • Prompt Toolkit Shell (xonsh.ptk.shell)
      • Prompt Toolkit History Object (xonsh.ptk.history)
      • Prompt Toolkit Completer (xonsh.ptk.completer)
      • Prompt Toolkit Key Bindings (xonsh.ptk.key_bindings)
    • Advanced Events
      • Why Unordered?
      • So how do I handle results?
      • What are Species?
    • Developer’s Guide
      • Making Your First Change
      • Changelog
      • Style Guide
      • How to Test
      • How to Document
      • Building the Website
      • Branches and Releases
      • Document History
    • Xonsh Change Log
      • v0.8.0
      • v0.7.10
      • v0.7.9
      • v0.7.8
      • v0.7.7
      • v0.7.6
      • v0.7.5
      • v0.7.4
      • v0.7.3
      • v0.7.2
      • v0.7.1
      • v0.7.0
      • v0.6.10
      • v0.6.9
      • v0.6.8
      • v0.6.7
      • v0.6.6
      • v0.6.5
      • v0.6.4
      • v0.6.3
      • v0.6.2
      • v0.6.1
      • v0.6.0
      • v0.5.12
      • v0.5.11
      • v0.5.10
      • v0.5.9
      • v0.5.8
      • v0.5.7
      • v0.5.6
      • v0.5.5
      • v0.5.4
      • v0.5.3
      • v0.5.2
      • v0.5.1
      • v0.5.0
      • v0.4.7
      • v0.4.6
      • v0.4.5
      • v0.4.4
      • v0.4.3
      • v0.4.2
      • v0.4.1
      • v0.4.0
      • v0.3.4
      • v0.3.3
      • v0.3.2
      • v0.3.1
      • v0.3.0
      • v0.2.7
      • v0.2.6
      • v0.2.5
      • v0.2.1 - v0.2.4
      • v0.2.0
      • v0.1.0
      • <v0.1.0
    • Frequently Asked Questions
      • 1. Why xonsh?
      • 2. Why not another exotic shell, such as fish?
      • 3. Why not just use the IPython command line interface?
      • 4. So how does this all work?
      • 5. Context-sensitive parsing is gross
      • 6. My Branches are Timing Out?!
      • 7. exec
      • 8. Gotchas
    • Wishlist & To-Dos
      • 1. Tab completion from man pages
      • 2. urwid based command prompt
      • 3. Support and testing for other platforms
  • API
    • Xonsh Standard Library
      • Operating System Tools (xonsh.lib.os)
      • Subprocesses (xonsh.lib.subrpocess)
    • Lexer (xonsh.lexer)
    • Parser (xonsh.parser)
    • Abstract Syntax Tree (xonsh.ast)
    • Compilation, Evaluation, & Execution (xonsh.execer)
    • Import Hooks (xonsh.imphooks)
    • Built-Ins (xonsh.built_ins)
    • Environment (xonsh.environ)
    • Aliases (xonsh.aliases)
    • Directory Stack (xonsh.dirstack)
    • Job Control (xonsh.jobs)
    • Python Procedures as Subprocess Commands (xonsh.proc)
    • Object Inspectors (xonsh.inspectors)
    • Xonsh History API
      • History Base Class – xonsh.history.base
      • History Main Entry Points – xonsh.history.main
      • History Backend JSON – xonsh.history.json
      • History Backend Sqlite – xonsh.history.sqlite
    • Tab Completer (xonsh.completer)
    • Completers API
      • Base Completer (xonsh.completers.base)
      • Bash Completers (xonsh.completers.bash)
      • First Command Completer (xonsh.completers.commands)
      • Directory Completers (xonsh.completers.dirs)
      • Manual Page Based Completers (xonsh.completers.man)
      • File System Path Completer (xonsh.completers.path)
      • Python Completer (xonsh.completers.python)
      • Completion Tools (xonsh.completers.tools)
      • Completion Xompletions (xonsh.completers.xompletions)
    • Prompt formatter API
      • Base prompt formatter (xonsh.prompt.base)
      • CWD related prompt formatter (xonsh.prompt.cwd)
      • Virtualenv prompt formatter (xonsh.prompt.env)
      • Informative git status prompt formatter (xonsh.prompt.gitstatus)
      • Jobs prompt formatter (xonsh.prompt.job)
      • Version control branch info prompt formatter (xonsh.prompt.vc)
    • Main Shell Command Prompt (xonsh.shell)
    • Base Shell Class (xonsh.base_shell)
    • Readline Shell (xonsh.readline_shell)
    • Prompt Toolkit 2 Shell (xonsh.ptk2.shell)
    • Prompt Toolkit 2 History Object (xonsh.ptk2.history)
    • Prompt Toolkit 2 Completer (xonsh.ptk2.completer)
    • Prompt Toolkit 2 Key Bindings (xonsh.ptk2.key_bindings)
    • Pretty printing (xonsh.pretty)
      • Example Usage
      • Extending
    • Replay History (xonsh.replay)
    • History Diff’er (xonsh.diff_history)
    • Core Utilities API
      • Cat Command – xonsh.xoreutils.cat
      • Echo Command – xonsh.xoreutils.echo
      • Pwd Command – xonsh.xoreutils.pwd
      • Tee Command – xonsh.xoreutils.tee
      • TTY Command – xonsh.xoreutils.tty
      • Which Command – xonsh.xoreutils.which
      • System Uptime – xonsh.xoreutils.uptime
      • Core Utilites Utilities – xonsh.xoreutils.util
    • Events (xonsh.events)
    • Tools (xonsh.tools)
    • Platform-specific constants and implementations (xonsh.platform)
    • JSON Utilities (xonsh.jsonutils)
    • Lazy JSON Files (xonsh.lazyjson)
    • Lazy & Self-destructive Objects (xonsh.lazyasd)
    • Open Python Files (xonsh.openpy)
    • Foreign Shell Tools (xonsh.foreign_shells)
    • Commands Cache (xonsh.commands_cache)
    • Tracer (xonsh.tracer)
    • Command Line Interface (xonsh.main)
    • Color Tools (xonsh.color_tools)
    • Pygments Hooks (xonsh.pyghooks)
    • Jupyter Kernel (xonsh.jupyter_kernel)
    • Jupyter Shell (xonsh.jupyter_shell)
    • Wizard Making Tools (xonsh.wizard)
    • Xonsh Configuration Utility (xonsh.xonfig)
    • Compiling and Caching of Xonsh Code (xonsh.codecache)
    • Context Managers for Xonsh (xonsh.contexts)
    • Matplotlib Hooks (xontrib.mplhooks)
    • Vox (xontrib.voxapi)
    • Prompt Toolkit Shell (xonsh.ptk.shell)
    • Prompt Toolkit History Object (xonsh.ptk.history)
    • Prompt Toolkit Completer (xonsh.ptk.completer)
    • Prompt Toolkit Key Bindings (xonsh.ptk.key_bindings)
  • Contact Us
  • Helpful Links

Logo

Next page

→ the xonsh shell

This Page

  • Show Source

Quick search

Navigation

  • index
  • modules    
  • next    
  • xonsh 0.8.0 documentation »
© Copyright 2018, Anthony Scopatz. Created using Sphinx 1.7.9.