Saving Custom Field Data before Publish

I just wrote a plugin that does just that. It’s been submitted to the WordPress.org plugin repo earlier this week and hopefully should make an appearance soon. The plugin is officially in the WordPress.org repo. In short what you are looking for is a way to have the following code available on your post editor:

jQuery(window).bind('keydown', function(event) {
    if (event.ctrlKey || event.metaKey) {
        if(String.fromCharCode(event.which).toLowerCase() === 's' ) {
            event.preventDefault();

            if ( typeof wpkeysave_save_trigger !== 'undefined' ){
                // harsh way to save draft/publish/update
                jQuery( '#' + wpkeysave_save_trigger ).trigger( 'click' );
            }

        }
    }
});

Update: The plugin is officially in the WordPress.org repo and will be actively maintained.