token_t * t = *(token_t**)vector_get(&token_table,
i);
match_t * match = regex_match(t->syntax, string, true);
+ for(match_t * m = match; m->position != -1; m++){
+ printf("%s: %d %d\n", t->syntax->str, m->position, m->width);
+ }
if (match->position == -1) {
free(match);
continue;
}
}
if (max != &sentinel) {
- const int padding = max->m[max->i].position - (s - string);
+ const match_t * mymatch = &(max->m[max->i]);
+ const int padding = mymatch->position - (s - string);
if (padding) {
display->callback(s,
padding,
NULL);
}
display->callback(s + padding,
- max->m->width,
+ mymatch->width,
max->t->hl->attributes);
- s += padding + max->m->width;
+ s += padding + mymatch->width;
} else {
display->callback(s, 1, NULL);
++s;