Drawers and Tags

Last year, Clark R. Donley published a very nice post on using Org mode drawers and tags for writing. I missed the post when it was first published but stumbled on it now because it was mentioned in a tweet.

The post details the ways in which tags and drawers can be used to selectively prevent data from being exported. You can, of course, do this with the :noexport: tag but what if you have several sections that you sometimes want to export and other times not? In that case, the :noexport: tag can be a pain and also a source of error if you forget to change one.

Donley shows how you can mark sections with a tag and then selectively inhibit export of sections with that tag simply by changing the list of tags to be excluded:

#+EXCLUDE_TAGS: tags to exclude

Another way of accomplishing this is to put data that you may or may not want exported into a drawer. Again, you can configure your document so that all, none, or some of the drawers get exported. See Donley’s post for the details and some other features of working with tags and drawers.

Posted in General | Tagged , | Leave a comment

Malware and the iPhone

Say what you want about Apple and the iPhone but there’s one remarkable fact about it that Graham Cluley points out: the iPhone has had no significant malware outbreaks. Sure there have been some minor incidents but almost all the problems involved jailbroken phones.

You can dismiss all this as the fever dreams of fanboys but serious security researchers agree that the iPhone and ecosystem is far safer than Android. Yes, yes, it’s a walled garden and all but most users simply want a functional safe phone that they don’t have to think about and the iOS closed app store helps ensure this.

Posted in General | Tagged , , | Leave a comment

Tidying Data for Statistical Analysis

William Denton has an interesting post on tidying data to make statistical analysis easier. This may be interesting to Irreal readers because he uses Org mode and Babel to tidy the data and then to analyze the data.

The idea of tidy data comes from Hadley Wickham in his Tidy Data paper. The idea is that the data is arranged in tables where each variable is a column, each observation is a row, and each observational unit is a table. This is explained in greater detail in Wickham’s paper.

Starting with a simple data set of expenditures for two years, Denton first arranges it in a table that is easy for humans to read and understand but that is more difficult to do statistical analysis with. Using some R code he rearranges the data into a tidy format and then does some analysis by producing a couple of graphs that display the data in meaningful ways. All of this is done in an Org file using Babel.

This exact subject is of interest mainly to data scientists, of course, but I like seeing how Emacs and Org can be leveraged to help make the workflow easier.

Posted in General | Tagged , | Leave a comment

Encryption and Metadata

A graphical illustration of encryption versus metadata

Posted in General | Tagged | Leave a comment

Temporarily Changing the Dired Listing

Here’s a nice tip from @goaoio on temporarily changing the dired listing.

Xah Lee has more information on altering the dired listing, including how to make changes permanent.

If you’re not using GNU ls, you should check your manual page to see what options are available for your system.

Posted in General | Tagged | 1 Comment

GNU Privacy Guard and Emacs

Mickey has an excellent new post on using GnuPG from within Emacs. This is really easy to set up and it’s pretty much transparent once you do. I set it up years ago and until I read Mickey’s post, I’d forgotten most of the details.

The first thing you need is to is enable the EasyPG library. Recent versions of Emacs have this built in but you still need to require and enable it:

(require 'epa-file)
(epa-file-enable)

After that any file with the .gpg extension will automatically be encrypted or decrypted when saving or opening it. The first time you use a particular password in an Emacs session, Emacs will prompt you for it but will remember it for the duration of the session. If you have any asymmetric keys on your keychain, Emacs will ask you which one to use. If you don’t have or choose one, Emacs will prompt you for a symmetric key.

That’s basically everything you need to know for encrypting/decrypting files but, of course, Mickey has more. He shows you how to set up an .authinfo file that contains the keys to certain services so that they can be accessed transparently from Emacs without the need to enter a password every time you use the service. That’s also easy but there are some fiddly details so I’ll let you read about them in Mickey’s post rather than regurgitating them here.

If you’re an Emacs user, you definitely want to read this post. Even if you don’t have any encrypted files, sooner or later you will need to protect some information and by setting up EasyPG now you won’t have to stop and figure things out when you do. All you’ll have to do is remember to add the .gpg to the file name and Emacs will take care of the rest.

Posted in General | Tagged | 5 Comments

Directory-Local Variables

Just in case there’s still anyone out there who isn’t following Artur Malabarba, he has a nice post on something that I had almost forgotten about. It turns out that you can set Emacs variables on a per directory basis. These directory-local variables are especially handy for setting project variables by adding them to the root directory of your project.

The process is easy and Emacs will guide you through it if you call add-dir-local-variable. You can even arrange to have a bit of Elisp code executed so the facility is reasonably general. Take a look at Malabarba’s post for the details. If you’re working on projects where you’d like to have a special configuration, this could be a real help.

Posted in General | Tagged | 3 Comments

A Reminder About Macro Counters

Ben Maughan has a useful reminder about macro counters in Emacs. Although they can be very useful, most of us don’t use them often enough to internalize the details. I’m always glad to see posts like Maughan’s because it reminds me of those details.

Posted in General | Tagged | Leave a comment

SBCL 1.3.7 Released

The latest version of Steel Bank Common Lisp is out. This month’s release fixed a bug and introduced several optimizations. See the NEWS file for details. As usual, the release compiled without incident on my MacBook Pro and the regressions tests all passed.

If you want a really great Common Lisp environment, it’s hard to beat SBCL and Emacs/Slime. Together you have an excellent CL IDE. Even if you’re just getting started or only want to play around, this is an excellent set up.

Posted in Programming | Tagged , | Leave a comment

The Light-Weightedness of Emacs

Most of you know that I really, really love Emacs but it wouldn’t occur to me to describe it as “light weight.” For most of its life, a major complaint about Emacs was that it was so heavy weight. Who can forget the retronym Eight Megabytes And Constantly Swapping? Back when it was coined, 8 megabytes was a lot of memory so the joke is more damning than it may seem to our modern ears.

Therefore, I was a bit surprised when I saw this tweet

Emacs? Light weight? I just smiled and moved on. Later, though, I came across this reddit post that once again described Emacs as light weight.

I’ve been using Emacs or Vim for a long time and don’t have any experience with the newer editors and IDEs but seeing Emacs described as light weight makes me wonder what their performance is like. One thing for sure, it makes me glad I’m an Emacs user, whether or not it’s light weight.

Posted in General | Tagged | 9 Comments