Skip to content

Latest commit

 

History

History
104 lines (89 loc) · 10.1 KB

README.md

File metadata and controls

104 lines (89 loc) · 10.1 KB

awesome-elvish

A curated list of awesome Elvish packages, modules, and tools that support Elvish.

Icon Description
📦 An Elvish package (a collection of related modules) - install directly with epm
🧩 An Elvish module - install the package that contains it (usually just the Git repo) with epm
🛠 An external tool that supports Elvish

Prompt Themes

Item Description
🧩 github.com/muesli/elvish-libs/powerline Powerline style prompt theme
🧩 github.com/zzamboni/elvish-themes/chain Super configurable prompt theme with Git support
🧩 github.com/champii/elvish-base/prompt Very basic prompt over two lines with simple git support
🧩 github.com/tylerreckart/gondolin/gondolin A simple two-line prompt with extensive Git support
🧩 gitlab.com/SneakyThunder/silver-prompt-elv/silver Elvish integration for silver, a cross-shell customizable powerline-like prompt written in Rust
🛠 Starship A cross-shell, minimal, blazingly-fast prompt written in Rust

Completion Scripts

Item Description
📦 github.com/xiaq/edit.elv Includes completion scripts for go and git
📦 zzamboni/elvish-completions Includes completion scripts for cd, git, vcsh
📦 aca/elvish-bash-completion Converts any bash completion to elvish
🛠 rsteube/carapace-bin Built-in completions for over 400 commands, and support for custom completions

Editor Support

Editor Plugin
Emacs elvish-mode
Vim elvish.vim
Atom language-elvish
Kakoune Builtin support; kak-lsp also has builtin LSP configuration for Elvish
VSCode official extension
Sublime Text 3 elvish_syntax_for_sublime
PyCharm elvish-lang-plugin
Micro elvish-micro-syntax
Helix Builtin support, including integration with elvish -lsp

Terminal Integration

Terminal Item Description
iTerm2 🧩 github.com/zzamboni/elvish-modules/iterm2 Support for iTerm2 Shell Integration features.

General Libraries

Item Description
📦 github.com/muesli/elvish-libs
 🧩 git Git utility functions (mainly for prompts)
📦 github.com/zzamboni/elvish-modules
 🧩 alias Support for persistent aliases and for parsing bash-style alias commands.
 🧩 bang-bang Support for the traditional !! and !$ keybindings
 🧩 dir Directory stack and support for cd - to mean "previous directory"
 🧩 long-running-notifications Notifications for long-running commands
 🧩 nix Environment setting and some wrapper utilities for the Nix package manager.
 🧩 prompt-hooks Utilities for manipulating prompt hooks.
 🧩 proxy A module for manipulating and auto-setting proxy variables
 🧩 spinners A module to generate different styles of progress spinners for use in Elvish scripts.
 🧩 terminal-title A module for automatically setting the terminal title.
📦 github.com/iwoloschin/elvish-packages
 🧩 python Support for Python virtual environments
 🧩 update A tool to check if a newer version of Elvish is available.
📦 github.com/jkbr-19/sindarin-term
 🧩 date-elv A module for printing the date in elvish (Sindarin) written in Elvish
📦 github.com/champii/elvish-base
 🧩 git Git helpers
 🧩 utils Helpers for usual shell manipulation
 🧩 fs FS helpers and object oriented files
🧩 github.com/href/elvish-gitstatus/gitstatus Gitstatus integration for Elvish.
📦 github.com/doubleagent/rivendell
 🧩 fun Helps your elvish code to be more functional
 🧩 lazy Gives you access to lazy iterators, infinite sequences, and multiple higher-level iterators
🧩 github.com/kolbycrouch/elvish-libs/pure Pure elvish utility libraries
🧩 github.com/gergelyk/elvish-libs/python Evaluate Python inplace. Switch venv automatically.
📦 github.com/krader1961/elvish-lib
 🧩 cmd-duration Provides function human-readable to make it easy to include a human friendly representation, in your prompt, of the duration of the most recent command.
 🧩 util-unix Provides command ulimit for displaying and modifying the unix:rlimits variable in a manner more like traditional POSIX shells.
📦 github.com/iandol/elvish-modules
 🧩 mamba support for conda / mamba / micromamba package manager. For more complex conda recipes that run POSIX scripts, it captures the environment and imports it for elvish.
 🧩 cmds utility functions to perform helpful shell actions: add/remove (append-to-path, prepend-to-path, remove-from-path) or filter (filter, filter-out, filter-re, filter-re-out) lists like the path list; if-external - check a executable then run tasks if it is, or is not present; list utils list-unique, list-diff, list-append, list-intersect, list-find and several others.
📦 github.com/tesujimath/bash-env-elvish
 🧩 bash-env Import Bash environment into Elvish.
 🧩 virtualenv Activate/deactivate Python virtualenv.
 🧩 nvm Support for NVM (node version manager).
📦 github.com/tesujimath/elvish-tap
 🧩 tap Test Anything Protocol (TAP) for Elvish.

More Awesome Elvish Stuff

Item Description
🛠 ajeetdsouza/zoxide A fast alternative to cd that learns your habits.
📄 zzamboni/dot_elvish Documented rc.elv file, using many of the modules above.
📄 darcy-shen/oh-my-elvish User-friendly, productive and cross-platform elvish configuration.
🛠 x-cmd x-cmd is a vast and interesting collection of tools guided by the Unix philosophy, with support for Elvish.
🛠 dorothy Bring your dotfile commands to any shell. Sensible defaults and hundreds of commands preloaded. Supports Elvish on macOS, Linux, Windows.