Wx::Sc...onstant(3pm)

✨ Wx::Scintilla::Constant β€” a whole vibe of Scintilla constants πŸ’–

okay bestie, welcome to the motherlode. this is the manual page for Wx::Scintilla::Constant β€” A list of Wx::Scintilla constants. it's giving "someone fed Scintilla.iface into a code generator and now we all get to look at the receipts." grab a snack, there's a LOT here. πŸ“


🌸 DESCRIPTION 🌸

This is a list of auto-generated constants from Scintilla.iface.

like, nobody hand-wrote these, the machine did it, and honestly? slay. πŸ€–βœ¨


πŸ‘‘ CONSTANTS πŸ‘‘

  • INVALID_POSITION β€” (-1) πŸ’€ the "this is not a real position" position

Define start of Scintilla messages to be greater than all Windows edit (EM_*) messages as many EM_ messages can be used although that use is deprecated. 🫠 (yes that's a real caveat, the old way still works-ish but don't)

  • SCI_START β€” (2000)
  • SCI_OPTIONAL_START β€” (3000)
  • SCI_LEXER_START β€” (4000)

πŸ¦‹ WhiteSpace enumeration

  • SCWS_INVISIBLE β€” (0)
  • SCWS_VISIBLEALWAYS β€” (1)
  • SCWS_VISIBLEAFTERINDENT β€” (2)

πŸ¦‹ EndOfLine enumeration

  • SC_EOL_CRLF β€” (0)
  • SC_EOL_CR β€” (1)
  • SC_EOL_LF β€” (2)

The SC_CP_UTF8 value can be used to enter Unicode mode. This is the same value as CP_UTF8 in Windows. 🌈

  • SC_CP_UTF8 β€” (65001)

πŸ¦‹ MarkerSymbol enumeration

  • MARKER_MAX β€” (31)
  • SC_MARK_CIRCLE β€” (0)
  • SC_MARK_ROUNDRECT β€” (1)
  • SC_MARK_ARROW β€” (2)
  • SC_MARK_SMALLRECT β€” (3)
  • SC_MARK_SHORTARROW β€” (4)
  • SC_MARK_EMPTY β€” (5)
  • SC_MARK_ARROWDOWN β€” (6)
  • SC_MARK_MINUS β€” (7)
  • SC_MARK_PLUS β€” (8)

Shapes used for outlining column. πŸŽ€

  • SC_MARK_VLINE β€” (9)
  • SC_MARK_LCORNER β€” (10)
  • SC_MARK_TCORNER β€” (11)
  • SC_MARK_BOXPLUS β€” (12)
  • SC_MARK_BOXPLUSCONNECTED β€” (13)
  • SC_MARK_BOXMINUS β€” (14)
  • SC_MARK_BOXMINUSCONNECTED β€” (15)
  • SC_MARK_LCORNERCURVE β€” (16)
  • SC_MARK_TCORNERCURVE β€” (17)
  • SC_MARK_CIRCLEPLUS β€” (18)
  • SC_MARK_CIRCLEPLUSCONNECTED β€” (19)
  • SC_MARK_CIRCLEMINUS β€” (20)
  • SC_MARK_CIRCLEMINUSCONNECTED β€” (21)

Invisible mark that only sets the line background colour. πŸ‘» (no glyph, just vibes)

  • SC_MARK_BACKGROUND β€” (22)
  • SC_MARK_DOTDOTDOT β€” (23)
  • SC_MARK_ARROWS β€” (24)
  • SC_MARK_PIXMAP β€” (25)
  • SC_MARK_FULLRECT β€” (26)
  • SC_MARK_LEFTRECT β€” (27)
  • SC_MARK_AVAILABLE β€” (28)
  • SC_MARK_UNDERLINE β€” (29)
  • SC_MARK_RGBAIMAGE β€” (30)
  • SC_MARK_CHARACTER β€” (10000)

πŸ¦‹ MarkerOutline enumeration

  • SC_MARKNUM_FOLDEREND β€” (25)
  • SC_MARKNUM_FOLDEROPENMID β€” (26)
  • SC_MARKNUM_FOLDERMIDTAIL β€” (27)
  • SC_MARKNUM_FOLDERTAIL β€” (28)
  • SC_MARKNUM_FOLDERSUB β€” (29)
  • SC_MARKNUM_FOLDER β€” (30)
  • SC_MARKNUM_FOLDEROPEN β€” (31)
  • SC_MASK_FOLDERS β€” (0xFE000000)

πŸ¦‹ MarginType enumeration

  • SC_MARGIN_SYMBOL β€” (0)
  • SC_MARGIN_NUMBER β€” (1)
  • SC_MARGIN_BACK β€” (2)
  • SC_MARGIN_FORE β€” (3)
  • SC_MARGIN_TEXT β€” (4)
  • SC_MARGIN_RTEXT β€” (5)

πŸ¦‹ StylesCommon enumeration

  • STYLE_DEFAULT β€” (32)
  • STYLE_LINENUMBER β€” (33)
  • STYLE_BRACELIGHT β€” (34)
  • STYLE_BRACEBAD β€” (35)
  • STYLE_CONTROLCHAR β€” (36)
  • STYLE_INDENTGUIDE β€” (37)
  • STYLE_CALLTIP β€” (38)
  • STYLE_LASTPREDEFINED β€” (39)
  • STYLE_MAX β€” (255)

πŸ¦‹ CharacterSet enumeration

  • SC_CHARSET_ANSI β€” (0)
  • SC_CHARSET_DEFAULT β€” (1)
  • SC_CHARSET_BALTIC β€” (186)
  • SC_CHARSET_CHINESEBIG5 β€” (136)
  • SC_CHARSET_EASTEUROPE β€” (238)
  • SC_CHARSET_GB2312 β€” (134)
  • SC_CHARSET_GREEK β€” (161)
  • SC_CHARSET_HANGUL β€” (129)
  • SC_CHARSET_MAC β€” (77)
  • SC_CHARSET_OEM β€” (255)
  • SC_CHARSET_RUSSIAN β€” (204)
  • SC_CHARSET_CYRILLIC β€” (1251)
  • SC_CHARSET_SHIFTJIS β€” (128)
  • SC_CHARSET_SYMBOL β€” (2)
  • SC_CHARSET_TURKISH β€” (162)
  • SC_CHARSET_JOHAB β€” (130)
  • SC_CHARSET_HEBREW β€” (177)
  • SC_CHARSET_ARABIC β€” (178)
  • SC_CHARSET_VIETNAMESE β€” (163)
  • SC_CHARSET_THAI β€” (222)
  • SC_CHARSET_8859_15 β€” (1000)

πŸ¦‹ CaseVisible enumeration

  • SC_CASE_MIXED β€” (0)
  • SC_CASE_UPPER β€” (1)
  • SC_CASE_LOWER β€” (2)
  • SC_FONT_SIZE_MULTIPLIER β€” (100)

πŸ¦‹ FontWeight enumeration

  • SC_WEIGHT_NORMAL β€” (400)
  • SC_WEIGHT_SEMIBOLD β€” (600)
  • SC_WEIGHT_BOLD β€” (700)

πŸ¦‹ IndicatorStyle enumeration

  • INDIC_PLAIN β€” (0)
  • INDIC_SQUIGGLE β€” (1)
  • INDIC_TT β€” (2)
  • INDIC_DIAGONAL β€” (3)
  • INDIC_STRIKE β€” (4)
  • INDIC_HIDDEN β€” (5)
  • INDIC_BOX β€” (6)
  • INDIC_ROUNDBOX β€” (7)
  • INDIC_STRAIGHTBOX β€” (8)
  • INDIC_DASH β€” (9)
  • INDIC_DOTS β€” (10)
  • INDIC_SQUIGGLELOW β€” (11)
  • INDIC_DOTBOX β€” (12)
  • INDIC_MAX β€” (31)
  • INDIC_CONTAINER β€” (8)
  • INDIC0_MASK β€” (0x20)
  • INDIC1_MASK β€” (0x40)
  • INDIC2_MASK β€” (0x80)
  • INDICS_MASK β€” (0xE0)

πŸ¦‹ IndentView enumeration

  • SC_IV_NONE β€” (0)
  • SC_IV_REAL β€” (1)
  • SC_IV_LOOKFORWARD β€” (2)
  • SC_IV_LOOKBOTH β€” (3)

πŸ¦‹ PrintOption enumeration

  • SC_PRINT_NORMAL β€” (0)

PrintColourMode β€” invert the light value of each style for printing. πŸŒ—

  • SC_PRINT_INVERTLIGHT β€” (1)

PrintColourMode β€” force black text on white background for printing. πŸ–€πŸ€

  • SC_PRINT_BLACKONWHITE β€” (2)

PrintColourMode β€” text stays coloured, but all background is forced to be white for printing. 🎨

  • SC_PRINT_COLOURONWHITE β€” (3)

PrintColourMode β€” only the default-background is forced to be white for printing.

  • SC_PRINT_COLOURONWHITEDEFAULTBG β€” (4)

πŸ¦‹ FindOption enumeration

  • SCFIND_WHOLEWORD β€” (2)
  • SCFIND_MATCHCASE β€” (4)
  • SCFIND_WORDSTART β€” (0x00100000)
  • SCFIND_REGEXP β€” (0x00200000)
  • SCFIND_POSIX β€” (0x00400000)

πŸ¦‹ FoldLevel enumeration

  • SC_FOLDLEVELBASE β€” (0x400)
  • SC_FOLDLEVELWHITEFLAG β€” (0x1000)
  • SC_FOLDLEVELHEADERFLAG β€” (0x2000)
  • SC_FOLDLEVELNUMBERMASK β€” (0x0FFF)

πŸ¦‹ FoldFlag enumeration

  • SC_FOLDFLAG_LINEBEFORE_EXPANDED β€” (0x0002)
  • SC_FOLDFLAG_LINEBEFORE_CONTRACTED β€” (0x0004)
  • SC_FOLDFLAG_LINEAFTER_EXPANDED β€” (0x0008)
  • SC_FOLDFLAG_LINEAFTER_CONTRACTED β€” (0x0010)
  • SC_FOLDFLAG_LEVELNUMBERS β€” (0x0040)
  • SC_TIME_FOREVER β€” (10000000)

πŸ¦‹ Wrap enumeration

  • SC_WRAP_NONE β€” (0)
  • SC_WRAP_WORD β€” (1)
  • SC_WRAP_CHAR β€” (2)

πŸ¦‹ WrapVisualFlag enumeration

  • SC_WRAPVISUALFLAG_NONE β€” (0x0000)
  • SC_WRAPVISUALFLAG_END β€” (0x0001)
  • SC_WRAPVISUALFLAG_START β€” (0x0002)

πŸ¦‹ WrapVisualLocation enumeration

  • SC_WRAPVISUALFLAGLOC_DEFAULT β€” (0x0000)
  • SC_WRAPVISUALFLAGLOC_END_BY_TEXT β€” (0x0001)
  • SC_WRAPVISUALFLAGLOC_START_BY_TEXT β€” (0x0002)

πŸ¦‹ WrapIndentMode enumeration

  • SC_WRAPINDENT_FIXED β€” (0)
  • SC_WRAPINDENT_SAME β€” (1)
  • SC_WRAPINDENT_INDENT β€” (2)

πŸ¦‹ LineCache enumeration

  • SC_CACHE_NONE β€” (0)
  • SC_CACHE_CARET β€” (1)
  • SC_CACHE_PAGE β€” (2)
  • SC_CACHE_DOCUMENT β€” (3)

πŸ¦‹ FontQuality enumeration

  • SC_EFF_QUALITY_MASK β€” (0xF)
  • SC_EFF_QUALITY_DEFAULT β€” (0)
  • SC_EFF_QUALITY_NON_ANTIALIASED β€” (1)
  • SC_EFF_QUALITY_ANTIALIASED β€” (2)
  • SC_EFF_QUALITY_LCD_OPTIMIZED β€” (3)

πŸ¦‹ MultiPaste enumeration

  • SC_MULTIPASTE_ONCE β€” (0)
  • SC_MULTIPASTE_EACH β€” (1)

πŸ¦‹ EdgeVisualStyle enumeration

  • EDGE_NONE β€” (0)
  • EDGE_LINE β€” (1)
  • EDGE_BACKGROUND β€” (2)

πŸ¦‹ Status enumeration

  • SC_STATUS_OK β€” (0)
  • SC_STATUS_FAILURE β€” (1)
  • SC_STATUS_BADALLOC β€” (2)

πŸ¦‹ CursorShape enumeration

  • SC_CURSORNORMAL β€” (-1)
  • SC_CURSORARROW β€” (2)
  • SC_CURSORWAIT β€” (4)
  • SC_CURSORREVERSEARROW β€” (7)

Constants for use with SetVisiblePolicy, similar to SetCaretPolicy. πŸ‘€

  • VISIBLE_SLOP β€” (0x01)
  • VISIBLE_STRICT β€” (0x04)

πŸ¦‹ CaretPolicy enumeration

  • CARET_SLOP β€” (0x01)

If CARET_STRICT is set, the policy is enforced... strictly. The caret is centred on the display if slop is not set, and cannot go in the UZ if slop is set. 😀 no wiggle room, periodt.

  • CARET_STRICT β€” (0x04)

If CARET_JUMPS is set, the display is moved more energetically so the caret can move in the same direction longer before the policy is applied again. πŸƒβ™€οΈπŸ’¨

  • CARET_JUMPS β€” (0x10)

If CARET_EVEN is not set, instead of having symmetrical UZs, the left and bottom UZs are extended up to right and top UZs respectively. This way, we favour the displaying of useful information: the beginning of lines, where most code reside, and the lines after the caret, eg. the body of a function. 🧠✨

  • CARET_EVEN β€” (0x08)

πŸ¦‹ SelectionMode enumeration

  • SC_SEL_STREAM β€” (0)
  • SC_SEL_RECTANGLE β€” (1)
  • SC_SEL_LINES β€” (2)
  • SC_SEL_THIN β€” (3)

πŸ’– CaretSticky enumeration

  • SC_CARETSTICKY_OFF β€” 0
  • SC_CARETSTICKY_ON β€” 1
  • SC_CARETSTICKY_WHITESPACE β€” 2
  • SC_ALPHA_TRANSPARENT β€” 0
  • SC_ALPHA_OPAQUE β€” 255
  • SC_ALPHA_NOALPHA β€” 256

πŸŽ€ CaretStyle enumeration

bestie the caret can literally be invisible, a lil line, or a whole block. choose your fighter πŸ’…

  • CARETSTYLE_INVISIBLE β€” 0
  • CARETSTYLE_LINE β€” 1
  • CARETSTYLE_BLOCK β€” 2

✨ MarginOption enumeration

  • SC_MARGINOPTION_NONE β€” 0
  • SC_MARGINOPTION_SUBLINESELECT β€” 1

πŸ¦‹ AnnotationVisible enumeration

  • ANNOTATION_HIDDEN β€” 0
  • ANNOTATION_STANDARD β€” 1
  • ANNOTATION_BOXED β€” 2
  • UNDO_MAY_COALESCE β€” 1

