]> git.immae.eu Git - perso/Immae/Projets/Python/MusicSampler.git/blobdiff - helpers/__init__.py
Add config file option to the command line
[perso/Immae/Projets/Python/MusicSampler.git] / helpers / __init__.py
index 70667fd21d01a1a11578030feef544c1a0be7e2e..2131c2a41a31bc8c628e60068e9f45ea298d44f4 100644 (file)
@@ -2,6 +2,13 @@
 import sys
 import os
 
+class Config:
+    def __init__(self, **kwargs):
+        for arg in kwargs:
+            setattr(self, arg, kwargs[arg])
+
+config = Config(yml_file="config.yml")
+
 def path():
     if getattr(sys, 'frozen', False):
         return sys._MEIPASS + "/"
@@ -9,3 +16,30 @@ def path():
         path = os.path.dirname(os.path.realpath(__file__))
         return path + "/../"
 
+def parse_args():
+    for arg in sys.argv:
+        if arg[0:2] == "-c":
+            sys.argv.remove(arg)
+            config.yml_file = arg[2:]
+
+        if arg == "-v":
+            sys.argv.remove(arg)
+
+            if getattr(sys, 'frozen', False):
+                f = open(path() + ".pyinstaller_commit", "r")
+                print(f.read(), end="")
+                f.close()
+            else:
+                print("option '-v' can only be used in bundled package")
+            sys.exit()
+
+def yml_file():
+    return config.yml_file
+
+def duration_to_min_sec(duration):
+    minutes = int(duration / 60)
+    seconds = int(duration) % 60
+    if minutes < 100:
+        return "{:2}:{:0>2}".format(minutes, seconds)
+    else:
+        return "{}:{:0>2}".format(minutes, seconds)