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 |
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 |
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 | 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 | Item | Description |
---|---|---|
iTerm2 | 🧩 github.com/zzamboni/elvish-modules/iterm2 | Support for iTerm2 Shell Integration features. |
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. |
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. |