🌸 VirtualSpace enumeration

  • SCVS_NONE β€” 0
  • SCVS_RECTANGULARSELECTION β€” 1
  • SCVS_USERACCESSIBLE β€” 2
  • SC_TECHNOLOGY_DEFAULT β€” 0
  • SC_TECHNOLOGY_DIRECTWRITE β€” 1

πŸ‘‘ The keywordSet max

Maximum value of keywordSet parameter of SetKeyWords. no cap, this is literally the ceiling:

  • KEYWORDSET_MAX β€” 8

🌈 TypeProperty enumeration

  • SC_TYPE_BOOLEAN β€” 0
  • SC_TYPE_INTEGER β€” 1
  • SC_TYPE_STRING β€” 2

πŸ”₯ Notifications

Type of modification and the action which caused the modification. These are defined as a bit mask, which is the whole point β€” it makes it easy to specify which notifications you actually want. One bit gets set from each of SC_MOD_* and SC_PERFORMED_*. so you're basically building a lil combo meal of bits πŸ“

  • SC_MOD_INSERTTEXT β€” 0x1
  • SC_MOD_DELETETEXT β€” 0x2
  • SC_MOD_CHANGESTYLE β€” 0x4
  • SC_MOD_CHANGEFOLD β€” 0x8
  • SC_PERFORMED_USER β€” 0x10
  • SC_PERFORMED_UNDO β€” 0x20
  • SC_PERFORMED_REDO β€” 0x40
  • SC_MULTISTEPUNDOREDO β€” 0x80
  • SC_LASTSTEPINUNDOREDO β€” 0x100
  • SC_MOD_CHANGEMARKER β€” 0x200
  • SC_MOD_BEFOREINSERT β€” 0x400
  • SC_MOD_BEFOREDELETE β€” 0x800
  • SC_MULTILINEUNDOREDO β€” 0x1000
  • SC_STARTACTION β€” 0x2000
  • SC_MOD_CHANGEINDICATOR β€” 0x4000
  • SC_MOD_CHANGELINESTATE β€” 0x8000
  • SC_MOD_CHANGEMARGIN β€” 0x10000
  • SC_MOD_CHANGEANNOTATION β€” 0x20000
  • SC_MOD_CONTAINER β€” 0x40000
  • SC_MOD_LEXERSTATE β€” 0x80000
  • SC_MODEVENTMASKALL β€” 0xFFFFF

πŸ’œ Update enumeration

  • SC_UPDATE_CONTENT β€” 0x1
  • SC_UPDATE_SELECTION β€” 0x2
  • SC_UPDATE_V_SCROLL β€” 0x4
  • SC_UPDATE_H_SCROLL β€” 0x8

okay so for compatibility, these go through the COMMAND notification rather than NOTIFY, and they should have had exactly the same values as the EN_* constants. Unfortunately the SETFOCUS and KILLFOCUS are flipped over from EN_*. And because clients depend on these constants, this will not be changed. it's giving legacy baggage but it's staying, periodt 😭
  • SCEN_CHANGE β€” 768
  • SCEN_SETFOCUS β€” 512
  • SCEN_KILLFOCUS β€” 256

⭐ Keys enumeration

every key you could possibly press, mapped to its number. keyboard main character energy ⌨️

  • SCK_DOWN β€” 300
  • SCK_UP β€” 301
  • SCK_LEFT β€” 302
  • SCK_RIGHT β€” 303
  • SCK_HOME β€” 304
  • SCK_END β€” 305
  • SCK_PRIOR β€” 306
  • SCK_NEXT β€” 307
  • SCK_DELETE β€” 308
  • SCK_INSERT β€” 309
  • SCK_ESCAPE β€” 7
  • SCK_BACK β€” 8
  • SCK_TAB β€” 9
  • SCK_RETURN β€” 13
  • SCK_ADD β€” 310
  • SCK_SUBTRACT β€” 311
  • SCK_DIVIDE β€” 312
  • SCK_WIN β€” 313
  • SCK_RWIN β€” 314
  • SCK_MENU β€” 315

🧚 KeyMod enumeration

the modifier keys, and they're bit flags too, so you can smash them together 🫢

  • SCMOD_NORM β€” 0
  • SCMOD_SHIFT β€” 1
  • SCMOD_CTRL β€” 2
  • SCMOD_ALT β€” 4
  • SCMOD_SUPER β€” 8
  • SCMOD_META β€” 16

πŸ’€ Lexer enumeration

the full lexer lineup. yes, all of them. yes, we're listing every single one. buckle up 🎒

SCLEX_CONTAINER                (0)
SCLEX_NULL                     (1)
SCLEX_PYTHON                   (2)
SCLEX_CPP                      (3)
SCLEX_HTML                     (4)
SCLEX_XML                      (5)
SCLEX_PERL                     (6)
SCLEX_SQL                      (7)
SCLEX_VB                       (8)
SCLEX_PROPERTIES               (9)
SCLEX_ERRORLIST                (10)
SCLEX_MAKEFILE                 (11)
SCLEX_BATCH                    (12)
SCLEX_XCODE                    (13)
SCLEX_LATEX                    (14)
SCLEX_LUA                      (15)
SCLEX_DIFF                     (16)
SCLEX_CONF                     (17)
SCLEX_PASCAL                   (18)
SCLEX_AVE                      (19)
SCLEX_ADA                      (20)
SCLEX_LISP                     (21)
SCLEX_RUBY                     (22)
SCLEX_EIFFEL                   (23)
SCLEX_EIFFELKW                 (24)
SCLEX_TCL                      (25)
SCLEX_NNCRONTAB                (26)
SCLEX_BULLANT                  (27)
SCLEX_VBSCRIPT                 (28)
SCLEX_BAAN                     (31)
SCLEX_MATLAB                   (32)
SCLEX_SCRIPTOL                 (33)
SCLEX_ASM                      (34)
SCLEX_CPPNOCASE                (35)
SCLEX_FORTRAN                  (36)
SCLEX_F77                      (37)
SCLEX_CSS                      (38)
SCLEX_POV                      (39)
SCLEX_LOUT                     (40)
SCLEX_ESCRIPT                  (41)
SCLEX_PS                       (42)
SCLEX_NSIS                     (43)
SCLEX_MMIXAL                   (44)
SCLEX_CLW                      (45)
SCLEX_CLWNOCASE                (46)
SCLEX_LOT                      (47)
SCLEX_YAML                     (48)
SCLEX_TEX                      (49)
SCLEX_METAPOST                 (50)
SCLEX_POWERBASIC               (51)
SCLEX_FORTH                    (52)
SCLEX_ERLANG                   (53)
SCLEX_OCTAVE                   (54)
SCLEX_MSSQL                    (55)
SCLEX_VERILOG                  (56)
SCLEX_KIX                      (57)
SCLEX_GUI4CLI                  (58)
SCLEX_SPECMAN                  (59)
SCLEX_AU3                      (60)
SCLEX_APDL                     (61)
SCLEX_BASH                     (62)
SCLEX_ASN1                     (63)
SCLEX_VHDL                     (64)
SCLEX_CAML                     (65)
SCLEX_BLITZBASIC               (66)
SCLEX_PUREBASIC                (67)
SCLEX_HASKELL                  (68)
SCLEX_PHPSCRIPT                (69)
SCLEX_TADS3                    (70)
SCLEX_REBOL                    (71)
SCLEX_SMALLTALK                (72)
SCLEX_FLAGSHIP                 (73)
SCLEX_CSOUND                   (74)
SCLEX_FREEBASIC                (75)
SCLEX_INNOSETUP                (76)
SCLEX_OPAL                     (77)
SCLEX_SPICE                    (78)
SCLEX_D                        (79)
SCLEX_CMAKE                    (80)
SCLEX_GAP                      (81)
SCLEX_PLM                      (82)
SCLEX_PROGRESS                 (83)
SCLEX_ABAQUS                   (84)
SCLEX_ASYMPTOTE                (85)
SCLEX_R                        (86)
SCLEX_MAGIK                    (87)
SCLEX_POWERSHELL               (88)
SCLEX_MYSQL                    (89)
SCLEX_PO                       (90)
SCLEX_TAL                      (91)
SCLEX_COBOL                    (92)
SCLEX_TACL                     (93)
SCLEX_SORCUS                   (94)
SCLEX_POWERPRO                 (95)
SCLEX_NIMROD                   (96)
SCLEX_SML                      (97)
SCLEX_MARKDOWN                 (98)
SCLEX_TXT2TAGS                 (99)
SCLEX_A68K                     (100)
SCLEX_MODULA                   (101)
SCLEX_COFFEESCRIPT             (102)
SCLEX_TCMD                     (103)
SCLEX_AVS                      (104)
SCLEX_ECL                      (105)

and then the special one: when a lexer specifies its language as SCLEX_AUTOMATIC, it receives a value assigned in sequence from SCLEX_AUTOMATIC+1. cute lil auto-assign moment ✨

  • SCLEX_AUTOMATIC β€” 1000

πŸ“ Lexical states for SCLEX_PYTHON

the Python lexer's very own states, all fifteen of them, no notes πŸ’…

  • SCE_P_DEFAULT β€” 0
  • SCE_P_COMMENTLINE β€” 1
  • SCE_P_NUMBER β€” 2
  • SCE_P_STRING β€” 3
  • SCE_P_CHARACTER β€” 4
  • SCE_P_WORD β€” 5
  • SCE_P_TRIPLE β€” 6
  • SCE_P_TRIPLEDOUBLE β€” 7
  • SCE_P_CLASSNAME β€” 8
  • SCE_P_DEFNAME β€” 9
  • SCE_P_OPERATOR β€” 10
  • SCE_P_IDENTIFIER β€” 11
  • SCE_P_COMMENTBLOCK β€” 12
  • SCE_P_STRINGEOL β€” 13
  • SCE_P_WORD2 β€” 14
  • SCE_P_DECORATOR β€” 15

πŸ¦‹ Lexical states for SCLEX_CPP

Bestie, these are the little token IDs the C/C++ lexer hands back when it's reading your code. Twenty-three of them, all accounted for, no cap:

  • SCE_C_DEFAULT β€” (0)
  • SCE_C_COMMENT β€” (1)
  • SCE_C_COMMENTLINE β€” (2)
  • SCE_C_COMMENTDOC β€” (3)
  • SCE_C_NUMBER β€” (4)
  • SCE_C_WORD β€” (5)
  • SCE_C_STRING β€” (6)
  • SCE_C_CHARACTER β€” (7)
  • SCE_C_UUID β€” (8)
  • SCE_C_PREPROCESSOR β€” (9)
  • SCE_C_OPERATOR β€” (10)
  • SCE_C_IDENTIFIER β€” (11)
  • SCE_C_STRINGEOL β€” (12)
  • SCE_C_VERBATIM β€” (13)
  • SCE_C_REGEX β€” (14)
  • SCE_C_COMMENTLINEDOC β€” (15)
  • SCE_C_WORD2 β€” (16)
  • SCE_C_COMMENTDOCKEYWORD β€” (17)
  • SCE_C_COMMENTDOCKEYWORDERROR β€” (18)
  • SCE_C_GLOBALCLASS β€” (19)
  • SCE_C_STRINGRAW β€” (20)
  • SCE_C_TRIPLEVERBATIM β€” (21)
  • SCE_C_HASHQUOTEDSTRING β€” (22)

🧚 Lexical states for SCLEX_D

The D lexer said "let me do it too" and honestly it ate. Same idea, new language, twenty-three slots again:

  • SCE_D_DEFAULT β€” (0)
  • SCE_D_COMMENT β€” (1)
  • SCE_D_COMMENTLINE β€” (2)
  • SCE_D_COMMENTDOC β€” (3)
  • SCE_D_COMMENTNESTED β€” (4)
  • SCE_D_NUMBER β€” (5)
  • SCE_D_WORD β€” (6)
  • SCE_D_WORD2 β€” (7)
  • SCE_D_WORD3 β€” (8)
  • SCE_D_TYPEDEF β€” (9)
  • SCE_D_STRING β€” (10)
  • SCE_D_STRINGEOL β€” (11)
  • SCE_D_CHARACTER β€” (12)
  • SCE_D_OPERATOR β€” (13)
  • SCE_D_IDENTIFIER β€” (14)
  • SCE_D_COMMENTLINEDOC β€” (15)
  • SCE_D_COMMENTDOCKEYWORD β€” (16)
  • SCE_D_COMMENTDOCKEYWORDERROR β€” (17)
  • SCE_D_STRINGB β€” (18)
  • SCE_D_STRINGR β€” (19)
  • SCE_D_WORD5 β€” (20)
  • SCE_D_WORD6 β€” (21)
  • SCE_D_WORD7 β€” (22)

πŸŽ€ Lexical states for SCLEX_TCL

Tcl girlies rise up πŸ’… twenty-two states, all present and accounted for:

  • SCE_TCL_DEFAULT β€” (0)
  • SCE_TCL_COMMENT β€” (1)
  • SCE_TCL_COMMENTLINE β€” (2)
  • SCE_TCL_NUMBER β€” (3)
  • SCE_TCL_WORD_IN_QUOTE β€” (4)
  • SCE_TCL_IN_QUOTE β€” (5)
  • SCE_TCL_OPERATOR β€” (6)
  • SCE_TCL_IDENTIFIER β€” (7)
  • SCE_TCL_SUBSTITUTION β€” (8)
  • SCE_TCL_SUB_BRACE β€” (9)
  • SCE_TCL_MODIFIER β€” (10)
  • SCE_TCL_EXPAND β€” (11)
  • SCE_TCL_WORD β€” (12)
  • SCE_TCL_WORD2 β€” (13)
  • SCE_TCL_WORD3 β€” (14)
  • SCE_TCL_WORD4 β€” (15)
  • SCE_TCL_WORD5 β€” (16)
  • SCE_TCL_WORD6 β€” (17)
  • SCE_TCL_WORD7 β€” (18)
  • SCE_TCL_WORD8 β€” (19)
  • SCE_TCL_COMMENT_BOX β€” (20)
  • SCE_TCL_BLOCK_COMMENT β€” (21)

✨ Lexical states for SCLEX_HTML, SCLEX_XML

Okay this one is the main character of the whole list β€” it's huge, it's split into a bunch of little families, and the numbering lowkey jumps around. Buckle up 🫢

  • SCE_H_DEFAULT β€” (0)
  • SCE_H_TAG β€” (1)
  • SCE_H_TAGUNKNOWN β€” (2)
  • SCE_H_ATTRIBUTE β€” (3)
  • SCE_H_ATTRIBUTEUNKNOWN β€” (4)
  • SCE_H_NUMBER β€” (5)
  • SCE_H_DOUBLESTRING β€” (6)
  • SCE_H_SINGLESTRING β€” (7)
  • SCE_H_OTHER β€” (8)
  • SCE_H_COMMENT β€” (9)
  • SCE_H_ENTITY β€” (10)

