Python packaging
This commit is contained in:
parent
7487eb94bd
commit
85df574d3c
22 changed files with 48 additions and 10 deletions
28
VNRecode/config.py
Normal file
28
VNRecode/config.py
Normal file
|
@ -0,0 +1,28 @@
|
|||
import os.path
|
||||
from argparse import Namespace, ArgumentParser
|
||||
from dataclasses import dataclass
|
||||
from typing import Any
|
||||
import tomllib
|
||||
|
||||
|
||||
@dataclass
|
||||
class Config:
|
||||
|
||||
config: dict[str, Any]
|
||||
args: Namespace
|
||||
|
||||
@classmethod
|
||||
def setup_config(cls):
|
||||
parser = ArgumentParser(prog="ffmpeg-comp",
|
||||
description="Python utility to compress Visual Novel Resources"
|
||||
)
|
||||
parser.add_argument("source")
|
||||
parser.add_argument("-c", "--config", default="ffmpeg-comp.toml")
|
||||
args = parser.parse_args()
|
||||
if os.path.isfile(args.config):
|
||||
with open(args.config, "rb") as cfile:
|
||||
config = tomllib.load(cfile)
|
||||
else:
|
||||
print("Failed to find config. Check `ffmpeg-comp -h` to more info")
|
||||
exit(255)
|
||||
return cls(config=config, args=args)
|
Loading…
Add table
Add a link
Reference in a new issue