Skip to content

docs: fix conflicting info regarding HTML and clarify#3829

Merged
dyc3 merged 1 commit intomainfrom
dyc3/clarify-html
Jan 17, 2026
Merged

docs: fix conflicting info regarding HTML and clarify#3829
dyc3 merged 1 commit intomainfrom
dyc3/clarify-html

Conversation

@dyc3
Copy link
Contributor

@dyc3 dyc3 commented Jan 17, 2026

Summary

fixes #3828

@netlify
Copy link

netlify bot commented Jan 17, 2026

Deploy Preview for biomejs ready!

Name Link
🔨 Latest commit d949879
🔍 Latest deploy log https://app.netlify.com/projects/biomejs/deploys/696be82a6df4490007153f67
😎 Deploy Preview https://deploy-preview-3829--biomejs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 17, 2026

Walkthrough

This change clarifies HTML configuration: the HTML formatter is explicitly disabled by default while experimental. html.experimentalFullSupportEnabled now names HTML-ish languages (Vue, Svelte, Astro) and states embedded languages are parsed, formatted and linted consistently when enabled. Notes were added that when html.experimentalFullSupportEnabled is disabled, Biome will only extract JavaScript/TypeScript from HTML-ish files; the option does not affect plain .html files; and html.formatter.enabled must be enabled separately (it will default to enabled once the formatter is non‑experimental).

Suggested reviewers

  • ematipico
  • siketyan
🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely summarises the PR's primary change: fixing conflicting HTML documentation and clarifying configuration.
Description check ✅ Passed The description relates to the changeset by linking to issue #3828, which directly motivates the documentation updates.
Linked Issues check ✅ Passed The PR substantially addresses issue #3828's requirements by clarifying HTML formatter default state, distinguishing HTML-ish languages, and explaining html.experimentalFullSupportEnabled's scope.
Out of Scope Changes check ✅ Passed All documentation changes are directly scoped to resolving the conflicting information and clarifications requested in issue #3828.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Fix all issues with AI agents
In `@src/content/docs/reference/configuration.mdx`:
- Around line 1352-1353: Replace the non-canonical casing
"Javascript/Typescript" in the documentation text with the correct
"JavaScript/TypeScript" (look for the exact string "Javascript/Typescript" in
the sentence starting "When disabled, Biome will only extract the
Javascript/Typescript parts...") so the doc uses the standard capitalisation for
both names.
- Around line 1341-1357: Update the caution block text to accurately state that
only the HTML parser and formatter are disabled by default (not the linter);
change the sentence that currently reads "The HTML parser, formatter and linter
are **disabled** by default" to mention only "parser and formatter" and
optionally note that html.linter.enabled and html.assist.enabled default to
true; also correct the wording "Javascript/Typescript" to
"JavaScript/TypeScript" in the description of
html.experimentalFullSupportEnabled and ensure the note about enabling
html.formatter.enabled remains intact.

Comment on lines 1341 to 1357
:::caution
While HTML parser, formatter and linter are enabled by default, they are still considered experimental.
The HTML parser, formatter and linter are **disabled** by default because it is still experimental.
Breaking changes will be reduced to a minimum, however the introduction of fixes and features might change
the behavior of the tools.
:::

### `html.experimentalFullSupportEnabled`

When enabled, Biome enables full support for HTML-ish languages. Parsing, formatting and linting of
When enabled, Biome enables full support for HTML-ish languages (Vue, Svelte, and Astro files). Parsing, formatting and linting of
embedded languages inside these files are consistent.

When disabled, Biome will only extract the Javascript/Typescript parts of these files for analysis, while ignoring the rest of the content.

:::note
Enabling this option merely switches this behavior for these files, not plain `.html` files. To format HTML files, you also
need to enable `html.formatter.enabled`.
:::
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail

python - <<'PY'
import json, urllib.request

try:
    url = "https://biomejs.dev/schemas/2.3.11/schema.json"
    data = json.load(urllib.request.urlopen(url))
    
    def walk(node, path):
        if isinstance(node, dict):
            if "default" in node and "html" in path:
                print(".".join(path), "=", node["default"])
            for k, v in node.items():
                walk(v, path + [k])
        elif isinstance(node, list):
            for i, v in enumerate(node):
                walk(v, path + [str(i)])
    
    walk(data, [])
except Exception as e:
    print(f"Error fetching schema: {e}")
PY

Repository: biomejs/website

Length of output: 145


🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Search for html configuration defaults in the repository
echo "=== Searching for html configuration defaults ==="
rg "html\.(linter|formatter|assist)\.enabled" --max-count 20 -B 2 -A 2

echo ""
echo "=== Searching for 'default' near html configuration ==="
rg "html\." src/content/docs/reference/configuration.mdx | head -30

echo ""
echo "=== Checking if there's a defaults section in configuration.mdx ==="
rg -A 5 -B 5 "default.*true|default.*false" src/content/docs/reference/configuration.mdx | grep -i html | head -40

Repository: biomejs/website

Length of output: 3571


🏁 Script executed:

#!/bin/bash
rg "html\.parser\.enabled" src/content/docs/reference/configuration.mdx -A 3 -B 3

Repository: biomejs/website

Length of output: 41


🏁 Script executed:

#!/bin/bash
sed -n '1330,1380p' src/content/docs/reference/configuration.mdx

Repository: biomejs/website

Length of output: 1410


🏁 Script executed:

#!/bin/bash
sed -n '1360,1375p' src/content/docs/reference/configuration.mdx

Repository: biomejs/website

Length of output: 398


🏁 Script executed:

#!/bin/bash
grep -n "html.linter.enabled" src/content/docs/reference/configuration.mdx -A 3

Repository: biomejs/website

Length of output: 145


🏁 Script executed:

#!/bin/bash
sed -n '1469,1480p' src/content/docs/reference/configuration.mdx

Repository: biomejs/website

Length of output: 230


The caution overstates what's disabled by default—the linter is actually enabled.

The caution claims the HTML parser, formatter, and linter are disabled by default, but html.linter.enabled has a default of true (as does html.assist.enabled). Update the caution to reflect that only the parser and formatter are disabled by default.

Minor fix: "Javascript/Typescript" (line 1352) should be "JavaScript/TypeScript".

🤖 Prompt for AI Agents
In `@src/content/docs/reference/configuration.mdx` around lines 1341 - 1357,
Update the caution block text to accurately state that only the HTML parser and
formatter are disabled by default (not the linter); change the sentence that
currently reads "The HTML parser, formatter and linter are **disabled** by
default" to mention only "parser and formatter" and optionally note that
html.linter.enabled and html.assist.enabled default to true; also correct the
wording "Javascript/Typescript" to "JavaScript/TypeScript" in the description of
html.experimentalFullSupportEnabled and ensure the note about enabling
html.formatter.enabled remains intact.

@dyc3 dyc3 force-pushed the dyc3/clarify-html branch from 77bf275 to a68840e Compare January 17, 2026 16:23
@dyc3 dyc3 force-pushed the dyc3/clarify-html branch 2 times, most recently from 9d7958d to e751c45 Compare January 17, 2026 18:38
@dyc3 dyc3 force-pushed the dyc3/clarify-html branch from e751c45 to d949879 Compare January 17, 2026 19:51
@dyc3 dyc3 merged commit 22a94af into main Jan 17, 2026
6 of 9 checks passed
@dyc3 dyc3 deleted the dyc3/clarify-html branch January 17, 2026 21:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Unclear documentation regarding HTML support

2 participants