Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I found I am unique, I never learned to touch type but at the same time reaching for a mouse really slows me down. I realized years into using Vim that the reason I love it so much is that I can do all my editing from the keyboard and because it is a deterministic state machine (modal) I can have a mental copy of the editor running in my head while I'm not looking at the screen. This is important to me because I look at my hands while typing. When I use GUI editors like VSCode it pops up all kinds of fancy bells and whistles that when I return my eyes to the screen it no longer matches the mental model I had in my head and I have to do a huge context switch to re-sync; just like how I have to context switch when I reach for the mouse. Am I the only one has this method of typing/editing? Praise the creators for Vim and Emacs editors.


When I was implementing a toy editor I read the neovim source code and to no one’s surprise the modes are just long switch statements - when in mode M and input key is K, do some action. It’s a simple program and your mental model is probably close to the vim source code!

For learning a lot of cool stuff about implementing my best book is The Craft Of Text Editing

http://www.finseth.com/craft/


I also find moving hand to mouse is a really frustrating context switch, so I ended up getting a roller mouse (https://www.contourdesign.com/product/rollermouse-red/) to use along with my main mouse. The idea is for lots of small things my hands stay at the keyboard but my thumbs can move the mouse so I don't incur a context switch.


All these friendly gooey things want to help you by popping up this kind of stuff. But luckily, some of them let you turn it off.

I've told IntelliJ and Eclipse and VSCode to please stop popping up suggestions, and let me type Ctrl+space to summon them.

Aaaah. Much better.


Drives me crazy that these types of programs always want to fill in the closing bracket for you. Like, as soon as you type an opening bracket, it sticks a closing bracket there. Completely interrupts my train of thought, why would I want the editor to assume it knows what I want and write things for me? Maddening. Especially something that messes with my internal thought process around the syntax "tree" that I'm trying to work out. I always disable it, but I have no idea how people put up with that. In Emacs on the other hand, it just highlights the matching bracket for you, so you easily know to type when you need it. Accomplishes the exact same goal without being so intrusive. I think there's a UX lesson to be learned there.


Very interesting. People are different. While I don't like this auto-complete popups, I do like the auto-pairing of quotes and parentheses and brackets of various kinds. Once you know that your editor does it, it's easy to predict and so I'm happy about having to type less.

(But getting out of the auto-paired thing could be improved. In IntelliJ, when entering Java code, I usually type cmd-shift-return to complete the statement, and that does what I want. It does different things in different situations, but it's easy to predict what it does.)


You are unique, but not in this respect. I write the same way, with a mental model of the editor state an integral part of the coding process.


Honestly stunned. Thanks for sharing.


I'm afraid you are the only one




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: