keymap
keymap
#
# Format: [Ctrl|Alt|Shift|CShift|NumPad]* <Character> : <macro>
# <Character> is either a printable character, or a unicode character code
# written in hexadecimal with a 0x prefix. So, for example, the character 0
# (zero) can be written as "0" or "0x30" (without the quotes); the two
# representations are equivalent.
# <macro> is a sequence of zero or more HP-42S key codes. The key codes must be
# between 1 and 255; codes 1..37 correspond to actual keys on the calculator's
# keyboard, while codes 38..255 can be used to refer to extra keys defined by
# customized skins.
#
# Ctrl, Alt, and Shift refer to the Control, Option, and Shift modifier keys on
# the Mac keyboard.
# CShift refers to the state of the Calculator's Shift annunciator. This
# modifier makes it possible for [CShift] [Key] to activate a different
# keystroke or macro than the unshifted [Key], so you can, for example, make
# CShift SQRT be something other than X^2.
# NumPad indicates keys on the numeric keypad. Note that if a key on the
# numeric keypad does not have a mapping, the corresponding non-NumPad mapping
# will be used instead.
#
# Anything from a "#" until the end of the line is a comment, and is ignored.
# White space (Space, Tab) separates tokens in the key map, but is otherwise
# ignored. Note that this means that if you want to define mappings for "#" or
# white space, you must use Unicode character codes.
#
# NOTE: Key events that translate to a single character in the printable ASCII
# range (32..126) are matched without regard of the state of the Shift key --
# so you don't have to use "Shift A" to match uppercase "A", etc. For other key
# events, shift *is* relevant (e.g. "Return" is not the same as "Shift Return").