Vivek Haldar on Emacs 29

Like mbork, Vivek Haldar a short list of some changes he likes in Emacs 29. As with mbork’s list, these aren’t the big things, they’re some small changes that he finds particularly helpful or appealing. You can follow the Twitter thread for the details but the TL;DR is

  • Changing the font size globally
  • Find sibling file
  • Rename the visited file
  • Variable pitch text
  • Pixel scroll precision mode
  • Split root window below or to the right
  • Eval region or buffer
  • Scratch buffer command to switch to or open the scratch buffer
  • Highlight undefined commands in shell buffers
  • A couple of new mouse events

Merry Christmas to everyone from me and the minions.

Posted in General | Tagged | Leave a comment

The Year of RSS

Irreal has considered RSS many times, especially since Google’s liquidation of RSS reader, There’s too many posts to cite here; just do a search for “RSS” on the Irreal site to see them. If you aren’t a silly person, you know that RSS hasn’t gone anywhere and is still helping the knowledgeable keep up with developing news, blog posts, and other interesting content.

Despite what you may have heard, Twitter has not replaced RSS. If you’re the type of person who thinks something significant can be said in 140 characters, it may have for you but the rest of us are happily using RSS daily to notify us of interesting content that we may want to examine.

Nikki Usher has a post that claims this is the year of RSS and that all we need is a new improved RSS reader or maybe RSS protocol. If you’re an Emacs user, it’s hard not to snicker. We’ve been enjoying the excellent Elfeed for years, which is, as Usher demands, open source, flexible, and extensible. Non Emacs users have Feedly, which is also an excellent RSS reader. There are plenty more, including the reincarnation of Reeder.

The problem isn’t a lack of good RSS readers, nor do we need a new protocol. What we need is for more people to realize what serious people have always known: if you have something consequential to say, you probably can’t say it in 140 (or even 280) characters and you need to either start a blog or use something like Substack.

One of Usher’s points is that sites like Substack operate by distributing their content by email and that’s not sustainable but it’s not clear her claim of unsustainability is true. Email users, like RSS users, can scan the subject lines and either read the article, delete it, or stow it for later, just like with RSS.

Even though their business model is based on subscriptions, there’s no obvious reason it couldn’t be adapted to work with RSS and I’d love to see that. But whether they do or not, RSS is here to stay. My daily feed averages about 90 articles, which I regard as suggestions. I don’t read them all but I get lots of interesting content and it all comes directly to my Emacs instance.

Posted in General | Tagged , | Leave a comment

Red Meat Friday: You Can’t Code If…

Here’s some red meat that’s sure to exercise more than a few people:

Realistically, though, Palmen may have a point. Note that he doesn’t say that you’re not a serious developer if you use an IDE. He says you’re not if you can’t code without one. In any event, enjoy this Friday’s red meat and try not to throw anything at your computer screen.

Posted in General | Tagged , | Leave a comment

Exporting To Markdown

There’s a disadvantaged group of people in our industry that use Markdown to prepare their text for output to, say, PDF or HTML. I call these folks disadvantaged because Markdown, although fine for preparing simple documents for publication, has some serious deficiencies when compared to Org mode. I’m not talking the syntax, which is different from Org’s but just as good. Org is more powerful as a markup language but really shines as an embedded mode of Emacs which provides editing commands specialized to Org that aid in producing serious documents.

Another problem with Markdown is that there isn’t a Markdown but several. The original Markdown was relatively simple so users such as GitHub extended it but, of course, each in different ways. The result is that there are several dialects of Markdown. While there are ports of Org mode to other editors, there is still only one Org mode markup language.

Org mode provides a very comfortable and flexible writing environment that can easily handle complex documents. Still, sometimes you need to deliver Markdown for certain applications, Websites, or sharing with users who aren’t Emacsers. That’s not a problem because Org can export to Markdown. But there are problems.

Franco Pasut has a useful post that looks at exporting from Org to Markdown. In particular, he explains how to covert Org tables to Markdown tables. The TL;DR is to use Pandoc specifying the --to-gfm option. He also discusses some problems with exporting code blocks to Markdown. If you find yourself having to export to Markdown, you should probably take a look at Pasut’s post.

Posted in General | Tagged , | Leave a comment

Peer Review

Adam Mastroianni has a thoughtful and interesting article on peer review. The idea of having outside “experts” evaluate a prospective paper before it’s published in a journal seems to be obviously the right thing and something that has been the norm in scientific—and then all academic research—practically from the beginning.

Mastroianni begs to differ. In the first place, peer review, far from being the ancient procedure that we imagine is actually quite new. Before 1960, it was rare and none of Einstein’s papers, for instance, were peer reviewed. In fact when a journal decided to peer review one of his papers, he was so surprised and upset that he withdrew the paper and published it elsewhere.

Mastroianni’s second point is more telling. He describes peer review as a massive experiment that was flawed from the beginning and has, in fact, failed. He claims that not only is there no evidence that peer review improves science but there is plenty to suggest that it’s actually made it worse. He notes—correctly I think—that peer review makes sense only if believe science is about preventing bad ideas. But, he says, it’s not. It’s about finding the best ideas, something that peer review will never do because its raison d’être is to find and suppress bad ideas.

