The combination of "Easter Egg" menu, Window, and Cmds makes things 
complicated. One menu to rule them all would be a great place to start. All 
testing done with the highly recommended plugins enables. I am thinking I 
might nee to disable all plugins before diving too deeply into this too 
much further. I think it is important to get the basics working correctly 
before complicating things further with plugins.

# Highly-recommended plugins:

plugins_menu.py

contextmenu.py

mod_scripting.py

nav_qt.py

quicksearch.py

stickynotes.py

todo.py

viewrendered3.py

richtext.py


Some method of telling me where the floating body window panes belong in 
the tree would be handy. At one point I had three body editors in a 
separate window that could be treated as a group with the easter egg menu, 
but not at all from the Cmd window that the unit was born from. The 
tracebacks get pretty interesting as I start playing with the windows, 
especially after I toss in some "toggle split direction" and/or "restore 
default layout", which doesn't.

Here is what I get when I ask the Window/Arrange Pane/Restore Pane Layout, 
for example. This is with a new .leo file with only two empty nodes, using 
python2 and Qt4. 

Leo 5.4-devel, build 20160722143100, Fri, Jul 22, 2016  2:31:00 PM

Git repo info: branch = master, commit = e12bece231e1

Python 2.7.12, PyQt version 4.8.7
linux2

exception executing command


Traceback (most recent call last):

  File "/working/leo/leo-editor/leo/core/leoCommands.py", line 5348, in 
doCommand
    val = command(event)

  File "/working/leo/leo-editor/leo/plugins/free_layout.py", line 417, in 
free_layout_restore
    c.free_layout.loadLayouts('reload', {'c': c}, reloading=True)

  File "/working/leo/leo-editor/leo/plugins/free_layout.py", line 233, in 
loadLayouts
    name = c.free_layout.original_layout

AttributeError: 'FreeLayoutController' object has no attribute 'original_layout'


The same procedure with python3 and PyQt5 throws even more errors.


Leo 5.4-devel, build 20160722143100, Fri, Jul 22, 2016  2:31:00 PM

Git repo info: branch = master, commit = e12bece231e1

Python 3.5.2, PyQt version 4.8.7
linux

reading: /working/leo/leo-editor/test.leo

read outline in 0.02 seconds

hook failed: select3, <function at_rich_check at 0x7f1f4a2b4e18>, 
leo.plugins.richtext

Traceback (most recent call last):

  File "/working/leo/leo-editor/leo/core/leoPlugins.py", line 326, in 
callTagHandler
    result = handler(tag, keywords)

  File "/working/leo/leo-editor/leo/plugins/richtext.py", line 284, in 
at_rich_check
    cmd_CloseEditor(key, at_rich=True)

  File "/working/leo/leo-editor/leo/plugins/richtext.py", line 313, in 
cmd_CloseEditor
    rte = splitter.find_child(CKEEditor, '')

  File "/working/leo/leo-editor/leo/plugins/nested_splitter.py", line 668, in 
find_child
    child = window.findChild(child_class, child_name)

RuntimeError: wrapped C/C++ object of type NestedSplitterTopLevel has been 
deleted

hook failed: select3, <function at_rich_check at 0x7f1f4a2b4e18>, 
leo.plugins.richtext

Traceback (most recent call last):

  File "/working/leo/leo-editor/leo/core/leoPlugins.py", line 326, in 
callTagHandler
    result = handler(tag, keywords)

  File "/working/leo/leo-editor/leo/plugins/richtext.py", line 284, in 
at_rich_check
    cmd_CloseEditor(key, at_rich=True)

  File "/working/leo/leo-editor/leo/plugins/richtext.py", line 313, in 
cmd_CloseEditor
    rte = splitter.find_child(CKEEditor, '')

  File "/working/leo/leo-editor/leo/plugins/nested_splitter.py", line 668, in 
find_child
    child = window.findChild(child_class, child_name)

RuntimeError: wrapped C/C++ object of type NestedSplitterTopLevel has been 
deleted

