Configuring AUCTeX

If you’re an Emacser who writes in LaTeX you’re doubtless familiar with AUCTeX. Most of the time, you can depend on Org mode to do the heaving lifting but when you have a complicated layout you may have to invoke AUCTeX.

Randy Ridenour, a professor at Oklahoma Baptist University, writes in LaTeX using AUCTeX and, of course, wanted to configure it using John Wiegley’s use-package macro. He did what we’d all do:

(use-package tex
    :ensure auctex)

but it didn’t work. It turns you have to do

(use-package tex-site
    :ensure auctex)

instead.

When I saw his post, it rang a bell so I checked my config and I do the exact same thing. I vaguely remember going through the same steps as Ridenour years ago. I no longer recall how I discovered the magic spell but I doubtless found it on the Web somewhere. Ridenour’s problem was getting things to work with Skim. I’ve never used Skim so I had some other problem but the answer was the same.

Once I fixed the problem, I just moved on and so have no idea why you need tex-site instead of tex. I’m sure one of Irreal’s well informed readers will jump in with the answer.

I know this trip down memory lane isn’t all that interesting to most of you but I’m writing about it for the same reason that Ridenour did: to help someone else struggling with the problem find the answer.

Posted in General | Tagged | Leave a comment

Presentations With Org

Ankit Gadiya has a very nice post that explains and demonstrates how he uses Org for presentations. It’s a nice workflow that uses Org, Logos, Olivetti, and Pikchr to create and display his presentation.

Gadiya starts his presentations with an outline. That’s a natural thing to do in Org mode, of course, and he has things configured so that each header and subheader is the title of a slide. That makes it easy to move things around an restructure the presentation.

He uses Pikchr, a Pic-like language for line diagrams. I didn’t know about it and have never used it but I have used Pic a lot and really like it. I’ll definitely be checking out Pikchr since I don’t use the Troff suite much any longer.

A nice thing about Gadiya’s post is that he shows his complete configuration so it’s easy to replicate or adapt it. I like this approach much better than the fancier packages like Apple’s Keynote that I always find difficult to use because they offer so many features.

If you regularly—or even occasionally—find yourself giving presentations, take a look at Gadiya’s post. If you’re an Org user, you’ll find the workflow familiar and easy. He has a lot of good ideas and they’re all documented well in his post.

Posted in General | Tagged , | Leave a comment

I’m Back!

Sorry for the missed posts. I’ve been traveling. On a train. In coach. For about 30 hours. The itinerary didn’t list it but I’m pretty sure we crossed the River Styx at one point. The person behind me was coughing her lungs out and now I have whatever she had and am coughing my lungs out.

Perhaps worst of all for a nerd is that WiFi (and even broadband) was spotty and at one point I had to ask the conductor to reset the router because it wouldn’t complete connections. Oddly, she knew just what I meant and fixed that problem but the broadband—upon which, after all, the WiFi depends—was still unreliable along much of the route.

I’m safely home now at the Irreal Bunker so normal blogging should resume.

Posted in Blogging | Tagged | Leave a comment

Bending Emacs 6: Overlays

Álvaro Ramírez has another video in his Bending Emacs series out. It’s about something that we see all the time but may not even be aware is happening or how it works. The subject of the video is overlays.

Overlays are a way of decorating, changing, or hiding text. A nice feature of them is that the underlying text is not changed. Rather the changes are simply overlayed on top of it and when the overlay is removed, the underlying text in the buffer is revealed again.

Although it may sound complicated or obscure, it’s actually pretty simple: you simply specify the beginning and end of the text you wish to overlay and make a simple call insert the overlay. Ramírez has a bit of code that shows several different type of overlays and invokes them one by one in the video. It’s a nice demonstration because you get to see many of the things overlays can do.

After those demonstrations, Ramírez shows some “experiments” he’s done with overlays. One of them completely change the look of the text by adding images and looking up and adding additional data on the fly. Another takes a regular expression and “redacts” anything it matches by replacing the text with x’s.

The video is 11 minutes, 57 seconds so plan accordingly but it is, believe me, worth a few minutes of your time to explore what’s possible with overlays.

Posted in General | Tagged | Leave a comment

Some Nice Examples Of Org Babel Use

Donald Hunter over at donaldh.wtf has an interesting post about Org Babel’s many powers and uses. Hunter thinks of it as a “polyglot Jupyter Notebook ” and uses it extensively for both professional and personal projects. His post consists of several examples of how he uses it.

One trick he shows is using the dir command to specify a remote machine. That allows him to capture output from the remote host.

Another trick he uses is isolating the boilerplate for several similar source blocks into a separate block and including it in the blocks that need it with the noweb syntax. See his post for a fully worked example.

Finally he demonstrates the real power of Babel by using two different languages. The way that works is that you use a convenient language in one block to produce an intermediate result and finish the computation in a second block with another language that calls the first block to get the intermediate result.

In his example, he uses an SQL block to read data from an SQL database and processes that data in the second block using Gnuplot. Of course, you can chain more than two blocks together or have more than one block feeding the final block.

Org Babel really is a powerful system and is part of what sets Org apart from Markdown and other markup languages. You might also want to take a look at Mike Hamrick’s video on using Org and Babel for writing.

Posted in General | Tagged , | Leave a comment

Happy Thanksgiving