XML and ASP

  • SCE_H_TAGEND β€” (11)
  • SCE_H_XMLSTART β€” (12)
  • SCE_H_XMLEND β€” (13)
  • SCE_H_SCRIPT β€” (14)
  • SCE_H_ASP β€” (15)
  • SCE_H_ASPAT β€” (16)
  • SCE_H_CDATA β€” (17)
  • SCE_H_QUESTION β€” (18)

More HTML

  • SCE_H_VALUE β€” (19)

X-Code

  • SCE_H_XCCOMMENT β€” (20)

SGML

  • SCE_H_SGML_DEFAULT β€” (21)
  • SCE_H_SGML_COMMAND β€” (22)
  • SCE_H_SGML_1ST_PARAM β€” (23)
  • SCE_H_SGML_DOUBLESTRING β€” (24)
  • SCE_H_SGML_SIMPLESTRING β€” (25)
  • SCE_H_SGML_ERROR β€” (26)
  • SCE_H_SGML_SPECIAL β€” (27)
  • SCE_H_SGML_ENTITY β€” (28)
  • SCE_H_SGML_COMMENT β€” (29)
  • SCE_H_SGML_1ST_PARAM_COMMENT β€” (30)
  • SCE_H_SGML_BLOCK_DEFAULT β€” (31)

Embedded Javascript

  • SCE_HJ_START β€” (40)
  • SCE_HJ_DEFAULT β€” (41)
  • SCE_HJ_COMMENT β€” (42)
  • SCE_HJ_COMMENTLINE β€” (43)
  • SCE_HJ_COMMENTDOC β€” (44)
  • SCE_HJ_NUMBER β€” (45)
  • SCE_HJ_WORD β€” (46)
  • SCE_HJ_KEYWORD β€” (47)
  • SCE_HJ_DOUBLESTRING β€” (48)
  • SCE_HJ_SINGLESTRING β€” (49)
  • SCE_HJ_SYMBOLS β€” (50)
  • SCE_HJ_STRINGEOL β€” (51)
  • SCE_HJ_REGEX β€” (52)

ASP Javascript

  • SCE_HJA_START β€” (55)
  • SCE_HJA_DEFAULT β€” (56)
  • SCE_HJA_COMMENT β€” (57)
  • SCE_HJA_COMMENTLINE β€” (58)
  • SCE_HJA_COMMENTDOC β€” (59)
  • SCE_HJA_NUMBER β€” (60)
  • SCE_HJA_WORD β€” (61)
  • SCE_HJA_KEYWORD β€” (62)
  • SCE_HJA_DOUBLESTRING β€” (63)
  • SCE_HJA_SINGLESTRING β€” (64)
  • SCE_HJA_SYMBOLS β€” (65)
  • SCE_HJA_STRINGEOL β€” (66)
  • SCE_HJA_REGEX β€” (67)

Embedded VBScript

  • SCE_HB_START β€” (70)
  • SCE_HB_DEFAULT β€” (71)
  • SCE_HB_COMMENTLINE β€” (72)
  • SCE_HB_NUMBER β€” (73)
  • SCE_HB_WORD β€” (74)
  • SCE_HB_STRING β€” (75)
  • SCE_HB_IDENTIFIER β€” (76)
  • SCE_HB_STRINGEOL β€” (77)

ASP VBScript

  • SCE_HBA_START β€” (80)
  • SCE_HBA_DEFAULT β€” (81)
  • SCE_HBA_COMMENTLINE β€” (82)
  • SCE_HBA_NUMBER β€” (83)
  • SCE_HBA_WORD β€” (84)
  • SCE_HBA_STRING β€” (85)
  • SCE_HBA_IDENTIFIER β€” (86)
  • SCE_HBA_STRINGEOL β€” (87)

Embedded Python

  • SCE_HP_START β€” (90)
  • SCE_HP_DEFAULT β€” (91)
  • SCE_HP_COMMENTLINE β€” (92)
  • SCE_HP_NUMBER β€” (93)
  • SCE_HP_STRING β€” (94)
  • SCE_HP_CHARACTER β€” (95)
  • SCE_HP_WORD β€” (96)
  • SCE_HP_TRIPLE β€” (97)
  • SCE_HP_TRIPLEDOUBLE β€” (98)
  • SCE_HP_CLASSNAME β€” (99)
  • SCE_HP_DEFNAME β€” (100)
  • SCE_HP_OPERATOR β€” (101)
  • SCE_HP_IDENTIFIER β€” (102)

PHP

  • SCE_HPHP_COMPLEX_VARIABLE β€” (104)

ASP Python

  • SCE_HPA_START β€” (105)
  • SCE_HPA_DEFAULT β€” (106)
  • SCE_HPA_COMMENTLINE β€” (107)
  • SCE_HPA_NUMBER β€” (108)
  • SCE_HPA_STRING β€” (109)
  • SCE_HPA_CHARACTER β€” (110)
  • SCE_HPA_WORD β€” (111)
  • SCE_HPA_TRIPLE β€” (112)
  • SCE_HPA_TRIPLEDOUBLE β€” (113)
  • SCE_HPA_CLASSNAME β€” (114)
  • SCE_HPA_DEFNAME β€” (115)
  • SCE_HPA_OPERATOR β€” (116)
  • SCE_HPA_IDENTIFIER β€” (117)

PHP

  • SCE_HPHP_DEFAULT β€” (118)
  • SCE_HPHP_HSTRING β€” (119)
  • SCE_HPHP_SIMPLESTRING β€” (120)
  • SCE_HPHP_WORD β€” (121)
  • SCE_HPHP_NUMBER β€” (122)
  • SCE_HPHP_VARIABLE β€” (123)
  • SCE_HPHP_COMMENT β€” (124)
  • SCE_HPHP_COMMENTLINE β€” (125)
  • SCE_HPHP_HSTRING_VARIABLE β€” (126)
  • SCE_HPHP_OPERATOR β€” (127)
Yes, that PHP block shows up twice in the original, and yes the numbers skip. Not me fixing it β€” I'm just the messenger πŸ’€

🌸 Lexical states for SCLEX_PERL

Perl said "hold my $@%" and honestly? It understood the assignment. Note that the numbers are absolutely unhinged down at the bottom β€” they leap from 31 to 40 and then vibe-hop around 54, 55, 57, 61, 62, 64, 65, 66. That's just how it is, bestie:

  • SCE_PL_DEFAULT β€” (0)
  • SCE_PL_ERROR β€” (1)
  • SCE_PL_COMMENTLINE β€” (2)
  • SCE_PL_POD β€” (3)
  • SCE_PL_NUMBER β€” (4)
  • SCE_PL_WORD β€” (5)
  • SCE_PL_STRING β€” (6)
  • SCE_PL_CHARACTER β€” (7)
  • SCE_PL_PUNCTUATION β€” (8)
  • SCE_PL_PREPROCESSOR β€” (9)
  • SCE_PL_OPERATOR β€” (10)
  • SCE_PL_IDENTIFIER β€” (11)
  • SCE_PL_SCALAR β€” (12)
  • SCE_PL_ARRAY β€” (13)
  • SCE_PL_HASH β€” (14)
  • SCE_PL_SYMBOLTABLE β€” (15)
  • SCE_PL_VARIABLE_INDEXER β€” (16)
  • SCE_PL_REGEX β€” (17)
  • SCE_PL_REGSUBST β€” (18)
  • SCE_PL_LONGQUOTE β€” (19)
  • SCE_PL_BACKTICKS β€” (20)
  • SCE_PL_DATASECTION β€” (21)
  • SCE_PL_HERE_DELIM β€” (22)
  • SCE_PL_HERE_Q β€” (23)
  • SCE_PL_HERE_QQ β€” (24)
  • SCE_PL_HERE_QX β€” (25)
  • SCE_PL_STRING_Q β€” (26)
  • SCE_PL_STRING_QQ β€” (27)
  • SCE_PL_STRING_QX β€” (28)
  • SCE_PL_STRING_QR β€” (29)
  • SCE_PL_STRING_QW β€” (30)
  • SCE_PL_POD_VERB β€” (31)
  • SCE_PL_SUB_PROTOTYPE β€” (40)
  • SCE_PL_FORMAT_IDENT β€” (41)
  • SCE_PL_FORMAT β€” (42)
  • SCE_PL_STRING_VAR β€” (43)
  • SCE_PL_XLAT β€” (44)
  • SCE_PL_REGEX_VAR β€” (54)
  • SCE_PL_REGSUBST_VAR β€” (55)
  • SCE_PL_BACKTICKS_VAR β€” (57)
  • SCE_PL_HERE_QQ_VAR β€” (61)
  • SCE_PL_HERE_QX_VAR β€” (62)
  • SCE_PL_STRING_QQ_VAR β€” (64)
  • SCE_PL_STRING_QX_VAR β€” (65)
  • SCE_PL_STRING_QR_VAR β€” (66)

Lexical states for SCLEX_RUBY

okay so Ruby's lexer has moods, plural, and we're listing every single one because that's literally the job πŸ’ŽπŸŒΈ

  • SCE_RB_DEFAULT β€” (0)
  • SCE_RB_ERROR β€” (1)
  • SCE_RB_COMMENTLINE β€” (2)
  • SCE_RB_POD β€” (3)
  • SCE_RB_NUMBER β€” (4)
  • SCE_RB_WORD β€” (5)
  • SCE_RB_STRING β€” (6)
  • SCE_RB_CHARACTER β€” (7)
  • SCE_RB_CLASSNAME β€” (8)
  • SCE_RB_DEFNAME β€” (9)
  • SCE_RB_OPERATOR β€” (10)
  • SCE_RB_IDENTIFIER β€” (11)
  • SCE_RB_REGEX β€” (12)
  • SCE_RB_GLOBAL β€” (13)
  • SCE_RB_SYMBOL β€” (14)
  • SCE_RB_MODULE_NAME β€” (15)
  • SCE_RB_INSTANCE_VAR β€” (16)
  • SCE_RB_CLASS_VAR β€” (17)
  • SCE_RB_BACKTICKS β€” (18)
  • SCE_RB_DATASECTION β€” (19)
  • SCE_RB_HERE_DELIM β€” (20)
  • SCE_RB_HERE_Q β€” (21)
  • SCE_RB_HERE_QQ β€” (22)
  • SCE_RB_HERE_QX β€” (23)
  • SCE_RB_STRING_Q β€” (24)
  • SCE_RB_STRING_QQ β€” (25)
  • SCE_RB_STRING_QX β€” (26)
  • SCE_RB_STRING_QR β€” (27)
  • SCE_RB_STRING_QW β€” (28)
  • SCE_RB_WORD_DEMOTED β€” (29)
  • SCE_RB_STDIN β€” (30)
  • SCE_RB_STDOUT β€” (31)
  • SCE_RB_STDERR β€” (40)
  • SCE_RB_UPPER_BOUND β€” (41)

note how it jumps from 31 to 40 β€” that's just what it is, I don't make the rules πŸ™ˆ


Lexical states for SCLEX_VB, SCLEX_VBSCRIPT, SCLEX_POWERBASIC

Visual Basic and friends sharing one whole state list, bestie, they're cosy like that πŸ’œ

  • SCE_B_DEFAULT β€” (0)
  • SCE_B_COMMENT β€” (1)
  • SCE_B_NUMBER β€” (2)
  • SCE_B_KEYWORD β€” (3)
  • SCE_B_STRING β€” (4)
  • SCE_B_PREPROCESSOR β€” (5)
  • SCE_B_OPERATOR β€” (6)
  • SCE_B_IDENTIFIER β€” (7)
  • SCE_B_DATE β€” (8)
  • SCE_B_STRINGEOL β€” (9)
  • SCE_B_KEYWORD2 β€” (10)
  • SCE_B_KEYWORD3 β€” (11)
  • SCE_B_KEYWORD4 β€” (12)
  • SCE_B_CONSTANT β€” (13)
  • SCE_B_ASM β€” (14)
  • SCE_B_LABEL β€” (15)
  • SCE_B_ERROR β€” (16)
  • SCE_B_HEXNUMBER β€” (17)
  • SCE_B_BINNUMBER β€” (18)

Lexical states for SCLEX_PROPERTIES

tiny list, tiny icon πŸŽ€ config files stay winning

  • SCE_PROPS_DEFAULT β€” (0)
  • SCE_PROPS_COMMENT β€” (1)
  • SCE_PROPS_SECTION β€” (2)
  • SCE_PROPS_ASSIGNMENT β€” (3)
  • SCE_PROPS_DEFVAL β€” (4)
  • SCE_PROPS_KEY β€” (5)

Lexical states for SCLEX_LATEX

the academic girlies are gonna eat this one up πŸ“šβœ¨

  • SCE_L_DEFAULT β€” (0)
  • SCE_L_COMMAND β€” (1)
  • SCE_L_TAG β€” (2)
  • SCE_L_MATH β€” (3)
  • SCE_L_COMMENT β€” (4)
  • SCE_L_TAG2 β€” (5)
  • SCE_L_MATH2 β€” (6)
  • SCE_L_COMMENT2 β€” (7)
  • SCE_L_VERBATIM β€” (8)
  • SCE_L_SHORTCMD β€” (9)
  • SCE_L_SPECIAL β€” (10)
  • SCE_L_CMDOPT β€” (11)
  • SCE_L_ERROR β€” (12)

Lexical states for SCLEX_LUA

Lua said "I contain multitudes" and then made WORD2 through WORD8, iconic honestly πŸŒ™

  • SCE_LUA_DEFAULT β€” (0)
  • SCE_LUA_COMMENT β€” (1)
  • SCE_LUA_COMMENTLINE β€” (2)
  • SCE_LUA_COMMENTDOC β€” (3)
  • SCE_LUA_NUMBER β€” (4)
  • SCE_LUA_WORD β€” (5)
  • SCE_LUA_STRING β€” (6)
  • SCE_LUA_CHARACTER β€” (7)
  • SCE_LUA_LITERALSTRING β€” (8)
  • SCE_LUA_PREPROCESSOR β€” (9)
  • SCE_LUA_OPERATOR β€” (10)
  • SCE_LUA_IDENTIFIER β€” (11)
  • SCE_LUA_STRINGEOL β€” (12)
  • SCE_LUA_WORD2 β€” (13)
  • SCE_LUA_WORD3 β€” (14)
  • SCE_LUA_WORD4 β€” (15)
  • SCE_LUA_WORD5 β€” (16)
  • SCE_LUA_WORD6 β€” (17)
  • SCE_LUA_WORD7 β€” (18)
  • SCE_LUA_WORD8 β€” (19)
  • SCE_LUA_LABEL β€” (20)

Lexical states for SCLEX_ERRORLIST