hook failed: select3, <function at_rich_check at 0x7f1f4a2b4e18>, 
leo.plugins.richtext

Traceback (most recent call last):

  File "/working/leo/leo-editor/leo/core/leoPlugins.py", line 326, in 
callTagHandler
    result = handler(tag, keywords)

  File "/working/leo/leo-editor/leo/plugins/richtext.py", line 284, in 
at_rich_check
    cmd_CloseEditor(key, at_rich=True)

  File "/working/leo/leo-editor/leo/plugins/richtext.py", line 313, in 
cmd_CloseEditor
    rte = splitter.find_child(CKEEditor, '')

  File "/working/leo/leo-editor/leo/plugins/nested_splitter.py", line 668, in 
find_child
    child = window.findChild(child_class, child_name)

RuntimeError: wrapped C/C++ object of type NestedSplitterTopLevel has been 
deleted

hook failed: select3, <function at_rich_check at 0x7f1f4a2b4e18>, 
leo.plugins.richtext

Traceback (most recent call last):

  File "/working/leo/leo-editor/leo/core/leoPlugins.py", line 326, in 
callTagHandler
    result = handler(tag, keywords)

  File "/working/leo/leo-editor/leo/plugins/richtext.py", line 284, in 
at_rich_check
    cmd_CloseEditor(key, at_rich=True)

  File "/working/leo/leo-editor/leo/plugins/richtext.py", line 313, in 
cmd_CloseEditor
    rte = splitter.find_child(CKEEditor, '')

  File "/working/leo/leo-editor/leo/plugins/nested_splitter.py", line 668, in 
find_child
    child = window.findChild(child_class, child_name)

RuntimeError: wrapped C/C++ object of type NestedSplitterTopLevel has been 
deleted

hook failed: select3, <function at_rich_check at 0x7f1f4a2b4e18>, 
leo.plugins.richtext

Traceback (most recent call last):

  File "/working/leo/leo-editor/leo/core/leoPlugins.py", line 326, in 
callTagHandler
    result = handler(tag, keywords)

  File "/working/leo/leo-editor/leo/plugins/richtext.py", line 284, in 
at_rich_check
    cmd_CloseEditor(key, at_rich=True)

  File "/working/leo/leo-editor/leo/plugins/richtext.py", line 313, in 
cmd_CloseEditor
    rte = splitter.find_child(CKEEditor, '')

  File "/working/leo/leo-editor/leo/plugins/nested_splitter.py", line 668, in 
find_child
    child = window.findChild(child_class, child_name)

RuntimeError: wrapped C/C++ object of type NestedSplitterTopLevel has been 
deleted


My perception is still such that Leo can meet pretty much any need that is 
out there. Much can be done with nodes, clones, and sessions, for example. 
I have a couple of dozen ways to start Leo, depending where I was in which 
project. Opening 30 or 40 text files on load works, just as saving and 
closing the same does. Leo provides the tools, we just need to supply the 
imagination and the willingness to make things happen in a workflow.

I will go back to working thorough the plugins to see which 
combinations/environments need some work. I think I will need to start with 
them one by one, verifying that they work according to what their 
<<docstring>> thinks "work" means and how that work interacts with the core 
functions of Leo. No point in having whizzy plugins that break window 
arrangement for example.

Chris


