テンプレートを書いたプログラムフォルダを任意の数作ります。
設定ファイルを持っているため、他ユーザにおすすめのテンプレートを共有したり、PCを変えた際にそのままテンプレートを移行できるメリットがあります。
atcoder, codefoces, バーチャルコンテストなど競技プログラミングで使用することを目的としています。
以下のコマンドでインストールできます。 インストールにはcargoが必要になります。
cargo install --git https://github.com/Namacha411/kyoprofolder
powershell
kf abc226 Python @(1..8)
bash
kf abc226 Python {a..h}
コマンドを実行すると実行したディレクトリ下で以下のようなフォルダを生成します。
それぞれのプログラムファイルの中身は設定ファイルで設定した
template
の値です。
powershell
abc226
├── 1.py
├── 2.py
├── 3.py
├── 4.py
├── 5.py
├── 6.py
├── 7.py
└── 8.py
bash
abc226
├── a.py
├── b.py
├── c.py
├── d.py
├── e.py
├── f.py
├── g.py
└── h.py
USAGE:
kf <folder-name> <lang> [srcs]...
FLAGS:
-h, --help Prints help information
-V, --version Prints version information
ARGS:
<folder-name> Folder name
<lang> Programing language
<srcs>... File names
このコマンドを実行したディレクトリ下にfolder-nameに指定した名前のフォルダを作成し、 そのフォルダ内にlangで指定した言語のテンプレートを設定ファイルから読み込みファイルを作成します。
設定ファイルの保存場所はdirs-rsによって決めています。
それぞれのOSでの設定ファイルの位置は以下のようになっています。
OS | path |
---|---|
linux | /home/alice/.config/kyopro_folder.toml |
windows | C:\Users\Alice\AppData\Roaming\kyopro_folder.toml |
mac | /Users/Alice/Library/Application Support/kyopro_folder.toml |
また、初期設定では内容は以下のようになっています。
[[languages]]
language = "Python"
extention = "py"
template = """
def main():
pass
if __name__ == "__main__":
main()
"""
このテーブルを書き替えることによって複数の言語のテンプレートを作ることができます。
また、language
をcpp-ac
、cpp-cf
のように変えることによって1種類の言語でもatcoder用、codefoces用と複数作ることができます。
[[languages]]
language = ""
extention = ""
template = """
"""