mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-09-20 17:25:52 +03:00
fix(cfe-patch-method,cfe-diff,cfe-validate): Или в таблице ключевых слов
Пара And/И в таблице была, а Or/Или — нет: при снятии пар с таблицы строк платформы односимвольные слова отсеял фильтр длины, и пропуск не бросался в глаза. Сегодня кода, который эмитирует Или, нет (условия собираются только из НЕ и И), так что дефекта это не давало, но таблица — единственное место правды о языке, и дыра в ней ждала своего часа. Заодно подписано, почему отрицание эмитируется как "НЕ": платформа пишет "Не", язык регистронезависим, а смена регистра сдвинула бы все эталоны. Val, Insert/EndInsert и Delete/EndDelete перепроверены на платформе, а не по дампу бинарника: их английские написания в таблице строк не видны из-за склейки одинаковых литералов. Оракул — проверка применимости расширения: Val Item и Знач Item платформа считает одним списком параметров, блоки #Delete/#EndDelete принимает, а подсунутый #Deletee отвергает («Ожидается оператор препроцессора»). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
d809029b8b
commit
c32b82f72d
@@ -1309,7 +1309,9 @@ function Get-BslKeywords {
|
||||
Func="Функция"; EndFunc="КонецФункции"; Val="Знач"
|
||||
Region="Область"; EndRegion="КонецОбласти"
|
||||
If="Если"; Then="Тогда"; ElsIf="ИначеЕсли"; Else="Иначе"; EndIf="КонецЕсли"
|
||||
And="И"; Not="НЕ"
|
||||
# Platform spells the negation "Не"; we emit "НЕ" as this skill always has —
|
||||
# the language is case-insensitive, and the lower case would churn every snapshot.
|
||||
And="И"; Or="Или"; Not="НЕ"
|
||||
Insert="Вставка"; EndInsert="КонецВставки"; Delete="Удаление"; EndDelete="КонецУдаления"
|
||||
Before="Перед"; After="После"; Around="Вместо"; Control="ИзменениеИКонтроль"
|
||||
Proceed="ПродолжитьВызов"; Return="Возврат"
|
||||
@@ -1323,7 +1325,7 @@ function Get-BslKeywords {
|
||||
Func="Function"; EndFunc="EndFunction"; Val="Val"
|
||||
Region="Region"; EndRegion="EndRegion"
|
||||
If="If"; Then="Then"; ElsIf="ElsIf"; Else="Else"; EndIf="EndIf"
|
||||
And="And"; Not="Not"
|
||||
And="And"; Or="Or"; Not="Not"
|
||||
Insert="Insert"; EndInsert="EndInsert"; Delete="Delete"; EndDelete="EndDelete"
|
||||
Before="Before"; After="After"; Around="Around"; Control="ChangeAndValidate"
|
||||
Proceed="ProceedWithCall"; Return="Return"
|
||||
|
||||
@@ -37,7 +37,9 @@ def bsl_keywords():
|
||||
"Func": "Функция", "EndFunc": "КонецФункции", "Val": "Знач",
|
||||
"Region": "Область", "EndRegion": "КонецОбласти",
|
||||
"If": "Если", "Then": "Тогда", "ElsIf": "ИначеЕсли", "Else": "Иначе", "EndIf": "КонецЕсли",
|
||||
"And": "И", "Not": "НЕ",
|
||||
# Platform spells the negation "Не"; we emit "НЕ" as this skill always has —
|
||||
# the language is case-insensitive, and the lower case would churn every snapshot.
|
||||
"And": "И", "Or": "Или", "Not": "НЕ",
|
||||
"Insert": "Вставка", "EndInsert": "КонецВставки", "Delete": "Удаление", "EndDelete": "КонецУдаления",
|
||||
"Before": "Перед", "After": "После", "Around": "Вместо", "Control": "ИзменениеИКонтроль",
|
||||
"Proceed": "ПродолжитьВызов", "Return": "Возврат",
|
||||
@@ -51,7 +53,7 @@ def bsl_keywords():
|
||||
"Func": "Function", "EndFunc": "EndFunction", "Val": "Val",
|
||||
"Region": "Region", "EndRegion": "EndRegion",
|
||||
"If": "If", "Then": "Then", "ElsIf": "ElsIf", "Else": "Else", "EndIf": "EndIf",
|
||||
"And": "And", "Not": "Not",
|
||||
"And": "And", "Or": "Or", "Not": "Not",
|
||||
"Insert": "Insert", "EndInsert": "EndInsert", "Delete": "Delete", "EndDelete": "EndDelete",
|
||||
"Before": "Before", "After": "After", "Around": "Around", "Control": "ChangeAndValidate",
|
||||
"Proceed": "ProceedWithCall", "Return": "Return",
|
||||
|
||||
Reference in New Issue
Block a user