Add 2007 to copyright years.
[bpt/emacs.git] / man / anti.texi
1 @c This is part of the Emacs manual.
2 @c Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc.
3 @c See file emacs.texi for copying conditions.
4
5 @node Antinews, Mac OS, X Resources, Top
6 @appendix Emacs 21 Antinews
7
8 For those users who live backwards in time, here is information about
9 downgrading to Emacs version 21.4. We hope you will enjoy the greater
10 simplicity that results from the absence of many Emacs @value{EMACSVER}
11 features.
12
13 @itemize @bullet
14
15 @item
16 The buffer position and line number are now displayed at the end of
17 the mode line, where they can be more easily seen.
18
19 @item
20 The mode line of the selected window is no longer displayed with a
21 special face. All mode lines are created equal. Meanwhile, you can
22 use the variable @code{mode-line-inverse-video} to control whether
23 mode lines are highlighted at all---@code{nil} means don't highlight
24 them.
25
26 @item
27 Clicking on a link with the left mouse button (@kbd{mouse-1}) will
28 always set point at the position clicked, instead of following the
29 link. If you want to follow the link, use the middle mouse button
30 (@kbd{mouse-2}).
31
32 @item
33 Emacs is tired of X droppings. If you drop a file or a piece of text
34 onto an Emacs window, nothing will happen.
35
36 @item
37 On an xterm, even if you enable Xterm Mouse mode, Emacs provides a
38 more convincing simulation of a text terminal by not responding to
39 mouse clicks on the mode line, header line, or display margin.
40
41 @item
42 For simplicity, windows always have fringes. We wouldn't want to
43 in-fringe anyone's windows. Likewise, horizontal scrolling always
44 works in the same automatic way.
45
46 @item
47 The horizontal-bar cursor shape has been removed.
48
49 @item
50 If command line arguments are given, Emacs will not display a splash
51 screen, so that you can immediately get on with your editing. The
52 command-line option @samp{--no-splash} is therefore obsolete, and has
53 been removed.
54
55 @item
56 The command line options @samp{--color}, @samp{--fullwidth},
57 @samp{--fullheight}, @samp{--fullscreen}, @samp{--no-blinking-cursor},
58 @samp{--no-desktop}, and @samp{-Q} have also been removed.
59
60 @item
61 The @samp{--geometry} option applies only to the initial frame, and
62 the @samp{-f} option will not read arguments for interactive
63 functions.
64
65 @item
66 We have standardized on one location for the user init file: the file
67 named @file{.emacs} in your home directory. Emacs will not look for
68 the init file in @file{~/.emacs.d/init.el}. Similarly, don't try
69 putting @file{.emacs_SHELL} as @file{init_SHELL.sh} in
70 @file{~/.emacs.d}; Emacs won't find it.
71
72 @item
73 Emacs will not read @file{~/.abbrev_defs} automatically. If you want
74 to load abbrev definitions from a file, you must always do so
75 explicitly.
76
77 @item
78 When you are logged in as root, all files now give you writable
79 buffers, reflecting the fact that you can write any files.
80
81 @item
82 The maximum size of buffers and integer variables has been halved. On
83 32-bit machines, the maximum buffer size is now 128 megabytes.
84
85 @item
86 An unquoted @samp{$} in a file name is now an error, if the following
87 name is not recognized as an environment variable. Thus,
88 the file name @file{foo$bar} would probably be an error. Meanwhile,
89 the @code{setenv} command does not expand @samp{$} at all.
90
91 @item
92 If a single command accumulates too much undo information, Emacs never
93 discards it. If Emacs runs out of memory as a result, it will handle
94 this by crashing.
95
96 @item
97 Many commands have been removed from the menus or rearranged.
98
99 @item
100 The @kbd{C-h} (help) subcommands have been rearranged---especially
101 those that display specific files. Type @kbd{C-h C-h} to see a list
102 of these commands; that will show you what is different.
103
104 @item
105 The @kbd{C-h v} and @kbd{C-h f} commands no longer show a hyperlink to
106 the C source code, even if it is available. If you want to find the
107 source code, grep for it.
108
109 @item
110 The apropos commands will not accept a list of words to match, in
111 order to encourage you to be more specific. Also, the user option
112 @code{apropos-sort-by-scores} has been removed.
113
114 @item
115 The minibuffer prompt is now displayed using the default face.
116 The colon is enough to show you what part is the prompt.
117
118 @item
119 Minibuffer completion commands always complete the entire minibuffer
120 contents, just as if you had typed them at the end of the minibuffer,
121 no matter where point is actually located.
122
123 @item
124 The command @code{backward-kill-sexp} is now bound to @kbd{C-M-delete}
125 and @kbd{C-M-backspace}. Be careful when using these key sequences!
126 It may shut down your X server, or reboot your operating system.
127
128 @item
129 Commands to set the mark at a place away from point, including
130 @kbd{M-@@}, @kbd{M-h}, etc., don't do anything special when you repeat
131 them. In most cases, typing these commands multiple times is
132 equivalent to typing them once. @kbd{M-h} ignores numeric arguments.
133
134 @item
135 The user option @code{set-mark-command-repeat-pop} has been removed.
136
137 @item
138 @kbd{C-@key{SPC} C-@key{SPC}} has no special meaning--it just sets the
139 mark twice. Neither does @kbd{C-u C-x C-x}, which simply exchanges
140 point and mark like @kbd{C-x C-x}.
141
142 @item
143 The function @code{sentence-end} has been eliminated in favor of a
144 more straightforward approach: directly setting the variable
145 @code{sentence-end}. For example, to end each sentence with a single
146 space, use
147
148 @lisp
149 (setq sentence-end "[.?!][]\"')@}]*\\($\\|[ \t]\\)[ \t\n]*")
150 @end lisp
151
152 @item
153 The variable @code{fill-nobreak-predicate} is no longer customizable,
154 and it can only hold a single function.
155
156 @item
157 Nobreak spaces and hyphens are displayed just like normal characters,
158 and the user option @code{nobreak-char-display} has been removed.
159
160 @item
161 @kbd{C-w} in an incremental search always grabs an entire word
162 into the search string. More precisely, it grabs text through
163 the next end of a word.
164
165 @item
166 Yanking now preserves all text properties that were in the killed
167 text. The variable @code{yank-excluded-properties} has been removed.
168
169 @item
170 Occur mode, Info mode, and Comint-derived modes now control
171 fontification in their own way, and @kbd{M-x font-lock-mode} has
172 nothing to do with it. To control fontification in Info mode, use the
173 variable @code{Info-fontify}.
174
175 @item
176 @samp{M-x shell} is now completely standard in regard to scrolling
177 behavior. It no longer has the option of scrolling the input line to
178 the bottom of the window the way a text terminal running a shell does.
179
180 @item
181 The Grep package has been merged with Compilation mode. Many
182 grep-specific commands and user options have thus been eliminated.
183 Also, @kbd{M-x grep} never tries the GNU grep @samp{-H} option,
184 and instead silently appends @file{/dev/null} to the command line.
185
186 @item
187 In Dired's @kbd{!} command, @samp{*} and @samp{?} now
188 cause substitution of the file names wherever they appear---not
189 only when they are surrounded by whitespace.
190
191 @item
192 When a file is managed with version control, the command @kbd{C-x C-q}
193 (whose general meaning is to make a buffer read-only or writable) now
194 does so by checking the file in or out. Checking the file out makes
195 the buffer writable; checking it in makes the buffer read-only.
196
197 You can still use @kbd{C-x v v} to do these operations if you wish;
198 its meaning is unchanged. If you want to control the buffer's
199 read-only flag without performing any version control operation,
200 use @kbd{M-x toggle-read-only}.
201
202 @item
203 SGML mode does not handle XML syntax, and does not have indentation
204 support.
205
206 @item
207 Many Info mode commands have been removed. Incremental search in Info
208 searches only the current node.
209
210 @item
211 Many @code{etags} features for customizing parsing using regexps
212 have been removed.
213
214 @item
215 The Emacs server now runs a small C program called @file{emacsserver},
216 rather than trying to handle everything in Emacs Lisp. Now there can
217 only be one Emacs server running at a time. The @code{server-mode}
218 command and @code{server-name} user option have been eliminated.
219
220 @item
221 The @file{emacsclient} program no longer accepts the @samp{--eval},
222 @samp{--display} and @samp{--server-file} command line options, and
223 can only establish local connections using Unix domain sockets.
224
225 @item
226 The command @code{quail-show-key}, for showing how to input a
227 character, has been removed.
228
229 @item
230 The default value of @code{keyboard-coding-system} is always
231 @code{nil}, regardless of your locale settings. If you want some
232 other value, set it yourself.
233
234 @item
235 Unicode support and unification between Latin-@var{n} character sets
236 have been removed. Cutting and pasting X selections does not support
237 ``extended segments'', so there are certain coding systems it cannot
238 handle.
239
240 @item
241 The input methods for Emacs are included in a separate distribution
242 called ``Leim.'' To use this, you must extract the Leim tar file on
243 top of the Emacs distribution, into the same directory, before you
244 build Emacs.
245
246 @item
247 The following input methods have been eliminated: belarusian,
248 bulgarian-bds, bulgarian-phonetic, chinese-sisheng, croatian, dutch,
249 georgian, latin-alt-postfix, latin-postfix, latin-prefix,
250 latvian-keyboard, lithuanian-numeric, lithuanian-keyboard,
251 malayalam-inscript, rfc1345, russian-computer, sgml, slovenian,
252 tamil-inscript ucs, ukrainian-computer, vietnamese-telex, and welsh.
253
254 @item
255 The following language environments have been eliminated: Belarusian,
256 Bulgarian, Chinese-EUC-TW, Croatian, French, Georgian, Italian,
257 Latin-6, Latin-7, Latvian, Lithuanian, Malayalam, Russian, Russian,
258 Slovenian, Swedish, Tajik, Tamil, UTF-8, Ukrainian, Ukrainian, Welsh,
259 and Windows-1255.
260
261 @item
262 The @code{code-pages} library, which contained various 8-bit coding
263 systems, has been removed.
264
265 @item
266 The Kmacro package has been replaced with a simple and elegant
267 keyboard macro system. Use @kbd{C-x (} to start a new keyboard macro,
268 @kbd{C-x )} to end the macro, and @kbd{C-x e} to execute the last
269 macro. Use @kbd{M-x name-last-kbd-macro} to name the most recently
270 defined macro.
271
272 @item
273 Emacs no longer displays your breakpoints in the source buffer, so you
274 have to remember where you left them. It can be difficult to inspect
275 the state of your debugged program from the command line, so Emacs
276 tries to demonstrate this in the GUD buffer.
277
278 @item
279 The Calc, CUA, Ibuffer, Ido, Password, Printing, Reveal,
280 Ruler-mode, SES, Table, Tramp, and URL packages have been removed.
281 The Benchmark, Cfengine, Conf, Dns, Flymake, Python, Thumbs, and
282 Wdired modes have also been removed.
283
284 @item
285 The Emacs Lisp Reference Manual and the Introduction to Programming in
286 Emacs Lisp are now distributed separately, not in the Emacs
287 distribution.
288
289 @item
290 On MS Windows, there is no longer any support for tooltips, images,
291 sound, different mouse pointer shapes, or pointing devices with more
292 than 3 buttons. If you want these features, consider switching to
293 another operating system. But even if you don't want these features,
294 you should still switch---for freedom's sake.
295
296 @item
297 Emacs will not use Unicode for clipboard operations on MS Windows.
298
299 @item
300 To keep up with decreasing computer memory capacity and disk space, many
301 other functions and files have been eliminated in Emacs 21.4.
302 @end itemize
303
304 @ignore
305 arch-tag: 32932bd9-46f5-41b2-8a0e-fb0cc4caeb29
306 @end ignore