uxml-preview 0.6.0 → 0.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,60 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.6.1 — 2026-10-16
4
+
5
+ Japanese and Chinese text, first. The Japanese and Simplified Chinese READMEs
6
+ are public, and the first defect their readers meet is a paragraph the browser
7
+ wraps inside a box measured as one line. Patch scope: three fixes, all measured
8
+ in Unity (6000.0.40f1, 6000.3.25f1) before any code changed.
9
+
10
+ ### Accuracy — previous and new figures
11
+
12
+ | Set | 0.6.0 | 0.6.1 | Why |
13
+ |---|---:|---:|---|
14
+ | Base coordinates (Unity 6000.0.40f1) | 660 / 676 | 660 / 676 | unchanged |
15
+ | Text cohort (Chromium vs Unity 6.3) | lines 60/60, height 52/60, width 60/60, boundary 79/80 | lines 92/92, height 84/92, width 92/92, line-break cases 157/159 | Noto Sans JP and SC with Japanese, Chinese and mixed sentences join the cohort (32 rows, all match), plus 64 boundary and 15 fixed-width wrap cases. The one new miss is kinsoku, below. Korean and English rows are unchanged |
16
+
17
+ ### Behavior changes
18
+
19
+ - **Han and Kana break between characters.** The default measurer split lines
20
+ at spaces only, so a Japanese or Chinese sentence was always one line while
21
+ the browser painted several. Hangul and Latin still break at spaces only
22
+ (measured: the Korean boundary cases pass on that rule). **Kinsoku is not
23
+ done** — it is not measured. Unity 6.3 draws one Chinese case at 60px in 8
24
+ lines where character breaking gives 7; a known difference in
25
+ `docs/accuracy.md`.
26
+ - **Rich text tags are warned.** Unity interprets them by default — with no
27
+ `enable-rich-text` attribute, exactly as with `"true"` (measured). The
28
+ preview draws them as characters, so an element whose text has one of the 35
29
+ tags in Unity's "Supported rich text tags" gets `unsupported-property`,
30
+ reason `not-rendered`, subject property `enable-rich-text` (value as written,
31
+ `''` when absent), `affectsLayout: true`. Not with
32
+ `enable-rich-text="false"`, where Unity draws the characters too, and not for
33
+ a tag Unity does not know (`<ruby>`).
34
+ - **`font-fallback` message names width for Han and Kana**: Unity's box
35
+ measured 6–87px narrower than this preview's, and the preview's width depends
36
+ on the device's fallback font. Message only; no field changes.
37
+
38
+ ### Consumers
39
+
40
+ - uxml-author: the rich-text warning lands in `layoutGaps` (`not-rendered` +
41
+ `affectsLayout`), so a UXML with interpreted tags exits 3 — intended, the
42
+ preview is incomplete there. No other change reaches `classify`.
43
+ - vscode-uxml-preview: grouped with the warnings whose layout may differ. No
44
+ fixture in either repository has Han, Kana or a rich text tag.
45
+
46
+ ### Tests
47
+
48
+ - The text cohort's (b) class hid the CJK defect: a line-count flip was
49
+ counted as a 1px width difference even when the preview kept text wider than
50
+ the box on one line. (b) now needs the preview's line count to agree with its
51
+ own natural width; wrap cases get no (b). Known differences live in
52
+ `tests/text-cohort/spec.json` `known` and fail the run when they start to
53
+ match.
54
+ - `paint.mjs` checks the 15 CJK wrap cases in a real browser.
55
+ - `ProbeDump.cs.txt` is now the dumper that writes FaceInfo, as the text cohort
56
+ README already said.
57
+
3
58
  ## 0.6.0 — 2026-10-16
4
59
 
5
60
  Diagnostics that say what Unity does instead, text measured the way Unity
package/README.ja.md CHANGED
@@ -19,7 +19,7 @@ UI Toolkit 自身が使用する Yoga エンジンを採用し、描画結果は
19
19
  ## 検証方法
20
20
 