Here in the United States it’s Thanksgiving and I’m celebrating with (part of) my family. Therefore, there will be no Irreal post today except to wish those of you in the US. and elsewhere that Thanksgiving is celebrated a happy Turkey Day. Let’s all be grateful for blessings we’ve been given and reflect on them.

Posted in General | Leave a comment

Patent Trolls Want To Rewrite The IPR

As we all know, one of the scourges of our industry is the Non-Practicing Entity (NPE) better known as the patent troll. Given that by definition NPEs don’t produce anything except lawsuits, their activities are deeply corrupting of a system that was designed to protect those who do.

One of the few effective ways that companies—especially small companies—have of protecting themselves is the Inter Partes Review (IPR) that provides a quicker, cheaper way of challenging bad patents. The patent trolls hate it, of course, and now the Patent Office is proposing to change the rules to make IPRs useless.

The EFF has an excellent post that explains the issues and what you can do to help. What you can do is to file a comment with the Patent Office opposing this rule change. The EFF’s post has a sample comment that you can personalize to make your feelings known. The PTO is trying to rush this through for some reason so comments close on 2 December 2025. Therefore, it’s important that you act quickly. The EFF post has a link for you to file the comment so the whole thing should take only a minute or two.

If you live in the US, please take the time to make your feeling about the ploy known. As I said, it will only take a minute or two.

Posted in General | Tagged | Leave a comment

Casual CSV

Charles Choi is back with another app in his Casual Suit.This time it’s Casual CSV, a front end for csv-mode. As Choi says, CSV is a seemingly simple format but the rules are really fussy and easy to violate. That’s where csv-model comes in. You can see Choi’s post for some of the amenities it offers but the nicest, in my opinion, is the ability to display the file in a spreadsheet format. Again, see Choi’s post for a screen shot. One of the things that Casual CSV adds is the ability to select a region of rows and export them to an Org or Markdown table (if your flavor of Markdown supports tables).

Choi says that he thinks of CSV files as a data exchange format and avoids editing them if he can. I certainly agree with that. I’m sure I could count the number of times I’ve edited a CSV file on a single hand. Nonetheless, it’s nice to have a tool that can make having to do so a bit easier.

At the end of his post Choi offers a few suggestions to make working with CSV easier. He says you should turn off line wrapping and turning on field alignment and separator auto detection. He provides a bit of Elisp that you can add to your configuration to do this automatically. Now he could only find a way of having me wrirte CSV instead of CVS (the pharmacy). I got it wrong more times than right in my first draft of this post.

Sidenote

Sorry for posting this late. I’m traveling and my network connection is sketchy.

Posted in General | Tagged | Leave a comment

A Revival Of Blogs?

John Lampard over at disassociated has a post about the renaissance of
blogging in general and wonders if niche blogs are next
. I was a bit surprised by that because I wasn’t aware that blogs went anywhere.

Perhaps I’ve got a narrow view of things but I’m not aware of there being significantly less blogs than there ever were and almost all of them are what could be called niche blogs in the sense that they mostly deal with a single subject. There are, to be sure, some general newsy blogs—Instapundit comes to mind—but most seem to be focused on a particular subject or at least a narrow range of related subjects.

Certainly Irreal is like that. Most of its posts are about Emacs, followed by those of some other technical subject, and finally a few rants about my favorite hobby horses. Similarly, I have a lot of blogs in my feed that are like that. Their niches are varied: some are about Emacs, some are about Unix, some about computing in general, some are about writing, and some are about a diverse set of things that interest me.

The type of blog that was literally an online diary—today I had a Reuben for lunch—are happily extinct but it seems to me that you can find examples of most other types. What do you guys think? Does it seem to you that blogs have died out and that niche blog especially are a dying art? I don’t think so but as I said, I may have a narrow view of things based on my working on Irreal everyday.

Posted in Blogging, General | Tagged | Leave a comment

Is Markdown Really Holding You Back?

Brian Hogan has a post that I, at least, find provocative. His thesis is that Markdown—and by extension, Org-mode—are holding you back because they’re not semantic. That’s true, in a way, I guess, but both Markdown and Org-mode are Markup languages. That means they’re concerned with producing publishable content: they consider what things look like on the printed page or the screen.

They are, in their way, semantic languages in that they specify what grammatical object is being described. Markdown, and especially Org, can use that information to display the item in a manner appropriate for the output target. Of course, Hogan wants a stronger sense of semantic where the markup describes higher order meanings such as “step in a process” instead of simply “a bullet item”.

The problem is that that always ends in tears. It ends, in short, in abominations like XML. XML is, in fact, what Hogan really wants but even he knows it’s a horrible solution beloved by exactly no one. Still, he says, it’s necessary because otherwise it’s too hard for AI agents and the like to discern the meaning of the markup.

Forgive me for saying that that’s not my problem. My problem is producing a nice looking document that human beings can read, understand, and enjoy. If AI companies want to get rich by training their AI agents on my content, it’s certainly not incumbent on me to make their job easier.

And by the way, why doesn’t Hogan mention Org-mode. It does, after all, meet a lot of his requirements, have a single definition, and allows the easy—for some definitions of easy—specification of backends that can be semantically aware.

So, as Betteridge’s Law of Headlines insists, no, Markdown is not holding us back. I understand Hogan’s views to the contrary and I certainly don’t accuse him of bad faith but I fail to see how Markdown or Org-mode is holding us back in any meaningful way.

Posted in General | Tagged , | Leave a comment