While in Apple Mail, I attempted to invoke the app Hook by pressing Control-H. Hook didn’t launch, so I tried Control-H again, but still no Hook. I then realized that 2 emails that were previously in my mailbox were no longer there. I searched Mail for the missing emails, but couldn’t find them anywhere. I then did a DuckDuckGo search for Apple Mail “Control-H”, and learned that pressing “Control-H” deletes the current message, and can be undone with Command-Z. Supposedly the email is just moved to the Trash folder.
Back in Mail, pressing Command-Z did nothing. Searching through the Trash, I still wasn’t able to find the deleted email.
The email was important, and I’d really like to recover it. Help!?
Sometimes when I undo a deletion in Mail it takes a little time for the undo to work — I think it has something to do with IMAP (eg, the delete command gets processed, then the I delete, then your client has to retrieve the message again). Sometimes the retrieval gets hung up. In those cases, usually the command to Get All Mail (or whatever it’s called) works. If not, rebuilding your mailbox could work.
As a faster option in this instance, consider using your Mail provider’s web interface to pull it from the trash, or just to reassure yourself that it still exists.
And good to know about Cmd-H! You might consider making your Hook command something less likely to be used by apps, eg with multiple modifier keys.
@anon41602260, remember that MacOS is built on UNIX, and in UNIX there are several key combinations that are bound to the system, including Control-H which is Delete. If you were to quit Hook, and invoke Control-H in any app, it may delete a single character, or in Mail’s case, the active message.
There are a few more UNIX keyboard shortcuts you can use in pretty much any app that uses the Cocoa text framework.
Ctrl + A takes you to the start of the line.
Ctrl + E takes you to the end.
Ctrl + K deletes the rest of the line after the insertion point.
Ctrl + O is line feed without moving the insertion point.
Ctrl + D is forward delete.
Ctrl + V is go to end of page.
Ctrl + N is next line.
This isn’t Hook’s default shortcut, is it? If so, I’d submit your case as feedback. “H is for Hook” and all, but as a dev I’d change my app’s default shortcut if I found out it conflicted with a common delete shortcut.
Edit: Yeah, I see from their homepage that ⌃H is their default. Really, send them some feedback.
Yes, it really isn’t. Clearly wasn’t intentional, and changing your app’s established default shortcut is annoying, but as far as bugs go, it doesn’t get more serious than data loss. I’d even extend the umbrella of what “data loss” includes to deleting a single character, not noticing just as the OP didn’t notice his first deleted email, and paying for that deleted character later.
If an operating system is submitted to The Open Group for certification, and passes conformance tests, then it is deemed to be compliant with a UNIX standard such as UNIX 98 or UNIX 03.
So, although it is currently compliant with that standard, macOS was not “built on UNIX". It (OSX) began with a Mach kernel plus a BSD “subsystem” and the Aqua UI. I was never able to discover precisely what “subsystem” meant in this context but I believe it might mean “non-kernel”. It is this component that gives macOS its UNIX-iness (what’s left of it).
It’s surprising how many apps trample over existing MacOs editing shortcuts in this way. It’s such a simple check to make, after all.
At least Hook allows you to get rid of Ctl-h easily – you can untick it in Preferences > Shortcuts, and they provide an alternative shortcut: some programs don’t even do that. For example, Tinderbox hard codes opt-tab into ‘change panel’, overwriting the built-in ‘start bullet list’, which is a ridiculous thing to do in a note taking app…
It’s a good thing that Mail allows you to use the built-in ‘Emacs’ shortcuts, because you can then use ctl-n/p to navigate instead of having to reach for the awkwardly placed arrow keys.