implement custom keys as a minor mode