Можно ли по-человечески исправить проблемы с размером отступа без доступа к синтаксическому дереву?

Если спросить иначе, если я покажу вам этот файл маскированного кода, используя только ваш человеческий мозг, можно ли исправить проблемы с отступами, даже если вы знаете, что это отступ с двумя пробелами?

  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
   xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
     xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
    x
x

   xxxxxxxxxxxxxxxxxxxxxxxxxxx

У меня есть свои идеи, но я не хочу смещать ответ. Фактический исходный код и язык будут раскрыты после того, как я получу хорошую партию ответов. Не стесняйтесь опубликовать свое исправление в виде блока кода ниже.

Этот тест предполагает следующее:

  1. Вы понятия не имеете, на каком языке написан этот код.
  2. Все, что вы знаете, это то, сколько пробелов или табуляции приводит к первому символу каждой строки. В этом случае нет вкладок (только пробелы).
  3. Вы знаете, каким должен быть размер отступа. В этом случае 2 пробела.

Примечание: если это возможно с вашим человеческим мозгом, это должно быть возможно и с кодом, верно?

Бонусные очки (необязательно): как бы вы сломали логику для решения этой проблемы?

РЕДАКТИРОВАТЬ: Вот исходный код, из которого были созданы эти файлы:

function greet(firstName, lastName) {

    var firstName = prompt('What is your first name?');
    var lastName = prompt('Last name?');

    var fullName = firstName + ' ' + lastName;
    for (var i = 0; i < 10; i++) {
        console.log('Hello,', fullName + '!');
    }
}

greet(firstName, lastName);

1 ответ

Решение
 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

    xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
       xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

            xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
                x
            x

    xxxxxxxxxxxxxxxxxxxxxxxxxxx