I’m new to Ruby, and it really is fun. Right now, I’m playing with
YAML…
…but one part of yaml.rb doesn’t seem to work–it doesn’t seem to
recognize any % directives
(http://yaml.org/spec/current.html#id2523453) like “%YAML 1.1” or
“%TAG ! tag:blah.com,2007:”.
Why might it not be working?
I’m using Ubuntu Dapper, Ruby v1.8.4. The versions of yaml and syck
I’m using are the ones that came with Ruby/Ubuntu.
Thanks in advance,
Joshua Choi
(My test case is from the YAML 1.1 spec:
%TAG ! tag:clarkevans.com,2002:
— !shape
Use the ! handle for presenting
tag:clarkevans.com,2002:circle
- !circle
center: &ORIGIN {x: 73, y: 129}
radius: 7 - !line
start: *ORIGIN
finish: { x: 89, y: 102 } - !label
start: *ORIGIN
color: 0xFFEEBB
text: Pretty vector drawing.
And if I do this:
require ‘yaml’
dump = YAML.load(…what’s above…)
puts dump.to_yaml
…it prints:
“%TAG ! tag:clarkevans.com,2002”:
Apparently, it’s interpreting the top line as a string instead of a
directive; the rest of the document was cut off by the top “—”.
It works if the top line isn’t there or is below the “—”, and it
doesn’t work if there’s any line starting with “%” above “—” ; if
it’s below “—”, it gets interpreted as a string.)