Though it's made great improvements in recent years, GNU Emacs, the vanilla package, is more of an unrefined platform than a more finalized product that competitors like VSCode are. SpaceEmacs is closer to such a refined product, though it's aimed at Vim users (with the 'evil' Vim-support package being front and foremost). I am not currently aware of a kind of "best-of-emacs" distribution that focuses on putting Emac…
https://github.com/bbatsov/prelude
Toward a “modern” Emacs
281–290 of 539 posts
Re: Toward a “modern” Emacs
#282Earlier quoted context omitted.
>On a side rant, I really dislike how a lot of websites have normalized “create an account on a website” to mean “Sign up for receiving a plethora of emails about everything the website and its creators are up to these days” Hear, hear. If I get an email from a company whose newsletter I didn't sign up for, I immediately unsubscribe... but I really shouldn't have to.
One of the greatest parts about owning my own domain is using different email addresses for these random websites that want to blast me with newsletters. That way, I can just redirect spambotscrapinghn@snazz.xyz to the trash if they sold my email address or I start getting spam to that address. You can do the same thing in Gmail with the +, but some websites filter those out or don't allow them.
Re: Toward a “modern” Emacs
#283Earlier quoted context omitted.
Well, Eclipse has had practically two decades of vi/emacs users shitting on it and yet it is still popular enough to warrant an entire conference. https://www.eclipsecon.org/2020
Isn't Eclipse basically the modern Emacs? It's a plugin management system that happens to be shipped with a set of plug-ins targeted at serving as an IDE, written in Java instead of Lisp.
Ah, but you miss its hackability aspect by virtue of being a lisp runtime. I wouldn't say eclipse is anywhere close to "hackable" as emacs is.
Just run C-x b RET and you have an elisp buffer to manipulate the state of the entire editor. It allows for superfast iteration, compared to the plugin development cycle of other editors. Though, vscode/javascript has definitely made it much closer to what is possible in emacs.
Re: Toward a “modern” Emacs
#284Earlier quoted context omitted.
> Surprising undo model I tend to get surprised by this complaint - especially in the article where undo-tree was recommended as an alternative. Both the Emacs undo and undo-tree are "surprising" models in that very few standard editors support anything beyond the most basics. Personally, I've not had trouble with Emacs's undo (beyond it not visualizing it). Switching to undo-tree may be OK, but it's still surprising…
I don’t wish to do a point-by-point rebuttal as you’re entitled to your view — just that it misses the perspective of a large fraction users. As for me, I’m fairly happy using Emacs Doom. > While I agree that a convenient way to download things from MELPA would be nice, I hardly see not having it as a barrier. Most people new to, say, Visual Studio don't start with "How do I download plugins". I think this statement…
Note that I'm referring to Visual Studio, not VS Code.
In my last job, we didn't use any plugins with Visual Studio for a bunch of years before one developer convinced the rest to use Resharper.
> Almost everyone using a text editor is using it for purposes which would definitely be helped by task-specific enhancements (plugins which are typically much easier to get in other editors/IDEs)
I find this statement untethered from reality. I think this gets to the crux of much of this discussion. There seems to be an implicit assumption that Emacs exist for writing code (hence the comparisons with VS Code, etc).
I think if you poll most Emacs users, while programming will definitely have more weight, a lot of people use Emacs for all kinds of things unrelated to programming: TODO management, document authoring, writing emails, etc. Most of my Emacs usage in my first job was simply editing text files, not programming. This is in line with most non-SW engineering jobs: They need text editors, but not plugins. Over 95% of my home usage is non-programming related.
So when you imply almost everyone using a text editor is using it for purposes where they will want to look for plugins, that's simply far from the truth. Until recently, most people who used text editors used Notepad (the default Windows one), and I've never managed to convince a Notepad user to use anything more powerful. Nice plugins would not sway them.
While Emacs is heavily used by some programmers, I do not think it is the aim of Emacs. It is a general purpose text editor, and a platform for writing text oriented apps.
Re: Toward a “modern” Emacs
#285The article makes some interesting points, to me, though, I think the Emacs devs need to have a discussion with themselves if they even want to go here. Here's what I see as an outsider if I'm a Windows users and want to give this great emacs editor I've heard so much about a try: First off, I search for emacs, I land on a page with a Windows link. I click that link, I get a rant about how Windows is evil. Ok, fine,…
From the Emacs install instructions:
"Nonfree systems
The reason for GNU Emacs's existence is to provide a powerful editor for the GNU operating system. Versions of GNU, such as GNU/Linux, are the primary platforms for Emacs development.
However, GNU Emacs includes support for some other systems that volunteers choose to support.
The purpose of the GNU system is to give users the freedom that proprietary software takes away from its users. Proprietary operating systems (like other proprietary programs) are an injustice, and we aim for a world in which they do not exist.
To improve the use of proprietary systems is a misguided goal. Our aim, rather, is to eliminate them. We include support for some proprietary systems in GNU Emacs in the hope that running Emacs on them will give users a taste of freedom and thus lead them to free themselves.
Windows
GNU Emacs for Windows can be downloaded from a nearby GNU mirror; or the main GNU FTP server. Unzip the zip file preserving the directory structure, and run bin\runemacs.exe. Alternatively, create a desktop shortcut to bin\runemacs.exe, and start Emacs by double-clicking on that shortcut's icon."
Re: Toward a “modern” Emacs
#286Earlier quoted context omitted.
> Surprising undo model I tend to get surprised by this complaint - especially in the article where undo-tree was recommended as an alternative. Both the Emacs undo and undo-tree are "surprising" models in that very few standard editors support anything beyond the most basics. Personally, I've not had trouble with Emacs's undo (beyond it not visualizing it). Switching to undo-tree may be OK, but it's still surprising…
> Although I personally don't recommend it, but have you heard of Customize in Emacs? I have, I've tried it, and it's terrible compared to virtually any other editor's equivalent for editing preferences/settings. It's super hard to navigate and search, it's difficult to figure out the terminology if you don't already know it, it's unclear how various settings affect one another, and IIRC it can actually make changes…
It's probably not hard for someone to do that with Emacs - all the bits and pieces are there. I wouldn't be opposed to this.
> They're both difficult for beginners to get used to, but once you get over the initial learning hump, Vim was always much easier for me to tweak and configure.
At the risk of starting a pointless war, I suspect it may be because Vim just has an order of magnitude fewer features than Emacs does. Many people have wanted Org mode in Vim, and no one has been able to make a good one.
> when it comes to not stomping on one another. Every attempt I've made at getting serious with Emacs has ended in spending hours trying to get two or three extensions I want to use to play nicely with each other
I believe you because this complaint does come up from time to time. I must have been simply lucky that this has been a very rare problem for me. In fact, I often tell people Emacs is great because one can take disparate packages and use them together to get powerful features. To me it exemplifies the UNIX philosophy of combining tools better than most UNIX utilities themselves do. The worst I've encountered is a conflicting keybinding.
> you can do almost anything with it if you learn Emacs Lisp, but it often feels like you must learn Emacs Lisp to do almost anything with it.
I view that as one of the biggest myths. I was a power user for about a decade before I learned to even write a loop in Emacs lisp. The most I knew was setting the value of variables. That's enough to be a power user.
Now that I know Emacs lisp, I don't have a burst of productivity compared to when I was ignorant. I've customized to solve a few annoying problems, but I've not had any moments of "Oh man, I wish I knew how to do this all these years."
I don't encourage Emacs users to learn elisp. If I ranked things they should explore in Emacs, there would be a lot of stuff higher on that list than learning elisp (org-mode, etc).
Re: Toward a “modern” Emacs
#287Earlier quoted context omitted.
When I entered a technical University in Spain, all the masters(teachers that have done incredible things on their lives) used either Vim or Emacs. Most "normal" people just used other "more visual" editors. As I learned from the masters I started using more and more both vim for unix tasks and programming and emacs for lisp. Now I use 65%vim, 30% emacs, 5% other editors. Both of those editors are extremely powerful.…
Your reference to musical instruments resonates with me (I play piano) and the fact that emacs call they keyboard bindings "chords" further complements that view. I guess the issue that is being handled here thought is that, just like the piano, the road for those actions to become unconscious is a long painful one. When I started using Golang for work the first thing that I did was buy GoLand from jetbrains. It just…
Re: Toward a “modern” Emacs
#288Earlier quoted context omitted.
Personally, out of those I've only used Ctrl-R in the terminal. I just use the Home/End keys to navigate to the start/end of lines. I was actually surprised to read that Ctrl-E and Ctrl-A would do that. I usually expect Ctrl-A to select all, and don't really expect anything from Ctrl-E. (Though, I'd be surprised if home/end didn't work in Emacs, I'm just saying I've never used those readline keybinds).
Home/End should go to the start/end of the file, not the line. Oh you’re a Windows or Linux user? Too bad, now you need to get used to modern key bindings like OS X has.
Get out of the apple cult.
Re: Toward a “modern” Emacs
#289Yeah definitely ignore all the seasonal requests for the latest fads, and just focus on the last paragraph. I think the post author agrees, hence the sarcastic tone. The fact is Emacs does many neat things but is also a giant steaming pile of sh-- tech debt. I'm sure VSCode will get there too as time passes, but older editors simply have a head start in this regard. Emacs needs it's Neovim (which also contributes bac…
emacsclient to an emacsserver on another machine works fine. You'll want to tunnel it over ssh. If the machines don't have a shared filesystem namespace, I suggest writing a small wrapper that translates the file's pathname to what the server needs (whether that's a mounted network filesystem or a tramp string or whatever).
Yeah after a bunch of dumb stackoverflows said it was impossible because it uses a unix domain socket (eyeroll), I tried that.
> If the machines don't have a shared filesystem namespace, I suggest writing a small wrapper that translates the file's pathname to what the server needs (whether that's a mounted network filesystem or a tramp string or whatever).
Err but I don't want to try to align the file systems at all. I want the server to do all the work so the client is just doing humancomputer IO.
Re: Toward a “modern” Emacs
#290I actually had been working on a config for noobs. Which basically make it feel like Atom. I think having a choice between that or standard when you start Emacs could be a win.
I also agree that the mouse UX should be modernized. It's just bad, I mean, I barely use the mouse, but also the mouse UX is crippled so I don't want to use it.