diff --git a/pycgtool.py b/pycgtool.py index 6082e27fe8b82066cc79e66d1b12a7f5467a3b47..3a95b860565dc8c1725ef00e43fc3c4c50e20154 100755 --- a/pycgtool.py +++ b/pycgtool.py @@ -3,9 +3,12 @@ import argparse import sys -from pycgtool.pycgtool import main, map_only -from pycgtool.interface import Options -from pycgtool.functionalforms import FunctionalForms +try: + from pycgtool.pycgtool import main, map_only + from pycgtool.interface import Options + from pycgtool.functionalforms import FunctionalForms +except SyntaxError: + raise RuntimeError("PyCGTOOL requires Python 3.2 or greater") if __name__ == "__main__": parser = argparse.ArgumentParser(description="Perform coarse-grain mapping of atomistic trajectory") diff --git a/pycgtool/interface.py b/pycgtool/interface.py index 7ab9ae332a2c10668d15b0db979e5aeee882a12f..8ca93b8de99e53a2d1cb58e0f6fe97a0caefef15 100644 --- a/pycgtool/interface.py +++ b/pycgtool/interface.py @@ -146,7 +146,10 @@ class Options: for i, (key, value) in enumerate(self): window_keys.addstr(i, 0, key) - text_edit_wins.append(window_vals.derwin(1, 30, i, 0)) + try: + text_edit_wins.append(window_vals.derwin(1, 30, i, 0)) + except curses.error as e: + raise RuntimeError("Your terminal is too small to fit the interface, please expand it") from e text_edit_wins[-1].addstr(0, 0, str(value)) text_inputs.append(curses.textpad.Textbox(text_edit_wins[-1]))