diff --git a/lib/deface/dsl/loader.rb b/lib/deface/dsl/loader.rb index 80b2773..ec4d7c1 100644 --- a/lib/deface/dsl/loader.rb +++ b/lib/deface/dsl/loader.rb @@ -79,9 +79,12 @@ def self.extract_dsl_commands_from_erb(html_file_contents) end comment.gsub('', '').strip.scan(/[^\s"']+|"[^"]*"|'[^']*'/).each do |part| + ends_with_quote = dsl_commands =~ /('|")\z/ + starts_with_non_data_char = part =~ /\A[^\d:='"%]/ - dsl_commands =~ /('|")\z/ || part =~ /\A[^\d:='"%]/ ? dsl_commands << "\n" : dsl_commands << ' ' - dsl_commands << part + divider = ends_with_quote || starts_with_non_data_char ? "\n" : ' ' + + dsl_commands = [dsl_commands, divider, part].join('') end html_file_contents = html_file_contents.gsub(comment, '')