class Haml::Buffer

def push_text(text, tab_change, dont_tab_up)

Parameters:
  • dont_tab_up (Boolean) -- If true, don't indent the first line of `text`
  • tab_change (Fixnum) -- The number of tabs by which to increase
  • text (String) -- The text to append
def push_text(text, tab_change, dont_tab_up)
  if @tabulation > 0
    # Have to push every line in by the extra user set tabulation.
    # Don't push lines with just whitespace, though,
    # because that screws up precompiled indentation.
    text.gsub!(/^(?!\s+$)/m, tabs)
    text.sub!(tabs, '') if dont_tab_up
  end
  @buffer << text
  @real_tabs += tab_change
end