#######################################
# Syntax Coloring Map For Plaquette
#######################################

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

Engine	KEYWORD1

AnalogIn	KEYWORD1
DigitalIn	KEYWORD1
AnalogOut	KEYWORD1
DigitalOut	KEYWORD1

SineWave	KEYWORD1
SquareWave	KEYWORD1
TriangleWave	KEYWORD1

Alarm	KEYWORD1
Chronometer KEYWORD1
Metronome	KEYWORD1
Ramp	KEYWORD1

MinMaxScaler	KEYWORD1
Normalizer	KEYWORD1
PeakDetector	KEYWORD1
Smoother	KEYWORD1

PivotField	KEYWORD1
TimeSliceField	KEYWORD1

ServoOut	KEYWORD1
ContinuousServoOut	KEYWORD1

StreamIn	KEYWORD1
StreamOut	KEYWORD1


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

# Core
begin	KEYWORD2
step	KEYWORD2

autoSampleRate  KEYWORD2
hasAutoSampleRate  KEYWORD2
sampleRate  KEYWORD2
samplePeriod  KEYWORD2
seconds  KEYWORD2
consoleBegin KEYWORD2
consoleOutput KEYWORD2

# Utils
mapFloat	KEYWORD2
mapFrom01	KEYWORD2
mapTo01 KEYWORD2
randomFloat	KEYWORD2
randomTrigger	KEYWORD2
wrap	KEYWORD2
constrain01	KEYWORD2
wrap01	KEYWORD2

# Node
put	KEYWORD2
get	KEYWORD2

# AnalogNode
mapTo	KEYWORD2

# DigitalNode
on	KEYWORD2
off	KEYWORD2
toggle	KEYWORD2
putOn	KEYWORD2
isOn	KEYWORD2
isOff	KEYWORD2
getInt	KEYWORD2

# DigitalSource
fell  KEYWORD2
rose  KEYWORD2
changed  KEYWORD2

# PinUnit
pin	KEYWORD2
mode	KEYWORD2

# Smoothable
smooth	KEYWORD2
noSmooth	KEYWORD2

# Debounceable
debounce  KEYWORD2
noDebounce  KEYWORD2
debounceMode  KEYWORD2

# In/Out
rawRead  KEYWORD2
rawWrite  KEYWORD2
read  KEYWORD2
write  KEYWORD2

# Window-based
infiniteTimeWindow	KEYWORD2
timeWindow	KEYWORD2
cutoff	KEYWORD2
pauseCalibrating  KEYWORD2
resumeCalibrating KEYWORD2
toggleCalibrating	KEYWORD2
isCalibrating KEYWORD2

# Oscillators
period  KEYWORD2
frequency  KEYWORD2
skew  KEYWORD2
phase  KEYWORD2
phaseShift  KEYWORD2
amplitude  KEYWORD2
shiftBy  KEYWORD2
atPhase  KEYWORD2
timeToPhase  KEYWORD2
shiftByIsOn  KEYWORD2
forward  KEYWORD2
reverse  KEYWORD2
toggleReverse  KEYWORD2

# Easing
easing  KEYWORD2
noEasing  KEYWORD2
riseEasing  KEYWORD2
noRiseEasing  KEYWORD2
fallEasing  KEYWORD2
noFallEasing  KEYWORD2

# Ramp
duration  KEYWORD2
speed  KEYWORD2
fromTo  KEYWORD2
to  KEYWORD2
go  KEYWORD2

# Normalizer
targetMean	KEYWORD2
targetStdDev	KEYWORD2
mean    KEYWORD2
stdDev    KEYWORD2
var    KEYWORD2
normalize    KEYWORD2
isOutlier    KEYWORD2
isHighOutlier    KEYWORD2
isLowOutlier    KEYWORD2
highOutlierThreshold    KEYWORD2
lowOutlierThreshold    KEYWORD2
clamp    KEYWORD2
noClamp    KEYWORD2
isClamped    KEYWORD2

# Timeable
start  KEYWORD2
stop	KEYWORD2
pause	KEYWORD2
resume	KEYWORD2
togglePause	KEYWORD2
setTime KEYWORD2
addTime KEYWORD2
isRunning KEYWORD2

# AbstractChronometer
elapsed KEYWORD2
hasPassed	KEYWORD2

# AbstractTimer
finished	KEYWORD2
isFinished	KEYWORD2
progress	KEYWORD2

# Stream
precision  KEYWORD2

# PeakDetector
reloadThreshold	KEYWORD2
triggerThreshold	KEYWORD2
fallbackTolerance	KEYWORD2
modeInverted	KEYWORD2
modeCrossing	KEYWORD2
modeApex	KEYWORD2

# PivotField
rampWidth	KEYWORD2
noRampWidth	KEYWORD2
rampShift KEYWORD2
bumpWidth KEYWORD2
center  KEYWORD2

# TimeSliceField
setRolling  KEYWORD2
rolling  KEYWORD2
noRolling  KEYWORD2
isRolling  KEYWORD2

# Easing functions
easeOutSine	KEYWORD2
easeInOutSine	KEYWORD2
easeInQuad	KEYWORD2
easeOutQuad	KEYWORD2
easeInOutQuad	KEYWORD2
easeInCubic	KEYWORD2
easeOutCubic	KEYWORD2
easeInOutCubic	KEYWORD2
easeInQuart	KEYWORD2
easeOutQuart	KEYWORD2
easeInOutQuart	KEYWORD2
easeInQuint	KEYWORD2
easeOutQuint	KEYWORD2
easeInOutQuint	KEYWORD2
easeInExpo	KEYWORD2
easeOutExpo	KEYWORD2
easeInOutExpo	KEYWORD2
easeInCirc	KEYWORD2
easeOutCirc	KEYWORD2
easeInOutCirc	KEYWORD2
easeInBack	KEYWORD2
easeOutBack	KEYWORD2
easeInOutBack	KEYWORD2
easeInElastic	KEYWORD2
easeOutElastic	KEYWORD2
easeInOutElastic	KEYWORD2
easeInBounce	KEYWORD2
easeOutBounce	KEYWORD2
easeInOutBounce	KEYWORD2

# Events
onBang	KEYWORD2
onRise	KEYWORD2
onFall	KEYWORD2
onChange	KEYWORD2
onFinish	KEYWORD2
clearEvents	KEYWORD2

updated	KEYWORD2

#######################################
# Instances (KEYWORD2)
#######################################

Plaquette	KEYWORD2

#######################################
# Constants (LITERAL1)
#######################################

DEFAULT LITERAL1
INVERTED  LITERAL1
INTERNAL_PULLUP LITERAL1
SOURCE	LITERAL1
SINK	LITERAL1

UNCONSTRAIN	LITERAL1
CONSTRAIN	LITERAL1
WRAP	LITERAL1

DEBOUNCE_STABLE  LITERAL1
DEBOUNCE_LOCK_OUT  LITERAL1
DEBOUNCE_PROMPT_DETECT  LITERAL1

PEAK_RISING	LITERAL1
PEAK_FALLING	LITERAL1
PEAK_MAX	LITERAL1
PEAK_MIN	LITERAL1

RAMP_DURATION	LITERAL1
RAMP_SPEED	LITERAL1

PIVOT_RISING	LITERAL1
PIVOT_FALLING LITERAL1
PIVOT_BUMP  LITERAL1
PIVOT_NOTCH LITERAL1


