GithubHelp home page GithubHelp logo

xonsh / awesome-xontribs Goto Github PK

View Code? Open in Web Editor NEW
65.0 5.0 10.0 546 KB

Awesome list of Xonsh contributions/extensions

Home Page: https://xonsh.github.io/awesome-xontribs/

License: MIT License

CSS 100.00%
xonsh xontrib awesome awesome-cli awesome-list awesome-lists awesome-readme awesome-shell awesome-terminal

awesome-xontribs's Introduction

Awesome Xontribs

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.

Education materials

Core Xontrib

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.

Python virtual-environment management

  • 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.

Tab-completions

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.

Directory Navigation

  • 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! ').
  • 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 and prevd 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 ../../..".

Prompts

Prompt tweaks

Theming & Styling

Language extensions

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 '{}').

Integrations

  • 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.

Plugins

  • autoxsh - Adds automatic execution of xonsh script files called .autoxsh when enterting a directory with cd 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 backends

  • history_encrypt - History backend that encrypt the xonsh shell commands history to prevent leaking sensitive data.

Debugging

  • 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.

Popular Links

awesome-xontribs's People

Contributors

anki-code avatar doronz88 avatar eugenesvk avatar evhub avatar jnoortheen avatar jpal91 avatar pre-commit-ci[bot] avatar rpdelaney avatar taconi avatar therealbithive avatar yggdr avatar zscholl avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

awesome-xontribs's Issues

prompt_vi_mode causes errors

More like an FYI for people using python 3.10 and newer, prompt_vi_mode causes issues, and fails, causing xonsh not to load correctly, because some of it's call have been deprecated and are no longer used in prompt_toolkit.

installing xontribs is impossible

in the latest arch (Eos), i am not able install most of the xontribs. my old configuration files has many xontribs. what is the expected way for xontribs to be installed in rolling release distro. can you please guide me. some checks i made repeatedly.

A) arch package manager dont have much xontribs. if it is there i have installed
B) earlier xpip used to work, but now it does not work. i get a warning.

error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try 'pacman -S
    python-xyz', where xyz is the package you are trying to
    install.
    
    If you wish to install a non-Arch-packaged Python package,
    create a virtual environment using 'python -m venv path/to/venv'.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip.
    
    If you wish to install a non-Arch packaged Python application,
    it may be easiest to use 'pipx install xyz', which will manage a
    virtual environment for you. Make sure you have python-pipx
    installed via pacman.

note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages.
hint: See PEP 668 for the detailed specification.

should i simply install with sudo pip, instead. not sure it will work, though

C) pipx is able to install some, but it is not detected by xonsh. keeps complaining that it is not installed.

can you please help me. I cannot imagine going to another shell now.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.