# Leo colorizer control file for factor mode.
# This file is in the public domain.
# Properties for factor mode.
properties = {
"commentEnd": ")",
"commentStart": "(",
"doubleBracketIndent": "true",
"indentCloseBrackets": "]",
"indentNextLines": "^(\\*<<|:).*",
"indentOpenBrackets": "[",
"lineComment": "!",
"lineUpClosingBracket": "true",
"noWordSep": "+-*=><;.?/'",
}
# Attributes dict for factor_main ruleset.
factor_main_attributes_dict = {
"default": "null",
"digit_re": "-?\\d+([./]\\d+)?",
"escape": "\\",
"highlight_digits": "true",
"ignore_case": "false",
"no_word_sep": "+-*=><;.?/'",
}
# Attributes dict for factor_stack_effect ruleset.
factor_stack_effect_attributes_dict = {
"default": "COMMENT4",
"digit_re": "-?\\d+([./]\\d+)?",
"escape": "\\",
"highlight_digits": "true",
"ignore_case": "false",
"no_word_sep": "+-*=><;.?/'",
}
# Dictionary of attributes dictionaries for factor mode.
attributesDictDict = {
"factor_main": factor_main_attributes_dict,
"factor_stack_effect": factor_stack_effect_attributes_dict,
}
# Keywords dict for factor_main ruleset.
factor_main_keywords_dict = {
"#{": "operator",
"--": "label",
";": "markup",
"<": "label",
">": "label",
"[": "operator",
"]": "operator",
"f": "literal4",
"r": "keyword1",
"t": "literal3",
"{": "operator",
"|": "operator",
"}": "operator",
"~": "label",
}
# Keywords dict for factor_stack_effect ruleset.
factor_stack_effect_keywords_dict = {}
# Dictionary of keywords dictionaries for factor mode.
keywordsDictDict = {
"factor_main": factor_main_keywords_dict,
"factor_stack_effect": factor_stack_effect_keywords_dict,
}
# Rules for factor_main ruleset.
def factor_rule0(colorer, s, i):
return colorer.match_eol_span(s, i, kind="comment2", seq="#!",
at_line_start=False, at_whitespace_end=False, at_word_start=False,
delegate="", exclude_match=False)
def factor_rule1(colorer, s, i):
return colorer.match_eol_span(s, i, kind="comment1", seq="!",
at_line_start=False, at_whitespace_end=False, at_word_start=False,
delegate="", exclude_match=False)
def factor_rule2(colorer, s, i):
return colorer.match_seq_regexp(s, i, kind="markup", regexp=":\\s+(\\S+)",
at_line_start=False, at_whitespace_end=False, at_word_start=False, delegate="")
def factor_rule3(colorer, s, i):
return colorer.match_seq_regexp(s, i, kind="markup", regexp="IN:\\s+(\\S+)",
at_line_start=False, at_whitespace_end=False, at_word_start=False, delegate="")
def factor_rule4(colorer, s, i):
return colorer.match_seq_regexp(s, i, kind="markup", regexp="USE:\\s+(\\S+)",
at_line_start=False, at_whitespace_end=False, at_word_start=False, delegate="")
def factor_rule5(colorer, s, i):
return colorer.match_seq_regexp(s, i, kind="markup", regexp="DEFER:\\s+(\\S+)",
at_line_start=False, at_whitespace_end=False, at_word_start=False, delegate="")
def factor_rule6(colorer, s, i):
return colorer.match_seq_regexp(s, i, kind="markup", regexp="POSTPONE:\\s+(\\S+)",
at_line_start=False, at_whitespace_end=False, at_word_start=False, delegate="")
def factor_rule7(colorer, s, i):
return colorer.match_seq_regexp(s, i, kind="literal2", regexp="CHAR:\\s+(\\S+)",
at_line_start=False, at_whitespace_end=False, at_word_start=False, delegate="")
def factor_rule8(colorer, s, i):
return colorer.match_seq_regexp(s, i, kind="literal2", regexp="BIN:\\s+(\\S+)",
at_line_start=False, at_whitespace_end=False, at_word_start=False, delegate="")
def factor_rule9(colorer, s, i):
return colorer.match_seq_regexp(s, i, kind="literal2", regexp="OCT:\\s+(\\S+)",
at_line_start=False, at_whitespace_end=False, at_word_start=False, delegate="")
def factor_rule10(colorer, s, i):
return colorer.match_seq_regexp(s, i, kind="literal2", regexp="HEX:\\s+(\\S+)",
at_line_start=False, at_whitespace_end=False, at_word_start=False, delegate="")
def factor_rule11(colorer, s, i):
return colorer.match_span(s, i, kind="comment3", begin="(", end=")",
at_line_start=False, at_whitespace_end=False, at_word_start=False,
delegate="factor::stack_effect",exclude_match=False,
no_escape=False, no_line_break=False, no_word_break=False)
def factor_rule12(colorer, s, i):
return colorer.match_span(s, i, kind="literal1", begin="\"", end="\"",
at_line_start=False, at_whitespace_end=False, at_word_start=False,
delegate="",exclude_match=False,
no_escape=False, no_line_break=True, no_word_break=False)
def factor_rule13(colorer, s, i):
return colorer.match_keywords(s, i)
# Rules dict for factor_main ruleset.
rulesDict1 = {
"!": [factor_rule1,],
"\"": [factor_rule12,],
"#": [factor_rule0,factor_rule13,],
"(": [factor_rule11,],
"-": [factor_rule13,],
"0": [factor_rule13,],
"1": [factor_rule13,],
"2": [factor_rule13,],
"3": [factor_rule13,],
"4": [factor_rule13,],
"5": [factor_rule13,],
"6": [factor_rule13,],
"7": [factor_rule13,],
"8": [factor_rule13,],
"9": [factor_rule13,],
":": [factor_rule2,],
";": [factor_rule13,],
"<": [factor_rule13,],
">": [factor_rule13,],
"@": [factor_rule13,],
"A": [factor_rule13,],
"B": [factor_rule8,factor_rule13,],
"C": [factor_rule7,factor_rule13,],
"D": [factor_rule5,factor_rule13,],
"E": [factor_rule13,],
"F": [factor_rule13,],
"G": [factor_rule13,],
"H": [factor_rule10,factor_rule13,],
"I": [factor_rule3,factor_rule13,],
"J": [factor_rule13,],
"K": [factor_rule13,],
"L": [factor_rule13,],
"M": [factor_rule13,],
"N": [factor_rule13,],
"O": [factor_rule9,factor_rule13,],
"P": [factor_rule6,factor_rule13,],
"Q": [factor_rule13,],
"R": [factor_rule13,],
"S": [factor_rule13,],
"T": [factor_rule13,],
"U": [factor_rule4,factor_rule13,],
"V": [factor_rule13,],
"W": [factor_rule13,],
"X": [factor_rule13,],
"Y": [factor_rule13,],
"Z": [factor_rule13,],
"[": [factor_rule13,],
"]": [factor_rule13,],
"a": [factor_rule13,],
"b": [factor_rule13,],
"c": [factor_rule13,],
"d": [factor_rule13,],
"e": [factor_rule13,],
"f": [factor_rule13,],
"g": [factor_rule13,],
"h": [factor_rule13,],
"i": [factor_rule13,],
"j": [factor_rule13,],
"k": [factor_rule13,],
"l": [factor_rule13,],
"m": [factor_rule13,],
"n": [factor_rule13,],
"o": [factor_rule13,],
"p": [factor_rule13,],
"q": [factor_rule13,],
"r": [factor_rule13,],
"s": [factor_rule13,],
"t": [factor_rule13,],
"u": [factor_rule13,],
"v": [factor_rule13,],
"w": [factor_rule13,],
"x": [factor_rule13,],
"y": [factor_rule13,],
"z": [factor_rule13,],
"{": [factor_rule13,],
"|": [factor_rule13,],
"}": [factor_rule13,],
"~": [factor_rule13,],
}
# Rules for factor_stack_effect ruleset.
def factor_rule14(colorer, s, i):
return colorer.match_seq(s, i, kind="comment3", seq="--",
at_line_start=False, at_whitespace_end=False, at_word_start=False, delegate="")
# Rules dict for factor_stack_effect ruleset.
rulesDict2 = {
"-": [factor_rule14,],
}
# x.rulesDictDict for factor mode.
rulesDictDict = {
"factor_main": rulesDict1,
"factor_stack_effect": rulesDict2,
}
# Import dict for factor mode.
importDict = {}
|