From 40b9a2ba0d2e75196682451e78dbc1dc10333994 Mon Sep 17 00:00:00 2001 From: Colomban Wendling Date: Tue, 19 May 2015 14:25:40 +0200 Subject: [PATCH] Respect filetype.common's wordchars if a filetype doesn't have its own Use filetype.common's wordchars instead of GEANY_WORDCHARS as default for filetypes not having their own. This allows to change the wordchars for all filetypes at once. Part of issue #492. --- data/filetypes.common | 1 + src/highlighting.c | 10 ++++++---- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/data/filetypes.common b/data/filetypes.common index 1564262a..1b163c9c 100644 --- a/data/filetypes.common +++ b/data/filetypes.common @@ -97,6 +97,7 @@ calltips=call_tips # which characters should be skipped when moving (or included when deleting) to word boundaries # should always include space and tab (\s\t) whitespace_chars=\s\t!\"#$%&'()*+,-./:;<=>?@[\\]^`{|}~ +#wordchars=_abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 [named_styles] # This is the Default "built-in" color scheme diff --git a/src/highlighting.c b/src/highlighting.c index ac6f7d71..0a700b62 100644 --- a/src/highlighting.c +++ b/src/highlighting.c @@ -171,10 +171,11 @@ static void get_keyfile_keywords(GKeyFile *config, GKeyFile *configh, } -static void get_keyfile_wordchars(GKeyFile *config, GKeyFile *configh, gchar **wordchars) +static void get_keyfile_wordchars(GKeyFile *config, GKeyFile *configh, gchar **wordchars, + const gchar *default_wordchars) { *wordchars = utils_get_setting(string, configh, config, - "settings", "wordchars", GEANY_WORDCHARS); + "settings", "wordchars", default_wordchars); } @@ -578,7 +579,7 @@ static void styleset_common_init(GKeyFile *config, GKeyFile *config_home) 0, 0, &common_style_set.styling[GCS_LINE_HEIGHT]); g_free(common_style_set.wordchars); - get_keyfile_wordchars(config, config_home, &common_style_set.wordchars); + get_keyfile_wordchars(config, config_home, &common_style_set.wordchars, GEANY_WORDCHARS); g_free(whitespace_chars); whitespace_chars = get_keyfile_whitespace_chars(config, config_home); } @@ -1054,7 +1055,8 @@ void highlighting_init_styles(guint filetype_idx, GKeyFile *config, GKeyFile *co } /* should be done in filetypes.c really: */ - get_keyfile_wordchars(config, configh, &style_sets[filetype_idx].wordchars); + get_keyfile_wordchars(config, configh, &style_sets[filetype_idx].wordchars, + common_style_set.wordchars); }