Live data from Hacker News

Emacs Bedrock: A minimal Emacs starter kit

sr.ht

51–60 of 132 posts

Re: Emacs Bedrock: A minimal Emacs starter kit

#51
post #3

If you’re running emacs 29+ I posit you get less value out of a starter kit or framework than beforehand. Treesitter is baked in for syntax, eglot is baked in for language servers (intellisense), project and tab-bar give you scoped workspaces. use-package is baked in for downloading and configuring dependencies. Modus-themes are also built in now, so you can use modus-operandi and modus-vivendi out of the box. Two in…

treesitter is not exactly "baked in" too well at the moment. There isn't really auto-install/configuration of the grammars and as far as I can tell there isn't even a list of URLs for grammars, you have to supply those manually. There is treesit-auto which isn't quite there yet (why isn't treesit-language-source-alist populated automatically?) Compare with Mason on Neovim which is much closer to "everything just work…

Second that. In detail - IMO the decision of making of every mode a -ts variant is a very bad one and will hurt the ecosystem a lot. Now you have to remap all the major-mods and hooks and god knows what. There is also a huge mess - e.g. go-mode has nothing to do with go-ts-mode, they are completely unrelated and differ in functionality, other that one could assume based on name alone. What if the author of go-mod will decide to support ts, how should he name it, go-ts-ts-mode?

Similar to evil, people will figure it out over time, producing packages similar to evil-collection, but it is again a half-assed step from emacs where I can only applaud to neovim for making right, if brave, decisions. If you have decided that TS is the future, go all-in.

It is also cool how much emacs29 supports, but the quality is often meh. Project.el is an arcane mode, which updates the cache of projects very unreliably and also what it considers a project is a bit magic. Eglot is cool, but again, as everything in emacs, has big tradeoffs - DAP is bound to lsp, which brings in something like 30 packages, including treemacs - why?

In short: I gave my custom config a good run, and the good stuff is good: vertico, marginalia, embark(!!), corfu are pretty cool packages. Elpaca is also very good, doing for emacs the same stuff lazy.nvim is doing for neovim. But once I've descended a level deeper into configuring it for non-lisp programming, I was clearly in for a huge yak shaving. Neovim is for me a better editor for programming, sorry for the rant.

Re: Emacs Bedrock: A minimal Emacs starter kit

#52
Totally curious: is anyone using Emacs seriously on Windows, especially with stuff like LSP?

My personal experience is that most of the new dev tooling is Linux/MacOS only, and maaaaybe sometimes it's ported badly to Windows.

Are people using Emacs with LSPs for Java, Python, for example? Are they solid? Would you be able to use them day to day for software engineering work?

Re: Emacs Bedrock: A minimal Emacs starter kit

#53

How does Emacs (and most addons) run on Windows? I'm tempted to try it out, but knowing the community is (righteously) Unix-fist I'm not so sure it's worth the trouble.

I've been using it for years on windows. Magit is much slower but still great. Some people run emacs inside wsl, and I've done that once or twice to try out unix-only modes, but they were never good enough to convince me to use them.

My life improved a lot when I switched to Doom emacs, which takes care of a lot of emacs stuff I don't know that well.

Re: Emacs Bedrock: A minimal Emacs starter kit

#54

Emacs is a relic, it can take weeks of configuring to get it anywhere near as productive as something like VS Code or Jetbrains IDEs. If you want to procrastinate for a few months it's the perfect tool.

> Emacs is a relic

People were saying that when I started using it, over 20 years ago. Apparently I was supposed to be using Notepad++ or some MS program du jour which no one remembers now. I wouldn't be surprised if I keep using it for the rest of my career.

> it can take weeks of configuring

More like decades ;)

> to get it anywhere near as productive as something like VS Code or Jetbrains IDE

Nope - it's significantly more productive. At least for me - I can't speak for you, but I do seem to be much faster at processing text than any of my colleagues who are using those other editors.

All the configuring is by design. You can set up the editor to take advantage of your strengths and paper over your weaknesses.

Re: Emacs Bedrock: A minimal Emacs starter kit

#55

How does Emacs (and most addons) run on Windows? I'm tempted to try it out, but knowing the community is (righteously) Unix-fist I'm not so sure it's worth the trouble.

One of the lead maintainers (Eli Zaretskii) develops mostly on Windows IIRC. I think you'll be fine.

Re: Emacs Bedrock: A minimal Emacs starter kit

#56
post #22

It seems like a list of nice, but most are kinda opinionated non-essential tweaks (cua-mode) Well this will have the greybeards frothing at the mouth :) that said, `cua-mode` is kinda terrible/half-assed b/c it implements a tiny fraction of what I think most people would consider "CUA". If you want a real CUA-mode use `ergoemacs`. Then Emacs will start to behave like every other GUI since the last mass extinction. It…

