I stopped using vim mode

228 views
Skip to first unread message

gar

unread,
Jun 24, 2019, 5:11:21 AM6/24/19
to leo-e...@googlegroups.com
It is totally unusable unfortunately 

- Most of the shortcuts are missing (ya you get it later cause some combos are applied automatically - and then you revise the text typed you see that it's not what you expected)
- It works SLOW. VERY SLOW. Cursor moves with a great suspend on my modern computer with good processor and huge amount of time.
- Vim's settings are totally unbalanced with other application UI. For instance by some reason you get vim-mode in editing outlines. Or line borders (Edward mentioned recently) applied to outline tree and when editing - you see a few of letters cause the border ate them.
- trying to use http://leoeditor.com/vimBindings.html#using-stand-alone-vim-bindings this recipes leads to the situation where you can edit nothing - since you're always in "Command" mode and have no clue how to move to any other mode. 

Edward K. Ream

unread,
Jun 24, 2019, 7:01:41 AM6/24/19
to leo-editor
On Mon, Jun 24, 2019 at 4:11 AM gar <gar...@gmail.com> wrote:
It is totally unusable unfortunately 

Thanks for this report.  Perhaps you can help improve the vim plugin.

Edward

gar

unread,
Jun 27, 2019, 11:15:57 AM6/27/19
to leo-editor
After several days w/o vim mode I understood the dao of leo.
There's actually no need in vim mode at all. 

Vim editing style is good when you deal with thousands (ok, hundreds) lines of text/code.
Then is boosts your alot. 
But when you edit small text/code snippets - there is no difference what editing style you actually use. Any is ok.
Your responsibility is to make suitable hierarchy and keep node texts reasonable small - and then the problem of editing wont even arise.
When you edit a couple of paragraphs - all those modes and switches become obstacles!

So there's no real problem that vim mode is dead in Leo. As I thought just yesterday.



понедельник, 24 июня 2019 г., 14:01:41 UTC+3 пользователь Edward K. Ream написал:

john lunzer

unread,
Jun 27, 2019, 4:09:51 PM6/27/19
to leo-editor
What a great revelation, and a perfect example of how an editor can shift the paradigm of editing.

Make sure you look around for the different ways of searching through and managing larger outlines:
  • The "clone find" family of commands
  • I find Chapters to be a nice extension of the tree hierarchy
  • The Quicksearch plugin is great for quick searches... no really it is. 

gar

unread,
Jun 28, 2019, 12:00:30 AM6/28/19
to leo-editor
Thanks for advises!

I am still learning to use Leo in a proper way. I was told that learning curve is too long ans steep. But now it seems that it worth of it.

I'll take into consideration all those things you mentioned about. 
I am already familiar with chapters and they do really help when you deal with huge tree of something-that-looks-like-a-book (like my PhD book which I am trying now to move to Leo from bulk of bookdown Rmd files).
Searching/finding is not very popular feature for me now since I do a lot of dummy copy-paste work, but later I'll try to remember about clone-find and quicksearch.

Actually what I've discovered... When you face a new tool - first you try to use it in an any familiar way. 
Say you were using Notepad++ for years, and then you ought to use vim. 
What would I do? I would try to understand how to get red of all those silly commands and bring back my habitual Notepad++ features (yeah, that's my true vim story....).
With Leo I tried quite the same. And that was a mistake.

I think that I should pay more attention in learning the paradigm. Read more docs, try to write a couple of plugins.
For now I need a tool to build my book from Rmds - maybe it'll be a good challenge to write such a plugin which would connect Leo, bookdown and R.

Thank you all that you help novices with advises :-) I do really appreciate it a lot.
The community is small but very friendly.

четверг, 27 июня 2019 г., 23:09:51 UTC+3 пользователь john lunzer написал:

vitalije

unread,
Jun 28, 2019, 5:28:01 AM6/28/19
to leo-editor
I think that I should pay more attention in learning the paradigm. Read more docs, try to write a couple of plugins.
For now I need a tool to build my book from Rmds - maybe it'll be a good challenge to write such a plugin which would connect Leo, bookdown and R.

I suggest you to start by writing scripts for experimenting. Once you have a good and useful script you can put a headline on it something like '@button my-script @key=Alt-4' . (replace my-script with something meaningful and Alt-4 with the shortcut of your choice).  Next time you open that outline your new command, a toolbar button and shortcut are at your service.

Once you have a bunch of usable scripts you might want to pack them in a plugin. 

Everything you need to do you can achieve by writing scripts only. Plugins are more for sharing useful scripts. Developing a plugin is not so easy because for every change you need to start a new instance of Leo to check if it works or not. OTOH scripts are live, and every change in the script is immediately visible. If you put your scripts in myLeoSettings.leo they will be present in every other outline you open, almost as if they become an integral part of Leo.

Vitalije


gar

unread,
Jun 28, 2019, 7:31:43 AM6/28/19
to leo-e...@googlegroups.com
Oh thanks for that remark! I'll take it into account.

пт, 28 июн. 2019 г. в 12:28, vitalije <vita...@gmail.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 leo-editor+...@googlegroups.com.
To post to this group, send email to leo-e...@googlegroups.com.
Visit this group at https://groups.google.com/group/leo-editor.
To view this discussion on the web visit https://groups.google.com/d/msgid/leo-editor/29f2dddf-e576-406f-ae5a-7157b7644337%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Edward K. Ream

unread,
Jul 4, 2019, 11:26:37 AM7/4/19
to leo-editor
On Thu, Jun 27, 2019 at 8:15 AM gar <gar...@gmail.com> wrote:
After several days w/o vim mode I understood the dao of leo.
There's actually no need in vim mode at all. 

Thanks for this.  Your remarks are complementary to thoughts I've had for a long time.  Leo is a different, more complex environment than vim.  In particular, vim has only a "body" pane.  So Leo's vim mode needs commands to switch between environments.  But there are no free keystrokes. Vim uses them all.

Anyway, I have just created #1235, retire vim mode.

Edward

gar

unread,
Jul 4, 2019, 12:54:27 PM7/4/19
to leo-e...@googlegroups.com
But may I suggest you to think about one more think?
Using Leo extensively for the last days I encountered a great
inconvenience: lack of commands for manipulating outlines from
whatever part of the Editor.

Say I am editing the body and suddenly got an idea which I want to add
as a prev sibling of the currently edited outline. But I have only
Ctrl-I and Ctrl-Ins options, so I have to create outline and then move
it.
Actually that is not a great problem, but when you're designing a
structure.... hmmm...

Another case. I decided to change the outline. Good, Ctrl-H. But it
behaves differently with double-click. Ctrl-H activates editing mode
for the outline but do not selects it while dblclk activates and
selects. But actually, I need both of them, and thx vim, I can
remember and simultaneously use 1000 keybinding.

My suggestion is to create sort of meta-key-binding-language for
outlines manipulations. Let it be something like Alt-H for activating
- and then you need to enter what command you actually want to
execute: select and edit, edit w/o selection, all in uppercase -
whatever.

Well guess that is possible to do via custom commands - but I haven't
read this chapter yet :-) So sorry if my suggestions sound silly.
> <https://github.com/leo-editor/leo-editor/issues/1235>, retire vim mode.
>
> Edward
>
> --
> 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 post to this group, send email to leo-e...@googlegroups.com.
> Visit this group at https://groups.google.com/group/leo-editor.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/leo-editor/CAMF8tS3bk_TJf5PZsYe47ZA8pPJu7bH4tpFUQQRWOK_QekBMow%40mail.gmail.com.

