Live data from Hacker News

Batteries included with Emacs (2020)

karthinks.com

161–170 of 228 posts

Re: Batteries included with Emacs (2020)

#161
post #45

For people who ask, "why use text-only editors like vim or Emacs, when I can use a full GUI IDE?": One of the reasons I haven't seen mentioned much is: I'm a touch typist, and I hate having to switch between mouse and keyboard! I have to take my attention off the screen. Slows me down. Disturbs my concentration. With Emacs, I can work for hours without ever having to hunt for the mouse, or without even having a mouse…

To add to this: yes, full blown IDEs have shortcuts but they are hard to explore, counter-intuitive and hard to extend.

I think JetBrains has a great system to it.

cmd+shift+a opens a command palette with every possible command in the IDE. It matches as you type the name of an action, and every action has a keybinding shown to the right (if it exists).

Every relevant button generally has keyboard shortcuts right on them.

And pressing cmd+e opens a list of gui interactions you've made so you can repeat them (things like focusing buffers, clicking on a file in the project file tree, etc.)

Basically, if you know cmd+shift+a, you're golden for learning commands and key shortcuts.

In comparison, emacs/vim are pretty awful. I've done a few tutorials of each and while I could have spent more time learning them, JetBrains makes it stupid easy to start learning the editor.

Re: Batteries included with Emacs (2020)

#162
post #19

Earlier quoted context omitted.

Conversely I feel I wasted my time learning emacs and moved to vim eventually. I also only religiously use a subset of vim functionality which is fulfilled by most of the vi equivalent editors. This turned into a massive advantage for me as I spent most of my career dotting around random Unix and Linux machines doing admin work. Vi derivative is always there and the muscle memory was ready to go. One of the key thing…

FWIW if I can ssh I can use emacs tramp to edit remotely, if there's latency lag, it seems similar to using local editor.

I've done SSHFS to fairly good success for this too.

Re: Batteries included with Emacs (2020)

#163
post #45

For people who ask, "why use text-only editors like vim or Emacs, when I can use a full GUI IDE?": One of the reasons I haven't seen mentioned much is: I'm a touch typist, and I hate having to switch between mouse and keyboard! I have to take my attention off the screen. Slows me down. Disturbs my concentration. With Emacs, I can work for hours without ever having to hunt for the mouse, or without even having a mouse…

IntelliJ has a M-x equivalent and IdeaVim covers text editing. I literally never touch my mouse when using the IDE. I really don't think this is a compelling argument.

Re: Batteries included with Emacs (2020)

#164
post #49

Earlier quoted context omitted.

I find it amazing how common it is for programmers to not be touch typists (I mean typing without looking at the keys). Like, isn't that something you pick up by the sheer amount of keyboard time?

Touch typing isn't about writing without looking at the keys, that's something that pretty much every dev I know does. It's about writing in an efficient way that minimizes finger travel, and zeroes palm and writ movement. There's a reason F and J have bumps on them, or why we have two shifts, etc. For anyone interested into relearning how to type efficiently I want to recommend this free website full of tutorials an…

to operate and use a tui like emacs with confidence and start typing at the speed of thought:

consider putting a photo of your keyboard next to your screen and painting the keyboard a nice uniform black.

your body-mind's intelligence will swiftly learn to position your hands and coordinate your/its fingers without adding things to unlearn later.

the photo of your keyboard near where you are focusing when looking at the screen makes a huge difference, one could start with just that.

Re: Batteries included with Emacs (2020)

#165
post #117

Earlier quoted context omitted.

And thanks to recent developments in cross-editor infrastructure projects like tree-sitter and LSP, editors like VSCode, Emacs, Sublime Tex, and even public nuisances like vim can all advance at the same time and benefit from each other's development work in areas where the editors aren't differentiated. We're very close to a world in which we don't have N implementations of finding the start of a C function or figur…

Somehow, Microsoft managed to invent LSP for VSCode and then abandon some parts of it just a couple of years later -- e.g. python language server is dead, pylance is there instead, closed source, VSCode-specific and with prohibitive license. Most language plugins in VSCode don't use LSP anymore IIRC.

While it may be true that pylance is closed source and vscode specific, pyright[1] is MIT. Pylance does appear to still be a language server as well. As far as I know, most language plugins still use LSP, including Typescript/Javascript, Rust, and Go.

[1] https://github.com/microsoft/pyright

Re: Batteries included with Emacs (2020)

#166
post #3

I think many Vim users look at Emacs and go “Hmm, Emacs is a bit more clunky when I use Emacs to do the exact same things I do in Vim. Therefore, I’ll stick to Vim.”

I mean. Emacs has the ability to do basically what vim does. Evil mode is really nice (though I can never get used the = register evaluating elisp instead of vimscript). What kills me about emacs is the startup time. Breaks my flow when I'm jumping around and need to edit something quickly. Though I'll admit that doom provides a very nice environment for when I want to play around with some lisp.

emacsclient can also talk to multiple emacs-servers by name. this is awesome to keep different sets of buffers available.

also, there's zile.

Re: Batteries included with Emacs (2020)

#167
post #49
post #45

For people who ask, "why use text-only editors like vim or Emacs, when I can use a full GUI IDE?": One of the reasons I haven't seen mentioned much is: I'm a touch typist, and I hate having to switch between mouse and keyboard! I have to take my attention off the screen. Slows me down. Disturbs my concentration. With Emacs, I can work for hours without ever having to hunt for the mouse, or without even having a mouse…

I find it amazing how common it is for programmers to not be touch typists (I mean typing without looking at the keys). Like, isn't that something you pick up by the sheer amount of keyboard time?

I actually like it being a touch typist? Using the mouse gives me more movement and I like it. From my observation, there also seems to be a very high correlation between touch typing and carpel tunnel as well.

Re: Batteries included with Emacs (2020)

#168
post #3

I think many Vim users look at Emacs and go “Hmm, Emacs is a bit more clunky when I use Emacs to do the exact same things I do in Vim. Therefore, I’ll stick to Vim.”

I mean. Emacs has the ability to do basically what vim does. Evil mode is really nice (though I can never get used the = register evaluating elisp instead of vimscript). What kills me about emacs is the startup time. Breaks my flow when I'm jumping around and need to edit something quickly. Though I'll admit that doom provides a very nice environment for when I want to play around with some lisp.

I use vanilla Emacs with 145 packages and my startup time is 0.9 sec on a 6 y/o thinkpad. With deferred evaluation, there is no need to use a daemon.

Re: Batteries included with Emacs (2020)

#169
post #158

Last time I was coding, I used vim+tmux. I found terminal emulation in emacs slow and buggy. I do always have a spacemacs window open, but I only use it for magit.

FWIW, I use emacs exclusively inside tmux, starts in ~0.3ms for me with more than 40 external packages.

Re: Batteries included with Emacs (2020)

#170
BTW. You do not need typing skills with Emacs, because it has an autocomplete. And it is subject and writer specific. Firstly you load some text containing words you want to use in another buffer and then you bind M-X hippie-expand to some convenient key. I use (global-set-key (kbd "å") 'hippie-expand) because Swedish å is useless in Finnish keyboard.

This works even better with languages with varying form and spelling. Finnish Android autocomplete gives mostly annoying and mispelled suggestions, but in Emacs you can use your own writings as the sublime storage of words.

Post reply on HN