@c This is part of the Emacs manual. @c Copyright (C) 1997, 1999, 2000 Free Software Foundation, Inc. @c See file emacs.texi for copying conditions. @node Antinews, MS-DOS, Command Arguments, Top @appendix Emacs 20 Antinews For those users who live backwards in time, here is information about downgrading to Emacs version 20. We hope you will enjoy the greater simplicity that results from the absence of many Emacs 21 features. @itemize @bullet @item The good, old, vintage Emacs 19 display engine is back, eliminating most of the unnecessary complications introduced with Emacs 21. To wit: @itemize @minus @item Variable-size characters are not supported anymore: you cannot use fonts which contain oversized characters, and using italics fonts can totally screw up your display. Find one font that works and stick to it! @item Likewise, Emacs cannot display images, play sounds, or do anything except displaying text. Multimedia is for Netrape! @item Faces on X were made to follow the XLFD font names, to avoid the need of reinventing what X has already invented. This means that face merging doesn't work. However, experience shows that supporting mergers is bad economics. Face inheritance was also removed. @item New face attributes, such as 3D appearence, strike-through, overline etc., were eliminated, to minimize consing. @item Toolkit scrollbars are not supported. Emacs bare-bones X scrollbars are so much leaner and meaner. There are no toggle buttons and radio buttons in menus. @code{LessTif} is not supported either. @item There are no toolbars and no tooltips; in particular, the @acronym{GUD} mode cannot display in a tooltip a value of a variable when you click on that variable's name. Emacs is an editor, not some fancy GUI program! @item Colors are not available on character terminals. If you @emph{must} have colors, but cannot afford running X, use the MS-DOG version of Emacs inside a DOS emulator. @item The mode line is no longer mouse-sensitive. You will have to remember all the necessary commands to switch between buffers, toggle read-only and modified status, switch minor modes on and off, etc. @item The support for ``wheeled'' mice on XFree86 has been removed. Go away, MS-Windows weenies! Busy-cursor display has gone down the drain, too, for the same reasons. Meanwhile, the cursor blinking is no longer under your control. @item Some aspects of Emacs appearance, such as the colors of the scroll bar and the menus, can only be controlled via X resources. Users who aren't privy to X arcana, should learn to be happy with the default colors. @item Highlighting of trailing whitespace is not available; you need to move the cursor into the suspect area to find out whether there is slack whitespace there. Empty lines at the end of the buffer cannot be marked in any way, either, since each user should know where the buffer ends without any help. @item You cannot control the spacing between text lines on the display; you are now entirely at the mercy of the font designer and the window manager. Complain to them if your display looks ugly. @end itemize @item Emacs 20 has less elaborate support for multi-lingual editing. While not as radical as Emacs 19 (which doesn't support anything but single-byte European characters), it goes a long way toward eliminating some of the annoying features: @itemize @minus @item Translations of the Emacs reference cards to other languages are gone. Every Emacs user should know English better than their national languages. @item To avoid extra confusion, many language environments have been eliminated. For example, @samp{Polish} and @samp{Celtic} (Latin-8) environments are not supported, and you cannot have the Euro characters, since the Latin-9 environment is gone, too. @item Emacs no longer uses the most preferred coding system if it is suitable for saving the buffer. Instead, it always prompts you for a coding system, so that you get to know its name better. @item Commands which provide detailed information about character sets and coding systems, such as @code{list-charset-chars}, @code{describe-character-set}, and the @kbd{C-u C-x =} key-sequence, no longer exist. User feedback suggests that telling too much about non-@sc{ascii} characters is confusing and unnecessary. @item The terminal coding system cannot be set to something CCL-based, so keyboards which produce @code{KOI8} and DOS/Windows codepage codes cannot be supported directly. Leim is so much simpler! @end itemize @item Systems which are deemed unimportant or still in vaporware phase are no longer supported: @itemize @minus @item Emacs cannot be built on GNU/Linux systems running on IA64 machines, and you cannot build a 64-bit Emacs for SPARC/Solaris systems which support 64-bit executables. Thus, Emacs contributes to stability of these systems by preventing you from corrupting files larger than 128MB. @item LynxOS is also not supported. @end itemize @item The menu bar is no longer @acronym{CUA}-compliant. We think that uniformity of look-and-feel is boring, and that @acronym{CUA} is not suitable for Emacs anyway. @item You cannot save the options set via the @samp{Options} menu-bar menu; instead, you need to set all the options again each time you start a new session. This will gradually make your acquaintance with the options better and better, until eventually you will be able to set all the options without looking at the screen. Unless you start Emacs once and never stop it, that is. @item Emacs no longer pops up a buffer with error messages when an error is signaled during loading of the user's init file. Gurus who can debug init files by the seat of their pants will regain their due honor which they lost with Emacs 21. @item Many commands duly ignore the active region when Transient Mark mode is in effect. (Transient Mark mode is alien to Emacs mantra in the first place, its introduction was a grave mistake, and we are planning to remove it altogether in one of the previous versions; stay tuned.) @item @kbd{C-down-mouse-3} does nothing special when menu bar is not displayed. Users who don't like the menu bar should be amply punished by forcing them to use the @code{tmm-menubar} replacement, even if they do have the mouse. @item The @key{delete} function key produces the same effect as the @key{DEL} key, on both TTY and windowed displays. Never again will you be confused by this terrible @emph{dichotomy}! @item The ability to save backup files in special subdirectories has been eliminated. This makes finding your backup files much easier. @item Emacs no longer refuses to load Lisp files compiled by incompatible versions of other Emacsen, which may contain invalid byte-code. Instead, Emacs now dumps core when it encounters such byte-code. @item You cannot delete all frames but the current one with @kbd{C-x 5 1}. Delete them one by one instead. If you have many frames, it's tough on you. @item CC Mode is now much harder to customize, due to subtle aspects of local and global bindings. In particular, if you change the indentation style as appropriate for Java, the indentation in C and C@t{++} buffers is messed up, and vice versa. @item Isearch no longer highlights matches besides the current one, and @kbd{mouse-2} in the echo area during incremental search now signals an error, since nobody in their right mind will use a mouse while searching. @item You cannot specify a port number with @code{ange-ftp}. Instead, you need to rely on undocumented features (@emph{use the source, Luke!}) to sneak the port in. Time stamps for remote files are not supported, and Windows-style ftp clients which output the @samp{^M} character at the end of each line wreak havoc with @code{ange-ftp}, making your life more interesting. @item Many advanced display features, such as highlighting of mouse-sensitive text regions and popping up help strings for menu items, don't work in the MS-DOS version. Ispell and Eshell don't work on MS-DOS, either. MS-DOG users should be aware of their inferiority at all times! @item There's no woman.el package, so Emacs users on non-Posix systems should learn to read Troff sources of manual pages. This is a Good Thing, since Troff is such a nice, intuitive language. @item recentf.el is not available, so you will have to memorize your frequently edited files by heart, or use desktop.el. @item Field properties were eliminated, so various packages based on comint.el which run subsidiary programs in Emacs buffers cannot easily distinguish between text which came from the subprocess and text typed by the user. The ingenious techniques this requires from Lisp programs will undoubtfully assist to further advance and development of the Emacs Lisp language. @item Many additional packages that were unnecessarily complicating your lives are no longer with us. You cannot browse C@t{++} classes with Ebrowse, edit Delphi sources, access @acronym{SQL} data bases, edit PostScript files and context diffs, access @acronym{LDAP} and other directory servers, edit @file{TODO} files conveniently, or mix shell commands and Lisp functions with Eshell. Emacs doesn't need all that crud. @item To keep up with decreasing computer memory capacity and disk space, many other functions and files have been eliminated in Emacs 20. There's no need to mention them all here. If you try to use one of them, you'll get an error message to tell you that it is undefined or unbound. @end itemize