188 |
<p> Lisp allows any variable to have any kind of value, but most variables |
<p> Lisp allows any variable to have any kind of value, but most variables |
189 |
that Emacs uses require a value of a certain type. Often the value has |
that Emacs uses require a value of a certain type. Often the value has |
190 |
to be a string or a number. Sometimes we say that a certain feature is |
to be a string or a number. Sometimes we say that a certain feature is |
191 |
turned on if a variable is "non-<code>nil</code>," meaning that if the |
turned on if a variable is “non-<code>nil</code>,” meaning that if the |
192 |
variable's value is <code>nil</code>, the feature is off, but the feature is |
variable's value is <code>nil</code>, the feature is off, but the feature is |
193 |
on for <i>any</i> other value. The conventional value to turn on the |
on for <i>any</i> other value. The conventional value to turn on the |
194 |
feature--since you have to pick one particular value when you set the |
feature—since you have to pick one particular value when you set the |
195 |
variable--is <code>t</code>. |
variable—is <code>t</code>. |
196 |
</p> |
</p> |
197 |
<p> Emacs uses many Lisp variables for internal recordkeeping, as any Lisp |
<p> Emacs uses many Lisp variables for internal recordkeeping, as any Lisp |
198 |
program must, but the most interesting variables for you are the ones that |
program must, but the most interesting variables for you are the ones that |
497 |
<p> Some options have a small fixed set of possible legitimate values. |
<p> Some options have a small fixed set of possible legitimate values. |
498 |
These options don't let you edit the value textually. Instead, an |
These options don't let you edit the value textually. Instead, an |
499 |
active field <samp>`[Value Menu]'</samp> appears before the value; invoke this |
active field <samp>`[Value Menu]'</samp> appears before the value; invoke this |
500 |
field to edit the value. For a boolean "on or off" value, the active |
field to edit the value. For a boolean “on or off” value, the active |
501 |
field says <samp>`[Toggle]'</samp>, and it changes to the other value. |
field says <samp>`[Toggle]'</samp>, and it changes to the other value. |
502 |
<samp>`[Value Menu]'</samp> and <samp>`[Toggle]'</samp> edit the buffer; the changes |
<samp>`[Value Menu]'</samp> and <samp>`[Toggle]'</samp> edit the buffer; the changes |
503 |
take effect when you use the <samp>`Set for Current Session'</samp> operation. |
take effect when you use the <samp>`Set for Current Session'</samp> operation. |
527 |
</p> |
</p> |
528 |
<p> You can also invoke <samp>`[Current dir?]'</samp> to switch between including |
<p> You can also invoke <samp>`[Current dir?]'</samp> to switch between including |
529 |
a specific named directory in the path, and including <code>nil</code> in the |
a specific named directory in the path, and including <code>nil</code> in the |
530 |
path. (<code>nil</code> in a search path means "try the current |
path. (<code>nil</code> in a search path means “try the current |
531 |
directory.") |
directory.”) |
532 |
</p> |
</p> |
533 |
<a name="IDX1483"></a> |
<a name="IDX1483"></a> |
534 |
<a name="IDX1484"></a> |
<a name="IDX1484"></a> |
590 |
</pre></td></tr></table> |
</pre></td></tr></table> |
591 |
|
|
592 |
<p>Invoking <samp>`[Done]'</samp> buries this customization buffer. Each of the |
<p>Invoking <samp>`[Done]'</samp> buries this customization buffer. Each of the |
593 |
other fields performs an operation--set, save or reset--on each of the |
other fields performs an operation—set, save or reset—on each of the |
594 |
items in the buffer that could meaningfully be set, saved or reset. |
items in the buffer that could meaningfully be set, saved or reset. |
595 |
</p> |
</p> |
596 |
<hr size="6"> |
<hr size="6"> |
706 |
<p> If you want to alter a particular user option variable with the |
<p> If you want to alter a particular user option variable with the |
707 |
customization buffer, and you know its name, you can use the command |
customization buffer, and you know its name, you can use the command |
708 |
<kbd>M-x customize-option</kbd> and specify the option name. This sets up |
<kbd>M-x customize-option</kbd> and specify the option name. This sets up |
709 |
the customization buffer with just one option--the one that you asked |
the customization buffer with just one option—the one that you asked |
710 |
for. Editing, setting and saving the value work as described above, but |
for. Editing, setting and saving the value work as described above, but |
711 |
only for the specified option. |
only for the specified option. |
712 |
</p> |
</p> |
959 |
If you do not need to disguise the local variables list as a comment in |
If you do not need to disguise the local variables list as a comment in |
960 |
this way, there is no need to include a prefix or a suffix. |
this way, there is no need to include a prefix or a suffix. |
961 |
</p> |
</p> |
962 |
<p> Two "variable" names are special in a local variables list: a value |
<p> Two “variable” names are special in a local variables list: a value |
963 |
for the variable <code>mode</code> sets the major mode, and a value for the |
for the variable <code>mode</code> sets the major mode, and a value for the |
964 |
variable <code>eval</code> is simply evaluated as an expression and the value |
variable <code>eval</code> is simply evaluated as an expression and the value |
965 |
is ignored. These are not real variables; setting them in any other |
is ignored. These are not real variables; setting them in any other |
1794 |
table (though sometimes related major modes use the same one) which it |
table (though sometimes related major modes use the same one) which it |
1795 |
installs in each buffer that uses that major mode. The syntax table |
installs in each buffer that uses that major mode. The syntax table |
1796 |
installed in the current buffer is the one that all commands use, so we |
installed in the current buffer is the one that all commands use, so we |
1797 |
call it "the" syntax table. A syntax table is a Lisp object, a vector of |
call it “the” syntax table. A syntax table is a Lisp object, a vector of |
1798 |
length 256 whose elements are numbers. |
length 256 whose elements are numbers. |
1799 |
</p> |
</p> |
1800 |
<table class="menu" border="0" cellspacing="0"> |
<table class="menu" border="0" cellspacing="0"> |
3358 |
command if it is typed while Emacs is waiting for input. |
command if it is typed while Emacs is waiting for input. |
3359 |
</p> |
</p> |
3360 |
<p>If you quit twice in a row before the first <kbd>C-g</kbd> is recognized, you |
<p>If you quit twice in a row before the first <kbd>C-g</kbd> is recognized, you |
3361 |
activate the "emergency escape" feature and return to the shell. |
activate the “emergency escape” feature and return to the shell. |
3362 |
See section <a href="#SEC398">Emergency Escape</a>. |
See section <a href="#SEC398">Emergency Escape</a>. |
3363 |
</p> |
</p> |
3364 |
<a name="IDX1553"></a> |
<a name="IDX1553"></a> |
3376 |
the debugger. |
the debugger. |
3377 |
</p> |
</p> |
3378 |
<a name="IDX1558"></a> |
<a name="IDX1558"></a> |
3379 |
<p> The command <kbd>M-x top-level</kbd> is equivalent to "enough" <kbd>C-]</kbd> |
<p> The command <kbd>M-x top-level</kbd> is equivalent to “enough” <kbd>C-]</kbd> |
3380 |
commands to get you out of all the levels of recursive edits that you are |
commands to get you out of all the levels of recursive edits that you are |
3381 |
in. <kbd>C-]</kbd> only gets you out one level at a time, but <kbd>M-x top-level</kbd> |
in. <kbd>C-]</kbd> only gets you out one level at a time, but <kbd>M-x top-level</kbd> |
3382 |
goes out all levels at once. Both <kbd>C-]</kbd> and <kbd>M-x top-level</kbd> are |
goes out all levels at once. Both <kbd>C-]</kbd> and <kbd>M-x top-level</kbd> are |
3422 |
</td></tr> |
</td></tr> |
3423 |
<tr><td align="left" valign="top"><a href="#SEC397">27.12.4 Spontaneous Entry to Incremental Search</a></td><td> </td><td align="left" valign="top"> Spontaneous entry to incremental search. |
<tr><td align="left" valign="top"><a href="#SEC397">27.12.4 Spontaneous Entry to Incremental Search</a></td><td> </td><td align="left" valign="top"> Spontaneous entry to incremental search. |
3424 |
</td></tr> |
</td></tr> |
3425 |
<tr><td align="left" valign="top"><a href="#SEC398">27.12.5 Emergency Escape</a></td><td> </td><td align="left" valign="top"> Emergency escape-- |
<tr><td align="left" valign="top"><a href="#SEC398">27.12.5 Emergency Escape</a></td><td> </td><td align="left" valign="top"> Emergency escape— |
3426 |
What to do if Emacs stops responding. |
What to do if Emacs stops responding. |
3427 |
</td></tr> |
</td></tr> |
3428 |
<tr><td align="left" valign="top"><a href="#SEC399">27.12.6 Help for Total Frustration</a></td><td> </td><td align="left" valign="top"> When you are at your wits' end. |
<tr><td align="left" valign="top"><a href="#SEC399">27.12.6 Help for Total Frustration</a></td><td> </td><td align="left" valign="top"> When you are at your wits' end. |
3552 |
|
|
3553 |
<p> If Emacs spontaneously displays <samp>`I-search:'</samp> at the bottom of the |
<p> If Emacs spontaneously displays <samp>`I-search:'</samp> at the bottom of the |
3554 |
screen, it means that the terminal is sending <kbd>C-s</kbd> and <kbd>C-q</kbd> |
screen, it means that the terminal is sending <kbd>C-s</kbd> and <kbd>C-q</kbd> |
3555 |
according to the poorly designed xon/xoff "flow control" protocol. You |
according to the poorly designed xon/xoff “flow control” protocol. You |
3556 |
should try to prevent this by putting the terminal in a mode where it will |
should try to prevent this by putting the terminal in a mode where it will |
3557 |
not use flow control, or by giving it enough padding that it will never send a |
not use flow control, or by giving it enough padding that it will never send a |
3558 |
<kbd>C-s</kbd>. If that cannot be done, you must tell Emacs to expect flow |
<kbd>C-s</kbd>. If that cannot be done, you must tell Emacs to expect flow |
3704 |
|
|
3705 |
<p> If Emacs executes an illegal instruction, or dies with an operating |
<p> If Emacs executes an illegal instruction, or dies with an operating |
3706 |
system error message that indicates a problem in the program (as opposed to |
system error message that indicates a problem in the program (as opposed to |
3707 |
something like "disk full"), then it is certainly a bug. |
something like “disk full”), then it is certainly a bug. |
3708 |
</p> |
</p> |
3709 |
<p> If Emacs updates the display in a way that does not correspond to what is |
<p> If Emacs updates the display in a way that does not correspond to what is |
3710 |
in the buffer, then it is certainly a bug. If a command seems to do the |
in the buffer, then it is certainly a bug. If a command seems to do the |
3786 |
facts and nothing but the facts. |
facts and nothing but the facts. |
3787 |
</p> |
</p> |
3788 |
<p> Do not assume that the problem is due to the size of the file and say, |
<p> Do not assume that the problem is due to the size of the file and say, |
3789 |
"When I visit a large file, Emacs prints out <samp>`I feel pretty today'</samp>." |
“When I visit a large file, Emacs prints out <samp>`I feel pretty today'</samp>.” |
3790 |
This is what we mean by "guessing explanations". The problem is just as |
This is what we mean by “guessing explanations”. The problem is just as |
3791 |
likely to be due to the fact that there is a <samp>`z'</samp> in the file name. If |
likely to be due to the fact that there is a <samp>`z'</samp> in the file name. If |
3792 |
this is so, then when we got your report, we would try out the problem with |
this is so, then when we got your report, we would try out the problem with |
3793 |
some "large file", probably with no <samp>`z'</samp> in its name, and not find |
some “large file”, probably with no <samp>`z'</samp> in its name, and not find |
3794 |
anything wrong. There is no way in the world that we could guess that we |
anything wrong. There is no way in the world that we could guess that we |
3795 |
should try visiting a file with a <samp>`z'</samp> in its name. |
should try visiting a file with a <samp>`z'</samp> in its name. |
3796 |
</p> |
</p> |
3801 |
command previously? This is why we ask you to give the exact sequence of |
command previously? This is why we ask you to give the exact sequence of |
3802 |
characters you typed since starting to use Emacs. |
characters you typed since starting to use Emacs. |
3803 |
</p> |
</p> |
3804 |
<p> You should not even say "visit a file" instead of <kbd>C-x C-f</kbd> unless |
<p> You should not even say “visit a file” instead of <kbd>C-x C-f</kbd> unless |
3805 |
you <i>know</i> that it makes no difference which visiting command is used. |
you <i>know</i> that it makes no difference which visiting command is used. |
3806 |
Similarly, rather than saying "if I have three characters on the line," |
Similarly, rather than saying “if I have three characters on the line,” |
3807 |
say "after I type <kbd><kbd>RET</kbd> A B C <kbd>RET</kbd> C-p</kbd>," if that is |
say “after I type <kbd><kbd>RET</kbd> A B C <kbd>RET</kbd> C-p</kbd>,” if that is |
3808 |
the way you entered the text. |
the way you entered the text. |
3809 |
</p> |
</p> |
3810 |
<p> If you are not in Fundamental mode when the problem occurs, you should |
<p> If you are not in Fundamental mode when the problem occurs, you should |