Edward K. Ream

unread,
Jul 4, 2019, 6:07:23 PM7/4/19
to leo-editor

On Thu, Jul 4, 2019 at 9:54 AM gar <gar...@gmail.com> wrote:


My suggestion is to create sort of meta-key-binding-language for
outlines manipulations...


Well guess that is possible to do via custom commands

Yes.  @command is your friend.  It's possible to "chain" keystrokes together with @mode, but I never do that.  Usually <Alt-x>command-name is good enough, with Ctrl-P (repeat-complex-command) substituting for an explicit key binding.  But @mode is there if you want to do fancy things.

Edward

Offray Vladimir Luna Cárdenas

unread,
Jul 18, 2019, 1:13:21 PM7/18/19
to leo-e...@googlegroups.com

Hi,

The path Vitalije is suggesting was the one that worked best for me with Leo... but took me years to discover it by myself. My first script was one that took a Leo (sub)tree and exported as a Markdown file in a desired path, using Leo node headers as Markdown headers and Leo node bodies as contents for such headers. The code was crappy and I never packaged it as a plugin (or even made a keyboard shortcut), but it taught me a lot about Leo main feature: a programmable DOM/tree that could be introspected/changed from any of its scripts nodes. That started the path that allow me to build my own (Pharo powered) interactive outliner for the PhD.

