keys name ?

can someone give a link for the key names for pie menu keys
like TAB PERIOD ect
I cannot find what name I should use for some keys like backslash and what about special function F1 to F12 or others !

Edit:
I found a list on this page
http://www.blender.org/documentation/blender_python_api_2_68_2/bpy.types.KeyMapItem.html?highlight=keymap_items

but there is no small letters ?
how come ?

also what are these NDOF_BUTTON_MEN

NDOF keys ?

thanks

Because there are no small letters, there are only keyboard letter keys with or without shift-key modifier. If you are interested in what was intended to be typed by the user, use the .ascii or .unicode attribute instead.

not certain what some keys are like

these

NDOF KEYS?
or ‘EVT_TWEAK_L’ ?

also I see some TIMER
what are these for ?

also on my Keyboard I got some key above the F keys
so what codes these keys would use ?

any examples for using these ascii or Unicode instead ?

thanks

Google is your friend - NDOF:
http://archive.blender.org/development/release-logs/blender-246/ndof-support/index.html
http://wiki.blender.org/index.php/User:Significant.bit/InputDeviceDesign

EVT_TWEAK_L:
As the name suggests, it is a tweak event, or in other words hack / workaround. Probably related to mouse gestures (a mouse button press needs to be distinguished from a press-and-drag).

TIMER is only used internally as far as I know and probably not working if used with Python.

Special (media) keys are not recognized by Blender.

Ascii / Unicode example:

import bpy
from bpy.props import IntProperty, FloatProperty


class ModalOperator(bpy.types.Operator):
    """Move an object with the mouse, example"""
    bl_idname = "object.modal_operator"
    bl_label = "Simple Modal Operator"

    def modal(self, context, event):
        
        mod_keys = []
        for k in ['ctrl', 'shift', 'alt', 'oskey']:
            if getattr(event, k):
                mod_keys.append(k.title())

        context.area.header_text_set("Ascii: %s    Unicode: %s    %s %s %s   (%s)" % (
            event.ascii, event.unicode, " + ".join(mod_keys), " + " if mod_keys else "", event.type, event.value)
        )

        if event.type == 'ESC':
            context.area.header_text_set()
            return {'CANCELLED'}

        return {'RUNNING_MODAL'}

    def invoke(self, context, event):
        context.window_manager.modal_handler_add(self)
        return {'RUNNING_MODAL'}

def register():
    bpy.utils.register_class(ModalOperator)


def unregister():
    bpy.utils.unregister_class(ModalOperator)


if __name__ == "__main__":
    register()

    # test call
    bpy.ops.object.modal_operator('INVOKE_DEFAULT')


ok stuff for the new 3D mouse

timer !
then why it is on the API page for python ?

thanks