Merge pull request #38 from shahar603/master

Added support for Windows (hopefully)
This commit is contained in:
Grant Sanderson 2017-08-04 17:46:05 -07:00 committed by GitHub
commit 14a01bb2d5

View file

@ -7,6 +7,7 @@ import itertools as it
import inspect
import traceback
import imp
import os
from helpers import *
from scene import Scene
@ -151,14 +152,28 @@ def get_scene_classes(scene_names_to_classes, config):
return scene_names_to_classes.values()
return prompt_user_for_choice(scene_names_to_classes)
def get_module(file_name):
def get_module_windows(file_name):
module_name = file_name.replace(".py", "")
last_module = imp.load_module(".", *imp.find_module("."))
last_module = imp.load_module("__init__", *imp.find_module("__init__", ['.']))
for part in module_name.split(os.sep):
load_args = imp.find_module(part, last_module.__path__)
load_args = imp.find_module(part, [os.path.dirname(last_module.__file__)])
last_module = imp.load_module(part, *load_args)
return last_module
def get_module_posix(file_name):
module_name = file_name.replace(".py", "")
last_module = imp.load_module(".", *imp.find_module("."))
for part in module_name.split(os.sep):
load_args = imp.find_module(part, last_module.__path__)
last_module = imp.load_module(part, *load_args)
return last_module
def get_module(file_name):
if os.name == 'nt':
return get_module_windows(file_name)
return get_module_posix(file_name)
def main():
config = get_configuration(sys.argv)
module = get_module(config["file"])