COIAS-program / COIAS_program_github

The repository for COIAS program collection
7 stars 2 forks source link

preprocessでパラメータファイルの生成をデフォルトファイルのコピーでやるようにする #2

Open COIAS-program opened 1 year ago

COIAS-program commented 1 year ago

make_default_parameter_files.py

生成するファイルの中身を1行ずつPythonで書き込んでいるが、 ほとんどは決まった内容のテキストファイルなので、どこかにデフォルトのファイルを持っておいてそれをコピーする処理と置き換えればコード自体は簡潔になるのではないかと思いました make_default_sex(DETECT_MINAREA) では入力に応じてファイル内容が変化しますが、この場合もテンプレートエンジンを使えば内容自体はデフォルトのテキストファイルに書いておくことができそうですhttps://vorfee.hatenablog.jp/entry/2021/12/08/235014

preprocess部分については正直かなり悩んでいたのでうまくやる方法が欲しいのですが。。。 デフォルトのファイルを用意するとして、それをいつどこに置くかが問題になっていました。 リポジトリにデフォルトのファイルを置いておくとして、特にオリジナルCOIASではそのリポジトリをcloneする場所はユーザー任意にしているので、そのファイルの置き場所を一意に指定する方法がないと諦めていたのでコードに内容をベタ書きしていました。

ただよく考えたら、sys.argv[0]やfileを用いれば実行中のスクリプトの絶対パスがわかるので、リポジトリ中でmake_default_parameter_files.pyと同じディレクトリにデフォルトファイルたちをまとめておいたディレクトリを設置しておけば、それらファイルまでのパスが分かるので、デフォルトの設置は可能ですね。

この話はオリジナルCOIASのリポジトリのissueに追加しておくので、時間のあるときに誰かがやりましょう。