lib/twitter_cldr/utils/yaml.rb in twitter_cldr-3.0.0.beta1 vs lib/twitter_cldr/utils/yaml.rb in twitter_cldr-3.0.0

- old
+ new

@@ -208,11 +208,11 @@ ) u_sec = (obj.usec != 0) ? sprintf(".%.6d", obj.usec) : '' obj.strftime("%Y-%m-%d %H:%M:%S#{u_sec} #{off_hm}") when Symbol prefix = @options[:use_natural_symbols] && is_one_plain_line?(obj.to_s) ? ":" : "!ruby/symbol " - "#{prefix}#{emit_string(obj.to_s, level)}" + "#{prefix}#{emit_string(obj, level)}" when Range '!ruby/range ' + obj.to_s when Regexp '!ruby/regexp ' + obj.inspect else @@ -231,24 +231,29 @@ end end end def emit_string(str, level) - (is_string, is_printable, is_one_line, is_one_plain_line) = string_type(str) - if is_string - if is_printable - if is_one_plain_line - emit_simple_string(str, level) + if @options[:quote_all_strings] && !str.is_a?(Symbol) + emit_quoted_string(str, level) + else + str = str.to_s + (is_string, is_printable, is_one_line, is_one_plain_line) = string_type(str) + if is_string + if is_printable + if is_one_plain_line + emit_simple_string(str, level) + else + (is_one_line || str.length < @options[:minimum_block_length]) ? + emit_quoted_string(str, level) : + emit_block_string(str, level) + end else - (is_one_line || str.length < @options[:minimum_block_length]) ? - emit_quoted_string(str, level) : - emit_block_string(str, level) + emit_quoted_string(str, level) end else - emit_quoted_string(str, level) + emit_base64_binary(str, level) end - else - emit_base64_binary(str, level) end end def emit_simple_string(str, level) str \ No newline at end of file