#######################################
# Syntax Coloring Map For FastLED
#######################################

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

CFastLED	KEYWORD1
CHSV	KEYWORD1
CRGB	KEYWORD1
CRGBArray	KEYWORD1
LEDS	KEYWORD1
FastLED	KEYWORD1
FastPin	KEYWORD1
FastSPI	KEYWORD1
FastSPI_LED2	KEYWORD1

CLEDController	KEYWORD1

CRGBPalette16	KEYWORD1
CRGBPalette256	KEYWORD1
CHSVPalette16	KEYWORD1
CHSVPalette256	KEYWORD1
CHSVPalette16	KEYWORD1
CHSVPalette256	KEYWORD1
CRGBPalette16	KEYWORD1
CRGBPalette256	KEYWORD1

TProgmemPalette16	KEYWORD1
TProgmemPalette32	KEYWORD1
TDynamicRGBGradientPalette_byte	KEYWORD1
TDynamicRGBGradientPalette_bytes	KEYWORD1
TDynamicRGBGradientPaletteRef	KEYWORD1
TProgmemHSVPalette16	KEYWORD1
TProgmemHSVPalette32	KEYWORD1
TProgmemRGBGradientPalette_byte	KEYWORD1
TProgmemRGBGradientPalette_bytes	KEYWORD1
TProgmemRGBGradientPaletteRef	KEYWORD1
TProgmemRGBPalette16	KEYWORD1
TProgmemRGBPalette32	KEYWORD1

TBlendType	KEYWORD1

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

# FastLED methods
addLeds	KEYWORD2
setBrightness	KEYWORD2
getBrightness	KEYWORD2
show	KEYWORD2
clear	KEYWORD2
clearData	KEYWORD2
showColor	KEYWORD2
setTemperature	KEYWORD2
setCorrection	KEYWORD2
setDither	KEYWORD2
setMaxPowerInMilliWatts	KEYWORD2
setMaxPowerInVoltsAndMilliamps	KEYWORD2
setMaxRefreshRate	KEYWORD2
countFPS	KEYWORD2
getFPS	KEYWORD2
size	KEYWORD2

# CLEDController Methods
showColor	KEYWORD2
showLeds	KEYWORD2

# Noise methods
inoise16_raw	KEYWORD2
inoise8_raw	KEYWORD2
inoise16	KEYWORD2
inoise8	KEYWORD2
fill_2dnoise16	KEYWORD2
fill_2dnoise8	KEYWORD2
fill_noise16	KEYWORD2
fill_noise8	KEYWORD2
fill_raw_2dnoise16	KEYWORD2
fill_raw_2dnoise16into8	KEYWORD2
fill_raw_2dnoise8	KEYWORD2
fill_raw_noise16into8	KEYWORD2
fill_raw_noise8	KEYWORD2

# Lib8tion methods
qadd8	KEYWORD2
qadd7	KEYWORD2
qsub8	KEYWORD2
add8	KEYWORD2
sub8	KEYWORD2
scale8	KEYWORD2
scale8_video	KEYWORD2
cleanup_R1	KEYWORD2
nscale8x3	KEYWORD2
nscale8x3_video	KEYWORD2
nscale8x2	KEYWORD2
nscale8x2_video	KEYWORD2
scale16by8	KEYWORD2
scale16by8	KEYWORD2
scale16	KEYWORD2
mul8	KEYWORD2
qmul8	KEYWORD2
abs8	KEYWORD2
dim8_raw	KEYWORD2
dim8_video	KEYWORD2
dim8_lin	KEYWORD2
brighten8_raw	KEYWORD2
brighten8_video	KEYWORD2
brighten8_lin	KEYWORD2
random8	KEYWORD2
random16	KEYWORD2
random8	KEYWORD2
random8	KEYWORD2
random16	KEYWORD2
random16	KEYWORD2
random16_set_seed	KEYWORD2
random16_get_seed	KEYWORD2
random16_add_entropy	KEYWORD2
sin16_avr	KEYWORD2
sin16	KEYWORD2
cos16	KEYWORD2
sin8	KEYWORD2
cos8	KEYWORD2
lerp8by8	KEYWORD2
lerp16by16	KEYWORD2
lerp16by8	KEYWORD2
lerp15by8	KEYWORD2
lerp15by16	KEYWORD2
map8	KEYWORD2
ease8InOutQuad	KEYWORD2
ease8InOutCubic	KEYWORD2
ease8InOutApprox	KEYWORD2
ease16InOutQuad	KEYWORD2
ease16InOutCubic	KEYWORD2
ease16InOutApprox	KEYWORD2
triwave8	KEYWORD2
quadwave8	KEYWORD2
cubicwave8	KEYWORD2
sqrt16	KEYWORD2
blend8	KEYWORD2

