Reputation: 29
This is my code
operator_prompt: >
What operation would you like to perform?
1) add
2) subtract
3) multiple
4) divide
This is my error message
/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>'
I don't know what the issue is. Looks like I used multi-line strings in YAML exactly as I should.
Upvotes: 1
Views: 557
Reputation: 76598
You should indent your folded multi-line scalar at least one position. And if you want to preserve the new lines in the scalar, use |
:
operator_prompt: |
What operation would you like to perform?
1) add
2) subtract
3) multiple
4) divide
Upvotes: 3