compiler-error flavoured, my toxic fave πŸ’€ every bad build you've ever had shows up somewhere in this list

  • SCE_ERR_DEFAULT β€” (0)
  • SCE_ERR_PYTHON β€” (1)
  • SCE_ERR_GCC β€” (2)
  • SCE_ERR_MS β€” (3)
  • SCE_ERR_CMD β€” (4)
  • SCE_ERR_BORLAND β€” (5)
  • SCE_ERR_PERL β€” (6)
  • SCE_ERR_NET β€” (7)
  • SCE_ERR_LUA β€” (8)
  • SCE_ERR_CTAG β€” (9)
  • SCE_ERR_DIFF_CHANGED β€” (10)
  • SCE_ERR_DIFF_ADDITION β€” (11)
  • SCE_ERR_DIFF_DELETION β€” (12)
  • SCE_ERR_DIFF_MESSAGE β€” (13)
  • SCE_ERR_PHP β€” (14)
  • SCE_ERR_ELF β€” (15)
  • SCE_ERR_IFC β€” (16)
  • SCE_ERR_IFORT β€” (17)
  • SCE_ERR_ABSF β€” (18)
  • SCE_ERR_TIDY β€” (19)
  • SCE_ERR_JAVA_STACK β€” (20)
  • SCE_ERR_VALUE β€” (21)

Lexical states for SCLEX_BATCH

windows batch files, the chaos gremlin of scripting formats πŸ¦‹

  • SCE_BAT_DEFAULT β€” (0)
  • SCE_BAT_COMMENT β€” (1)
  • SCE_BAT_WORD β€” (2)
  • SCE_BAT_LABEL β€” (3)
  • SCE_BAT_HIDE β€” (4)
  • SCE_BAT_COMMAND β€” (5)
  • SCE_BAT_IDENTIFIER β€” (6)
  • SCE_BAT_OPERATOR β€” (7)

Lexical states for SCLEX_TCMD

batch's slightly more extra cousin, it got ENVIRONMENT, EXPANSION and CLABEL on top πŸ’…

  • SCE_TCMD_DEFAULT β€” (0)
  • SCE_TCMD_COMMENT β€” (1)
  • SCE_TCMD_WORD β€” (2)
  • SCE_TCMD_LABEL β€” (3)
  • SCE_TCMD_HIDE β€” (4)
  • SCE_TCMD_COMMAND β€” (5)
  • SCE_TCMD_IDENTIFIER β€” (6)
  • SCE_TCMD_OPERATOR β€” (7)
  • SCE_TCMD_ENVIRONMENT β€” (8)
  • SCE_TCMD_EXPANSION β€” (9)
  • SCE_TCMD_CLABEL β€” (10)

Lexical states for SCLEX_MAKEFILE

the lexer for the file that has personally ended me more times than I can count 😭🫢

  • SCE_MAKE_DEFAULT β€” (0)
  • SCE_MAKE_COMMENT β€” (1)
  • SCE_MAKE_PREPROCESSOR β€” (2)
  • SCE_MAKE_IDENTIFIER β€” (3)
  • SCE_MAKE_OPERATOR β€” (4)
  • SCE_MAKE_TARGET β€” (5)
  • SCE_MAKE_IDEOL β€” (9)

yep, it really does leap from (5) straight to (9). no notes πŸ™ˆ


Lexical states for SCLEX_DIFF

pretty colours for diff output, lowkey the most satisfying thing in a terminal 🌈

  • SCE_DIFF_DEFAULT β€” (0)
  • SCE_DIFF_COMMENT β€” (1)
  • SCE_DIFF_COMMAND β€” (2)
  • SCE_DIFF_HEADER β€” (3)
  • SCE_DIFF_POSITION β€” (4)
  • SCE_DIFF_DELETED β€” (5)
  • SCE_DIFF_ADDED β€” (6)
  • SCE_DIFF_CHANGED β€” (7)

Lexical states for SCLEX_CONF (Apache Configuration Files Lexer)

yep, the parenthetical is part of the name, leaving it exactly as-is bestie ✨

  • SCE_CONF_DEFAULT β€” (0)
  • SCE_CONF_COMMENT β€” (1)
  • SCE_CONF_NUMBER β€” (2)
  • SCE_CONF_IDENTIFIER β€” (3)
  • SCE_CONF_EXTENSION β€” (4)
  • SCE_CONF_PARAMETER β€” (5)
  • SCE_CONF_STRING β€” (6)
  • SCE_CONF_OPERATOR β€” (7)
  • SCE_CONF_IP β€” (8)
  • SCE_CONF_DIRECTIVE β€” (9)

Lexical states for SCLEX_AVE, Avenue

Avenue only gets to exist as SCE_AVE_* and honestly, it's doing its best πŸŽ€

  • SCE_AVE_DEFAULT β€” (0)
  • SCE_AVE_COMMENT β€” (1)
  • SCE_AVE_NUMBER β€” (2)
  • SCE_AVE_WORD β€” (3)
  • SCE_AVE_STRING β€” (6)
  • SCE_AVE_ENUM β€” (7)
  • SCE_AVE_STRINGEOL β€” (8)
  • SCE_AVE_IDENTIFIER β€” (9)
  • SCE_AVE_OPERATOR β€” (10)
  • SCE_AVE_WORD1 β€” (11)
  • SCE_AVE_WORD2 β€” (12)
  • SCE_AVE_WORD3 β€” (13)
  • SCE_AVE_WORD4 β€” (14)
  • SCE_AVE_WORD5 β€” (15)
  • SCE_AVE_WORD6 β€” (16)

so (4) and (5) are just… not a thing here. that's the list, I'm not inventing numbers for you πŸ™ˆ


Lexical states for SCLEX_ADA

Ada is out here with CHARACTER and CHARACTEREOL and STRING and STRINGEOL β€” thorough queen πŸ’œ

  • SCE_ADA_DEFAULT β€” (0)
  • SCE_ADA_WORD β€” (1)
  • SCE_ADA_IDENTIFIER β€” (2)
  • SCE_ADA_NUMBER β€” (3)
  • SCE_ADA_DELIMITER β€” (4)
  • SCE_ADA_CHARACTER β€” (5)
  • SCE_ADA_CHARACTEREOL β€” (6)
  • SCE_ADA_STRING β€” (7)
  • SCE_ADA_STRINGEOL β€” (8)
  • SCE_ADA_LABEL β€” (9)
  • SCE_ADA_COMMENTLINE β€” (10)
  • SCE_ADA_ILLEGAL β€” (11)

Lexical states for SCLEX_BAAN

Baan, serving COMMENTDOC energy and exactly one WORD2, balanced πŸ“

  • SCE_BAAN_DEFAULT β€” (0)
  • SCE_BAAN_COMMENT β€” (1)
  • SCE_BAAN_COMMENTDOC β€” (2)
  • SCE_BAAN_NUMBER β€” (3)
  • SCE_BAAN_WORD β€” (4)
  • SCE_BAAN_STRING β€” (5)
  • SCE_BAAN_PREPROCESSOR β€” (6)
  • SCE_BAAN_OPERATOR β€” (7)
  • SCE_BAAN_IDENTIFIER β€” (8)
  • SCE_BAAN_STRINGEOL β€” (9)
  • SCE_BAAN_WORD2 β€” (10)

Lexical states for SCLEX_LISP

parentheses incoming. so many parentheses. stay strong bestie πŸ’€

  • SCE_LISP_DEFAULT β€” (0)
  • SCE_LISP_COMMENT β€” (1)
  • SCE_LISP_NUMBER β€” (2)
  • SCE_LISP_KEYWORD β€” (3)
  • SCE_LISP_KEYWORD_KW β€” (4)
  • SCE_LISP_SYMBOL β€” (5)
  • SCE_LISP_STRING β€” (6)
  • SCE_LISP_STRINGEOL β€” (8)
  • SCE_LISP_IDENTIFIER β€” (9)
  • SCE_LISP_OPERATOR β€” (10)
  • SCE_LISP_SPECIAL β€” (11)
  • SCE_LISP_MULTI_COMMENT β€” (12)

again with the skip β€” (7) is a no-show, that's just the list 🌸


Lexical states for SCLEX_EIFFEL and SCLEX_EIFFELKW

last block of this part and it's a tidy nine, very demure, very mindful πŸ‘‘

  • SCE_EIFFEL_DEFAULT β€” (0)
  • SCE_EIFFEL_COMMENTLINE β€” (1)
  • SCE_EIFFEL_NUMBER β€” (2)
  • SCE_EIFFEL_WORD β€” (3)
  • SCE_EIFFEL_STRING β€” (4)
  • SCE_EIFFEL_CHARACTER β€” (5)
  • SCE_EIFFEL_OPERATOR β€” (6)
  • SCE_EIFFEL_IDENTIFIER β€” (7)
  • SCE_EIFFEL_STRINGEOL β€” (8)

and we are SO not done, the constants keep coming, don't you dare close the page ✨

Okay so we're deep in the constant soup now and honestly? This is the part where it's just ✨ lexer states ✨ back to back, and I need you to stay with me bestie, because every single one of these is a real number you might need. Let's go πŸ’…


πŸ’– Lexical states for SCLEX_NNCRONTAB (nnCron crontab Lexer)

nnCron's crontab flavour, and it's giving very structured-notebook energy:

SCE_NNCRONTAB_DEFAULT          (0)
SCE_NNCRONTAB_COMMENT          (1)
SCE_NNCRONTAB_TASK             (2)
SCE_NNCRONTAB_SECTION          (3)
SCE_NNCRONTAB_KEYWORD          (4)
SCE_NNCRONTAB_MODIFIER         (5)
SCE_NNCRONTAB_ASTERISK         (6)
SCE_NNCRONTAB_NUMBER           (7)
SCE_NNCRONTAB_STRING           (8)
SCE_NNCRONTAB_ENVIRONMENT      (9)
SCE_NNCRONTAB_IDENTIFIER       (10)

πŸ¦‹ Lexical states for SCLEX_FORTH (Forth Lexer)

Forth!! stack-based iconic behaviour, and its states are just as tidy:

SCE_FORTH_DEFAULT              (0)
SCE_FORTH_COMMENT              (1)
SCE_FORTH_COMMENT_ML           (2)
SCE_FORTH_IDENTIFIER           (3)
SCE_FORTH_CONTROL              (4)
SCE_FORTH_KEYWORD              (5)
SCE_FORTH_DEFWORD              (6)
SCE_FORTH_PREWORD1             (7)
SCE_FORTH_PREWORD2             (8)
SCE_FORTH_NUMBER               (9)
SCE_FORTH_STRING               (10)
SCE_FORTH_LOCALE               (11)

πŸ“ Lexical states for SCLEX_MATLAB

Matlab maths girlies rise 🫢 and yeah there's a lil stray note about single quoted string living right in the middle of the list, so I'm keeping it exactly where it was, no cap:

SCE_MATLAB_DEFAULT             (0)
SCE_MATLAB_COMMENT             (1)
SCE_MATLAB_COMMAND             (2)
SCE_MATLAB_NUMBER              (3)
SCE_MATLAB_KEYWORD             (4)

single quoted string

SCE_MATLAB_STRING              (5)
SCE_MATLAB_OPERATOR            (6)
SCE_MATLAB_IDENTIFIER          (7)
SCE_MATLAB_DOUBLEQUOTESTRING   (8)

✨ Lexical states for SCLEX_SCRIPTOL

Scriptol said "I have sixteen states and I'm not sorry about it":

SCE_SCRIPTOL_DEFAULT           (0)
SCE_SCRIPTOL_WHITE             (1)
SCE_SCRIPTOL_COMMENTLINE       (2)
SCE_SCRIPTOL_PERSISTENT        (3)
SCE_SCRIPTOL_CSTYLE            (4)
SCE_SCRIPTOL_COMMENTBLOCK      (5)
SCE_SCRIPTOL_NUMBER            (6)
SCE_SCRIPTOL_STRING            (7)
SCE_SCRIPTOL_CHARACTER         (8)
SCE_SCRIPTOL_STRINGEOL         (9)
SCE_SCRIPTOL_KEYWORD           (10)
SCE_SCRIPTOL_OPERATOR          (11)
SCE_SCRIPTOL_IDENTIFIER        (12)
SCE_SCRIPTOL_TRIPLE            (13)
SCE_SCRIPTOL_CLASSNAME         (14)
SCE_SCRIPTOL_PREPROCESSOR      (15)

πŸ’€ Lexical states for SCLEX_ASM

Assembly, the original main character energy (derogatory, affectionate). Look at all these:

SCE_ASM_DEFAULT                (0)
SCE_ASM_COMMENT                (1)
SCE_ASM_NUMBER                 (2)
SCE_ASM_STRING                 (3)
SCE_ASM_OPERATOR               (4)
SCE_ASM_IDENTIFIER             (5)
SCE_ASM_CPUINSTRUCTION         (6)
SCE_ASM_MATHINSTRUCTION        (7)
SCE_ASM_REGISTER               (8)
SCE_ASM_DIRECTIVE              (9)
SCE_ASM_DIRECTIVEOPERAND       (10)
SCE_ASM_COMMENTBLOCK           (11)
SCE_ASM_CHARACTER              (12)
SCE_ASM_STRINGEOL              (13)
SCE_ASM_EXTINSTRUCTION         (14)
SCE_ASM_COMMENTDIRECTIVE       (15)

🌸 Lexical states for SCLEX_FORTRAN

Fortran my beloved, all colons-before-the-word and vibes:

SCE_F_DEFAULT                  (0)
SCE_F_COMMENT                  (1)
SCE_F_NUMBER                   (2)
SCE_F_STRING1                  (3)
SCE_F_STRING2                  (4)
SCE_F_STRINGEOL                (5)
SCE_F_OPERATOR                 (6)
SCE_F_IDENTIFIER               (7)
SCE_F_WORD                     (8)
SCE_F_WORD2                    (9)
SCE_F_WORD3                    (10)
SCE_F_PREPROCESSOR             (11)
SCE_F_OPERATOR2                (12)
SCE_F_LABEL                    (13)
SCE_F_CONTINUATION             (14)

🌈 Lexical states for SCLEX_CSS

CSS ate, truly. Twenty-four states of pure styling chaos and I respect it:

SCE_CSS_DEFAULT                (0)
SCE_CSS_TAG                    (1)
SCE_CSS_CLASS                  (2)
SCE_CSS_PSEUDOCLASS            (3)
SCE_CSS_UNKNOWN_PSEUDOCLASS    (4)
SCE_CSS_OPERATOR               (5)
SCE_CSS_IDENTIFIER             (6)
SCE_CSS_UNKNOWN_IDENTIFIER     (7)
SCE_CSS_VALUE                  (8)
SCE_CSS_COMMENT                (9)
SCE_CSS_ID                     (10)
SCE_CSS_IMPORTANT              (11)
SCE_CSS_DIRECTIVE              (12)
SCE_CSS_DOUBLESTRING           (13)
SCE_CSS_SINGLESTRING           (14)
SCE_CSS_IDENTIFIER2            (15)
SCE_CSS_ATTRIBUTE              (16)
SCE_CSS_IDENTIFIER3            (17)
SCE_CSS_PSEUDOELEMENT          (18)
SCE_CSS_EXTENDED_IDENTIFIER    (19)
SCE_CSS_EXTENDED_PSEUDOCLASS   (20)
SCE_CSS_EXTENDED_PSEUDOELEMENT (21)
SCE_CSS_MEDIA                  (22)
SCE_CSS_VARIABLE               (23)

πŸŽ€ Lexical states for SCLEX_POV

POV-Ray, ray-tracing diva. It's got the whole WORD2 through WORD8 pipeline and honestly? slay:

