Looking at this again, the comment tells me that this should be in a separate method, something like below, perhaps?

```ruby
def validate_syntax
  full_matcher = Regexp.compile('\A\s*(?:' + MATCHER.to_s + '(?=\s|\z)\s*)*\z')
  unless markup =~ full_matcher
    raise SyntaxError.new <<-eos
Invalid syntax for include tag:

  #{markup}

Valid syntax:

  {% include file.ext param='value' param2="value" %}

eos
  end
end
```

and then you can change the `parse_params` method to be like so:

```ruby
def parse_params(markup, context)
  params = {}

  validate_syntax

  ...
end

Thoughts?