Dired Flat File Listings

It turns out that if you call Dired from Elisp, you can pass it a list of files to display. Protesilaos Stavrou (Prot) leveraged that fact to write a bit of Elisp that provides him with a flat list of files matching a regular expression in a specified directory structure. His post has the code so you can see how he did it but it’s mostly what you’d expect: after some setup, he calls directory-file-recursively to gather the list of files that he then passes on to Dired.

It’s a pretty nice system but after using it for a while, Prot realized that when he was dealing with large directories a bit of initial filtering of the most recently modified files would be useful. He solved that by adapting his previous code to do the filtering. He does it by taking the list of files from his first function and running them through seq-filter to get the files he’s interested in. Again, all the code is in his post but Prot says he won’t be updating the post so you should check out his configuration for the latest version.

If you frequently generate Dired listings and would prefer to deal with a flat list of the files without worrying about what directory they’re in, take a look at Prot’s post for an excellent solution.

Update [2026-06-15 Mon 10:06]: Fixed link to Prot’s post.

Posted in General | Tagged | Leave a comment

Your Digital Inheritance

As you most of you know, I live a digital life. That doesn’t mean I have no existence outside the Internet or that I don’t have real life friends and loved ones. It simply means that almost all my transactions and non-face-to-face communications happen digitally. It also means that almost all of my personal information is stored online. As I’ve written before, even though we think we’re going to live forever, we probably won’t so it’s important that we arrange to have all that online data available to our survivors.

Than can be complicated because there are privacy concerns involved and many online services won’t release the data without prior authorization. Of course, it’s a hassle to arrange that authorization for all your accounts and you’ll probably forget some, even if you try. The better strategy is to provide your survivors with your log on credentials so that they can access whatever data they need.

A recent SANS Ouch! newsletter offers a few suggestions for handling the problem. The most useful, in my opinion is to keep all your logins in a Password Manager and to choose a person to entrust with access to the logins. That’s what I’ve done and I’ve made it an addendum to my will.

All this is not something that most of us want to think about but it is important that our families have the necessary data to continue their lives even if that means only having access to pictures of us for remembrance.

Posted in General | Tagged | Leave a comment

AsciiDoc In Emacs

Bozhidar Batsov has a post announcing a couple of new Emacs modes for AsciiDoc. In the usual Batsov way, he’s significantly improved the support for AsciiDoc in Emacs. He loves AsciiDoc but found it hard to use in Emacs because the support was so bad.

I’ve never used AsciiDoc so I don’t know why Batsov prefers it to Org mode. Org mode can be and has been used to produce first class technical documentation. If needed, it can bring to bear all the power of LaTeX to produce a polished product.

As far as I can see, the only reason not to use Org mode is because you’re not an Emacs user or are collaborating on a document with someone who isn’t. It offers everything you’re apt to need short of bringing in a heavyweight dedicated document preparation system. I’m sure Irreal readers not as ignorant as I about the situation can tell us why we should prefer AsciiDoc. Our lines are open.

If you are an AsciiDoc user, Batsov’s two new modes are sure to be a blessing. The update to adoc-mode is designed to work with all versions of Emacs and updates the regex-based font-locking to the current AsciiDoc grammar. It’s perfect for an AsciiDoc user who’s running an older version of Emacs. Asciidoc-mode is the more modern solution using tree-sitter to handle things like font-locking but it only runs on Emacs 30.1+.

Take a look at Batsov’s post for the details on the two modes. And if you know why an Org mode user should care, leave a comment.

Posted in General | Tagged | Leave a comment

An Emacs Based Writerdeck

If you follow writers at all, you’ll have noticed that many prefer to write their prose in long hand even if they began their writing career with a computer. Tess Gerretsen and Neal Stephenson are two examples that come to mind. Both are serious, established writers who have no need for performative resistance to computers. Indeed, they both use computers to produce the final manuscript. They say they write in longhand to slow things down or to avoid premature editing.

