It was well documented in earlier posts that the ordering of Tie::IxHash was not preserved when serializing to YAML. It would be shocking if any of the CPAN YAML modules had special code to recognize an IxHash. Instead they just see it as a normal hash and proceed properly from there (ie. with freedom to sort keys). The solution has been presented above -- transform the IxHash into an array of hashes each containing a single key/value pair. That is a data structure that will work and answers the question posed by the OP.

All that remains is for some code to be written.

Still, a lot of code other than YAML::XS will ignore IxHash ordering...

use Data::Dump qw(pp); use Tie::IxHash; tie my(%hash), 'Tie::IxHash', (a => 1, c => 3, b => 2); pp \%hash;
Output:
{ # tied Tie::IxHash a => 1, b => 2, c => 3, }

In reply to Re^9: Keeping Order with YAML::XS (sort keys) by Loops
in thread Keeping Order with YAML::XS by walkingthecow

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.