# File lib/pry/indent.rb, line 96
    def indent(input)
      output      = ''
      open_tokens = OPEN_TOKENS.keys
      prefix = indent_level

      input.lines.each do |line|
        tokens = CodeRay.scan(line, :ruby)
        tokens = tokens.tokens.each_slice(2) if tokens.respond_to?(:tokens) # Coderay 1.0.0

        before, after = indentation_delta(tokens)

        before.times{ prefix.sub! SPACES, '' }
        output += prefix + line.strip + "\n"
        prefix += SPACES * after
      end

      @indent_level = prefix

      return output.gsub(/\s+$/, '')
    end