The subject of peer review probably seems of interest only to academics but, in fact, it affects us all. Despite this so called safeguard, about three quarters of papers in critical areas such as cancer research fail to replicate and many are outright fraudulent. That means that millions—or even billions—of dollars are being misappropriated in areas where we all have a vital interest.

I believe Mastroianni is correct but I don’t hold out much hope for the end of peer review until the university system itself finally collapses. Of course, many believe that process is already well underway so who knows?

Posted in General | Tagged | Leave a comment

Mbork on New Emacs 29 Features

Marcin Borkowski (mbork) has a nice post about some of the things he likes about Emacs 29. Irreal has posted a couple of articles on Emacs 29 and what is coming but Borkowski’s post is different in that he just mentions a few things about Emacs 29 that he, personally, really likes. Due to our craven nature, we here at Irreal mostly shy away from using unreleased Emacs versions. Emacs—and especially Org mode—are central to our workflow so the minions and I are loath to take chances.

Still, I enjoy reading about the experiences of those—like mbork—who are more courageous. The features that he calls out are not the big things that most commenters write about but a few small improvements that make the editing experience more pleasant.

Rather than reiterate the list of those features, I’ll send you to Borkowski’s post. Go take a look. You’ll probably learn something. I, for example, learned about the long standing command (not just Emacs 29) where-is. It’s the opposite of describe-key. Instead of taking a key and returning the command, where-is takes a command and returns the keys that are bound to it.

If, like me, you’re looking forward to the release of Emacs 29, you should take a look at Borkowski’s post. It will give you a small hint of some of the nice things that are coming.

Posted in General | Tagged | Leave a comment

Building An Exercise Table From a Journal

Like many people, Simon Pugnet likes to keep a record of his exercising. His regime includes several types of exercise such as running, sit-ups, and pushups. Also like many of us, he maintains a daily journal so, of course, it made sense to record the exercising in his (Org mode) journal. He does this by adding a third level headline for each exercise under the second level headline Exercises. The first level headlines are the date so this gives Pugnet an “Exercises” headline for each day.

You may not think this is an optimal setup but it’s a reasonable one. Now, however, Pugnet wanted to generate a table of his daily exercise and maybe even some graphs. He solved that by writing a bit of Elisp, which you can see in his blog post about his setup. It would certainly have been easier to record the data in an Org table to begin with, which is what I do for things like this but I do like the idea of keeping everything in the journal and extracting the data you need for whatever project you’re working on. It take a little more work but everything is in one place and easy to find.

In any event, the reason I’m writing about this is that Pugnet’s code is a nice illustration of how to parse Org files and extract data from the entries. You can, of course, do that with regular expression search and other ad hoc methods but Org provides you with functions that take care of all that for you. It’s worth studying Pugnet’s post just to get an idea of how to do these things.

Posted in General | Tagged , | Leave a comment

John Wiegley on Emacs 29

Here’s another nice video from the EmacsConf 2022 conference. It’s John Wiegley on what’s coming in Emacs 29. As Wiegley says, it’s going to be a significant release with lots of new features.

Here’s a list (cut from the video’s timeline) of the new Emacs features that Wiegley tells us are coming.

  • Overlays
  • Eglot
  • Tree-sitter
  • Very long lines
  • SQLite
  • XInput
  • Pure GTK build
  • Drag and drop
  • Double-buffering on Microsoft Windows
  • Emoji input

The Emacs 29 release cycle is already underway and final release should be with us soon. If you want to get an idea of what’s coming, take a look at Wiegley’s video. It’s only 5 minutes 15 seconds long so it should be easy to fit in.

Posted in General | Tagged | Leave a comment

Writing With Org Mode

Chris Mariana has an interesting video on how to prevent losing files when writing in Org mode. It’s a useful post but not really enough to write about. The TL;DR is that it explains how to locate files that were saved with org-attach.

That video, though, led me to another video of his on writing in Org mode, which is an elementary introduction to writing documents with Org. Mariana begins by noting that a big advantage of this approach is that you’re writing in plain text and that brings many advantages such as easy version control, flexible export, and others. And, of course, although he doesn’t mention it, the avoidance of lock in: your plain text document will always be readable even if you change text editors or yours disappears.

From there, he moves on to the basic structure of an Org document and some of the ways to manipulate it. Org, of course, can be thought of as two things:

  1. A lightweight markup language
  2. An Emacs mode that implements many features including an easy way to edit and operate on Org documents from within Emacs

Mariana’s video is more about the second of those although he does cover a few of the markup features. He also shows some of the flexibility of the export system. You won’t become an expert in writing with Org from this video but it does gives you a good feeling for what the process is like and why you might want to find out more.

The video is 17 minutes long so plan accordingly.

Posted in General | Tagged , | Leave a comment

Red Meat Friday: Where Your Editor Runs…

…and what it says about you.

I’m sure we Emacers can all agree on the conclusion that “We are not the same.”

Posted in General | Tagged , | Leave a comment