<!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>Variables Commands (GNU Texinfo 6.7)</title>
<meta name="description" content="Variables Commands (GNU Texinfo 6.7)">
<meta name="keywords" content="Variables Commands (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="Def-Cmds-in-Detail.html" rel="up" title="Def Cmds in Detail">
<link href="Typed-Functions.html" rel="next" title="Typed Functions">
<link href="Functions-Commands.html" rel="prev" title="Functions Commands">
<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="Variables-Commands"></span><div class="header">
<p>
Next: <a href="Typed-Functions.html" accesskey="n" rel="next">Typed Functions</a>, Previous: <a href="Functions-Commands.html" accesskey="p" rel="prev">Functions Commands</a>, Up: <a href="Def-Cmds-in-Detail.html" accesskey="u" rel="up">Def Cmds in Detail</a> [<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="Variables-and-Similar-Entities"></span><h4 class="subsection">14.5.2 Variables and Similar Entities</h4>
<p>Here are the commands for defining variables and similar
entities:
</p>
<dl compact="compact">
<dd><span id="index-defvr"></span>
</dd>
<dt><code>@defvr <var>category</var> <var>name</var></code></dt>
<dd><p>The <code>@defvr</code> command is a general definition command for
something like a variable—an entity that records a value. You must
choose a term to describe the category of entity being defined; for
example, “Variable” could be used if the entity is a variable.
Write the <code>@defvr</code> command at the beginning of a line and
follow it on the same line by the category of the entity and the
name of the entity.
</p>
<p>We recommend capitalizing the category name like a title. If the name
of the category contains spaces, as in the name “User Option”,
enclose it in braces. Otherwise, the second word will be mistaken for
the name of the entity. For example,
</p>
<div class="example">
<pre class="example">@defvr {User Option} fill-column
This buffer-local variable specifies
the maximum width of filled lines.
…
@end defvr
</pre></div>
<p>Terminate the definition with <code>@end defvr</code> on a line of its
own.
</p>
<p>The template is:
</p>
<div class="example">
<pre class="example">@defvr <var>category</var> <var>name</var>
<var>body-of-definition</var>
@end defvr
</pre></div>
<p><code>@defvr</code> creates an entry in the index of variables for <var>name</var>.
</p>
<span id="index-defvar"></span>
</dd>
<dt><code>@defvar <var>name</var></code></dt>
<dd><p>The <code>@defvar</code> command is the definition command for variables.
<code>@defvar</code> is equivalent to ‘<samp>@defvr Variable
…</samp>’.
</p>
<p>For example:
</p>
<div class="example">
<pre class="example">@defvar kill-ring
…
@end defvar
</pre></div>
<p>The template is:
</p>
<div class="example">
<pre class="example">@defvar <var>name</var>
<var>body-of-definition</var>
@end defvar
</pre></div>
<p><code>@defvar</code> creates an entry in the index of variables for
<var>name</var>.
</p>
<span id="index-defopt"></span>
</dd>
<dt><code>@defopt <var>name</var></code></dt>
<dd><span id="index-User-options_002c-marking"></span>
<p>The <code>@defopt</code> command is the definition command for <em>user
options</em>, i.e., variables intended for users to change according to
taste; Emacs has many such (see <a href="../emacs/Variables.html#Variables">Variables</a> in <cite>The GNU Emacs
Manual</cite>). <code>@defopt</code> is equivalent to ‘<samp>@defvr {User
Option} …</samp>’ and works like <code>@defvar</code>. It creates an entry
in the index of variables.
</p></dd>
</dl>
<hr>
<div class="header">
<p>
Next: <a href="Typed-Functions.html" accesskey="n" rel="next">Typed Functions</a>, Previous: <a href="Functions-Commands.html" accesskey="p" rel="prev">Functions Commands</a>, Up: <a href="Def-Cmds-in-Detail.html" accesskey="u" rel="up">Def Cmds in Detail</a> [<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>