github.com/xiaq/elvish@v0.12.0/README.md (about) 1 # Elvish: Friendly and Expressive Shell 2 3 [](https://elv.sh/) 4 5 Elvish is a cross-platform shell, supporting Linux, BSDs and Windows. It features an expressive programming language, with features like namespacing and anonymous functions, and a fully programmable user interface with friendly defaults. It is suitable for both interactive use and scripting. 6 7 ... which is not 100% true yet. Elvish is already suitable for most daily interactive use, but it is neither complete nor stablized. Contributions are more than welcome! 8 9 This README documents the development aspect of Elvish. Other information is to be found on the [website](https://elv.sh). 10 11 [](https://travis-ci.org/elves/elvish) 12 [](https://ci.appveyor.com/project/xiaq/elvish) 13 [](https://xiaq.visualstudio.com/elvish/_build) 14 [](https://codecov.io/gh/elves/elvish) 15 [](https://coveralls.io/github/elves/elvish) 16 [](https://goreportcard.com/report/github.com/elves/elvish) 17 [](http://godoc.org/github.com/elves/elvish) 18 [](https://github.com/elves/elvish/blob/master/LICENSE) 19 20 [](https://gitter.im/elves/elvish-public) 21 [](https://telegram.me/elvish) 22 [](https://webchat.freenode.net/?channels=elvish) 23 [](https://gitter.im/elves/elvish-dev) 24 [](https://telegram.me/elvish_dev) 25 [](https://webchat.freenode.net/?channels=elvish-dev) 26 [](https://twitter.com/RealElvishShell) 27 28 29 ## Building Elvish 30 31 To build Elvish, you need 32 33 * Linux, {Free,Net,Open}BSD, macOS, or Windows (Windows support is experimental). 34 35 * Go >= 1.9. 36 37 Once you have a suitable environment, simply build Elvish with `go get`: 38 39 ```sh 40 go get github.com/elves/elvish 41 ``` 42 43 The binary will be placed in `$GOPATH/bin`. If you haven't configured a 44 `GOPATH`, it defaults to `~/go`. Refer to [How To Write Go 45 Code](http://golang.org/doc/code.html) on how to set up workspace for Go. 46 47 48 Users of macOS can also build Elvish using [Homebrew](http://brew.sh): 49 50 ```sh 51 brew install --HEAD elvish 52 ``` 53 54 55 ## Contributing 56 57 See [CONTRIBUTING.md](CONTRIBUTING.md). 58 59 60 ## Name 61 62 In [roguelikes](https://en.wikipedia.org/wiki/Roguelike), items made by the elves have a reputation of high quality. These are usually called *elven* items, but I chose "elvish" because it ends with "sh", a long tradition of Unix shells. It also rhymes with [fish](https://fishshell.com), one of the shells that influenced the philosophy of Elvish. 63 64 The word "Elvish" should be capitalized like a proper noun. However, when referring to the `elvish` command, use it in lower case with fixed-width font. 65 66 Whoever practices the Elvish way by either contributing to it or simply using it is called an **Elf**. (You might have guessed this from the name of the GitHub organization.) The official adjective for Elvish (as in "Pythonic" for Python, "Rubyesque" for Ruby) is **Elven**.