#907: CSS `text-spacing` property and its longhands

Visit on Github.

Opened Oct 10, 2023

Hello TAG!

I'm requesting a TAG review of CSS text-spacing property and their longhands.

This property is a shorthand for setting text-spacing-trim and text-autospace in a single declaration. They control the typographic behavior for Han-derived scripts, specifically Chinese and Japanese. Traditional Han-based Korean is also included but Hangul is usually not included.

  • Explainer¹ (minimally containing user needs and example code): url 1, 2
  • Specification URL: spec url
  • Tests: wpt folder(s) 1, 2
  • Security and Privacy self-review²: url
  • GitHub repo (if you prefer feedback filed there): url
  • Primary contacts (and their relationship to the specification):
    • @kojiishi (implementer), @clqsin45 (implementer), @bfgeek (implementer), @fantasai (spec editor), @frivoal (spec editor), @astearns (csswg char), @atanassov (csswg char)
  • Organization(s)/project(s) driving the specification: @fantasai, @frivoal
  • External status/issue trackers for this specification (publicly visible, e.g. Chrome Status):

Further details:

  • I have reviewed the TAG's Web Platform Design Principles
  • Relevant time constraints or deadlines: Chormium planning to start shipping incrementally, from M120
  • The group where the work on this specification is currently being done: CSSWG
  • The group where standardization of this work is intended to be done (if current group is a community group or other incubation venue): CSSWG
  • Major unresolved issues with or opposition to this specification: None
  • This work is being funded by: Blink implementation is being done by Google.

We'd prefer the TAG provide feedback as (please delete all but the desired option):

💬 leave review feedback as a comment in this issue and @-notify [@kojiishi (implementer), @clqsin45 (implementer), @bfgeek (implementer), @fantasai (spec editor), @frivoal (spec editor)]

Discussions

Comment by @torgo Oct 11, 2023 (See Github)

Hi @kojiishi we really need an explainer in order to execute a review. Thanks!

Comment by @kojiishi Oct 11, 2023 (See Github)

Updated.

Discussed Oct 16, 2023 (See Github)

Yves: explainer is a google doc... needs i18n review more than anything else. Syntax seems okay, painful to parse but should be deterministic

<blockquote> Hi @kojiishi thanks for that – we're reviewing this morning and largely happy with the proposed syntax. Can you also let us know more about the status of this work in the CSS working group and multi-browser support. Are there webkit and Mozilla standards positions on this? Can you also let us know about any W3C internationalization review if this has happened? </blockquote>
Comment by @torgo Oct 17, 2023 (See Github)

Hi @kojiishi thanks for that – we're reviewing this morning and largely happy with the proposed syntax. Can you also let us know more about the status of this work in the CSS working group and multi-browser support. Are there webkit and Mozilla standards positions on this? Can you also let us know about any W3C internationalization review if this has happened?

Comment by @kojiishi Oct 17, 2023 (See Github)

Can you also let us know more about the status of this work in the CSS working group

@frivoal @fantasai ?

and multi-browser support. Are there webkit and Mozilla standards positions on this?

WebKit said "text-spacing is something we’d like to start implementing soon", and Safari Technology Preview has a runtime flag. @nt1m might be able to provide more.

Mozilla standards-position #903 has a comment "yes" but I'm not sure if this is from a Mozilla's engineer. @jfkthame @masayukinakano ?

Can you also let us know about any W3C internationalization review if this has happened?

@r12a was involved in most of discussions for this property at CSSWG, and W3C Japanese Requirement Task Force (@kidayasuo chairs this TF) as well.

Comment by @frivoal Oct 23, 2023 (See Github)

Can you also let us know more about the status of this work in the CSS working group @frivoal @fantasai ?

The spec as a whole has yet to reach CR, which would indicate that the CSS-WG thinks it's done with it (unless further external feedback comes), so it is premature to claim stability on the whole feature set, and things are quite interconnected overall.

That said, for this particular part, I think we're getting close. I would expect some further tweaking of the details as we continue to iterate (see https://github.com/w3c/csswg-drafts/pull/9503, or https://github.com/w3c/csswg-drafts/issues/9423, or https://github.com/w3c/csswg-drafts/issues/8511 for instance), but I think the way the feature works overall, and its syntax in particular, are unlikely to change much going forward.

Discussed Nov 13, 2023 (See Github)

Yves: I don't have an issue with this - the main issue might be "why are we reviewing this now" - it's not early or horizontal so feels weird.

Peter: it's a CSS thing that isn't architectural...

Yves: syntax could be - part of the syntax could impact parsers...

Lea: one concern I have - often features added that only work in a single language... the name doesn't indicate that. It's a CJK specific thing... but sounds like a more genral thing. Maybe just that the explainer is focused on CJK?

Peter: that's useful feedback...

Dan: does florian think it's premature to review it or not..?

Yves: a bit premature becasue it's not stable enough to reach cr... but still it's pretty stable

Peter: at least one feature that also applies to french..

Rossen: and arabic

Peter: so not ideographic specific. Okay to close?

Rossen: i'm happy to close.

agreed to close 907, Yves to write closing comment

Comment by @ylafon Nov 16, 2023 (See Github)

We looked at this during our latest breakout, discussing the "generic" name of text-spacing-trim while it applies only to CJK, in contrast, text-autospace applies to more than the CJK context. Considering also the assessment of stability above, we are happy to close this issue.