OkyDoomer · 2022-06-14 19:53
[deleted] · 2022-06-14 20:23
[deleted]
plm314 · 2022-06-15 02:16
Thank you!
arthurno1 · 2022-06-15 05:12
I am quite sure Emacs "GUI mode" is not the problem, since Emacs is pretty much a plain x11 window if you turn off menubar, toolbar and scrollbars, and so is every terminal emulator as well. As a matter of fact, Emacs GUI is in principle a terminal emulator with better API and scripting language than your standard VT like xterm.
> every now and then emacs gets stuck in a busy loop
Sounds more like EXWM problem than Emacs problem, and that is why many people don't want to run main Emacs and X11 manager in the same process.
> Until a year or so ago, when i started noticing my X11 Emacs instance consuming considerably more RAM
Yes, there was a memory leak. Emacs used to eat up all the RAM available, for me, it used to eat all 32 gig ram until it almost crashed the entire system. That is solved since long time now, seems like. I haven't experienced it in over a year.
> I mean, rendering in X11 is not slow in absolute terms, it's perfectly usable in my experience; but, in a terminal? let me tell you, it's fast, an a real pleasure to use.
Fast in which sense? I don't perceive Emacs sluggish when it comes to displaying anything. Specially not the latest builds from the git master. What people perceive sluggish is completions with lots of candidates and when it comes to text processing. Kitty won't help there since it is all done in Emacs lisp runtime. However, native compiler *does* help there.
By the way, a virtual terminal is just another X11 window, just like Emacs X11 window. It may be that Kitty is faster due to GPU acceleration, but in essence what you call Emacs "GUI" is just a glorified terminal. It is even a character-based renderer like terminals, but we don't have to use ugly VT sequences.
It is probably more fair if you compare Emacs in something like xterm or gnome-terminal or similar with Emacs "gui" mode.
I mean, don't get me wrong, use Emacs whichever you like, it is just cool if people are using it different ways, just be careful when you speak in absolute terms. Emacs is not a GUI program in "normal" terms like your other standard GUI editors, and certainly not even close to those based on Electron, just something to have in mind when you speak about gui/terminal etc.
[deleted] · 2022-06-15 05:39
[deleted]
eli-zaretskii · 2022-06-15 16:12
> A point worth making is that running Emacs with kitty as a graphical frontend is, for practical purposes, very close to running Emacs in "graphical mode"; for instance, kitty has background transparency, uses the same font rendering engine (HarfBuzz) as X11 Emacs, and it's perfectly able to display things like emojis; it just does all that faster!
That is not really true. Kitty indeed uses HarfBuzz, but, being a terminal emulator, it doesn't give Emacs control on how complex text is shaped, and so all the rich and flexible machinery of so-called 'character compositions" in Emacs is useless with kitty (as with any other terminal emulator). Moreover, kitty has its own ideas about what's right and what's wrong regarding display of special characters, and some of those ideas get in the way of Emacs display, for example where emoji display is involved. For details, see the kitty item in `etc/PROBLEMS`.
Bottom line: no matter how hard you work on setting up a terminal emulator for Emacs, it will never be as feature-rich as GUI display.
So caveat emptor!
P.S. As for slowness of GUI display: I don't know what you are talking about.
bitwize · 2022-06-16 00:46
> Yes, there was a memory leak. Emacs used to eat up all the RAM available, for me, it used to eat all 32 gig ram until it almost crashed the entire system. That is solved since long time now, seems like. I haven't experienced it in over a year.
Ah, so it recently still Eventually malloc()'d All Computer Storage? Nice to see the old spirit being kept alive.