Awesome list of Xonsh contributions (xontribs). Xontribs are a set of tools and conventions for extending the functionality of xonsh beyond what is provided by default. This allows 3rd party developers and users to improve their xonsh experience without having to go through the xonsh development and release cycle.
- xonsh-cheatsheet - Cheat sheet for xonsh shell with copy-pastable examples. The best doc for the new users.
- xonsh-install - Best way to install xonsh on macOS or Linux and using it as core shell.
- rc-awesome - Snippets of code for the xonsh run control (RC) file.
- xonsh-awesome-cli-app - Example of awesome cli app template for xonsh.
These modules are part of xonsh itself but need to be loaded explicitly using xontrib load
*
- coreutils - Additional core utilities that are implemented in xonsh.
- vox - Python virtual environment manager for xonsh.
- autovox - A framework for automatic vox.* voxapi - API for vox.
- avox - Policy for autovox based on project directories.
- avox_poetry - auto-activate venv as one cd into a poetry project folder. Activate
.venv
inside the project folder is also supported.
Extends auto-completion capabilities
- abbrevs - Expands input words as you type in xonsh shell (fish-shell-like abbreviations).
- apt_tabcomplete - Adds tabcomplete functionality to apt-get/apt-cache inside of xonsh.
- argcomplete - Argcomplete support to tab completion of python and xonsh scripts in xonsh.
- bash_completions_dirs - Autocomplete loading from directories for the xonsh.
- carapace-bin - multi-shell multi-command argument completer with Xonsh support.
- django - Django management command completions for Xonsh shell.
- docker_tabcomplete - Adds tabcomplete functionality to docker inside of xonsh.
- fish_completer - Populate rich completions using fish shell instead of bash.
- jedi - Use Jedi as xonsh's python completer.
- makefile_complete - Adds tabcomplete functionality to make inside of xonsh.
- scrapy_tabcomplete - Adds tabcomplete functionality to scrapy inside of xonsh.
- autojump - autojump support for xonsh.
- back2dir - Return to the most recently used directory when starting the xonsh shell. For example, if you were in the '/work' directory when you last exited xonsh, then your next xonsh session will start in the '/work' directory, instead of your home directory.
- broot - supports broot with br alias.
- cd - 'cd' to any path without escaping in xonsh shell ('cd '→'cd! ').
- dir-picker - Binds a shortcut to
zoxide query -i
command for quick and easy navigation. - free_cwd - This will release the lock on the current directory whenever the prompt is shown.
- fstrider - File system navigator for reducing keystrokes and doing thing intuitive. Alternative to cd-ls.
- hist_navigator - fish like
nextd
andprevd
with default keybindings. - jump-to-dir - Jump to used before directory by part of the path. Lightweight zero-dependency implementation of autojump or zoxide projects functionality.
- up - The fast way to go up directories.
- z - Tracks your most used directories, based on 'frecency'.
- zoxide - Zoxide integration for xonsh.
- dotdot - "...." -> "cd ../../..".
powerline - Powerline for Xonsh shell.powerline2 - Powerline for Xonsh shell forked from santagada/xontrib-powerline.- powerline3 - Powerline theme with native $PROMPT_FIELDS support.
- powerline_binding - Uses powerline to render the xonsh prompt.
- prompt_bar - An elegance bar style for prompt.
- prompt_starship - Starship prompt in xonsh shell.
- prompt_vi_mode - vi-mode status formatter for xonsh prompt
- whole_word_jumping - Jumping across whole words (non-whitespace) with Ctrl+Left/Right.
- base16_shell - Change base16 shell themes.
- gruvbox - A gruvbox color scheme for xonsh.
- dracula - Dracula theme for xonsh.
Additions to the xonsh core language.
- coconut - Use language features from Coconut, a functional-programming-oriented strict superset of Python.
- dalias - Library of decorator aliases (daliases) e.g.
j = $(@json echo '{}')
.
- bashisms - Bash-like interface extensions for xonsh.
- distributed - The distributed parallel computing library hooks for xonsh.
- jupyter - Jupyter Notebook kernel for Xonsh.
- kitty - Xonsh hooks for the Kitty terminal emulator.
- mpl - Matplotlib hooks for xonsh, including the new 'mpl' alias that displays the current figure on the screen.
- langenv - pyenv/nodenv/goenv/rbenv integration for xonsh.
- xonsh-prewarmed - run interactive xonsh session in milliseconds using prewarmed GNU Screen session from the background.
- homebrew - Add Homebrew's shell environment to xonsh shell on macOS/Linux.
- init_ssh_agent - ssh-agent initialization.
- ssh_agent - ssh-agent integration.
- shadowenv - shadowenv integration.
- tcg - tcg integration.
- xo - Adds an 'xo' alias to run the exofrills text editor in the current Python interpreter session. This shaves off a bit of the startup time when running your favorite, minimal text editor.
- xxh - Using xonsh wherever you go through the ssh.
- autoxsh - Adds automatic execution of xonsh script files called
.autoxsh
when enterting a directory withcd
function. - chatgpt - Adds ability to communicate with OpenAI's ChatGPT directly from the command line.
- clp - Copy output to clipboard. Cross-platform.
- cmd_done - send notification once long-running command is finished. Adds
long_cmd_duration
field to $PROMPT_FIELDS. - commands - Some useful commands/aliases to use with Xonsh shell.
- default-command - Run a default command when you press return on an empty command line.
- direnv - Supports direnv.
- brace-expansion - Implements simple brace expansion:
a{d,c,b}e
->ade ace abe
- fzf-widgets (ARCHIVED) - Adds some fzf widgets to your xonsh shell.
- fzf-completions - The new version of fzf support in xonsh (the updated version of the archived
fzf-widgets
). - skim - Fuzzy-search (with skim) xonsh history of commands and their CWDs, zoxide cd history (CWD/dir support in-place navigation), files/dirs in the current directory, ssh hosts.
- gitinfo - Displays git information on entering a repository folder. Uses
onefetch
if available. - histcpy - Useful aliases and shortcuts for extracting links and textfrom command output history and putting them into the clipboard.
- macro - Library of the useful macros for the xonsh shell.
- onepath - When you click to a file or folder in graphical OS they will be opened in associated app.The xontrib-onepath brings the same logic for the xonsh shell. Type the filename or pathwithout preceding command and an associated action will be executed. The actions are customizable.
- output_search - Get identifiers, names, paths, URLs and words from the previous command output and use them for the next command.
- pipeliner - Let your pipe lines flow thru the Python code in xonsh.
- pyrtn - IPython like In[]/Out[] to access python return values in the current session.
- readable-traceback - Make traceback easier to see for xonsh.
- schedule - Xonsh task scheduling.
- sh - Paste and run commands from bash, zsh, fish in xonsh shell.
- xpg - Run/plot/explain sql query for PostgreSQL.
- history_encrypt - History backend that encrypt the xonsh shell commands history to prevent leaking sensitive data.
-
xontrib-debug-tools - Debug tools for xonsh shell:
xog
- This adds xog - a simple command to establish and print temporary traceback log file.pdb
- Simple built-in debugger.
- Xontribs on GitHub
- Xontrib Template - make your own xontrib in 10 minutes by using supercharged template.
- Xonsh Official Site
- Xonsh GitHub Repository
- Xonsh Gitter Channel