Browse the docs

Coming from TextExpander or Alfred

Import snippets from TextExpander, Alfred, Raycast or macOS Text Replacements, and how their placeholders map to Switchboard's snippet tokens.

Snippets in Switchboard are macros in a simple shape (see Snippets). Import turns each snippet of the other app into one, in a group named for where it came from: TextExpander, Alfred snippets, Text Replacements or Raycast. You see the review first, with a note for every placeholder that did not map, and nothing is added until you click Import. As with the other importers, nothing is switched on while the other app still expands the same abbreviations: turn on Take over when you have quit it or turned its snippets off. Importing the same file again replaces the snippets and adds no duplicates.

Use File › Import… and choose the file, or drop it on the window.

TextExpander #

In TextExpander, select your snippets and choose File › Export › CSV (columns abbreviation, content, label). Import the .csv.

TextExpanderSwitchboard
%clipboard{{clipboard()}}
%|{{cursor}}
%filltext:name=Label%, with :default={{ask:Label|default}}
%fillarea:…%a field (single line), with a note
%fillpopup:…%a field with the first choice as its default, choices listed in a note
%Y %y %m %d %e %H %I %M %S %p %A %a %B %b{{date("…")}} with the ICU equivalent; neighbours like %Y-%m-%d become one format
%1m %1d %1H %1Ithe unpadded forms (M, d, H, h)
%@+3D before a date macroan offset: {{date("MM/dd/yy", "+3d")}} (D days, W weeks, M months, Y years, h hours, m minutes)
%%a percent sign
%snippet:…%, %key:…%, %url:…%, %mouse:…%, %fillpart, anything elsestays as typed, with a note

A row with no abbreviation is listed as not imported.

Alfred #

In Alfred's Preferences › Features › Snippets, choose a collection and Export… to get an .alfredsnippets file. Import it directly. The collection's prefix and suffix are added to every keyword, and snippets without a keyword (you pick those from Alfred's viewer) are listed as not imported.

AlfredSwitchboard
{clipboard}{{clipboard()}}
{clipboard:2} (older items)stays as typed, with a note
{cursor}{{cursor}}
{date:format}, {datetime:format}, {time:format}{{date("format")}} (Alfred uses ICU too)
{date}, {time}, {datetime}a fixed pattern close to the short style, with a note
{isodate}, {isotime}, {isodatetime}ISO patterns
{snippet:name}, {allsnippets}stays as typed, with a note

Braces that are not Alfred placeholders (code, JSON) are kept as text. A snippet Alfred did not auto-expand is imported with a note.

Raycast #

In Raycast's Search Snippets, choose Export Snippets and import the .json.

RaycastSwitchboard
{clipboard}{{clipboard()}}
{selection}{{sel}} (empty when you type the abbreviation; works from the palette or a hotkey)
{cursor}{{cursor}}
{date}, {time}, {datetime}, {day}{{date("…")}} with Raycast's default format
{date format="…"}, with offset="+2d"{{date("…", "+2d")}}
{argument name="X" default="Y"}{{ask:X|Y}} (choices and modifiers are noted)
{uuid}{{uuid()}}

Text Replacements #

Apple's replacements fire after a word break, so they import with the any delimiter, keeping what you typed, and with case matching. Two ways in:

  • File › Import Text Replacements from This Mac reads the ones System Settings holds right now.

  • Drag the entries out of System Settings › Keyboard › Text Replacements onto the Desktop and import that .plist.

macOS also expands its replacements, so they may expand twice. The review says so: turn off the ones you keep here in System Settings, or leave the imported ones off. Replacements that are switched off in System Settings import switched off.

Universal Actions and selected text #

Alfred's Universal Actions and Raycast's selected-text commands act on whatever you have selected. In Switchboard that is Actions for This, and the gesture is the one LaunchBar uses: tap ⌥Space to search, hold it with something selected (or a file in Finder) and the palette shows the actions for that thing instead. Your own macros appear there when they take that kind of thing. Turn the hold off in Settings › Palette if ⌥Space should only ever search; ⌃⌥Space always opens the actions. See Keyboard shortcuts and Act on what you're looking at.

Differences to expect #

  • Snippet text is plain. Styled text from TextExpander arrives as its plain text.

  • Nesting one snippet inside another is not supported.

  • Case: ;addr, ;Addr and ;ADDR follow the snippet's match-case rule; see Typed text.

  • A literal {{ in your text is escaped as \{{ so it is typed as it was.

See also #

Snippets, Typed text, Coming from Keyboard Maestro