Live data from Hacker News

What Is Vim?

blog.jonas.foo

51–60 of 179 posts

Re: What Is Vim?

#51

Earlier quoted context omitted.

Can you give example of vim features that you miss in the vscode plugin? Mainly because I likely don't know about them and I would like to add them to my toolkit (the surround thing is not a vim feature, it is a plugin, although the vscode plugin has that too)

The "buffer" model. Half the speed of using vim in a project for me is the ability to manipulate the layout and having different "windows" on the same file. One of my most common workflow is to split the current window and navigate to a different part of the same file for reference purpose (can quickly switch to another file with fuzzy finding too). And quick integration with external tooling. Creating an extension f…

This works the same in vscode as it does in vim as far as I am aware. e.g. `:vs` to split the window and moving between windows uses the same shortcuts as it does in vim.

Re: What Is Vim?

#52

Learning Vim early on had a high return on investment for this reason. Years later, I'm still able to benefit from the same muscle memory in modern tools, e.g. Obsidian. It should be said, though, that most implementations are simplified rewrites of Vim's core functionality. When you use a tool to achieve a sense of "flow", it can be grating for the editor to behave in subtly different ways from expectation, or disco…

Long ago, I learned video editing on a CMX tape based system. The key bindings on that system remain in place in pretty much every video application today. (Spacebar => play/pause, j/k/l => reverse/stop/forward, i/o => in/out) Sometimes, keybindings just make sense and for them to not do it definitely as you say feels disturbing. For new apps that don't, it's like did you live under a rock in a cave and never see any…

Never touched a CMX, with the EditDroid being the oldest I ever saw and it had a trackball/scrub knob.

But the vi keybindings are directly from the LSI ADM 3A terminal, which is what Bill Joy wrote vi on.

It had overloaded hjkl for the arrow keys compared to it's predecessors like the 7700A and successor 3A+ that had dedicated arrow keys.

The fact that Home/~ were the same key thus ~ being your home directory and that esc was where the tab key is on modern keyboards explains a lot about the vi keybindings.

Re: What Is Vim?

#53
Vim is this editor that a senior backend engineer told me to go try for a week, when I was still relatively junior. Like really try to remember all the shortcuts, not some half-assed attempt then laugh about not being able to remember :wq. If I were able to demonstrate fluent Vim skills at the end of the week, he'd gift me his TKL mechanical keyboard with a Vim keycap on the escape button.

It's been 9 years since that challenge, and I'm still typing on the Filco keyboard. Good memories. Although I've since moved on to NeoVim for the LSPs. It's nice that I can freely edit files on any machine for something I picked up in a week.

Re: What Is Vim?

#54

> There's a Vim mode in every single mainstream code editor out there. And they’re always frustratingly incomplete and/or buggy. Some motions will be unimplemented, or will behave incorrectly, especially with regards to boundaries around whitespace inclusion or exclusion in a motion. Things you added to Vim and got used to are unavailable, and so your ysa") to put parentheses around the string your cursor is on just…

> In VS Code, it maintains its own undo stack, and the interactions between the two undo stacks are terrible and terribly frustrating

That’s because Vim has a more sophisticated undo stack than VS Code.

Vim keeps its history as a tree where you can jump between branches.

Re: What Is Vim?

#55

Agree that Vim is a language to talk to your computer, but it's not necessarily efficient. Vim is famously an imperative editor: You have to tell Vim the sequence of steps to perform. Clicking your mouse on a position on the screen is declarative: You declare you want the cursor here. With Vim you have to imperatively walk the cursor to where you want to go, or god forbid use something like easymotion.

set incsearch

Now use / (+ n or N) + Enter to move around

Done

Re: What Is Vim?

#56

How do you explain "w" and "wq" to save and quit the editor with "verb adjective object" model? These two and "i" is all I remember about vi. Or is vi a different thing from vim and this model doesn't apply?

I don't understand why people keep talking about :wq when :x has been a thing for so long now

Re: What Is Vim?

#57

Agree that Vim is a language to talk to your computer, but it's not necessarily efficient. Vim is famously an imperative editor: You have to tell Vim the sequence of steps to perform. Clicking your mouse on a position on the screen is declarative: You declare you want the cursor here. With Vim you have to imperatively walk the cursor to where you want to go, or god forbid use something like easymotion.

> With Vim you have to imperatively walk the cursor to where you want to go, or god forbid use something like easymotion.

If you prefer to use a mouse you can do that in Vim too.

It even works over SSH.

Re: What Is Vim?

#59
post #14

I love this take. I was a die-hard Vim/Neovim zealot... but these days I absolutely love the ecosystem of tools that support normal mode. For so long hand-cramping emacs keybindings were sort-of-standard-in-a-few-places. If you're not convinced vimming is the best way to interact with your editor, you probably haven't seen a really proficient vimmer.

And meanwhile in every thread or article about vim, it is very rare to mention remapping Caps Lock to Escape (or the other lesser IMHO lesser options ) even though one third of user do it. The other two third are deluded tool fetishists that are ready to suffer that their most important key is the furthest away from the home of row because "you get used to it" even if that's just an unfortunate historical accident. I would have not stuck to vim at all if not for this one trick and I suspect that's the main reason behind many dropouts

Re: What Is Vim?

#60
Yet another article about vim that does not mention remapping Escape even though it's a dumb historical accident that the most important key is the furthest away from the home row.
Post reply on HN