2017-01-25 7 views
1

Наверное, глупый вопрос, но как я могу сделать более сложные ifeval условия в asciidoctor?Сложные условия в ifeval :: [] в asciidoctor

Например

:x: (this is passed from maven POM) 

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

Несмотря на то, что написано в руководстве asciidoctor об условных операторов:

"Операторы следуют тем же правилам, как операторы в Ruby."

Это кажется "и", "или", "& &", "||" не являются частью правил?

Заранее спасибо.

ответ

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::[] 

Который я думаю немного неудобства.