SCE_POV_DEFAULT                (0)
SCE_POV_COMMENT                (1)
SCE_POV_COMMENTLINE            (2)
SCE_POV_NUMBER                 (3)
SCE_POV_OPERATOR               (4)
SCE_POV_IDENTIFIER             (5)
SCE_POV_STRING                 (6)
SCE_POV_STRINGEOL              (7)
SCE_POV_DIRECTIVE              (8)
SCE_POV_BADDIRECTIVE           (9)
SCE_POV_WORD2                  (10)
SCE_POV_WORD3                  (11)
SCE_POV_WORD4                  (12)
SCE_POV_WORD5                  (13)
SCE_POV_WORD6                  (14)
SCE_POV_WORD7                  (15)
SCE_POV_WORD8                  (16)

🧚 Lexical states for SCLEX_LOUT

Lout, the lil typesetting gremlin, keeping it short and sweet:

SCE_LOUT_DEFAULT               (0)
SCE_LOUT_COMMENT               (1)
SCE_LOUT_NUMBER                (2)
SCE_LOUT_WORD                  (3)
SCE_LOUT_WORD2                 (4)
SCE_LOUT_WORD3                 (5)
SCE_LOUT_WORD4                 (6)
SCE_LOUT_STRING                (7)
SCE_LOUT_OPERATOR              (8)
SCE_LOUT_IDENTIFIER            (9)
SCE_LOUT_STRINGEOL             (10)

πŸ’œ Lexical states for SCLEX_ESCRIPT

Escript, and ooh it's got that BRACE state which is kinda unique of it:

SCE_ESCRIPT_DEFAULT            (0)
SCE_ESCRIPT_COMMENT            (1)
SCE_ESCRIPT_COMMENTLINE        (2)
SCE_ESCRIPT_COMMENTDOC         (3)
SCE_ESCRIPT_NUMBER             (4)
SCE_ESCRIPT_WORD               (5)
SCE_ESCRIPT_STRING             (6)
SCE_ESCRIPT_OPERATOR           (7)
SCE_ESCRIPT_IDENTIFIER         (8)
SCE_ESCRIPT_BRACE              (9)
SCE_ESCRIPT_WORD2              (10)
SCE_ESCRIPT_WORD3              (11)

⭐ Lexical states for SCLEX_PS

PostScript babes, sixteen states deep, with a lil IMMEVAL in there for the girlies who know:

SCE_PS_DEFAULT                 (0)
SCE_PS_COMMENT                 (1)
SCE_PS_DSC_COMMENT             (2)
SCE_PS_DSC_VALUE               (3)
SCE_PS_NUMBER                  (4)
SCE_PS_NAME                    (5)
SCE_PS_KEYWORD                 (6)
SCE_PS_LITERAL                 (7)
SCE_PS_IMMEVAL                 (8)
SCE_PS_PAREN_ARRAY             (9)
SCE_PS_PAREN_DICT              (10)
SCE_PS_PAREN_PROC              (11)
SCE_PS_TEXT                    (12)
SCE_PS_HEXSTRING               (13)
SCE_PS_BASE85STRING            (14)
SCE_PS_BADSTRINGCHAR           (15)

πŸ’– Lexical states for SCLEX_NSIS

NSIS installer script states, and look β€” left quote, right quote, double quote, all separated. Organized:

SCE_NSIS_DEFAULT               (0)
SCE_NSIS_COMMENT               (1)
SCE_NSIS_STRINGDQ              (2)
SCE_NSIS_STRINGLQ              (3)
SCE_NSIS_STRINGRQ              (4)
SCE_NSIS_FUNCTION              (5)
SCE_NSIS_VARIABLE              (6)
SCE_NSIS_LABEL                 (7)
SCE_NSIS_USERDEFINED           (8)
SCE_NSIS_SECTIONDEF            (9)
SCE_NSIS_SUBSECTIONDEF         (10)
SCE_NSIS_IFDEFINEDEF           (11)
SCE_NSIS_MACRODEF              (12)
SCE_NSIS_STRINGVAR             (13)
SCE_NSIS_NUMBER                (14)
SCE_NSIS_SECTIONGROUP          (15)
SCE_NSIS_PAGEEX                (16)
SCE_NSIS_FUNCTIONDEF           (17)
SCE_NSIS_COMMENTBOX            (18)

πŸ”₯ Lexical states for SCLEX_MMIXAL

MMIXAL, the truly niche one, and it's got the whole opcode lifecycle spelled out β€” pre, valid, unknown, post. Obsessed:

SCE_MMIXAL_LEADWS              (0)
SCE_MMIXAL_COMMENT             (1)
SCE_MMIXAL_LABEL               (2)
SCE_MMIXAL_OPCODE              (3)
SCE_MMIXAL_OPCODE_PRE          (4)
SCE_MMIXAL_OPCODE_VALID        (5)
SCE_MMIXAL_OPCODE_UNKNOWN      (6)
SCE_MMIXAL_OPCODE_POST         (7)
SCE_MMIXAL_OPERANDS            (8)
SCE_MMIXAL_NUMBER              (9)
SCE_MMIXAL_REF                 (10)
SCE_MMIXAL_CHAR                (11)
SCE_MMIXAL_STRING              (12)
SCE_MMIXAL_REGISTER            (13)
SCE_MMIXAL_HEX                 (14)
SCE_MMIXAL_OPERATOR            (15)
SCE_MMIXAL_SYMBOL              (16)
SCE_MMIXAL_INCLUDE             (17)

πŸŽ€ Lexical states for SCLEX_CLW

Clarion my beloved, and pls look at SCE_CLW_BUILTIN_PROCEDURES_FUNCTION β€” the longest constant name in the whole lineup, iconic:

SCE_CLW_DEFAULT                (0)
SCE_CLW_LABEL                  (1)
SCE_CLW_COMMENT                (2)
SCE_CLW_STRING                 (3)
SCE_CLW_USER_IDENTIFIER        (4)
SCE_CLW_INTEGER_CONSTANT       (5)
SCE_CLW_REAL_CONSTANT          (6)
SCE_CLW_PICTURE_STRING         (7)
SCE_CLW_KEYWORD                (8)
SCE_CLW_COMPILER_DIRECTIVE     (9)
SCE_CLW_RUNTIME_EXPRESSIONS    (10)
SCE_CLW_BUILTIN_PROCEDURES_FUNCTION (11)
SCE_CLW_STRUCTURE_DATA_TYPE    (12)
SCE_CLW_ATTRIBUTE              (13)
SCE_CLW_STANDARD_EQUATE        (14)
SCE_CLW_ERROR                  (15)
SCE_CLW_DEPRECATED             (16)

πŸ¦‹ Lexical states for SCLEX_LOT

And we're closing this batch out with Lout's sibling, LOT β€” only seven states, lowkey the chillest one here:

SCE_LOT_DEFAULT                (0)
SCE_LOT_HEADER                 (1)
SCE_LOT_BREAK                  (2)
SCE_LOT_SET                    (3)
SCE_LOT_PASS                   (4)
SCE_LOT_FAIL                   (5)
SCE_LOT_ABORT                  (6)

And yes bestie, there are still more coming β€” don't close the tab πŸ’…

Lexical states for SCLEX_YAML

YAML time πŸ’› these are the little color-codes your editor paints on your indentation crimes:

  • SCE_YAML_DEFAULT (0)
  • SCE_YAML_COMMENT (1)
  • SCE_YAML_IDENTIFIER (2)
  • SCE_YAML_KEYWORD (3)
  • SCE_YAML_NUMBER (4)
  • SCE_YAML_REFERENCE (5)
  • SCE_YAML_DOCUMENT (6)
  • SCE_YAML_TEXT (7)
  • SCE_YAML_ERROR (8)
  • SCE_YAML_OPERATOR (9)

Lexical states for SCLEX_TEX

LaTeX besties, this one's for you πŸŽ€:

  • SCE_TEX_DEFAULT (0)
  • SCE_TEX_SPECIAL (1)
  • SCE_TEX_GROUP (2)
  • SCE_TEX_SYMBOL (3)
  • SCE_TEX_COMMAND (4)
  • SCE_TEX_TEXT (5)

And MetaPost, chilling right underneath with its own little set β€” note it shares the low numbers with TeX, so context is literally everything here:

  • SCE_METAPOST_DEFAULT (0)
  • SCE_METAPOST_SPECIAL (1)
  • SCE_METAPOST_GROUP (2)
  • SCE_METAPOST_SYMBOL (3)
  • SCE_METAPOST_COMMAND (4)
  • SCE_METAPOST_TEXT (5)
  • SCE_METAPOST_EXTRA (6)

Lexical states for SCLEX_ERLANG

Erlang nation rise 🫢 this list is long and she earned it:

  • SCE_ERLANG_DEFAULT (0)
  • SCE_ERLANG_COMMENT (1)
  • SCE_ERLANG_VARIABLE (2)
  • SCE_ERLANG_NUMBER (3)
  • SCE_ERLANG_KEYWORD (4)
  • SCE_ERLANG_STRING (5)
  • SCE_ERLANG_OPERATOR (6)
  • SCE_ERLANG_ATOM (7)
  • SCE_ERLANG_FUNCTION_NAME (8)
  • SCE_ERLANG_CHARACTER (9)
  • SCE_ERLANG_MACRO (10)
  • SCE_ERLANG_RECORD (11)
  • SCE_ERLANG_PREPROC (12)
  • SCE_ERLANG_NODE_NAME (13)
  • SCE_ERLANG_COMMENT_FUNCTION (14)
  • SCE_ERLANG_COMMENT_MODULE (15)
  • SCE_ERLANG_COMMENT_DOC (16)
  • SCE_ERLANG_COMMENT_DOC_MACRO (17)
  • SCE_ERLANG_ATOM_QUOTED (18)
  • SCE_ERLANG_MACRO_QUOTED (19)
  • SCE_ERLANG_RECORD_QUOTED (20)
  • SCE_ERLANG_NODE_NAME_QUOTED (21)
  • SCE_ERLANG_BIFS (22)
  • SCE_ERLANG_MODULES (23)
  • SCE_ERLANG_MODULES_ATT (24)
  • SCE_ERLANG_UNKNOWN (31)
Heads up bestie πŸ‘€ the Erlang list jumps straight from (24) to (31). That gap is not me skipping lines β€” that's literally what the page says, so keep it exactly like that.

Lexical states for SCLEX_MSSQL

SQL server energy, very corporate, very slay πŸ’Ό:

  • SCE_MSSQL_DEFAULT (0)
  • SCE_MSSQL_COMMENT (1)
  • SCE_MSSQL_LINE_COMMENT (2)
  • SCE_MSSQL_NUMBER (3)
  • SCE_MSSQL_STRING (4)
  • SCE_MSSQL_OPERATOR (5)
  • SCE_MSSQL_IDENTIFIER (6)
  • SCE_MSSQL_VARIABLE (7)
  • SCE_MSSQL_COLUMN_NAME (8)
  • SCE_MSSQL_STATEMENT (9)
  • SCE_MSSQL_DATATYPE (10)
  • SCE_MSSQL_SYSTABLE (11)
  • SCE_MSSQL_GLOBAL_VARIABLE (12)
  • SCE_MSSQL_FUNCTION (13)
  • SCE_MSSQL_STORED_PROCEDURE (14)
  • SCE_MSSQL_DEFAULT_PREF_DATATYPE (15)
  • SCE_MSSQL_COLUMN_NAME_2 (16)
Two column-name constants, SCE_MSSQL_COLUMN_NAME and SCE_MSSQL_COLUMN_NAME_2. Yeah. It's giving "we fixed it later" and honestly? Iconic.

Lexical states for SCLEX_VERILOG

Hardware girlies, assemble ⚑:

  • SCE_V_DEFAULT (0)
  • SCE_V_COMMENT (1)
  • SCE_V_COMMENTLINE (2)
  • SCE_V_COMMENTLINEBANG (3)
  • SCE_V_NUMBER (4)
  • SCE_V_WORD (5)
  • SCE_V_STRING (6)
  • SCE_V_WORD2 (7)
  • SCE_V_WORD3 (8)
  • SCE_V_PREPROCESSOR (9)
  • SCE_V_OPERATOR (10)
  • SCE_V_IDENTIFIER (11)
  • SCE_V_STRINGEOL (12)
  • SCE_V_USER (19)
Again with the jumps β€” after (12) we skip to (19) for SCE_V_USER. Copy it as-is, no cap πŸ’…

Lexical states for SCLEX_KIX

The KiXtart moment ✨:

  • SCE_KIX_DEFAULT (0)
  • SCE_KIX_COMMENT (1)
  • SCE_KIX_STRING1 (2)
  • SCE_KIX_STRING2 (3)
  • SCE_KIX_NUMBER (4)
  • SCE_KIX_VAR (5)
  • SCE_KIX_MACRO (6)
  • SCE_KIX_KEYWORD (7)
  • SCE_KIX_FUNCTIONS (8)
  • SCE_KIX_OPERATOR (9)
  • SCE_KIX_IDENTIFIER (31)
Yup β€” SCE_KIX_IDENTIFIER really is (31). The gap is real and it's staying 🌸

Lexical states for SCLEX_GUI4CLI

AutoIt-adjacent automation vibes πŸ€–:

  • SCE_GC_DEFAULT (0)
  • SCE_GC_COMMENTLINE (1)
  • SCE_GC_COMMENTBLOCK (2)
  • SCE_GC_GLOBAL (3)
  • SCE_GC_EVENT (4)
  • SCE_GC_ATTRIBUTE (5)
  • SCE_GC_CONTROL (6)
  • SCE_GC_COMMAND (7)
  • SCE_GC_STRING (8)
  • SCE_GC_OPERATOR (9)

Lexical states for SCLEX_SPECMAN

Verification besties, this one's lowkey a whole personality πŸ¦‹:

  • SCE_SN_DEFAULT (0)
  • SCE_SN_CODE (1)
  • SCE_SN_COMMENTLINE (2)
  • SCE_SN_COMMENTLINEBANG (3)
  • SCE_SN_NUMBER (4)
  • SCE_SN_WORD (5)
  • SCE_SN_STRING (6)
  • SCE_SN_WORD2 (7)
  • SCE_SN_WORD3 (8)
  • SCE_SN_PREPROCESSOR (9)
  • SCE_SN_OPERATOR (10)
  • SCE_SN_IDENTIFIER (11)
  • SCE_SN_STRINGEOL (12)
  • SCE_SN_REGEXTAG (13)
  • SCE_SN_SIGNAL (14)
  • SCE_SN_USER (19)
Another (19) landing spot for the user constant β€” same deal as Verilog, it's just like that πŸ’€

Lexical states for SCLEX_AU3

AutoIt3 girlies rise πŸŽ€ β€” and yes, she's stacked:

  • SCE_AU3_DEFAULT (0)
  • SCE_AU3_COMMENT (1)
  • SCE_AU3_COMMENTBLOCK (2)
  • SCE_AU3_NUMBER (3)
  • SCE_AU3_FUNCTION (4)
  • SCE_AU3_KEYWORD (5)
  • SCE_AU3_MACRO (6)
  • SCE_AU3_STRING (7)
  • SCE_AU3_OPERATOR (8)
  • SCE_AU3_VARIABLE (9)
  • SCE_AU3_SENT (10)
  • SCE_AU3_PREPROCESSOR (11)
  • SCE_AU3_SPECIAL (12)
  • SCE_AU3_EXPAND (13)
  • SCE_AU3_COMOBJ (14)
  • SCE_AU3_UDF (15)

Lexical states for SCLEX_APDL

ANSYS parameter language, very niche, very valid πŸ‘‘:

  • SCE_APDL_DEFAULT (0)
  • SCE_APDL_COMMENT (1)
  • SCE_APDL_COMMENTBLOCK (2)
  • SCE_APDL_NUMBER (3)
  • SCE_APDL_STRING (4)
  • SCE_APDL_OPERATOR (5)
  • SCE_APDL_WORD (6)
  • SCE_APDL_PROCESSOR (7)
  • SCE_APDL_COMMAND (8)
  • SCE_APDL_SLASHCOMMAND (9)
  • SCE_APDL_STARCOMMAND (10)
  • SCE_APDL_ARGUMENT (11)
  • SCE_APDL_FUNCTION (12)

Lexical states for SCLEX_BASH

Terminal besties I know you've been waiting for this one πŸ’…πŸš:

  • SCE_SH_DEFAULT (0)
  • SCE_SH_ERROR (1)
  • SCE_SH_COMMENTLINE (2)
  • SCE_SH_NUMBER (3)
  • SCE_SH_WORD (4)
  • SCE_SH_STRING (5)
  • SCE_SH_CHARACTER (6)
  • SCE_SH_OPERATOR (7)
  • SCE_SH_IDENTIFIER (8)
  • SCE_SH_SCALAR (9)
  • SCE_SH_PARAM (10)
  • SCE_SH_BACKTICKS (11)
  • SCE_SH_HERE_DELIM (12)
  • SCE_SH_HERE_Q (13)
Note these are all shaped SCE_SH_*, not SCE_BASH_*. That's the spelling, periodt 🫢

Lexical states for SCLEX_ASN1

Certificate nerd corner, come get your DER 🧚:

  • SCE_ASN1_DEFAULT (0)
  • SCE_ASN1_COMMENT (1)
  • SCE_ASN1_IDENTIFIER (2)
  • SCE_ASN1_STRING (3)
  • SCE_ASN1_OID (4)
  • SCE_ASN1_SCALAR (5)
  • SCE_ASN1_KEYWORD (6)
  • SCE_ASN1_ATTRIBUTE (7)
  • SCE_ASN1_DESCRIPTOR (8)
  • SCE_ASN1_TYPE (9)
  • SCE_ASN1_OPERATOR (10)

Lexical states for SCLEX_VHDL

FPGA besties, this one's loaded ⚑🫢:

  • SCE_VHDL_DEFAULT (0)
  • SCE_VHDL_COMMENT** (1)
  • SCE_VHDL_COMMENTLINEBANG (2)
  • SCE_VHDL_NUMBER (3)
  • SCE_VHDL_STRING (4)
  • SCE_VHDL_OPERATOR (5)
  • SCE_VHDL_IDENTIFIER (6)
  • SCE_VHDL_STRINGEOL (7)
  • SCE_VHDL_KEYWORD (8)
  • SCE_VHDL_STDOPERATOR (9)
  • SCE_VHDL_ATTRIBUTE (10)
  • SCE_VHDL_STDFUNCTION (11)
  • SCE_VHDL_STDPACKAGE (12)
  • SCE_VHDL_STDTYPE (13)
  • SCE_VHDL_USERWORD (14)
Wait β€” SCE_VHDL_COMMENT is (1), and SCE_VHDL_COMMENTLINEBANG is (2). Yes bestie, the plain comment comes first here. Don't reorder, don't "fix" it 😭

Lexical states for SCLEX_CAML

OCaml but make it a ~vibe~ πŸͺπŸ’œ:

  • SCE_CAML_DEFAULT (0)
  • SCE_CAML_IDENTIFIER (1)
  • SCE_CAML_TAGNAME (2)
  • SCE_CAML_KEYWORD (3)
  • SCE_CAML_KEYWORD2 (4)
  • SCE_CAML_KEYWORD3 (5)
  • SCE_CAML_LINENUM (6)
  • SCE_CAML_OPERATOR (7)
  • SCE_CAML_NUMBER (8)
  • SCE_CAML_CHAR (9)
  • SCE_CAML_WHITE (10)
  • SCE_CAML_STRING (11)
  • SCE_CAML_COMMENT (12)
  • SCE_CAML_COMMENT1 (13)
  • SCE_CAML_COMMENT2 (14)
  • SCE_CAML_COMMENT3 (15)
Four comment constants. SCE_CAML_COMMENT, then COMMENT1, COMMENT2, COMMENT3. It's giving nested-comment lore and we love that for it ✨

Lexical states for SCLEX_HASKELL

Pure functional besties, the monad girlies, THIS is your moment πŸ§šβœ¨πŸ‘:

  • SCE_HA_DEFAULT (0)
  • SCE_HA_IDENTIFIER (1)
  • SCE_HA_KEYWORD (2)
  • SCE_HA_NUMBER (3)
  • SCE_HA_STRING (4)
  • SCE_HA_CHARACTER (5)
  • SCE_HA_CLASS (6)
  • SCE_HA_MODULE (7)
  • SCE_HA_CAPITAL (8)
  • SCE_HA_DATA (9)
  • SCE_HA_IMPORT (10)
  • SCE_HA_OPERATOR (11)
  • SCE_HA_INSTANCE (12)
  • SCE_HA_COMMENTLINE (13)
  • SCE_HA_COMMENTBLOCK (14)
  • SCE_HA_COMMENTBLOCK2 (15)
  • SCE_HA_COMMENTBLOCK3 (16)
Three block-comment constants β€” SCE_HA_COMMENTBLOCK, SCE_HA_COMMENTBLOCK2 and SCE_HA_COMMENTBLOCK3. Nested block comments said "let me be three different things" and honestly? Respect 🀝

Lexical states of SCLEX_TADS3

Heads up bestie 🫢 the text literally shifts from "Lexical states for" to "Lexical states of" right here, and yes, I'm keeping that exactly as-is. That's where this part hands off β€” more constants coming your way next πŸ’–
  • SCE_T3_DEFAULT β€” (0)
  • SCE_T3_X_DEFAULT β€” (1)
  • SCE_T3_PREPROCESSOR β€” (2)
  • SCE_T3_BLOCK_COMMENT β€” (3)
  • SCE_T3_LINE_COMMENT β€” (4)
  • SCE_T3_OPERATOR β€” (5)
  • SCE_T3_KEYWORD β€” (6)
  • SCE_T3_NUMBER β€” (7)
  • SCE_T3_IDENTIFIER β€” (8)
  • SCE_T3_S_STRING β€” (9)
  • SCE_T3_D_STRING β€” (10)
  • SCE_T3_X_STRING β€” (11)
  • SCE_T3_LIB_DIRECTIVE β€” (12)
  • SCE_T3_MSG_PARAM β€” (13)
  • SCE_T3_HTML_TAG β€” (14)
  • SCE_T3_HTML_DEFAULT β€” (15)
  • SCE_T3_HTML_STRING β€” (16)
  • SCE_T3_USER1 β€” (17)
  • SCE_T3_USER2 β€” (18)
  • SCE_T3_USER3 β€” (19)
  • SCE_T3_BRACE β€” (20)

πŸ¦‹ Lexical states for SCLEX_REBOL

okay REBOL bestie, you got twenty-nine of these, the most in this whole stretch. drink some water πŸ’§

  • SCE_REBOL_DEFAULT β€” (0)
  • SCE_REBOL_COMMENTLINE β€” (1)
  • SCE_REBOL_COMMENTBLOCK β€” (2)
  • SCE_REBOL_PREFACE β€” (3)
  • SCE_REBOL_OPERATOR β€” (4)
  • SCE_REBOL_CHARACTER β€” (5)
  • SCE_REBOL_QUOTEDSTRING β€” (6)
  • SCE_REBOL_BRACEDSTRING β€” (7)
  • SCE_REBOL_NUMBER β€” (8)
  • SCE_REBOL_PAIR β€” (9)
  • SCE_REBOL_TUPLE β€” (10)
  • SCE_REBOL_BINARY β€” (11)
  • SCE_REBOL_MONEY β€” (12)
  • SCE_REBOL_ISSUE β€” (13)
  • SCE_REBOL_TAG β€” (14)
  • SCE_REBOL_FILE β€” (15)
  • SCE_REBOL_EMAIL β€” (16)
  • SCE_REBOL_URL β€” (17)
  • SCE_REBOL_DATE β€” (18)
  • SCE_REBOL_TIME β€” (19)
  • SCE_REBOL_IDENTIFIER β€” (20)
  • SCE_REBOL_WORD β€” (21)
  • SCE_REBOL_WORD2 β€” (22)
  • SCE_REBOL_WORD3 β€” (23)
  • SCE_REBOL_WORD4 β€” (24)
  • SCE_REBOL_WORD5 β€” (25)
  • SCE_REBOL_WORD6 β€” (26)
  • SCE_REBOL_WORD7 β€” (27)
  • SCE_REBOL_WORD8 β€” (28)

✨ Lexical states for SCLEX_SQL

SQL girlies rise 🌸 and yes, before you ask β€” the numbers below literally jump from 11 straight to 13, then 13 to 15, and 15 to 16. that's not me being messy, that's just how it is. copy them exactly, no cap. πŸ’…

  • SCE_SQL_DEFAULT β€” (0)
  • SCE_SQL_COMMENT β€” (1)
  • SCE_SQL_COMMENTLINE β€” (2)
  • SCE_SQL_COMMENTDOC β€” (3)
  • SCE_SQL_NUMBER β€” (4)
  • SCE_SQL_WORD β€” (5)
  • SCE_SQL_STRING β€” (6)
  • SCE_SQL_CHARACTER β€” (7)
  • SCE_SQL_SQLPLUS β€” (8)
  • SCE_SQL_SQLPLUS_PROMPT β€” (9)
  • SCE_SQL_OPERATOR β€” (10)
  • SCE_SQL_IDENTIFIER β€” (11)
  • SCE_SQL_SQLPLUS_COMMENT β€” (13)
  • SCE_SQL_COMMENTLINEDOC β€” (15)
  • SCE_SQL_WORD2 β€” (16)
  • SCE_SQL_COMMENTDOCKEYWORD β€” (17)
  • SCE_SQL_COMMENTDOCKEYWORDERROR β€” (18)
  • SCE_SQL_USER1 β€” (19)
  • SCE_SQL_USER2 β€” (20)
  • SCE_SQL_USER3 β€” (21)
  • SCE_SQL_USER4 β€” (22)
  • SCE_SQL_QUOTEDIDENTIFIER β€” (23)

πŸŽ€ Lexical states for SCLEX_SMALLTALK

smalltalk? more like small-but-mighty talk 🫢 seventeen lil states, tiny and perfect.

  • SCE_ST_DEFAULT β€” (0)
  • SCE_ST_STRING β€” (1)
  • SCE_ST_NUMBER β€” (2)
  • SCE_ST_COMMENT β€” (3)
  • SCE_ST_SYMBOL β€” (4)
  • SCE_ST_BINARY β€” (5)
  • SCE_ST_BOOL β€” (6)
  • SCE_ST_SELF β€” (7)
  • SCE_ST_SUPER β€” (8)
  • SCE_ST_NIL β€” (9)
  • SCE_ST_GLOBAL β€” (10)
  • SCE_ST_RETURN β€” (11)
  • SCE_ST_SPECIAL β€” (12)
  • SCE_ST_KWSEND β€” (13)
  • SCE_ST_ASSIGN β€” (14)
  • SCE_ST_CHARACTER β€” (15)
  • SCE_ST_SPEC_SEL β€” (16)

🌈 Lexical states for SCLEX_FLAGSHIP (clipper)

okay this one ate πŸ”₯ β€” thirty-two states, and it's giving two whole families: the regular SCE_FS_* ones from 0 to 20, and then a whole second set with a _C suffix from 21 to 31. lowkey obsessed with the range.

  • SCE_FS_DEFAULT β€” (0)
  • SCE_FS_COMMENT β€” (1)
  • SCE_FS_COMMENTLINE β€” (2)
  • SCE_FS_COMMENTDOC β€” (3)
  • SCE_FS_COMMENTLINEDOC β€” (4)
  • SCE_FS_COMMENTDOCKEYWORD β€” (5)
  • SCE_FS_COMMENTDOCKEYWORDERROR β€” (6)
  • SCE_FS_KEYWORD β€” (7)
  • SCE_FS_KEYWORD2 β€” (8)
  • SCE_FS_KEYWORD3 β€” (9)
  • SCE_FS_KEYWORD4 β€” (10)
  • SCE_FS_NUMBER β€” (11)
  • SCE_FS_STRING β€” (12)
  • SCE_FS_PREPROCESSOR β€” (13)
  • SCE_FS_OPERATOR β€” (14)
  • SCE_FS_IDENTIFIER β€” (15)
  • SCE_FS_DATE β€” (16)
  • SCE_FS_STRINGEOL β€” (17)
  • SCE_FS_CONSTANT β€” (18)
  • SCE_FS_WORDOPERATOR β€” (19)
  • SCE_FS_DISABLEDCODE β€” (20)
  • SCE_FS_DEFAULT_C β€” (21)
  • SCE_FS_COMMENTDOC_C β€” (22)
  • SCE_FS_COMMENTLINEDOC_C β€” (23)
  • SCE_FS_KEYWORD_C β€” (24)
  • SCE_FS_KEYWORD2_C β€” (25)
  • SCE_FS_NUMBER_C β€” (26)
  • SCE_FS_STRING_C β€” (27)
  • SCE_FS_PREPROCESSOR_C β€” (28)
  • SCE_FS_OPERATOR_C β€” (29)
  • SCE_FS_IDENTIFIER_C β€” (30)
  • SCE_FS_STRINGEOL_C β€” (31)

🧚 Lexical states for SCLEX_CSOUND

audio besties where you at 🎧 sixteen states, all of them vibing in perfect (0) to (15) order. the way it just goes DEFAULT β†’ COMMENT β†’ NUMBER β†’ OPERATOR β†’ … β†’ STRINGEOL, a clean little run. slay.

  • SCE_CSOUND_DEFAULT β€” (0)
  • SCE_CSOUND_COMMENT β€” (1)
  • SCE_CSOUND_NUMBER β€” (2)
  • SCE_CSOUND_OPERATOR β€” (3)
  • SCE_CSOUND_INSTR β€” (4)
  • SCE_CSOUND_IDENTIFIER β€” (5)
  • SCE_CSOUND_OPCODE β€” (6)
  • SCE_CSOUND_HEADERSTMT β€” (7)
  • SCE_CSOUND_USERKEYWORD β€” (8)
  • SCE_CSOUND_COMMENTBLOCK β€” (9)
  • SCE_CSOUND_PARAM β€” (10)
  • SCE_CSOUND_ARATE_VAR β€” (11)
  • SCE_CSOUND_KRATE_VAR β€” (12)
  • SCE_CSOUND_IRATE_VAR β€” (13)
  • SCE_CSOUND_GLOBAL_VAR β€” (14)
  • SCE_CSOUND_STRINGEOL β€” (15)

