Live data from Hacker News

How I am deeply integrating Emacs

joshblais.com

71–80 of 173 posts

Re: How I am deeply integrating Emacs

#71
post #37

A question for the heavy Emacs users: What's your take on opinionated distros like Doom Emacs or Spacemacs? I've been doing my daily journaling and task management on Emacs for while now, using Doom Emacs. Rationale was that it'd be mostly pre-configured to a sane standard and that, for actual text editing, I'm a long time vim enjoyer, so evil mode is great there. However I always feel that when I go beyond the safe…

I personally use Doom because there are a lot of out of the box optimizations, some don't like how hlissner has brought nix ideas of declarative package management into the mix, but I am a nix user so it makes sense. I also am an evil (heretic) user - Doom is configured from the get go as a gateway from vim/neovim into emacs, and it does that job very well.

I would say use both. You can run multiple emacs configurations, and you could have your vanilla config which you slowly build as well as Doom/spacemacs where you can see what is possible.

Re: How I am deeply integrating Emacs

#72
post #37

A question for the heavy Emacs users: What's your take on opinionated distros like Doom Emacs or Spacemacs? I've been doing my daily journaling and task management on Emacs for while now, using Doom Emacs. Rationale was that it'd be mostly pre-configured to a sane standard and that, for actual text editing, I'm a long time vim enjoyer, so evil mode is great there. However I always feel that when I go beyond the safe…

I have tried Doom Emacs in a Debian VM on Windows host, because that was the opportunity to install a new Emacs thing for me (to code while playing a game). There Doom Emacs was not stable. Sometimes it just crashed and one time I even lost a whole function I wrote, because somehow it doesn't do the same backup file thing Emacs usually does. The keybindings were nice, but the stability requirement I have overrules it. So I am back to standard Emacs and currently using evil mode.

Re: How I am deeply integrating Emacs

#73
I love Emacs. My first intro to it was on the Braille Plus Mobile Manager back in like 2008 or so. That was a beautiful device that ran Linux and was developed for the blind. There's been nothing exactly like it since. The BT Speak is a poor ematation that runs on a Raspberry Pi 4 and is sluggish because Linux accessibility is hard and not optomized for such low-power devices.

Anyway, I began learning Emacs commands in the Emacs tutorial on that Braille Plus, , and they made sense to me. Unfortunately, Emacspeak only really works well on Linux and Mac, not Windows where all the blind people are. Speechd-el only works on Linux, since it uses Speech-dispatcher. I got Speechd-el talking on Termux for Android last night though, although it was rather laggy between key press and speech. Emacspeak development has paused, though, and Speechd-el seemingly hasn't been updated in half a year. Emacs itself has a lot going on for a normal screen reader to interpret which is why Emacs-specific speech interfaces are so useful.

A few examples:

* On Windows, with Windows Terminal and NVDA screen reader, arrow keys read where the cursor is, but C-n and C-p, C-f and C-b, all that, NVDA doesn't say anything. This is with the -nw command line option because the GUI is inaccessible. * Now, if I do M-x, it does say "minibuf help, M-x, Windows Powershell Terminal". From there, I can do list-package and RET and use arrow keys to go through packages, but N and P don't speak even though I know they move between packages. So it seems like the echo area works. * Programs like the calendar, though, really doesn't speak well with a screen reader. It just read the line, not the focused date. Using left and right jst say "1 2 3 4 5" etc. So custom interfaces don't work well. I shudder to think how it'd read Helm.

Lol maybe I can get AI to make a good speech server for Emacspeak for Windows.

Re: How I am deeply integrating Emacs

#74

Earlier quoted context omitted.

When I got into emacs 20+ years ago the "use only the keyboard" thing was a huge point of pride and to this day I don't understand why. Who cares? I use emacs because I can code the entire environment. Fundamentally the mouse is just a form of modal editing. Emacs supports this in spades of course, and god-mode is my modal input minor mode of choice, but clicking to jump to a position on screen can often be a lot fas…

> Who cares? People with RSI from constantly reaching for a mouse.

I have been coding for so long now that I can't have my keyboard any higher than my lap. I code with it resting directly on my legs. A mouse is right out. Any higher, and my hands turn to clubs.

I love emacs because I can do everything with the keyboard. It is faster and a lot easier on your body long term. My advice, start young. Keep your keyboard directly on your lap and use a ortholinear plank keyboard so your fingers don't have as far to travel. I was skeptical at first, but I will never go back.

Re: How I am deeply integrating Emacs

#75
post #4

The more I learn about emacs the more I feel we took the wrong fork on road in terms of the desktop metaphor decades ago.

The more I learn about emacs the more I'm happy I never joined the cult Don't waste my time with 70s "ergonomics" (if it can even be called that) The comparisons with art seem almost to the point of offense to me. You're not building art, you're just building another yet plugin for emacs to do what other people do in maybe 5% less efficient ways but won't spend 2 days automating it

There are a lot of caveats but in general the "spend 2 days" thing is a lot less true now IMHO thanks to LLM's that can write mostly correct elisp from basic specifications. YMMV of course. I have found this can also open up to being a lot more than "maybe 5% more efficient" for niche applications. It's the closest environment I've used to where the friction between "I wish my editor could do " and actually having the feature almost disappears.

Re: How I am deeply integrating Emacs

#76

I keep hearing about emacs and how awesome it is, is there a good resource for a complete beginner who is familiar with programming but not necessarily editors like vim or emacs, just to get started?

If you feel overwhelmed in trying out Emacs, always remember, you don't have to switch cold-turkey. You can keep working with your previous editor and use Emacs in your spare time. Or go 50-50. Or any other method that keeps the initial time of not being quite as productive from being a significant downside. Once you get the hang of it, you can still try it out for work and recognize small issues in the workflow, which you can then try to find fixes for in your spare time or spare time projects.

Personally, I am using Emacs for everything related to plain text files. I have benefited at previous jobs massively from already having solved some issues on my own time.

Re: How I am deeply integrating Emacs

#77
post #44

Are there any good videos showcasing a productive Emacs setup like this and how it's used for everyday tasks?

https://systemcrafters.net/emacs-from-scratch/

This was my aha! moment where I actually watched someone install and use packages and was like oooh yes, this is both nice and will actually be very helpful. And I have been using emacs since 1998! I find most package pages tell you a lot about the how, but very little about the why on you would want to use them.

Re: How I am deeply integrating Emacs

#78
post #37

A question for the heavy Emacs users: What's your take on opinionated distros like Doom Emacs or Spacemacs? I've been doing my daily journaling and task management on Emacs for while now, using Doom Emacs. Rationale was that it'd be mostly pre-configured to a sane standard and that, for actual text editing, I'm a long time vim enjoyer, so evil mode is great there. However I always feel that when I go beyond the safe…

>>I've been doing my daily journaling and task management on Emacs for while now

Trust me, move to Google Docs.

This is simply a whole larger and easier universe compared to anything Org-mode will ever evolve to be. Its also backed up online, pictures are embedded in the document itself. And several other features come out of the box. You also don't have spend years learning to use it, and can get productive from minute 1.

Re: How I am deeply integrating Emacs

#79

Re EXWM and: > Emacs is single threaded, therefore if anything in the system hangs, the whole system hangs For development work I haven't found this to be an issue. Generally when coding I use very few X apps - pretty much just a web browser and maybe occasionally a PDF preview or docs browser. I don't think I've ever had a problem with the single-threaded behaviour blocking window management there. (And as an aside,…

I live in EXWM. I absolutely love it as a coding environment. EXWM + helm + projectile. I mainly use v-term for cli, but I have always been interested in learning eshell, just never got around to it. I have been thread-locked on occasion, and when that happens it is frustrating. I can sometimes manage to switch to another session to kill processes and avoid restart, but not always. Still, I wouldn't leave EXWM. Maybe in my retirement I will end my career by helping to make emacs + EXWM multi threaded. I am guessing that is a daunting project, but it sure would be fulfilling.

Re: How I am deeply integrating Emacs

#80
post #3
post #2

> This is how world class athletes, musicians, artists, writers, and of course programmers take what is in their mind and translate it into reality. > It is the ultimate sharpening of the axe before chopping the tree[1] But if part of our axe sharpening is listening to music, reading email, catching up with your feeds and so on then perhaps we need to take a step back and ask if we're just invading our working though…

A good carpenter takes time to maintain and procure their tools. They still have a nice phone and might listen to music on their headphones while they’re working. A chef must keep their kitchen clean and well organised. Stocked with appropriate and some obscure tools. She must season her saucepan, sharpen her knives.

My first career was as a cook and I would always sit and sharpen my knives after the last service of the week. It was kind of a cool time to reflect on the previous cycle and mentally prepare for the next. There's really nothing comparable in programming and I say this as someone who has spent hundreds of hours yak shaving emacs.
Post reply on HN