Endless Parentheses

Concise ramblings on Emacs productivity.

New in Package.el in Emacs 25.1: Better dependency management

Package.el has gotten a series of improvements after the release of 24.4. Since I’ve found that people like to read about upcoming features, I’m starting a new series exclusively about our favorite package manager. Today, we talk dependencies. [...]

Proof general configuration for the Coq Software Foundations tutorial

Proof-general is a powerful client for the Coq proof assistant, and Software Foundations is great interactive tutorial for the language. As I was following the tutorial, I felt the need to speed things up a little bit. Today’s post is just some configuration code I wrote for that effect. [...]

Ispell and Apostrophes

If you’ve been following our journey of typography, you must now have pretty apostrophes all over your org documents. But if that’s the case, you probably also noticed a drawback. Ispell doesn’t like them very much. Now how are we supposed to use our amazing auto-correct? [...]

Upgrading ace-jump for ace-window

It was a few years ago that I learned about ace-jump-mode in one of Magnar’s Emacs Rocks episodes. Over this time, slowly but surely, this one simple command has completely taken over my workflow. It was only last week that I realised how ingrained it is on my muscle memory. As I shared this thought on twitter, @_abo_abo’s ace-window was mentioned in the conversation and I decided to give it a try. [...]

Comment boxes

This tip comes from colleague of mine. Ben has a mailing group at work where he sends weekly Emacs tips. They’re always short and useful, but today’s tip was quite the gem for me. Emacs has a comment-box command. [...]

Debug your Emacs init file with the Bug-Hunter

“With great power comes great responsibility,” and Emacs is a prime example of that. The versatility of having an editor that’s a lisp interpreter is truly empowering, but it can also backfire on you in the most unexpected ways. If you’ve ever ran into a foggy incompatibility issue between two unrelated packages, that manifested itself by turning on your mother’s coffee machine every other weekday, then you know how difficult this can be to track down. [...]

Better backspace during isearch

I’ve never been too pleased with the default behaviour of Backspace during isearch. If the last key you hit was C-s, then it does the same as C-r (albeit with less repetition), and if your match failed several characters ago, you need to hit it that many times to get back on track. Fortunately, asmeurer took the time to phrase this problem I barely realised I had. [...]

(Very Late) SX.el Announcement, and more launcher-map

SX.el, the awesome Emacs client for the StackExchange network, has been stable and happy for many months now, and it’s about time I mentioned it here. We have put considerable effort into making the interface intuitive, teaching you how to use it without the need for explanations. In fact, it would probably be a disservice to the package for me to post a tutorial, so I won’t just yet. Instead, I’ll just urge you to give it a try. [...]

Kill Sexp or Directory

Cluttered as our keyboards are with key-binds, it's always nice when we can combine two disjoint functionalities in the same key. I have M-k and C-M-k bound to killing the next and previous sexp, respectively, but that is never something I need inside a string or when typing a file name in the minibuffer. Then these keys become utterly useless! [...]

Cider-debug, a visual, interactive, debugger for Clojure

Over the last couple of weeks, I’ve been working on a Clojure debugger for Cider that is strongly inspired by Edebug. Stepping trough code of any form and injecting values into running code are the features available in this first release. [...]

New on Elpa and in Emacs 25.1: seq.el

Thanks to Nicolas Petton, Emacs is getting a new built-in sequence library in 25.1, and it’s already available on GNU Elpa for everyone. There’s not much to be said about this besides the obvious “it’s about time”. [...]

Easily Create Github PRs from Magit

In contrast with fetching pull requests, which either requires a minor-mode or some long-named branches, creating pull requests is as easy as a one-key deal. [...]

Automatically configure Magit to access Github PRs

Did you know you can fetch Github pull requests with git by adding a remote.origin.fetch configuration? That insightful tip is a courtesy of Oleh at (or emacs, a very active blog that has a habit of unbalancing parentheses wherever it goes). I like the tip so much I wanted to add something to it. Instead of manually adding that line to you .git/config file, why not have Magit do that for you? [...]

New on Elpa: Spinner.el, mode-line spinners and progress-bars

After adding asynchronous operations to Paradox, I saw the need to provide some visual feedback to the user. In the simplest sense, this could be a fixed message on the mode-line, such as “Upgrading…” or “Working”, but this is not enough. I needed movement. Movement implies something is ongoing. It catches your eye and gives you that subconscious reassurance that progress is being made. A tiny spinning wheel, hourglass, or rainbow is enough to sooth all your doubts, unerringly restoring your confidence on the software and those who made it. [...]

Prettify your Apostrophes

Now that you’ve started your journey on the Typography Express by using round double quotes, take a seat and extend that to your apostrophes as well. This snippet binds a round apostrophe to the ' key, but also inserts a pair of single round quotes with a prefix. [...]