From b1ec60061623601ca6185a16d77c6c6c62135e95 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marc=20Andr=C3=A9=20Tanner?= Date: Mon, 12 Oct 2015 16:50:08 +0200 Subject: vis: remove regex based syntax highlighting --- vis.c | 50 +------------------------------------------------- 1 file changed, 1 insertion(+), 49 deletions(-) (limited to 'vis.c') diff --git a/vis.c b/vis.c index b9d664f..377b6a9 100644 --- a/vis.c +++ b/vis.c @@ -26,6 +26,7 @@ #include #include #include +#include #include #include #include @@ -124,18 +125,6 @@ void vis_window_name(Win *win, const char *filename) { free((char*)file->name); file->name = filename ? strdup(filename) : NULL; } - - if (filename) { - Vis *vis = win->vis; - for (Syntax *syn = vis->syntaxes; syn && syn->name; syn++) { - if (!regexec(&syn->file_regex, filename, 0, NULL, 0)) { - view_syntax_set(win->view, syn); - for (const char **opt = syn->settings; opt && *opt; opt++) - vis_cmd(vis, *opt); - break; - } - } - } } static void windows_invalidate(Vis *vis, size_t start, size_t end) { @@ -245,42 +234,6 @@ void vis_window_prev(Vis *vis) { vis->ui->window_focus(vis->win->ui); } -bool vis_syntax_load(Vis *vis, Syntax *syntaxes) { - bool success = true; - vis->syntaxes = syntaxes; - - for (Syntax *syn = syntaxes; syn && syn->name; syn++) { - if (regcomp(&syn->file_regex, syn->file, REG_EXTENDED|REG_NOSUB|REG_ICASE|REG_NEWLINE)) - success = false; - for (int j = 0; j < LENGTH(syn->rules); j++) { - SyntaxRule *rule = &syn->rules[j]; - if (!rule->rule) - break; - int cflags = REG_EXTENDED; - if (!rule->multiline) - cflags |= REG_NEWLINE; - if (regcomp(&rule->regex, rule->rule, cflags)) - success = false; - } - } - - return success; -} - -void vis_syntax_unload(Vis *vis) { - for (Syntax *syn = vis->syntaxes; syn && syn->name; syn++) { - regfree(&syn->file_regex); - for (int j = 0; j < LENGTH(syn->rules); j++) { - SyntaxRule *rule = &syn->rules[j]; - if (!rule->rule) - break; - regfree(&rule->regex); - } - } - - vis->syntaxes = NULL; -} - void vis_draw(Vis *vis) { vis->ui->draw(vis->ui); } @@ -374,7 +327,6 @@ void vis_free(Vis *vis) { register_release(&vis->registers[i]); for (int i = 0; i < LENGTH(vis->macros); i++) macro_release(&vis->macros[i]); - vis_syntax_unload(vis); vis->ui->free(vis->ui); map_free(vis->cmds); map_free(vis->options); -- cgit v1.2.3