Skip to content

Support EJS files/tags #492

Open
@LightCC

Description

@LightCC

Is your feature request related to a problem? Please describe.
HTMLHint appears to work well on *.ejs (EJS - Embedded JavaScript) files for the HTML parts, but the EJS templates trigger the spec-char-escape rule on the <% open and %> close tags for the embedded JS templating.

Describe the solution you'd like
In *.ejs files, HTMLHint should recognize the EJS start/stop tags and ignore the spec-char-escape tags at the minimum.

It's possible that everything between the tags should also be ignored, although there aren't many tags in EJS (plan <%, <%= for just variables, etc.) and most of it is just plain javascript.

Ideally, all the EJS tags and the javascript itself would all be linted.

Describe alternatives you've considered
I looked for other linters for EJS, at least supported by VS Code, didn't see anything.

I do use .htmlhintrc to disable the spec-char-escape rule:

{
    "spec-char-escape": false
}

but this is a less-than-ideal solution as it disables checking for that rule in all normal HTML code as well.

Additional context
In VS Code, this shows up as follows:
image

image

Metadata

Metadata

Assignees

No one assigned

    Labels

    coreRelates to HTMLHint's core APIs and featuresfeature requestFunctionality that introduces a new featurekeep-unstaleThe issue will not be marked as stale by the stale-bottriageAn HTMLHint team member will look at this issue

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions