Skip to content →

Fixing paredit in the clojure REPL

By default, paredit in the Clojure slime-repl doesn’t properly handle literal vectors and maps. This little snippet of elisp seems to fix it. (defun fix-paredit-repl () (interactive) (local-set-key "{" ‘paredit-open-curly) (local-set-key "}" ‘paredit-close-curly) (modify-syntax-entry ?\{ "(}") (modify-syntax-entry ?\} "){") (modify-syntax-entry…

Treat LaTeX command definitions as Textmate symbols

I wanted LaTeX newcommand/renewcommand definitions to show up in the Textmate symbol list, so I could use the Cmd-Shift-T shortcut to jump to them. To accomplish this, I first went to the “LaTeX Language” entry in the bundle editor, and…

Embedding fonts into an existing PDF file (via an ugly hack)

Many academic conferences require that you submit PDF files with all fonts properly embedded. Making sure this happens for your LaTeX document using pdflatex is not difficult. However, some programs used to create figures don’t have an option to embed…

Simple multiplayer, HTML game timer

I made a simple game timer to learn jQuery, and keep our house’s Settlers of Catan games moving. It runs great in a mobile browser, allows arbitrary numbers of players, and has a couple configurable timing settings. Both the source…

New Arduino library for controlling HL1606-based RGB LED strips

I’ve posted a new library at Github for controlling HL1606-based RGB LED strips, along with some details on where they can be purchased and how they can be set up. I’ll post examples later, once I get some cool patterns…