在YAML中,我不断收到以下关于多行字符串的错误消息:

在YAML中,我不断收到以下关于多行字符串的错误消息:,yaml,Yaml,这是我的代码 operator_prompt: > What operation would you like to perform? 1) add 2) subtract 3) multiple 4) divide /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:377:in `parse': (calculator_messages.yml): could not find expected ':' while

这是我的代码

operator_prompt: > 
What operation would you like to perform? 
1) add 
2) subtract 
3) multiple
4) divide
/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:377:in `parse': (calculator_messages.yml): could not find expected ':' while scanning a simple key at line 14 column 1 (Psych::SyntaxError)
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:377:in `parse_stream'
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:325:in `parse'
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:252:in `load'
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:471:in `block in load_file'
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:471:in `open'
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:471:in `load_file'
        from calculator.rb:2:in `<main>'
这是我的错误消息

operator_prompt: > 
What operation would you like to perform? 
1) add 
2) subtract 
3) multiple
4) divide
/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:377:in `parse': (calculator_messages.yml): could not find expected ':' while scanning a simple key at line 14 column 1 (Psych::SyntaxError)
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:377:in `parse_stream'
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:325:in `parse'
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:252:in `load'
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:471:in `block in load_file'
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:471:in `open'
        from /usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:471:in `load_file'
        from calculator.rb:2:in `<main>'
/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:377:in'parse':(calculator_messages.yml):在扫描第14行第1列的简单键时找不到预期的“:”(psych::SyntaxError)
from/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:377:in'parse_stream'
from/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:325:in'parse'
from/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:252:in'load'
from/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:471:in'block in load_file'
from/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:471:in'open'
from/usr/local/rvm/rubies/ruby-2.3.0/lib/ruby/2.3.0/psych.rb:471:in'load_file'
来自计算器。rb:2:in`'

我不知道是什么问题。看起来我在YAML中使用了多行字符串,这与我应该使用的完全一样。

您应该将折叠的多行标量缩进至少一个位置。如果要保留标量中的新行,请使用

operator_prompt: | 
  What operation would you like to perform? 
  1) add 
  2) subtract 
  3) multiple
  4) divide