mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-06-14 18:04:58 +03:00
fix(form-decompile): whitespace-заголовок реквизита (Get-LangTextWS) — кластер Attribute>Title
Реквизит формы с whitespace-only <Title> (<v8:content> </v8:content>, одиночный пробел) терялся: декомпилятор читал заголовок через Get-LangText, а PreserveWhitespace=false стрипал пробел → "" (= суппресс-маркер «нет заголовка») → компилятор не эмитил Title. Фикс: Get-LangText → Get-LangTextWS (существующий хелпер, восстанавливает значимый пробел — как уже сделано для UsualGroup Title/ToolTip). Декомпилятор-only: компилятор " "-заголовок уже умеет (прецедент групп). Для непустого/мультиязык-контента поведение не меняется (Get-LangTextWS == Get-LangText). Корпус 8.3.24: 13 whitespace-заголовков реквизита в 10 формах. Кластер Attribute>Title (impact 42) был раздут harness-мис-атрибуцией: одна реальная потеря на форму, а generic строки-обёртки (<Title>/<v8:item>/<v8:lang>ru) сыпались ложным LOST под соседними реквизитами. Выборка 5 форм: match 0→5, TOTAL→0. Регресс 43/43. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
# form-decompile v0.122 — Decompile 1C managed Form.xml to JSON DSL (draft)
|
||||
# form-decompile v0.123 — Decompile 1C managed Form.xml to JSON DSL (draft)
|
||||
# Source: https://github.com/Nikolay-Shirokov/cc-1c-skills
|
||||
# ВНИМАНИЕ: раундтрип не гарантируется. Навык исключён из авто-использования моделью.
|
||||
param(
|
||||
@@ -2592,7 +2592,7 @@ if ($attrsNode) {
|
||||
$isMain = ($ao['main'] -eq $true) # именно true; main:false (суппресс-маркер) → не-main для Title
|
||||
$tNode = $a.SelectSingleNode("lf:Title", $ns)
|
||||
if ($tNode) {
|
||||
$t = Get-LangText $tNode
|
||||
$t = Get-LangTextWS $tNode # восстановление значимого пробела (whitespace-заголовок реквизита)
|
||||
if ($null -ne $t) {
|
||||
if ($isMain -or -not ($t -is [string]) -or $t -ne (Title-FromName $ao['name'])) { $ao['title'] = $t }
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user