Mapping can't be solved correctly because of parse errors

This mapping is unfinished: 20 of 18634 nodes are still unmarked.

Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

…lines 1–17 unchanged (17 lines)
18 <path d="M15 21h-9a3 3 0 0 1 -3 -3v-1h10v2a2 2 0 0 0 4 0v-14a2 2 0 1 1 2 2h-2m2 -4h-11a3 3 0 0 0 -3 3v11"/>
19 <path d="M9 7l4 0"/>
20 <path d="M9 11l4 0"/>
21 </svg>
22 {{- else if .HasExt ".jpg" ".jpeg" ".png" ".gif" ".webp" ".tiff" ".bmp" ".heif" ".heic" ".svg"}}
23 {{- if eq .Tpl.Layout "grid"}}
24 <img loading="lazy" src="{{.Name | replace "#" "%23" | replace "?" "%3f" | html}}">
25 {{- else}}
26 <svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-photo" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
27 <path stroke="none" d="M0 0h24v24H0z" fill="none"/>
28 <path d="M15 8h.01"/>
29 <path d="M3 6a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v12a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3v-12z"/>
30 <path d="M3 16l5 -5c.928 -.893 2.072 -.893 3 0l5 5"/>
…lines 31–1156 unchanged (1126 lines)

After

…lines 1–17 unchanged (17 lines)
18 <path d="M15 21h-9a3 3 0 0 1 -3 -3v-1h10v2a2 2 0 0 0 4 0v-14a2 2 0 1 1 2 2h-2m2 -4h-11a3 3 0 0 0 -3 3v11"/>
19 <path d="M9 7l4 0"/>
20 <path d="M9 11l4 0"/>
21 </svg>
22 {{- else if .HasExt ".jpg" ".jpeg" ".png" ".gif" ".webp" ".tiff" ".bmp" ".heif" ".heic" ".svg"}}
23 {{- if eq .Tpl.Layout "grid"}}
24 <img loading="lazy" src="{{.Name | pathEscape}}">
25 {{- else}}
26 <svg xmlns="http://www.w3.org/2000/svg" class="icon icon-tabler icon-tabler-photo" width="24" height="24" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" fill="none" stroke-linecap="round" stroke-linejoin="round">
27 <path stroke="none" d="M0 0h24v24H0z" fill="none"/>
28 <path d="M15 8h.01"/>
29 <path d="M3 6a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v12a3 3 0 0 1 -3 3h-12a3 3 0 0 1 -3 -3v-12z"/>
30 <path d="M3 16l5 -5c.928 -.893 2.072 -.893 3 0l5 5"/>
…lines 31–1156 unchanged (1126 lines)

Before

document
text "{{- define \"icon\"}}\n\t{{- if .IsDir}}\n\t\t{{- if .IsSymlink}}"
element (+157 nodes collapsed)
text "{{- else}}"
element (+131 nodes collapsed)
text "{{- end}}\n\t{{- else if or (eq .Name \"LICENSE\") (eq .Name \"RE"...
element (+141 nodes collapsed)
text "{{- else if .HasExt \".jpg\" \".jpeg\" \".png\" \".gif\" \".webp\" \".t"...
element
start_tag
< "<"
tag_name "img"
attribute
attribute_name "loading"
= "="
quoted_attribute_value
" "\""
attribute_value "lazy"
" "\""
attribute
attribute_name "src"
= "="
quoted_attribute_value
" "\""
attribute_value "{{.Name | replace "
" "\""
attribute
attribute_name "#"
ERROR
" "\""
" "\""
ERROR "%23"
" "\""
ERROR "| replace"
" "\""
ERROR "?"
" "\""
" "\""
ERROR "%3f"
" "\""
ERROR "| html}}"
" "\""
> ">"
text "{{- else}}"
element (+153 nodes collapsed)
text "{{- end}}\n\t{{- else if .HasExt \".mp4\" \".mov\" \".m4v\" \".mpeg\" "...
element (+201 nodes collapsed)
text "{{- else if .HasExt \".mp3\" \".m4a\" \".aac\" \".ogg\" \".flac\" \".wa"...
element (+153 nodes collapsed)
text "{{- else if .HasExt \".pdf\"}}"
element (+177 nodes collapsed)
text "{{- else if .HasExt \".csv\" \".tsv\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".txt\" \".doc\" \".docx\" \".odt\" \".fodt\" \".r"...
element (+165 nodes collapsed)
text "{{- else if .HasExt \".xls\" \".xlsx\" \".ods\" \".fods\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".ppt\" \".pptx\" \".odp\" \".fodp\"}}"
element (+189 nodes collapsed)
text "{{- else if .HasExt \".zip\" \".gz\" \".xz\" \".tar\" \".7z\" \".rar\" \""...
element (+201 nodes collapsed)
text "{{- else if .HasExt \".deb\" \".dpkg\"}}"
element (+129 nodes collapsed)
text "{{- else if .HasExt \".rpm\" \".exe\" \".flatpak\" \".appimage\" \".j"...
element (+165 nodes collapsed)
text "{{- else if .HasExt \".ps1\"}}"
element (+141 nodes collapsed)
text "{{- else if .HasExt \".py\" \".pyc\" \".pyo\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".bash\" \".sh\" \".com\" \".bat\" \".dll\" \".so\""...
element (+117 nodes collapsed)
text "{{- else if .HasExt \".dmg\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".iso\" \".img\"}}"
element (+153 nodes collapsed)
text "{{- else if .HasExt \".md\" \".mdown\" \".markdown\"}}"
element (+141 nodes collapsed)
text "{{- else if .HasExt \".ttf\" \".otf\" \".woff\" \".woff2\" \".eof\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".go\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".html\" \".htm\"}}"
element (+213 nodes collapsed)
text "{{- else if .HasExt \".js\"}}"
element (+153 nodes collapsed)
text "{{- else if .HasExt \".css\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".json\" \".json5\" \".jsonc\"}}"
element (+153 nodes collapsed)
text "{{- else if .HasExt \".ts\"}}"
element (+177 nodes collapsed)
text "{{- else if .HasExt \".sql\"}}"
element (+189 nodes collapsed)
text "{{- else if .HasExt \".db\" \".sqlite\" \".bak\" \".mdb\"}}"
element (+141 nodes collapsed)
text "{{- else if .HasExt \".eml\" \".email\" \".mailbox\" \".mbox\" \".msg"...
element (+129 nodes collapsed)
text "{{- else if .HasExt \".crt\" \".pem\" \".x509\" \".cer\" \".ca-bundle"...
element (+177 nodes collapsed)
text "{{- else if .HasExt \".key\" \".keystore\" \".jks\" \".p12\" \".pfx\" "...
element (+129 nodes collapsed)
text "{{- else}}\n\t\t{{- if .IsSymlink}}"
element (+153 nodes collapsed)
text "{{- else}}"
element (+129 nodes collapsed)
text "{{- end}}\n\t{{- end}}\n{{- end}}"
doctype
<! "<!"
doctype "DOCTYPE"
> ">"
element (+3837 nodes collapsed)

