بدون توضیح

Qi Xiao 1d62b0d68b Add a security policy doc. 2 سال پیش
.github 1869cd5f35 Revert "Revert "Require Go >= 1.16."" 2 سال پیش
cmd ccc2750037 Remove the experimental web UI. 2 سال پیش
pkg ccc2750037 Remove the experimental web UI. 2 سال پیش
tools 671c76be00 Add a lint Makefile target and CI task. 2 سال پیش
website 919b93bf97 Document additional requirements for building the docset. 2 سال پیش
.cirrus.yml 167bbf1e03 Bump gccgo to 11 2 سال پیش
.codecov.yml a8626bce1b Fixup for #1339 2 سال پیش
.codespellrc 4d62732ebc Fix "indicies" -> indices. 2 سال پیش
.dockerignore f9302b1456 Update .dockerignore. 5 سال پیش
.gitattributes 615cbc2d0b Use .gitattributes to filter go sources through goimports 10 سال پیش
.gitignore 844a1fedb2 Handle AltGr key combinations on Windows 2 سال پیش
.gitlab-ci.yml ed7726c191 Test and build in parallel. 3 سال پیش
0.17.0-release-notes.md 9c09f5c814 Document stackable modes in 0.17.0 release notes. 2 سال پیش
CONTRIBUTING.md 214dafef56 CONTRIBUTING: Add instruction for running all checks. 2 سال پیش
Dockerfile aaa4d2a431 Lock image versions in Dockerfile 3 سال پیش
LICENSE c1711bbd0a Project rename: das -> elvish 10 سال پیش
Makefile 37af835556 Makefile: Add a codespell target that uses "--skip .git". 2 سال پیش
PACKAGING.md 5724ec4c47 Fix typos and add codespell to CI 2 سال پیش
README.md e59b2ede43 Link to Elvish's repology page on https://elv.sh/get and README. 2 سال پیش
SECURITY.md 1d62b0d68b Add a security policy doc. 2 سال پیش
go.mod 1869cd5f35 Revert "Revert "Require Go >= 1.16."" 2 سال پیش
go.sum c99d6e1c95 Upgrade dependencies. 2 سال پیش

README.md

Elvish: Expressive Programming Language + Versatile Interactive Shell

CI status FreeBSD test status gccgo test status Test Coverage Go Reference Packaging status 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 thanks to Matrix): Gitter Telegram Group

Building Elvish

Most users do not need to build Elvish from source. Prebuilt binaries for the latest commit are provided for Linux amd64, macOS amd64, Windows amd64 and many other platforms.

To build Elvish from source, you need

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

    NOTE: Windows 10 support is experimental.

  • Go >= 1.16.

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 (or $GOPATH/bin if you have set $GOPATH). You might want to add the directory to your PATH.

To install it elsewhere, override ELVISH_MAKE_BIN in the make command:

make get ELVISH_MAKE_BIN=./elvish # Install to the repo root
make get ELVISH_MAKE_BIN=/usr/local/bin/elvish # Install to /usr/local/bin

Experimental plugin support

Elvish has experimental support for building and importing plugins, modules written in Go.

However, since plugin support relies on dynamic linking, it is not enabled in the official prebuilt binaries. You need to build Elvish from source, with ELVISH_PLUGIN_SUPPORT=1:

make get ELVISH_PLUGIN_SUPPORT=1

To build a plugin, see this example.

Packaging Elvish

See PACKAGING.md for notes for packagers.

Contributing to Elvish

See CONTRIBUTING.md for notes for contributors.