Camaleon
Camaleon is a multiplatform installable module, available for Linux, Windows and Mac OS. Quickly obtain, view and test exercises developed in C++ and Java. camaleon uses the V8 engine Google, so you need to install NodeJS.
For more information see udebug and UVA
Features
Installation
$ [sudo] npm install -g camaleon
...
$ camaleon -h
Information of an exercise
camaleon provides access basic information of an exercise. The data are provided by uhunt and camaleon.
$ camaleon desc 100
┌─────┬────────┬────────────────────┬───────┬────────┐
│ pid │ number │ title │ limit │ status │
├─────┼────────┼────────────────────┼───────┼────────┤
│ 36 │ 100 │ The 3n + 1 problem │ 3000 │ 1 │
└─────┴────────┴────────────────────┴───────┴────────┘
Submissions
Consult list of shipments made by a particular user.
$ camaleon submissions 706667
┌──────────────┬─────────────────────────┐
│ name │ user name │
├──────────────┼─────────────────────────┤
│ Julian David │ anlijudavid@hotmail.com │
└──────────────┴─────────────────────────┘
┌───────────┬─────────┬───────────┬──────┬───────┬──────────────────────────┐
│ Reference │ problem │ result │ time │ code │ date │
├───────────┼─────────┼───────────┼──────┼───────┼──────────────────────────┤
│ 17787180 │ 2253 │ Accepted │ 0 │ c++11 │ Thu Aug 04 2016 13:34:37 │
├───────────┼─────────┼───────────┼──────┼───────┼──────────────────────────┤
│ 18144493 │ 3666 │ Accepted │ 170 │ java │ Sat Oct 08 2016 11:18:18 │
└───────────┴─────────┴───────────┴──────┴───────┴──────────────────────────┘
...
Test cases
Obtain all test cases available for a given exercise:
$ camaleon cs 100
┌───┬────────┬────────┬───────┬───────────┬───────┐
│ # │ Number │ DataID │ User │ Date │ Votes │
├───┼────────┼────────┼───────┼───────────┼───────┤
│ 5 │ 3 │ 821829 │ Ryuuk │ Fri Jan … │ 3 │
└───┴────────┴────────┴───────┴───────────┴───────┘
Case 5 by Ryuuk :
2 1596 ┐
99 9999 │
1 1999 │
340 30100 │
5 6 │= Estos son los casos
7 10 │
1 98746 │
9999 9998 ┘
...
Compile code
Cpp
$ camaleon c hello.cpp
$ camaleon compile hello.cpp
Java
$ camaleon c hello.java
$ camaleon compile hello.java
Directory specific
$ camaleon c folder/hello.cpp
$ camaleon c folder/hello.java
Command help
$ camaleon help <comando>
$ camaleon help submissions
Note: If the file name contains spaces then use double quotes to specify the file name:
$ camaleon c "folder/file name.cpp"
Contributing
Camaleon is an open source project. See CONTRIBUTING for details.
LICENSE
This module is released under the [MIT License] license. @juliandavidmr