comparison lispref/anti.texi @ 88155:d7ddb3e565de

sync with trunk
author Henrik Enberg <henrik.enberg@telia.com>
date Mon, 16 Jan 2006 00:03:54 +0000
parents 23a1cea22d13
children
comparison
equal deleted inserted replaced
88154:8ce476d3ba36 88155:d7ddb3e565de
1 @c -*-texinfo-*- 1 @c -*-texinfo-*-
2 @c This is part of the GNU Emacs Lisp Reference Manual. 2 @c This is part of the GNU Emacs Lisp Reference Manual.
3 @c Copyright (C) 1999 Free Software Foundation, Inc. 3 @c Copyright (C) 1999, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4 @c See the file elisp.texi for copying conditions. 4 @c See the file elisp.texi for copying conditions.
5 5
6 @c This node must have no pointers. 6 @c This node must have no pointers.
7 7
8 @node Antinews, GNU Free Documentation License, System Interface, Top 8 @node Antinews, GNU Free Documentation License, System Interface, Top
9 @appendix Emacs 20 Antinews 9 @appendix Emacs 21 Antinews
10 10
11 For those users who live backwards in time, here is information about 11 For those users who live backwards in time, here is information about
12 downgrading to Emacs version 20.4. We hope you will enjoy the greater 12 downgrading to Emacs version 21.4. We hope you will enjoy the greater
13 simplicity that results from the absence of many Emacs 21 features. In 13 simplicity that results from the absence of many Emacs @value{EMACSVER}
14 the following section, we carry this information back to Emacs 14 features.
15 20.3, for which the previous printed edition of this manual was made. 15
16 16 @section Old Lisp Features in Emacs 21
17 @section Old Lisp Features in Emacs 20
18 17
19 @itemize @bullet 18 @itemize @bullet
20 @item 19 @item
21 The @code{push} and @code{pop} macros are not defined. 20 Many unnecessary features of redisplay have been eliminated. (The
22 Neither are @code{dolist} and @code{dotimes}. 21 earlier major release, Emacs 20, will have a completely rewritten
23 22 redisplay engine, which will be even simpler.)
24 @item 23
25 You can't display images in buffers. (Emacs is meant for editing text.) 24 @itemize @minus
26 With no images, there are no display margins, and no tool bars. 25 @item
27 26 The function @code{force-window-update} has been removed. It
28 @item 27 shouldn't be needed, since changes in window contents are detected
29 The @code{display} text property has no special meaning; you can use it 28 automatically. In case they aren't, call @code{redraw-display} to
30 freely in Lisp programs, with no effects except what you implement for 29 redraw everything.
31 yourself. With no images, who needs the @code{display} text property? 30
32 31 @item
33 @item 32 Point no longer moves out from underneath invisible text at the end of
34 The @code{field} text property has no special meaning; buffers are no 33 each command. This allows the user to detect invisible text by moving
35 longer subdivided into fields. (The division of information into 34 the cursor around---if the cursor gets stuck, there is something
36 fields is always rather arbitrary.) 35 invisible in the way. If you really want cursor motion to ignore the
37 36 text, try marking it as intangible.
38 @item 37
39 Faces have fewer attributes. The attributes @code{:family}, 38 @item
40 @code{:height}, @code{:width}, @code{:weight}, and @code{:slant}, 39 Support for image maps and image slices has been removed. Emacs was
41 have been replaced with a font name, a ``bold'' flag, and an 40 always meant for editing text, anyway.
42 ``italic'' flag. 41
43 42 @item
44 The attributes @code{:overline}, @code{:strike-through} and @code{:box} 43 The mode line now accepts all text properties, as well as
45 have been eliminated too. Underlining now always has the same color as 44 @code{:propertize} and @code{:eval} forms, regardless of the
46 the text---using any other color would be bad taste. 45 @code{risky-local-variable} property.
47 46
48 With fewer font attributes, there are no functions 47 @item
49 @code{set-face-attribute} and @code{face-attribute}. Instead, you 48 The @code{line-height} and @code{line-spacing} properties no longer
50 access these attributes using functions such as @code{face-font}, and 49 have any meaning for newline characters. Such properties wouldn't
51 set them with functions such as @code{set-face-font}. (These functions 50 make sense, since newlines are not really characters; they just tell
52 were available in Emacs 21, but are not as useful there.) 51 you where to break a line.
53 52
54 @item 53 @item
55 The standard faces @code{scroll-bar}, @code{menu}, @code{border}, 54 Considerable simplifications have been made to the display
56 @code{cursor}, and @code{mouse} have been eliminated. They are rather 55 specification @code{(space . @var{props})}, which is used for
57 strange, as faces, and therefore shouldn't really exist. You can use 56 displaying a space of specified width and height. Pixel-based
58 @code{set-border-color}, @code{set-cursor-color} and 57 specifications and Lisp expressions are no longer accepted.
59 @code{set-mouse-color} to specify the colors for the frame border, the 58
60 text cursor, and the mouse cursor. To specify menu colors, use X 59 @item
61 resources. 60 Many features associated with the fringe areas have been removed, to
62 61 encourage people to concentrate on the main editing area (the fringe
63 @item 62 will be completely removed in Emacs 20.) Arbitrary bitmaps can no
64 Colors and other face attributes are no longer supported on character 63 longer be displayed in the fringe; an overlay arrow can still be
65 terminals, so you no longer have to worry about terminals making faces 64 displayed, but there can only be one overlay arrow at a time (any more
66 at you. 65 would be confusing.) The fringe widths cannot be adjusted, and
67 66 individual windows cannot have their own fringe settings. A mouse
68 @item 67 click on the fringe no longer generates a special event.
69 Emacs will respect your peace and quiet, aside from occasional beeps, 68
70 because there are no facilities for playing sounds. 69 @item
71 70 Individual windows cannot have their own scroll-bar settings.
72 @item 71
73 Emacs 20 provides a complex and badly designed method for handling 72 @item
74 character composition for languages such as Thai that display several 73 You can no longer use @samp{default} in a @code{defface} to specify
75 letters as a single combined image. We are too ashamed of it to tell 74 defaults for subsequent faces.
76 you any more than that. 75
77 76 @item
78 @item 77 The function @code{display-supports-face-attributes-p} has been
79 @code{delete-and-extract-region} has been deleted; instead, use 78 removed. In @code{defface} specifications, the @code{supports}
80 @code{buffer-substring} to extract the text, then use 79 predicate is no longer supported.
81 @code{delete-region} to delete it. 80
82 81 @item
83 @item 82 @code{face-attribute-relative-p} and @code{merge-face-attribute} have
84 Regular expressions do not support the POSIX character classes 83 been removed.
85 such as @samp{[:alpha:]}. All characters are created equal. 84
86 85 @item
87 @item 86 The priority of faces in a list supplied by the @code{:inherit} face
88 Hash tables have been eliminated; use alists instead. 87 attribute has been reversed. We like to make changes like this once
89 88 in a while, to keep Emacs Lisp programmers on their toes.
90 @item 89
91 The Lisp printer does not detect and report circular structure. That is 90 @item
92 ok, because the Lisp reader cannot recreate circular structure anyway. 91 The @code{min-colors} face attribute, used for tailoring faces to
93 However, there is a library @samp{cust-print.el} which can report 92 limited-color displays, does not exist. If in doubt, use colors like
94 circular structure. 93 ``white'' and ``black'', which ought to be defined everywhere.
95 94
96 @item 95 @item
97 Emacs provides its own implementation of scroll bars, instead 96 The @code{tty-color-mode} frame parameter does not exist. You should
98 of using those of the X toolkit. They always use the frame foreground 97 just trust the terminal capabilities database.
99 and background colors, so you cannot specify different colors for
100 the scroll bars.
101
102 @item
103 For simplicity, all @sc{ascii} characters now have the same height and width.
104 (Certain characters, such as Chinese characters, always have twice
105 the standard width.) All characters are created equal.
106
107 @item
108 You can now resize any Emacs window, and size changes in one window can
109 propagate to all others. Windows can no longer use
110 @code{window-size-fixed} to get special privileges.
111
112 @item
113 The function @code{intern-soft} no longer accepts a symbol as argument.
114
115 @item
116 The function @code{bitmap-spec-p} has been renamed to
117 @code{pixmap-spec-p} to encourage users to practice Emacs' help system
118 while trying to find it.
119
120 @item
121 Tooltips operate using ordinary Emacs frames.
122
123 @item
124 Areas of the mode line are not mouse-sensitive; however, some mouse
125 commands are available for the mode line as a whole.
126
127 @item
128 Windows cannot have header lines. Conversely, there is no way to turn
129 off the mode line of a window unless it is a minibuffer.
130
131 @item
132 Plain dashes are the only separators you can use in a menu.
133
134 @item
135 Vertical fractional scrolling does not exist.
136
137 @item
138 The functions @code{format} and @code{message} ignore and discard text
139 properties.
140
141 @item
142 The function @code{propertize} does not exist;
143 you can get the job done using @code{set-text-properties}.
144
145 @item
146 Colors are supported only on window systems, not on text-only terminals.
147 So the support functions for colors on text-only terminals are
148 not needed, and have been eliminated.
149
150 @item
151 The functions @code{color-values}, @code{color-defined-p} and
152 @code{defined-colors} have been renamed to @code{x-color-values},
153 @code{x-color-defined-p} and @code{x-defined-colors}.
154
155 @item
156 Windows cannot be made fixed-width or fixed-height;
157 Emacs will adjust the size of all windows when it needs to.
158
159 @item
160 The string used as the value of the @code{before-string} or
161 @code{after-string} property must contain only characters that display
162 as a single column---control characters, including tabs and newlines,
163 will give strange results.
164
165 @item
166 The minibuffer prompt does not actually appear in content of the
167 minibuffer; it is displayed specially in the minibuffer window.
168
169 @item
170 The ``exclusive open'' feature of @code{write-region}
171 has been eliminated; any non-@code{nil} value for the seventh
172 argument now means to ask the user for confirmation.
173
174 @item
175 The function @code{buffer-size} always reports on the
176 current buffer.
177
178 @item
179 The function @code{assq-delete-all} has itself been deleted.
180 So there!
181
182 @item
183 The keyword @code{:set-after} no longer does anything in
184 @code{defcustom}.
185
186 @item
187 The variable @code{small-temporary-file-directory} has no special
188 meaning. There's only one variable for specifying which directory to
189 use for temporary files, @code{temporary-file-directory}, but not all
190 Emacs features use it anyway. Some use the @code{TMP} environment
191 variable, and some use the @code{TMPDIR} environment variable.
192
193 @item
194 If the second argument of @code{save-some-buffers}, @var{pred}, is not
195 @code{nil}, then the precise value no longer matters. Any
196 non-@code{nil} value means the same as @code{t}: offer to save each
197 non-file buffer that has a non-@code{nil} value for
198 @code{buffer-offer-save}.
199
200 @item
201 The variable @code{inhibit-modification-hooks}
202 has no special meaning.
203
204 @item
205 The hook @code{fontification-functions} has been eliminated,
206 but there are other hooks, such as @code{window-scroll-functions},
207 that you can use to do a similar job.
208
209 @item
210 The variable @code{redisplay-dont-pause}
211 has no special meaning.
212
213 @item
214 The hook @code{calendar-move-hook} has been deleted.
215
216 @item
217 The function @code{move-to-column} treats any non-@code{nil}
218 second argument just like @code{t}.
219 @end itemize 98 @end itemize
220 99
221 @section Old Lisp Features in Emacs 20.3 100 @item
222 101 Several simplifications have been made to mouse support:
223 Here are the most important of the features that you will learn 102
224 to do without in Emacs 20.3: 103 @itemize @minus
225 104 @item
226 Here are changes in the Lisp language itself: 105 Clicking @kbd{mouse-1} won't follow links, as that is alien to the
227 106 spirit of Emacs. Therefore, the @code{follow-link} property doesn't
228 @itemize @bullet 107 has any special meaning, and the function @code{mouse-on-link-p} has
229 @item 108 been removed.
230 The functions @code{line-beginning-position} and @code{line-end-position} 109
231 have been eliminated. 110 @item
232 111 The variable @code{void-text-area-pointer} has been removed, so the
233 @item 112 mouse pointer shape remains unchanged when moving between valid text
234 The functions @code{directory-files-and-attributes}, 113 areas and void text areas. The @code{pointer} image and text
235 @code{file-attributes-lessp}, and @code{file-expand-wildcards}, have 114 properties are no longer supported.
115
116 @item
117 Mouse events will no longer specify the timestamp, the object clicked,
118 equivalent buffer positions (for marginal or fringe areas), glyph
119 coordinates, or relative pixel coordinates.
120 @end itemize
121
122 @item
123 Simplifications have also been made to the way Emacs handles keymaps
124 and key sequences:
125
126 @itemize @minus
127 @item
128 The @code{kbd} macro has been removed. It isn't that difficult to
129 write key sequences using the string and vector representations, and
130 we want to encourage users to learn.
131
132 @item
133 Emacs no longer supports key remapping. You can do pretty much the
134 same thing with @code{substitute-key-definition}, or by advising the
135 relevant command.
136
137 @item
138 The @code{keymap} text and overlay property is now overridden by minor
139 mode keymaps, and will not work at the ends of text properties and
140 overlays.
141
142 @item
143 The functions @code{map-keymap}, @code{keymap-prompt}, and
144 @code{current-active-maps} have been removed.
145 @end itemize
146
147 @item
148 Process support has been pared down to a functional minimum. The
149 functions @code{call-process-shell-command} and @code{process-file}
150 have been deleted. Processes no longer maintain property lists, and
151 they won't ask any questions when the user tries to exit Emacs (which
152 would simply be rude.) The function @code{signal-process} won't
153 accept a process object, only the process id; determining the process
154 id from a process object is left as an exercise to the programmer.
155
156 @item
157 Networking has also been simplified: @code{make-network-process} and
158 its various associated function have all been replaced with a single
159 easy-to-use function, @code{open-network-stream}, which can't use UDP,
160 can't act as a server, and can't set up non-blocking connections.
161 Also, deleting a network process with @code{delete-process} won't call
162 the sentinel.
163
164 @item
165 Many programming shortcuts have been deleted, to provide you with the
166 enjoyment of ``rolling your own''. The macros @code{while-no-input},
167 @code{with-local-quit}, and @code{with-selected-window}, along with
168 @code{dynamic-completion-table} and @code{lazy-completion-table} no
169 longer exist. Also, there are no built-in progress reporters;
170 with Emacs, you can take progress for granted.
171
172 @item
173 Variable aliases are no longer supported. Aliases are for functions,
174 not for variables.
175
176 @item
177 The variables @code{most-positive-fixnum} and
178 @code{most-negative-fixnum} do not exist. On 32 bit machines, the
179 most positive integer is probably 134217727, and the most negative
180 integer is probably -134217728.
181
182 @item
183 The functions @code{eql} and @code{macroexpand-all} are no longer
184 available. However, you can find similar functions in the @code{cl}
185 package.
186
187 @item
188 The list returned by @code{split-string} won't include null substrings
189 for separators at the beginning or end of a string. If you want to
190 check for such separators, do it separately.
191
192 @item
193 The function @code{assoc-string} has been removed. Use
194 @code{assoc-ignore-case} or @code{assoc-ignore-representation} (which
195 are no longer obsolete.)
196
197 @item
198 The escape sequence @samp{\s} is always interpreted as a super
199 modifier, never a space.
200
201 @item
202 The variable @code{buffer-save-without-query} has been removed, to
203 prevent Emacs from sneakily saving buffers. Also, the hook
204 @code{before-save-hook} has been removed, so if you want something to
205 be done before saving, advise or redefine @code{basic-save-buffer}.
206
207 @item
208 The variable @code{buffer-auto-save-file-format} has been renamed to
209 @code{auto-save-file-format}, and is no longer a permanent local.
210
211 @item
212 The function @code{visited-file-modtime} now returns a cons, instead
213 of a list of two integers. The primitive @code{set-file-times} has
236 been eliminated. 214 been eliminated.
237 215
238 @item 216 @item
239 The functions @code{decode-coding-region} and @code{encode-coding-region} 217 The function @code{file-remote-p} is no longer available.
240 leave text properties untouched, in case that is useful. (It rarely makes 218
241 any sense, though.) 219 @item
242 220 When determining the filename extension, a leading dot in a filename
243 @item 221 is no longer ignored. Thus, @file{.emacs} is considered to have
244 The functions @code{position-bytes} and @code{byte-to-position} have 222 extension @file{emacs}, rather than being extensionless.
245 been eliminated. 223
246 224 @item
247 @item 225 Emacs looks for special file handlers in a more efficient manner: it
248 Temporary buffers made with @code{with-output-to-temp-buffer} are now 226 will choose the first matching handler in
249 modifiable by default, and use Fundamental mode rather than Help mode. 227 @code{file-name-handler-alist}, rather than trying to figure out which
250 228 provides the closest match.
251 @item 229
252 The functions @code{sref} interprets its @var{index} argument as a 230 @item
253 number of bytes, not a number of characters. And the function 231 The @code{predicate} argument for @code{read-file-name} has been
254 @code{char-bytes} actually tries to report on the number of bytes that a 232 removed, and so have the variables @code{read-file-name-function} and
255 character occupies. 233 @code{read-file-name-completion-ignore-case}. The function
256 234 @code{read-directory-name} has also been removed.
257 @item 235
258 The function @code{process-running-child-p} has been eliminated. 236 @item
259 237 The functions @code{all-completions} and @code{try-completion} will no
260 @item 238 longer accept lists of strings or hash tables (it will still accept
261 The function @code{interrupt-process} and similar functions no longer do 239 alists, obarrays, and functions.) In addition, the function
262 anything special when the second argument is @code{lambda}. 240 @code{test-completion} is no longer available.
263 241
264 @item 242 @item
265 The function @code{define-prefix-command} accepts only two arguments. 243 The @samp{G} interactive code character is no longer supported.
266 244 Use @samp{F} instead.
267 @item 245
268 The meaning of the second argument to @code{read-char}, 246 @item
269 @code{read-event}, and @code{read-char-exclusive} has been reversed: 247 Arbitrary Lisp functions can no longer be recorded into
270 they use the current input method if the argument is if @code{nil}. 248 @code{buffer-undo-list}. As a consequence, @code{yank-undo-function}
271 249 is obsolete, and has been removed.
272 @item 250
273 The function @code{with-temp-message} has been eliminated. 251 @item
274 252 Emacs will never complain about commands that accumulate too much undo
275 @item 253 information, so you no longer have to worry about binding
276 The function @code{clear-this-command-keys} has been eliminated. 254 @code{buffer-undo-list} to @code{t} for such commands (though you may
277 255 want to do that anyway, to avoid taking up unnecessary memory space.)
278 @item 256
279 The functions @code{gap-position} and @code{gap-size} have been eliminated. 257 @item
280 258 Atomic change groups are no longer supported.
281 @item 259
282 In @code{modify-face}, an argument of @code{(nil)} has no special 260 @item
261 The list returned by @code{(match-data t)} no longer records the
262 buffer as a final element.
263
264 @item
265 The function @code{looking-back} has been removed, so we no longer
266 have the benefit of hindsight.
267
268 @item
269 The variable @code{search-spaces-regexp} does not exist. Spaces
270 always stand for themselves in regular expression searches.
271
272 @item
273 The functions @code{skip-chars-forward} and @code{skip-chars-backward}
274 no longer accepts character classes such as @samp{[:alpha:]}. All
275 characters are created equal.
276
277 @item
278 The @code{yank-handler} text property no longer has any meaning.
279 Also, @code{yank-excluded-properties}, @code{insert-for-yank}, and
280 @code{insert-buffer-substring-as-yank} have all been removed.
281
282 @item
283 The variable @code{char-property-alias-alist} has been deleted.
284 Aliases are for functions, not for properties.
285
286 @item
287 The function @code{get-char-property-and-overlay} has been deleted.
288 If you want the properties at a point, find the text properties at the
289 point; then, find the overlays at the point, and find the properties
290 on those overlays.
291
292 @item
293 Font Lock mode only manages @code{face} properties; you can't use
294 font-lock keywords to specify arbitrary text properties for it to
295 manage. After all, it is called Font Lock mode, not Arbitrary
296 Properties Lock mode.
297
298 @item
299 The arguments to @code{remove-overlays} are no longer optional.
300
301 @item
302 In @code{replace-match}, the replacement text now inherits properties
303 from the surrounding text.
304
305 @item
306 @code{mode-line-format} no longer supports the @code{:propertize},
307 @code{%i}, and @code{%I} constructs. The function
308 @code{format-mode-line} has been removed.
309
310 @item
311 The functions @code{window-inside-edges} and @code{window-body-height}
312 have been removed. You should do the relevant calculations yourself,
313 starting with @code{window-width} and @code{window-height}.
314
315 @item
316 The functions @code{window-pixel-edges} and
317 @code{window-inside-pixel-edges} have been removed. We prefer to
318 think in terms of lines and columns, not pixel coordinates. (Sometime
319 in the distant past, we will do away with graphical terminals
320 entirely, in favor of text terminals.) For similar reasons, the
321 functions @code{posn-at-point}, @code{posn-at-x-y}, and
322 @code{pos-visible-in-window-p} have been removed.
323
324 @item
325 The macro @code{save-selected-window} only saves the selected window
326 of the selected frame, so don't try selecting windows in other frames.
327
328 @item
329 The function @code{minibufferp} is no longer available.
330
331 @item
332 The function @code{modify-all-frames-parameters} has been removed (we
333 always suspected the name was ungrammatical, anyway.)
334
335 @item
336 The @code{line-spacing} variable no longer accepts float values.
337
338 @item
339 The function @code{tool-bar-local-item-from-menu} has been deleted.
340 If you need to make an entry in the tool bar, you can still use
341 @code{tool-bar-add-item-from-menu}, but that modifies the binding in
342 the source keymap instead of copying it into the local keymap.
343
344 @item
345 When determining the major mode, the file name takes precedence over
346 the interpreter magic line. The variable @code{magic-mode-alist},
347 which associates certain buffer beginnings with major modes, has been
348 eliminated.
349
350 @item
351 The hook @code{after-change-major-mode-hook} is not defined, and
352 neither are @code{run-mode-hooks} and @code{delay-mode-hooks}.
353
354 @item
355 The variable @code{minor-mode-list} has been removed.
356
357 @item
358 @code{define-derived-mode} will copy abbrevs from the parent mode's
359 abbrev table, instead of creating a new, empty abbrev table.
360
361 @item
362 There are no ``system'' abbrevs. When the user saves into the abbrevs
363 file, all abbrevs are saved.
364
365 @item
366 The Warnings facility has been removed. Just use @code{error}.
367
368 @item
369 Several hook variables have been renamed to flout the Emacs naming
370 conventions. We feel that consistency is boring, and having
371 non-standard hook names encourages users to check the documentation
372 before using a hook. For instance, the normal hook
373 @code{find-file-hook} has been renamed to @code{find-file-hooks}, and
374 the abnormal hook @code{delete-frame-functions} has been renamed to
375 @code{delete-frame-hook}.
376
377 @item
378 The function @code{symbol-file} does not exist. If you want to know
379 which file defined a function or variable, try grepping for it.
380
381 @item
382 The variable @code{load-history} records function definitions just
383 like variable definitions, instead of indicating which functions were
384 previously autoloaded.
385
386 @item
387 There is a new variable, @code{recursive-load-depth-limit}, which
388 specifies how many times files can recursively load themselves; it is
389 50 by default, and @code{nil} means infinity. Previously, Emacs signaled an
390 error after just 3 recursive loads, which was boring.
391
392 @item
393 Byte-compiler warnings and error messages will leave out the line and
394 character positions, in order to exercise your debugging skills.
395 Also, there is no @code{with-no-warnings} macro---instead of
396 suppressing compiler warnings, fix your code to avoid them!
397
398 @item
399 The function @code{unsafep} has been removed.
400
401 @item
402 File local variables can now specify a string with text properties.
403 Since arbitrary Lisp expressions can be embedded in text properties,
404 this can provide you with a great deal of flexibility and power. On
405 the other hand, @code{safe-local-eval-forms} and the
406 @code{safe-local-eval-function} function property have no special
283 meaning. 407 meaning.
284 408
285 @item 409 @item
286 The base64 conversion functions have been eliminated. 410 You can no longer use @code{char-displayable-p} to test if Emacs can
287 411 display a certain character.
288 @item 412
289 Wildcard support has been eliminated from @code{find-file} 413 @item
290 and allied functions. 414 The function @code{string-to-multibyte} is no longer available.
291 415
292 @item 416 @item
293 @code{file-attributes} returns the file size and the file inode number 417 The @code{translation-table-for-input} translation table has been
294 only as a simple integer. 418 removed. Also, translation hash tables are no longer available, so we
419 don't need the functions @code{lookup-character} and
420 @code{lookup-integer}.
421
422 @item
423 The @code{table} argument to @code{translate-region} can no longer be
424 a char-table; it has to be a string.
425
426 @item
427 The functions @code{merge-coding-systems} and
428 @code{decode-coding-inserted-region}, and the variable
429 @code{auto-coding-functions}, have been deleted. The
430 @code{mime-text-unsuitable} coding system property no longer has any
431 special meaning.
432
433 @item
434 If pure storage overflows while dumping, Emacs won't tell you how much
435 additional pure storage it needs. Try adding in increments of 20000,
436 until you have enough.
437
438 @item
439 The variables @code{gc-elapsed}, @code{gcs-done}, and
440 @code{post-gc-hook} have been garbage-collected.
295 @end itemize 441 @end itemize
442
443 @ignore
444 arch-tag: 1d0ef137-2bad-430e-ae8e-d820d569b5a6
445 @end ignore