Viewing File: /usr/share/doc/texinfo/html/_0040ifset-_0040ifclear.html

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This manual is for GNU Texinfo (version 6.7, 23 September 2019),
a documentation system that can produce both online information and a
printed manual from a single source using semantic markup.

Copyright (C) 1988, 1990, 1991, 1992, 1993, 1995, 1996, 1997,
1998, 1999, 2001, 2001, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Free Software
Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with no
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
Texts.  A copy of the license is included in the section entitled
"GNU Free Documentation License". -->
<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>@ifset @ifclear (GNU Texinfo 6.7)</title>

<meta name="description" content="@ifset @ifclear (GNU Texinfo 6.7)">
<meta name="keywords" content="@ifset @ifclear (GNU Texinfo 6.7)">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="texi2any">
<link href="index.html" rel="start" title="Top">
<link href="Command-and-Variable-Index.html" rel="index" title="Command and Variable Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="_0040set-_0040clear-_0040value.html" rel="up" title="@set @clear @value">
<link href="_0040inlineifset-_0040inlineifclear.html" rel="next" title="@inlineifset @inlineifclear">
<link href="_0040set-_0040value.html" rel="prev" title="@set @value">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en">
<span id="g_t_0040ifset-_0040ifclear"></span><div class="header">
<p>
Next: <a href="_0040inlineifset-_0040inlineifclear.html" accesskey="n" rel="next"><code>@inlineifset @inlineifclear</code></a>, Previous: <a href="_0040set-_0040value.html" accesskey="p" rel="prev"><code>@set @value</code></a>, Up: <a href="_0040set-_0040clear-_0040value.html" accesskey="u" rel="up"><code>@set @clear @value</code></a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Command-and-Variable-Index.html" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<span id="g_t_0040ifset-and-_0040ifclear"></span><h4 class="subsection">16.5.2 <code>@ifset</code> and <code>@ifclear</code></h4>

<span id="ifset-ifclear"></span><span id="index-ifset"></span>

<p>When a <var>flag</var> is set, the Texinfo formatting commands format text
between subsequent pairs of <code>@ifset <var>flag</var></code> and <code>@end
ifset</code> commands.  When the <var>flag</var> is cleared, the Texinfo formatting
commands do <em>not</em> format the text.  <code>@ifclear</code> operates
analogously.
</p>
<p>Write the conditionally formatted text between <code>@ifset <var>flag</var></code>
and <code>@end ifset</code> commands, like this:
</p>
<div class="example">
<pre class="example">@ifset <var>flag</var>
<var>conditional-text</var>
@end ifset
</pre></div>

<p>For example, you can create one document that has two variants, such as
a manual for a &lsquo;large&rsquo; and &lsquo;small&rsquo; model:
</p>
<span id="index-Shrubbery"></span>
<div class="example">
<pre class="example">You can use this machine to dig up shrubs
without hurting them.

@set large

@ifset large
It can also dig up fully grown trees.
@end ifset

Remember to replant promptly &hellip;
</pre></div>

<p>In the example, the formatting commands will format the text between
<code>@ifset large</code> and <code>@end ifset</code> because the <code>large</code>
flag is set.
</p>
<p>When <var>flag</var> is cleared, the Texinfo formatting commands do
<em>not</em> format the text between <code>@ifset <var>flag</var></code> and
<code>@end ifset</code>; that text is ignored and does not appear in either
printed or Info output.
</p>
<p>For example, if you clear the flag of the preceding example by writing
an <code>@clear large</code> command after the <code>@set large</code> command
(but before the conditional text), then the Texinfo formatting commands
ignore the text between the <code>@ifset large</code> and <code>@end ifset</code>
commands.  In the formatted output, that text does not appear; in both
printed and Info output, you see only the lines that say, &ldquo;You can use
this machine to dig up shrubs without hurting them.  Remember to replant
promptly &hellip;&rdquo;.
</p>
<span id="index-ifclear"></span>
<p>If a flag is cleared with a <code>@clear <var>flag</var></code> command, then
the formatting commands format text between subsequent pairs of
<code>@ifclear</code> and <code>@end ifclear</code> commands.  But if the flag
is set with <code>@set <var>flag</var></code>, then the formatting commands do
<em>not</em> format text between an <code>@ifclear</code> and an <code>@end
ifclear</code> command; rather, they ignore that text.  An <code>@ifclear</code>
command looks like this:
</p>
<div class="example">
<pre class="example">@ifclear <var>flag</var>
</pre></div>


<hr>
<div class="header">
<p>
Next: <a href="_0040inlineifset-_0040inlineifclear.html" accesskey="n" rel="next"><code>@inlineifset @inlineifclear</code></a>, Previous: <a href="_0040set-_0040value.html" accesskey="p" rel="prev"><code>@set @value</code></a>, Up: <a href="_0040set-_0040clear-_0040value.html" accesskey="u" rel="up"><code>@set @clear @value</code></a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Command-and-Variable-Index.html" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>
Back to Directory File Manager