

VIM Modes Transition Diagram - platz
http://stevelosh.com/media/extra/vim.svg

======
sequoia
I think this diagram is useful not as a user reference manual, but as a
discovery tool. I look at it and say "I know that, I know that, I know that-
oh! I didn't know that one." I think it should say "Prerequisite: complete
vimtutor" at the top, or have something else so people unfamiliar with vim
don't just have their eyes glaze over when they see it. Perhaps a note
explaining that very few people actually know all of these commands, and you
only need to know about 5 of them to use vim. Basically, the graphic would be
much more useful with some context to explain how it should be used or not
used, by whom, and what it contains and doesn't contain.

~~~
laverick
Agreed. I wouldn't ever use this to learn Vim, but after using Vim as main
editor for a few months it took very little time for me to find something new
and useful, namely using s/cc/S/C to insert.

------
ZeWaren
I think this would be even better if the nodes would be links to
documentation. That way if you discovered a node you knew nothing about, you
would just click it instead of having to google it.

~~~
darcyparker
Good idea!

------
Gabler
As someone who is thinking about learning Vim, this diagram is severely
daunting.

~~~
tyler_ball
Definitely don't let this discourage you. I've only been using vim for about
six months and I do not know all the commands and modal changes on this
diagram.

The great thing about vim is you do not need to know very much to be
productive, but every day you learn something new that will make you more
productive.

While this is a great reference writing a vim plugin or looking up the
behaviour of a specific command, I don't really see it as a learning tool.

~~~
platz
I agree, it's not really a learning tool (for a novice). Some commands here
are pretty obscure; you wouldn't use some of them very much or at all, but
that's not evident in the diagram. And you also have the right idea about
learning vim incrementally ([http://yehudakatz.com/2010/07/29/everyone-who-
tried-to-convi...](http://yehudakatz.com/2010/07/29/everyone-who-tried-to-
convince-me-to-use-vim-was-wrong/)), instead of the "learn everything in
parallel" approach that some advise.

~~~
Gabler
Thanks for the link. I'm only just starting my second year of University now
and I feel like skills with Vim will be an invaluable thing to have for my
course.

------
darcyparker
Thanks for the feedback everyone. (I am the author and a friend just forwarded
this to me.)

------
WildUtah
This diagram doesn't include any of the q-macro system, hardly any of the
:commands, and only a very vague box saying "operator" for a large class of
actions and motions Vim users are constantly engaging in.

In short, this is a woefully incomplete diagram of a summary of a subset of
the VIM Mode Transitions. Maybe it could be a start for a serious effort down
the line.

I've been using Vim as my main editor for over a dozen years. Nevertheless I'm
sure there's mountains of stuff I've never learned or understood that is also
left out here, but I'm such a rank beginner that I just don't know to mention
it.

~~~
platz
Perhaps this is the starting point then? <https://gist.github.com/1886716>

~~~
darcyparker
Yes - just a starting point. My focus was just on mode transitions. I am
considering creating other diagrams that focus on other aspects of vim such as
operators/motions. I may also create some simplified versions too. (But I am
not sure I will try to combine everything into a single diagram...)

I admit this one is daunting at first. Keep in mind that it's just an early
draft. As I was making notes for myself, it was fun to see it take shape...
and it was kind of like solving a sudoku puzzle to get it laid out without
overlapping edges. (The fact that it is planar is just a fun coincidence). I
have other interesting diagrams that I have scratched out too...

Most of the modes and transitions won't be of interest to everyone. Think of
it a roadmap/atlas of places you could go. (Some people may like reading
tables... I like to see things laid out visually. Although I am thinking of
creating an adjacency matrix that is partitioned/clustered so it can be
collapsed into simpler views.) Just like people make simpler maps to tell
friends how to get places, I fully expect it will be useful to make simplified
illustrate that only shows a subset of this more detailed transition map.

Thanks again for the feedback!

~~~
WildUtah
One commenter mentioned that my gp sounded hostile. I didn't intend to (it was
late at night). I found this interesting enough to comment on. I hope you have
more ideas about how to illustrate a great tool.

------
graywh
This is missing the v/V/ctrl-v changes for visual mode type or changing back
to normal command mode.

~~~
darcyparker
Thanks for pointing that out. I neglected to mention you can transition
between the visual modes once you're in one... and I didn't realize you can
toggle back out to normal mode by just pressing v, V, ctl-V from visual,
visual line and visual block modes respectively.

~~~
sliverstorm
I just bang on ESC to get back to normal mode.

------
magoon
I find this useful

------
termiefoo
obviously, gah

------
baggachipz
Translation: this is why I don't use vim.

