Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
Postbox-style keybindings for MailMate (save in ~/Library/Application Support/MailMate/Resources/KeyBindings)
{
// Keybindings to emulate Postbox defaults in MailMate
// From: http://www.postbox-inc.com/support/postbox_shortcuts
// Created by Ian Beck <http://beckism.com>
"f" = "nextMessage:";
"b" = "previousMessage:";
"n" = "nextUnreadMessage:";
"p" = "previousUnreadMessage:";
"T" = "nextUnreadThread:";
"o" = "openMessages:"; // This isn't actually equivalent, but it's the closest I can find
"\UF703" = "expandThread:"; //
"\UF702" = "collapseThread:"; //
"a" = "archive:";
"g" = "goToMailbox:";
"v" = "moveToMailbox:";
"s" = "toggleFlag:";
"m" = "toggleReadState:";
"r" = "markThreadAsRead:";
"j" = "markAsJunk:";
"J" = "markAsNotJunk:";
"/" = "mailboxSearch:";
// These are not the standard Postbox shortcuts, because those shortcuts are already in use
"c" = "showCorrespondence:";
"t" = "showThread:"; // Not a Postbox default, but darn useful in MailMate
// EXPERIMENTAL: send and archive action; requires MailMate build 2954 or greater
// The default Postbox shortcut is command-shift-option-return, but I haven't been able to get it working yet
"@\U000A" = ("attemptSend:", "moveParentToMailbox:", "archive"); // command-return
// Markdown shortcuts thanks to Brett Terpstra: https://github.com/ttscoff/KeyBindings/
// bold selection
"@b" = (selectWord:, setMark:, swapWithMark:, deleteToMark:, insertText:, "**", yank:, insertText:, " ", moveLeft:, insertText:, "**", moveRight:, deleteBackward:);
// italicize selection
"@i" = (selectWord:, setMark:, swapWithMark:, deleteToMark:, insertText:, "*", yank:, insertText:, " ", moveLeft:, insertText:, "*", moveRight:, deleteBackward:);
// Associate indent/outdent with quoting
"@]" = "increaseQuoteLevel:";
"@[" = "decreaseQuoteLevel:";
// Mark deleted messages as read (Postbox does this automatically)
"\U007F" = ( "setTag:", "\\Seen", "deleteMessage:" ); // ⌫ (or use \UF728 for ⌦)
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment