I'm not quite sure how the keys API should be documented.
While the Keys API itself definitely needs a page the question is what to do about all the keys constants. The constants template would get cluttered with all the keys constant and we would get more than 100 pages just containing something like "keys.a is the keycode of the a key" if each constant did get its own page.
What is your opinion on this?
Could you summerise the alpha-numeric keys as appearing in the API as they are displayed on the screen/keyboard?
That way you just have to document the other ones.
I think the table seen here (https://github.com/SquidDev-CC/CC-Tweaked/blob/master/src/main/resources/assets/computercraft/lua/rom/apis/keys.lua) should serve as inspiration. Have header columns be the least significant digit of the scancode, and the rows the rest of the digits.
Additionally, it's worth mentioning that these scancodes are the same ones used by LWJGL 2 (http://legacy.lwjgl.org/).