Fixing God's horrible mistake's fix.
Now, that's all good, if you spend all your time in Mail. However, I'd like a system-wide fix. Suddenly, it came to me: an InputManager. After a bit of fiddling, I figured out how to make Jim's .mailbundle into a InputManager without even recompiling: Download the SelectionFix InputManager. (Installation instructions: Copy the folder SelectionFix into ~/Library/InputManagers/, creating that folder if it doesn't exist).
This InputManager will give every Cocoa table view non-stupid shift-arrow key selection. Wohoo! Well, with a small caveat... It only patches Cocoa applications, not Carbon apps. And which two major Apple apps aren't Cocoa? Yep, that's right... Finder and iTunes.
Dear Lazyweb: Find me's a patch that works for Carbon apps as well, even if it involves an APE.
It seems that the InputManager crashes Adium 1.0 Beta. I attached the debugger but the backtrace gave me nothing I understand... Just placing the SelectionFix folder somewhere else, then launching Adium, then replacing it should fix it. Maybe I should remake it into a SIMBL plugin...
Also, it seems that the selection is wonky if you step over the first item you selected and back again or something like that.
It's incompatible with VisualHub for some reason.
It's incompatible with craigotis.com's iProcrastinate. I'm beginning to think some of the overriden methods aren't fulfilling all their obligations... The VisualHub bug was related to selection through scripting, the iProcrastinate one to selection with CoreData.