1 unstable release
Uses old Rust 2015
| 0.0.2 | Apr 2, 2017 |
|---|
#1507 in Development tools
35KB
927 lines
wan ∪・ω・∪
Note: This project is under development. Some breaking changes will be occured.
Overview
wan is a command-line client of Wandbox, written in Rust.
It provides a way to interact with Wandbox from commandline.
Installation
Rust toolchain is required for installation. If you don't have installed Rust toolchain yet, visit official page of rustup to download installer.
$ cargo install --git https://github.com/ubnt-intrepid/wan.git
Commands
wan compile <filename> [<filenames>...]
Post a code to Wandbox, and retrieve compilation/execution results.
Arguments
<filename><filenames>...
Options
-
--compiler=<compiler>- Compiler name
By default, the compiler name is automatically detect by extension of<filename>. -
--options=<options>- Prepared options for used compiler
If you want to use multiple options, join them by a comma. -
--compiler-options=<options>- Additional options for compiler
Arguments are joined by space(s). -
--runtime-options=<options>- Arguments to pass (compiled) executable
Arguments are joined by space(s). -
--stdin=[stdin str]- Standard input -
--permlink- Generate permlink -
--browse- Open permlink URL -
--verbose- Display verbose output
Example
// hello.cpp
#include <iostream>
#include <vector>
int main(int argc, char* argv[]) {
std::cout << "Hello, wandbox ^ω^" << std::endl;
std::cout << "Runtime arguments:" << std::endl;
int i = 0;
for (auto&& arg: std::vector<char*>(argv, argv+argc)) {
std::cout << i++ << ": " << arg << std::endl;
}
return 0;
}
$ wan compile hoge.cpp --compiler=clang-head --runtime-options="a b c"
wan list
Get compiler information from Wandbox and list to standard output.
Arguments
- none
Options
-
--name-only- Display only compiler name -
--name <name>- Filter by compiler name (with regex format) -
--lang <lang>- Filter by language (with regex format)
Example
$ wan list
wan permlink <link>
Get a result specified a permlink from Wandbox
Arguments
<link>- Permlink
Options
- none
Example
$ wan permlink xxxxxxxx
Configuration
Configuration file are located at ~/.config/wan/config.json (or ~/AppData/Roaming/wan/config.json on Windows).
For example, if you want to use local Wandbox service:
{
"url": "http://127.0.0.1:3500"
}
Related Projects
Wandbox
Editor Plugin
- rhysd/wandbox-vim - for Vimmers
- kosh04/emacs-wandbox - for Emacs users
- wraith13/wandbox-vscode - for VSCode users
Command Line Client
- mattn/wandbox-run - Run wandbox as shebang (my inspiration source for developing this project)
- osyo-manga/gem-wandbox - written in Ruby
- rbtnn/go-wandbox - written in Golang
API
- srz-zumix/wandbox-api - Python
- Planeshifter/node-wandbox-api - Node.js
Dependencies
~20MB
~409K SLoC