diff --git a/SpanshRouter/AutoCompleter.py b/SpanshRouter/AutoCompleter.py index feeedb8..5d24739 100755 --- a/SpanshRouter/AutoCompleter.py +++ b/SpanshRouter/AutoCompleter.py @@ -4,17 +4,18 @@ import os import requests import traceback from time import sleep -from SpanshRouter.PlaceHolder import PlaceHolder import sys try: # Python 2 from Tkinter import * - import ttk + import ttk + from .PlaceHolder import PlaceHolder except ModuleNotFoundError: # Python 3 import tkinter as tk from tkinter import * + from SpanshRouter.PlaceHolder import PlaceHolder is_py2 = sys.version[0] == '2' if is_py2: diff --git a/SpanshRouter/PlaceHolderEntry.py b/SpanshRouter/PlaceHolderEntry.py index 09284b7..471f9c2 100644 --- a/SpanshRouter/PlaceHolderEntry.py +++ b/SpanshRouter/PlaceHolderEntry.py @@ -1,12 +1,12 @@ -from SpanshRouter.PlaceHolder import PlaceHolder - try: # Python 2 from Tkinter import * + from .PlaceHolder import PlaceHolder except ModuleNotFoundError: # Python 3 import tkinter as tk from tkinter import * + from SpanshRouter.PlaceHolder import PlaceHolder class PlaceHolderEntry(Entry, PlaceHolder): def __init__(self, parent, placeholder, **kw): diff --git a/SpanshRouter/SpanshRouter.py b/SpanshRouter/SpanshRouter.py index 99345f2..94725d3 100755 --- a/SpanshRouter/SpanshRouter.py +++ b/SpanshRouter/SpanshRouter.py @@ -7,6 +7,7 @@ import webbrowser import json import re import requests +import io from time import sleep from monitor import monitor from . import AutoCompleter @@ -16,6 +17,7 @@ from .updater import SpanshUpdater try: # Python 2 from Tkinter import * + import Tkinter as tk import tkFileDialog as filedialog import tkMessageBox as confirmDialog import ttk @@ -286,6 +288,9 @@ class SpanshRouter(): self.copy_waypoint() except: print("No previously saved route.") + exc_type, exc_value, exc_traceback = sys.exc_info() + lines = traceback.format_exception(exc_type, exc_value, exc_traceback) + sys.stderr.write(''.join('!! ' + line for line in lines)) def copy_waypoint(self): if sys.platform == "linux" or sys.platform == "linux2": @@ -363,7 +368,7 @@ class SpanshRouter(): self.show_error("An error occured while reading the file.") def plot_csv(self, filename, clear_previous_route=True): - with open(filename, 'r', encoding='utf-8-sig') as csvfile: + with io.open(filename, 'r', encoding='utf-8-sig') as csvfile: route_reader = csv.DictReader(csvfile) if clear_previous_route: diff --git a/SpanshRouter/__init__.py b/SpanshRouter/__init__.py index 700bb7e..ab7b251 100644 --- a/SpanshRouter/__init__.py +++ b/SpanshRouter/__init__.py @@ -1,4 +1,14 @@ -from SpanshRouter.updater import SpanshUpdater -from SpanshRouter.AutoCompleter import AutoCompleter -from SpanshRouter.PlaceHolderEntry import PlaceHolderEntry -from SpanshRouter import SpanshRouter +import sys +import traceback +try: + # Python 2 + from .updater import SpanshUpdater + from .AutoCompleter import AutoCompleter + from .PlaceHolderEntry import PlaceHolderEntry + from SpanshRouter import SpanshRouter +except ModuleNotFoundError: + # Python 3 + from SpanshRouter.updater import SpanshUpdater + from SpanshRouter.AutoCompleter import AutoCompleter + from SpanshRouter.PlaceHolderEntry import PlaceHolderEntry + from SpanshRouter import SpanshRouter \ No newline at end of file diff --git a/load.py b/load.py index 2481a46..3d5621f 100644 --- a/load.py +++ b/load.py @@ -8,12 +8,13 @@ else: def plugin_start3(plugin_dir): global spansh_router spansh_router = SpanshRouter(plugin_dir) - #spansh_router.check_for_update() + spansh_router.check_for_update() spansh_router.open_last_route() return 'spansh_router' def plugin_start(plugin_dir): # Check for newer versions + global spansh_router spansh_router = SpanshRouter(plugin_dir) spansh_router.check_for_update() spansh_router.open_last_route()