⭐ Lexical states for SCLEX_INNOSETUP

installer girlies, this is your moment πŸ› οΈ thirteen states, (0) to (12), no gaps, no drama. iconic behavior honestly.

  • SCE_INNO_DEFAULT β€” (0)
  • SCE_INNO_COMMENT β€” (1)
  • SCE_INNO_KEYWORD β€” (2)
  • SCE_INNO_PARAMETER β€” (3)
  • SCE_INNO_SECTION β€” (4)
  • SCE_INNO_PREPROC β€” (5)
  • SCE_INNO_INLINE_EXPANSION β€” (6)
  • SCE_INNO_COMMENT_PASCAL β€” (7)
  • SCE_INNO_KEYWORD_PASCAL β€” (8)
  • SCE_INNO_KEYWORD_USER β€” (9)
  • SCE_INNO_STRING_DOUBLE β€” (10)
  • SCE_INNO_STRING_SINGLE β€” (11)
  • SCE_INNO_IDENTIFIER β€” (12)

πŸ’œ Lexical states for SCLEX_OPAL

NOT the jump from (8) to (32) 😭 like bestie where did the rest go. it's fine, it's fine, that's just the number. copy it as-is, 32, no fixing πŸ’…

  • SCE_OPAL_SPACE β€” (0)
  • SCE_OPAL_COMMENT_BLOCK β€” (1)
  • SCE_OPAL_COMMENT_LINE β€” (2)
  • SCE_OPAL_INTEGER β€” (3)
  • SCE_OPAL_KEYWORD β€” (4)
  • SCE_OPAL_SORT β€” (5)
  • SCE_OPAL_STRING β€” (6)
  • SCE_OPAL_PAR β€” (7)
  • SCE_OPAL_BOOL_CONST β€” (8)
  • SCE_OPAL_DEFAULT β€” (32)

πŸ”₯ Lexical states for SCLEX_SPICE

nine states, (0) through (8), and the way SCE_SPICE_DEFAULT sits at (0) while the rest count up so politely β€” ate that. πŸ“

  • SCE_SPICE_DEFAULT β€” (0)
  • SCE_SPICE_IDENTIFIER β€” (1)
  • SCE_SPICE_KEYWORD β€” (2)
  • SCE_SPICE_KEYWORD2 β€” (3)
  • SCE_SPICE_KEYWORD3 β€” (4)
  • SCE_SPICE_NUMBER β€” (5)
  • SCE_SPICE_DELIMITER β€” (6)
  • SCE_SPICE_VALUE β€” (7)
  • SCE_SPICE_COMMENTLINE β€” (8)

πŸ’– Lexical states for SCLEX_CMAKE

build-system besties!! πŸ—οΈ fifteen states, (0) to (14), and honestly the names here are so descriptive it's giving main character energy. STRINGDQ, STRINGLQ, STRINGRQ β€” left quote, right quote, double quote, we see you πŸ‘‘

  • SCE_CMAKE_DEFAULT β€” (0)
  • SCE_CMAKE_COMMENT β€” (1)
  • SCE_CMAKE_STRINGDQ β€” (2)
  • SCE_CMAKE_STRINGLQ β€” (3)
  • SCE_CMAKE_STRINGRQ β€” (4)
  • SCE_CMAKE_COMMANDS β€” (5)
  • SCE_CMAKE_PARAMETERS β€” (6)
  • SCE_CMAKE_VARIABLE β€” (7)
  • SCE_CMAKE_USERDEFINED β€” (8)
  • SCE_CMAKE_WHILEDEF β€” (9)
  • SCE_CMAKE_FOREACHDEF β€” (10)
  • SCE_CMAKE_IFDEFINEDEF β€” (11)
  • SCE_CMAKE_MACRODEF β€” (12)
  • SCE_CMAKE_STRINGVAR β€” (13)
  • SCE_CMAKE_NUMBER β€” (14)

πŸ¦„ Lexical states for SCLEX_GAP

math girlies, come get your states πŸ“ twelve of them, (0) to (11), ending on SCE_GAP_STRINGEOL which lowkey is a beautiful way to wrap a list. ✨

  • SCE_GAP_DEFAULT β€” (0)
  • SCE_GAP_IDENTIFIER β€” (1)
  • SCE_GAP_KEYWORD β€” (2)
  • SCE_GAP_KEYWORD2 β€” (3)
  • SCE_GAP_KEYWORD3 β€” (4)
  • SCE_GAP_KEYWORD4 β€” (5)
  • SCE_GAP_STRING β€” (6)
  • SCE_GAP_CHAR β€” (7)
  • SCE_GAP_OPERATOR β€” (8)
  • SCE_GAP_COMMENT β€” (9)
  • SCE_GAP_NUMBER β€” (10)
  • SCE_GAP_STRINGEOL β€” (11)

🩷 Lexical state for SCLEX_PLM

note the singular, bestie β€” "state", not "states" πŸ‘€ this one's just a tiny guy. eight of them, (0) to (7), and yes CONTROL really is a state and it's kind of a vibe. πŸ’€

  • SCE_PLM_DEFAULT β€” (0)
  • SCE_PLM_COMMENT β€” (1)
  • SCE_PLM_STRING β€” (2)
  • SCE_PLM_NUMBER β€” (3)
  • SCE_PLM_IDENTIFIER β€” (4)
  • SCE_PLM_OPERATOR β€” (5)
  • SCE_PLM_CONTROL β€” (6)
  • SCE_PLM_KEYWORD β€” (7)

🌈 Lexical state for SCLEX_PROGRESS

  • SCE_4GL_DEFAULT β€” (0)
  • SCE_4GL_NUMBER β€” (1)
  • SCE_4GL_WORD β€” (2)
  • SCE_4GL_STRING β€” (3)
  • SCE_4GL_CHARACTER β€” (4)
  • SCE_4GL_PREPROCESSOR β€” (5)
  • SCE_4GL_OPERATOR β€” (6)
  • SCE_4GL_IDENTIFIER β€” (7)
  • SCE_4GL_BLOCK β€” (8)
  • SCE_4GL_END β€” (9)
  • SCE_4GL_COMMENT1 β€” (10)
  • SCE_4GL_COMMENT2 β€” (11)
  • SCE_4GL_COMMENT3 β€” (12)
  • SCE_4GL_COMMENT4 β€” (13)
  • SCE_4GL_COMMENT5 β€” (14)
  • SCE_4GL_COMMENT6 β€” (15)
  • SCE_4GL_DEFAULT_ β€” (16)
  • SCE_4GL_NUMBER_ β€” (17)
  • SCE_4GL_WORD_ β€” (18)
  • SCE_4GL_STRING_ β€” (19)
  • SCE_4GL_CHARACTER_ β€” (20)
  • SCE_4GL_PREPROCESSOR_ β€” (21)
  • SCE_4GL_OPERATOR_ β€” (22)
  • SCE_4GL_IDENTIFIER_ β€” (23)
  • SCE_4GL_BLOCK_ β€” (24)
  • SCE_4GL_END_ β€” (25)
  • SCE_4GL_COMMENT1_ β€” (26)
  • SCE_4GL_COMMENT2_ β€” (27)
  • SCE_4GL_COMMENT3_ β€” (28)
  • SCE_4GL_COMMENT4_ β€” (29)
  • SCE_4GL_COMMENT5_ β€” (30)
  • SCE_4GL_COMMENT6_ β€” (31)

so like, the whole first half and then the same set all over again but with a lil underscore at the end πŸ’… that's the bit, that's the plot twist


πŸ¦‹ Lexical states for SCLEX_ABAQUS

  • SCE_ABAQUS_DEFAULT β€” (0)
  • SCE_ABAQUS_COMMENT β€” (1)
  • SCE_ABAQUS_COMMENTBLOCK β€” (2)
  • SCE_ABAQUS_NUMBER β€” (3)
  • SCE_ABAQUS_STRING β€” (4)
  • SCE_ABAQUS_OPERATOR β€” (5)
  • SCE_ABAQUS_WORD β€” (6)
  • SCE_ABAQUS_PROCESSOR β€” (7)
  • SCE_ABAQUS_COMMAND β€” (8)
  • SCE_ABAQUS_SLASHCOMMAND β€” (9)
  • SCE_ABAQUS_STARCOMMAND β€” (10)
  • SCE_ABAQUS_ARGUMENT β€” (11)
  • SCE_ABAQUS_FUNCTION β€” (12)

🌸 Lexical states for SCLEX_ASYMPTOTE

  • SCE_ASY_DEFAULT β€” (0)
  • SCE_ASY_COMMENT β€” (1)
  • SCE_ASY_COMMENTLINE β€” (2)
  • SCE_ASY_NUMBER β€” (3)
  • SCE_ASY_WORD β€” (4)
  • SCE_ASY_STRING β€” (5)
  • SCE_ASY_CHARACTER β€” (6)
  • SCE_ASY_OPERATOR β€” (7)
  • SCE_ASY_IDENTIFIER β€” (8)
  • SCE_ASY_STRINGEOL β€” (9)
  • SCE_ASY_COMMENTLINEDOC β€” (10)
  • SCE_ASY_WORD2 β€” (11)

✨ Lexical states for SCLEX_R

  • SCE_R_DEFAULT β€” (0)
  • SCE_R_COMMENT β€” (1)
  • SCE_R_KWORD β€” (2)
  • SCE_R_BASEKWORD β€” (3)
  • SCE_R_OTHERKWORD β€” (4)
  • SCE_R_NUMBER β€” (5)
  • SCE_R_STRING β€” (6)
  • SCE_R_STRING2 β€” (7)
  • SCE_R_OPERATOR β€” (8)
  • SCE_R_IDENTIFIER β€” (9)
  • SCE_R_INFIX β€” (10)
  • SCE_R_INFIXEOL β€” (11)

πŸ’œ Lexical state for SCLEX_MAGIKSF

okay bestie heads up, this one is not in cute ascending order, and that's just how it is, don't come for me πŸ™ˆ

  • SCE_MAGIK_DEFAULT β€” (0)
  • SCE_MAGIK_COMMENT β€” (1)
  • SCE_MAGIK_HYPER_COMMENT β€” (16)
  • SCE_MAGIK_STRING β€” (2)
  • SCE_MAGIK_CHARACTER β€” (3)
  • SCE_MAGIK_NUMBER β€” (4)
  • SCE_MAGIK_IDENTIFIER β€” (5)
  • SCE_MAGIK_OPERATOR β€” (6)
  • SCE_MAGIK_FLOW β€” (7)
  • SCE_MAGIK_CONTAINER β€” (8)
  • SCE_MAGIK_BRACKET_BLOCK β€” (9)
  • SCE_MAGIK_BRACE_BLOCK β€” (10)
  • SCE_MAGIK_SQBRACKET_BLOCK β€” (11)
  • SCE_MAGIK_UNKNOWN_KEYWORD β€” (12)
  • SCE_MAGIK_KEYWORD β€” (13)
  • SCE_MAGIK_PRAGMA β€” (14)
  • SCE_MAGIK_SYMBOL β€” (15)

πŸŽ€ Lexical state for SCLEX_POWERSHELL

  • SCE_POWERSHELL_DEFAULT β€” (0)
  • SCE_POWERSHELL_COMMENT β€” (1)
  • SCE_POWERSHELL_STRING β€” (2)
  • SCE_POWERSHELL_CHARACTER β€” (3)
  • SCE_POWERSHELL_NUMBER β€” (4)
  • SCE_POWERSHELL_VARIABLE β€” (5)
  • SCE_POWERSHELL_OPERATOR β€” (6)
  • SCE_POWERSHELL_IDENTIFIER β€” (7)
  • SCE_POWERSHELL_KEYWORD β€” (8)
  • SCE_POWERSHELL_CMDLET β€” (9)
  • SCE_POWERSHELL_ALIAS β€” (10)
  • SCE_POWERSHELL_FUNCTION β€” (11)
  • SCE_POWERSHELL_USER1 β€” (12)
  • SCE_POWERSHELL_COMMENTSTREAM β€” (13)

🧚 Lexical state for SCLEX_MYSQL

  • SCE_MYSQL_DEFAULT β€” (0)
  • SCE_MYSQL_COMMENT β€” (1)
  • SCE_MYSQL_COMMENTLINE β€” (2)
  • SCE_MYSQL_VARIABLE β€” (3)
  • SCE_MYSQL_SYSTEMVARIABLE β€” (4)
  • SCE_MYSQL_KNOWNSYSTEMVARIABLE β€” (5)
  • SCE_MYSQL_NUMBER β€” (6)
  • SCE_MYSQL_MAJORKEYWORD β€” (7)
  • SCE_MYSQL_KEYWORD β€” (8)
  • SCE_MYSQL_DATABASEOBJECT β€” (9)
  • SCE_MYSQL_PROCEDUREKEYWORD β€” (10)
  • SCE_MYSQL_STRING β€” (11)
  • SCE_MYSQL_SQSTRING β€” (12)
  • SCE_MYSQL_DQSTRING β€” (13)
  • SCE_MYSQL_OPERATOR β€” (14)
  • SCE_MYSQL_FUNCTION β€” (15)
  • SCE_MYSQL_IDENTIFIER β€” (16)
  • SCE_MYSQL_QUOTEDIDENTIFIER β€” (17)
  • SCE_MYSQL_USER1 β€” (18)
  • SCE_MYSQL_USER2 β€” (19)
  • SCE_MYSQL_USER3 β€” (20)
  • SCE_MYSQL_HIDDENCOMMAND β€” (21)

🌈 Lexical state for SCLEX_PO

  • SCE_PO_DEFAULT β€” (0)
  • SCE_PO_COMMENT β€” (1)
  • SCE_PO_MSGID β€” (2)
  • SCE_PO_MSGID_TEXT β€” (3)
  • SCE_PO_MSGSTR β€” (4)
  • SCE_PO_MSGSTR_TEXT β€” (5)
  • SCE_PO_MSGCTXT β€” (6)
  • SCE_PO_MSGCTXT_TEXT β€” (7)
  • SCE_PO_FUZZY β€” (8)

🫢 Lexical states for SCLEX_PASCAL

  • SCE_PAS_DEFAULT β€” (0)
  • SCE_PAS_IDENTIFIER β€” (1)
  • SCE_PAS_COMMENT β€” (2)
  • SCE_PAS_COMMENT2 β€” (3)
  • SCE_PAS_COMMENTLINE β€” (4)
  • SCE_PAS_PREPROCESSOR β€” (5)
  • SCE_PAS_PREPROCESSOR2 β€” (6)
  • SCE_PAS_NUMBER β€” (7)
  • SCE_PAS_HEXNUMBER β€” (8)
  • SCE_PAS_WORD β€” (9)
  • SCE_PAS_STRING β€” (10)
  • SCE_PAS_STRINGEOL β€” (11)
  • SCE_PAS_CHARACTER β€” (12)
  • SCE_PAS_OPERATOR β€” (13)
  • SCE_PAS_ASM β€” (14)