After

document
text "{{- define \"icon\"}}\n\t{{- if .IsDir}}\n\t\t{{- if .IsSymlink}}"
element (+157 nodes collapsed)
text "{{- else}}"
element (+131 nodes collapsed)
text "{{- end}}\n\t{{- else if or (eq .Name \"LICENSE\") (eq .Name \"RE"...
element (+141 nodes collapsed)
text "{{- else if .HasExt \".jpg\" \".jpeg\" \".png\" \".gif\" \".webp\" \".t"...
element
start_tag
< "<"
tag_name "img"
attribute
attribute_name "loading"
= "="
quoted_attribute_value
" "\""
attribute_value "lazy"
" "\""
attribute
attribute_name "src"
= "="
quoted_attribute_value
" "\""
attribute_value "{{.Name | pathEscape}}"
" "\""
> ">"
text "{{- else}}"
element (+153 nodes collapsed)
text "{{- end}}\n\t{{- else if .HasExt \".mp4\" \".mov\" \".m4v\" \".mpeg\" "...
element (+201 nodes collapsed)
text "{{- else if .HasExt \".mp3\" \".m4a\" \".aac\" \".ogg\" \".flac\" \".wa"...
element (+153 nodes collapsed)
text "{{- else if .HasExt \".pdf\"}}"
element (+177 nodes collapsed)
text "{{- else if .HasExt \".csv\" \".tsv\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".txt\" \".doc\" \".docx\" \".odt\" \".fodt\" \".r"...
element (+165 nodes collapsed)
text "{{- else if .HasExt \".xls\" \".xlsx\" \".ods\" \".fods\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".ppt\" \".pptx\" \".odp\" \".fodp\"}}"
element (+189 nodes collapsed)
text "{{- else if .HasExt \".zip\" \".gz\" \".xz\" \".tar\" \".7z\" \".rar\" \""...
element (+201 nodes collapsed)
text "{{- else if .HasExt \".deb\" \".dpkg\"}}"
element (+129 nodes collapsed)
text "{{- else if .HasExt \".rpm\" \".exe\" \".flatpak\" \".appimage\" \".j"...
element (+165 nodes collapsed)
text "{{- else if .HasExt \".ps1\"}}"
element (+141 nodes collapsed)
text "{{- else if .HasExt \".py\" \".pyc\" \".pyo\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".bash\" \".sh\" \".com\" \".bat\" \".dll\" \".so\""...
element (+117 nodes collapsed)
text "{{- else if .HasExt \".dmg\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".iso\" \".img\"}}"
element (+153 nodes collapsed)
text "{{- else if .HasExt \".md\" \".mdown\" \".markdown\"}}"
element (+141 nodes collapsed)
text "{{- else if .HasExt \".ttf\" \".otf\" \".woff\" \".woff2\" \".eof\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".go\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".html\" \".htm\"}}"
element (+213 nodes collapsed)
text "{{- else if .HasExt \".js\"}}"
element (+153 nodes collapsed)
text "{{- else if .HasExt \".css\"}}"
element (+165 nodes collapsed)
text "{{- else if .HasExt \".json\" \".json5\" \".jsonc\"}}"
element (+153 nodes collapsed)
text "{{- else if .HasExt \".ts\"}}"
element (+177 nodes collapsed)
text "{{- else if .HasExt \".sql\"}}"
element (+189 nodes collapsed)
text "{{- else if .HasExt \".db\" \".sqlite\" \".bak\" \".mdb\"}}"
element (+141 nodes collapsed)
text "{{- else if .HasExt \".eml\" \".email\" \".mailbox\" \".mbox\" \".msg"...
element (+129 nodes collapsed)
text "{{- else if .HasExt \".crt\" \".pem\" \".x509\" \".cer\" \".ca-bundle"...
element (+177 nodes collapsed)
text "{{- else if .HasExt \".key\" \".keystore\" \".jks\" \".p12\" \".pfx\" "...
element (+129 nodes collapsed)
text "{{- else}}\n\t\t{{- if .IsSymlink}}"
element (+153 nodes collapsed)
text "{{- else}}"
element (+129 nodes collapsed)
text "{{- end}}\n\t{{- end}}\n{{- end}}"
doctype
<! "<!"
doctype "DOCTYPE"
> ">"
element (+3837 nodes collapsed)