Actually it's easier to write dedicated little scripts now than it used to be with the old nested splitters. Mainly you have to know the names of the frames and splitters you are interested in. Edward posted a command that will list all the widgets and their names in a hierarchical view. I forget whether it's a built-in Leo command or not.
On Jul 17, 2024, at 7:47 PM, Thomas Passin <tbp1...@gmail.com> wrote:
Here's a similar script that will toggle viewrendered in a new pane next to the body:
--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/leo-editor/aed731a4-6add-493c-a087-0e725608c377n%40googlegroups.com.
Thank you, Thomas and Edward, for your inputs and examples.As a Leo user (and occasional dev/contributor) over the last 12 years and change, removing the ‘Easter egg’ menus feels like the largest regression I’ve seen Leo go through. Needing to write custom commands and scripts to do now what used to take about three clicks before is just unfortunate.I don’t know how to satisfy both the needs of devs and the needs of users in this instance. It just feels a bit sad that the UI lost in this particular fight. And I don’t think that a bevy of new commands is the right way to go about it moving forward, either — many users never ever interact with the minibuffer. I certainly don’t use it if I can help it. And Leo is my Everything Program for over a decade now.I will script up the things I need to get the work done that I need to do, but in all honesty this is a huge loss for those who aren’t programmers and used to be among the users Leo welcomed more thoroughly. It feels a little bit like every passing version removes more and more user-facing features, and alienates non-programming folks even further.Sorry to complain, just airing my $0.02 (worth even less now with inflation).
--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/leo-editor/add5bed1-e9dc-49fb-a2f5-e522450cbe2bn%40googlegroups.com.
This being the largest regression I've seen Leo go through in 12 years is a testament to how fantastic this app is. Which also, somehow, heightens it absence. It's just a little less 'perfect' now, even as it's more structurally sound 'under the hood'.
As a script writer, I'm sure I'll much appreciate the new splitter setup -- some of my 'LeoApps' had done atrocious things to get a consistent layout 😅.
I just haven't gotten into the new splitter API and I really don't think usual users should ever have to go that far.
I think a possible starting point for a series of commands could be ...
On Wed, Jul 17, 2024 at 8:51 PM Jacob Peck <gates...@gmail.com> wrote:This being the largest regression I've seen Leo go through in 12 years is a testament to how fantastic this app is. Which also, somehow, heightens it absence. It's just a little less 'perfect' now, even as it's more structurally sound 'under the hood'.
I agree that some help would be welcome. Thomas's scripts are an excellent starting point.Those scripts are a good ending point if you are good with changing the layout using `@button` nodes.
I don't recommend enabling scripts on startup. It's too big a security concern. Instead, I recommend creating new layout plugins. Outlines could enable the most appropriate plugin.Summary- There is no need for yet another API or yet more commands.- `@button` scripts are best when one wants to allow multiple layouts in an outline.- Bespoke layout plugins are another way to package non-standard layouts.
--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/leo-editor/502b437d-c2bb-445a-b2d1-5a6dda37abafn%40googlegroups.com.
@buttons are an objectively bad solution to this for a casual user.
I feel that 'layout plugins' would assist with this, but they'd still be supremely inflexible. For the non-programming user, we went from 'you can have any layout you want' to 'here are your choices, get over it'.
3) clutter -- would add both cognitive and visual clutter to an outline2) bespoke -- require development time of the user, or to go begging on the mailing list for someone else to do the work, which is objectively a bad UXTo be brief and frank -- @buttons are an objectively bad solution to this for a casual user. An @button to set their favorite layout is:1) inflexible -- a button will set a specific layout, and nothing else
I feel that 'layout plugins' would assist with this, but they'd still be supremely inflexible. For the non-programming user, we went from 'you can have any layout you want' to 'here are your choices, get over it'.To point #1, with the old easter-egg approach, I frequently manipulated layouts dynamically within the same workbook, to achieve what I needed at the time, on the fly. Some layouts I only ended up using for a few minutes, as suited my workflow. There was also the layout saving+loading mechanism that helped switch when desired to a series of 'stable' layouts, across all outlines.
To #2, requiring a user to a) know the API, and b) be willing to put in the effort to write a custom bespoke script just to move a panel around. This is a bit much.
#3 is nothing new in Leo world, but is just one more point of friction for new users.If the splitters had context menus to add new splits, and panes had click&drag handles to let you move them around, my whole issue would be resolved. No new commands, no new plugins, no absurd development time requests of basic users.
--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/leo-editor/CAMF8tS0ZpYfLrs94EbmyOWf5Em-ONoOL-VMQ5rmAk4t0qctXrw%40mail.gmail.com.
Characterizing criticism and concerns as 'bitching' is quite off putting.
Still, it seems unfair to complain about what used to be without acknowledging that the free_layout plugin prevented static definitions of layouts.
Here is a straightforward plan that requires no new Leonine features:
- Create @button nodes for the four layouts in the "starter pack."
Their docstrings will describe the layouts.
- Once we have acceptable @button scripts, we can easily convert them to plugins.
- A new info item can summarize these new plugins.
This item can include screenshots.
I'll be happy to help with the four layouts if you like.
Edward
I've already got a script to do Layout # 1 in Jacob's linked layouts. If you have #1, you can toggle between it and #4 using the existing Window/Toggle-Split-Direction menu item. I've attached screen shots of the two layouts, and the script is below:
Excellent. Imo, #4 should (eventually) be a separate script so that users can get it directly (without having to do toggle-split-direction.Yes indeed. You just need to add orientation detection to the script. I used to know how to do that but I don't remember just now.
1. There is a setting that specifies initial orientation. A plugin could use that setting, but a plugin could try other strategies, such as examining the widget hierarchy directly.
2. Plugins can queue code to run after Leo's has created outline frames. [snip]
SummaryKeep the @button prototypes dead simple. Add nifty features to the corresponding plugins if you like.
--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/leo-editor/525e9a45-2e34-4040-a9ec-f0e656f3da2fn%40googlegroups.com.
And here's a script to create Jacob's Layout #3 "render-focused". This script will work for either VR or VR3 if you just change the module imported at the top.
Thank you both for your work on this. I wasn't trying to get free labor, but I do appreciate it.
--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/leo-editor/a40175bf-e694-4491-bf07-34dcebf549a0n%40googlegroups.com.
Meanwhile, here's an improvement on my script for "render-focused". The cognitive dissonance is gone, unnecessary or redundant code is gone, and it works with VR even if VR is already open in some other layout.
Here's my go at a `quadrants` layout: