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 |
---|---|
Powerline style prompt theme | |
Super configurable prompt theme with Git support | |
Very basic prompt over two lines with simple git support | |
A simple two-line prompt with extensive Git support | |
Elvish integration for silver, a cross-shell customizable powerline-like prompt written in Rust | |
A cross-shell, minimal, bazingly-fast prompt written in Rust |
Completion Scripts
Item | Description |
---|---|
Includes completion scripts for go and git |
|
Includes completion scripts for cd , git , vcsh |
|
Converts any bash completion to elvish | |
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 | Support for iTerm2 Shell Integration features. |
General Libraries
Item | Description |
---|---|
β |
Git utility functions (mainly for prompts) |
β |
Support for persistent aliases and for parsing bash-style alias commands. |
β |
Support for the traditional !! and !$ keybindings |
β |
Directory stack and support for cd - to mean "previous directory" |
β |
Notifications for long-running commands |
β |
Environment setting and some wrapper utilities for the Nix package manager. |
β |
Utilities for manipulating prompt hooks. |
β |
A module for manipulating and auto-setting proxy variables |
β |
A module to generate different styles of progress spinners for use in Elvish scripts. |
β |
A module for automatically setting the terminal title. |
β |
Support for Python virtual environments |
β |
A tool to check if a newer version of Elvish is available. |
β |
A module for printing the date in elvish (Sindarin) written in Elvish |
β |
Git helpers |
β |
Helpers for usual shell manipulation |
β |
FS helpers and object oriented files |
Gitstatus integration for Elvish. | |
β |
Helps your elvish code to be more functional |
β |
Gives you access to lazy iterators, infinite sequences, and multiple higher-level iterators |
Pure elvish utility libraries | |
Evaluate Python inplace. Switch venv automatically. | |
β |
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. |
β |
Provides command ulimit for displaying and modifying the unix:rlimits variable in a manner more like traditional POSIX shells. |
More Awesome Elvish Stuff
Item | Description |
---|---|
A fast alternative to cd that learns your habits. |
|
Documented rc.elv file, using many of the modules above. |