説明なし

Lucas Stadler 049728acb4 Look for custom runners in PATH 9 年 前
..
bin 05ae4919b3 c++ 11 年 前
etc e54378152c set the cwd in the service file 11 年 前
.gitignore 44106d5cbd use codemirror for syntax highlighting 11 年 前
LICENSE bee0d232b6 add a license and a readme 11 年 前
Makefile 28503366a7 Make it easier to install linguaevalia 9 年 前
README.md 05ae4919b3 c++ 11 年 前
linguaevalia.go 049728acb4 Look for custom runners in PATH 9 年 前

README.md

Lingua evalia

A tiny web service that runs code for you. You open it, start writing code immediately and then run it. What you don't do is worry about file names, which command it was you had to use to run the code and so on.

Just write the code.

Quickstart

  • go get github.com/heyLu/lp/go/linguaevalia
  • $GOPATH/bin/linguaevalia
  • visit http://localhost:8000 and start writing code (press ctrl-enter to run the code)

Essentially just need go, but to run code in other languages, you need to have them installed as well.

Languages

(In order of adding them.)

  • go
  • python
  • ruby
  • javascript
  • haskell
  • rust
  • julia
  • pixie
  • c
  • bash
  • lua
  • c++

Adding more is relatively simple: If there is a command that runs code in a language given a file, just add the appropriate line and a corresponding mapping to languageMappings.

If there isn't, you can either write a wrapper to do that (similar to the one for rust) or you can implement the Language interface.

Additional commands

linguaevalia can also be used to run programs directly, instead of using the server:

$ linguaevalia run hello-world.rb
Hello, World!
# or alternatively:
$ cat hello-world.rb | linguaevalia run -l ruby
Hello, World!

When passing code to the run command via stdin, you must set the language to be used using the -l flag as well. If a file name is passed, the type is inferred from the extension, but you can override it with -l if you want.

Development setup

~ $ git clone git://github.com/heyLu/lp
~ $ cd lp/go/linguaevalia
~/lp/go/linguaevalia $ make               # download codemirror
~/lp/go/linguaevalia $ go run

Alternatively, replace go run with qst linguaevalia.go, to restart the server automatically if linguaevalia.go changes.

Contributions and feedback welcome!

Tell me what you do with it, when it helped you, what you're missing.

Have fun!

License

MIT