I understand their urge but could never work that way. Writing by hand is excruciatingly slow and even painful to me. I didn’t start writing a lot until I got a computer and could do it without so much effort and discomfort. A middle ground is what’s often called a “writerdeck”. The idea is that it’s a device that’s completely dedicated to writing and is as simple as possible.

Chris Maiorana wrote an article that argued a pad and pen is the ultimate writedeck. I reject that for the reasons I stated above. Maiorana recognizes that often a computer is a good idea and has an article that describes building his own writerdeck. He wanted something free or cheap so he used a Raspberry Pi 4 that he had lying around, put Linux and Emacs on it, and restricted it to text mode. Later he added a few utilities such as Git but it remains a text only machine dedicated to writing with Emacs. Maiorana considers it the “maximum digital minimalism” but I’m more inclined to think of it as a minimal acceptable writing environment.

I don’t do social media other than Irreal, if you consider that social media, so I have no difficulty concentrating on my writing while using my everyday laptop. Not everybody is like that, of course, so if you find it’s hard to resist doom scrolling while you’re supposed to be writing, you may want to take a look at Maiorana’s post on his writerdeck.

Posted in General | Tagged , | Leave a comment

Emacs In Pop Culture

Ian Pan has curated a nice collection of Emacs caught in the wild. By “in the wild” I mean “in popular culture”: things like movies and comics. Most of us have seen the familiar scene from Tron but Pan has a bunch of others.

One example is the famous scene from Silicon Valley in which Richie and Winnie start arguing about Tabs versus Spaces and end up discovering that one is a Vim user and the other an Emacs user. I’ve seen that scene many times but didn’t realize where it came from so I learned something new from his post.

The other surprising thing—to me—is that Emacs also makes appearances in comics. What’s interesting is that you rarely see any editor other than Emacs or Vi(m) mentioned outside geek circles. Perhaps the current cohort of hackers will change that and we’ll start seeing references to VS Code. Or maybe not. VS Code does have a lot of users but I haven’t seen the same culture grow up around it. We’ll see.

Posted in General | Tagged | Leave a comment

The First Wireless Telephone

A short quiz in two parts for you:

  1. When was the first wireless telephone invented?
  2. Who invented it?

The answers are surprising and not at all what you might have expected. If you’re like me, something involving radio is probably popping into your mind. But that’s entirely wrong. The first wireless phone used light—actually reflected sunlight—to carry the signal. You’ve probably heard of the technology. Back before computers, young nerds used to experiment with light-based phones (you could even buy kits). They were not, of course, terribly useful because of their limited range and line of site requirement, but they did see use in World Wars I and II as a secure alternative to radios for short range communications. And, of course, the idea forms the basis of today’s ubiquitous fiber optics cable.

When was it invented? That’s one if the surprises. It was in 1880 a decade and a half before radio communication was first demonstrated. That should give you a hint as to the inventor. It was Alexander Graham Bell, the (widely accepted) inventor of the conventional telephone. It’s design is described in the linked post. Bell named his invention the photophone and was more proud of it than the enduring invention for which he is famous.

A final amusing anecdote was that Bell wanted to name his daughter Photophone but fortunately for the girl, her mother prevailed and she was named Marian.

Posted in General | Tagged | Leave a comment

Elfeed 4.0.0

Daniel Mendler, who took over as maintainer of the world’s best RSS reader, Elfeed, has announced the release of Elfeed 4.0.0. You can read the Change File to see what’s new but the most important point for me is that the maintainership of Elfeed has successfully transitioned from Chris Wellons to Mendler.

When Wellons announced his retirement from the Emacs ecosphere, I, and I’m sure others, had a moment of apprehension. We all wondered if anyone could fill Wellons’ large shoes. I’m happy to say that Mendler has shown himself up to the task and is doing a great job moving Elfeed forward.

