Sorry to come back on this. But after a night's sleep I think I have a better idea.
Both names have been in use for years for the same file.
"BasiliskII_keycodes" with BasiliskII and "keycodes" with SheepShaver is true for the emulators distributed for OSX/macOS, but I am not sure which files are used on other platforms or by users who compile/build themselves.
Maybe make it like this for both BasiliskII and SheepShaver:
If "keycodes true" and no keycodefile or path defined
Look for "BasiliskII_keycodes"
If no "BasiliskII_keycodes"
Look for "keycodes"