aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Zaretskii2000-10-19 06:52:31 +0000
committerEli Zaretskii2000-10-19 06:52:31 +0000
commit16d51a35b20610c4a892a8559ebdca587162acb7 (patch)
tree8734965145a54e8fc340bd1428a8747aa867ea9e
parent8bb84cb2f108e8b1690215c24952ea2780dd2f59 (diff)
downloademacs-16d51a35b20610c4a892a8559ebdca587162acb7.tar.gz
emacs-16d51a35b20610c4a892a8559ebdca587162acb7.zip
(Antinews): Many changes from Richard M. Stallman.
-rw-r--r--man/anti.texi293
1 files changed, 165 insertions, 128 deletions
diff --git a/man/anti.texi b/man/anti.texi
index 3e64f08b1b1..c3affea474c 100644
--- a/man/anti.texi
+++ b/man/anti.texi
@@ -11,228 +11,265 @@ simplicity that results from the absence of many Emacs 21 features.
11 11
12@itemize @bullet 12@itemize @bullet
13@item 13@item
14The good, old, vintage Emacs 19 display engine is back, eliminating most 14The display engine has been greatly simplified by eliminating support
15of the unnecessary complications introduced with Emacs 21. To wit: 15for variable-size characters and other non-text display features. This
16avoids the complexity of display layout in Emacs 21. To wit:
16 17
17@itemize @minus 18@itemize @minus
18@item 19@item
19Variable-size characters are not supported anymore: you cannot use fonts 20Variable-size characters are not supported in Emacs 20. You cannot use
20which contain oversized characters, and using italics fonts can totally 21fonts which contain oversized characters, and using italics fonts can
21screw up your display. Find one font that works and stick to it! 22results in illegible display. However, text which uses variable-size
23fonts is unreadable anyway. With all characters in a frame layed out on
24a regular grid, each character having the same height and width, text is
25much easier to read.
22 26
23@item 27@item
24Likewise, Emacs cannot display images, play sounds, or do anything 28Emacs does not display images, or play sounds. It just displays text,
25except displaying text. Multimedia is for Netrape! 29as you would expect from a @strong{text} editor.
26 30
27@item 31@item
28Faces on X were made to follow the XLFD font names, to avoid the need of 32Specification of the font for a face now uses an XLFD font name, for
29reinventing what X has already invented. This means that face merging 33compatibility with other X applications. This means that font
30doesn't work. However, experience shows that supporting mergers is bad 34attributes cannot be merged when combining faces; however, experience
31economics. Face inheritance was also removed. 35shows that mergers are bad economics. Face inheritance has also been
36removed, so no one can accumulate ``too much face''.
32 37
33@item 38@item
34New face attributes, such as 3D appearence, strike-through, overline 39Several face appearance attributes such as 3D appearence,
35etc., were eliminated, to minimize consing. 40strike-through, and overline, have been eliminated.
36 41
37@item 42@item
38Toolkit scrollbars are not supported. Emacs bare-bones X scrollbars are 43Emacs now provides its own ``lean and mean'' scroll bars instead using
39so much leaner and meaner. There are no toggle buttons and radio 44those from the X toolkit. Toggle buttons and radio buttons in menus now
40buttons in menus. @code{LessTif} is not supported either. 45look just like any other menu item, which simplifies them, and prevents
46them from standing out and distracting your attention from the other
47menu items.
41 48
42@item 49@item
43There are no toolbars and no tooltips; in particular, the @acronym{GUD} 50There are no toolbars and no tooltips; in particular, @acronym{GUD}
44mode cannot display in a tooltip a value of a variable when you click on 51mode cannot display variable values in a tooltip when you click on
45that variable's name. Emacs is an editor, not some fancy GUI program! 52that variable's name. Instead, Emacs 20 provides a direct interface to
53the debugger, so that you can type appropriate debugger commands, such
54as @kbd{display foo} and @kbd{print bar}. As these commands use
55explicit words, their meaning is more self-evident.
46 56
47@item 57@item
48Colors are not available on character terminals. If you @emph{must} 58Colors are not available on character terminals. If you @emph{must}
49have colors, but cannot afford running X, use the MS-DOG version of 59have colors, but cannot afford running X, you can now use the MS-DOG
50Emacs inside a DOS emulator. 60version of Emacs inside a DOS emulator.
51 61
52@item 62@item
53The mode line is no longer mouse-sensitive. You will have to remember 63The mode line is not mouse-sensitive, since it is meant only to
54all the necessary commands to switch between buffers, toggle read-only 64display information. Use keyboard commands to switch between buffers,
55and modified status, switch minor modes on and off, etc. 65toggle read-only and modified status, switch minor modes on and off,
66etc.
56 67
57@item 68@item
58The support for ``wheeled'' mice on XFree86 has been removed. Go away, 69The support for ``wheeled'' mice on XFree86 has been removed, because
59MS-Windows weenies! Busy-cursor display has gone down the drain, too, 70of their slow scroll rate, and because you will find less and less of
60for the same reasons. Meanwhile, the cursor blinking is no longer under 71these mice as you go back in time. Instead Emacs 20 provides the
61your control. 72@kbd{C-v} and @kbd{M-v} keys for scrolling. (You can also use the
73scroll bar, but be advised that it, too, may be absent in yet earlier
74Emacs versions.)
75
76@item
77Busy-cursor display is gone, as it was found to be too hard to draw on
78displays whose resolution is getting lower and lower. This means that
79you get the standard kind of cursor blinking that your terminal
80provides.
62 81
63@item 82@item
64Some aspects of Emacs appearance, such as the colors of the scroll bar 83Some aspects of Emacs appearance, such as the colors of the scroll bar
65and the menus, can only be controlled via X resources. Users who aren't 84and the menus, can only be controlled via X resources. Since colors
66privy to X arcana, should learn to be happy with the default colors. 85aren't supported except on X, it doesn't make any sense doing this in
86any way but the X way. For those users who aren't privy to X arcana,
87we've provided good default colors that should make everybody happy.
67 88
68@item 89@item
69Highlighting of trailing whitespace is not available; you need to move 90The variable @code{show-trailing-whitespace} has no special meaning, so
70the cursor into the suspect area to find out whether there is slack 91trailing whitespace on a line is now always displayed correctly: as
71whitespace there. Empty lines at the end of the buffer cannot be marked 92empty space. To see if a line ends with spaces or TABs, type @kbd{C-e}
72in any way, either, since each user should know where the buffer ends 93on that line. Likewise, empty lines at the end of the buffer are not
73without any help. 94marked in any way; use @kbd{M->} to see where the end of the buffer is.
74 95
75@item 96@item
76You cannot control the spacing between text lines on the display; you 97The spacing between text lines on the display now always follows the
77are now entirely at the mercy of the font designer and the window 98font design and the rules of your window manager. This provides for
78manager. Complain to them if your display looks ugly. 99predictable appearance of the displayed text.
79@end itemize 100@end itemize
80 101
81@item 102@item
82Emacs 20 has less elaborate support for multi-lingual editing. While 103Emacs 20 has simpler support for multi-lingual editing. While not as
83not as radical as Emacs 19 (which doesn't support anything but 104radical a simplification as Emacs 19 was, it goes a long way toward
84single-byte European characters), it goes a long way toward eliminating 105eliminating some of the annoying features:
85some of the annoying features:
86 106
87@itemize @minus 107@itemize @minus
88@item 108@item
89Translations of the Emacs reference cards to other languages are gone. 109Translations of the Emacs reference cards to other languages are no
90Every Emacs user should know English better than their national 110longer part of the distribution, because in the past we expect
91languages. 111computer users to speak English.
92 112
93@item 113@item
94To avoid extra confusion, many language environments have been 114To avoid extra confusion, many language environments have been
95eliminated. For example, @samp{Polish} and @samp{Celtic} (Latin-8) 115eliminated. For example, @samp{Polish} and @samp{Celtic} (Latin-8)
96environments are not supported, and you cannot have the Euro characters, 116environments are not supported. The Latin-9 environment is gone,
97since the Latin-9 environment is gone, too. 117too, because you won't need the Euro sign in the past.
98 118
99@item 119@item
100Emacs no longer uses the most preferred coding system if it is suitable 120Emacs 20 always asks you which coding system to use when saving
101for saving the buffer. Instead, it always prompts you for a coding 121a buffer, unless it can use the same one that it used to read the buffer.
102system, so that you get to know its name better. 122It does not try to see if the preferred coding system is suitable.
103 123
104@item 124@item
105Commands which provide detailed information about character sets and 125Commands which provide detailed information about character sets and
106coding systems, such as @code{list-charset-chars}, 126coding systems, such as @code{list-charset-chars},
107@code{describe-character-set}, and the @kbd{C-u C-x =} key-sequence, no 127@code{describe-character-set}, and the @kbd{C-u C-x =} key-sequence,
108longer exist. User feedback suggests that telling too much about 128no longer exist. The less said about non-@sc{ascii} characters, the
109non-@sc{ascii} characters is confusing and unnecessary. 129better.
110 130
111@item 131@item
112The terminal coding system cannot be set to something CCL-based, so 132The terminal coding system cannot be set to something CCL-based, so
113keyboards which produce @code{KOI8} and DOS/Windows codepage codes 133keyboards which produce @code{KOI8} and DOS/Windows codepage codes
114cannot be supported directly. Leim is so much simpler! 134cannot be supported directly. Instead, you should use one of the input
135methods provided in the Leim package.
115@end itemize 136@end itemize
116 137
117@item 138@item
118Systems which are deemed unimportant or still in vaporware phase are no 139As you move back through time, some systems will become unimportant or
119longer supported: 140enter the vaporware phase, so Emacs 20 does not support them:
120 141
121@itemize @minus 142@itemize @minus
122@item 143@item
123Emacs cannot be built on GNU/Linux systems running on IA64 machines, 144Emacs 20 cannot be built on GNU/Linux systems running on IA64 machines,
124and you cannot build a 64-bit Emacs for SPARC/Solaris systems which 145and you cannot build a 64-bit Emacs for SPARC/Solaris systems which
125support 64-bit executables. Thus, Emacs contributes to stability of 146support 64-bit executables.
126these systems by preventing you from corrupting files larger than 128MB.
127 147
128@item 148@item
129LynxOS is also not supported. 149LynxOS is also not supported.
130@end itemize 150@end itemize
131 151
132@item 152@item
133The menu bar is no longer @acronym{CUA}-compliant. We think that 153The arrangement of menu bar items differs from most other @acronym{GUI}
134uniformity of look-and-feel is boring, and that @acronym{CUA} is not 154programs. We think that uniformity of look-and-feel is boring, and that
135suitable for Emacs anyway. 155Emacs' unique features require its unique menu-bar configuration.
136 156
137@item 157@item
138You cannot save the options set via the @samp{Options} menu-bar menu; 158You cannot save the options that you set from the @samp{Options}
139instead, you need to set all the options again each time you start a new 159menu-bar menu; instead, you need to set all the options again each time
140session. This will gradually make your acquaintance with the options 160you start a new session. However, if you follow the recommended
141better and better, until eventually you will be able to set all the 161practice and keep a single Emacs session running until you log out,
142options without looking at the screen. Unless you start Emacs once and 162you won't have to set the options very often.
143never stop it, that is.
144 163
145@item 164@item
146Emacs no longer pops up a buffer with error messages when an error is 165Emacs 20 does not pop up a buffer with error messages when an error is
147signaled during loading of the user's init file. Gurus who can debug 166signaled during loading of the user's init file. Instead, it simply
148init files by the seat of their pants will regain their due honor which 167announces the fact that an error happened. To know where in the init
149they lost with Emacs 21. 168file was that, insert @code{(message "foo")} lines judiciously into the
169file and look for those messages in the @samp{*Messages*} buffer.
150 170
151@item 171@item
152Many commands duly ignore the active region when Transient Mark mode is 172Some commands no longer treat Transient Mark mode specially. For
153in effect. (Transient Mark mode is alien to Emacs mantra in the first 173example, @code{ispell} doesn't spell-check the region when Transient
154place, its introduction was a grave mistake, and we are planning to 174Mark mode is in effect and the mark is active; instead, it checks the
155remove it altogether in one of the previous versions; stay tuned.) 175current buffer. (Transient Mark mode is alien to the spirit of Emacs,
176so we are planning to remove it altogether in an earlier version.)
156 177
157@item 178@item
158@kbd{C-down-mouse-3} does nothing special when menu bar is not 179@kbd{C-down-mouse-3} does not show the mode-specific menu in Emacs 20
159displayed. Users who don't like the menu bar should be amply punished 180when menu bar is not displayed.
160by forcing them to use the @code{tmm-menubar} replacement, even if they
161do have the mouse.
162 181
163@item 182@item
164The @key{delete} function key produces the same effect as the @key{DEL} 183For uniformity, @key{delete} function key in Emacs 20 works exactly like
165key, on both TTY and windowed displays. Never again will you be 184the @key{DEL} key, on both text-only terminals and window systems---it
166confused by this terrible @emph{dichotomy}! 185always deletes backward. This eliminates the inconsistency of Emacs 21,
186where the key labeled @key{delete} deletes forward when you are using a
187window system, and backward on a text-only terminals.
167 188
168@item 189@item
169The ability to save backup files in special subdirectories has been 190The ability to place backup files in special subdirectories (controlled
170eliminated. This makes finding your backup files much easier. 191by @code{backup-directory-alist}) has been eliminated. This makes
192finding your backup files much easier: they are always in the same
193directory as the original files.
171 194
172@item 195@item
173Emacs no longer refuses to load Lisp files compiled by incompatible 196Emacs no longer refuses to load Lisp files compiled by incompatible
174versions of other Emacsen, which may contain invalid byte-code. 197versions of Emacs, which may contain invalid byte-code. Instead,
175Instead, Emacs now dumps core when it encounters such byte-code. 198Emacs now dumps core when it encounters such byte-code. However, this
199is a rare occurrence, and it won't happen at all when all Emacs
200versions merge together, in the distant past.
201
202@item
203The @kbd{C-x 5 1} command has been eliminated. If you want to delete
204all the frames but the current one, delete them one by one instead.
205
206@item
207CC Mode now enforces identical values for some customizable options,
208such as indentation style, for better consistency. In particular, if
209you select an indentation style for Java, the same style is used
210for C and C@t{++} buffer as well.
176 211
177@item 212@item
178You cannot delete all frames but the current one with @kbd{C-x 5 1}. 213Isearch does not highlight other possible matches; it shows only the
179Delete them one by one instead. If you have many frames, it's tough on 214current match, to avoid distracting your attention. @kbd{mouse-2} in
180you. 215the echo area during incremental search now signals an error, instead of
216inserting the current selection into the search string. But you can
217accomplish more or less the same job by typing @kbd{M-y}.
181 218
182@item 219@item
183CC Mode is now much harder to customize, due to subtle aspects of local 220The ability to specify a port number when editing remote files with
184and global bindings. In particular, if you change the indentation style 221@code{ange-ftp} was removed. Instead, Emacs 20 provides undocumented
185as appropriate for Java, the indentation in C and C@t{++} buffers is 222features in the function @code{ange-ftp-normal-login} (@cite{Use the
186messed up, and vice versa. 223source, Luke!}) to specify the port.
187 224
188@item 225@item
189Isearch no longer highlights matches besides the current one, and 226Emacs 20 does not check for changing time stamps of remote files, since
190@kbd{mouse-2} in the echo area during incremental search now signals an 227the old FTP programs you will encounter in the past could not provide
191error, since nobody in their right mind will use a mouse while 228the time stamp anyway. Windows-style FTP clients which output the
192searching. 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
231your life more interesting.
193 232
194@item 233@item
195You cannot specify a port number with @code{ange-ftp}. Instead, you 234Many complicated display features, including highlighting of
196need to rely on undocumented features (@emph{use the source, Luke!}) to 235mouse-sensitive text regions and popping up help strings for menu items,
197sneak the port in. Time stamps for remote files are not supported, and 236don't work in the MS-DOS version. Spelling doesn't work on MS-DOS,
198Windows-style ftp clients which output the @samp{^M} character at the 237and Eshell doesn't exist, so there's no workable shell-mode, either.
199end of each line wreak havoc with @code{ange-ftp}, making your life more 238This fits the spirit of MS-DOS, which resembles a dumb character
200interesting. 239terminal.
201 240
202@item 241@item
203Many advanced display features, such as highlighting of mouse-sensitive 242The @code{woman} package has been removed, so Emacs users on non-Posix
204text regions and popping up help strings for menu items, don't work in 243systems will need @emph{a real man} to read manual pages. (Users who
205the MS-DOS version. Ispell and Eshell don't work on MS-DOS, either. 244are not macho can read the Info documentation instead.)
206MS-DOG users should be aware of their inferiority at all times!
207 245
208@item 246@item
209There's no woman.el package, so Emacs users on non-Posix systems should 247@code{recentf} has been removed, because we figure that you can remember
210learn to read Troff sources of manual pages. This is a Good Thing, 248the names of the files you edit frequently. With decreasing disk size,
211since Troff is such a nice, intuitive language. 249you should have fewer files anyway, so you won't notice the absence of
250this feature.
212 251
213@item 252@item
214recentf.el is not available, so you will have to memorize your 253The @code{field} property does not exist in Emasc 20, so various
215frequently edited files by heart, or use desktop.el. 254packages that run subsidiary programs in Emacs buffers cannot in general
255distinguish which text was user input and which was output from the
256subprocess. If you need to try to do this nonetheless, Emacs 20
257provides a variable @code{comint-prompt-regexp}, which lets you try to
258distinguish input by recognizing prompt strings.
216 259
217@item 260@item
218Field properties were eliminated, so various packages based on comint.el 261We have eliminated the special major modes for Delphi sources,
219which run subsidiary programs in Emacs buffers cannot easily distinguish 262PostScript files, context diffs, and @file{TODO} files. Use Fundamental
220between text which came from the subprocess and text typed by the user. 263Mode instead.
221The ingenious techniques this requires from Lisp programs will
222undoubtfully assist to further advance and development of the Emacs Lisp
223language.
224 264
225@item 265@item
226Many additional packages that were unnecessarily complicating your lives 266Many additional packages that unnecessarily complicate your life in
227are no longer with us. You cannot browse C@t{++} classes with Ebrowse, 267Emacs 21 are absent in Emacs 20. You cannot browse C@t{++} classes with
228edit Delphi sources, access @acronym{SQL} data bases, edit PostScript 268Ebrowse, access @acronym{SQL} data bases, access @acronym{LDAP} and
229files and context diffs, access @acronym{LDAP} and other directory 269other directory servers, or mix shell commands and Lisp functions using
230servers, edit @file{TODO} files conveniently, or mix shell commands and 270Eshell.
231Lisp functions with Eshell. Emacs doesn't need all that crud.
232 271
233@item 272@item
234To keep up with decreasing computer memory capacity and disk space, many 273To keep up with decreasing computer memory capacity and disk space, many
235other functions and files have been eliminated in Emacs 20. There's no 274other functions and files have been eliminated in Emacs 20.
236need to mention them all here. If you try to use one of them, you'll
237get an error message to tell you that it is undefined or unbound.
238@end itemize 275@end itemize