Commit | Line | Data |
---|---|---|
6bf7aab6 | 1 | @c This is part of the Emacs manual. |
daaf40c7 | 2 | @c Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. |
6bf7aab6 DL |
3 | @c See file emacs.texi for copying conditions. |
4 | ||
5 | @node Antinews, MS-DOS, Command Arguments, Top | |
daaf40c7 | 6 | @appendix Emacs 20 Antinews |
6bf7aab6 DL |
7 | |
8 | For those users who live backwards in time, here is information about | |
daaf40c7 EZ |
9 | downgrading to Emacs version 20. We hope you will enjoy the greater |
10 | simplicity that results from the absence of many Emacs 21 features. | |
6bf7aab6 DL |
11 | |
12 | @itemize @bullet | |
13 | @item | |
16d51a35 EZ |
14 | The display engine has been greatly simplified by eliminating support |
15 | for variable-size characters and other non-text display features. This | |
16 | avoids the complexity of display layout in Emacs 21. To wit: | |
6bf7aab6 | 17 | |
daaf40c7 | 18 | @itemize @minus |
6bf7aab6 | 19 | @item |
16d51a35 EZ |
20 | Variable-size characters are not supported in Emacs 20. You cannot use |
21 | fonts which contain oversized characters, and using italics fonts can | |
22 | results in illegible display. However, text which uses variable-size | |
23 | fonts is unreadable anyway. With all characters in a frame layed out on | |
24 | a regular grid, each character having the same height and width, text is | |
25 | much easier to read. | |
6bf7aab6 DL |
26 | |
27 | @item | |
16d51a35 EZ |
28 | Emacs does not display images, or play sounds. It just displays text, |
29 | as you would expect from a @strong{text} editor. | |
6bf7aab6 | 30 | |
0772f3a3 | 31 | @item |
16d51a35 EZ |
32 | Specification of the font for a face now uses an XLFD font name, for |
33 | compatibility with other X applications. This means that font | |
34 | attributes cannot be merged when combining faces; however, experience | |
35 | shows that mergers are bad economics. Face inheritance has also been | |
36 | removed, so no one can accumulate ``too much face''. | |
0772f3a3 EZ |
37 | |
38 | @item | |
16d51a35 EZ |
39 | Several face appearance attributes such as 3D appearence, |
40 | strike-through, and overline, have been eliminated. | |
0772f3a3 | 41 | |
6bf7aab6 | 42 | @item |
16d51a35 EZ |
43 | Emacs now provides its own ``lean and mean'' scroll bars instead using |
44 | those from the X toolkit. Toggle buttons and radio buttons in menus now | |
45 | look just like any other menu item, which simplifies them, and prevents | |
46 | them from standing out and distracting your attention from the other | |
47 | menu items. | |
6bf7aab6 DL |
48 | |
49 | @item | |
16d51a35 EZ |
50 | There are no toolbars and no tooltips; in particular, @acronym{GUD} |
51 | mode cannot display variable values in a tooltip when you click on | |
52 | that variable's name. Instead, Emacs 20 provides a direct interface to | |
53 | the debugger, so that you can type appropriate debugger commands, such | |
54 | as @kbd{display foo} and @kbd{print bar}. As these commands use | |
55 | explicit words, their meaning is more self-evident. | |
6bf7aab6 DL |
56 | |
57 | @item | |
daaf40c7 | 58 | Colors are not available on character terminals. If you @emph{must} |
16d51a35 EZ |
59 | have colors, but cannot afford running X, you can now use the MS-DOG |
60 | version of Emacs inside a DOS emulator. | |
6bf7aab6 DL |
61 | |
62 | @item | |
16d51a35 EZ |
63 | The mode line is not mouse-sensitive, since it is meant only to |
64 | display information. Use keyboard commands to switch between buffers, | |
65 | toggle read-only and modified status, switch minor modes on and off, | |
66 | etc. | |
6bf7aab6 DL |
67 | |
68 | @item | |
16d51a35 EZ |
69 | The support for ``wheeled'' mice on XFree86 has been removed, because |
70 | of their slow scroll rate, and because you will find less and less of | |
71 | these mice as you go back in time. Instead Emacs 20 provides the | |
72 | @kbd{C-v} and @kbd{M-v} keys for scrolling. (You can also use the | |
73 | scroll bar, but be advised that it, too, may be absent in yet earlier | |
74 | Emacs versions.) | |
75 | ||
76 | @item | |
77 | Busy-cursor display is gone, as it was found to be too hard to draw on | |
78 | displays whose resolution is getting lower and lower. This means that | |
79 | you get the standard kind of cursor blinking that your terminal | |
80 | provides. | |
6bf7aab6 DL |
81 | |
82 | @item | |
daaf40c7 | 83 | Some aspects of Emacs appearance, such as the colors of the scroll bar |
16d51a35 EZ |
84 | and the menus, can only be controlled via X resources. Since colors |
85 | aren't supported except on X, it doesn't make any sense doing this in | |
86 | any way but the X way. For those users who aren't privy to X arcana, | |
87 | we've provided good default colors that should make everybody happy. | |
6bf7aab6 DL |
88 | |
89 | @item | |
16d51a35 EZ |
90 | The variable @code{show-trailing-whitespace} has no special meaning, so |
91 | trailing whitespace on a line is now always displayed correctly: as | |
92 | empty space. To see if a line ends with spaces or TABs, type @kbd{C-e} | |
93 | on that line. Likewise, empty lines at the end of the buffer are not | |
94 | marked in any way; use @kbd{M->} to see where the end of the buffer is. | |
6bf7aab6 DL |
95 | |
96 | @item | |
16d51a35 EZ |
97 | The spacing between text lines on the display now always follows the |
98 | font design and the rules of your window manager. This provides for | |
99 | predictable appearance of the displayed text. | |
daaf40c7 | 100 | @end itemize |
6bf7aab6 DL |
101 | |
102 | @item | |
16d51a35 EZ |
103 | Emacs 20 has simpler support for multi-lingual editing. While not as |
104 | radical a simplification as Emacs 19 was, it goes a long way toward | |
105 | eliminating some of the annoying features: | |
6bf7aab6 | 106 | |
daaf40c7 | 107 | @itemize @minus |
6bf7aab6 | 108 | @item |
16d51a35 EZ |
109 | Translations of the Emacs reference cards to other languages are no |
110 | longer part of the distribution, because in the past we expect | |
111 | computer users to speak English. | |
6bf7aab6 DL |
112 | |
113 | @item | |
daaf40c7 EZ |
114 | To avoid extra confusion, many language environments have been |
115 | eliminated. For example, @samp{Polish} and @samp{Celtic} (Latin-8) | |
16d51a35 EZ |
116 | environments are not supported. The Latin-9 environment is gone, |
117 | too, because you won't need the Euro sign in the past. | |
6bf7aab6 DL |
118 | |
119 | @item | |
16d51a35 EZ |
120 | Emacs 20 always asks you which coding system to use when saving |
121 | a buffer, unless it can use the same one that it used to read the buffer. | |
122 | It does not try to see if the preferred coding system is suitable. | |
6bf7aab6 | 123 | |
6bf7aab6 | 124 | @item |
daaf40c7 EZ |
125 | Commands which provide detailed information about character sets and |
126 | coding systems, such as @code{list-charset-chars}, | |
16d51a35 EZ |
127 | @code{describe-character-set}, and the @kbd{C-u C-x =} key-sequence, |
128 | no longer exist. The less said about non-@sc{ascii} characters, the | |
129 | better. | |
6bf7aab6 DL |
130 | |
131 | @item | |
daaf40c7 EZ |
132 | The terminal coding system cannot be set to something CCL-based, so |
133 | keyboards which produce @code{KOI8} and DOS/Windows codepage codes | |
16d51a35 EZ |
134 | cannot be supported directly. Instead, you should use one of the input |
135 | methods provided in the Leim package. | |
daaf40c7 | 136 | @end itemize |
6bf7aab6 | 137 | |
6bf7aab6 | 138 | @item |
16d51a35 EZ |
139 | As you move back through time, some systems will become unimportant or |
140 | enter the vaporware phase, so Emacs 20 does not support them: | |
daaf40c7 EZ |
141 | |
142 | @itemize @minus | |
143 | @item | |
16d51a35 | 144 | Emacs 20 cannot be built on GNU/Linux systems running on IA64 machines, |
daaf40c7 | 145 | and you cannot build a 64-bit Emacs for SPARC/Solaris systems which |
16d51a35 | 146 | support 64-bit executables. |
daaf40c7 EZ |
147 | |
148 | @item | |
149 | LynxOS is also not supported. | |
150 | @end itemize | |
151 | ||
6bf7aab6 | 152 | @item |
16d51a35 EZ |
153 | The arrangement of menu bar items differs from most other @acronym{GUI} |
154 | programs. We think that uniformity of look-and-feel is boring, and that | |
155 | Emacs' unique features require its unique menu-bar configuration. | |
daaf40c7 | 156 | |
6bf7aab6 | 157 | @item |
16d51a35 EZ |
158 | You cannot save the options that you set from the @samp{Options} |
159 | menu-bar menu; instead, you need to set all the options again each time | |
160 | you start a new session. However, if you follow the recommended | |
161 | practice and keep a single Emacs session running until you log out, | |
162 | you won't have to set the options very often. | |
daaf40c7 | 163 | |
6bf7aab6 | 164 | @item |
16d51a35 EZ |
165 | Emacs 20 does not pop up a buffer with error messages when an error is |
166 | signaled during loading of the user's init file. Instead, it simply | |
167 | announces the fact that an error happened. To know where in the init | |
168 | file was that, insert @code{(message "foo")} lines judiciously into the | |
169 | file and look for those messages in the @samp{*Messages*} buffer. | |
daaf40c7 | 170 | |
6bf7aab6 | 171 | @item |
16d51a35 EZ |
172 | Some commands no longer treat Transient Mark mode specially. For |
173 | example, @code{ispell} doesn't spell-check the region when Transient | |
174 | Mark mode is in effect and the mark is active; instead, it checks the | |
175 | current buffer. (Transient Mark mode is alien to the spirit of Emacs, | |
176 | so we are planning to remove it altogether in an earlier version.) | |
daaf40c7 | 177 | |
6bf7aab6 | 178 | @item |
16d51a35 EZ |
179 | @kbd{C-down-mouse-3} does not show the mode-specific menu in Emacs 20 |
180 | when menu bar is not displayed. | |
6bf7aab6 | 181 | |
daaf40c7 | 182 | @item |
16d51a35 EZ |
183 | For uniformity, @key{delete} function key in Emacs 20 works exactly like |
184 | the @key{DEL} key, on both text-only terminals and window systems---it | |
185 | always deletes backward. This eliminates the inconsistency of Emacs 21, | |
186 | where the key labeled @key{delete} deletes forward when you are using a | |
187 | window system, and backward on a text-only terminals. | |
6bf7aab6 | 188 | |
daaf40c7 | 189 | @item |
16d51a35 EZ |
190 | The ability to place backup files in special subdirectories (controlled |
191 | by @code{backup-directory-alist}) has been eliminated. This makes | |
192 | finding your backup files much easier: they are always in the same | |
193 | directory as the original files. | |
6bf7aab6 | 194 | |
daaf40c7 EZ |
195 | @item |
196 | Emacs no longer refuses to load Lisp files compiled by incompatible | |
16d51a35 EZ |
197 | versions of Emacs, which may contain invalid byte-code. Instead, |
198 | Emacs now dumps core when it encounters such byte-code. However, this | |
199 | is a rare occurrence, and it won't happen at all when all Emacs | |
200 | versions merge together, in the distant past. | |
201 | ||
202 | @item | |
203 | The @kbd{C-x 5 1} command has been eliminated. If you want to delete | |
204 | all the frames but the current one, delete them one by one instead. | |
205 | ||
206 | @item | |
207 | CC Mode now enforces identical values for some customizable options, | |
208 | such as indentation style, for better consistency. In particular, if | |
209 | you select an indentation style for Java, the same style is used | |
210 | for C and C@t{++} buffer as well. | |
6bf7aab6 | 211 | |
daaf40c7 | 212 | @item |
16d51a35 EZ |
213 | Isearch does not highlight other possible matches; it shows only the |
214 | current match, to avoid distracting your attention. @kbd{mouse-2} in | |
215 | the echo area during incremental search now signals an error, instead of | |
216 | inserting the current selection into the search string. But you can | |
217 | accomplish more or less the same job by typing @kbd{M-y}. | |
6bf7aab6 DL |
218 | |
219 | @item | |
16d51a35 EZ |
220 | The ability to specify a port number when editing remote files with |
221 | @code{ange-ftp} was removed. Instead, Emacs 20 provides undocumented | |
222 | features in the function @code{ange-ftp-normal-login} (@cite{Use the | |
223 | source, Luke!}) to specify the port. | |
6bf7aab6 DL |
224 | |
225 | @item | |
16d51a35 EZ |
226 | Emacs 20 does not check for changing time stamps of remote files, since |
227 | the old FTP programs you will encounter in the past could not provide | |
228 | the time stamp anyway. Windows-style FTP clients which output the | |
229 | @samp{^M} character at the end of each line get special handling from | |
230 | @code{ange-ftp} in Emacs 20, with unexpected results that should make | |
231 | your life more interesting. | |
6bf7aab6 DL |
232 | |
233 | @item | |
16d51a35 EZ |
234 | Many complicated display features, including highlighting of |
235 | mouse-sensitive text regions and popping up help strings for menu items, | |
236 | don't work in the MS-DOS version. Spelling doesn't work on MS-DOS, | |
237 | and Eshell doesn't exist, so there's no workable shell-mode, either. | |
238 | This fits the spirit of MS-DOS, which resembles a dumb character | |
239 | terminal. | |
6bf7aab6 DL |
240 | |
241 | @item | |
16d51a35 EZ |
242 | The @code{woman} package has been removed, so Emacs users on non-Posix |
243 | systems will need @emph{a real man} to read manual pages. (Users who | |
244 | are not macho can read the Info documentation instead.) | |
6bf7aab6 DL |
245 | |
246 | @item | |
16d51a35 EZ |
247 | @code{recentf} has been removed, because we figure that you can remember |
248 | the names of the files you edit frequently. With decreasing disk size, | |
249 | you should have fewer files anyway, so you won't notice the absence of | |
250 | this feature. | |
6bf7aab6 DL |
251 | |
252 | @item | |
16d51a35 EZ |
253 | The @code{field} property does not exist in Emasc 20, so various |
254 | packages that run subsidiary programs in Emacs buffers cannot in general | |
255 | distinguish which text was user input and which was output from the | |
256 | subprocess. If you need to try to do this nonetheless, Emacs 20 | |
257 | provides a variable @code{comint-prompt-regexp}, which lets you try to | |
258 | distinguish input by recognizing prompt strings. | |
6bf7aab6 | 259 | |
0772f3a3 | 260 | @item |
16d51a35 EZ |
261 | We have eliminated the special major modes for Delphi sources, |
262 | PostScript files, context diffs, and @file{TODO} files. Use Fundamental | |
263 | Mode instead. | |
0772f3a3 | 264 | |
6bf7aab6 | 265 | @item |
16d51a35 EZ |
266 | Many additional packages that unnecessarily complicate your life in |
267 | Emacs 21 are absent in Emacs 20. You cannot browse C@t{++} classes with | |
268 | Ebrowse, access @acronym{SQL} data bases, access @acronym{LDAP} and | |
269 | other directory servers, or mix shell commands and Lisp functions using | |
270 | Eshell. | |
6bf7aab6 DL |
271 | |
272 | @item | |
daaf40c7 | 273 | To keep up with decreasing computer memory capacity and disk space, many |
16d51a35 | 274 | other functions and files have been eliminated in Emacs 20. |
6bf7aab6 | 275 | @end itemize |