Endless Parentheses

Concise ramblings on Emacs productivity.

Update on tdd-mode with CIDER

I can’t write a whole new post this week due to being buried under some once-in-a-lifetime stuff. Still, the Monday post is one I refuse to miss, so I leave you today with an update on last weeks post. [...]

Test-Driven-Development in CIDER and Emacs

As I was catching up on a few Parens of the Dead episodes this weekend, I was amused at how Magnar set up his Emacs to run tests whenever the file is saved. At first I thought it wasn’t for me (I’m one of those who obsessively saves every few seconds), but I’ve been trying it out lately and it’s starting to grow on me. [...]

New Clojure lib: lazy-map

The concept of a lazy-map might sounds odd at first. How do you know if a map contains an entry without resolving the whole map? But it’s not the entries that are lazy, it’s the values they hold. See this example from the Readme: [...]

Using prettify-symbols in Clojure and Elisp without breaking indentation

prettify-symbols-mode is a very nice minor-mode that is a little too modest for its own good. You can turn it on right now if you’re using a recent Emacs, but it’ll do nothing more than turn lambda into λ in emacs-lisp-mode. Still, it’s powerful and versatile and deserves that you give it a try. To extend its feature-set you can install packages or customize it yourself, and that’s what we’re here to do today, specifically in clojure-mode. [...]

clj-refactor — Unleash your Clojure wizard.

When I first started learning Clojure, I was charmed by how well integrated CIDER was with Emacs. In many ways, it felt just like writing Emacs-lisp. Nowadays, that feeling has gone slightly past the goal mark, and there are actually features I miss when I’m writing elisp. Clj-refactor is one of them. [...]

Changing the org-mode ellipsis

The dot-dot-dot ellipsis that org-mode uses to indicate hidden content is usually just fine. It’s only when you’re staring at a document where every line is a folded headline, that you start to feel like they’re a little too much “in your face”. I have a few org files with thousands of lines and hundreds of headlines, and changing that ... to something shorter greatly reduces visual clutter. [...]

Beacon — Never lose your cursor again

What started out as a cute idea I was playing around with, eventually turned to be one of my favorite packages. Beacon won’t help you type faster, code better, or cure cancer like some of the other packages. Its effect is mostly cosmetic, but with practical benefits. Put simply, if you turn on this minor mode, whenever the window scrolls up or down a light will blink on your cursor. That’s it. [...]

Improving LaTeX equations with font-lock

It’s difficult for me to spend much time interacting with a major-mode and not find something to tweak. Even when that mode is my oldest companion in the world of Emacs, something will surely pop up. So it’s only fitting that in the final week of my thesis submission deadline I start tinkering with latex-mode again. [...]

Paradoxical Hydras

Quick update to say that I’m quite pleased with the Hydra package. Turns out it’s not just eye-candy on top of keymaps, it also offers convenient functionality that is rather dull to implement on plain keymaps. [...]

Multiple Cursors keybinds

The Multiple Cursors package has been given much praise throughout the Emacsphere. It has a smaller use-case than keyboard macros, but it is usually quicker and just plain looks awesome. To make full use of its commands, I combine two of the concepts I've explained here before, rebinding M-number and intuitive keymaps. [...]

Better time-stamps in org-export

org-mode has a very useful command, org-time-stamp, which helps you insert dates from a calendar. So you can quickly type C-c . RET to insert <2015-10-05 Mon>, for instance. These time-stamps are used by Org in a variety of ways, so they are wrapped in <> to make them easy to parse. The downside being that they look less than optimal when exported. [...]

Predicting the future with M-n

This is one of those small functionalities that makes your life considerably easier, and yet a surprising number of people don’t know about it. When Emacs prompts you for something in the minibuffer, you might be aware that you can navigate back and forth in the prompt’s history with M-p and M-n, but did you know you can even step into the future? [...]

Flycheck a directory and report the results

This weekend I found myself doing some heavy-weight refactoring in CIDER. This is the kind of situation where Flycheck helps a lot, but I still needed it to do a bit more. Every time I made a significant change to a file, I had to visit 3 or 5 other files and trigger Flycheck on each one of them. It wasn’t long before I decide there had to be a way to just Flycheck a whole directory. [...]

Improving page (section) navigation

If you’ve taken the time to browse some Elisp source files, you’ve no doubt run into that odd little ^L, a.k.a. the form feed character. Emacs uses these white space characters as page delimiters. This makes for a very convenient way to split a file into sections, and quickly navigate between them. I won’t go too deep into them, as Eric James has already written a great crash course on pages that you should go check out. [...]

Donations, donations, donations

Every computer user, to some extend, is a user of Open Source Software (even if most of them are oblivious to that). This is only possible because the developers of these pieces of software have donated their time to us, who are nothing short of complete strangers to them. These are regular people, with just as much free time as you or I—sometimes a bit more, sometimes even less. [...]