As I’ve said before, I consider Elfeed an almost perfect RSS reader. It’s easy to configure it to operate the way you need it to. One of Mendler’s changes that I really like is the ability to pop into EWW if you need to. I use it from the default Elfeed text buffer but also from the WebKit mediated display if there are too many ads and blinkenlights on the default page. As I’ve said before, I have a growing appreciation of EWW and am a bit surprised to find it becoming one of my go to tools.

The important point, though, is that if you’re an Emacs user who has an RSS feed, you should definitely try out Elfeed. You won’t, believe me, want to go back.

Posted in General | Tagged | Leave a comment

Correcting The Orientation of macOS Photos on Linux

JTR over at The Art Of Not Asking Why describes a problem—and its resolution—that I didn’t know existed. The TL;DR is that photographs taken with an iPhone are always captured in landscape mode but Apple’s software detects portrait photos and corrects the orientation on the fly.

That leads to the problem: when iPhone portrait mode photos are shown on Linux using Org mode they are shown in landscape mode. You can get the details from JTR’s post.

The fix is pretty easy. He uses the mogrify tool of ImageMagick to auto-orient the photos based on their EXIF data. Since he’s viewing these photos in Org mode he wants an easy way of making the conversion from within Emacs. That’s a perfect job for Álvaro Ramírez’s dwim-shell-command, which JTR uses.

Take a look at the code and see how simple it is. Even if you aren’t an Elisp expert, it’s easy to do things like this with dwim-shell-command right from Emacs.

Posted in General | Tagged , | Leave a comment

Emacs 31.0.90 Pretest

Sean Whitton writes to tell us that the first Emacs 31 pretest, emacs.31.0.90, is available for download. It’s been almost two years since the first Emacs 30 pretest came out so we’re pretty much on schedule for our yearly major release.

As always, Irreal wants to give a huge shout out of thanks to all the developers who work so hard to keep the Emacs development bandwagon rolling. They do all this for free so we each owe them a word of thanks and, as I always say, the drinks are on us if we find ourselves in the same bar as one of them.

Whitton’s post has all the details concerning downloading and verifying the latest tarball. If you don’t mind living on the edge, give it a try and report any problems.

Posted in General | Tagged | Leave a comment

🥩 Red Meat Friday: Score One For The Luddites

As many of you know, I have a special contempt for what I call “the new Luddites”: those who find (nonsensical) fault—usually for performative reasons—with technology. The most common current sign of the new Ludditism today is giving up smart phones in favor of retro flip phones. My favorite old time example of this was the reaction to calculators when they first became available. “Kid won’t learn how to do arithmetic” or “Rich kids who can afford calculators will have an unfair advantage” and lots of other silly fear mongering was rampant.

The latest grist for this mill is, of course, AI. Much ink and many pixels have been spent lamenting the fact that people who rely on AI will no longer be able to write, think critically, or solve elementary problems. The narrative is, mutatis mutandis exactly the same as that from those lamenting calculators as precursors of the Apocalypse.

Irreal is very skeptical about AI and refuses to jump on the bandwagon but, at the same time, is taking a wait and see attitude. Whether AI can even begin to live up to the hype remains to be seen but the results on one aspect of the AI story may be in.

The Daily Californian has a disturbing story about the number of failures in beginning Computer Science classes at Berkeley. The department’s guidelines anticipate that about 7% of students in those classes should receive a D or F but last semester 35.3% of students in CS 10 and 10.6% of students in CS 61A received Fs.

Berkeley CS professors believe that reliance on AI to complete assignments and exams as well as inadequate mathematical preparation are to blame. The article has a graph showing the number of students receiving a D or F in 3 technical courses for the last 3 spring semesters and the typical historic results. The results aren’t pretty.

Why are the results different from the advent of the calculator? I think the main difference is that calculators enabled students to avoid a tedious mechanical chore that had nothing to do with thinking or problems solving, whereas AI can all too easily serve as a replacement for thinking and problem solving.

The takeaway? The new Luddites may have been right for once.

Posted in General | Tagged | Leave a comment