On Monday, August 29, 2016 at 6:17:53 PM UTC-7, Terry Brown wrote:
>
> On Mon, 29 Aug 2016 18:36:37 -0600 
> Mike Hodson <mys...@gmail.com <javascript:>> wrote: 
>
> > Hello Chris, Viktor, 
> > 
> > You and others have brought up great points about how Leo is used in a 
> > day-to-day basis. 
> > I'm having trouble with what appears to be "one" editing window. 
> > 
> > Please, correct me if I haven't figured this functionality out yet. 
>
> There's a few things you may not have seen. 
>
> Cmds -> Body Editors -> Add Editor 
>
> View / edit two or more nodes at once with full functionality 
>
> The stickynotes plugin has individual windows editing nodes with 
> plain text only functionality, and used to have a "tabula" window which 
> edits multiple nodes in tab / tile / etc/ layouts, although just right 
> now that seems broken. 
>
> Right clicking the dividers between the panes give 'Open Window' -> 
> 'Body', which detaches the body(*). 
>
> The bookmarks plugin gives hierarchical tabs for jumping between nodes: 
> https://vimeo.com/77720098 can't remember if the video includes 
> hierarchical 
> usage. 
>
> (*) The right clicking dividers so called easter egg menu allows 
> complete flexibility of pane layout, and I'd like to get the body 
> editor widgets to behave more independently so that system could be 
> used to lay out multiple editors in various sizes / windows / 
> arrangements. 
>
> But for tabs, try the bookmarks plugin, it's basically hierarchical 
> tabs. 
>
> Cheers -Terry 
>
> > Namely, I appreciate 'Tabs' and appreciate that leo itself has a 
> > number of tabs that refer to 'the whole .leo document' loaded. I can 
> > have numerous Leo files open; but I cannot seem to get multiple edit 
> > window views on multiple nodes at once. 
> > 
> > This sort of functionality can potentially be brought about by 
> > embedding in some scripting (im not quite sure how/where) that would 
> > automatically launch a brand new SublimeText project, and then 
> > iteratively 'add' new files, potentially autocreated per my previous 
> > queries here, to this SublimeText session... 
> > 
> > and then remember to somehow make sure Leo gets them updated back 
> > into itself. 
> > 
> > What I would love, is to embed sublimetext as the text editor widget. 
> > Somehow. 
> > 
> > It would let me have tabs for every edit view i am working on at a 
> > time (manually openable, closable, not precisely 'all potential nodes 
> > auto-opened' as I can only imagine to do it now so as to have some 
> > semblance of a 'session of files to be saved upon exit of Sublime' - 
> > which then would get reloaded into the .leo file. 
> > 
> > It would allow me to drag a tab into a brand new window if I wanted; 
> > multiple windows with 2-3 tabs perhaps, different from the others, as 
> > sections of 1 leo file. 
> > Then Leo should allow me to close it, and then all the sublimetext 
> > editor window session bits get saved like Sublime already does, 
> > without me having to hack on not just my own .leo file customizations, 
> > but also the autosave script itself to 'not care' where I am in the 
> > interface; i am often _not_ in the editor pane when I am wanting my 
> > last changes whilst in the editor pane to save; i've found some 
> > limitations to the speed of some of my computers with regard to saving 
> > the file every second, to 'hopefully' save before I've moused out of 
> > the text field... But I found editing the autosave plugin source to 
> > just not care what context its in, to work 99% of the time and only 
> > cause me to screw up typing node-names sometimes if i'm not quick 
> > enough. but 5 seconds is really long enough to edit a node name before 
> > the entire view redraws as it saves. 
> > 
> > So this, is both a workflow and a logical 'things should just 
> > automatically save, and be remembered later' desire. 
> > 
> > I cannot explain how frustrating it is to me to exit out of my desktop 
> > after having ssh'd into a large number of things i work on daily, with 
> > their terminal histories, and all related content to be lost. I can 
> > save my browser history; i can save my browser form content; i can 
> > expect sublime text to automatically save and remember itself when it 
> > relaunches. 
> > 
> > I cannot expect the same level of autosave / "state remembering" 
> > granularity of resuming with Leo. And this is a sad problem to have, 
> > for all of its benefits of organization. 
> > 
> > Truly for organizing, it works great.. But for me, I use this 
> > state-remembering of Subl3 all the time. I use its tabs, all the time. 
> > I use its relatively complete 'vi' mode all the time, and appreciate 
> > how it interacts with the common sublime and other ui "ctrl-c/ctrl-v" 
> > concurrently with vim 'command-mode' commands that I am accustomed to. 
> > It's truly the best of both worlds, "gui" and "vi-style" text editor 
> > all in one. 
> > 
> > And Leo's interaction with it, and with the types of text files I am 
> > using in general, to display the text in an editable, 
> > auto-completable, manner, is not so good. 
> > 
> > So I might appreciate an editor plugin 'of leo'... 
> > 
> > But really I'd appreciate a replaceable/embeddable text editing 
> > widget far more. 
> > 
> > Thanks, 
> > 
> > Mike 
> > 
> > On Mon, Aug 29, 2016 at 1:02 PM, Viktor Ransmayr 
> > <viktor....@gmail.com <javascript:>> wrote: 
> > > Hello Chris, 
> > > 
> > > Thanks for starting a new thread & sharing your prception. 
> > > 
> > > My initial feedback: If Leo (as is) fulfills all of your needs, 
> > > then that's a good/ great status for you! 
> > > 
> > > Another feedback: IMO a lot of the discussion focuses on the 
> > > questions: Should more things be added to the Leo environment (the 
> > > Application, the IDE, the Outliner, the PIM, etc.) - or - can 
> > > (must?/ should?) the experience from Leo's past & presence be used 
> > > to extend other communitie**s** & environment**s**? 
> > > 
> > > I'm repeating myself: I always understood the original contribution 
> > > from 'tfer' as an input for the later one ... 
> > > 
> > > On Mon, Aug 29, 2016 at 4:34 PM, Chris George 
> > > <techn...@gmail.com <javascript:>> wrote:   
> > >> 
> > >> Over the past couple of years I have begun to see Leo as an 
> > >> outlining editor that can emulate every editor and every outliner 
> > >> out there. Every time I try to narrow Leo's spot in in my 
> > >> toolchain, it widens and another dedicated tool passes on. 
> > >> 
> > >> The recent discussion about paring Leo down to a plugin for a text 
> > >> editor really brought this into focus for me. I think what users 
> > >> are looking for here is a Leo where the text edit box looks and 
> > >> acts like their editor du jour. Focusing on learning markdown and 
> > >> restructured text really focused me on how little I need to learn 
> > >> and how unimportant formatting WHILE writing fiction and 
> > >> non-fiction truly is. 
> > >> 
> > >> What wins are the words. The writing is organized. Leo makes sure 
> > >> of that. 
> > >> 
> > >> So after all this time, I load up a different editor for evaluation 
> > >> (Visual Code, which seems to be atom designed by grown-ups) and 
> > >> find myself missing Leo's text box, my abbreviations and my 
> > >> organizer file. Now atom or code becomes the whizzy plug-in 
> > >> material for Leo to wrap. But at that point, why bother. Why not 
> > >> just emulate as was done with vim? Any tool that would or could be 
> > >> classed as outliner or editor can be emulated by Leo. 
> > >> 
> > >> So why bother writing new editors when you could emulate one in 
> > >> Leo? 
> > >> 
> > >> Pondering onward, 
> > >> 
> > >> Chris 
> > >> 
> > >> -- 
> > >> 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 leo-editor+...@googlegroups.com <javascript:>. 
> > >> To post to this group, send email to leo-e...@googlegroups.com 
> <javascript:>. 
> > >> Visit this group at https://groups.google.com/group/leo-editor. 
> > >> For more options, visit https://groups.google.com/d/optout.   
> > > 
> > > -- 
> > > 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 leo-editor+...@googlegroups.com <javascript:>. 
> > > To post to this group, send email to leo-e...@googlegroups.com 
> <javascript:>. 
> > > Visit this group at https://groups.google.com/group/leo-editor. 
> > > For more options, visit https://groups.google.com/d/optout.   
>

-- 
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 leo-editor+unsubscr...@googlegroups.com.
To post to this group, send email to leo-editor@googlegroups.com.
Visit this group at https://groups.google.com/group/leo-editor.
For more options, visit https://groups.google.com/d/optout.

Reply via email to