Zamansky Elisp Video #1

The first video in Mike Zamansky’s promised series on Elisp has dropped. This video serves as an introduction to the series. It mostly positions Emacs as a Lisp interpreter that comes with an editor. Or as Irreal is fond of saying, a recapitulation of the original Lisp Machines. Emacs is not really a Lisp Machine, of course, but I’ve found that it helps my understanding of it to think of it that way.

Zamansky’s central point is that everything you do in Emacs amounts to running one of it’s commands. The obligatory example is what happens when you type a character into a buffer. That results in the command self-insert-command being run. Zamansky shows how you can run any s-expression in a buffer by putting the cursor at the end of it and running eval-last-sexp (bound to Ctrl+x Ctrl+e) and uses that to open a file and to change to another buffer.

Zamansky takes the material slow and easy. Even though he described it as just a short introduction to the series, the video ran 19 minutes, 49 seconds so he’s making sure to cover each point carefully and illustrate it with examples. Obviously, at almost 20 minutes, you’re going to have to schedule some time but as with all of Zamansky’s videos, it’s time well spent.

Posted in General | Leave a comment

A Nice Dark Theme

The Minions aren’t going to like me saying this but I’ve stumbled upon a nice and actually legible dark theme. idlip Dilip has a new, high-contrast theme, Haki, that started with Prot’s modus-vivendi and some of Daniel Mendler’s packages to design a theme that was perfect for him.

Take a look at his screenshots to see what it looks like in a number of Emacs modes. Notice how everything is legible. There is no dark blue on black or other unreadable hideousness. Just sharp, high-contrast colors. And I love the irony of the top post in his Elfeed screen being Irreal’s Red Meat Friday: Dark R Sessions in ESS.

Even though it’s relatively new, Haki is already available in MELPA. The README has installation instructions and a use-package recipe. I will not, of course, be abandoning my light mode non-theme but if you’re in the intersection of people who (1) like dark themes and (2) like being able to read the text in the buffer you should definitely take a look.

Posted in General | Tagged | Leave a comment

The Eshell Manual

As many of you know, I’m a big fan of Eshell and use it was my main shell. The traditional gripe about it has always been that there’s no manual. John Wiegley, who wrote Eshell, offered to write a manual if someone would pay for it but, apparently, no one stepped up so for many years there was no manual.

I’ve been dimly aware of a project to write such a manual and, indeed, there’s an early version in my Emacs 28.2 build. Jim Porter writes that he has merged what he hopes is the final version of the manual and is asking that anyone interested take a look at it and let him know if you find any gaps or bugs. He’s added a lot of material since the last release so it’s definitely worth a look if you’re an Eshell user.

There’s a lot of power in Eshell but without a manual, it’s always been hard to discover. Mostly you had to read blog posts or videos by those who are familiar with the source code. Now that there’s a complete manual, it’s probably worthwhile reading through it to discover all that it’s capable of.

Most developers don’t enjoy writing documentation so we owe Porter a special debt of gratitude for picking up the project and seeing it through.

Posted in General | Tagged | Leave a comment

Marks, Bookmarks, and Registers

Protesilaos Stavrou (Prot) has another great video out. This one is about marks, bookmarks, and registers. You can probably guess from the title that the video is mainly about ways of moving around in a file or files efficiently.

He starts by making the obvious but often overlooked point (heh!) that the mark is really the last place the point (or cursor) was. That’s not literally true, of course. If you move the cursor left or right or up and down a line, you won’t affect the mark but any “big” movement sets the mark to where the point was before the movement.

He moves on to the usual marking of regions but along the way he does an excellent job in explaining the use and value of Ctrl+x Ctrl+x. In the past, I hardly ever used it because I didn’t understand its use cases very well. After watching this video I’ll definitely be using it more often. While discussing marks, he also describes how to use them to remember locations.

Then he moves on to remembering locations by storing them in registers. It’s a more deliberate way of remembering a location than by storing a mark. When you want to jump to a location stored in a register, you’re given a nice list of the registers to help you remember which register is storing your desired destination.

Finally, Prot considers bookmarks. They’re sort of like storing a location in a register but they’re persistent. As with registers, you get a listing of the available bookmarks when you’re ready to visit one.

Prot ends the video with a bit of configuration that you may find useful. The video is 35 minutes, 33 seconds long you’ll have to schedule some time but it’s well worth your time. Even if you’re an experienced Emacs user, you may learn a few new things.

Posted in General | Tagged | Leave a comment

Tramp Video

Over at Skybert Hacks, Torstein Johansen has a nice video on using Emacs tramp. Although it does sometimes get bad press, Tramp is a gem and a definitely underappreciated feature of Emacs. It also can seem hard to learn—especially when using an intermediate host—but as the video shows there’s only one thing invocation to know.

For me, the hard part was going through an intermediate host. It was never as easy as it was supposed to be and only Phil seemed to have a handle on it. But Johansen has a nice way of approaching it. Instead of relying on the Emacs invocation, it does some SSH configuration magic. Once that’s done, you simply invoke tramp in the normal way and SSH takes care of the intermediate host.

This is a really nice video even if you’re already familiar with Tramp and it’s well worth a few minutes of your time. The video itself is only 8 minutes 16 seconds so you should be able to fit it in easily.

Posted in General | Tagged | Leave a comment

Vanilla Emacs Configuration

