def visit_comment(node)
value = interp_to_src(node.value)
content = if @format == :sass
content = value.gsub(/\*\/$/, '').rstrip
if content =~ /\A[ \t]/
content.gsub!(/^/, ' ')
content.sub!(/\A([ \t]*)\/\*/, '/*\1')
end
content =
unless content.include?("\n")
content
else
content.gsub!(/\n( \*|\/\/)/, "\n ")
spaces = content.scan(/\n( *)/).map {|s| s.first.size}.min
sep = node.type == :silent ? "\n//" : "\n *"
if spaces >= 2
content.gsub(/\n /, sep)
else
content.gsub(/\n#{' ' * spaces}/, sep)
end
end
content.gsub!(/\A\/\*/, '//') if node.type == :silent
content.gsub!(/^/, tab_str)
content.rstrip + "\n"
else
spaces = (@tab_chars * [@tabs - value[/^ */].size, 0].max)
content = if node.type == :silent
value.gsub(/^[\/ ]\*/, '//').gsub(/ *\*\/$/, '')
else
value
end.gsub(/^/, spaces) + "\n"
content
end
content.sub!(%r{^\s*(/\*)}, '/*!') if node.type == :loud
content
end