Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Alternative to Emacs with undo-tree functionality?
5 points by HexDecOctBin 4 hours ago | hide | past | favorite | 8 comments
I have been using Emacs for about 10 years and am getting tired of its idiosyncrasies and performance hiccups. I tried a bunch of alternative editors with scripting support (most recent being TextAdept) but none of them seem to have a native Undo-Tree [1] features or an API powerful enough to build it. So, I am asking here: are there any non-Electron based editors with a reasonably decent scripting layer or a plugin system, and Undo Tree functionality.

PS: I know that Vim has it, but I've never been able to get comfortable with Vim and other Vim-like editors.

[1]: https://github.com/casouri/vundo






> performance hiccups

I am sure you have tried all these, but just listing them if you havent:-

1. lib-gccjit native compilation

2. GCMH

3. explain-pause-mode

4. Buy a new PC

5. Compiling emacs with -O3 for your own hardware

6. --with-x-toolkit=lucid

Please dont abandon emacs in haste. It was home for 10 years for good reasons.

Would somebody please explain to me how 'casouri/vundo' compares to the semi-abandoned 'emacsmirror/undo-tree'?


I created an account just to echo what's already been said. There's been some good reasons already given on why you should stick with it. These are mine. Don't give up on Emacs. You've spent 10 years investing in it and making it your editor, so invest a bit more and ask about those specific idiosyncrasies. Investigate those performance hiccups. Get on the mailing list. Ask (and answer!) questions on SO and emacs.SE. Thoughtfully engage with the community.

There's also been some good advice on dealing with your performance hiccups. I'd like to add that you should look at what packages you're running and what you're loading from your init file. In my 30ish years of experience using Emacs (omg, yes 30 :(), negative performance has almost always been directly related to packages, and not Emacs itself. Case in point... in the early 90s I was having issues with syntax highlighting multi-megabyte (as in more than 1 and less than 10) files. Changing font locking (syntax highlighting) to use this new fangled "lazy-lock" package fixed all my issues. I don't think I've had a performance issue since. So, look at your init file. Cut some chaff out of there. Got a fancy VCS front end? Don't use it for a couple of weeks. Performance issues go away? Submit a thoughtful bug report; help yourself and others.

If you do want to switch, do it. But give VIM another try, and specifically Neovim. Personally, I recently challenged myself to do a "Lua-only-no-arrow-keys Neovim" and I've been loving it. I've used vi/VIM as long as I've used Emacs, but I'm not by any stretch a "power user". So, maybe I've had a bit of a head-start being comfortable with movement and selection, etc. But everything else has made migration easy. The online resources, the inline help, the package ecosystem; all of it. Even discovering the "toy" packages has been fun. Want ducks wandering around your active buffer? Yeah, Neovim has that.

"IDE" fads come and go, myself and many others on HN can probably give you quite a list, but as far as editors go Emacs and VIM/Neovim are in a class by themselves. Take advantage of what they have to offer, even if it means diving a bit deeper.


I'm also in the emacs camp, but no-one seems to have addressed your undo-tree requirement in the comments I've seen!

There seems to be an undo-tree vim package that looks like what you want here[0] so you could check that out?

[0] https://github.com/mbbill/undotree


I think Linux is a good alternative for an operating system, but if you really dont like it then maybe try windows.

There are alternatives to Emacs. Unless you want Emacs :) Architecture is what makes Emacs Emacs. Sure other scripting languages are Turing equivalent to eLisp. But there be tarpits.

It is not just lisp technology, it is four decades of developers (excellent and not so excellent) committed to improving the tooling within a framework fundamentally designed for developers to improve tooling. VS Code was designed to be user friendly. VIM to be done. Stallman never intended Emacs to be either. TANSTAAFL. Good luck.


Epsilon editor from https://www.lugaru.com/

Stable and fast with EMACS-style behaviour and key assignments.

Has C-like extension language named EEL that you could convert / re-write the vundo tree in.


Does it support syntax highlighting for modern languages? What about having multiple languages in one file (.tsx or .heex, for example)?

10yrs is a lot of time ...give vim another try :)



Consider applying for YC's W25 batch! Applications are open till Nov 12.

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

Search: