in reply to silverwizard

@silverwizard No, they're antacids. If someone were going to steal a pill, the ADHD meds were in the same organizer.

There are many benign possibilities. It's possible that when I loaded the organizer, I accidentally put only one of those pills in it (I take two a day). It's possible that since I was late with meds today, I got the schedule wrong, and accidentally took one at the wrong time. These are much more likely.

Still, I'll keep an eye on the situation.

I've been using #Emacs's #Gnus for news/mail/RSS, but for whatever reason it's having trouble subscribing to ATOM feeds (RSS is fine). I seem to be missing the nnatom backend. Is there something special I need to do to add it?
#AskFedi
in reply to Jonathan Lamothe

Over the weekend I was messing around with ibuffer, integrating my custom ibuffer groups with @sanityinc's ibuffer-vc (recommended).

I was surprised to discover that documentation for ibuffer (in since 22.1?) is ... sparsely documented. But it was fun to get it working because the code (and Steve's add-on) is

PERFECTLY LIMPID

(the real story here is that I have been waiting a lifetime to drop the phrase "perfectly limpid" for internet points and here is my opportunity)

github.com/purcell/ibuffer-vc

#emacs #ibuffer

This entry was edited (1 week ago)

James Endres Howell reshared this.

in reply to James Endres Howell

in reply to Daniel Mendler

@minad My annoyance with ibuffer:

The filter groups are defined as a list (of lists), which (per the definition of list) has an order.

That order determines the logic of which buffers get assigned to which groups. That order also determines the order in which those groups get displayed.

Sometimes I want those orderings to be different. Which would require two lists.

Each element already has a name string, so a display-order list could reference elements in the filter-order list. But that gets complicated when some of the elements are generated dynamically, like from ibuffer-vc.

This annoyance is probably not worthy of the effort to rewrite the package with a different abstraction. Especially not the effort to do so without introducing breaking changes.

@me @sanityinc

in reply to James Endres Howell

in reply to Bharath M. Palavalli

@bmp @jameshowell @sanityinc Yes, bufler looks nice! Alphapapa has many great packages. But I have slightly different preferences regarding dependencies and library usage. In addition to bufler I would have to install these libraries: burly, dash, f, hydra, lv, pretty-hydra and s. This is pretty large footprint. I care about this for multiple reasons - supply chain issues and consistency on the Elisp level. To be clear, this should not matter much for most users.
in reply to Daniel Mendler

@bmp @jameshowell @sanityinc @pkal I am by no means a package minimalist - I have many packages installed and I suggest that people take advantage of our large ecosystem. However I differentiate between packages on the user level and the library level. On the library level my preference is to rely on Emacs builtins for basic functionality (instead of dash, f or s). If crucial library functionality is missing it can be added to subr.el and then ported back via Compat.
in reply to Daniel Mendler

@bmp @jameshowell @sanityinc @pkal Unfortunately it turns out that adding new functionality to subr.el sometimes leads to long emacs-devel discussions with little progress. Not all additions are not welcome, like the recently discussed file-to-string function. These are the gaps which are then filled by libraries like dash, f or s.
in reply to Daniel Mendler

Agreed. I think the point to stress here is that users can decide. Hydra, for example, always struck me as relatively bloated, buggy, and a little too idiosyncratic with respect to (at least my mental models of) Emacs internal and UI conventions. But obviously it was very popular! Let a thousand flowers bloom. Cherish the Four Freedoms 😀

@bmp @me @sanityinc @pkal

This entry was edited (1 week ago)
in reply to James Endres Howell

@jameshowell Actually I found Hydra pretty good and simple. It is a smaller variant of Transient. But given that Transient is now the standard why not rely on it? I agree with you that users should decide and I want to emphasize that on the user level the underlying libraries do not matter.
@bmp @me @sanityinc @pkal
in reply to James Endres Howell

@James Endres Howell @Steve Purcell @Bharath M. Palavalli @Philip @Daniel Mendler That's the beauty of Emacs: if you don't like it, it's infinitely customizable, and you can massage it into something you do like (assuming you're willing to do some digging).

There's also something to be said for an out-of-the-box solution that's close enough. I just prefer the former.

elisp help

Okay, I need to do a hacky #elisp thing. Yes, I know it's terrible.

Basically, I have an existing defun. Let's call it foo. I need to replace it with a new function that calls the old one and transforms its output before returning it.

I naïvely assumed I could do it like this:

(let ((oldfunc (function foo)))
  (defun foo ()
    (my-transform (funcall oldfunc))))

...but this doesn't actually copy the old function, just a reference to the symbol, so it ends up locking itself in a recursive loop.

I'm sure there's a way to do this.
#AskFedi

Edit: Got it. It's:

(let ((oldfunc (symbol-function 'foo)))
  (defun foo ()
    (my-transform (funcall oldfunc))))

Edit 2: It turns out there's a cleaner way still.
See: aus.social/@carlozancanaro/116…

Also, there's still something Gmail isn't liking. Looking at the differences in the headers between emacs and my other clients (whose mail does get through), the next most obvious difference is that the Content-Type header doesn't specify an encoding. Whether this is the actual problem or not, I should probably fix that. I'm just working on how.


The usual way to do this would be to "advise" the function with an "around" advice. gnu.org/software/emacs/manual/…

reshared this

in reply to Jonathan Lamothe

I have the same issue with @Tutanota : my emails never make it to some recipients. I’ve never sent a single spam on my life. The only factor I was able to isolate is that anything going to Gmail or a Google-managed address doesn’t make it, which I assume means it was caught in some spam filters. But it’s not the only factor. I just haven’t figured out what makes it so I can’t write to some other addresses.

It’s really a PITA, forcing me to keep another email.

@Tuta
This entry was edited (1 week ago)
in reply to Celeste Ryder 🐾 🐀🏳️‍🌈

@Celeste Ryder 🐾 🐀🏳️‍🌈 @Tuta The weird thing is that it works if I use any other client. I'm still trying to figure out what the problem is. When I find it in my spam box and I click "why is this marked as spam" it says that it's there because it resembles other messages that have been marked as spam.

In other words: we put it in spam because we thought it looked like spam, which is... unhelpful.

LLM thoughts

This is what I like to tell people when they tell me they learned something from an LLM:

Pick an obscure subject about which you know a great deal. Now ask an LLM a bunch of questions on that subject and see how long it takes it to give you a wrong answer. Now ask yourself if someone who didn't know the subject as well as you do would have caught that mistake.

Finally, ask yourself: do you still trust the LLM?

Boyd Stephen Smith Jr. reshared this.

Is there a way in #emacs #org-mode to next quote blocks? The following doesn't seem to work.

#+begin_quote
This is a quote.

#+begin_quote
This is a quote within the quote.
#+end_quote
#+end_quote

Emacs is ignoreing the second #+begin_quote and just closing the quote block at the first #+end_quote.

Edit: So the solution I settled on was putting the nested quote in a drawer named :quote:. it's not an ideal solution, but for my purposes in this case it's... fine, I guess.

God help me if I ever need three levels of nesting.

So, somebody has registered an #LLM bot as a player on #LambdaMOO. I've banned it from the areas that I control, but can't ban it from public spaces.

How might I best go about messing with it? So far, I've just been feeding it lies when it asks me questions.

I've also already slipped a sign in its inventory that identifies it as as an LLM to anyone who happens to look at it.

This website uses cookies. If you continue browsing this website, you agree to the usage of cookies.