atcoderのテストケースを通すvim pluginを作った


qiita初投稿のため、いたらないところもたくさんあると思いますがご指摘いただけると助かります。

はじめに

こんにちは、飛べない豚です。
題名の通りatcoderのテストケースをチェックするvimpluginを作りました。
https://github.com/cannot-fly-pig/vim-atcoder


↑こんな感じ

使い方

:Atcoder コンテスト名 コンテスト番号 task(aとかbとか)

(例

:Atcoder ABC 131 c

と入力してエンターすると今開いているコードを実行してACかWAかを判定してくれます。
詳しくはREADME.mdを読んでください。

仕組み

  1. curlを使ってatcoderのコンテストのページを取得
  2. 正規表現を使ってパース、入力と出力を取得
  3. 2で取得した入力を使って実行、正解かどうかを判定
  4. データの整形、出力

と、まぁやってることは単純ですね

改善点

  • 今の所c++しか実行できないので対応言語を増やす
  • 企業コンへの対応
  • 非同期処理化

最後に

いかがだったでしょうか。
vimでatcoderをしている皆さん、そしてvimpluginを作ってみようと思っている皆さんの助けになれば幸いです。
ありがとうございました。