diff --git a/autoload/xolox/easytags.vim b/autoload/xolox/easytags.vim index b639bbf..99a4186 100644 --- a/autoload/xolox/easytags.vim +++ b/autoload/xolox/easytags.vim @@ -462,9 +462,8 @@ function! xolox#easytags#highlight() " {{{2 if matches != [] " Convert matched tags to :syntax command and execute it. let matches = xolox#misc#list#unique(map(matches, 'xolox#misc#escape#pattern(get(v:val, "name"))')) - let pattern = tagkind.pattern_prefix . '\%(' . join(matches, '\|') . '\)' . tagkind.pattern_suffix - let template = 'syntax match %s /%s/ containedin=ALLBUT,%s' - let command = printf(template, hlgroup_tagged, escape(pattern, '/'), xolox#easytags#syntax_groups_to_ignore()) + let template = 'syntax keyword %s %s containedin=ALLBUT,%s' + let command = printf(template, hlgroup_tagged, join(matches, ' '), xolox#easytags#syntax_groups_to_ignore()) call xolox#misc#msg#debug("easytags.vim %s: Executing command '%s'.", g:xolox#easytags#version, command) try execute command diff --git a/misc/easytags/highlight.py b/misc/easytags/highlight.py index 6053726..a3dcac5 100644 --- a/misc/easytags/highlight.py +++ b/misc/easytags/highlight.py @@ -51,5 +51,5 @@ def easytags_gensyncmd(tagsfiles, filetype, tagkinds, syntaxgroup, prefix, suffi return ' | '.join(commands) def _easytags_makecmd(syntaxgroup, prefix, suffix, patterns, ignoresyntax): - template = r'syntax match %s /%s\%%(%s\)%s/ containedin=ALLBUT,%s' - return template % (syntaxgroup, prefix, r'\|'.join(patterns), suffix, ignoresyntax) + template = r'syntax keyword %s %s containedin=ALLBUT,%s' + return template % (syntaxgroup, r' '.join(patterns), ignoresyntax)