Terry, since you are working on Leo's next generation edit pane anyway I thought I'd at least throw the idea out there to see if it resonated with where we'd like to take Leo's body pane. Edward, I'd like to get your take as well as it could impact many goals coming up.
I call it "continuous edit mode" The idea is that the body/edit pane would show node content from multiple nodes delineated with a special non-editable stylized heading + vertical divider. The nodes it would take body content from would be N visible nodes plus or minus the currently selected node. If you move your cursor (up/down arrow) past the editable text for one node to the content of the next node it will automatically highlight that node in the tree without taking focus away from the body. Content from other nodes could be optionally dimmed (with shortcutted toggle command) to retain the aspect of focus that Leo currently enables by viewing node body content in isolation. The benefits/implications of this type of body editor mode: - Faster workflow. Switching back and forth between the body is not a big deal but a continuous edit pane would offer a natural method of moving to the next node without leaving the body editor or using shortcuts. Page down/up would always end at the content of the currently selected node without moving to the content of the next node then up/down arrow could be used to move to the content of the previous/next node. - This could provide a flat view of the tree similar to what you see in emacs' org-mode. In essence a type of org-mode emulation, which could help realize a lot features Edward wants to bring from emacs' org-mode. The flat view in general can help give a more global understanding of the code. - A mechanism to create a Jupyter like experience where you can create a new "input" node which might be automatically given a node heading "[1] in", type the code you want in the node and and execute it which would create a node directly below the current node with the heading "[1] out" and the output of the previous command and also automatically create a new empty node with the heading "[2] in". - Building off the previous example, any type of continuous input/output workflow. I badly want to be able to simulate a shell inside Leo. This type of body editor could facilitate the writing of such "shell" plugins. - A gentler less shocking transition to Leo for new users who are used to "flat" editors. Once they get used to how nodes work. - You could use abbreviations or custom commands in the body to create new nodes from the body. Say you type "My next node" by itself on a line in the body and then press the keys for your shortcut to "new-node-from-line" which would create a new node below your current one. The stylized heading shows up in your body editor below the content of the current node. You could then arrow down to switch to the next node, never leaving the body editor but getting the full benefits of a tree structured document. - I envision clone-find-all and clone-find-flat becoming even more powerful search tools as you quickly move through the content of the found nodes with just page up/down and arrow up/down. The generic aspect of such a view mode enables emulating experiences from other editors/environments and I believe can be exploited to many other user friendly gains as well. -- 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 post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/leo-editor. For more options, visit https://groups.google.com/d/optout.
