Вопрос в условие
// Преобразует конструкцию вопрос в условие и наоборот(Кт+Ш)
Если (Окна.Класс()="V8TopLevelFrame") Тогда
Нажать(Клавиши.Кт|Клавиши.С);
СтрокаБуфера = Буфер.Текст;
НовыйТекст = Слова.Массив();
// в начало получаемого текста добавим отступы
Текст = Слова.Массив(СтрокаБуфера);
Если (Текст.Количество()=0) Тогда Возврат 0; Конец;
п = 0;
Пока (п<Текст.Количество()) Цикл
Если (Слова.Пустое(Текст.Получить(п))=0) Тогда Прервать; Конец;
НовыйТекст.Добавить(Текст.Получить(п));
п = п + 1;
Конец;
Текст = Слова.Массив(СтрокаБуфера, 1); // теперь анализируем полученный текст без пустых слов
Если (Текст.Количество()=0) Тогда Возврат 0; Конец;
Если (Текст.Найти("Если")>=0) Тогда
п0 = Текст.Найти("Если");
п1 = Текст.Найти("Тогда"); Если (п1=-1) Тогда Возврат; Конец;
п2 = Текст.Найти("=", п1+1, 1); Если (п2=-1) Тогда Возврат; Конец;
п3 = Текст.Найти("Иначе", п2+1, 1); Если (п3=-1) Тогда Возврат; Конец;
п4 = Текст.Найти("=", п3+1, 1); Если (п4=-1) Тогда Возврат; Конец;
п5 = Текст.Найти("КонецЕсли", п4+1, 1); Если (п5=-1) Тогда Возврат; Конец;
НовыйТекст.Добавить(Текст, п1+1, п2);
НовыйТекст.Добавить("?(");
НовыйТекст.Добавить(Текст, п0+1, п1-1);
НовыйТекст.Добавить(",");
НовыйТекст.Добавить(Текст, п2+1, п3-3);
НовыйТекст.Добавить(",");
НовыйТекст.Добавить(Текст, п4+1, п5-3);
НовыйТекст.Добавить(");");
НовыйТекст.Убрать(Слова.Перенос);
Иначе
п0 = Текст.Найти("?");
п1 = Текст.Найти("("); Если (п1=-1) Тогда Возврат; Конец;
п2 = Текст.Найти(",", п1+1, 1); Если (п2=-1) Тогда Возврат; Конец;
п3 = Текст.Найти(",", п2+1, 1); Если (п3=-1) Тогда Возврат; Конец;
п4 = Текст.Найти(")", п3+1, 1); Если (п4=-1) Тогда Возврат; Конец;
НовыйТекст.Добавить("Если");
НовыйТекст.Добавить(Текст, п1, п2-1);
НовыйТекст.Добавить(")");
НовыйТекст.Добавить("Тогда");
НовыйТекст.Добавить(Слова.Перенос);
п = 0;
Пока (п<п0) Цикл
НовыйТекст.Добавить(Текст.Получить(п));
п = п + 1;
Конец;
НовыйТекст.Добавить(Текст, п2+1, п3-1);
НовыйТекст.Добавить(";");
НовыйТекст.Добавить(Слова.Перенос);
НовыйТекст.Добавить("Иначе");
НовыйТекст.Добавить(Слова.Перенос);
п = 0;
Пока (п<п0) Цикл
НовыйТекст.Добавить(Текст.Получить(п));
п = п + 1;
Конец;
НовыйТекст.Добавить(Текст, п3+1, п4-1);
НовыйТекст.Добавить(";");
НовыйТекст.Добавить(Слова.Перенос);
НовыйТекст.Добавить("КонецЕсли");
НовыйТекст.Добавить(";");
НовыйТекст.Добавить(Слова.Перенос);
Конец;
Буфер.Текст = Слова.Строка(НовыйТекст, 1);
Нажать(Клавиши.Кт|Клавиши.М);
Конец;