Live data from Hacker News

Why I can’t stop using Vim

kornerstoane.com

151–160 of 169 posts

Re: Why I can’t stop using Vim

#151
post #20

First you'll learn how to orientate around text quickly using normal mode, then you'll start playing with tabs, splits and buffers to search between multiple files, and then you'll start using registers to save phrases and regular expressions to search directories. At that point you'll never want to leave Vim again. :wq

Multiple files is exactly where Vim falls short to me. Sublime and Emacs do that much better, while in Vim it never feels natural. It seems the Vi-way is to exit, and start a new one from the terminal (which is slow for most projects but great for editing /etc/hosts).

Re: Why I can’t stop using Vim

#152
post #17
post #4

"/ for searching (really, no other editor has made it this simple)" Well, it's really esc-/ which is no easier than ctrl-f. Or am I missing something? Edit: Same with "1G to go to the top of the file, G to go to the bottom" - esc-1-shift-g vs ctrl-home. Same with ctrl-end.

I think you're using the editor's modality wrong. ESC is not used to exit from Insert mode. ESC is used to switch from any mode back to Command mode. In fact Command mode is also called Normal mode. You should spend 95% of your time in Normal mode and use the other modes when you need them. I suggest binding `kj` to ESC since it allows you to quickly make a change and continue browsing your code. Take the following s…

Haven't written many blackjack games?

Re: Why I can’t stop using Vim

#153
post #123

> and ‘Esc’ to move around again. For me personally this is the reason I stopped using Vi(m) except for occasional config file editing on unfamiliar servers, and started looking elsewhere (Emacs) for my goto text editor. I'm not looking to switch, but it genuinely interests me how Vi users put up with the constant need to strain their pinky to switch to command mode.

You've got a couple of options here - I personally have remapped my Caps Lock key to escape (not many downsides, besides limiting my ability to post humorous trolling messages). You can also use Ctrl-[ which I believe essentially sends an escape character to whatever program you happen to be running. Both options should save your pinky!

