October 19, 2017

Closing all parentheses at once

While watching interesting presentation called Inspiring a future Clojure editor with forgotten Lisp UX, I've noticed author mentioned one really cool feature I was looking for some time - Interlisp's super-paren.

In short, Interlisp had this unique super-paren option, bound to ] key, that would close all opened parentheses at once.

To my knowledge, Emacs doesn't have something like this out of the box, unless you use Allegro CL mode or SLIME, but let's see how would it be hard to implement it.

Continue reading →

February 16, 2017

Displaying org-mode appointments in calendar

One neat feature of org-mode agenda is ability to display appointments in Emacs calendar. Sadly, this isn't obvious nor enabled by default - I discovered it accidentally by browsing through Emacs themes screenshots.

In screenshot below, you can see highlighted days with planned meetings and scheduled work in my calendar.

emacs-calendar

Continue reading →

December 29, 2016

Code indexing with lein-codeindex

I just pushed lein-codeindex, a brand new Leiningen plugin for easy code indexing and referencing.

My last big project involved a lot of Clojure code and I got tired of building tags file every time when someone adds a new library or manually hunting for dependencies project is using. In short, I was a little bit envy on Cursive my colleagues were using, simply because Cursive (and other IDEs) would pull the code dependencies and try to index and reference as much as possible.

In Emacs-land there aren't many options - you'd either have to invoke etags manually, fiddle with shell scripts to figure out dependent libraries, hunt for custom regexes as etags does not recognize Clojure or use lein-gentags, which scans only the code present in given project folder.

Continue reading →