Skip to content

Conversation

@foolip
Copy link
Member

@foolip foolip commented Feb 20, 2025

The new --bikeshed flag enables Bikeshed mode. The wattsi2bikeshed.js script converts the source from Wattsi to Bikeshed syntax.

The hardest part of this is ensuring that cross-references still resolve to the same thing. Wattsi's <span> and <i> for autolinks are converted to <a>, but changes to HTML itself will likely be needed for some cases where the data-x="" (with hyphens) is unambiguous but where Bikeshed's linking text (with spaces) is ambiguous and would require a for="" attribute.

What doesn't work:

  • Some cross-references as per above.
  • Some manual changes to HTML are still needed:
    https://github.com/whatwg/html/tree/bikeshed-experiment
  • Existing IDs aren't always preserved.
  • Simplification of HTML into Bikeshed shorthands like {{Node}}.
  • subdfn, which has no equivalent in Bikeshed.
  • Variants like the dev edition aren't properly supported.

@foolip
Copy link
Member Author

foolip commented Oct 29, 2025

Although this is far from complete, I'd like to add the experimental mode to html-build to make collaboration on it easier. At TPAC I'd like to demo how to use it (which is a lot easier if this is merged) and where people can help out if they're interested.

I'm happy to clean up some things if requested, I wrote this as an experiment and probably left a few weird things in that need explaining or removing.

@annevk
Copy link
Member

annevk commented Oct 30, 2025

Happy to rubber stamp this, but let's give @sideshowbarker and @zcorpan a chance to chime in as well.

@sideshowbarker
Copy link
Member

Happy to rubber stamp this

Same here. This is epic and it seems like it could go ahead and be landed — for the reasons Philip outlined in https://github.com/whatwg/html-build/pull/296#issuecomment-3464324423 — and any further work could be handled in follow-up PRs

@zcorpan
Copy link
Member

zcorpan commented Nov 3, 2025

I tried running this which worked. The output is broken (e.g. many cross-references don't work correctly), but that is as expected.

@zcorpan
Copy link
Member

zcorpan commented Nov 3, 2025

@foolip can you resolve merge conflicts?

The new --bikeshed flag enables Bikeshed mode. The wattsi2bikeshed.js
script converts the source from Wattsi to Bikeshed syntax.

The hardest part of this is ensuring that cross-references still resolve
to the same thing. Wattsi's <span> and <i> for autolinks are converted
to <a>, but changes to HTML itself will likely be needed for some cases
where the data-x="" (with hyphens) is unambiguous but where Bikeshed's
linking text (with spaces) is ambiguous and would require a for=""
attribute.

What doesn't work:

  - Some cross-references as per above.
  - Some manual changes to HTML are still needed:
    https://github.com/whatwg/html/tree/bikeshed-experiment
  - Existing IDs aren't always preserved.
  - Simplification of HTML into Bikeshed shorthands like {{Node}}.
  - subdfn, which has no equivalent in Bikeshed.
  - Variants like the dev edition aren't properly supported.
@foolip foolip force-pushed the bikeshed-experiment branch from fa185ea to ece38f7 Compare November 3, 2025 17:33
@foolip
Copy link
Member Author

foolip commented Nov 3, 2025

@zcorpan I've squashed everything into a single commit with a commit message describing the status, which I also put into the PR description.

@annevk do you also want to take a look or should I just merge this?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

5 participants