Alternatives to Elvish

A scripting language and interactive shell with data structures and built-in interactive features. The listings below can replace it for an important use case. Each note says what changes if you switch.

The original

Replacements

Listings that take over the same core job as Elvish.

  • Nushell

    Shell that pipes structured tables instead of untyped text.

    Nushell pipes structured tables instead of text and behaves identically on Windows, macOS and Linux, but its language still breaks between releases.

  • fish

    A shell that autosuggests commands from your history, highlights syntax as you type and has tab completions that work without configuration.

    fish focuses on interactive use with autosuggestions and man-page completions out of the box, but has no official Windows build and is also not POSIX-compatible.

  • Murex

    A command-line shell with native support for JSON, YAML, CSV and other structured data.

    Murex handles JSON, YAML, XML and CSV natively with error handling and unit tests for scripts, but runs only on macOS and Linux.

  • Xonsh

    A cross-platform shell whose language is a superset of Python 3 with shell commands built in.

    Xonsh makes the shell language a superset of Python 3, giving access to Python libraries, which suits people who already know Python.

  • Oils

    A Unix shell project combining OSH, a bash-compatible shell, and YSH, a new shell language.

    Oils pairs OSH, which runs existing bash scripts with stricter checks, with YSH, a new language with structured data, though it is still pre-1.0.

  • Zsh

    Interactive shell with powerful completion, globbing and prompt theming.

    Zsh is a widely used interactive shell with strong completion and globbing, closer to POSIX shells than Elvish but without its built-in data structures.

Similar software

Related functionality, not a direct replacement.