Skip to content

ubnt-intrepid/wan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

64 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

wan ∪・ω・∪

Build Status Build status License: MIT

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

Command Line Client

API