Match to keyword

Hopefully this will solve some performance problems with syntax highlight

Thanks to @meh for the suggestion of using `iskeyword` to avoid `!` and `?`