Great explanation, Sebastian! This maked me wish to learn this ASAP. I had some experience on the past: - learning the blint 10-thinger printing - learning of using the laptop keyboard without dedicated PgUp, Dn, Home and End keys. So I think that I will get accustomed to it as well )
Just another procrastination sink hole, don't go there, learn to touch type at 120wpm, that will be enough for the rest of your life and quick typing works on any computer you will ever encounter.
I politely disagree 🙂 If you type out the text right away (without jumping around or correcting) then maybe, but especially reading text/code and navigating in your editor is significantly faster. At the end, that's for everyone to decide, but I can tell, the Vim way of typing was a huge productivity boost. Enless Vim editor/plugin configuration -> yes, agree, procrastination hole; learning the Vim way of typing (with what's shipped in Vi/Vim) -> long term investment; my 0.02€ 🙂
The reason vi/vim/nvim use h/j/k/l has nothing to do with ergonomics. The real reason is that Bill Joy was using a DEC VT100 terminal which didn't have specialized cursor keys, but used Ctrl-h/j/k/l for cursor movement. It even had arrows printed on these keys. Since vi was modal, Bill Joy just got rid of the Ctrl. Also: Always keeping your hands in the same position is really bad for them. Just like always sitting in the same position is bad for you.
Hi Sebastian, thank you for the Vim review. I would like to know what you use for the keyboard overlay you show on your presentation (bottom left hand corner). Is it a plugin or Windows application ? I think that would help me in my learning of Vim. Thank You.
I do like the idea that fingers should stay on the home row. But I don't like Vim key mapping (especially h,j,k,l for navigation which is not intuitive, especially when moving 'up'). So I'm using my own mapping when holding/pressing CapLock enables a "second layer" where i,j,k,l keys work as arrow keys ↑←↓→. Moreover, Enter is mapped to `;`, Escape to `a`, and so on. It takes some time to get used to but benefits I see: 1) fingers stay on the home row 2) it works in ANY application (thanks to Karabiner-Elements)
i think it is good to KNOW it so that one can use it where there is only vim. However, with modern IDEs, and other note-taking s/w where i want to be able to see markdown render while i type, vim isn't the one i would like to use.
I replace esc with jk to make shorts moves . How is the best way to put the cursor in a x,y point on the screen? I find some plugins for do that but use the mouse looks the best way, and this is not the vim way...
I've also started out with 'jk' but found the Esc placement on the Caps Locks key a better fit. For x,y jumps I'm using the relative line numbering, then you can easily see where you need to jump, e.g. 4k for '4 lines up'
Now I use ctrl+c to escape. It's easier that way and work almost everywhere without any remap. For the x.y cursor I propose you to try some plugin like leap.nvim or vim-sneak that help you jump to word by pressing their first two character (and function like the browser extension for the rest). It's more an object based movement than a coordinate move, but it do the job correctly
I love a way of typing in VIM, but can't switch to it completely, since it doesn't provide all the autocompletions and integrations that I need as Java engineer, so mostly using to edit config files. I'm wondering if you tried "Vi/Vim" mode plugin in IDEA and how it worked for you?
Yes, I think it's one of the best combinations, to use an IDE with Vi/Vim plugin. I'm using IdeaVim all the time and am very happy with it: blog.sebastian-daschner.com/entries/my-favorite-ideavim-features
@@SebastianDaschnerIT how much time do we really spend writing? While coding a project, most of the time is spent "reading" code and only a little time is spent on actually copy-pasting and making changes / modifying etc. There are usually very less bursts of continuous typing moments.
I do type a lot of code, still. And also I type a lot of technical stuff in general, documentation, articles, blog posts, I wrote my book in Vim... It was and is a huge difference for me
I'm being honest. Never seen the so called benefits from anyone who preaches vim. It's always benchmarks... "Oh, look at this X seconds... Y minutes." At the end of the week, month, year? negligible. But it's preference. I find it very useful when you're accessing remote servers, for example, for daily work? Not so much.
And that's totally fine :) For me, I do notice a big difference, how seamless it feels and how much mental energy I spend while typing. That's the reason why I'm sharing this content. But everyone is different
Great explanation, Sebastian!
This maked me wish to learn this ASAP.
I had some experience on the past:
- learning the blint 10-thinger printing
- learning of using the laptop keyboard without dedicated PgUp, Dn, Home and End keys.
So I think that I will get accustomed to it as well )
Just another procrastination sink hole, don't go there, learn to touch type at 120wpm, that will be enough for the rest of your life and quick typing works on any computer you will ever encounter.
I politely disagree 🙂 If you type out the text right away (without jumping around or correcting) then maybe, but especially reading text/code and navigating in your editor is significantly faster. At the end, that's for everyone to decide, but I can tell, the Vim way of typing was a huge productivity boost.
Enless Vim editor/plugin configuration -> yes, agree, procrastination hole; learning the Vim way of typing (with what's shipped in Vi/Vim) -> long term investment; my 0.02€ 🙂
The reason vi/vim/nvim use h/j/k/l has nothing to do with ergonomics. The real reason is that Bill Joy was using a DEC VT100 terminal which didn't have specialized cursor keys, but used Ctrl-h/j/k/l for cursor movement. It even had arrows printed on these keys. Since vi was modal, Bill Joy just got rid of the Ctrl.
Also: Always keeping your hands in the same position is really bad for them. Just like always sitting in the same position is bad for you.
Hi Sebastian, thank you for the Vim review. I would like to know what you use for the keyboard overlay you show on your presentation (bottom left hand corner). Is it a plugin or Windows application ? I think that would help me in my learning of Vim.
Thank You.
It's called key-mon: github.com/scottkirkwood/key-mon
I do like the idea that fingers should stay on the home row. But I don't like Vim key mapping (especially h,j,k,l for navigation which is not intuitive, especially when moving 'up'). So I'm using my own mapping when holding/pressing CapLock enables a "second layer" where i,j,k,l keys work as arrow keys ↑←↓→.
Moreover, Enter is mapped to `;`, Escape to `a`, and so on.
It takes some time to get used to but benefits I see: 1) fingers stay on the home row 2) it works in ANY application (thanks to Karabiner-Elements)
I see your point. In fact this is quite similar to what certain keyboards such as the Ultimate Hacking Keyboard do with their extra modifier key
that looks fun! now I'll go google what vim is =)
How do You enclose some existing text in p.e. ()
My was at the moment is: mark d()P.
But I'm sure there is a better way.
Thx
Sven
i think it is good to KNOW it so that one can use it where there is only vim. However, with modern IDEs, and other note-taking s/w where i want to be able to see markdown render while i type, vim isn't the one i would like to use.
You can use a modern IDE with a Vi mode plugin (which is what I use), so you get best of both worlds, IDE functionality and typing efficiency
I replace esc with jk to make shorts moves . How is the best way to put the cursor in a x,y point on the screen? I find some plugins for do that but use the mouse looks the best way, and this is not the vim way...
I've also started out with 'jk' but found the Esc placement on the Caps Locks key a better fit. For x,y jumps I'm using the relative line numbering, then you can easily see where you need to jump, e.g. 4k for '4 lines up'
Now I use ctrl+c to escape. It's easier that way and work almost everywhere without any remap.
For the x.y cursor I propose you to try some plugin like leap.nvim or vim-sneak that help you jump to word by pressing their first two character (and function like the browser extension for the rest). It's more an object based movement than a coordinate move, but it do the job correctly
I love a way of typing in VIM, but can't switch to it completely, since it doesn't provide all the autocompletions and integrations that I need as Java engineer, so mostly using to edit config files. I'm wondering if you tried "Vi/Vim" mode plugin in IDEA and how it worked for you?
Yes, I think it's one of the best combinations, to use an IDE with Vi/Vim plugin. I'm using IdeaVim all the time and am very happy with it: blog.sebastian-daschner.com/entries/my-favorite-ideavim-features
I like ideavim
HELP I CANT CLOSE VIM
Nah, VSCode is still faster.
I tend to disagree :) The combination of the Vim way of typing inside an IDE (i.e. using via Vim plugin) is probably the fastest
@@SebastianDaschnerIT how much time do we really spend writing? While coding a project, most of the time is spent "reading" code and only a little time is spent on actually copy-pasting and making changes / modifying etc. There are usually very less bursts of continuous typing moments.
I do type a lot of code, still. And also I type a lot of technical stuff in general, documentation, articles, blog posts, I wrote my book in Vim... It was and is a huge difference for me
I'm being honest. Never seen the so called benefits from anyone who preaches vim. It's always benchmarks... "Oh, look at this X seconds... Y minutes." At the end of the week, month, year? negligible.
But it's preference. I find it very useful when you're accessing remote servers, for example, for daily work? Not so much.
And that's totally fine :) For me, I do notice a big difference, how seamless it feels and how much mental energy I spend while typing. That's the reason why I'm sharing this content. But everyone is different
someone trying to optimize hand movements to save time . that's the principle of capitalism.