Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/travelist/aoj-cli
A command-line tool for Aizu Online Judge (AOJ)
https://github.com/travelist/aoj-cli
aoj cli tool
Last synced: about 14 hours ago
JSON representation
A command-line tool for Aizu Online Judge (AOJ)
- Host: GitHub
- URL: https://github.com/travelist/aoj-cli
- Owner: travelist
- License: mit
- Created: 2020-03-13T22:28:09.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2020-05-26T07:20:02.000Z (over 4 years ago)
- Last Synced: 2024-06-20T10:22:48.955Z (7 months ago)
- Topics: aoj, cli, tool
- Language: Go
- Size: 6.33 MB
- Stars: 8
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# AOJ CLI [![CircleCI](https://circleci.com/gh/travelist/aoj-cli.svg?style=svg)](https://circleci.com/gh/travelist/aoj-cli)
[
日本語(Japanese)
](https://github.com/travelist/aoj-cli/#%E6%97%A5%E6%9C%AC%E8%AA%9Ejapanese)A command-line tool for [Aizu Online Judge (AOJ)](https://onlinejudge.u-aizu.ac.jp/)
This is a minimal CLI tool for just doing 3 things:
- Create a project directory with a boilerplate code and test cases
- Test your solution with the test cases
- Submit the solution to AOJ## Installation
```shell
brew tap travelist/homebrew-aoj-cli
brew install aoj
```## Usage
Initialize configuration (Required only once)
```shell
aoj init
```Generate a boilerplate code and test cases
```shell
aoj gen [PROBLEM-ID]
```Test the solution
```shell
# cd ./[PROBLEM-ID]
aoj test
```Submit a source code
```shell
aoj submit
```## Configuration
Default config file path: `~/.aoj-cli/config.toml`
Default template file path: `~/.aoj-cli/template.txt````toml
[gen]
template_file = "$HOME/.aoj-cli/template.txt"
destination_file_name = "main.cpp"[test]
before_all="g++ main.cpp -o a.out"
before_each=""
command="a.out"
after_each=""
after_all=""[submit]
language = "C++"
source_file_name = "main.cpp"
```| parameter| description | |
|----------|-------------|--|
| gen.template_file | path to a template file | |
| gen.destination_file_name | file name of a generated code | |
| test.before_all | command to be executed once before all tests | |
| test.before_each | command to be executed before each test | |
| test.test_commands | command to execute a solution | |
| test.after_each | command to be executed after each test | |
| test.after_all | command to be executed once after all tests | |
| submit.language | programming language | ex: `JAVA`, `C++` |
| submit.source_file_name | source file to be submitted | |## TODO
- [ ] `TLE` Check
---
# 日本語(Japanese)
AOJ 用のコマンドラインツールです。主に以下のことができます:
- テストサンプルのダウンロードと、ディレクトリの作成
- プログラムのテスト
- プログラムの提出## インストール
```shell
brew tap travelist/homebrew-aoj-cli
brew install aoj
```## 利用方法
AOJ CLI の設定 (初回のみ実行)
```shell
aoj init
```テストサンプルのダウンロードとディレクトリの作成
```shell
aoj gen [PROBLEM-ID]
```ソースコードのテスト
```shell
# cd ./[PROBLEM-ID]
aoj test
```ソースコードの提出
```shell
aoj submit
```## Configuration
デフォルトの設定ファイル: `~/.aoj-cli/config.toml`
デフォルトのテンプレートファイル: `~/.aoj-cli/template.txt````toml
[gen]
template_file = "$HOME/.aoj-cli/template.txt"
destination_file_name = "main.cpp"[test]
before_all="g++ main.cpp -o a.out"
before_each=""
command="a.out"
after_each=""
after_all=""[submit]
language = "C++"
source_file_name = "main.cpp"
```| parameter| description | |
|----------|-------------|--|
| gen.template_file | テンプレートファイルへのパス | |
| gen.destination_file_name | 生成するコードのファイル名 | |
| test.before_all | テスト全体の前に実行するコマンド | |
| test.before_each | 各テスト前に実行するコマンド | |
| test.test_commands | テストで実行するコマンド | |
| test.after_each | 各テスト後に実行するコマンド | |
| test.after_all | すべてのテスト後に実行するコマンド | |
| submit.language | 提出するプログラムの言語 | ex: `JAVA`, `C++` |
| submit.source_file_name | 提出時するファイル名 | |## TODO
- [ ] テスト時の `TLE` チェック