Emacs Elements has another useful video on a minimal configuration for vanilla Emacs. This is mainly for the new user, of course, but I was struck by how closely it matched my basic configuration. My current init.el is about 2,500 lines so there’s obviously a lot more there but I think the video captures what a new user needs to get started with Emacs.

The video starts out by getting rid of all the annoying things that everyone wants gone. That includes the startup screen, the tool bar, and the menu. I’d add the scroll bar to that but others may disagree. Note that deleting the menu bar on macOS can be problematic and you may want to omit that change if you’re on macOS.

Next up is configuring the package system. Part of that was arranging to include the use-package package. Fortunately, after Emacs 29 that will no longer be necessary because it will be included automatically. The other part of package configuration that everyone will want to include is adding MELPA as one of the package repositories. That will never be included out-of-the-box because of ideological reasons so it’s needs to be done manually. Most of the useful packages are available only there so including it is pretty much mandatory no matter what the true believers tell you.

The video includes some other useful configurations so you should definitely take a look if you’re interested in a minimal Emacs configuration. The video is only 8 minutes, 36 seconds so it should be easy to fit it in

Posted in General | Tagged | Leave a comment

How Many Years Have You Been Using Emacs?

Tuhdo asks a question on the Emacs reddit: How many years have you been using Emacs? On the one hand it seems like the answer should be “who cares?” but I found the answers revealing. Those answers ranged from “about a week” to “over 40 years.” One thing for sure, my 15 or 16 years puts me right in the neophyte range.

The thing about the answers is that no one said, “I’ve been using it for X years so I’m an expert.” Even folks with 40 years of experience acknowledge that they’re still
learning the mysteries of Emacs. One guy said said, “I’m a newbie, I started in 93.” Someone else replied to that, “Same for me. I graduated from college in 1983 and started using Emacs a couple of years before that.”

I really like the humble attitude of long-time Emacs users. Even if they’ve been using it for 40 years or more, they still describe themselves as “newbies”. This fact should give pause to those who whine that Emacs has a steep learning curve and is just too hard to bother with. Yes, you won’t learn everything there is to know in a couple of weeks or a couple of decades but the journey is rewarding and after a fairly short time you will be outediting those posers using the latest blingware.

Posted in General | Tagged | Leave a comment

Red Meat Friday: Dark R Sessions in ESS

lf_araujo has a question:

How to fix too dark R session colors in ESS (right pane)?
by u/lf_araujo in emacs

You know what the Minions would say.

Posted in General | Tagged , | Leave a comment

Emacs and Standard Manuscript Format

I ran across this video from a year ago by Chris Maiorana on using Emacs as a typewriter. By that he means producing a publishing industry standard format manuscript for your fiction. The trick is to use the sffms LaTeX package. The resulting manuscript uses a monospace font (usually Courier), is double spaced, and generally looks like it was produced on a typewriter. The idea is that it’s easy for editors to read and annotate.

The sffms package is easy to use. Most everything you need to know is covered in Maiorana’s video. There are a few options that you can use to specialize your manuscript for various publishers but you can mostly just use the defaults. The sffms Manual list all the options and other commands in the package.

One of the nice things about the package is that you don’t need to know very much LaTeX to use it. It was designed for the nontechnical author. Despite that, Maiorana uses the excellent AUCTeX package for his writing environment. The only feature he uses in the video is compile and view (Ctrl+c Ctrl+a) so even using AUCTeX is simple.

Despite the title of his video, you aren’t, of course, using a typewriter when you use the sffms package. You are, in fact, using Emacs and have all the usual powerful editing commands at your command. The difference is that when you print the results, it looks as if it were produced on a typewriter.

I doubt it would be too hard to integrate the sffms package with Org mode but it’s so simple to use it directly that it’s probably not worth the effort. The video is 15 minutes, 28 seconds long so you’ll need to schedule some time but if you need to produce documents in standard manuscript form, it’s well worth your time.

Posted in General | Tagged | Leave a comment

Zamansky 81: Elfeed-webkit

He’s back! After a long hiatus, Mike Zamansky has returned with another video in his Using Emacs Series. For those of you not following along, Zamansky recently retired and has gained a second wind. He has a series on using Elisp planned but in the meantime, he offers us a splendid video on using and installing elfeed-webkit.

I’ve written about elfeed-webkit before [1, 2] but there’s nothing like seeing it in action. Configuring and using elfeed-webkit is so simple that Zamansky originally thought there wasn’t enough for a video but then he realized that the hard part was compiling Emacs to support the XWidget library. That isn’t really hard but it can be fiddly and lots of folks seem unaware of how to do it.

Zamansky solves that with a demonstration of how to compile Emacs to support XWidgets and other options. Mostly it’s a matter of running configure with the proper options but if you haven’t compiled Emacs from source before, you’re probably going to be missing some required libraries. Zamansky walks us through that and then explains how to install elfeed-webkit. His demonstration of how to compile Emacs is specific to Mint Linux but should work, mutatis mutandis, for any Linux distribution. It’s pretty close to what I do to compile it under macOS except that downloading libraries is different.

The video is 24 minutes, 13 seconds so you’ll definitely need to schedule some time but, come on, it’s one of Zamansky’s videos so you know it’s worth your time. I second Zamansky’s conclusion that elfeed-webkit is a game changer. If you use RSS—and you should—and you read your feeds with elfeed you really, really need to check out elfeed-webkit.

Posted in General | Tagged | Leave a comment