4 ms·
I thought it will be a criticism how everything seems off with the Emacs GUI from the copy-paste to the font rendering to the way scrolling is done, etc. I'd gu
by fierarul 6y ago
I thought it will be a criticism how everything seems off with the Emacs GUI from the copy-paste to the font rendering to the way scrolling is done, etc. I'd guess it managed to be so cross-platform by re-implementing everything, kinda like Java Swing but with less care for design.
Now I understand how having a scriptable and text-based foundation would help with accessibility, just Emacs wins no UI contest.
- hpfr 6y agoI don't know if I'd call it reimplementation when the original Emacs is older than DOS and GNU Emacs, still maintained today, is older than Windows (1985). Emacs's keybindings, font rendering, and scrolling were just as valid then as any other approach. Let's at least avoid comparisons to Swing :). You can bind copy-and-paste as well as any other text wrangling functionality to whatever you want and there are ways to make it behave like other platforms without too much difficulty. But why hamstring Emacs' copy and paste by limiting it to the simplistic version we're used to when you can copy to multiple registers and have a searchable history of copied text? Font rendering uses Harfbuzz in the latest version and is quite good in my opinion, there's even color emojis. Scrolling is certainly better than any terminal emulator I've used, although there's no smooth scrolling. I guess everything is off if you're comparing it to a browser, but modern browsers aren't exactly paragons of UX either. But if you're comparing prettiness options like these, yeah, Emacs loses to VS Code. All Microsoft had to do was build a text editor on top of a browser engine to get those features :). I'd say Emacs is more extensible, though. Lisp machines and all
- fierarul 6y agoI understand, but 35 years have passed, no need to stick to the original implementation that long. I'm a super basic user and nowadays basically have Emacs open all day just for org-mode. Nothing else. To me it seems a terrible text editor and has an UI that's foreign on macOS and Ubuntu. It's unclear to me under what OS/Window manager/etc Emacs fits right at home. It seems out of this world. I can imagine there may be some configuration that would fix some of these problems, but I just use Emacs as it comes out of the box.
- Jtsummers 6y agoA reason to stick so closely to the original model is that it has lasted 35 years. There are few other programs that have lasted as long without feeling an urgency to change with the times, and mostly by the base system being similarly stubborn about changing or by being incredibly simple. The fact that it's, essentially, the same on every OS I use it on is another selling point. I bring my .emacs file and make minor tweaks for different OSes (due to where files/programs are if absolute paths or relative paths in the user home directory are different). It always works the same once I've made those small changes (and they are small, and once done my Windows .emacs is good on any Windows box). Again, there are few other programs like this. At a minimum, you often end up with subtly different keybindings (macOS using the command key, Windows using control, and Linux using control or alt) and subtly different layouts that break workflow and habit.
- newen 6y agoYep! Main reason I use emacs is that I can use just about the same workflow when I'm programming in python, C++, etc. in different environments like windows gui, windows WSL, linux GUI, linux terminal, remoting through ssh, ssh into docker container, etc.
- taeric 6y agoFor those of us that have used emacs for a long time, it is the other items that feel foreign. And, quite frankly, I'm not sure I'm missing anything from the others. It is annoying that Apple has a command key that I have mapped as Meta. Since that means if I try to copy something in Firefox, closed tab. That said, why are the keyboard shortcuts in so many other applications so destructive? And crappy? Browsers could be forgiven if they were just for viewing, but you edit in them a lot nowadays, such that the browser not having easily customized keyboard bindings is a laughable insult for user centric design. (Do they even still pretend to support user stylesheets anymore?)
- mrob 6y agoScrolling is broken from the average user's point of view because it moves the cursor. If you're typing something, and then scroll to reference some other part of the document, you can't just start typing again after finding the information you need. You have to manually restore the cursor position or you'll end up typing in the wrong place. Unlike pretty much every other text editor, Emacs's concept of a cursor is something that lives in screen space, not document space. It's stuck in the VT100 hardware cursor paradigm.
- eatmygodetia 6y agoIn Emacs's defence, it didn't reimplement everything so mich as implement it first. When there's very little prior work to go on, often parts of the design won't be great, and then it becomes hard to move away from them.
- fierarul 6y agoInteresting how somebody else claimed about the same thing. Yes, but eons have passed, things are different. Should everything else mold to Emacs or should Emacs fit into the overall OS/window manager/etc. Maybe Emacs really is supposed to be an OS. I'm now wondering if there's a way to boot straight into Emacs. Clearly we could have a slimmer kernel /loader for that. :-)
- rpdillon 6y agoI think a lot of folks value having their apps 'fit into' their OS. For me, I see the constant churn in desktop OS patterns as tiring and essentially useless. Emacs provides a wonderfully consistent interface no matter where I run it. I can see how it seems foreign to others, but it is consistent. For me, that's a fantastic trade.