Indent your code according to Fibonacci Okay, so I saw this in a meme and decided it'd be the perfect code golf challenge:
I prefer to increase the side of my indents according to the Fibonacci sequence:
class Kls
 def method
  t = Time.now
  if t.hour &gt;= 12
    puts &quot;It's afternoon&quot;
    if t.hour == 18
       puts &quot;It's time for your meal of:&quot;
       %w(bread sausage brocolli milk).each do |food|
            &quot;Some #{food}&quot;
       end
    end
  else
    puts &quot;It's not afternoon&quot;
  end
 end
end 

This means each line is indented by the sum of the spaces indented in the previous indentation-level. The first indention-level is indented by one space, then subsequent indention-levels are indented by 1, 2, 3, 5, 8, 13, 21, etc additional spaces.
The challenge
Given a multi-line string with multiples of 2 spaces as indentation, convert it to a Fibonacci indented multi-line string instead.
This means every line with 0 indented spaces will remain 0 spaces; every line with 2 indented spaces will become 1 instead (sum of the first two Fibonacci numbers 0+1 = 1); every line with 4 indented spaces will becomes 2 instead (sum of the first three Fibonacci numbers 0+1+1 = 2); etc. So the number of indentations can be calculated as follows:

Get the current amount of leading spaces (guaranteed to be a multiple of 2, so [0,2,4,6,8,...])
Divide this by 2, so we have our 0-indexed numbers (let's call it n)
Get the first [0,n] (0-indexed) Fibonacci numbers
Sum that sub-sequence together, and use that amount of leading spaces instead in the output

For example, for the output above, the input would have been:
class Kls
  def method
    t = Time.now
    if t.hour &gt;= 12
      puts &quot;It's afternoon&quot;
      if t.hour == 18
        puts &quot;It's time for your meal of:&quot;
        %w(bread sausage brocolli milk).each do |food|
          &quot;Some #{food}&quot;
        end
      end
    else
      puts &quot;It's not afternoon&quot;
    end
  end 
end

If we take a look at the line containing &quot;Some #{food}&quot;:
In the input it has 10 amount of leading spaces, so n will be 10/2 = 5. The first [0,5] Fibonacci numbers are: [0,1,1,2,3,5]. When we take the sum of that list (0+1+1+2+3+5) the new amount of leading spaces in the output would be 12.
The amount of indented spaces in the output for every 2 indented spaces in the input will be [0, 1, 2, 4, 7, 12, 20, 33, 54, 88, ...] A000071 on oeis.org (except for the first 0).
Challenge rules:

The space-indentation of the input is guaranteed to be multiples of 2 ([0,2,4,6,8,...])
The input is guaranteed to not contain more than 1 consecutive space elsewhere (except for the leading indentation of course)
Use whatever language you like
Please include a link to an online interpreter
Input should be a multi-line string (so no, string-lists/arrays aren't allowed)
Output should also be a multi-line string (either printed or returned as string)
Your method should work for deeper-indented Fibonacci indented multi-line strings than the example
This is code-golf, so try to do it in the fewest bytes possible.

Additional test cases:
Input:
this
  is
    one
      of
        the
          tests
            !

Output:
this
 is
  one
    of
       the
            tests
                    !

Input:
      And
  how
               about
        this ?

Output:
    And
 how
                                 about
       this ?

Input:
                    20 spaces?

Output:
                                                                                                                                               20 spaces?
05AB1E (legacy), 22 21 bytes

|εDgsðÛ©g-;LÅfOð*®J}»


Try it online.

21 bytes alternative using the formula \$Fib(\frac{n}{2}+2)-1\$ instead of \$\sum_{i=1}^{i=\frac{n}{2}}{Fib(i)}\$ :
(Credit to @JonathanAllan's Jelly answer for this formula.)

|εDgsðÛ©g-;ÌÅf&lt;ð*®J}»


Try it online.

Explanation:



|                        # Take the input split by newlines
 ε                  }    # Map each line to:
  Dg                     #  Duplicate the line and take its length
    s                    #  Swap so the duplicated line is at the top of the stack again
     ðÛ                  #  Remove all leading spaces
       ©                 #  Store the result in the register (without popping)
        g                #  Take its length as well
         -               #  Subtract both lengths from each other
          ;              #  Halve it, because they are multiples of 2 indented spaces
           L             #  Create a list in the range [1, n]
            Åf           #  Get the i'th Fibonacci number for each
              O          #  And sum them together
               ð*        #  Have that many space characters
                 ®J      #  And join them with the saved string from the register
                    »    # And finally print the mapped list with new-lines