Skip to content
Friendly Interactive Shell and Expressive Programming Language
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
_tests cli: Rename constructing functions to start with New. May 2, 2019
_tools _tools/elvdoc: Support -R, like grep. Nov 19, 2018
_website _website: Fix Elvish codeblocks. Apr 24, 2019
buildinfo golint fixes. Oct 13, 2018
cli cli: StringsPairsFromSlice -> NewSliceStringPairs. May 2, 2019
daemon
diag Implement Ranger for *diag.SourceRange and *eval.CompilationError. Nov 20, 2018
edit cli/histutil: Make Fuser implement Store. May 1, 2019
eval eval/vals: ScanToGo accepts float64 as int. Apr 27, 2019
getopt Cosmetics. Jan 1, 2018
glob util: Change the API of WithTempDir and InTempDir. Oct 13, 2018
newedit cli: Integrate newedit/prompt. May 2, 2019
parse parse: Name chain shift: ErrorEntry -> Error -> MultiError. Nov 19, 2018
program
runtime runtime: Kill outdated daemon with SIGINT, not SIGKILL. Mar 24, 2018
store store: Expose the test setup function, and clean up properly. Mar 18, 2019
styled styled: Unstyled -> Plain; add a MakeText helper. Apr 25, 2019
sys sys: use unix.IoctlGetWinsize and unix.Winsize (#792) Jan 30, 2019
tt Introduce $nil as a valid value. Apr 7, 2019
util Fix tests that leave behind test directories on Windows. Mar 18, 2019
vendor Updating dependencies (#817) Apr 17, 2019
.appveyor.yml Disable coverage upload on AppVeyor. Sep 20, 2018
.dockerignore Update .dockerignore. Oct 16, 2018
.gitattributes Use .gitattributes to filter go sources through goimports Feb 10, 2014
.gitignore .gitignore: Add /_bin/. Sep 24, 2018
.travis.yml Convert to Go modules Apr 6, 2019
.vsts.sh Attempt #4 to fix .vsts.sh. Jun 6, 2018
CONTRIBUTING.md Move building instructions back into README.md. Oct 21, 2018
Dockerfile Update Dockerfile. Oct 22, 2018
LICENSE Project rename: das -> elvish Jan 29, 2014
Makefile Simplify coverage deployment scripts for Travis. Sep 14, 2018
README.md README: Update Go version requirement. Apr 27, 2019
go.mod Updating dependencies (#817) Apr 17, 2019
go.sum Updating dependencies (#817) Apr 17, 2019
logo.svg _website: Inline CSS and JS. Nov 6, 2018
main.go New title and description. Dec 31, 2017

README.md

Elvish: Friendly Interactive Shell and Expressive Programming Language

Build Status on Travis Build status on AppVeyor Code Coverage on coveralls.io Go Report Card GoDoc License Twitter

Elvish is a friendly interactive shell and an expressive programming language. It runs on Linux, BSDs, macOS and Windows. Despite its pre-1.0 status, it is already suitable for most daily interactive use.

Most of the resources for Elvish can be found on the official website.

User groups (all connected thanks to matterbridge): Gitter Telegram Group #elvish on freenode

Building Elvish

To build Elvish, you need

  • Linux, {Free,Net,Open}BSD, macOS, or Windows (Windows support is experimental).

  • Go >= 1.11.

If you have not done so, first set up your environment by following How To Write Go Code.

There are two ways to build Elvish. You can build it directly with go get:

go get github.com/elves/elvish

However, binaries built in this way lacks some build-time information; for instance, elvish -version will show unknown. To add such information, use make:

cd `go env GOPATH`/src/github.com/elves/elvish
make get

In either cases, the binary is placed in $GOPATH/bin. Consider adding it to your $PATH if you want to run the Elvish binary you just built by just typing elvish.

See CONTRIBUTING.md for more notes for contributors. You can also join one of the developer groups (also connected together by matterbridge): Gitter for Developers Telegram Group for Developers #elvish-dev on freenode

You can’t perform that action at this time.