asciid中的ifeval :: []中的复杂条件

时间:2017-01-25 20:02:39

标签: java maven asciidoc asciidoctor

可能是一个愚蠢的问题,但我怎样才能在asciidoctor中制造更复杂的ifeval条件?

例如

:x: (this is passed from maven POM)

ifeval::['{x}' != 'C2' or '{x}' != 'C3']
...
endif::[]

尽管它是在asciidoctor用户手册中写的关于条件运算符的:

  

"运算符遵循与Ruby中的运算符相同的规则。"

似乎"和","或","&&"," ||"不属于规则的一部分吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

事实证明,ifeval ::目前不支持这种情况 - > https://github.com/asciidoctor/asciidoctor/issues/1786

虽然ifdef和ifndef支持,但可以使用它,例如:

ifeval::[...]
:attr1:
endif::[]

ifeval::[...]
:attr2:
endif::[]

OR
ifdef::attr1,attr1[] 
...
endif::[]

AND
ifdef::attr1+attr1[] 
...
endif::[]

我觉得有些不便。