Ctrl-[ is the ASCII for Esc. Ctrl effectively subtracts 0x40. So:

    Ctrl-A = 0x41 - 0x40 = 0x01 = SOH
    Ctrl-I = 0x49 - 0x40 = 0x09 = Tab
    Ctrl-M = 0x4D - 0x40 = 0x0D = CR
    Ctrl-[ = 0x5B - 0x40 = 0x1B = Esc
    Ctrl-@ = 0x40 - 0x40 = 0x00 = NUL

Re: Why I can’t stop using Vim

#154
post #132
post #108

Earlier quoted context omitted.

I interpret it as a positive sign when someone downvotes without an explanation (live above). It's a sign they don't understand a topic well enough to refute its main point. I'm sorry if the comment above also caused you to grow indignant. A better response would have been to zoom in at the main argument and say the most important thing there is about it. If you aren't downvoted enough you are probably not revealing…

Please don't post about being downvoted on HN. As the site guidelines say, it never helps and makes for boring reading. Downvoting happens to everybody, and most unfair downvotes are corrected after a while by other users, rendering the complaint even more pointless.

it never helps

I'm not sure how true that is and I might be able to prove it.

(1) One way it could help is: if I could get feedback about where I went astray. That's what I want to know when I'm downvoted. I don't care about a karma point, I care about learning something new.

Which makes me wonder: would it help to ask people explain why they downvoted something -- even if their username doesn't get attached to an explanation that becomes public?

(2) Here's an instance where it actually helped: [1]. Me explaining in [2] why [1] was downvoted (which was at something like -1 at the time) lead into [1] being voted again and [2] being upvoted too for clarifying the situation.

(3) This comment is aligned with HN's own request for providing feedback about what's good and bad for HN comments [3].

(4) You should be alarmed when you see a guilty word like "never" used. Particularly if you are the one using it. It's an alarm that indicates you are going to an extreme to justify a position. If what you say is evidently true, you wouldn't feel the need to try hard to qualify it. Or at least, when I made this argument in [4] people voted 20 points for it (which you dang can verify as an administrator).

(5) These arguments suggest reviewing the site guidelines and it's hard to dismiss them as useless. They could improve HN.

[1] - https://news.ycombinator.com/item?id=7285865

[2] - https://news.ycombinator.com/item?id=7288741

[3] - https://news.ycombinator.com/item?id=7605973

[4] - https://news.ycombinator.com/item?id=7565441

I fully understand if what you've discovered studying downvotes is that dealing with them differently leads into more problems than it does dealing with them with the advice of "don't post about being downvoted". I also understand if you are not willing to deal with those problems now. But saying "it never helps" sounds far fetched. You are claiming there's nothing that can be done about downvotes, ever. That's a strong claim to make, especially in a field that's only 50 years old.

Re: Why I can’t stop using Vim

#155
post #96

Earlier quoted context omitted.

That's too broad of a stroke on what a programmer does with text. It's not just about editing. It's also about (a) moving to the point where you want to edit, (b) moving to an other point right after you just finished editing. Switching between the two becomes harder when you always have to Escape, compared to having direct access to an arrow key. And (c) about editing. Why type an extra character (i for insert) to l…

Yes, but unlike every other reply, I actually answered in one sentence didn't I? The fact that my sentence is difficult to grok for someone who is not already familiar with vim is hardly my fault. But I'll elaborate on your points: > It's not just about editing. It's also about (a) moving to the point where you want to edit This is implicitly part of editing. vim offers more ways to move than any other editor, this g…

I learned a lot about how a vim user thinks and works from this comment. Thank you for explaining.

Re: Why I can’t stop using Vim

#157
post #64

Earlier quoted context omitted.

Knowing how to use a terminal != using a terminal for everything.

I never said that. Anywhere.

Yet you seem to be mixing these things up.

> IMHO if you're a programmer you should know how to use a terminal to the point that you prefer it over most GUIs

Knowing how to use a terminal: Yes, should be required and isn't taught enough. Preferring it for almost any task - no, it depends on the task and it depends on what you're the most efficient with. I have yet to see a clinical study showing that terminal editing leads to performance improvements over proficient use of hotkey based editing with keyboard and mouse. I have nothing against people using it on a project I lead, but I would never make it a criterium.

> Vim and terminal usage is not a "time sink" and it pains me whenever I hear people who consider them selves "programmers" claim it to be.

Again, you're mixing up terminal proficiency with using it as a your main editor, then belittle those who don't agree with you.

> If you haven't learned how to use the terminal yet (or haven't found a use for it) then you aren't a respectable programmer IMHO.

I agree with that, but it's a different point as outlined above.

Re: Why I can’t stop using Vim

#158
post #6

One feature he missed is its not as configurable, and in some situations that is awesome. So you're doing something weird, manually, but I repeat myself because if it was BAU you'd automate the whole process in puppet or similar. The local vim will work more or less like every other vim out there. Can't really say that with emacs. If you're traveling somewhere weird, vim is a great travel companion. Not because it ca…

I think Vim is potentially as configurable as Emacs, but it is harder to do after you get past some basic key mappings and a few plugins.

In all my exploring of Emacs, I never saw a .emacs that wasn't completely tricked out with custom stuff that only works for that user.

Because of this, I believe you are correct - it's easier to work in a plain vi environment since we don't typically trick out Vim like our fellow Emacs users do with their environment.

Re: Why I can’t stop using Vim

#159
post #69
post #32

I went back to Sublime after using Vim for a while but then realized I was going to have a terminal open 24/7 anyway so what's the point? Then I learned how to use a terminal multiplexer and now Sublime and other GUI editors just hinder my workflow. IMHO if you're a programmer you should know how to use a terminal to the point that you prefer it over most GUIs (of course, you should always use whatever has the featur…

I'm not a seasoned user or anything, but I prefer to use Emacs with a GUI rather than in the terminal. It has nothing do with there being more GUI-type things in there - I have things like save-icons etc. turned off. It just feels more like it's own application in GUI mode (if I run it in terminal mode, the Meta hotkey doesn't work as usual, which I suspect is because the terminal is using the alt-key (meta) for some…

Another potential advantage to running from a terminal is that you inherit shell variables that can be used in the editor or in utilities run from the shell. Of course, you can set these for GUI-mode emacs (or vim), but I've found terminal windows and screen a good way of isolating contexts and making sure things are set up appropriately.

Re: Why I can’t stop using Vim

#160
post #123

> and ‘Esc’ to move around again. For me personally this is the reason I stopped using Vi(m) except for occasional config file editing on unfamiliar servers, and started looking elsewhere (Emacs) for my goto text editor. I'm not looking to switch, but it genuinely interests me how Vi users put up with the constant need to strain their pinky to switch to command mode.

I remapped it to 'jk'. I don't think I've seen any vim users using 'esc' key to go to normal mode.

well, I DO use ESC when leaving Visual mode... but otherwise, 'jk' all the way.
Post reply on HN