# Beat Generators
beat88	KEYWORD2
beat16	KEYWORD2
beat8	KEYWORD2
beatsin88	KEYWORD2
beatsin16	KEYWORD2
beatsin8	KEYWORD2

# Timekeeping
seconds16	KEYWORD2
minutes16	KEYWORD2
hours8	KEYWORD2
bseconds16	KEYWORD2
EVERY_N_MILLIS	KEYWORD2
EVERY_N_MILLIS_I	KEYWORD2
EVERY_N_MILLISECONDS	KEYWORD2
EVERY_N_MILLISECONDS_I	KEYWORD2
EVERY_N_SECONDS	KEYWORD2
EVERY_N_SECONDS_I	KEYWORD2
EVERY_N_BSECONDS	KEYWORD2
EVERY_N_BSECONDS_I	KEYWORD2
EVERY_N_MINUTES	KEYWORD2
EVERY_N_MINUTES_I	KEYWORD2
EVERY_N_HOURS	KEYWORD2
EVERY_N_HOURS_I	KEYWORD2

# Color util methods
blend	KEYWORD2
nblend	KEYWORD2
ColorFromPalette	KEYWORD2
HeatColor	KEYWORD2
UpscalePalette	KEYWORD2
blend	KEYWORD2
fadeLightBy	KEYWORD2
fadeToBlackBy	KEYWORD2
fade_raw	KEYWORD2
fade_video	KEYWORD2
fill_gradient	KEYWORD2
fill_gradient_RGB	KEYWORD2
fill_palette	KEYWORD2
fill_palette_circular	KEYWORD2
fill_rainbow	KEYWORD2
fill_rainbow_circular	KEYWORD2
fill_solid	KEYWORD2
map_data_into_colors_through_palette	KEYWORD2
nblend	KEYWORD2
nscale8	KEYWORD2
nscale8_video	KEYWORD2

# HSV methods
hsv2grb_rainbow	KEYWORD2
hsv2rgb_spectrum	KEYWORD2
hsv2rgb_raw	KEYWORD2
fill_solid	KEYWORD2
fill_rainbow	KEYWORD2

# Gamma Correction
applyGamma_video	KEYWORD2
napplyGamma_video	KEYWORD2

