### SuperHTML Extend Tag Example
Source: https://github.com/kristoff-it/superhtml/blob/main/tree-sitter-superhtml/test/corpus/superhtml.txt
Demonstrates the Extend Tag for template inheritance, specifying a base template and overriding content sections.
```html
```
--------------------------------
### SuperHTML Extend Tag AST
Source: https://github.com/kristoff-it/superhtml/blob/main/tree-sitter-superhtml/test/corpus/superhtml.txt
The AST representation of the Extend Tag example, showing the parsed structure for template inheritance.
```tree-sitter-grammar
(document
(element
(start_tag
(tag_name)
(attribute
(attribute_name)
(quoted_attribute_value
(attribute_value)))))
(element
(start_tag
(tag_name)
(attribute
(attribute_name)
(quoted_attribute_value
(attribute_value)))
(attribute
(attribute_name)
(quoted_attribute_value
(attribute_value))))
(end_tag
(tag_name)))
(element
(start_tag
(tag_name)
(attribute
(attribute_name)
(quoted_attribute_value
(attribute_value))))
(element
(start_tag
(tag_name)
(attribute
(attribute_name)
(quoted_attribute_value
(attribute_value))))
(end_tag
(tag_name)))
(element
(start_tag
(tag_name)
(attribute
(attribute_name)
(quoted_attribute_value
(attribute_value))))
(end_tag
(tag_name)))
(end_tag
(tag_name))))
```
--------------------------------
### Configure Eglot with SuperHTML using use-package
Source: https://github.com/kristoff-it/superhtml/blob/main/editors/emacs/README.md
Use this configuration with the `use-package` macro to automatically set up Eglot and the SuperHTML language server for `web-mode`. Ensure `superhtml` is in your PATH.
```elisp
(use-package eglot
:defer t
:hook ((web-mode . eglot-ensure))
:config
(add-to-list 'eglot-server-programs '((web-mode :language-id "html") . ("superhtml" "lsp"))))
```
--------------------------------
### HTML Autoformatting: Whitespace Between Start Tag and Content
Source: https://github.com/kristoff-it/superhtml/blob/main/editors/vscode/README.md
Demonstrates adding or removing whitespace between an element's start tag and its content. This rule affects how content is indented relative to the opening tag.
```html
```
```html
```
```html
```
```html
```