Things you might not know about leo-web

88 views
Skip to first unread message

Félix

unread,
Mar 26, 2026, 1:34:05 AM (5 days ago) Mar 26
to leo-editor
I’ve been continuing to refine **leo-web**, the browser-based version of Leo. While working on the latest updates, I realized there are already quite a few useful features that aren’t immediately obvious.

So, although I'm still working on features like abbreviations and the nav and undo panes, I thought I'd give you a rundown of what it can do that you might not know about :)

🖱️ Resize everything at once

You can drag the intersection point of the pane resizers to resize all panes simultaneously.

📱 Install it like a real app

leo-web includes a web app manifest, which means you can install it as a standalone app on desktop (Chrome, Edge, etc.) or mobile devices with the 'install button' at the end of the adress bar.

⚙️ UI & behavior settings built-in

The Settings pane lets you tweak things like the visibility of UI components and the behavior for detecting external file changes.

This makes it easy for new users to tweak those details without using myLeoSettings.leo.

📜 Run scripts (JavaScript / TypeScript)

leo-web supports **Leo scripts written in JavaScript or TypeScript** for browser-native scripting, easy experimentation, and direct access to the JS ecosystem.

🔍 “Go Anywhere” navigation (Ctrl+P)

There’s a **Ctrl+P “go-anywhere” command**, inspired by editors like Sublime Text and VS Code that lets you jump quickly across nodes by lazy-matching what you type to existing headlines.

⌨️ Familiar command palette shortcuts

The Alt+X command palette is also accessible via Ctrl + Shift + P

So if you’re coming from other editors, your muscle memory already works here.

🌌 Quick “zen mode”
  • Shift + F11 → toggle off the top menu
  • F11 → fullscreen
Combined, they give you a clean, focused editing environment in seconds.

If you do give it a spin, I’d be really interested to hear:
  • what feels great
  • what feels missing
  • and what breaks 🙂
Feedback at this stage is incredibly valuable, so thanks for checking it out!

You can open it directly here: https://boltex.github.io/leo-web/

Félix

Rob

unread,
Mar 26, 2026, 9:43:27 AM (5 days ago) Mar 26
to leo-editor
Really like it so far!

I'm using the installed web app and curious if updates will happen automatically or if I need to manually update?

FYI, I'll post bugs/issues on GitHub.

Rob...

Thomas Passin

unread,
Mar 26, 2026, 2:06:41 PM (5 days ago) Mar 26
to leo-editor
It opens and looks good in Vivaldi, a Chrome-based browser. In a Mozilla-based browser, the browser doesn't have permission to open files in the local file system.

Mike Hodson

unread,
Mar 26, 2026, 3:07:39 PM (5 days ago) Mar 26
to leo-e...@googlegroups.com


On Thu, Mar 26, 2026, 12:06 Thomas Passin <tbp1...@gmail.com> wrote:
It opens and looks good in Vivaldi, a Chrome-based browser. In a Mozilla-based browser, the browser doesn't have permission to open files in the local file system.

I am curious, which operating system and method of installation have you chosen to run the mozilla-based browser? 

For example, on Ubuntu or any other distribution that uses snaps [which is really any if you install it yourself] utilizing even APT to install Firefox will cause it to pull a snap image and snaps are by default unable to read outside of their sandbox.

Mike

Thomas Passin

unread,
Mar 26, 2026, 3:24:02 PM (5 days ago) Mar 26
to leo-editor
I used Zen on both Windows and Linux/endeavourOS. I believe the latter uses flatpak. I just used the system Add Programs installer. When the browser tries to load web-Leo, a dialog gets put up that says that local file system is not available. There is a link to a Moz page that says that local file access is experimental and limited to certain contexts. It appears to be a Mozilla thing, not a container matter.  Vivaldi on EndeavourOS is able to open files in the file system.

Félix

unread,
Mar 26, 2026, 3:28:05 PM (5 days ago) Mar 26
to leo-editor
btw firefox does not support filesystem API either way - so until they decide to support it, no use trying it with firefox :)

Jacob Peck

unread,
Mar 26, 2026, 3:38:35 PM (5 days ago) Mar 26
to leo-e...@googlegroups.com, leo-editor
It appears there’s an extension to add the Filesystem API to Firefox.  I have not tested it, and it’s not maintained by Mozilla, so YMMV.  Just thought I’d mention it.

Jake

On Mar 26, 2026, at 3:28 PM, Félix <felix...@gmail.com> wrote:

btw firefox does not support filesystem API either way - so until they decide to support it, no use trying it with firefox :)
--
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 visit https://groups.google.com/d/msgid/leo-editor/da616bf4-413b-42ec-a744-77fa1f3a56den%40googlegroups.com.

Viktor Ransmayr

unread,
Mar 26, 2026, 4:44:35 PM (5 days ago) Mar 26
to leo-e...@googlegroups.com
Hello Félix,

Am Do., 26. März 2026 um 06:34 Uhr schrieb Félix <felix...@gmail.com>:
...

📱 Install it like a real app

leo-web includes a web app manifest, which means you can install it as a standalone app on desktop (Chrome, Edge, etc.) or mobile devices with the 'install button' at the end of the adress bar.

Interesting !

Does that mean it can be downloaded & installed once - and - then used offline ?

If yes, how would I start 'leo-web' in offline mode ?

With kind regards,

