]> git.lizzy.rs Git - micro.git/blob - runtime/syntax/html.yaml
Make XML highlighting more fine-grained
[micro.git] / runtime / syntax / html.yaml
1 filetype: html
2
3 detect:
4     filename: "\\.htm[l]?$"
5
6 rules:
7     - error: "<[^!].*?>"
8     - symbol.tag: "(?i)<[/]?(a(bbr|cronym|ddress|pplet|rea|rticle|side|udio)?|b(ase(font)?|d(i|o)|ig|lockquote|r)?|ca(nvas|ption)|center|cite|co(de|l|lgroup)|d(ata(list)?|d|el|etails|fn|ialog|ir|l|t)|em(bed)?|fieldset|fig(caption|ure)|font|form|(i)?frame|frameset|h[1-6]|hr|i|img|in(put|s)|kbd|keygen|label|legend|li(nk)?|ma(in|p|rk)|menu(item)?|met(a|er)|nav|no(frames|script)|o(l|pt(group|ion)|utput)|p(aram|icture|re|rogress)?|q|r(p|t|uby)|s(trike)?|samp|se(ction|lect)|small|source|span|strong|su(b|p|mmary)|textarea|time|track|u(l)?|var|video|wbr)( .*|>)*?>"
9     - symbol.tag.extended: "(?i)<[/]?(body|div|html|head(er)?|footer|title|table|t(body|d|h(ead)?|r|foot))( .*)*?>"
10     - special: "&[^;[[:space:]]]*;"
11     - symbol: "[:=]"
12     - identifier: "(alt|bgcolor|height|href|id|label|longdesc|name|on(click|focus|load|mouseover)|size|span|src|target|type|value|width)="
13     - constant.number: "(?i)#[0-9A-F]{6,6}"
14     # - default:
15     #     start: ">"
16     #     end: "<"
17     #     rules: []
18
19     - symbol.tag: "<|>"
20     - constant.string.url: "(ftp(s)?|http(s)?|git|chrome)://[^  ]+"
21     - comment: "<!--.+?-->"
22     - preproc: "<!DOCTYPE.+?>"
23
24     - constant.string:
25         start: "\""
26         end: "\""
27         skip: "\\\\."
28         rules:
29             - constant.specialChar: "\\\\."
30
31     - default:
32         start: "<script.*?>"
33         end: "</script.*?>"
34         limit-group: symbol.tag
35         rules:
36             - include: "javascript"
37
38     - default:
39         start: "<style.*?>"
40         end: "</style.*?>"
41         limit-group: symbol.tag
42         rules:
43             - include: "css"