So it turns out that I have not blogged about [ion3]{tag/ion3} yet. I’ve been using ion3 as my window manager for about half a year, and I still love it. It’s fast, does not requrie a mouse for most tasks, and has very powerful scripting and keyboard binding capabilities. But enough about the greatness of ion3… and onto the rest of the story…
For some time I wanted to have a magic key binding that would do something – anything – with my X selection. Say, I highlight a URL and push this magic key, it should display it in a new browser tab. If I highlight what looks to be a valid file, it should launch gvim on it, etc. I previously tried with sawfish, but I suffer from a serious condition that causes me to vomit when I look at lisp-like languages – one of the reasons I abandoned emacs years ago.
It was pretty easy in ion. Below is my [lua]{tag/lua} code to implement what I described…