Viktor

Félix

unread,
Mar 26, 2026, 8:39:17 PM (5 days ago) Mar 26
to leo-editor
@Viktor Not offline yet - that implies 'compiling' the app in another way. I'll have to document myself on that matter to be able to do it (if possible at all with the actual codebase)

On the other hand: I've just discovered how to make some keyboard shortcuts be 'positional' on the keyboard instead of being 'by printed character'. (didnt know I could do that in javascript lol !)

 That will finally enable me to have a reliable shortcut for clone, promote and demote (pressing ctrl+the key under escape, ctrl+the key on the right of 'p', and ctrl+the key on the right of that last one!) Those are easy to trigger on an english u.s. keyboard layout, but on canadian-multilingual or french (and others) keyboard layouts they had to be remapped in some way to trigger in Leo.

So far I'll make only those 3 be positional. Please let me know if you can foresee any problems with that 

Félix



Viktor Ransmayr

unread,
Mar 27, 2026, 4:08:04 PM (4 days ago) Mar 27
to leo-e...@googlegroups.com
Hello Félix

Am Fr., 27. März 2026 um 01:39 Uhr schrieb Félix <felix...@gmail.com>:
@Viktor Not offline yet - that implies 'compiling' the app in another way. I'll have to document myself on that matter to be able to do it (if possible at all with the actual codebase)

Looking forward to hear about your  future investigations !
 
On the other hand: I've just discovered how to make some keyboard shortcuts be 'positional' on the keyboard instead of being 'by printed character'. (didnt know I could do that in javascript lol !)

 That will finally enable me to have a reliable shortcut for clone, promote and demote (pressing ctrl+the key under escape, ctrl+the key on the right of 'p', and ctrl+the key on the right of that last one!) Those are easy to trigger on an english u.s. keyboard layout, but on canadian-multilingual or french (and others) keyboard layouts they had to be remapped in some way to trigger in Leo.

So far I'll make only those 3 be positional. Please let me know if you can foresee any problems with that

IIUC I don't see any issues with your current plan - but - I'd like to mention that I did experience  ~initial~ issues using Leo-Editor with **abbreviations** because of my German keyboard. 

With kind regards,

Viktor

PS: I'll look up the ~old~ message exchange I had with Edward & post it here.

Viktor Ransmayr

unread,
Mar 27, 2026, 4:44:55 PM (4 days ago) Mar 27
to leo-e...@googlegroups.com
Hello Félix,

Am Do., 26. März 2026 um 06:34 Uhr schrieb Félix <felix...@gmail.com>:
...

If you do give it a spin, I’d be really interested to hear:
  • what feels great
  • what feels missing
  • and what breaks 🙂
Is there a particular reason why you have not provided the 'exit-leo' command ?

With kind regards,

Viktor

Félix

unread,
Mar 27, 2026, 9:00:55 PM (3 days ago) Mar 27
to leo-editor
@viktor 

> Is there a particular reason why you have not provided the 'exit-leo' command ?

Ah! good catch! I thought I'd quickly add an 'exit leo' command, so I went to document myself on how to have a web-page close itself, but here's what I learned:

Due to modern browser security restrictions, a web application cannot force the entire browser or a tab opened by the user to close programmatically.

Thanks for that question nonetheless and please continue testing it out as it greatly helps in polishing and finalizing the project! :)

Félix

Viktor Ransmayr

unread,
Mar 28, 2026, 5:03:31 PM (3 days ago) Mar 28
to leo-e...@googlegroups.com
Hello Félix,

Am Sa., 28. März 2026 um 02:00 Uhr schrieb Félix <felix...@gmail.com>:
@viktor 
> Is there a particular reason why you have not provided the 'exit-leo' command ?

Ah! good catch! I thought I'd quickly add an 'exit leo' command, so I went to document myself on how to have a web-page close itself, but here's what I learned:

Due to modern browser security restrictions, a web application cannot force the entire browser or a tab opened by the user to close programmatically.

Thanks for your feedback.

I can / do understand the restriction for a web application not being able to enforce closing the entire browser - but - not being able to close your own tab feels wrong to me !

With kind regards,

Viktor

Viktor Ransmayr

unread,
Mar 29, 2026, 11:38:16 AM (2 days ago) Mar 29
to leo-editor
Hello Félix,

Viktor Ransmayr schrieb am Samstag, 28. März 2026 um 22:03:31 UTC+1:
Am Sa., 28. März 2026 um 02:00 Uhr schrieb Félix <felix...@gmail.com>:
@viktor 
> Is there a particular reason why you have not provided the 'exit-leo' command ?

Ah! good catch! I thought I'd quickly add an 'exit leo' command, so I went to document myself on how to have a web-page close itself, but here's what I learned:

Due to modern browser security restrictions, a web application cannot force the entire browser or a tab opened by the user to close programmatically.

Can you please share a reference for this statement.
 
I can / do understand the restriction for a web application not being able to enforce closing the entire browser - but - not being able to close your own tab feels wrong to me !

I did a search on the Internet using "a web application cannot force the entire browser or a tab opened by the user to close programmatically" as search term and got the following link as one of the results:

I do understand that w/i 'leo-web' a lot of checks have to be made before calling it - but - can you explain to me why 'window.close();' at the end would not work ?

With kind regards,

Viktor 

Reply all
Reply to author
Forward
0 new messages