如何将YAML 1.1转换为YAML 1.2?

如何将YAML 1.1转换为YAML 1.2?,yaml,Yaml,我想将YAML 1.1文档提供给(基本上)符合YAML 1.2的解析器。如何转换输入,以便解析器正确解释输入 CLI工具会很有帮助,或者一些代码可以转换成CLI工具。这取决于这是关于YAML语法还是模式。也许你应该澄清你到底有什么问题。 我在这里猜 如果是关于语法:我认为没有多少YAML处理器能够区分YAML 1.1和1.2语法。 它们要么较旧并实现1.1,要么较新并为1.2编写。 两个版本之间在语法方面的差异不大,在现实世界中可能没有那么多用例,这一点很重要 如果是关于模式的,您可能希望将y

我想将YAML 1.1文档提供给(基本上)符合YAML 1.2的解析器。如何转换输入,以便解析器正确解释输入


CLI工具会很有帮助,或者一些代码可以转换成CLI工具。

这取决于这是关于YAML语法还是模式。也许你应该澄清你到底有什么问题。 我在这里猜

如果是关于语法:我认为没有多少YAML处理器能够区分YAML 1.1和1.2语法。 它们要么较旧并实现1.1,要么较新并为1.2编写。 两个版本之间在语法方面的差异不大,在现实世界中可能没有那么多用例,这一点很重要


如果是关于模式的,您可能希望将
yes
之类的内容转换为
true

我最近启动了一个名为
yaml schema convert
的工具。你可以在这里找到它:

它可以为您进行转换。然而,它并不完整。例如,它不识别时间戳

它是用perl编写的,由于模块()还没有出现在许多发行版中,您可能需要从CPAN安装它

在debian上,这将是:

apt-get install cpanminus
cpanm YAML::PP
cpanm Getopt::Long::Descriptive
cd yamlpp-tools
perl bin/yamlpp-schema-convert < file.yaml
apt get install cpanminus
cpanm YAML::PP
cpanm Getopt::Long::描述性
cd yamlpp工具
perl-bin/yamlpp模式转换

如果有用的话,我会很高兴得到反馈。

我记得YAML 1.2是JSON的超集。因此,我可以使用YAML-to-JSON转换器来预处理我的输入。根据您的文件,这可能无法满足您的需要。现有转换器可能无法正确实现所有类型。