Gapple
Gapple copied to clipboard
Gmail shortcuts for Apple Mail
Gapple
Adds Gmail style keyboard shortcuts to Apple Mail. Tested on El Capitan, may not work on older versions of OSX. Inspiration taken from Gmailnator.
Supported Shortcuts
Navigation
Key | Action |
---|---|
! |
Mark as junk |
# |
Delete message |
/ |
Find in mailbox/message |
? |
Open Keyboard shortcuts |
<shift> + i |
Mark as read |
<shift> + j |
Older conversation select |
<shift> + k |
Newer conversation select |
<shift> + u |
Mark as unread |
^! |
Mark as junk |
a |
Reply all |
c |
Compose message |
e |
Archive message |
f |
Forward message |
g then a |
Go to Archive |
g then c |
Go to Contacts |
g then d |
Go to Draft |
g then i |
Go to Inbox |
g then l |
Go to Label |
g then s |
Go to Flaggged |
g then t |
Go to Sent |
j |
Older conversation |
k |
Newer conversation |
l |
Open "copy to" menu |
n |
Read next message |
o |
Open message |
p |
Read previous message |
r |
Reply |
s |
Toggle flag |
u |
Back to thread list |
v |
Open "move to" menu |
y |
Archive message |
NOTE: u
works only for open messages
NOTE: ^
= Control
key
G Keys
Gmail supports g then (a, c, d, i, s, t)
shortcuts to go to specific mailboxes. In order for the g then ...
configuration to work for Archive
and Flagged
, you will need to configure your Favorites Bar
to include these two folders. You can have other folders as well, but you must include Archive
and Flagged
. Your Favorites Bar
should look something like the following:
If you are not familiar with the favorites bar
, see the following instructions for help.
How to Install
- Download Gapple.mailbundle.zip located in the build directory, note if your building the bundle then you don't follow this step
- Enable
Mail.app
plugins:defaults write com.apple.mail EnableBundles -bool true
, note you only need to do this once - Expand
Gapple.mailbundle.zip
- Copy
Gapple.mailbundle
to~/Library/mail/bundles
, note: you may have to create thebundles
folder
Plugin Compatibility Error
Apple Mail
requires a Plugin Compatibility
UUID in order for a mailbundle
to load. If you get an error regarding Gapple.mailbundle
when Mail
loads, it is most likely due to the UUID
. To fix this, follow these steps:
- Download the project as laid out in Setup Workspace
- From
terminal
rundefaults read /Applications/Mail.app/Contents/Info PluginCompatibilityUUID
- This will print the current Mail
UUID
to the screen - It should looks something like
DAF41AB7-F9AD-4273-9934-C81C74705B69
-
Copy
the value to the clipboard. - Edit the
info.plist
file located in~/Desktop/Gapple/Supporting Files
- Add the
UUID
to theSupportedPluginCompatibilityUUIDs
of the file - Save the
info.plist
and follow the Compile instructions
The SupportedPluginCompatibilityUUIDs
section of the info.plist
looks like this:
<key>SupportedPluginCompatibilityUUIDs</key>
<array>
<string>B61772F2-9975-4EC0-B22F-9A277C46ADD2</string>
<string>0A13A9ED-4864-4F07-AE70-60FB2F7EA63D</string>
<string>DAFFB2B4-77BC-4C25-8CE1-2405E652D54B</string>
<string>2B98D2DD-000B-4521-83EB-7BFCB9B161C8</string>
<string>608CE00F-4576-4CAD-B362-F3CCB7DE8D67</string>
<string>1146A009-E373-4DB6-AB4D-47E59A7E50FD</string>
<string>2183B2CD-BEDF-4AA6-AC18-A1BBED2E3354</string>
<string>19B53E95-0964-4AAB-88F9-6D2F8B7B6037</string>
<string>0941BB9F-231F-452D-A26F-47A43863C991</string>
<string>04D6EC0A-52FF-4BBE-9896-C0B5FB851BBA</string>
<string>FBE5B158-5602-4A6D-9CC5-8461B9B7054E</string>
<string>1CD40D64-945D-4D50-B12D-9CD865533506</string>
<string>88ED2D4C-D384-4BF5-8E94-B533455E6AAF</string>
<string>F4C26776-22B3-4A0A-96E1-EA8E4482E0B5</string>
<string>D1EFE124-86FF-4751-BF00-80B2C0D6F2E4</string>
<string>800E5C92-87D3-429B-8740-5C6183CD13EA</string>
<string>7C051997-F45A-4523-B053-2D262F94C775</string>
<string>YOUR NEW UUID GOES HERE</string>
</array>
How to Build
Setup Workspace
You will need to be somewhat familiar with git
and xcode
.
- Open
terminal
and run the following command
mkdir ~/Desktop/test
mkdir ~/Desktop/Gapple
cd ~/Desktop/Gapple
git clone https://github.com/ironfish/Gapple.git
Compile
- Run
Xcode
- Select
Open...
from theFile
menu - Choose
~/Desktop/Gapple
as the project - Select
Build
from theProduct
menu
This will generate Gapple.mailbundle
in the ~/Desktop/test
folder. Follow How to Install for installation.
To Do
- Write tests
- ~~Find a way to use
g
instead of thectrl
key~~ - ~~Implement
g then l
forGo to label
~~ - ~~Implement
g then c
forOpen contacts
~~ - ~~Implement
l
forOpen "copy to" menu
~~ - ~~Implement
v
forOpen "move to" menu
~~ - Implement
copy to
function - Implement
move to
function
Disclaimer
I wrote this project
to learn Swift
. That being said, I am far from being a Swift or Objective-C expert.