28 {
29
30 $this->ind = 0;
31 $this->inquote = 0;
32 $this->incomment = 0;
33 $this->inbcomment = 0;
34 $this->inwhitespace = 1;
35
36 $this->currquotechar = "";
37 $this->begseen = 0;
38 $this->newline = 0;
39 $this->escaping = 0;
40
41 $this->lineselect = 0;
42 $this->closingstrings = array();
43
44
45 $this->validkeys = array();
46
47 foreach(array_keys(
$lang->keywords) as $key)
48 {
50 $this->validkeys[strtolower($key)] = $key;
51 else
52 $this->validkeys[$key] = $key;
53 }
54 $this->alldelims = array_merge(
$lang->delimiters,
$lang->stringchars);
55
56
57 $this->lcolengths = array();
58 foreach(
$lang->linecommenton as $lco)
59 {
60 $this->lcolengths[$lco] = strlen($lco);
61 }
62 foreach(
$lang->blockcommenton as $bco)
63 {
64 $this->bcolengths[$bco] = strlen($bco);
65 }
66 foreach(
$lang->blockcommentoff as $bcf)
67 {
68 $this->bcflengths[$bcf] = strlen($bcf);
69 }
70
71
72 $this->bcomatches = array();
73 $this->startingbkonchars = array();
74 for($i=0; $i<
sizeof(
$lang->blockcommenton); $i++)
75 {
76 $bco =
$lang->blockcommenton[$i];
77 if (!isset($this->bcomatches[$bco])) $this->bcomatches[$bco] = array();
78 array_push($this->bcomatches[$bco],
$lang->blockcommentoff[$i]);
79 array_push($this->startingbkonchars, $bco[0]);
80
81 }
82
83
84 $preprolength = 0;
85 $this->prepro = 0;
86 if (isset(
$lang->prepro)) $this->preprolength = strlen(
$lang->prepro);
87
88
89
90 $this->code_parts = explode("_WORD_", $output->code);
91 $this->linecomment_parts = explode("_WORD_", $output->linecomment);
92 $this->blockcomment_parts = explode("_WORD_", $output->blockcomment);
93 $this->prepro_parts = explode("_WORD_", $output->prepro);
94 $this->select_parts = explode("_WORD_", $output->select);
95 $this->quote_parts = explode("_WORD_", $output->quote);
96 $currcat = 1;
97 do
98 {
99 $varname = "category_".$currcat;
100 if (isset($output->{$varname}))
101 {
102 $this->category_parts[$currcat] = explode("_WORD_", $output->{$varname});
103 }
104 $currcat++;
105 } while (isset($output->{$varname}));
106 }