As a follow-up to my last post, I can happily say that I fixed my Mac’s key combinations for curly quotes by setting some “complex modifications” in Karabiner. Rather than having to compose a JSON file manually, I found this handy web utility called Karabiner Complex Rules Generator(external link) which lets you use dropdowns to define what you want to change and it just generates a JSON for you that you can import to your Karabiner install.

It could’ve been as simple as that, but there was one final thing that tripped me up due to my use of the Dvorak left-hand keyboard layout. Basically, initially I devised a file to translate, say, opt + shift + [ to opt + [ (and so on for the other quote marks) and was mystified why that didn’t work. But I downloaded someone else’s custom complex rules file and that didn’t work either, so I felt confident that it wasn’t that I’d just got the file format wrong or something – there was something quirky with my set-up, instead.

So I opened up Karabiner Event Viewer and started typing curly quotes, and what did I notice straight away? It was logging keypresses of “1” and “2”, because that’s what those keys would be labelled on a QWERTY board, and was merely translating that input into Dvorak left-hand to decide what output to produce πŸ€¦πŸ»β€β™€οΈ So once I changed my rules to go:

  • opt + 1 β†’ opt + ] (left single quote)
  • opt + 2 β†’ opt + shift + ] (right single quote)
  • opt + shift + 1 β†’ opt + [ (left double quote)
  • opt + shift + 2 β†’ opt + shift + [ (right double quote)

…then it all worked perfectly πŸ˜ƒ

If you would also prefer to regularise your curly quote key combinations the way I outlined in my last post, you should be able to grab my original modifications for QWERTY at this link(external link). If you’ve already got Karabiner installed on your Mac, you can hit “INSTALL!” at that page to import my ruleset. If you use a different layout, then change [ and ] in all the “from” rules to where on a QWERTY board your [ and ] keys reside. Hopefully it helps at least somebody!