Open main menu

Changes

1,929 bytes added ,  23:52, 8 September 2023
Added another example
See {{Reference|name=doif...|attributes=}} * <tt>\doifnextcharelse</tt>* <tt>\doifundefined</tt>, <tt>\doifdefined</tt>, etc.* <tt>\doif</tt>, <tt>\doifnot</tt>, <tt>\doifelse</tt>* <tt>\doifempty</tt>, <tt>\doifnotempty</tt>, <tt>\doifemptyelse</tt>* <tt>\doifinset</tt>, <tt>\doifnotinset</tt>, <tt>\doifnotinsetelse</tt>* <tt>\doifcommon</tt>, <tt>\doifnotcommon</tt>, <tt>\doifcommonelse</tt>* <tt>\doifsamestringselse</tt>,<tt>\doifsamestring</tt>,<tt>\doifnotsamestring</tt>* <tt>\doifinstringelse</tt>,<tt>\doifincsnameelse</tt>* <tt>\doifnumberelse</tt>* <tt>\doifassignmentelse</tt>* <tt>\doiftext</tt>, <tt>\doiftextelse</tt> — empty string* <tt>\doifrightpageelse</tt> (precede by {{cmd|signalrightpage}})* {{cmd|doifdocumentargument}}* <tt>{{cmd|doifelseindented}}</tt> (LMTX only) == Examples ===== Example 1: Date Macro ===<context mode="mkiv" source="yes">\startTEXpage[offset=5mm] %--- Commands Needed %\setvariable{NAME}{KEY}{VALUE} => \getvariable{NAME}{KEY} %\defineexpandable[n] %\doifnumberelse{TEXT}{TRUE_CASE}{FALSE_CASE}  \defineexpandable[http1]\notToday{% \start\dorecurse{#1}{\increment\normalday}\currentdate\stop% }% \defineexpandable\Date{% \doifnumberelse{\getvariable{Document}{Date}}{\notToday{\getvariable{Document}{Date}}}{\currentdate}% }%  \setvariable{Document}{Date}{today}  Today is \Date. \setvariable{Document}{Date}{7} In a week will be \Date.\stopTEXpage</context> === Example 2:Using Lua ===We can also write tests using Lua. (Example by WS, 3//wiki2011.) <context mode="mkiv" source="yes">\startTEXpage \ctxlua{test = true} Test is \ctxlua{commands.doifelse(test)}{True}{False}. \ctxlua{test = false}  Test is \ctxlua{commands.contextgardendoifelse(test)}{True}{False}.net\stopTEXpage</System_Macroscontext> == See also == [[System Macros/Branches_and_DecisionsBranches and Decisions|Branches and Decisions]] == Help from ConTeXt-Mailinglist/Forum ==All issues with:{{Forum|{{SUBPAGENAME}}}} [[Category:Command/Internals|doif...]]
194

edits