A bit of Terminology
Emacs has its own terminology for what’s commonly known as copying,
pasting and cutting - namely “saving”, “yanking” and “killing”.
On top of this, Emacs has its own internal clipboard called the
Items that you save or kill end up there and yanking pulls items
out of there.
The kill-ring is much more than a typical clipboard, but that’s a
subject for an entire post itself.
After 3 years of “waiting” for Octopress 3, I’ve decided I waited
long enough. Today I (spontaneously) migrated my personal
blog and Emacs Redux to a vanilla Jekyll setup and
I tweaked a bit their appearance. I’m reasonably pleased with the
results and I finally don’t have any excuses not to write.
I wrote about my experience moving away from Octopress
If only I had done this a couple of years ago…
I realized recently that it has been over 10 years since my first blog
post. I’ve started my humble writing “career” with Wordpress, then
switched to Octopress, and now here we are. One thing never really
changed, though - the quality of my writing. It was always abysmally
bad, as were many of the topics I wrote on. It’s really fun to look
back on all of this - I was reading some of my old articles, in the
process of migrating the personal blog to Jekyll, and I couldn’t
believe some of the things I wrote. I hope this means I’m getting
wiser with age…
I also realized that this year marked Emacs Redux’s fifth
birthday! As usual I didn’t manage to achieve the objective I’ve
set out of myself when I created it - namely produce 10-20 articles
per year for many years to come. The first couple of years were pretty
good for the blog, but then a combination of work and personal
challenges impacted significantly both my open-source work and my writing.
Anyways, lately I’ve had this burning desire to share so many thoughts
and that really got me excited about writing. Let’s see if I’ll do
better this time around, or I’ll simply fail one more time…
P.S. In the mean time I’ve started another blog, called Meta
Redux. I plan to do most of my (serious and
creative) writing there, so you might want to check it out.
After a long period of no development activity,
super-save gets an update
The latest 0.3 version of your favourite auto-saving library makes it
easier to customize the hook triggers (see
and adds an option to ignore remote (TRAMP) files (see
As a refresher -
super-save will save modified files automatically
on certain command (e.g.
switch-to-buffer) and hook triggers
Both of those are configurable via
super-save-triggers and (starting
super-save-hook-triggers. Here are a couple of examples:
;; add integration with ace-window
(add-to-list 'super-save-triggers 'ace-window)
;; save on find-file
(add-to-list 'super-save-hook-triggers 'find-file-hook)
You can now turn off
super-save for remote files like this:
(setq super-save-remote-files nil)
It seems that now
super-save is beyond perfect, so don’t expect the
next release any time soon!
super-save was extracted from
Prelude, but for some reason I
actually forgot to add it to Prelude. Today that changes as well!
For a while one of the biggest complaints people had about
Projectile was that the
alien indexing wasn’t fast enough (especially on big projects). The
reason for the (relatively) bad performance was pretty simple - even
though Projectile would normally obtain the list of project files
pretty fast (e.g. by using
git ls-files) it always did some
post-processing of the results (e.g. filtering, sorting, etc), which
is a very slow operation in Elisp on a big dataset.
Today I’ve added a new indexing
that simply dispenses with all of the post-processing and gives you
the raw power you always craved for. It’s called
yeah - naming is hard!) and it’s going to be the default indexing
method going forward (starting with Projectile 1.1 which should be released pretty soon).
You can read a bit more about it in Projectile’s
If you find yourself missing Projectile’s old behaviour just add the following to your config:
(setq projectile-indexing-method 'alien)
The old tried and true
alien method is still around, it’s just no longer the default.
P.S. I encourage all of you to help out with some of the open tickets
marked with “Help Wanted” or “Good First Issue” here. I’m trying to
clean-up shop after a long period of stagnation and I can certainly
use some help!
P.P.S. The recent 1.0 release was just a precursor to some bigger changes I
had planned to do for quite a while. Stay tuned for more updates!
Update Shortly after writing this post I’ve reconsidered the
turbo-alien naming and I opted to rename the old
alien method to
hybrid (as it was truly a hybrid of
and to change the name of
turbo-alien to simply
alien. Naming is
Back in 2013 I wrote about my favourite productivity boost in Emacs,
namely remapping Return to
which in combination with the classic remapping of
Control makes it really easy to get a grip on Emacs’s obsession with
the Control key.
In the original article I suggested to OS X (now macOS) users the tool
KeyRemap4MacBook, which was eventually renamed to
Karabiner. Unfortunately this tool
stopped working in macOS Sierra, due to some internal kernel
That was pretty painful for me as it meant that on my old MacBook
I couldn’t upgrade to the newest macOS editions and on my new
MacBook I couldn’t type properly in Emacs (as it came with Sierra pre-installed)…
Fortunately 2 years later this is finally solved - the Karabiner team
rewrote Karabiner from scratch for newer macOS releases and recently
added my dream feature to the new
Karabiner Elements. Unlike in the
past though, this remapping is not actually bundled with Karabiner by
default, so you have to download and enable it manually from
That’s actually even better than what I had originally suggested, as
here it’s also suggested to use
CapsLock with a dual purpose as
Control when held down and
Escape otherwise. I have no
idea how this never came to my mind, but it’s truly epic! A crazy
productivity boost just got even crazier!