No project description provided
Project description
statements-manager
English description is currently unavailable because this project is still beta-version. Sorry for inconvenience.
競技プログラミングの作問時に使用する、問題文管理を便利にするツール (仮)
Getting Started
!! 実装途中なので、操作・設定方法は今後変更される可能性があります !!
Quickstart (とにかく動作させたい人向け)
# 初回のみ
pip install statements-manager
git clone https://github.com/tsutaj/statements-manager.git
# on 'statements-manager' directory
# 実行後に output ディレクトリの中身を確認すること
ss-manager run -p config/local_sample.toml
1. 所有している Google アカウントについて、Google Docs API を使用可能にする (Google Docs にある問題文を変換する方のみ)
- Google Docs - Quickstart の "Step 1: Turn on the Google Docs API" 内にある "Enable the Google Docs API" を押して、API を使える状態にします
- project name は何でもいいと思います
- 扱いたい Docs ファイルが閲覧できる権限を持っているアカウントで作成しなければならないはずなので注意してください
- うまくいけば "DOWNLOAD CLIENT CONFIGURATION" を押すようなダイアログに行くので、
credentials.json
を任意の場所にダウンロードします (このファイルはプロジェクトファイルのdocs.credentials_src
に、絶対パスまたはスクリプト実行元からの相対パスで設定する必要があります)- 一度認可に成功すると、
token.pickle
というファイルが生成されます。これをプロジェクトファイルに指定することで、毎回認可することなく高速に実行できます。
- 一度認可に成功すると、
2. statements-manager をダウンロードする
pip install statements-manager
で、statements-manager
をダウンロードできます。(環境を汚されたくない人は venv
とかの仮想環境を適宜使ってください)
3. プロジェクトファイルを作る
作問プロジェクトファイルを作ります (開発者は、1 ファイルで 1 問題セットを扱い、各問題ファイルは「全てローカル」および「全て Google Docs」のいずれかで管理されていることを仮定しているので、それを念頭に置いてください)
プロジェクトファイルの雛形は以下を実行することで生成されます。
ss-manager create -p [path_to_project.toml]
あとは、問題セットの都合に合わせてプロジェクトファイルを編集してください。プロジェクトファイルの書き方についてはそのうちリファレンスを書きます (TODO)。なお、Google Docs ファイルに対するサンプル や ローカルファイルに対するサンプル が存在するので、これを参考にしながら書くとだいたいのことはできるはずです・・・
4. 各ファイルを HTML 化する
以下のコマンドで、プロジェクトファイルで定義された各問題を HTML 化できます。出力された HTML は output
ディレクトリ内に格納されます。
- HTML 化される対象のプロジェクト名と同名のディレクトリが
output
直下に存在する場合は、上書き防止のため通常は実行できません。その場合はディレクトリを適宜削除してください (オプションをつけて強制的に実行することもできます)
ss-manager run -p [path_to_project.toml]
Future Development
- 構想: https://github.com/tsutaj/googledocs2md/issues/1
- TODO: https://github.com/tsutaj/statements-manager/issues/3
Links
- library-checker-problems
- 当スクリプトでできる機能については、このリポジトリの影響を強く受けています。いまのところ「ここでできることを自由度を高めつつ一般化したい」and「作問時に便利な Google Docs と連携させたい」というモチベーションがあります。
- Rime
- 作問するならまずこれを使うべきでしょう。これのプラグインとして開発しようか一瞬迷いましたが、Rime v3 でプラグインが廃止される (かもしれない) らしいので、独立に作ることにしちゃいました。
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Hashes for statements_manager-1.0.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 049dc5c0fa1472b4a155b641827bf802ee972220cc4f3dd8d7597250e44c9cec |
|
MD5 | 545f9feee7dcf5367146f941524c2d3e |
|
BLAKE2b-256 | fb235bef549c38bff9af5d95115e93eb97e61afe674f887aba940661e6ca81d7 |