Powerful scripting language & versatile interactive shell add sylixos support.
Go to file
Qi Xiao 3f73331ba0 Adjust the order of TTY restoration on Windows.
Normal commands no longer produce unsupported escape sequences. This
addresses #798.
2019-03-14 21:14:43 +00:00
_testwin Add _testwin, a small program to manually test console input on Windows. 2019-03-10 15:56:40 +00:00
_tools _tools/elvdoc: Support -R, like grep. 2018-11-19 22:18:41 +00:00
_website Fix a few typos and misspellings (#796) 2019-02-25 10:04:57 +00:00
buildinfo golint fixes. 2018-10-13 17:52:54 +01:00
daemon daemon: Unexport Service. 2018-10-13 18:51:47 +01:00
diag Implement Ranger for *diag.SourceRange and *eval.CompilationError. 2018-11-20 23:22:51 +00:00
edit Adjust the order of TTY restoration on Windows. 2019-03-14 21:14:43 +00:00
eval eval: Update boilerplate.py 2019-03-10 15:24:04 +00:00
getopt Cosmetics. 2018-01-01 15:12:34 +00:00
glob util: Change the API of WithTempDir and InTempDir. 2018-10-13 14:04:13 +01:00
newedit newedit/listing: Support AutoAccept. 2019-03-13 08:46:43 +00:00
parse parse: Name chain shift: ErrorEntry -> Error -> MultiError. 2018-11-19 23:05:05 +00:00
program eval/vars: Cleanups. 2018-11-18 15:23:31 +01:00
runtime runtime: Kill outdated daemon with SIGINT, not SIGKILL. 2018-03-24 15:44:23 +00:00
store Support deleting command history with store:del-cmd. 2018-05-14 23:26:36 +01:00
styled styled: Add a Text.TrimWcwidth method. 2019-03-02 23:12:06 +00:00
sys sys: use unix.IoctlGetWinsize and unix.Winsize (#792) 2019-01-29 18:01:58 -08:00
tt tt: Call t.Helper. 2018-12-16 12:51:22 +00:00
util Fix test on Windows (for real). 2018-12-17 23:13:32 +00:00
vendor Update xiaq/persistent. 2018-11-18 15:59:06 +01:00
.appveyor.yml Disable coverage upload on AppVeyor. 2018-09-21 00:41:53 +01: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 .gitignore: Add /_bin/. 2018-09-24 22:20:50 +01:00
.travis.yml Bump Go versions and use '.x' to always get latest patch versions (#771) 2018-10-28 13:25:45 +00:00
.vsts.sh Attempt #4 to fix .vsts.sh. 2018-06-07 00:33:21 +01:00
CONTRIBUTING.md Move building instructions back into README.md. 2018-10-21 20:49:28 +01:00
Dockerfile Update Dockerfile. 2018-10-22 23:51:09 +01:00
Gopkg.lock Update xiaq/persistent. 2018-11-18 15:59:06 +01:00
Gopkg.toml Update dep constraints. 2018-01-05 03:52:21 +00:00
LICENSE Project rename: das -> elvish 2014-01-29 18:44:07 +08:00
logo.svg _website: Inline CSS and JS. 2018-11-06 22:52:04 +00:00
main.go New title and description. 2017-12-31 21:25:20 +00:00
Makefile Simplify coverage deployment scripts for Travis. 2018-09-14 13:48:34 +01:00
README.md Update README.md 2018-11-05 00:46:23 +00:00

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.10.

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