It was until I started to use the programmable DOM that Leo opened really for me (before that, the killer feature, as a non-programmer were clones), because I understood that Leo provided an extensibility layer to deal with its own limitations via scripting (which aligned with my PhD question on "how can we change the digital tools that change us"). I think that such scriptabilty possibilities could be better transmitted if we have some friendlier "end user" experience to install plugins, something like the stuff Atom or Firefox do, listing all installed and available plugins and making them one click away of distance.

So, following on Vitalije's advice, I would invite you to see, which limitations Leo has for *you* right now and to explore which is the simplest script to overcome it and talk with the community to see how can we be companions for such travel.

Cheers,

Offray

--
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 post to this group, send email to leo-e...@googlegroups.com.
Visit this group at https://groups.google.com/group/leo-editor.

gar

unread,
Jul 19, 2019, 9:10:24 AM7/19/19
to leo-e...@googlegroups.com
Hello Vladimir.

Actually I discovered Leo when I tried to compile my diploma chapters into a single book. It was a bundle of MD files which took alot of attention to chain into anything reasonable. i guess you know what am I talking about.

Leo solves this problem absolutely. It's perfect for writing any kind of texts. But I do really miss some editing commands I use frequently with vim.
Now I am making node texts very small to edit them as rarely as possible but it's not the right approach.
If I had more time and knowledge - I would make some outstanding plugins which fix all that editing crap but... for now I have to re-teach myself for another editing paradigm. Which I dont really like, actually.

So the first-call task for me is to adopt Leo to my editing habits. I agree to loose VIM language - but I need all the variety of it's features back. Some of them can be found in the standard leo's commands (like rectangular select) but most of them work with it's own flavor - and it's hard to accept. I am still not sure that I will stay with leo more since I just dont want to loose VIM habits I learnt for years which seem more powerful for me than LEO's outstanding features. OK, almost everything LEO suggests I can make with global search-n-replace....

Until I solve the editing issues I wont be able to give more feedback about other limitations. I am trying to code some utility commands and I love it, python looks more pleasant for me then vimscript, etc, etc, but.... 

чт, 18 июл. 2019 г. в 20:13, Offray Vladimir Luna Cárdenas <off...@riseup.net>:

gar

unread,
Jul 19, 2019, 9:37:27 AM7/19/19
to leo-e...@googlegroups.com
I want to add some more words about leo's learning curve.
To use leo efficiently you need to invest inconceivable amount of time. You need to examine code which makes buttons, debug why shortcuts doesn't work, investigate theme issue etc.
There are plenty of topics which are just touched in the manual and which promise you the real power if you learn them.
I do remember how all of my everyday activities just stopped for a 2 weeks when I found leo - and I cannt say that those 2 weeks gave me alot....

Actually, you need to invest about couple of years to start gain real profit from leo - which is quite comparable with vim or emacs.
But there's no such a time resource to invest, and I believe most if new users just quit - cause leo w/o knowing it's magic runes is not really that attractive as any of modern IDE.

I came into leo just because i already used IDEs for years, I know them all - MSVS, Intelli, RStudio, plain VIM etc - and I do see where they are weak and how Leo can help in that fields.
but even with this knowledge I cant answer where to take time to learn another super complicated tool - especially when memories about how hard did it take to learn vim are so alive....
And then you start to think that RStudio + bookdown is quite good for you - just because you can just install it and get immediate result and you dont need to spend evenings experimenting with DOM and @button.

пт, 19 июл. 2019 г. в 16:10, gar <gar...@gmail.com>:

Chris George

unread,
Jul 19, 2019, 10:23:45 AM7/19/19
to leo-editor
I stumbled across Leo in 2007.