# Colors
CRGB::AliceBlue	KEYWORD2
CRGB::Amethyst	KEYWORD2
CRGB::AntiqueWhite	KEYWORD2
CRGB::Aqua	KEYWORD2
CRGB::Aquamarine	KEYWORD2
CRGB::Azure	KEYWORD2
CRGB::Beige	KEYWORD2
CRGB::Bisque	KEYWORD2
CRGB::Black	KEYWORD2
CRGB::BlanchedAlmond	KEYWORD2
CRGB::Blue	KEYWORD2
CRGB::BlueViolet	KEYWORD2
CRGB::Brown	KEYWORD2
CRGB::BurlyWood	KEYWORD2
CRGB::CadetBlue	KEYWORD2
CRGB::Chartreuse	KEYWORD2
CRGB::Chocolate	KEYWORD2
CRGB::Coral	KEYWORD2
CRGB::CornflowerBlue	KEYWORD2
CRGB::Cornsilk	KEYWORD2
CRGB::Crimson	KEYWORD2
CRGB::Cyan	KEYWORD2
CRGB::DarkBlue	KEYWORD2
CRGB::DarkCyan	KEYWORD2
CRGB::DarkGoldenrod	KEYWORD2
CRGB::DarkGray	KEYWORD2
CRGB::DarkGrey	KEYWORD2
CRGB::DarkGreen	KEYWORD2
CRGB::DarkKhaki	KEYWORD2
CRGB::DarkMagenta	KEYWORD2
CRGB::DarkOliveGreen	KEYWORD2
CRGB::DarkOrange	KEYWORD2
CRGB::DarkOrchid	KEYWORD2
CRGB::DarkRed	KEYWORD2
CRGB::DarkSalmon	KEYWORD2
CRGB::DarkSeaGreen	KEYWORD2
CRGB::DarkSlateBlue	KEYWORD2
CRGB::DarkSlateGray	KEYWORD2
CRGB::DarkSlateGrey	KEYWORD2
CRGB::DarkTurquoise	KEYWORD2
CRGB::DarkViolet	KEYWORD2
CRGB::DeepPink	KEYWORD2
CRGB::DeepSkyBlue	KEYWORD2
CRGB::DimGray	KEYWORD2
CRGB::DimGrey	KEYWORD2
CRGB::DodgerBlue	KEYWORD2
CRGB::FireBrick	KEYWORD2
CRGB::FloralWhite	KEYWORD2
CRGB::ForestGreen	KEYWORD2
CRGB::Fuchsia	KEYWORD2
CRGB::Gainsboro	KEYWORD2
CRGB::GhostWhite	KEYWORD2
CRGB::Gold	KEYWORD2
CRGB::Goldenrod	KEYWORD2
CRGB::Gray	KEYWORD2
CRGB::Grey	KEYWORD2
CRGB::Green	KEYWORD2
CRGB::GreenYellow	KEYWORD2
CRGB::Honeydew	KEYWORD2
CRGB::HotPink	KEYWORD2
CRGB::IndianRed	KEYWORD2
CRGB::Indigo	KEYWORD2
CRGB::Ivory	KEYWORD2
CRGB::Khaki	KEYWORD2
CRGB::Lavender	KEYWORD2
CRGB::LavenderBlush	KEYWORD2
CRGB::LawnGreen	KEYWORD2
CRGB::LemonChiffon	KEYWORD2
CRGB::LightBlue	KEYWORD2
CRGB::LightCoral	KEYWORD2
CRGB::LightCyan	KEYWORD2
CRGB::LightGoldenrodYellow	KEYWORD2
CRGB::LightGreen	KEYWORD2
CRGB::LightGrey	KEYWORD2
CRGB::LightPink	KEYWORD2
CRGB::LightSalmon	KEYWORD2
CRGB::LightSeaGreen	KEYWORD2
CRGB::LightSkyBlue	KEYWORD2
CRGB::LightSlateGray	KEYWORD2
CRGB::LightSlateGrey	KEYWORD2
CRGB::LightSteelBlue	KEYWORD2
CRGB::LightYellow	KEYWORD2
CRGB::Lime	KEYWORD2
CRGB::LimeGreen	KEYWORD2
CRGB::Linen	KEYWORD2
CRGB::Magenta	KEYWORD2
CRGB::Maroon	KEYWORD2
CRGB::MediumAquamarine	KEYWORD2
CRGB::MediumBlue	KEYWORD2
CRGB::MediumOrchid	KEYWORD2
CRGB::MediumPurple	KEYWORD2
CRGB::MediumSeaGreen	KEYWORD2
CRGB::MediumSlateBlue	KEYWORD2
CRGB::MediumSpringGreen	KEYWORD2
CRGB::MediumTurquoise	KEYWORD2
CRGB::MediumVioletRed	KEYWORD2
CRGB::MidnightBlue	KEYWORD2
CRGB::MintCream	KEYWORD2
CRGB::MistyRose	KEYWORD2
CRGB::Moccasin	KEYWORD2
CRGB::NavajoWhite	KEYWORD2
CRGB::Navy	KEYWORD2
CRGB::OldLace	KEYWORD2
CRGB::Olive	KEYWORD2
CRGB::OliveDrab	KEYWORD2
CRGB::Orange	KEYWORD2
CRGB::OrangeRed	KEYWORD2
CRGB::Orchid	KEYWORD2
CRGB::PaleGoldenrod	KEYWORD2
CRGB::PaleGreen	KEYWORD2
CRGB::PaleTurquoise	KEYWORD2
CRGB::PaleVioletRed	KEYWORD2
CRGB::PapayaWhip	KEYWORD2
CRGB::PeachPuff	KEYWORD2
CRGB::Peru	KEYWORD2
CRGB::Pink	KEYWORD2
CRGB::Plaid	KEYWORD2
CRGB::Plum	KEYWORD2
CRGB::PowderBlue	KEYWORD2
CRGB::Purple	KEYWORD2
CRGB::Red	KEYWORD2
CRGB::RosyBrown	KEYWORD2
CRGB::RoyalBlue	KEYWORD2
CRGB::SaddleBrown	KEYWORD2
CRGB::Salmon	KEYWORD2
CRGB::SandyBrown	KEYWORD2
CRGB::SeaGreen	KEYWORD2
CRGB::Seashell	KEYWORD2
CRGB::Sienna	KEYWORD2
CRGB::Silver	KEYWORD2
CRGB::SkyBlue	KEYWORD2
CRGB::SlateBlue	KEYWORD2
CRGB::SlateGray	KEYWORD2
CRGB::SlateGrey	KEYWORD2
CRGB::Snow	KEYWORD2
CRGB::SpringGreen	KEYWORD2
CRGB::SteelBlue	KEYWORD2
CRGB::Tan	KEYWORD2
CRGB::Teal	KEYWORD2
CRGB::Thistle	KEYWORD2
CRGB::Tomato	KEYWORD2
CRGB::Turquoise	KEYWORD2
CRGB::Violet	KEYWORD2
CRGB::Wheat	KEYWORD2
CRGB::White	KEYWORD2
CRGB::WhiteSmoke	KEYWORD2
CRGB::Yellow	KEYWORD2
CRGB::YellowGreen	KEYWORD2
CRGB::FairyLight	KEYWORD2
CRGB::FairyLightNCC	KEYWORD2