> most are kinda opinionated non-essential tweaks "That's just like uh… your opinion man." —"The Big Lebowski", I think ;-) I'm mostly of the opinion that vanilla Emacs has some bad opinions with regards to discoverability and ease-of-use-for-newbies, which is what this starter kit is targeting. CUA-mode is on because without it you're gonna have newbies footgunning themselves super hard right out the gate, and that'…

> I'd love to see what you're referring to

There is Google, you know.

https://ergoemacs.github.io/

It's the biggest thing to happen to Emacs in 30 years. That is presumably why all the beardies ignore it.

I used to know 20-30 totally different editors. That all went away circa 1990 when the CUA UI swept the world.

https://en.wikipedia.org/wiki/IBM_Common_User_Access

All late-era DOS stuff, and Windows >= 3.x, Mac OS X and ~all Linux GUIs are compliant.

I refuse to learn any other editor UI. Life is too short. Comply with CUA, or die in a fire.

Re: Emacs Bedrock: A minimal Emacs starter kit

#57

Emacs is a relic, it can take weeks of configuring to get it anywhere near as productive as something like VS Code or Jetbrains IDEs. If you want to procrastinate for a few months it's the perfect tool.

> Emacs is a relic

It's true.

The thing is, so is Unix.

And yet we use it.

So is macOS because it's a Unix™. So is Windows, it's just a newer relic (from 1993 instead of ~1973).

We don't have anything left that are not relics any more. The relics got good enough that we stopped trying.

Re: Emacs Bedrock: A minimal Emacs starter kit

#58
post #56

Earlier quoted context omitted.

> most are kinda opinionated non-essential tweaks "That's just like uh… your opinion man." —"The Big Lebowski", I think ;-) I'm mostly of the opinion that vanilla Emacs has some bad opinions with regards to discoverability and ease-of-use-for-newbies, which is what this starter kit is targeting. CUA-mode is on because without it you're gonna have newbies footgunning themselves super hard right out the gate, and that'…

> I'd love to see what you're referring to There is Google, you know. https://ergoemacs.github.io/ It's the biggest thing to happen to Emacs in 30 years. That is presumably why all the beardies ignore it. I used to know 20-30 totally different editors. That all went away circa 1990 when the CUA UI swept the world. https://en.wikipedia.org/wiki/IBM_Common_User_Access All late-era DOS stuff, and Windows >= 3.x, Mac OS…

>It's the biggest thing to happen to Emacs in 30 years. That is presumably why all the beardies ignore it.

Clearly bearing the costs of a wrong decision - learn vim keybindings 30 years ago, and use it in every popular editor and ide, including emacs, ever since. Only half-joking.

Re: Emacs Bedrock: A minimal Emacs starter kit

#59

bbatsov's prelude is another nice kit to get started with and learn from: https://github.com/bbatsov/prelude https://prelude.emacsredux.com/en/latest/

Yep, prelude is great. I finally have a common config across all my machines thanks to prelude, for some reason I never got everything consistent enough before.

Re: Emacs Bedrock: A minimal Emacs starter kit

#60

How does Emacs (and most addons) run on Windows? I'm tempted to try it out, but knowing the community is (righteously) Unix-fist I'm not so sure it's worth the trouble.

I haven't used Windows since around Windows 7, and that would be probably the last time I used Emacs on Windows, so, obviously, not an up-to-day response.

Here's what I recall were the major pain points then:

* You need to choose between MSYS2 and "native" Windows binaries (add WSL today for more choices).

* The choice above will influence how you interact with various shells. Getting shell encoding right and filtering out escape sequences that don't render well in Emacs terminal emulator of choice was a headache.

* All interactions with filesystem are slower. If a mode depends on interaction with filesystem a lot, like Magit, you are going to have a bad time. At the time CEDET was still a thing, but on Windows it was absolutely unusable. (Very infrequently I need to look at wife's laptop which runs some more modern Windows, and that's usually because she has some problems with Git or other infra, and I installed Emacs there to make dealing with this stuff easier: Maigt is awfully slow there).

* I don't know if Tramp has any kind of support for the convoluted and bizarre Windows user permission management -- I never had enough time to figure that out. On Linux, if I need to edit files owned by root, I do C-x f /sudo::/..., but there doesn't seem to be anything like that for Windows.

* In general, you will be missing stuff that you could easily accomplish in Emacs by pressing "!" in Dired buffer -- because there's nothing / very little of useful stuff you can call on files. If you don't install emacs with other MSYS2 utilities, your search options in Dired will be bad (default Windows find), similarly bad is the find in files that normally relies on grep to work. Same situation with spellchecker which relies on an external program.

I'd still take it over something like VSCode, but I would have to invest a lot of effort into bringing it up to the possible / desired level of comfort. It's definitely not the best place to use Emacs. Luckily, today, I'm in the place where I can, for the most part, forget MS Windows exists.

Post reply on HN