Oh thanks for that ! At least there seem to be some dependencies that might need more changes to when and if they are required. Kind of surprised to see tkinter and Qt both. I would hope a CLI only version could be standard Library only.
At least this stack trace confirms some things and gives a start of what to expect. I will attempt to refactor it for myself and see if it can be tidied. > > On Nov 21, 2021, at 12:45, zhaohe wang <[email protected]> wrote: > > Perhaps it can not run. Below is output when I run it in Ubuntu2004 server. > > python launchLeo.py --gui console > > *** > > ubuntu@VM-0-4-ubuntu:~/leo-editor$ python launchLeo.py --gui console > > Can not load pyQt5 or pyQt6 > > setting leoID from os.getenv('USER'): 'ubuntu' > cursesGui2.py: Tk module required for clipboard handling. > Traceback (most recent call last): > > File "/home/ubuntu/leo-editor/leo/core/leoApp.py", line 920, in > createCursesGui > from leo.plugins import cursesGui2 > > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 49, in > <module> > from tkinter import Tk > > ModuleNotFoundError: No module named 'tkinter' > > can not create curses gui. > > *** > > If install tkinter by > > sudo apt install python3-tk > python launchLeo.py --gui console > > *** > > ubuntu@VM-0-4-ubuntu:~/leo-editor$ python launchLeo.py --gui console > > Can not load pyQt5 or pyQt6 > > setting leoID from os.getenv('USER'): 'ubuntu' > Leo 6.6b1, master branch, build 95e7dbc7c4 > 2021-11-11 06:35:14 -0600 > > Uncaught exception in Leo... > Traceback (most recent call last): > File "launchLeo.py", line 8, in <module> > leo.core.runLeo.run() > File "/home/ubuntu/leo-editor/leo/core/runLeo.py", line 90, in run > g.app.loadManager.load(fileName, pymacs) > File "/home/ubuntu/leo-editor/leo/core/leoApp.py", line 2295, in load > g.app.gui.runMainLoop() > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 1552, in > runMainLoop > self.curses_app.run() > File "/home/ubuntu/leo-editor/leo/external/npyscreen/apNPSApplication.py", > line 44, in run > return npyssafewrapper.wrapper(self.__remove_argument_call_main) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/npyssafewrapper.py", > line 47, in wrapper > wrapper_no_fork(call_function) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/npyssafewrapper.py", > line 106, in wrapper_no_fork > return_code = call_function(_SCREEN) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/apNPSApplication.py", > line 37, in __remove_argument_call_main > return self.main() > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 2734, in main > g.app.gui.run() > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 1566, in run > self.top_form = self.createCursesTop() > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 1294, in > createCursesTop > self.createCursesStatusLine(c, form) > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 1425, in > createCursesStatusLine > box = form.add(StatusLineBox, name='Status Line', max_height=3) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/fmForm.py", line 445, > in add_widget > _w = widgetClass(self, > File "/home/ubuntu/leo-editor/leo/external/npyscreen/wgboxwidget.py", line > 118, in __init__ > self.make_contained_widget() > File "/home/ubuntu/leo-editor/leo/external/npyscreen/wgboxwidget.py", line > 147, in make_contained_widget > self._contained_widget( > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 3244, in > __init__ > super().__init__(*args, **kwargs) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/wgtextbox.py", line > 34, in __init__ > super(TextfieldBase, self).__init__(screen, **keywords) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/wgwidget.py", line > 315, in __init__ > self.set_size() > File "/home/ubuntu/leo-editor/leo/external/npyscreen/wgwidget.py", line > 763, in set_size > raise NotEnoughSpaceForWidget("Not enough space for requested size") > leo.external.npyscreen.wgwidget.NotEnoughSpaceForWidget: Not enough space for > requested size > > *** > > If install pyqt5 > > *** > > ubuntu@VM-0-4-ubuntu:~/leo-editor$ python launchLeo.py --gui console > > setting leoID from os.getenv('USER'): 'ubuntu' > Leo 6.6b1, master branch, build 95e7dbc7c4 > 2021-11-11 06:35:14 -0600 > > Uncaught exception in Leo... > Traceback (most recent call last): > File "launchLeo.py", line 8, in <module> > leo.core.runLeo.run() > File "/home/ubuntu/leo-editor/leo/core/runLeo.py", line 90, in run > g.app.loadManager.load(fileName, pymacs) > File "/home/ubuntu/leo-editor/leo/core/leoApp.py", line 2295, in load > g.app.gui.runMainLoop() > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 1552, in > runMainLoop > self.curses_app.run() > File "/home/ubuntu/leo-editor/leo/external/npyscreen/apNPSApplication.py", > line 44, in run > return npyssafewrapper.wrapper(self.__remove_argument_call_main) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/npyssafewrapper.py", > line 47, in wrapper > wrapper_no_fork(call_function) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/npyssafewrapper.py", > line 106, in wrapper_no_fork > return_code = call_function(_SCREEN) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/apNPSApplication.py", > line 37, in __remove_argument_call_main > return self.main() > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 2734, in main > g.app.gui.run() > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 1566, in run > self.top_form = self.createCursesTop() > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 1294, in > createCursesTop > self.createCursesStatusLine(c, form) > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 1425, in > createCursesStatusLine > box = form.add(StatusLineBox, name='Status Line', max_height=3) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/fmForm.py", line 445, > in add_widget > _w = widgetClass(self, > File "/home/ubuntu/leo-editor/leo/external/npyscreen/wgboxwidget.py", line > 118, in __init__ > self.make_contained_widget() > File "/home/ubuntu/leo-editor/leo/external/npyscreen/wgboxwidget.py", line > 147, in make_contained_widget > self._contained_widget( > File "/home/ubuntu/leo-editor/leo/plugins/cursesGui2.py", line 3244, in > __init__ > super().__init__(*args, **kwargs) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/wgtextbox.py", line > 34, in __init__ > super(TextfieldBase, self).__init__(screen, **keywords) > File "/home/ubuntu/leo-editor/leo/external/npyscreen/wgwidget.py", line > 315, in __init__ > self.set_size() > File "/home/ubuntu/leo-editor/leo/external/npyscreen/wgwidget.py", line > 763, in set_size > raise NotEnoughSpaceForWidget("Not enough space for requested size") > leo.external.npyscreen.wgwidget.NotEnoughSpaceForWidget: Not enough space for > requested size > > > 在2021年11月20日星期六 UTC+8 下午9:12:13<[email protected]> 写道: >> >> >>> >>>> On Nov 20, 2021, at 19:08, Edward K. Ream <[email protected]> wrote: >>>> >>> >>>>> On Sat, Nov 20, 2021 at 1:44 AM じょいすじょん <[email protected]> wrote: >>>>> Is it possible to run without Qt dependencies at all, command line only? >>>> >>>> Yes. Start Leo with `leo --gui console`. Leo's console gui uses >>>> npyscreen. >>>> >>>> Edward >>> -- >>> >> Oh wow thanks. Is it possible to install without Qt ? >> That would be a convenient thing indeed. > > -- > You received this message because you are subscribed to a topic in the Google > Groups "leo-editor" group. > To unsubscribe from this topic, visit > https://groups.google.com/d/topic/leo-editor/X7Yp2it6hZQ/unsubscribe. > To unsubscribe from this group and all its topics, send an email to > [email protected]. > To view this discussion on the web visit > https://groups.google.com/d/msgid/leo-editor/dc802c42-f97f-45ea-b242-e918c6e88796n%40googlegroups.com. -- You received this message because you are subscribed to the Google Groups "leo-editor" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/leo-editor/95716267-4203-4244-BAC4-E10B8E806FBB%40gmail.com.
