atcoder-userscript-libs

AtCoderのページ上で動作するスクリプト用のライブラリです。

Per 07-07-2019. Zie de nieuwste versie.

Dit script moet niet direct worden geïnstalleerd - het is een bibliotheek voor andere scripts om op te nemen met de meta-richtlijn // @require https://update.greasyfork.org/scripts/386712/715481/atcoder-userscript-libs.js

Voor het installeren van scripts heb je een extensie nodig, zoals Tampermonkey, Greasemonkey of Violentmonkey.

Voor het installeren van scripts heb je een extensie nodig, zoals Tampermonkey of Violentmonkey.

Voor het installeren van scripts heb je een extensie nodig, zoals Tampermonkey of Violentmonkey.

Voor het installeren van scripts heb je een extensie nodig, zoals Tampermonkey of Userscripts.

Voor het installeren van scripts heb je een extensie nodig, zoals {tampermonkey_link:Tampermonkey}.

Voor het installeren van scripts heb je een gebruikersscriptbeheerder nodig.

(Ik heb al een user script manager, laat me het downloaden!)

Voor het installeren van gebruikersstijlen heb je een extensie nodig, zoals {stylus_link:Stylus}.

Voor het installeren van gebruikersstijlen heb je een extensie nodig, zoals {stylus_link:Stylus}.

Voor het installeren van gebruikersstijlen heb je een extensie nodig, zoals {stylus_link:Stylus}.

Voor het installeren van gebruikersstijlen heb je een gebruikersstijlbeheerder nodig.

Voor het installeren van gebruikersstijlen heb je een gebruikersstijlbeheerder nodig.

Voor het installeren van gebruikersstijlen heb je een gebruikersstijlbeheerder nodig.

(Ik heb al een beheerder - laat me doorgaan met de installatie!)

Maker
keymoon
Versie
0.0.1.20190705171646
Gemaakt op
23-06-2019
Bijgewerkt op
07-07-2019
Grootte
24 KB
Licentie
N.v.t.

概要

AtCoder上で動くUserScriptを補助するライブラリです。<!--後で書く:これには外部サイトと通信するコードを含んでいます。-->

ソースについて

このライブラリは複数ファイルを1つにまとめたものです。ソースの詳細はGitHubを参照してください。一行目以外同一のものをビルド可能なソースコードを公開しています。(一行目はグローバルへエクスポートするために改変を行っています。)

使い方

まず、UserScriptのHeaderに以下のような行を追加してください。

// @require https://greasyfork.org/scripts/386712-atcoder-userscript-libs/code/atcoder-userscript-libs.js?version=715082

素のJavaScriptで開発する場合

ツールなどを用いずにこのライブラリを使用する場合は、グローバルに存在しているusLibsオブジェクトの中に格納されているライブラリ内にあるオブジェクトやクラスを用いることになります。 例えば、以下のようなコードを実行するとalertでdiverta2019-2のコンテスト情報を表示します。

var contestInformation = await usLibs.contestInformation.fetchContestInformation("diverta2019-2");
alert(JSON.stringify(contestInformation));

モジュールバンドラを用いる場合

WebPack等のモジュールバンドラを用いる場合は、公開しているパッケージをプロジェクトにインストールすることをお勧めします。 インストールした後、webpack.config.jsでexternalの記述を以下のようにしてください。:

externals: {
    "atcoder-userscript-libs": "usLibs",
    "atcoder-userscript-libs/src/libs/data": "usLibs.data",
    "atcoder-userscript-libs/src/libs/rating": "usLibs.rating",
    "atcoder-userscript-libs/src/libs/global": "usLibs.global",
    "atcoder-userscript-libs/src/libs/contestInformation": "usLibs.contestInformation"
}

そうすることで依存関係の中にuserscript-libsを取り込め、

import { fetchContestInformation } from "atcoder-userscript-libs/src/libs/contestInformation";
var contestInformation = await fetchContestInformation("diverta2019-2");
alert(JSON.stringify(contestInformation));

と書けるようになります。