Those gosh darn curly quotes

Sunday, November 3, 2019 19:00

I don't like word processors. I like that they remind me of my bad spelling (and oh, oh they do). But I don't like them interfering with my writing. Sometimes I'm writing weird words on purpoise. Ah, I'm hilarious. Anyway. So the first thing that goes is ANY kind of auto correct. But unfortunately, due to certain limits with our keyboards, sometimes the word processor needs to step in. For example, when it comes to the dreaded curly quotes. Sure, you could just say, screw it, it's 2019, people write novels in all emojis, I'll just use straight double quotes and be done with it. But no. Just no. Nuh-uh. No way. I will not even entertain a barbaric idea like that. Curly quotes it is. Only there's no curly quotes keys on your keyboard. And at least on Windows (no, I'm not going to switch to Apple, thankyouverymuch, been there, regretted that), you have to type ALT+0147 and ALT+0148 for open and close curly quotes respectively. That ... doesn't exactly make for a great typing experience. Especially when your novels are basically 103% dialogue anyway.

Macros to the rescue!

I'm using AutoHotkey to put a little script on the ALT+2 to ALT+5 keys to print out open and close double and single curly quotes respectively. And it's working great! Of course, adding keyboard shortcuts might always interfere with preexisting shortcuts, so I'm pretty sure I'm going to run into trouble with some software with this very basic configuration. But I could always change the bindings, so that would be an easy fix.

Now. Next step: finally ditching the convoluted native file formats of those word processors and writing everything in Markdown. Clean, easy, lightweight. And easy to convert into any format under the sun.

Here's the script I use:

#NoEnv  ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir%  ; Ensures a consistent starting directory.

!2::Send {LAlt DOWN}{Numpad0}{Numpad1}{Numpad4}{Numpad7}{LAlt UP}
!3::Send {LAlt DOWN}{Numpad0}{Numpad1}{Numpad4}{Numpad8}{LAlt UP}
!4::Send {LAlt DOWN}{Numpad0}{Numpad1}{Numpad4}{Numpad5}{LAlt UP}
!5::Send {LAlt DOWN}{Numpad0}{Numpad1}{Numpad4}{Numpad6}{LAlt UP}

Post Comment