keyboard mapping and option saving