21
21
  - **座標:** 完成画面1件を含む40個のレイアウトケースにおいて、要素の座標値 660 / 676 が Unity 6000.0.40f1 と一致しています。[すべての差異とその内訳 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md) 同じケースを Unity 6.3(6000.3.25f1)で再ダンプしたところ、同日に取得した 6000.0.40f1 のダンプとすべての配置が一致しました。[6.3 での再測定 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md#unity-63-lts-re-measurement-2026-10-15)
22
- - **テキスト:** 実際のブラウザで描画し、Unity 6000.3.25f1 と Label 単位で比較しました。行数 60 / 60、高さ 52 / 60、幅 60 / 60(誤差 1px または 1% 以内)。高さが異なるケースはすべて、ハングルを含まない欧文フォント Inter で韓国語、または韓国語と欧文が混在するテキストを指定したものです。Unity はこれをフォールバックフォントで描画しますが、本プレビューではまさにその状況を警告として通知します。[テキスト検証セット →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md#text-cohort-separate-set-measured-2026-10-16)
22
+ - **テキスト:** 実際のブラウザで描画し、Unity 6000.3.25f1 と Label 単位で比較しました。行数 92 / 92、高さ 84 / 92、幅 92 / 92(誤差 1px または 1% 以内)。高さが異なるケースはすべて、ハングルを含まない欧文フォント Inter で韓国語、または韓国語と欧文が混在するテキストを指定したものです。Unity はこれをフォールバックフォントで描画しますが、本プレビューではまさにその状況を警告として通知します。[テキスト検証セット →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md#text-cohort-separate-set-measured-2026-10-16)
23
23
  - **Unity バージョン:** 基準バージョンは Unity 6.3 LTS です。USS プロパティかどうかの判定は Unity 公式のプロパティ一覧(6.6 まで)に基づいており、6.7 は LTS になるまでサポート対象外です。[サポート範囲 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/supported.en.md)
24
24
  - **一致しない箇所は見過ごさず、警告として報告します。** 未サポートのコントロール・プロパティ・値は、その理由とともに(測定済みの場合は Unity 側が代わりにどう振る舞うかも含めて)警告として返されます。[警告について →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/api.en.md#warnings)
25
25
 
package/README.ko.md CHANGED
@@ -19,7 +19,7 @@
19
19
  ## 어떻게 확인했나
20
20
 
21
21
  - **좌표:** 완성된 화면 하나를 포함한 배치 케이스 40개에서, 요소 좌표 값 660 / 676이 Unity 6000.0.40f1과 같습니다. [다른 곳은 전부 이름을 붙여 적었습니다 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.md) 같은 케이스를 Unity 6.3(6000.3.25f1)에서 다시 덤프했더니, 같은 날 다시 뜬 6000.0.40f1 덤프와 배치가 모두 같았습니다. [6.3 재측정 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.md#unity-63-lts-재측정-2026-10-15)
22
- - **텍스트:** 실제 브라우저에서 그려 Unity 6000.3.25f1과 Label 단위로 대조했습니다. 줄 수 60 / 60, 높이 52 / 60, 너비 60 / 60(1px 또는 1% 이내). 높이가 다른 것은 모두 라틴 글꼴 Inter로 쓴 한글·혼합 문장입니다 — Inter에 한글이 없어 Unity가 대체 폰트로 그리고, 미리보기는 바로 그 경우에 경고합니다. [텍스트 코호트 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.md#텍스트-코호트-별도-검증-세트-2026-10-16-측정)
22
+ - **텍스트:** 실제 브라우저에서 그려 Unity 6000.3.25f1과 Label 단위로 대조했습니다. 줄 수 92 / 92, 높이 84 / 92, 너비 92 / 92(1px 또는 1% 이내). 높이가 다른 것은 모두 라틴 글꼴 Inter로 쓴 한글·혼합 문장입니다 — Inter에 한글이 없어 Unity가 대체 폰트로 그리고, 미리보기는 바로 그 경우에 경고합니다. [텍스트 코호트 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.md#텍스트-코호트-별도-검증-세트-2026-10-16-측정)
23
23
  - **Unity 버전:** 기준은 Unity 6.3 LTS입니다. USS 속성인지는 Unity 공식 속성표(6.6까지)로 판정하고, 6.7은 LTS가 나올 때까지 지원하지 않습니다. [지원 범위 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/supported.md)
24
24
  - **맞지 않는 곳은 조용히 넘기지 않고 경고로 알립니다.** 지원하지 않는 컨트롤·속성·값은 이유와 함께, 측정한 경우에는 Unity가 대신 어떻게 하는지까지 경고로 돌아옵니다. [경고 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/api.md#경고)
25
25
 
package/README.md CHANGED
@@ -19,7 +19,7 @@ all runs in the page.
19
19
  ## How it is verified
20
20
 
21
21
  - **Coordinates:** 660 / 676 element coordinate values identical to Unity 6000.0.40f1, over 40 layout cases including a complete screen. [Every difference, named →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md) Re-dumped on Unity 6.3 (6000.3.25f1), every one of those cases laid out exactly as in a 6000.0.40f1 dump taken the same day. [The 6.3 re-measurement →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md#unity-63-lts-re-measurement-2026-10-15)
22
- - **Text:** drawn in a real browser and compared with Unity 6000.3.25f1 Label by Label — line count 60 / 60, height 52 / 60, width 60 / 60 within 1px or 1%. Every height that differs is Korean or mixed text set in Inter, a Latin font with no Hangul, which Unity draws with a fallback font; the preview warns about exactly that. [The text cohort →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md#text-cohort-separate-set-measured-2026-10-16)
22
+ - **Text:** drawn in a real browser and compared with Unity 6000.3.25f1 Label by Label — line count 92 / 92, height 84 / 92, width 92 / 92 within 1px or 1%. Every height that differs is Korean or mixed text set in Inter, a Latin font with no Hangul, which Unity draws with a fallback font; the preview warns about exactly that. [The text cohort →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md#text-cohort-separate-set-measured-2026-10-16)
23
23
  - **Unity version:** the reference is Unity 6.3 LTS. A property is USS if Unity's official property table lists it, up to 6.6; 6.7 is not supported until it is an LTS. [What is supported →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/supported.en.md)
24
24
  - **What does not match is reported, not glossed over.** An unsupported control, property or value comes back as a warning that says why, and — where it was measured — what Unity does instead. [Warnings →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/api.en.md#warnings)
25
25
 
package/README.zh-CN.md CHANGED
@@ -19,7 +19,7 @@ Yoga 引擎负责布局,并与 Unity 实测结果进行了比对验证。**
19
19
  ## 验证方式
20
20
 
21
21
  - **坐标:** 在包含完整界面在内的 40 个布局用例中,660 / 676 个元素坐标值与 Unity 6000.0.40f1 完全一致。[查看全部差异明细 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md) 在 Unity 6.3(6000.3.25f1)中重新导出这批用例后,所有布局结果均与当天导出的 6000.0.40f1 结果一致。[6.3 重新测量结果 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md#unity-63-lts-re-measurement-2026-10-15)
22
- - **文本:** 在真实浏览器中绘制,并与 Unity 6000.3.25f1 逐个 Label 进行比对——行数 60 / 60、高度 52 / 60、宽度 60 / 60(误差在 1px 或 1% 以内)。所有高度存在差异的用例,均是使用了不含韩文字符的拉丁字体 Inter 来排版韩文或混排文本;此时 Unity 会改用回退字体绘制,而本预览工具会针对该情况发出明确警告。[文本测试集 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md#text-cohort-separate-set-measured-2026-10-16)
22
+ - **文本:** 在真实浏览器中绘制,并与 Unity 6000.3.25f1 逐个 Label 进行比对——行数 92 / 92、高度 84 / 92、宽度 92 / 92(误差在 1px 或 1% 以内)。所有高度存在差异的用例,均是使用了不含韩文字符的拉丁字体 Inter 来排版韩文或混排文本;此时 Unity 会改用回退字体绘制,而本预览工具会针对该情况发出明确警告。[文本测试集 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/accuracy.en.md#text-cohort-separate-set-measured-2026-10-16)
23
23
  - **Unity 版本:** 基准版本为 Unity 6.3 LTS。某项属性是否属于 USS,依据 Unity 官方属性表(截至 6.6)判定;6.7 在推出 LTS 版本之前暂不支持。[支持范围 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/supported.en.md)
24
24
  - **不一致之处会明确报告,绝不静默忽略。** 遇到不支持的控件、属性或值时,工具会返回警告并说明原因;对于已实测的情况,还会一并告知 Unity 的实际处理方式。[警告说明 →](https://github.com/ReuHomi/uxml-preview/blob/main/docs/api.en.md#warnings)
25
25