diff --git a/html.j2.nanorc b/html.j2.nanorc
deleted file mode 100644
index ff14a97..0000000
--- a/html.j2.nanorc
+++ /dev/null
@@ -1,17 +0,0 @@
-## Here is a short improved example for HTML.
-##
-syntax "HTML" "\.htm[l]?.j2$"
-color brightblue start="<" end=">"
-color red "&[^;[[:space:]]]*;"
-color yellow ""[^"]*"|qq\|.*\|"
-color red "(action|alt|bgcolor|height|href|id|label|longdesc|method|name|onclick|onfocus|onload|onmouseover|rel|size|span|src|style|target|title|type|value|width)="
-color magenta start=""
-
-## Trailing spaces
-color ,green "[[:space:]]+$"
-
-## Jinja templating
-color green "\{{2}.*\}{2}"
-color green "\{\%.*\%\}"
-color brightcyan "(if|endif|for)"
-
diff --git a/html.j2.nanorc b/html.j2.nanorc
new file mode 120000
index 0000000..c18f7cb
--- /dev/null
+++ b/html.j2.nanorc
@@ -0,0 +1 @@
+html.nanorc
\ No newline at end of file
diff --git a/html.nanorc b/html.nanorc
index dd01965..4f225d8 100644
--- a/html.nanorc
+++ b/html.nanorc
@@ -1,11 +1,41 @@
-## Here is a short improved example for HTML.
-##
-syntax "HTML" "\.htm[l]?$"
-color brightblue start="<" end=">"
-color red "&[^;[[:space:]]]*;"
-color yellow ""[^"]*"|qq\|.*\|"
-color red "(action|alt|bgcolor|height|href|id|label|longdesc|method|name|onclick|onfocus|onload|onmouseover|rel|size|span|src|style|target|title|type|value|width)="
-color magenta start=""
+## HTML syntax highlighting rules for Nano
+
+syntax "HTML" "\.html?(.j2)?$"
+magic "HTML document"
+comment ""
+
+## Emphasis tags
+color brightwhite start="<([biu]|em|strong)[^>]*>" end="([biu]|em|strong)>"
+
+## Tags
+color cyan start="<" end=">"
+
+## Attributes
+color brightblue "[[:space:]](abbr|accept(-charset)?|accesskey|action|[av]?link|alt|archive|axis|background|(bg)?color|border)="
+color brightblue "[[:space:]](cell(padding|spacing)|char(off|set)?|checked|cite|class(id)?|compact|code(base|tag)?|cols(pan)?)="
+color brightblue "[[:space:]](content(editable)?|contextmenu|coords|data|datetime|declare|defer|dir|enctype)="
+color brightblue "[[:space:]](for|frame(border)?|headers|height|hidden|href(lang)?|hspace|http-equiv|id|ismap)="
+color brightblue "[[:space:]](label|lang|longdesc|margin(height|width)|maxlength|media|method|multiple)="
+color brightblue "[[:space:]](name|nohref|noresize|noshade|object|on(click|focus|load|mouseover|keypress)|profile|readonly|rel|rev)="
+color brightblue "[[:space:]](rows(pan)?|rules|scheme|scope|scrolling|shape|size|span|src|standby|start|style|summary|pattern)="
+color brightblue "[[:space:]](tabindex|target|text|title|type|usemap|v?align|value(type)?|vspace|width|xmlns|xml:space)="
+color brightblue "[[:space:]](required|disabled|selected)[[:space:]=>]"
+
+## Strings
+color yellow ""(\\.|[^"])*""
+
+## Named character references and entities
+color red "?[[:alnum:]]*;"
+
+## Template strings (not in the HTML spec, but very commonly used)
+color magenta "\{[^\}]*\}"
+color brightgreen "[[:space:]]((end)?if|(end)?for|in|not|(end)?block)[[:space:]]"
+
+## Comments
+color green start=""
## Trailing spaces
color ,green "[[:space:]]+$"
+
+## Reminders
+color brightwhite,yellow "(FIXME|TODO|XXX)"