aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
Diffstat (limited to 'doc')
-rw-r--r--doc/emacs/ChangeLog25
-rw-r--r--doc/emacs/abbrevs.texi16
-rw-r--r--doc/emacs/basic.texi9
-rw-r--r--doc/emacs/buffers.texi8
-rw-r--r--doc/emacs/cmdargs.texi6
-rw-r--r--doc/emacs/custom.texi164
-rw-r--r--doc/emacs/display.texi49
-rw-r--r--doc/emacs/emacs.texi1
-rw-r--r--doc/emacs/files.texi2
-rw-r--r--doc/emacs/frames.texi32
-rw-r--r--doc/emacs/killing.texi36
-rw-r--r--doc/emacs/xresources.texi18
12 files changed, 219 insertions, 147 deletions
diff --git a/doc/emacs/ChangeLog b/doc/emacs/ChangeLog
index 45226478fc7..62000a556c3 100644
--- a/doc/emacs/ChangeLog
+++ b/doc/emacs/ChangeLog
@@ -1,3 +1,28 @@
12009-12-24 Chong Yidong <cyd@stupidchicken.com>
2
3 * emacs.texi (Top): Update node listing.
4
5 * abbrevs.texi (Saving Abbrevs): Abbrev file should be in .emacs.d.
6
7 * basic.texi (Moving Point): M-r is now move-to-window-line-top-bottom.
8
9 * cmdargs.texi (Initial Options):
10 * xresources.texi (Resources): Document inhibit-x-resources.
11
12 * custom.texi (Specifying File Variables): Note that minor modes are
13 enabled unconditionally.
14
15 * display.texi (Scrolling): Briefly document the old recenter command,
16 and document recenter-positions.
17
18 * files.texi (Visiting):
19 * buffers.texi (Buffers): Max buffer size is now 512 MB.
20
21 * frames.texi (Cut/Paste Other App): Document
22 save-interprogram-paste-before-kill.
23
24 * killing.texi (Kill Options): New node.
25
12009-12-05 Chong Yidong <cyd@stupidchicken.com> 262009-12-05 Chong Yidong <cyd@stupidchicken.com>
2 27
3 * misc.texi (Shell Options): ansi-color is now default. 28 * misc.texi (Shell Options): ansi-color is now default.
diff --git a/doc/emacs/abbrevs.texi b/doc/emacs/abbrevs.texi
index 0740e067505..cf9b881bb5d 100644
--- a/doc/emacs/abbrevs.texi
+++ b/doc/emacs/abbrevs.texi
@@ -309,14 +309,14 @@ that, when executed, define the same abbrevs that you currently have.
309and then reads the file, defining abbrevs according to the contents of 309and then reads the file, defining abbrevs according to the contents of
310the file. The function @code{quietly-read-abbrev-file} is similar 310the file. The function @code{quietly-read-abbrev-file} is similar
311except that it does not display a message in the echo area; you cannot 311except that it does not display a message in the echo area; you cannot
312invoke it interactively, and it is used primarily in the @file{.emacs} 312invoke it interactively, and it is used primarily in your init file
313file. If either of these functions is called with @code{nil} as the 313(@pxref{Init File}). If either of these functions is called with
314argument, it uses the file name specified in the variable 314@code{nil} as the argument, it uses the file given by the variable
315@code{abbrev-file-name}, which is by default @code{"~/.abbrev_defs"}. 315@code{abbrev-file-name}, which is @file{~/.emacs.d/abbrev_defs} by
316That file is your standard abbrev definition file, and Emacs loads 316default. This is your standard abbrev definition file, and Emacs
317abbrevs from it automatically when it starts up. (As an exception, 317loads abbrevs from it automatically when it starts up. (As an
318Emacs does not load the abbrev file when it is started in batch mode. 318exception, Emacs does not load the abbrev file when it is started in
319@xref{Initial Options}, for a description of batch mode.) 319batch mode. @xref{Initial Options}, for a description of batch mode.)
320 320
321@vindex save-abbrevs 321@vindex save-abbrevs
322 Emacs will offer to save abbrevs automatically if you have changed 322 Emacs will offer to save abbrevs automatically if you have changed
diff --git a/doc/emacs/basic.texi b/doc/emacs/basic.texi
index 4973b4a96d0..084d1066505 100644
--- a/doc/emacs/basic.texi
+++ b/doc/emacs/basic.texi
@@ -182,12 +182,17 @@ middle of one line, you move to the middle of the next.
182Move up one screen line (@code{previous-line}). This command 182Move up one screen line (@code{previous-line}). This command
183preserves position within the line, like @kbd{C-n}. 183preserves position within the line, like @kbd{C-n}.
184@item M-r 184@item M-r
185Move point to left margin, vertically centered in the window 185Without moving the text on the screen, reposition point on the left
186(@code{move-to-window-line}). Text does not move on the screen. 186margin of the center-most text line of the window; on subsequent
187consecutive invocations, move point to the left margin of the top-most
188line, the bottom-most line, and so forth, in cyclic order
189(@code{move-to-window-line-top-bottom}).
190
187A numeric argument says which screen line to place point on, counting 191A numeric argument says which screen line to place point on, counting
188downward from the top of the window (zero means the top line). A 192downward from the top of the window (zero means the top line). A
189negative argument counts lines up from the bottom (@minus{}1 means the 193negative argument counts lines up from the bottom (@minus{}1 means the
190bottom line). 194bottom line).
195
191@item M-< 196@item M-<
192Move to the top of the buffer (@code{beginning-of-buffer}). With 197Move to the top of the buffer (@code{beginning-of-buffer}). With
193numeric argument @var{n}, move to @var{n}/10 of the way from the top. 198numeric argument @var{n}, move to @var{n}/10 of the way from the top.
diff --git a/doc/emacs/buffers.texi b/doc/emacs/buffers.texi
index cd7e42d9236..fc5ab05ede5 100644
--- a/doc/emacs/buffers.texi
+++ b/doc/emacs/buffers.texi
@@ -41,10 +41,10 @@ can be different from the value in other buffers. @xref{Locals}.
41 41
42@cindex buffer size, maximum 42@cindex buffer size, maximum
43 A buffer's size cannot be larger than some maximum, which is defined 43 A buffer's size cannot be larger than some maximum, which is defined
44by the largest buffer position representable by the @dfn{Emacs integer} 44by the largest buffer position representable by the @dfn{Emacs
45data type. This is because Emacs tracks buffer positions using that 45integer} data type. This is because Emacs tracks buffer positions
46data type. For 32-bit machines, the largest buffer size is 256 46using that data type. For 32-bit machines, the largest buffer size is
47megabytes. 47512 megabytes.
48 48
49@menu 49@menu
50* Select Buffer:: Creating a new buffer or reselecting an old one. 50* Select Buffer:: Creating a new buffer or reselecting an old one.
diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi
index 8c63f4e6d84..f5f79934d8e 100644
--- a/doc/emacs/cmdargs.texi
+++ b/doc/emacs/cmdargs.texi
@@ -297,8 +297,10 @@ in your initialization file (@pxref{Entering Emacs}).
297@opindex -Q 297@opindex -Q
298@itemx --quick 298@itemx --quick
299@opindex --quick 299@opindex --quick
300Start emacs with minimum customizations. This is like using 300Start emacs with minimum customizations, similar to using @samp{-q},
301@samp{-q}, @samp{--no-site-file}, and @samp{--no-splash} together. 301@samp{--no-site-file}, and @samp{--no-splash} together. This also
302stops Emacs from processing X resources by setting
303@code{inhibit-x-resources} to @code{t} (@pxref{Resources}).
302 304
303@item -daemon 305@item -daemon
304@opindex -daemon 306@opindex -daemon
diff --git a/doc/emacs/custom.texi b/doc/emacs/custom.texi
index c01537aa223..1e78121ca29 100644
--- a/doc/emacs/custom.texi
+++ b/doc/emacs/custom.texi
@@ -1083,46 +1083,48 @@ first line:
1083 1083
1084@noindent 1084@noindent
1085You can specify any number of variable/value pairs in this way, each 1085You can specify any number of variable/value pairs in this way, each
1086pair with a colon and semicolon as shown above. @code{mode: 1086pair with a colon and semicolon as shown above. The special
1087@var{modename};} specifies the major mode; this should come first in the 1087variable/value pair @code{mode: @var{modename};}, if present,
1088line. The @var{value}s are not evaluated; they are used literally. 1088specifies a major or minor mode; if you use this to specify a major
1089Here is an example that specifies Lisp mode and sets two variables with 1089mode, it should come first in the line. The @var{value}s are are used
1090numeric values: 1090literally, and not evaluated.
1091
1092 Here is an example that specifies Lisp mode and sets two variables
1093with numeric values:
1091 1094
1092@smallexample 1095@smallexample
1093;; -*- mode: Lisp; fill-column: 75; comment-column: 50; -*- 1096;; -*- mode: Lisp; fill-column: 75; comment-column: 50; -*-
1094@end smallexample 1097@end smallexample
1095 1098
1096 You can also specify the coding system for a file in this way: just 1099@noindent
1097specify a value for the ``variable'' named @code{coding}. The ``value'' 1100Aside from @code{mode}, other keywords that have special meanings as
1098must be a coding system name that Emacs recognizes. @xref{Coding 1101file variables are @code{coding}, @code{unibyte}, and @code{eval}.
1099Systems}. @w{@samp{unibyte: t}} specifies unibyte loading for a 1102These are described below.
1100particular Lisp file. @xref{Enabling Multibyte}.
1101
1102 The @code{eval} pseudo-variable, described below, can be specified in
1103the first line as well.
1104 1103
1105@cindex shell scripts, and local file variables 1104@cindex shell scripts, and local file variables
1106@cindex man pages, and local file variables 1105@cindex man pages, and local file variables
1107 In shell scripts, the first line is used to identify the script 1106 In shell scripts, the first line is used to identify the script
1108interpreter, so you cannot put any local variables there. To 1107interpreter, so you cannot put any local variables there. To
1109accommodate this, Emacs looks for local variable specifications in the 1108accommodate this, Emacs looks for local variable specifications in the
1110@emph{second} line when the first line specifies an interpreter. 1109@emph{second} line if the first line specifies an interpreter. The
1111The same is true for man pages which start with the magic string 1110same is true for man pages which start with the magic string
1112@samp{'\"} to specify a list of troff preprocessors (not all do, 1111@samp{'\"} to specify a list of troff preprocessors (not all do,
1113however). 1112however).
1114 1113
1115 A @dfn{local variables list} goes near the end of the file. It 1114 Instead of using a @samp{-*-} line, you can define file local
1116starts with a line containing the string @samp{Local Variables:}, and 1115variables using a @dfn{local variables list} near the end of the file.
1117ends with a line containing the string @samp{End:}. In between come 1116The start of the local variables list should be no more than 3000
1118the variable names and values, one set per line, as 1117characters from the end of the file, and must be on the last page if
1119@samp{@var{variable}:@: @var{value}}. The @var{value}s are not 1118the file is divided into pages.
1120evaluated; they are used literally. If a file has both a local
1121variables list and a @samp{-*-} line, Emacs processes
1122@emph{everything} in the @samp{-*-} line first, and @emph{everything}
1123in the local variables list afterward.
1124 1119
1125 Here is an example of a local variables list: 1120 If a file has both a local variables list and a @samp{-*-} line,
1121Emacs processes @emph{everything} in the @samp{-*-} line first, and
1122@emph{everything} in the local variables list afterward.
1123
1124 A local variables list starts with a line containing the string
1125@samp{Local Variables:}, and ends with a line containing the string
1126@samp{End:}. In between come the variable names and values, one set
1127per line, like this:
1126 1128
1127@example 1129@example
1128/* Local Variables: */ 1130/* Local Variables: */
@@ -1131,25 +1133,24 @@ in the local variables list afterward.
1131/* End: */ 1133/* End: */
1132@end example 1134@end example
1133 1135
1134 In this example, each line starts with the prefix @samp{/*} and each 1136@noindent
1135line ends with the suffix @samp{*/}. Emacs recognizes these as the 1137In this example, each line starts with the prefix @samp{/*} and ends
1136prefix and suffix by finding them surrounding the magic string 1138with the suffix @samp{*/}. Emacs recognizes the prefix and suffix by
1137@samp{Local Variables:}, on the first line of the list; it then 1139finding them surrounding the magic string @samp{Local Variables:}, on
1138automatically discards them from the other lines of the list. 1140the first line of the list; it then automatically discards them from
1139 1141the other lines of the list. The usual reason for using a prefix
1140 The usual reason for using a prefix and/or suffix is to embed the 1142and/or suffix is to embed the local variables list in a comment, so it
1141local variables list in a comment, so it won't confuse other programs 1143won't confuse other programs that the file is intended for. The
1142that the file is intended as input for. The example above is for the 1144example above is for the C programming language, where comment lines
1143C programming language, where comment lines start with @samp{/*} and 1145start with @samp{/*} and end with @samp{*/}.
1144end with @samp{*/}. Don't use a prefix (or a suffix) if you don't 1146
1145need one. 1147 As with the @samp{-*-} line, the variables in a local variables list
1146 1148are used literally, and are not evaluated first. If you want to split
1147 If you write a multi-line string value, you should put the prefix 1149a long string across multiple lines of the file, you can use
1148and suffix on each line, even lines that start or end within the 1150backslash-newline, which is ignored in Lisp string constants; you
1149string. They will be stripped off for processing the list. If you 1151should put the prefix and suffix on each line, even lines that start
1150want to split a long string across multiple lines of the file, you can 1152or end within the string, as they will be stripped off when processing
1151use backslash-newline, which is ignored in Lisp string constants. 1153the list. Here is an example:
1152Here's an example of doing this:
1153 1154
1154@example 1155@example
1155# Local Variables: 1156# Local Variables:
@@ -1159,39 +1160,45 @@ Here's an example of doing this:
1159@end example 1160@end example
1160 1161
1161 Some ``variable names'' have special meanings in a local variables 1162 Some ``variable names'' have special meanings in a local variables
1162list. Specifying the ``variable'' @code{mode} really sets the major 1163list:
1163mode, while any value specified for the ``variable'' @code{eval} is 1164
1164simply evaluated as an expression (its value is ignored). A value for 1165@itemize
1166@item
1167@code{mode} enables the specified major or minor mode.
1168
1169@item
1170@code{eval} evaluates the specified Lisp expression (the value
1171returned by that expression is ignored).
1172
1173@item
1165@code{coding} specifies the coding system for character code 1174@code{coding} specifies the coding system for character code
1166conversion of this file, and a value of @code{t} for @code{unibyte} 1175conversion of this file. @xref{Coding Systems}.
1167says to visit the file in a unibyte buffer. These four ``variables'' 1176
1168are not really variables; setting them in any other context has no 1177@item
1169special meaning. 1178@code{unibyte} says to visit the file in a unibyte buffer, if the
1179value is @code{t}. @xref{Enabling Multibyte}.
1180@end itemize
1181
1182@noindent
1183These four ``variables'' are not really variables; setting them in any
1184other context has no special meaning.
1170 1185
1171 @emph{If @code{mode} is used to set a major mode, it should be the 1186 @emph{If @code{mode} is used to set a major mode, it should be the
1172first ``variable'' in the list.} Otherwise, the entries that precede 1187first ``variable'' in the list.} Otherwise, the entries that precede
1173it will usually be ignored, since most modes kill all local variables 1188it will usually have no effect, since most major modes kill all local
1174as part of their initialization. 1189variables as part of their initialization.
1175 1190
1176 You can use the @code{mode} ``variable'' to set minor modes as well 1191 You can use the @code{mode} ``variable'' to enable minor modes as
1177as the major modes; in fact, you can use it more than once, first to 1192well as the major modes; in fact, you can use it more than once, first
1178set the major mode and then to set minor modes which are specific to 1193to set the major mode and then to enable minor modes which are
1179particular buffers. But most minor modes should not be specified in 1194specific to particular buffers.
1180the file at all, because they represent user preferences. 1195
1181 1196 Often, however, it is a mistake to enable minor modes this way.
1182 For example, you may be tempted to try to turn on Auto Fill mode with 1197Most minor modes, like Auto Fill mode, represent individual user
1183a local variable list. That is a mistake. The choice of Auto Fill mode 1198preferences. If you want to use a minor mode, it is better to set up
1184or not is a matter of individual taste, not a matter of the contents of 1199major mode hooks with your init file to turn that minor mode on for
1185particular files. If you want to use Auto Fill, set up major mode hooks 1200yourself alone (@pxref{Init File}), instead of using a local variable
1186with your @file{.emacs} file to turn it on (when appropriate) for you 1201list to impose your taste on everyone.
1187alone (@pxref{Init File}). Don't use a local variable list to impose
1188your taste on everyone.
1189
1190 The start of the local variables list must be no more than 3000
1191characters from the end of the file, and must be in the last page if
1192the file is divided into pages. Otherwise, Emacs will not notice it
1193is there. The purpose of this rule is so that Emacs need not take the
1194time to search the whole file.
1195 1202
1196 Use the command @code{normal-mode} to reset the local variables and 1203 Use the command @code{normal-mode} to reset the local variables and
1197major mode of a buffer according to the file name and contents, 1204major mode of a buffer according to the file name and contents,
@@ -1202,7 +1209,7 @@ including the local variables list if any. @xref{Choosing Modes}.
1202 1209
1203 File-local variables can be dangerous; when you visit someone else's 1210 File-local variables can be dangerous; when you visit someone else's
1204file, there's no telling what its local variables list could do to 1211file, there's no telling what its local variables list could do to
1205your Emacs. Improper values of the @code{eval} ``variable,'' and 1212your Emacs. Improper values of the @code{eval} ``variable'', and
1206other variables such as @code{load-path}, could execute Lisp code you 1213other variables such as @code{load-path}, could execute Lisp code you
1207didn't intend to run. 1214didn't intend to run.
1208 1215
@@ -1247,6 +1254,7 @@ query you about each file that has local variables, without trying to
1247determine whether the values are known to be safe. 1254determine whether the values are known to be safe.
1248 1255
1249@vindex enable-local-eval 1256@vindex enable-local-eval
1257@vindex safe-local-eval-forms
1250 The variable @code{enable-local-eval} controls whether Emacs 1258 The variable @code{enable-local-eval} controls whether Emacs
1251processes @code{eval} variables. The three possibilities for the 1259processes @code{eval} variables. The three possibilities for the
1252variable's value are @code{t}, @code{nil}, and anything else, just as 1260variable's value are @code{t}, @code{nil}, and anything else, just as
@@ -1254,11 +1262,9 @@ for @code{enable-local-variables}. The default is @code{maybe}, which
1254is neither @code{t} nor @code{nil}, so normally Emacs does ask for 1262is neither @code{t} nor @code{nil}, so normally Emacs does ask for
1255confirmation about processing @code{eval} variables. 1263confirmation about processing @code{eval} variables.
1256 1264
1257@vindex safe-local-eval-forms 1265 As an exception, Emacs never asks for confirmation to evaluate any
1258 But there is an exception. The @code{safe-local-eval-forms} is a 1266@code{eval} form if that form occurs within the variable
1259customizable list of eval forms which are safe. Emacs does not ask 1267@code{safe-local-eval-forms}.
1260for confirmation when it finds these forms for the @code{eval}
1261variable.
1262 1268
1263@node Directory Variables 1269@node Directory Variables
1264@subsection Per-Directory Local Variables 1270@subsection Per-Directory Local Variables
diff --git a/doc/emacs/display.texi b/doc/emacs/display.texi
index 063aa7d6f0e..8f99e71ceab 100644
--- a/doc/emacs/display.texi
+++ b/doc/emacs/display.texi
@@ -53,8 +53,10 @@ commands:
53 53
54@table @kbd 54@table @kbd
55@item C-l 55@item C-l
56Scroll the selected window to center point vertically within it and 56Scroll the selected window so that the current line is the center-most
57maybe redisplay the screen (@code{recenter-top-bottom}). 57text line; on subsequent consecutive invocations, make the current
58line the top-most line, the bottom-most line, and so forth in cyclic
59order; also, maybe redisplay the screen (@code{recenter-top-bottom}).
58@item C-v 60@item C-v
59@itemx @key{next} 61@itemx @key{next}
60@itemx @key{PageDown} 62@itemx @key{PageDown}
@@ -70,23 +72,27 @@ Scroll heuristically to bring useful information onto the screen
70 72
71@kindex C-l 73@kindex C-l
72@findex recenter-top-bottom 74@findex recenter-top-bottom
73 The most basic scrolling command is @kbd{C-l} 75 @kbd{C-l} (@code{recenter-top-bottom}) is a basic scrolling command.
74(@code{recenter-top-bottom}). This @dfn{recenters} the selected 76It @dfn{recenters} the selected window, scrolling it so that the
75window, scrolling it so that the current screen line is exactly in the 77current screen line is exactly in the center of the window, or as
76center of the window, or as close to the center as possible. If the 78close to the center as possible.
77variable @var{recenter-redisplay} is non-nil, it also clears the
78screen and redisplays all windows; this is useful in case the screen
79becomes garbled for any reason (@pxref{Screen Garbled}). If
80@var{recenter-redisplay} has the special value @code{tty} (the
81default), then redisplay only happens on tty frames.
82 79
83 Typing @kbd{C-l} twice in a row (@kbd{C-l C-l}) scrolls the window 80 Typing @kbd{C-l} twice in a row (@kbd{C-l C-l}) scrolls the window
84so that point is on the topmost screen line. Typing a third @kbd{C-l} 81so that point is on the topmost screen line. Typing a third @kbd{C-l}
85scrolls the window so that point is on the bottom-most screen line. 82scrolls the window so that point is on the bottom-most screen line.
86Each successive @kbd{C-l} cycles through these three screen positions. 83Each successive @kbd{C-l} cycles through these three screen positions.
87(If you change the variable @code{scroll-margin} to a non-zero value 84
88@var{n}, Emacs leaves @var{n} screen lines between point and the top 85@vindex recenter-positions
89or bottom of the window. @xref{Auto Scrolling}.) 86 You can change the cycling order by customizing the list variable
87@code{recenter-positions}. Each list element should be the symbol
88@code{top}, @code{middle}, or @code{bottom}, or a number; an integer
89number means to move the line to the specified screen line, while a
90floating-point number between 0.0 and 1.0 specifies a percentage of
91the screen space from the top. The default, @code{(middle top
92bottom)}, is the cycling order described above. Furthermore, if you
93change the variable @code{scroll-margin} to a non-zero value @var{n},
94Emacs always leaves @var{n} screen lines between point and the top or
95bottom of the window (@pxref{Auto Scrolling}).
90 96
91 You can also supply @kbd{C-l} with a prefix argument. With a plain 97 You can also supply @kbd{C-l} with a prefix argument. With a plain
92prefix argument, @kbd{C-u C-l}, Emacs simply recenters point. With a 98prefix argument, @kbd{C-u C-l}, Emacs simply recenters point. With a
@@ -98,10 +104,17 @@ puts point on the bottom line, and @kbd{C-u - 5 C-l} puts it five
98lines from the bottom. When given an argument, @kbd{C-l} does not 104lines from the bottom. When given an argument, @kbd{C-l} does not
99clear the screen or cycle through different screen positions. 105clear the screen or cycle through different screen positions.
100 106
107 The more primitive command @code{recenter} behaves like
108@code{recenter-top-bottom}, but does not cycle among screen positions.
109Prior to Emacs 23, @kbd{C-l} was bound to @code{recenter}.
110
101@vindex recenter-redisplay 111@vindex recenter-redisplay
102 When the variable @code{recenter-redisplay} is non-nil, the 112 If the variable @code{recenter-redisplay} has a non-@code{nil}
103@code{recenter} and @code{recenter-top-bottom} commands redisplay the 113value, Emacs clears and redisplays the screen each time @kbd{C-l}
104selected frame when they are invoked without a prefix argument. 114recenters the window; the special value @code{tty} (the default) says
115to do this on text-terminal frames only. Redisplaying is useful in
116case the screen becomes garbled for any reason (@pxref{Screen
117Garbled}).
105 118
106@kindex C-v 119@kindex C-v
107@kindex M-v 120@kindex M-v
@@ -111,7 +124,7 @@ selected frame when they are invoked without a prefix argument.
111@kindex PageUp 124@kindex PageUp
112@findex scroll-up 125@findex scroll-up
113@findex scroll-down 126@findex scroll-down
114 To read the buffer a windowful at a time, use @kbd{C-v} 127 To read the buffer a windowful at a time, type @kbd{C-v}
115(@code{scroll-up}). This scrolls forward by nearly the whole window 128(@code{scroll-up}). This scrolls forward by nearly the whole window
116height. The effect is to take the two lines at the bottom of the 129height. The effect is to take the two lines at the bottom of the
117window and put them at the top, followed by lines that were not 130window and put them at the top, followed by lines that were not
diff --git a/doc/emacs/emacs.texi b/doc/emacs/emacs.texi
index e6002292931..4b9ea28dcc3 100644
--- a/doc/emacs/emacs.texi
+++ b/doc/emacs/emacs.texi
@@ -324,6 +324,7 @@ Killing and Moving Text
324* Killing by Lines:: How to kill entire lines of text at one time. 324* Killing by Lines:: How to kill entire lines of text at one time.
325* Other Kill Commands:: Commands to kill large regions of text and 325* Other Kill Commands:: Commands to kill large regions of text and
326 syntactic units such as words and sentences. 326 syntactic units such as words and sentences.
327* Kill Options:: Options that affect killing.
327 328
328Yanking 329Yanking
329 330
diff --git a/doc/emacs/files.texi b/doc/emacs/files.texi
index cee43b390ea..efbbc90e852 100644
--- a/doc/emacs/files.texi
+++ b/doc/emacs/files.texi
@@ -207,7 +207,7 @@ to reread it.
207about 10 megabytes), Emacs asks you for confirmation first. You can 207about 10 megabytes), Emacs asks you for confirmation first. You can
208answer @kbd{y} to proceed with visiting the file. Note, however, that 208answer @kbd{y} to proceed with visiting the file. Note, however, that
209Emacs cannot visit files that are larger than the maximum Emacs buffer 209Emacs cannot visit files that are larger than the maximum Emacs buffer
210size, which is around 256 megabytes on 32-bit machines 210size, which is around 512 megabytes on 32-bit machines
211(@pxref{Buffers}). If you try, Emacs will display an error message 211(@pxref{Buffers}). If you try, Emacs will display an error message
212saying that the maximum buffer size has been exceeded. 212saying that the maximum buffer size has been exceeded.
213 213
diff --git a/doc/emacs/frames.texi b/doc/emacs/frames.texi
index a8958957eae..e5f12ee2d20 100644
--- a/doc/emacs/frames.texi
+++ b/doc/emacs/frames.texi
@@ -252,25 +252,33 @@ such as @kbd{M-w} (@code{kill-ring-save}), that text is also saved in
252the primary selection. @xref{Killing}. 252the primary selection. @xref{Killing}.
253 253
254@vindex select-active-regions 254@vindex select-active-regions
255 If you set the region using the keyboard---for instance, by typing
256@kbd{C-@key{SPC}} and moving point away from the mark---the text in
257the region is not normally saved to the primary selection. However,
258if you change the variable @code{select-active-regions} to @code{t},
259the region is saved to the primary selection whenever you activate the
260mark. Each change to the region also updates the primary selection.
261
255@vindex yank-pop-change-selection 262@vindex yank-pop-change-selection
256 If you set the region using the keyboard, the text within the region 263 If you change @code{yank-pop-change-selection} to @code{t}, rotating
257is not normally saved to the primary selection. However, if you 264the kill ring with @kbd{M-y} (@code{yank-pop}) also saves the new yank
258change the variable @code{select-active-regions} to @code{t}, the 265to the primary selection (@pxref{Yanking}).
259region is saved to the primary selection each time you activate the 266
260mark. The primary selection is updated if you subsequently change the 267@vindex save-interprogram-paste-before-kill
261region by moving point. If you change the variable 268 If you change @code{save-interprogram-paste-before-kill} to
262@code{yank-pop-change-selection} to @code{t}, rotating the kill ring 269@code{t}, each kill command first saves the existing selection onto
263with @kbd{M-y} (@code{yank-pop}) also saves the new yank to the 270the kill ring. This prevents you from losing the existing selection,
264primary selection (@pxref{Yanking}). 271at the risk of large memory consumption if other applications generate
272large selections.
265 273
266@cindex cut buffer 274@cindex cut buffer
267@vindex x-cut-buffer-max 275@vindex x-cut-buffer-max
268 Whenever Emacs saves some text to the primary selection, it may also 276 Whenever Emacs saves some text to the primary selection, it may also
269save it to the @dfn{cut buffer}. The cut buffer is an obsolete 277save it to the @dfn{cut buffer}. The cut buffer is an obsolete
270predecessor to the primary selection; most modern applications do not 278predecessor to the primary selection; most modern applications do not
271make use of it. Because saving text to the cut buffer is slow and 279use it. Saving text to the cut buffer is slow and inefficient, so
272inefficient, Emacs only does it if the text is shorter than the value 280Emacs only does it if the text is shorter than the value of
273of @code{x-cut-buffer-max} (the default is 20000 characters). 281@code{x-cut-buffer-max} (20000 characters by default).
274 282
275 You can yank the primary selection into Emacs using the usual yank 283 You can yank the primary selection into Emacs using the usual yank
276commands, such as @kbd{C-y} (@code{yank}) and @kbd{Mouse-2} 284commands, such as @kbd{C-y} (@code{yank}) and @kbd{Mouse-2}
diff --git a/doc/emacs/killing.texi b/doc/emacs/killing.texi
index 7626b2cfa06..0b1c6537572 100644
--- a/doc/emacs/killing.texi
+++ b/doc/emacs/killing.texi
@@ -46,19 +46,6 @@ amounts of nontrivial data generally do a kill operation instead. The
46commands' names and individual descriptions use the words @samp{kill} 46commands' names and individual descriptions use the words @samp{kill}
47and @samp{delete} to say which kind of operation they perform. 47and @samp{delete} to say which kind of operation they perform.
48 48
49@vindex kill-read-only-ok
50@cindex read-only text, killing
51 Some specialized buffers contain @dfn{read-only text}, which cannot
52be modified and therefore cannot be killed. But some users like to
53use the kill commands to copy read-only text into the kill ring,
54without actually changing it. Therefore, the kill commands work
55specially in a read-only buffer: they move over text, and copy it to
56the kill ring, without actually deleting it from the buffer.
57Normally, kill commands beep and display an error message when this
58happens. But if you set the variable @code{kill-read-only-ok} to a
59non-@code{nil} value, they just print a message in the echo area to
60explain why the text has not been erased.
61
62 You can also use the mouse to kill and yank. @xref{Cut and Paste}. 49 You can also use the mouse to kill and yank. @xref{Cut and Paste}.
63 50
64@menu 51@menu
@@ -67,9 +54,9 @@ explain why the text has not been erased.
67* Killing by Lines:: How to kill entire lines of text at one time. 54* Killing by Lines:: How to kill entire lines of text at one time.
68* Other Kill Commands:: Commands to kill large regions of text and 55* Other Kill Commands:: Commands to kill large regions of text and
69 syntactic units such as words and sentences. 56 syntactic units such as words and sentences.
57* Kill Options:: Options that affect killing.
70@end menu 58@end menu
71 59
72@need 1500
73@node Deletion 60@node Deletion
74@subsection Deletion 61@subsection Deletion
75@findex delete-backward-char 62@findex delete-backward-char
@@ -224,6 +211,27 @@ including) the next occurrence of that character in the buffer. A
224numeric argument acts as a repeat count; a negative argument means to 211numeric argument acts as a repeat count; a negative argument means to
225search backward and kill text before point. 212search backward and kill text before point.
226 213
214@node Kill Options
215@subsection Options for Killing
216
217@vindex kill-read-only-ok
218@cindex read-only text, killing
219 Some specialized buffers contain @dfn{read-only text}, which cannot
220be modified and therefore cannot be killed. But some users like to
221use the kill commands to copy read-only text into the kill ring,
222without actually changing it. Therefore, the kill commands work
223specially in a read-only buffer: they move over text, and copy it to
224the kill ring, without actually deleting it from the buffer.
225Normally, kill commands beep and display an error message when this
226happens. But if you set the variable @code{kill-read-only-ok} to a
227non-@code{nil} value, they just print a message in the echo area to
228explain why the text has not been erased.
229
230@vindex kill-do-not-save-duplicates
231 If you change the variable @code{kill-do-not-save-duplicates} to a
232non-@code{nil} value, identical subsequent kills yield a single
233kill-ring entry, without duplication.
234
227@node Yanking, Accumulating Text, Killing, Top 235@node Yanking, Accumulating Text, Killing, Top
228@section Yanking 236@section Yanking
229@cindex moving text 237@cindex moving text
diff --git a/doc/emacs/xresources.texi b/doc/emacs/xresources.texi
index f471b9dd148..a0edbd055aa 100644
--- a/doc/emacs/xresources.texi
+++ b/doc/emacs/xresources.texi
@@ -107,11 +107,19 @@ emacs.borderWidth: 4
107@end ifnottex 107@end ifnottex
108 108
109 The order in which the lines appear in the file does not matter. 109 The order in which the lines appear in the file does not matter.
110Also, command-line options always override the X resources file. 110One way to experiment with the effect of different resource settings
111is to use the @code{editres} program. See the @code{editres} man page
112for more details.
113
114 Emacs does not process X resources at all if you set the variable
115@code{inhibit-x-resources} to a non-@code{nil} value, or if you
116specify the @samp{-Q} (or @samp{--quick}) command-line argument
117(@pxref{Initial Options}). (The @samp{-Q} argument automatically sets
118@code{inhibit-x-resources} to @code{t}.)
111 119
112@ifnottex 120@ifnottex
113 The following X command-line options affect how X resources are 121 In addition, you can use the following command-line options to
114processed: 122override the X resources file:
115 123
116@table @samp 124@table @samp
117@item -name @var{name} 125@item -name @var{name}
@@ -150,10 +158,6 @@ other resource specifications.
150@end table 158@end table
151@end ifnottex 159@end ifnottex
152 160
153 One way to experiment with the effect of different resource settings
154is to use the @code{editres} program. See the @code{editres} man page
155for more details.
156
157@node Table of Resources 161@node Table of Resources
158@appendixsec Table of X Resources for Emacs 162@appendixsec Table of X Resources for Emacs
159 163