#######################################
# Syntax Coloring Map
# Soldered Inputronic Keyboard Library
#######################################

#######################################
# Datatypes (KEYWORD1)
#######################################

InputronicKeyboard	KEYWORD1
InputronicKeymapID	KEYWORD1
TypeEvent	KEYWORD1
TypeOnCallback	KEYWORD1

#######################################
# Methods and Functions (KEYWORD2)
#######################################

# Initialization
begin	KEYWORD2
configureMatrix	KEYWORD2

# Event handling
eventsAvailable	KEYWORD2
available	KEYWORD2
readEventRaw	KEYWORD2
readMappedEvent	KEYWORD2
processEventCode	KEYWORD2
clearEvents	KEYWORD2

# Key labels / mapping
getKeyLabel	KEYWORD2
getKeyLabelFromEvent	KEYWORD2
labelToChar	KEYWORD2

# State helpers
isKeyPressed	KEYWORD2
findKeyByLabel	KEYWORD2
anyKeyPressed	KEYWORD2
getHeldCount	KEYWORD2
getLastKeyLabel	KEYWORD2
getLastKey	KEYWORD2
getCurrentKeyLabel	KEYWORD2
getCurrentKey	KEYWORD2

# Keymap control
setActiveKeymap	KEYWORD2
toggleActiveKeymap	KEYWORD2
getActiveKeymap	KEYWORD2

# High-level helpers
stringInput	KEYWORD2
typeOn	KEYWORD2

#######################################
# Constants and Enums (LITERAL1)
#######################################

# I2C
INPUTRONIC_KBD_DEFAULT_ADDR	LITERAL1

# Keymaps
IKMAP_UPPER	LITERAL1
IKMAP_LOWER	LITERAL1

# Type events
TYPE_CHAR	LITERAL1
TYPE_SPACE	LITERAL1
TYPE_BACKSPACE	LITERAL1
TYPE_MOVE_LEFT	LITERAL1
TYPE_MOVE_RIGHT	LITERAL1
TYPE_MOVE_UP	LITERAL1
TYPE_MOVE_DOWN	LITERAL1
TYPE_TOGGLE_CASE	LITERAL1
TYPE_SUBMIT	LITERAL1