Powerful scripting language & versatile interactive shell add sylixos support.
Go to file
Qi Xiao 075d65febc
Use GitHub Actions for CI (#1232)
Use GitHub Actions for everything except testing on gccgo and FreeBSD (which still use CirrusCI).
2021-02-10 23:41:17 +00:00
.github/workflows Use GitHub Actions for CI (#1232) 2021-02-10 23:41:17 +00:00
cmd cmd/examples: Replace the cli example with a realistic bc wrapper. 2021-02-10 23:32:44 +00:00
pkg Change path:is-{dir regular} to use Lstat. 2021-02-10 23:33:31 +00:00
tools tools/buildall.sh: Avoid the unportable "echo -n". 2021-02-06 22:44:58 +00:00
website Update for 0.15.0 release. 2021-01-30 11:26:39 +00:00
.cirrus.yml Use GitHub Actions for CI (#1232) 2021-02-10 23:41:17 +00:00
.codecov.yml Copy and trim down the net/rpc package. 2021-01-30 23:56:58 +00:00
.dockerignore Update .dockerignore. 2018-10-16 10:19:20 +01:00
.gitattributes Use .gitattributes to filter go sources through goimports 2014-02-10 12:41:16 +08:00
.gitignore Rename coverage file to "cover". 2020-08-16 17:04:02 +01:00
0.16.0-release-notes.md Change path:is-{dir regular} to use Lstat. 2021-02-10 23:33:31 +00:00
CONTRIBUTING.md Document style guide for the doc comment of unexported types and functions. 2020-08-16 14:00:04 +01:00
Dockerfile Change module import path to src.elv.sh 2021-01-27 01:30:25 +00:00
go.mod Make website/ its own Go module. 2021-01-28 11:02:30 +00:00
go.sum Make website/ its own Go module. 2021-01-28 11:02:30 +00:00
LICENSE Project rename: das -> elvish 2014-01-29 18:44:07 +08:00
Makefile Makefile: Remove -buildmode=pie from the go command. 2021-01-31 02:52:27 +00:00
PACKAGING.md PACKAGING.md: The guide applies to releases from 0.16.0, not 0.15.0 2021-01-31 02:32:04 +00:00
README.md New tagline: Expressive programming language + versatile interactive shell 2021-01-29 02:42:29 +00:00

Elvish: Expressive Programming Language + Versatile Interactive Shell

Test Status on Linux Test Status on macOS Test Status on FreeBSD Test status on Windows Test Coverage Go Report Card GoDoc Twitter

Elvish is an expressive programming language and a versatile interactive shell, combined into one seamless package. It runs on Linux, BSDs, macOS and Windows.

Despite its pre-1.0 status, it is already suitable for most daily interactive use.

Visit the official website https://elv.sh for prebuilt binaries, blog posts, documentation and other resources.

User groups (all connected with matterbridge): Gitter Telegram Group #elvish on freenode #elvish:matrix.org

Building Elvish

Most users can just use prebuilt binaries and do not need to build from source.

To build Elvish from source, you need

  • A supported OS: Linux, {Free,Net,Open}BSD, macOS, or Windows.

    NOTE: Windows support is experimental, and only Windows 10 is supported.

  • Go >= 1.14.

To build Elvish from source, follow these steps:

# 1. Start from any directory you want to store Elvish's source code
# 2. Clone the Git repository
git clone https://github.com/elves/elvish
# 3. Change into the repository
cd elvish
# 4. Build and install Elvish
make get

This will install Elvish to ~/go/bin.

Alternatively, you can also just use go get to install Elvish:

go get -u src.elv.sh/cmd/elvish

This will clone the Git repository to ~/go/src/src.elv.sh, updating it if already exists, and install Elvish to ~/go/bin. However, Elvish built this way will lack version information, although it is otherwise fully functional.

Some tips on installation:

  • Remember to add $HOME/go/bin to your PATH so that you can run elvish directly.

  • If you want to install Elvish to a different place, follow these steps to set GOPATH, and Elvish will be installed to $GOPATH/bin instead.

Contributing to Elvish

See CONTRIBUTING.md for more notes for contributors.