I went through the exact same learning curve issue but even worse because I am a writer, not a programmer. I would pick Leo up and put it down, discouraged.

But I kept coming back because there was simply nothing else like it available.

Now I live in Leo. I work on themes. I fix simple bugs. And every day I learn more about Leo, about python, and about how to expand my knowledge of the ways Leo can make me a more organizaed and effective writer. I expect that I will be doing this right to the end of my life.

Leo is like a big box of nuts, bolts, and incomprehensible metal bits with holes in them. Everyday I figure out a little more which makes the next day a little easier. Every now and then I discover things that change everything. Abbreviations, for example, were a revelation that revolutionized how I work. I looked back in my files and I wrote my first @outline-data tree-abbreviations template in 2014, seven years after creating my first outline.

It does take a buttload of effort to get up to speed but the benefits to me as a writer have been huge from an organization and productivity point of view. And I now know enough to see how the Leonine way of dealing with code is fundamentally different than anything else out there.

I encourage you to stick with it and get past the curve.

Chris
To unsubscribe from this group and stop receiving emails from it, send an email to leo-e...@googlegroups.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 leo-e...@googlegroups.com.

gar

unread,
Jul 19, 2019, 10:42:47 AM7/19/19
to leo-e...@googlegroups.com
Thanks for that words of wisdom and support. Yeah I know that you're right in every letter.
I remember how I started to learn vim in deep. I used "modern" IDEs and felt that they I know a few about code w/o them, I cannot do very basic things w/o dozen of plugins.
It was my motivation to simplify my environment and process.
Now, looking at leo, I foresee great opportunities  it gives, but also I foresee that ocean of time it'll take. 
The main problem of our world is that it wants us to complete the job yesterday, so learning another practice becomes cumbersome issue.
Hope some years later I'll become closer to your level.

пт, 19 июл. 2019 г. в 17:23, Chris George <techn...@gmail.com>:
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/19e591cd-c42d-46fd-945e-d2c4d638e23b%40googlegroups.com.

Offray Vladimir Luna Cárdenas

unread,
Jul 19, 2019, 12:59:09 PM7/19/19
to leo-e...@googlegroups.com

Yes, learning curve is step from non programmers. I was not a coder when I started with Leo and it took me a decade or so, to overcome the step learning curve. Meanwhile I was happy with clones and deconstructing scripts and config files from others in a tree I understood and then use @auto to flat them again.

That's why a friendly way to sharing plugins and themes was the most felt need for me the first decade of my Leo usage. Then I wrote my first traversing tree plugin, because, despite of requiring a lot of time investing, it was even worse not to have it and even more time consuming. Then I needed more interactivity and modifiability and that took me away from Python/Leo into Pharo/Grafoscopio. But the think is that Leo, Jupyter, TeXmacs and other FLOSS tools opened for me a path of self improvement and mastery search that has not end.

I think that maybe you need to find that task automation that you are doing by hand now, and where the time investment is worthy enough for a busy person to learn how to automate it in a custom way that no generic tool will give you. That's where Leo shines in the Python world (and Pharo in the Smalltalk world).

Cheers,

Offray

Matt Wilkie

unread,
Jul 22, 2019, 5:02:45 PM7/22/19
to leo-editor
Adding my voice to the choir. I've been here for at least a decade and I still consider myself largely a Leo neophyte. In part because every time I perceive again "the ocean of time it will take" to be proficient I look for some other tool that promises to be easier to grok. I keep coming back, having learned once again that some of the grass is greener over there, but not enough to satisfy. Interestingly the oldest message I can find which I participated in is a similar thread to this one, "Please tell how it was that you got the Leo Aha".

-matt



Edward K. Ream

unread,
Jul 30, 2019, 7:41:31 AM7/30/19
to leo-editor
On Fri, Jul 19, 2019 at 8:37 AM gar <gar...@gmail.com> wrote:
I want to add some more words about leo's learning curve.
To use leo efficiently you need to invest inconceivable amount of time. [snip]
Actually, you need to invest about couple of years to start gain real profit from leo - which is quite comparable with vim or emacs.

Interesting comment.  vim and emacs have the great advantage that many people use them, so newbies can find someone to ask questions and look over their shoulder.

Edward
Reply all
Reply to author
Forward
0 new messages