7 TextExpander Macros to Increase Your Typing Efficiency

Make every keystroke count.

by Colter Reed
2:07 read (647 words)
by Colter Reed
2:07 read (647 words)

The most important thing you can do to increase your productivity at the computer is to learn the keyboard shortcuts for the apps you use. Seriously. Common operations all have keyboard equivalents so you can perform that action without having to move your hand away from the home row.

Close behind that are using accelerator apps like LaunchBar and TextExpander. LaunchBar (and the like) lets you launch apps, invoke scripts, and do a whole bunch of cool things without using the mouse. It’s one of the first third-party apps I install when setting up a new computer.

TextExpander watches what you’re typing, and when it sees you type in an abbreviation you’ve set up ahead of time, it will replace the abbreviation with an expanded piece of text. These can be substitutions that never change (“omw” becomes “I’m on my way.”), or they can run scripts and include the output in what you’re typing. It’s a great way to increase your efficiency when typing.

Here are the seven TextExpander macros I use the most.


  1. Insert today’s date. I use YYYY-MM-DD (eg, 2014-12-02) dates when filing and organizing. Scanned receipts, daily planner notes, and bills get a date like this in the name of the file or note. This gives a standard format I can search for to find items related to a specific date. (It also makes it easier to sort things by date.)

    Macro: yymd (plain text)

    %Y-%m-%d
  2. Insert another date. The current date is pretty simple, and TextExpander lets you do basic date adjustments (eg, yesterday is %@-1D%Y-%m-%d). If you need more complicated date calculations, you can do a shell script macro:

    #!/bin/bash
    
    echo -n "`date -v-sun +%F`"
  3. Insert a greeting appropriate for the current time. This will expand to “Good morning”, “Good afternoon”, or “Good evening”, depending on the time of day. It adds a nice touch at the start of an email or instant message, and with the macro, I don’t have to stop and think about what time it is.

    Macro: .hi (shell script):

    #!/usr/bin/python
    # coding=utf8
    
    from datetime import datetime
    import sys
    
    currentHour = datetime.now().hour
    
    if currentHour < 12:
    	sys.stdout.write("Good morning")
    elif currentHour < 18:
    	sys.stdout.write("Good afternoon")
    else:
    	sys.stdout.write("Good evening")
    
  4. Type your email address. This was one of the first tips I saw on how to use TextExpander effectively. I didn’t pay much attention to it because I didn’t realize just how often I type in my email address. Think about how my websites you sign into using your email address. You’re typing it all day long! Create a macro for it and save yourself a surprising number of keystrokes.

    Create a plain-text macro that expands to your email address. Pick an abbreviation like ..em, ..workem, ..homeem, etc. Picking this abbreviation may be a little bit of an art. You want something short, so you’re saving keystrokes, but if you’re trying to create macros for multiple emails, they’ll need to have distinct abbreviations.

    Pro tip: You can also create a keyboard shortcut to enter your email address quickly in any iOS app.

  5. Compose an email. Find yourself writing the same email over and over again? Write the email once and convert it to a template. Include some queues to personalize the message. This can be a huge productivity saver when a message comes in, or when you need to fire off a quick message.

    For example, here’s a template for a macro (.licr, plain text) for a custom message for a LinkedIn connection request.

    %snippet:.hi%, %filltext:name=name%.
    
    It was great to meet you at %filltext:name=event%. %filltext:name=Comment:default=Comment on what we talked about.%
    
    %fillarea:name=Call to action:default=If you haven’t had the chance yet, don’t forget to sign up for my newsletter at ColterReed.com. You’ll receive those great tips and techniques we discussed straight to your inbox.:width=65:height=3%
    
    Thanks again, %filltext:name=name%, and I hope you have a great day.
    
    —Colter
  6. Add your email signature. Email signatures are tricky things to get right. Even when you’ve crafted the perfect signature, you may not want to include it on every message. Rather than using the signature feature built in to your email client(s), it might be easier to put your signature(s) in a macro.

    Create a “Formatted Text, Pictures” macro for each signature. (You can also use Plain Text, if that’s how you roll.) I use macro names like ..home, ..work, ..church, ..social. That time I tried using a scanned copy of my initials as my signature? That was a macro.

  7. Type special characters. If you regularly look up how to type certain special characters, symbols or emoji, try assigning them macros. First, make sure there isn’t already a direct way to type the character, like ⌥G for the copyright symbol ©. If there is, learn it. If not, add a macro.

    My character macros include:

    Macro Character
    .command
    .option
    .control
    .shift
    .return
    .enter
    .left
    .right
    .up
    .down
    .yes 👍
    .no 👎
    .star
    .check
    .llap 🖖

    Pro tip: You can also define these as keyboard shortcuts (Settings > General > Keyboard > Shortcuts on iOS or System Preferences > Keyboard > Text on OS X).

It will take time to set up TextExpander with the macros that you will find most useful to you. It all depends on what you type, over and over. Watch for patterns. If you’re tired of typing it, see if you could turn it into a macro and never type it again.

These are a start. They’re suggestions. Ideas. The real power and productivity will come when you start to customize TextExpander to fit your workflow.

Question: What TextExpander macros do you use every day? Share your thoughts in the comments, on Twitter, LinkedIn, or Facebook.