Published October 4, 2013
Autocorrect has been driving me nuts in Skype. I found an easy way to disable it without disabling it system-wide.
- Right-click in an editable text area.
- Select "Spelling and Grammar"
- Uncheck "Correct Spelling Automatically"
It looks like this also works in other apps that support autocorrect.
Published September 22, 2013
In writing my recent posts on Keyboard Maestro, I made some new TextExpander
snippets for typing Mac modifier keys. In the table below, typing the Symbol
Abbreviation results in the Symbol being inserted; typing the HTML Entity
Abbreviation results in the HTML Entry being inserted.
||HTML Entity Abbreviation
I previously just had the symbol abbreviations set. This caused some encoding
problems in my posts. Rather than try to figure those out, I added the HTML
Entity abbreviations. These should appear regardless of the encoding of the
Published September 22, 2013
I cancelled my cable television subscription a few months ago. I don't watch
enough television to justify what my cable company was charging me monthly for
a service I didn't use.
I'm a football fan, though, and couldn't imagine going the whole season without
watching the Patriots play. Luckily, around the time I cancelled my
cable, Aereo came to Boston. If you're not familiar with their
service, Aereo allows you to watch broadcast television over the Internet. It's
only broadcast, so I can't watch the Red Sox (as they're on a cable-only
network), but local NFL games are carried on broadcast stations.
Aereo also works like an online DVR. You tell it which shows to record and you
can stream those shows whenever you want.
In my previous post I explained how I use Keybord Maestro to get
HTML5 video. That trick works with Aereo as well, which usually requires Flash
to view video on the desktop. Log in to Aereo from desktop Safari and it says
you need to have Flash installed to watch video. Change to the Mobile Safari
for iPad user agent string and you can watch video.
When using a DVR, I find it essential to be able to skip back and forth by
several seconds, mainly to skip commercials. This is impossible to do using the
HTML5 video player. I'm not sure if you can do the same in the Flash player,
but I'd rather not have to use Flash in order to watch video.
The Media Center Safari Extension adds a context-menu when you
right-click on an HTML5 video with the option to open the video in QuickTime
Player. I wrote an AppleScript that can tell QuickTime Player to jump forwards
or backwards an arbitrary number of seconds. I activate those scripts via
Keyboard Maestro macros to allow me to fast forward or rewind 5, 15, 30,
60, 120, or 300 seconds. I have those bound to the following keys:
|Rewind 5 minutes
|Rewind 2 minutes
|Rewind 1 minute
|Rewind 30 seconds
|Rewind 15 seconds
|Rewind 5 seconds
|Fast forward 5 seconds
|Fast forward 15 seconds
|Fast forward 30 seconds
|Fast forward 1 minute
|Fast forward 2 minutes
|Fast forward 5 minutes
That's a lot of shortcuts. I just remember that square brackets ([ and ])
jump by minutes and angle brackets (< and >) jump by seconds. Shift
(⇧) jumps by more and alt (⌥) shifts by less.
Combined with AirPlay Mirroring to my Apple TV, I have a decent DVR system
controlled by my MacBook Air that allows me to watch NFL football without
having to see any commercials.
The Keyboard Maestro macros are available on Github.
Published September 22, 2013
It's surprising how many websites still require Flash to view video when using
a desktop browser. I use the technique described in this Daring Fireball
post to change the user agent string in Safari on OS X, making it look
like Mobile Safari in order to get HTML5 video. This does the trick about 90%
of the time. I find that the YouTube 5 Safari Extension also helps,
often making the user agent shenanigans unnecessary.
I used to keep Google Chrome installed as a fallback since it comes with Flash
preinstalled. I find I need to use that less and less, though.
I use two Keyboard Maestro macros for this. The
Toggle iPad UA macro
(bound to ⌘.) toggles between the Mobile Safari for iPad user
agent string and the default Safari user agent string. The
Open in Google
Chrome macro (bound to ⌘⇧.) opens Safari's
frontmost tab in Google Chrome.
Both macros are available on Github.
Published August 28, 2013
I suspect I spend more time fiddling with my blogging setup than I spend actually blogging.
Back when I moved to Github Pages, I started using VoodooPad's static publishing engine. The output looked good but I didn't like the input format. Keeping a directory full of Markdown files that I can edit in Vim is preferable to using another editor.
After some looking around, I decided to try Pelican.
To extract my posts from VoodooPad, I wrote a Python script. It finds all published pages in a VoodooPad bundle directory, prepends some Markdown metadata tags (title, publish date, and slug), and writes the Markdown to a file. Here is the script:
I wanted to keep the site's file structure as similar to the current structure as possible. This included keeping the file slugs the same. Rather than trying to trick Pelican into deriving the original slugs, I added some code to my extraction script to pre-compute the slugs and include them in the Markdown metadata.
The only manual change I had to make to my content was to switch from code blocks that are indented by four spaces to fenced code blocks. This allows me to specify the language for the code block instead of relying on highlight.js to figure it out (often incorrectly).
The theme is more-or-less written from scratch. I liked the VoodooPad-generated site and had already made some customizations to it. It was fairly simple to port that over to use Pelican's templating system.