I'm trying to figure out how, if at all possible, to bind specific keymapping to files of certain extension so that when editing those files (of a specific programming language) I can use keymap X while for other languages I could use keymap Y.
If not possible, is it possible to bind specific keymapping to a project?
And if all is lost, is there at least a shortcut to allow a rapid change of keymapping (that is, without having to open the settings menu, change the selection at the drop-down menu and confirm)?
You can't assign a specific keymap to a specific language, other than by writing a plugin. To switch keymaps quickly, use the View | Quick Switch Scheme action (bound to Ctrl-backtick in the default keymap).