News for hackers. Stuff that matters.
Re:Emacs Is Not Just an Editor by dinkleberg on Sunday March 12, 2023 @08:56PM (#35129072)
If you're a vim user but interested in trying out Emacs, I'd highly recommend Doom Emacs: https://github.com/doomemacs/doomemacs. I had been using neovim as my main editor for a while, but the vim bindings (evil) in Doom Emacs are excellent.

It was a lot to take in at first, so I went back to neovim. But I started using org mode more and more until I finally just went all in on Emacs. Now I understand that the editor war is pointless. Bringing vim + emacs together is bliss.

Re:Emacs Is Not Just an Editor by gnulinux on Sunday March 12, 2023 @09:19PM (#35129345)
Spacemacs comes with evil-mode (emacs vim emulator) default and it's very feature rich, so I think for someone coming from vim it'd be ideal. I personally use spacemacs with evil-mode disabled (I don't do vim, never did, have no plans on learning it) and I absolutely love. It's just a bit unstable but overall great operating sys... ehm editor.
Re:Emacs Is Not Just an Editor by MikusR on Monday March 13, 2023 @03:53AM (#35132464)
Spacemacs is also dead. Last release was 5 years ago. Since then emacs has had many significant updates.
Re:Emacs Is Not Just an Editor by Trattue on Monday March 13, 2023 @05:47AM (#35133380)
Nowadays the git repository itself is used for installing and updating spacemacs, not the 5 year old releases on github.
Re:Emacs Is Not Just an Editor by gnulinux on Monday March 13, 2023 @10:38AM (#35136269)
Not true develop branch is updated besides even the dead version is extremely usable. I use develop branch daily for development.
Re:Emacs Is Not Just an Editor by imran-iq on Sunday March 12, 2023 @09:42PM (#35129594)
Honestly the biggest blocker for me is just how slow emacs feels compared to (n)vim. Using both in a gpu accelerated terminal emulator, emacs just feels slower especially on larger files.

Granted, I have not tried to use emacs once the jit landed in 28 (or was it 29?). But it's something I really would really like to use since instead of having a different application for irc/mail/etc it could all just be emacs.

Re:Emacs Is Not Just an Editor by SirensOfTitan on Sunday March 12, 2023 @10:49PM (#35130332)
Emacs is my daily driver, and even with JIT on an M1 mac I get a lot of stutter and freezes with LSP autocomplete. JIT definitely improved things [especially on my x86 machine], but I'm still unhappy with the slowness. Outside of LSP it's incredibly speedy.
Re:Emacs Is Not Just an Editor by Barrin92 on Sunday March 12, 2023 @11:08PM (#35130478)
I had the same issues with LSP and I switched to eglot and it's much less sluggish for me. I don't know why that is or if it's a general solution but worth giving a shot as eglot is built in I think in the newer versions.
Re:Emacs Is Not Just an Editor by trissylegs on Monday March 13, 2023 @02:36AM (#35131925)
Its because Emacs doesn't really have a way of performing asynchronous io. So lsp ends up blocking on the external server waiting for a reply.

It been the main pain point for addung smarter autocomplete for years now.

Re:Emacs Is Not Just an Editor by gpderetta on Monday March 13, 2023 @04:14AM (#35132617)
Emacs does have the ability to do non-blocking io though. Not sure if lsp-mode uses it and if not, why not.
Re:Emacs Is Not Just an Editor by unhammer on Monday March 13, 2023 @05:32AM (#35133242)
It actually does; support for async io has been there for ages. If you've ever compiled or run git push or run an external command like M-! sleep 10 & RET from Emacs, that's using async io. For things that end up calling an external command like that, the code will typically use `start-process` or `make-process`. For network io, there is `url-retrieve` with callbacks. For tasks that need to be run via emacs-lisp (e.g. sending emails, compiling elisp), there is John Wiegley's `async` library.

However, lots of packages simply don't use these affordances.

Also, for LSP, there's additional challenges since lots of json needs parsing for each request, but IIUC Emacs can't currently process the messages to/from the server while the UI thread is busy (the LSP server can do lots of work while UI is busy, but the communication is stalled until UI is done). Though it seems things will be improving there, hopefully this'll get upstreamed soon: https://www.reddit.com/r/emacs/comments/ymrkyn/async_nonbloc...

Re:Emacs Is Not Just an Editor by db48x on Sunday March 12, 2023 @10:55PM (#35130374)
The slowness of Emacs, or lack thereof, tends to be greatly dependent on the exact configuration in use. Out of the box Emacs should be as fast or faster than any editor you wish to compare it to, but the more fancy packages you install the more likely it is to become sluggish and glitchy.
Re:Emacs Is Not Just an Editor by WalterBright on Sunday March 12, 2023 @11:03PM (#35130434)
My editor, a descendant of MicroEmacs, was designed to be fast on an IBM PC. Making it, well, lightning on a modern computer.
Re:Emacs Is Not Just an Editor by lvncelot on Monday March 13, 2023 @02:53AM (#35132042)
I'm using a Macbook (intel) for work and a linux machine (xorg, not wayland) for hobby related stuff. It's insane how much snappier and instant everything feels on the linux machine. Every time I'm tinkering with my config on my private machine, I'm let down when using it on my work machine as I need to dial down things I've enabled because emacs has gotten really sluggish again.

I've read similar experiences from people all around the net, but my linux machine is also a bit more powerful than my macbook, but honestly not enough to explain the worlds of difference between the two.

Nevertheless, on both machines I've noticed a substantial speedup with the JIT you've mentioned, so maybe give it another try?

Re:Emacs Is Not Just an Editor by ParetoOptimal on Monday March 13, 2023 @03:45AM (#35132415)
I use vmware with linux on my m1 for development because performance is so much better.
Re:Emacs Is Not Just an Editor by jhoechtl on Monday March 13, 2023 @03:26AM (#35132294)
With version 29, large file support has been very much improved. Not marginally but orders of magnitudes. But differently: Editing large files is now (very) usable.
Re:Emacs Is Not Just an Editor by ParetoOptimal on Monday March 13, 2023 @03:43AM (#35132407)
Large org files and tangling of large org files too. My literate config went from 6s to 0.25s.
Re:Emacs Is Not Just an Editor by shivekkhurana on Monday March 13, 2023 @05:34AM (#35133249)
I use both Emacs 28 with native compilation and Nvim with Neovide.

Emacs is not as snappy obviously. But it doesn't lags either. It's just not fast.

Re:Emacs Is Not Just an Editor by thejammahimself on Monday March 13, 2023 @04:36AM (#35132781)
I actually used to hack on vanilla Emacs but then I switched to Doom Emacs. Why? Because, like many others, although I am interested in configuring my editor, I am also interested in getting on with my work. With Doom Emacs, if I want to install support for a certain language, I need only uncomment a line in one of the config files, run doom sync, and then support for that language is installed. But you're not really sacrificing any customisability so you still get all the advantages of working within Emacs.