From a9179f2779dd0712cffc6285197172447dd852eb Mon Sep 17 00:00:00 2001 From: Sei Lisa Date: Fri, 6 Mar 2015 20:29:54 +0100 Subject: [PATCH] Read the data files from the same path where the script resides. --- lslopt/lslparse.py | 5 +++-- main.py | 6 ++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/lslopt/lslparse.py b/lslopt/lslparse.py index 27edaff..ac70564 100644 --- a/lslopt/lslparse.py +++ b/lslopt/lslparse.py @@ -21,6 +21,7 @@ # TODO: Add info to be able to propagate error position to the source. from lslcommon import Key, Vector, Quaternion +import lslcommon import lslfuncs import sys, re from base64 import b64encode @@ -2326,7 +2327,7 @@ list lazy_list_set(list L, integer i, list v) parse_num_re = re.compile(r'^\s*(-?(?=[0-9]|\.[0-9])[0-9]*((?:\.[0-9]*)?(?:[Ee][+-]?[0-9]+)?))\s*$') parse_str_re = re.compile(ur'^"((?:[^"\\]|\\.)*)"$') - f = open('builtins.txt', 'rb') + f = open(lslcommon.DataPath + 'builtins.txt', 'rb') try: while True: line = f.readline() @@ -2443,7 +2444,7 @@ list lazy_list_set(list L, integer i, list v) f.close() # Load the side-effect-free table as well. - f = open('seftable.txt', 'rb') + f = open(lslcommon.DataPath + 'seftable.txt', 'rb') try: while True: line = f.readline() diff --git a/main.py b/main.py index c7b245d..0174046 100755 --- a/main.py +++ b/main.py @@ -23,6 +23,8 @@ from lslopt.lslparse import parser,EParse from lslopt.lsloutput import outscript from lslopt.lsloptimizer import optimizer import sys +import os +import lslopt.lslcommon def main(): if len(sys.argv) < 2: @@ -129,6 +131,10 @@ Options (+ means active by default, - means inactive by default): 'optsigns','optfloats','constfold','dcr' )) + # If it's good to append the basename to it, it's good to append the + # auxiliary files' names to it. + lslopt.lslcommon.DataPath = __file__[:-len(os.path.basename(__file__))] + if sys.argv[1] == '-O': if len(sys.argv) < 4: sys.stderr.write('Command line: Not enough parameters\n')