From 53d8c89f98687bd5341eef4c392e22f8f4c837a2 Mon Sep 17 00:00:00 2001 From: Asko Kauppi Date: Sat, 12 Dec 2020 15:02:23 +0200 Subject: [PATCH] Suggestion for commenting out HTML attributes --- text/.images/attribute-comments-sample.png | Bin 0 -> 40509 bytes text/0000-attribute-comments.md | 159 +++++++++++++++++++++ 2 files changed, 159 insertions(+) create mode 100644 text/.images/attribute-comments-sample.png create mode 100644 text/0000-attribute-comments.md diff --git a/text/.images/attribute-comments-sample.png b/text/.images/attribute-comments-sample.png new file mode 100644 index 0000000000000000000000000000000000000000..7d0ccc73d02f48559cc2c3492a5ee7881b241ea3 GIT binary patch literal 40509 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 +``` + +The current implementation (Svelte 3.31.0) passes the `//on:some` tag to Rollup, which breaks the build: + +``` +[rollup] [!] (plugin svelte) ParseError: Expected > +[rollup] app/App.svelte +[rollup] 150: x={x} y={y} +[rollup] 151: bind:m={ matrices[i] } +[rollup] 152: //on:some +[rollup] ^ +[rollup] 153: {validate} +[rollup] 154: {onBan} +``` + +## Motivation + +Comments are commonplace in programming but not allowed by the XML syntax, within a tag. Svelte, being a compiler, could extend the syntax by allowing them and simply remove such lines from the text passed on to Rollup. + +The proposal is: + +- Within a tag + - if a line matches `^\s*\/\/.*$` regex (starts with white space, followed by `//` + - such line is replaced by an empty line (to keep line numbering unchanged) + +Sample: + +``` + +``` + +Use cases: + +- one wants to temporarily disable an attribute +- reminder that something needs to be done, in the future + + +### Prior discussions + +Prior to making this RFC, I mentioned the idea at the [Svelte Discord](https://discord.com/channels/457912077277855764/653341885674553345/786609908807499796) and got two favourable comments, so decided to push further. + +>I second your idea @asko ...I find myself wanting to do this often :slight_smile: + +>me too, it's kinda annoying to move the property to other line and comment it and then put it back to where it was when I want to uncomment it. + + +### Why not proper end-of-line comments? + +The author feels that the beginning whitespace + `//` is good enough to cover all current real world use cases. Proper end-of-line comments would allow eg. `a=12 // 12 = 4*3` but attributes rarely need commenting like that. It is, instead, the disable/enable use case that is leading this RFC. + +### Why `//`? + +XML itself does not sport an end-of-line comment syntax. + +`//` should be intuitive from JavaScript and (as we have seen in the summary) it does not break existing working code, since Rollup builds choke on it. + +`#` (bash, Makefile) is already being used for something else. + +`--` (Lua) is suggested in the [style properties RFC](https://github.com/sveltejs/rfcs/blob/master/text/0000-style-properties.md) for other purposes. + + +## Detailed design + +The implementation would be a single-line-ish change in the Svelte parser. + +The larger implications are with the ecosystem: Svelte syntax highlighters (VS Code, WebStorm et.al.) should eventually render such within-tag lines as comments. The author is not aware, whether the Svelte parser is used by these highlighters (easy to change) or whether they implement their own (takes longer). + +### Early prototyping + +One could try to make custom highlighting rules for WebStorm, to dim down the suggested lines. + +One could do a filter to Svelte parsing (if there is support for such?), to make an early implemantation of this RFC. + + +## How we teach this + +Adding `//` to the beginning of attributes seems intuitive to web developers so they might just find it to work, at least if IDE syntax highlighting supports it. + +However, since this would be a non-standard HTML feature, it likely deserves to be mentioned in the docs, maybe between [HTML tags](https://svelte.dev/tutorial/html-tags). + +Sample text: + +>Svelte allows you to disable/enable HTML attributes by preceding them with `//`. Such lines are ignored. [Next] + +For existing users, a notice in the [Changelog](https://github.com/sveltejs/svelte/blob/master/CHANGELOG.md) should do, since it's a non-breaking change. + + +## Drawbacks + +It feels wrong to make XML (HTML) do dance steps it doesn't otherwise do. + +This kind of changes can be seen as further distancing Svelte from the HTML/CSS/JS knowledge base, and that may not be a good thing. + +However, it's mostly (intended to be) a development-level feature. This is the author's only objection, and therefore the RFC, to have a discussion and decision, whether this is aligned with Svelte's general trajectory. + + +## Alternatives + +### Use of current HTML commenting (after tag) + +``` + + + +``` + +The context of such lines is lost, and seems confusing. It can be done, but requires a team convention to know that comments after a tag refer to the tag attributes. + +### Preceding attributes with `__` or `--` + +This passes Rollup builds, unlike `//`. + +``` + +``` + +Pros: + +- already works; no changes to Svelte needed + +Cons: + +- no additional explanation at the end of line can be made +- the attributes are just renamed - they are still there in build output. So this is not really commenting. + +### Prior art + +The author is not aware of preceding art that introduces within-HTML-tag commenting. References to such are a welcome addition. + + +## Unresolved questions + +> Optional, but suggested for first drafts. What parts of the design are still TBD?