Last active
February 20, 2016 14:53
-
-
Save jrhorn424/7496538 to your computer and use it in GitHub Desktop.
Fastmail keybindings for MailMate
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
##################################################################################################### | |
### WARNING: not kept up to date. I don't know the format well, and comments were causing issues. ### | |
### See next file for up-to-date mappings. ### | |
##################################################################################################### | |
{ | |
// Keybindings to emulate Fastmail shortcuts in MailMate | |
// From: http://fastmail.wikia.com/wiki/KeyboardShortcuts | |
// Created by Jeffrey Horn <[email protected]> | |
// See: http://manual.mailmate-app.com/key_binding_selectors | |
"n" = "nextMessage:"; | |
"p" = "previousMessage:"; | |
"j" = "nextThread:"; | |
"k" = "previousThread:"; | |
"o" = "openMessages:"; | |
"\U000D" = "openMessages:"; // Enter | |
"\U000A" = "openMessages:"; // Return | |
"y" = "archive:"; | |
"m" = ( "toggleMuteState:", "archive:" ); // FIXME: Should be 'markAsMuted:' | |
"e" = "expandThread:"; // FIXME: should be 'toggleThread:' | |
"E" = "collapseThread:"; // extra, not in Fastmail by default | |
"g" = "goToMailbox:"; | |
"/" = "mailboxSearch:"; | |
"#" = "deleteMessage:"; | |
"d" = "deleteMessage:"; | |
"m" = "moveToMailbox:"; | |
"!" = "moveToJunk:"; | |
"r" = "reply:"; | |
"a" = "replyAll:"; | |
"c" = "newMessage:"; | |
"f" = "forwardMessage:"; | |
"s" = "toggleFlag:"; // extra, not in Fastmail by default | |
"M" = ( "toggleMuteState:", "archive:" ); // FIXME: Should be 'markAsMuted:' // extra, not in Fastmail by default | |
"z" = "undo:"; | |
// Only in MailMate | |
"N" = "moveDownAndModifySelection:"; | |
"P" = "moveUpAndModifySelection:"; | |
"J" = "moveDownAndModifySelection:"; | |
"K" = "moveUpAndModifySelection:"; | |
"Z" = "redo:"; | |
"." = { | |
"r" = "toggleReadState:"; // FIXME: should be 'markAsRead:' | |
"u" = "toggleReadState:"; // FIXME: should be 'markAsUnread:' | |
"p" = "toggleFlag:"; // FIXME: should be 'markAsFlagged:' | |
"n" = "toggleFlag:"; // FIXME: should be 'markAsUnflagged:' | |
}; | |
"*" = { | |
"a" = "selectAll:"; | |
"r" = ( "selectWithFilter:", "#flags.flag = '\\Seen'"); // Selects all mail you've read. | |
"u" = ( "selectWithFilter:", "#flags.flag !=[x] '\\Seen'"); // Selects all unread mail. | |
"p" = ( "selectWithFilter:", "#flags.flag = '\\Flagged'"); // Selects all starred mail. | |
"n" = ( "selectWithFilter:", "#flags.flag !=[x] '\\Flagged'"); // Selects all unstarred mail. | |
}; | |
"'" = { | |
"a" = "selectAll:"; | |
"n" = "deselectAll:"; | |
"r" = ( "selectWithFilter:", "#flags.flag = '\\Seen'"); // Selects all mail you've read. | |
"u" = ( "selectWithFilter:", "#flags.flag !=[x] '\\Seen'"); // Selects all unread mail. | |
"p" = ( "selectWithFilter:", "#flags.flag = '\\Flagged'"); // Selects all starred mail. | |
"n" = ( "selectWithFilter:", "#flags.flag !=[x] '\\Flagged'"); // Selects all unstarred mail. | |
}; | |
} | |
/* | |
Not included above: | |
x = Select conversation | |
u = Refresh all sources | |
% = Permanently deletes all messages from any folders in the selected conversations | |
L = Displays external images | |
other various keys relevant to Fastmail's unique UI | |
// composer | |
Ctrl-Enter = send message | |
Ctrl-s = save message to Drafts folder | |
Shift-Alt-Ctrl-Backspace = discard message being composed | |
*/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
n = "nextMessage:"; | |
p = "previousMessage:"; | |
j = "nextThread:"; | |
k = "previousThread:"; | |
o = "openMessages:"; | |
"\n" = "openMessages:"; | |
"\n" = "openMessages:"; | |
y = "archive:"; | |
m = "moveToMailbox:"; | |
e = "expandThread:"; | |
E = "collapseThread:"; | |
g = "goToMailbox:"; | |
"/" = "searchAllMessages:"; | |
d = "deleteMessage:"; | |
"!" = "moveToJunk:"; | |
r = "reply:"; | |
a = "replyAll:"; | |
c = "newMessage:"; | |
f = "forwardMessage:"; | |
s = "toggleFlag:"; | |
M = ( | |
"toggleMuteState:", | |
"archive:", | |
); | |
z = "undo:"; | |
N = "moveDownAndModifySelection:"; | |
P = "moveUpAndModifySelection:"; | |
J = "moveDownAndModifySelection:"; | |
K = "moveUpAndModifySelection:"; | |
Z = "redo:"; | |
"." = { | |
r = "toggleReadState:"; | |
u = "toggleReadState:"; | |
p = "toggleFlag:"; | |
n = "toggleFlag:"; | |
}; | |
"*" = { | |
a = "selectAll:"; | |
r = ( | |
"selectWithFilter:", | |
"#flags.flag = '\\Seen'", | |
); | |
u = ( | |
"selectWithFilter:", | |
"#flags.flag !=[x] '\\Seen'", | |
); | |
p = ( | |
"selectWithFilter:", | |
"#flags.flag = '\\Flagged'", | |
); | |
n = ( | |
"selectWithFilter:", | |
"#flags.flag !=[x] '\\Flagged'", | |
); | |
}; | |
"'" = { | |
a = "selectAll:"; | |
n = ( | |
"selectWithFilter:", | |
"#flags.flag !=[x] '\\Flagged'", | |
); | |
r = ( | |
"selectWithFilter:", | |
"#flags.flag = '\\Seen'", | |
); | |
u = ( | |
"selectWithFilter:", | |
"#flags.flag !=[x] '\\Seen'", | |
); | |
p = ( | |
"selectWithFilter:", | |
"#flags.flag = '\\Flagged'", | |
); | |
}; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment