Setting Org Mode Properties

Karl Voit has a nice bit of Elisp that makes it easy for him to set Org mode properties. He maintains his contacts in an Org file that (presumably) has the contact names in the headings and details, such as phone numbers, as Org properties associated with each heading. When a phone number changes, he makes note of that in the heading but also wants to update the phone number property.

He does that by highlighting the phone number on the headline and calling his code, which asks him which property he wants to change. He gets a list from which he can select and the highlighted region is set to the value of that property.

If you have a use case similar to Voit’s, take a look at his code. It may make your workflow easier.

Posted in General | Tagged , | 2 Comments

Zamansky 25: Tramp

Mike Zamansky has Video #25 in his Using Emacs series up. This time it’s about how to use tramp. Strictly speaking, you could do what tramp does by using scp to bring the remote file to your local machine, edit it with Emacs, and then scp it back. No one’s going to do that of course, so tramp is really useful if you frequently have to edit files remotely.

As Zamansky explains, you can also use tramp to edit files on the local machine with sudo. You can even edit remote files with sudo using tramp but the method’s not obvious. Check out the video for the details. If you need to edit remote root files a lot, you may find the method I detail here useful.

If, like me, you’re an eshell user, you can simply cd to the remote machine from eshell. That method uses tramp under the covers. Here’s an animated GIF from Bodil that shows the process in action.

Posted in General | Tagged | Leave a comment

Org Mode 9.0.3

A Christmas present from Bastien

Posted in General | Tagged , | Leave a comment

A Workflow with Org Mode

Rainer König has the latest video up in his OrgMode tutorial series. This time he discusses his personal Org mode file structure and workflow. I always find it interesting to see how others do these sorts of thing so I really enjoyed his video.

The video is about 21 and a half minutes so you may have to schedule some time to watch it.

Posted in General | Tagged , | Leave a comment

Org Mode Speed Keys

John Kitchin has a nice post that illustrates how to install context sensitive speed keys for Org mode headings. I didn’t know a framework for this existed so I found his article interesting and informative.

The particular problem he is solving is extracting an email address from an Org file of contacts and opening an email buffer so that he can send an email to the contact. He also has keys for copying the address to clipboard in various ways. That’s interesting and many will find it useful for their own work but the real value, I think, is explaining how you go about installing speed keys for Org mode.

Take a look at his code for the details. It’s pretty simple if you know a bit of Elisp. He also shows how to retrieve a property from an Org mode entry so there’s a lot to learn from his code.

Posted in General | Tagged , | Leave a comment

Working Remotely

Yan Lhert has drawn a line in the sand: He will no longer accept jobs that don’t allow him to work remotely. Working remotely is popular these days and many people extol its virtues. Those virtues often include something that involves a beach or Thailand but Lhert isn’t interested in any of that. He simply wants to work efficiently.

Lhert has two problems with “working at the office.” The first—and probably most serious—is the disaster masquerading as a fad known as open offices. Almost all startups, Lhert says, have bought into the myth of improved communication and an open and transparent culture offered by open offices. Of course, that’s nonsense as many many studies have shown. As Lhert says, “You don’t have to look far to find plenty of research on the subject—and quite frankly, there is simply no debate here.” Irreal, always at its most cynical on this subject, has long suspected that the real reasons for the popularity of open offices among management have more to do with the price of real estate and the bottom line.

The other reason for Lhert’s insisting on working remotely is working hours. Like many of us, Lhert is not a morning person and simply can’t work up to his potential when forced to get to work at 9 am. He much prefers to follow his own circadian rhythm and work from, say, 11 am to 10 pm. He’s happier and more efficient and everyone benefits. Everyone, that is, but the micromanaging control freaks that simply have to know where he is and what he’s doing while he’s working. By working remotely, he gets to control his own working hours.

It’s an interesting post and most of us in the software industry will find it enjoyable. Even if you’re simply working from home and not from an exotic location, working remotely can make a lot of sense for both you and your employer.

UPDATE [2016-12-24 Sat 13:00]: you’re → your

Posted in General | Tagged , | Leave a comment

Bulk Actions

After a hiatus of almost 4 months, Rainer König is back with another video in his excellent series of Org Mode Tutorials. If you haven’t been following along, be sure to click on the above link to the play list. There’s a ton of useful information in those (31) videos.

The latest video deals with bulk actions. The idea is that if you have an Org mode agenda up, you can mark some of the entries and then perform an action on them all at once. That’s much easier than repeating the same action multiple times. König’s example is archiving all the completed TODO items in his agenda.

I have a similar use case. Periodically, I bring up an agenda list of all the items in my blog ideas queue that I haven’t acted on. Usually they’re items that I decided weren’t interesting enough to write about or that had become too dated. I mark the ones I want to get rid of and then do a bulk cancel on them. They’re still in my blog ideas file, of course, but they no longer come up in the list of pending ideas.

The latest video is about 12 and a half minutes so it should be easy to schedule. Again, if you haven’t been following König’s tutorials, head on over to his play list and start going through them. They are the best resource I know for learning about Org mode.

Posted in General | Tagged , | Leave a comment

A Bookmark Video

One of the Emacs features that I really like and use all the time is bookmarks. I have a lot of files that I use several times every day and it’s really convenient to be able to bring them up immediately1 without typing in a file path. This works even if the file is already in a buffer so I can always do the same thing to bring one of those files up. Since I use Bookmark+, I can also set a bookmark for Irreal and Emacs will automatically open Irreal in my browser.

There are a lot of things you can do with bookmarks that aren’t obvious so I was happy to find this (old) video on bookmarks by Aaron Camposs. It’s just 7 minutes long so it’s easy to find time to watch it. Once nice thing that I was only vaguely aware of is that you can set a bookmark to a file on a remote system as well as files on the local machine. If you spend a lot of time working with files on a remote machine, this can be a real timesaver.

If you aren’t already using bookmarks, you should watch the video and see what you’re missing. It really is a great feature of Emacs that everyone should know about.

Footnotes:

1

Using an idea I stole from abo-abo, I can usually choose the appropriate bookmark with a single key.

Posted in General | Tagged | Leave a comment

The Org Mode Category Property

One of the nice features of the Org Mode agenda is that it lists the file the agenda item came from at the left of each item. That makes it easy to see what the item is about. For instance, if I see “b-ideas,” I know that this entry is an idea for a blog post.

Sacha Chua passes on a tip from D.C. Toedt from which I learned something new. It turns out that having the file name appear at the left of the agenda item is merely the default. By using the CATEGORY property in the top-level headline you can change what appears in the agenda. As Chua notes, this is great if you like to keep everything in a single file.

Having the name of your single Org file appear in each agenda item is not very helpful but by using Toedt’s tip you can easily arrange for useful information to be put there. When you read Chua’s post, be sure to follow the link to her configuration to see how she breaks out the various categories of her agenda items.

Posted in General | Tagged , | Leave a comment

Task Dependency in Org Mode

Karl Voit has an excellent post on he handles dependencies between Org mode tasks. The post is reminiscent of his chat with Sacha Chua in which he explains how he uses yasnippet to automate complex workflows. I wrote about that chat here.

As in the chat, he gives the example of his workflow for organizing trips to the local cabaret with his friends. You might not think that that demands an “advanced workflow” but, in fact, his setup is quite sophisticated. Blocked tasks don’t appear in his agenda until they are able to be worked on. His templates use the advanced features of yasnippet which adds to the sophistication of his workflow.

Another nice process he describes is using the yankpad package to handle his snippets. Although yankpad was intended as a simple way of configuring short text replacement snippets, it will also works with yasnippet so you can define and manage your snippets from an Org file instead of separate files as with yasnippet. See Voit’s post for a bit more on this.

If you’re a power user of Org mode—or want to become one—you should definitely take a look at Voit’s post. You can build amazingly complex workflows by combining some advanced Org mode features with yasnippet.

Posted in General | Tagged , | Leave a comment