# Color Palettes
DEFINE_GRADIENT_PALETTE	KEYWORD2

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

# Chipsets
APA102	LITERAL1
APA104	LITERAL1
APA106	LITERAL1
DMXSERIAL	LITERAL1
DMXSIMPLE	LITERAL1
DOTSTAR	LITERAL1
GE8822	LITERAL1
GS1903	LITERAL1
GW6205	LITERAL1
GW6205B	LITERAL1
GW6205_400	LITERAL1
LPD1886	LITERAL1
LPD1886_8BIT	LITERAL1
LPD6803	LITERAL1
LPD8806	LITERAL1
NEOPIXEL	LITERAL1
OCTOWS2811	LITERAL1
OCTOWS2811_400	LITERAL1
OCTOWS2813	LITERAL1
P9813	LITERAL1
PIXIE	LITERAL1
PL9823	LITERAL1
SK6812	LITERAL1
SK6822	LITERAL1
SK9822	LITERAL1
SM16703 LITERAL1
SM16716	LITERAL1
SMART_MATRIX	LITERAL1
TM1803	LITERAL1
TM1804	LITERAL1
TM1809	LITERAL1
TM1812	LITERAL1
TM1829	LITERAL1
UCS1903	LITERAL1
UCS1903B	LITERAL1
UCS1904	LITERAL1
UCS2903	LITERAL1
WS2801	LITERAL1
WS2803	LITERAL1
WS2811	LITERAL1
WS2811_400	LITERAL1
WS2812	LITERAL1
WS2812B	LITERAL1
WS2812SERIAL	LITERAL1
WS2813	LITERAL1
WS2852	LITERAL1

# RGB orderings
RGB	LITERAL1
RBG	LITERAL1
GRB	LITERAL1
GBR	LITERAL1
BRG	LITERAL1
BGR	LITERAL1

# hue literals
HUE_RED	LITERAL1
HUE_ORANGE	LITERAL1
HUE_YELLOW	LITERAL1
HUE_GREEN	LITERAL1
HUE_AQUA	LITERAL1
HUE_BLUE	LITERAL1
HUE_PURPLE	LITERAL1
HUE_PINK	LITERAL1

# Color correction values
TypicalSMD5050	LITERAL1
TypicalLEDStrip	LITERAL1
Typical8mmPixel	LITERAL1
TypicalPixelString	LITERAL1
UncorrectedColor	LITERAL1
Candle	LITERAL1
Tungsten40W	LITERAL1
Tungsten100W	LITERAL1
Halogen	LITERAL1
CarbonArc	LITERAL1
HighNoonSun	LITERAL1
DirectSunlight	LITERAL1
OvercastSky	LITERAL1
ClearBlueSky	LITERAL1
WarmFluorescent	LITERAL1
StandardFluorescent	LITERAL1
CoolWhiteFluorescent	LITERAL1
FullSpectrumFluorescent	LITERAL1
GrowLightFluorescent	LITERAL1
BlackLightFluorescent	LITERAL1
MercuryVapor	LITERAL1
SodiumVapor	LITERAL1
MetalHalide	LITERAL1
HighPressureSodium	LITERAL1
UncorrectedTemperature	LITERAL1

# Color util literals
FORWARD_HUES	LITERAL1
BACKWARD_HUES	LITERAL1
SHORTEST_HUES	LITERAL1
LONGEST_HUES	LITERAL1
LINEARBLEND	LITERAL1
NOBLEND	LITERAL1

# Predefined Color Palettes
Rainbow_gp	LITERAL1
CloudColors_p	LITERAL1
LavaColors_p	LITERAL1
OceanColors_p	LITERAL1
ForestColors_p	LITERAL1
RainbowColors_p	LITERAL1
RainbowStripeColors_p	LITERAL1
PartyColors_p	LITERAL1
HeatColors_p	LITERAL1