πŸ“ Lexical state for SCLEX_SORCUS

  • SCE_SORCUS_DEFAULT β€” (0)
  • SCE_SORCUS_COMMAND β€” (1)
  • SCE_SORCUS_PARAMETER β€” (2)
  • SCE_SORCUS_COMMENTLINE β€” (3)
  • SCE_SORCUS_STRING β€” (4)
  • SCE_SORCUS_STRINGEOL β€” (5)
  • SCE_SORCUS_IDENTIFIER β€” (6)
  • SCE_SORCUS_OPERATOR β€” (7)
  • SCE_SORCUS_NUMBER β€” (8)
  • SCE_SORCUS_CONSTANT β€” (9)

πŸ’… Lexical state for SCLEX_POWERPRO

  • SCE_POWERPRO_DEFAULT β€” (0)
  • SCE_POWERPRO_COMMENTBLOCK β€” (1)
  • SCE_POWERPRO_COMMENTLINE β€” (2)
  • SCE_POWERPRO_NUMBER β€” (3)
  • SCE_POWERPRO_WORD β€” (4)
  • SCE_POWERPRO_WORD2 β€” (5)
  • SCE_POWERPRO_WORD3 β€” (6)
  • SCE_POWERPRO_WORD4 β€” (7)
  • SCE_POWERPRO_DOUBLEQUOTEDSTRING β€” (8)
  • SCE_POWERPRO_SINGLEQUOTEDSTRING β€” (9)
  • SCE_POWERPRO_LINECONTINUE β€” (10)
  • SCE_POWERPRO_OPERATOR β€” (11)
  • SCE_POWERPRO_IDENTIFIER β€” (12)
  • SCE_POWERPRO_STRINGEOL β€” (13)
  • SCE_POWERPRO_VERBATIM β€” (14)
  • SCE_POWERPRO_ALTQUOTE β€” (15)
  • SCE_POWERPRO_FUNCTION β€” (16)

⭐ Lexical states for SCLEX_SML

bestie. SCE_SML_CHAR is (9) and the very next one jumps straight to (11). there is no (10). i'm not gonna explain it, i'm just the messenger πŸ˜­πŸ’€
  • SCE_SML_DEFAULT β€” (0)
  • SCE_SML_IDENTIFIER β€” (1)
  • SCE_SML_TAGNAME β€” (2)
  • SCE_SML_KEYWORD β€” (3)
  • SCE_SML_KEYWORD2 β€” (4)
  • SCE_SML_KEYWORD3 β€” (5)
  • SCE_SML_LINENUM β€” (6)
  • SCE_SML_OPERATOR β€” (7)
  • SCE_SML_NUMBER β€” (8)
  • SCE_SML_CHAR β€” (9)
  • SCE_SML_STRING β€” (11)
  • SCE_SML_COMMENT β€” (12)
  • SCE_SML_COMMENT1 β€” (13)
  • SCE_SML_COMMENT2 β€” (14)
  • SCE_SML_COMMENT3 β€” (15)

πŸŽ€ Lexical state for SCLEX_MARKDOWN

this one's for all of us writing docs at 2am, hi πŸ‘‘ the list is long and every single one is here, no skips

  • SCE_MARKDOWN_DEFAULT β€” (0)
  • SCE_MARKDOWN_LINE_BEGIN β€” (1)
  • SCE_MARKDOWN_STRONG1 β€” (2)
  • SCE_MARKDOWN_STRONG2 β€” (3)
  • SCE_MARKDOWN_EM1 β€” (4)
  • SCE_MARKDOWN_EM2 β€” (5)
  • SCE_MARKDOWN_HEADER1 β€” (6)
  • SCE_MARKDOWN_HEADER2 β€” (7)
  • SCE_MARKDOWN_HEADER3 β€” (8)
  • SCE_MARKDOWN_HEADER4 β€” (9)
  • SCE_MARKDOWN_HEADER5 β€” (10)
  • SCE_MARKDOWN_HEADER6 β€” (11)
  • SCE_MARKDOWN_PRECHAR β€” (12)
  • SCE_MARKDOWN_ULIST_ITEM β€” (13)
  • SCE_MARKDOWN_OLIST_ITEM β€” (14)
  • SCE_MARKDOWN_BLOCKQUOTE β€” (15)
  • SCE_MARKDOWN_STRIKEOUT β€” (16)
  • SCE_MARKDOWN_HRULE β€” (17)
  • SCE_MARKDOWN_LINK β€” (18)
  • SCE_MARKDOWN_CODE β€” (19)
  • SCE_MARKDOWN_CODE2 β€” (20)
  • SCE_MARKDOWN_CODEBK β€” (21)

✨ Lexical state for SCLEX_TXT2TAGS ✨

okay bestie these are the lil vibe markers for the txt2tags lexer, each one tagged with its number:

  • SCE_TXT2TAGS_DEFAULT β€” (0)
  • SCE_TXT2TAGS_LINE_BEGIN β€” (1)
  • SCE_TXT2TAGS_STRONG1 β€” (2)
  • SCE_TXT2TAGS_STRONG2 β€” (3)
  • SCE_TXT2TAGS_EM1 β€” (4)
  • SCE_TXT2TAGS_EM2 β€” (5)
  • SCE_TXT2TAGS_HEADER1 β€” (6)
  • SCE_TXT2TAGS_HEADER2 β€” (7)
  • SCE_TXT2TAGS_HEADER3 β€” (8)
  • SCE_TXT2TAGS_HEADER4 β€” (9)
  • SCE_TXT2TAGS_HEADER5 β€” (10)
  • SCE_TXT2TAGS_HEADER6 β€” (11)
  • SCE_TXT2TAGS_PRECHAR β€” (12)
  • SCE_TXT2TAGS_ULIST_ITEM β€” (13)
  • SCE_TXT2TAGS_OLIST_ITEM β€” (14)
  • SCE_TXT2TAGS_BLOCKQUOTE β€” (15)
  • SCE_TXT2TAGS_STRIKEOUT β€” (16)
  • SCE_TXT2TAGS_HRULE β€” (17)
  • SCE_TXT2TAGS_LINK β€” (18)
  • SCE_TXT2TAGS_CODE β€” (19)
  • SCE_TXT2TAGS_CODE2 β€” (20)
  • SCE_TXT2TAGS_CODEBK β€” (21)
  • SCE_TXT2TAGS_COMMENT β€” (22)
  • SCE_TXT2TAGS_OPTION β€” (23)
  • SCE_TXT2TAGS_PREPROC β€” (24)
  • SCE_TXT2TAGS_POSTPROC β€” (25)

✨ Lexical states for SCLEX_A68K ✨

Motorola 68000 energy, let's GO πŸ’…

  • SCE_A68K_DEFAULT β€” (0)
  • SCE_A68K_COMMENT β€” (1)
  • SCE_A68K_NUMBER_DEC β€” (2)
  • SCE_A68K_NUMBER_BIN β€” (3)
  • SCE_A68K_NUMBER_HEX β€” (4)
  • SCE_A68K_STRING1 β€” (5)
  • SCE_A68K_OPERATOR β€” (6)
  • SCE_A68K_CPUINSTRUCTION β€” (7)
  • SCE_A68K_EXTINSTRUCTION β€” (8)
  • SCE_A68K_REGISTER β€” (9)
  • SCE_A68K_DIRECTIVE β€” (10)
  • SCE_A68K_MACRO_ARG β€” (11)
  • SCE_A68K_LABEL β€” (12)
  • SCE_A68K_STRING2 β€” (13)
  • SCE_A68K_IDENTIFIER β€” (14)
  • SCE_A68K_MACRO_DECLARATION β€” (15)
  • SCE_A68K_COMMENT_WORD β€” (16)
  • SCE_A68K_COMMENT_SPECIAL β€” (17)
  • SCE_A68K_COMMENT_DOXYGEN β€” (18)

✨ Lexical states for SCLEX_MODULA ✨

Modula-2 stans rise 🫢

  • SCE_MODULA_DEFAULT β€” (0)
  • SCE_MODULA_COMMENT β€” (1)
  • SCE_MODULA_DOXYCOMM β€” (2)
  • SCE_MODULA_DOXYKEY β€” (3)
  • SCE_MODULA_KEYWORD β€” (4)
  • SCE_MODULA_RESERVED β€” (5)
  • SCE_MODULA_NUMBER β€” (6)
  • SCE_MODULA_BASENUM β€” (7)
  • SCE_MODULA_FLOAT β€” (8)
  • SCE_MODULA_STRING β€” (9)
  • SCE_MODULA_STRSPEC β€” (10)
  • SCE_MODULA_CHAR β€” (11)
  • SCE_MODULA_CHARSPEC β€” (12)
  • SCE_MODULA_PROC β€” (13)
  • SCE_MODULA_PRAGMA β€” (14)
  • SCE_MODULA_PRGKEY β€” (15)
  • SCE_MODULA_OPERATOR β€” (16)
  • SCE_MODULA_BADSTR β€” (17)

✨ Lexical states for SCLEX_COFFEESCRIPT ✨

CoffeeScript girlies, this one's long but we're locked in β˜•πŸ’–

  • SCE_COFFEESCRIPT_DEFAULT β€” (0)
  • SCE_COFFEESCRIPT_COMMENT β€” (1)
  • SCE_COFFEESCRIPT_COMMENTLINE β€” (2)
  • SCE_COFFEESCRIPT_COMMENTDOC β€” (3)
  • SCE_COFFEESCRIPT_NUMBER β€” (4)
  • SCE_COFFEESCRIPT_WORD β€” (5)
  • SCE_COFFEESCRIPT_STRING β€” (6)
  • SCE_COFFEESCRIPT_CHARACTER β€” (7)
  • SCE_COFFEESCRIPT_UUID β€” (8)
  • SCE_COFFEESCRIPT_PREPROCESSOR β€” (9)
  • SCE_COFFEESCRIPT_OPERATOR β€” (10)
  • SCE_COFFEESCRIPT_IDENTIFIER β€” (11)
  • SCE_COFFEESCRIPT_STRINGEOL β€” (12)
  • SCE_COFFEESCRIPT_VERBATIM β€” (13)
  • SCE_COFFEESCRIPT_REGEX β€” (14)
  • SCE_COFFEESCRIPT_COMMENTLINEDOC β€” (15)
  • SCE_COFFEESCRIPT_WORD2 β€” (16)
  • SCE_COFFEESCRIPT_COMMENTDOCKEYWORD β€” (17)
  • SCE_COFFEESCRIPT_COMMENTDOCKEYWORDERROR β€” (18)
  • SCE_COFFEESCRIPT_GLOBALCLASS β€” (19)
  • SCE_COFFEESCRIPT_STRINGRAW β€” (20)
  • SCE_COFFEESCRIPT_TRIPLEVERBATIM β€” (21)
  • SCE_COFFEESCRIPT_HASHQUOTEDSTRING β€” (22)
  • SCE_COFFEESCRIPT_COMMENTBLOCK β€” (22)
  • SCE_COFFEESCRIPT_VERBOSE_REGEX β€” (23)
  • SCE_COFFEESCRIPT_VERBOSE_REGEX_COMMENT β€” (24)
and no bestie, that's not a typo on my part: SCE_COFFEESCRIPT_HASHQUOTEDSTRING and SCE_COFFEESCRIPT_COMMENTBLOCK both rock (22) in the source. we do not editorialize, we just report πŸ“‹

✨ Lexical states for SCLEX_AVS ✨

  • SCE_AVS_DEFAULT β€” (0)
  • SCE_AVS_COMMENTBLOCK β€” (1)
  • SCE_AVS_COMMENTBLOCKN β€” (2)
  • SCE_AVS_COMMENTLINE β€” (3)
  • SCE_AVS_NUMBER β€” (4)
  • SCE_AVS_OPERATOR β€” (5)
  • SCE_AVS_IDENTIFIER β€” (6)
  • SCE_AVS_STRING β€” (7)
  • SCE_AVS_TRIPLESTRING β€” (8)
  • SCE_AVS_KEYWORD β€” (9)
  • SCE_AVS_FILTER β€” (10)
  • SCE_AVS_PLUGIN β€” (11)
  • SCE_AVS_FUNCTION β€” (12)
  • SCE_AVS_CLIPPROP β€” (13)
  • SCE_AVS_USERDFN β€” (14)

✨ Lexical states for SCLEX_ECL ✨

last one of the lexer list, we made it πŸ˜­πŸ‘‘

  • SCE_ECL_DEFAULT β€” (0)
  • SCE_ECL_COMMENT β€” (1)
  • SCE_ECL_COMMENTLINE β€” (2)
  • SCE_ECL_NUMBER β€” (3)
  • SCE_ECL_STRING β€” (4)
  • SCE_ECL_WORD0 β€” (5)
  • SCE_ECL_OPERATOR β€” (6)
  • SCE_ECL_CHARACTER β€” (7)
  • SCE_ECL_UUID β€” (8)
  • SCE_ECL_PREPROCESSOR β€” (9)
  • SCE_ECL_UNKNOWN β€” (10)
  • SCE_ECL_IDENTIFIER β€” (11)
  • SCE_ECL_STRINGEOL β€” (12)
  • SCE_ECL_VERBATIM β€” (13)
  • SCE_ECL_REGEX β€” (14)
  • SCE_ECL_COMMENTLINEDOC β€” (15)
  • SCE_ECL_WORD1 β€” (16)
  • SCE_ECL_COMMENTDOCKEYWORD β€” (17)
  • SCE_ECL_COMMENTDOCKEYWORDERROR β€” (18)
  • SCE_ECL_WORD2 β€” (19)
  • SCE_ECL_WORD3 β€” (20)
  • SCE_ECL_WORD4 β€” (21)
  • SCE_ECL_WORD5 β€” (22)
  • SCE_ECL_COMMENTDOC β€” (23)
  • SCE_ECL_ADDED β€” (24)
  • SCE_ECL_DELETED β€” (25)
  • SCE_ECL_CHANGED β€” (26)
  • SCE_ECL_MOVED β€” (27)

✨ one deprecated lil guy ✨

Deprecated in 2.21 β€” the SC_CP_DBCS value can be used to indicate a DBCS mode for GTK+.

  • SC_CP_DBCS β€” (1)
bestie, heed the word deprecated. it's still here, it still means what it means, but it's giving legacy πŸ’€

πŸ’– AUTHOR πŸ’–

Ahmad M. Zawawi <ahmad.zawawi@gmail.com>


Copyright 2011 Ahmad M. Zawawi.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.


and that's a wrap on the whole page, bestie!! every constant, every number, every state, all accounted for, no cap 🌈✨ you ate the entire docs page, honestly iconic of you πŸ’…

this was pulled from the perl v5.42.3 docs, dated 2026-08-21, and the page you just finished reading is Wx::Sc...onstant(3pm) β€” go forth and lex responsibly, mwah πŸ˜˜πŸ’œ

πŸ“¦ where this page comes from