]> code.delx.au - gnu-emacs/blobdiff - doc/emacs/anti.texi
Honor prefix arg in doc-view-next-line-or-next-page
[gnu-emacs] / doc / emacs / anti.texi
index ebff1c7677fd51045805e06fcb08bb8261ef9278..68a65a7c0c1cd628bec73bc9ba20190d412cc7bb 100644 (file)
+@c -*- coding: utf-8 -*-
 @c This is part of the Emacs manual.
-@c Copyright (C) 2005, 2006, 2007 Free Software Foundation, Inc.
+@c Copyright (C) 2005-2016 Free Software Foundation, Inc.
 @c See file emacs.texi for copying conditions.
 
-@node Antinews, Mac OS, X Resources, Top
-@appendix Emacs 21 Antinews
+@node Antinews
+@appendix Emacs 24 Antinews
+@c Update the emacs.texi Antinews menu entry with the above version number.
 
-  For those users who live backwards in time, here is information about
-downgrading to Emacs version 21.4.  We hope you will enjoy the greater
-simplicity that results from the absence of many Emacs @value{EMACSVER}
-features.
+  For those users who live backwards in time, here is information
+about downgrading to Emacs version 24.5.  We hope you will enjoy the
+greater simplicity that results from the absence of many Emacs
+@value{EMACSVER} features.
 
 @itemize @bullet
-
-@item
-The buffer position and line number are now displayed at the end of
-the mode line, where they can be more easily seen.
-
-@item
-The mode line of the selected window is no longer displayed with a
-special face.  All mode lines are created equal.  Meanwhile, you can
-use the variable @code{mode-line-inverse-video} to control whether
-mode lines are highlighted at all---@code{nil} means don't highlight
-them.
-
-@item
-Clicking on a link with the left mouse button (@kbd{mouse-1}) will
-always set point at the position clicked, instead of following the
-link.  If you want to follow the link, use the middle mouse button
-(@kbd{mouse-2}).
-
-@item
-Emacs is tired of X droppings.  If you drop a file or a piece of text
-onto an Emacs window, nothing will happen.
-
-@item
-On an xterm, even if you enable Xterm Mouse mode, Emacs provides a
-more convincing simulation of a text terminal by not responding to
-mouse clicks on the mode line, header line, or display margin.
-
-@item
-For simplicity, windows always have fringes.  We wouldn't want to
-in-fringe anyone's windows.  Likewise, horizontal scrolling always
-works in the same automatic way.
-
-@item
-The horizontal-bar cursor shape has been removed.
-
-@item
-If command line arguments are given, Emacs will not display a splash
-screen, so that you can immediately get on with your editing.  The
-command-line option @samp{--no-splash} is therefore obsolete, and has
-been removed.
-
-@item
-These command line options have also been removed: @samp{--color},
-@samp{--fullwidth}, @samp{--fullheight}, @samp{--fullscreen},
-@samp{--no-blinking-cursor}, @samp{--no-desktop}, and @samp{-Q}.
-
-@item
-The @samp{--geometry} option applies only to the initial frame, and
-the @samp{-f} option will not read arguments for interactive
-functions.
-
 @item
-We have standardized on one location for the user init file: the file
-named @file{.emacs} in your home directory.  Emacs will not look for
-the init file in @file{~/.emacs.d/init.el}.  Similarly, don't try
-putting @file{.emacs_SHELL} as @file{init_SHELL.sh} in
-@file{~/.emacs.d}; Emacs won't find it.
+Support for Cairo drawing has been removed.  On GNU and Unix systems,
+you now have only one drawing engine---the venerable X Window system.
+No need to procrastinate on the dilemma whether you do or don't want
+the new shiny Cairo thing.  Hail, simplicity!
+
+@item
+Emacs still works on SGI IRIX systems.  If you live backwards in time,
+this is actually a bonus, as IRIX systems will become more and more
+popular as you move farther back in time.
+
+@item
+Support for dynamically loaded modules has been removed.  You get to
+use only the trusted Emacs codebase, with no additions.  Those
+external modules written by some J.R. Hacker cannot be trusted anyway.
+Good riddance!
+
+@item
+We have greatly simplified the Emacs features which access the network
+by removing the Network Security Manager.  No more annoying prompts
+about trusting this or that site or page---you asked for it, you get
+it, no questions asked!  You, the user, are now in charge of any
+security issues related to sites whose certificates expired or didn't
+exist in the first place.  Giving the user the utmost freedom was and
+always will be the most important goal of Emacs development.  We keep
+that goal even as we develop Emacs back in time.
+
+@item
+We made the output of @kbd{C-h l} much simpler and easier to grasp by
+removing the names of commands run by the recorded keystrokes.  True
+Emacs lovers know their bindings by heart anyway, so why waste
+precious screen estate on that which is well known?
+
+@item
+Selection- and clipboard-related commands and variables got their
+historical names back.  It's now the definitive
+@code{x-select-enable-clipboard} again instead of the vague
+@code{select-enable-clipboard}, and all those @code{gui-select-text},
+@code{gui-get-primary-selection}, etc.@: got their @code{x-*} names
+back.  (What's a ``GUI'', anyway?)  The only true window system with
+selections is the X Window system, so we stopped pretending that other
+platforms have anything similar to that.  You now know when you invoke
+a command that accesses X.
+
+@item
+Passwords are no longer hidden when typed in @code{-batch} mode.  It
+was a misfeature to have it not shown in the first place: who can type
+without seeing what they type?  We couldn't convince the users of GUI
+sessions to give up hiding the password, so we at least made it
+visible in batch mode, which is something every veteran Emacs user
+uses all the time.  Stay tuned for un-hiding the password in GUI
+sessions as well as we downgrade progressively to previous Emacs
+versions.
+
+@item
+The nuisance with Unicode characters popping up all over the place has
+been amply dealt with.  We've removed @kbd{C-x 8} shorthands for
+characters such as ‘, ’, “, ”, €, ≤, and many others; as a nice
+benefit, this removes many useless entries at the beginning of the
+@kbd{C-h b} output.  The @code{electric-quote-mode} has been deleted,
+so there's only the one true quoting method now---using the
+plain-@acronym{ASCII} quote characters.  And if that's not enough, the
+doc strings and other messages show text quoted @t{`like this'}
+as they were written, instead of arbitrarily replacing them
+with Unicode ``curved quote'' characters @t{‘like this’}.  The
+@code{text-quoting-style} variable becomes therefore unneeded and was
+removed.  As result, text produced by Emacs can be sent to those
+venerable teletypes again, yeah!
+
+For the same reasons, the character classes @code{[:alpha:]} and
+@code{[:alnum:]} again match any word-constituent character, and
+@code{[:graph:]} and @code{[:print:]} match every multibyte character.
+Confusing use of Unicode character properties is gone.
+
+@item
+I-search and query-replace no longer try to confuse you by using the
+``character-folding'' magic.  They will no longer find any characters
+you didn't actually type, like find @kbd{ⓐ} when you actually typed
+@kbd{a}.  Users who want to find some fancy character will have to
+type it explicitly.
+
+@item
+The @file{desktop.el} package no longer records window and frame
+configuration, and doesn't attempt to restore them.  You now have back
+your freedom of re-arranging your windows and frames anew each time
+you restore a session.  This made the new backward-incompatible format
+of the @file{.emacs.desktop} file unnecessary, so the format was
+reverted back to what it was before Emacs 25.  You can now again use
+the desktop file with all the previous versions of Emacs.
+
+@item
+We have reworked the Prettify Symbols mode to support only the default
+@code{prettify-symbols-compose-predicate}.  No need to consider
+whether your major or minor mode needs its own prettifications; just
+use what came with Emacs.  We also removed the
+@code{prettify-symbols-unprettify-at-point} option: once prettified,
+always prettified!  These changes make the Prettify Symbols mode quite
+a lot simpler and easier to use.
 
 @item
-Emacs will not read @file{~/.abbrev_defs} automatically.  If you want
-to load abbrev definitions from a file, you must always do so
-explicitly.
+Support for nifty new features of xterm, such as access to the X
+selection and the clipboard, the ``bracketed paste mode'', and other
+advanced capabilities has been removed.  When you kill text in an
+xterm Emacs session, that text is only saved in the Emacs kill ring,
+without letting other applications have any way of accessing it.  An
+xterm is just a text terminal, nothing more, nothing less.  There
+should be no feature we support on xterm that isn't supported on bare
+console terminals.  For the same reasons, support for mouse-tracking
+on xterm was removed.  We will continue this line of simplifications
+as we downgrade to previous versions of Emacs; stay tuned.
 
-@item
-When you are logged in as root, all files now give you writable
-buffers, reflecting the fact that you can write any files.
-
-@item
-The maximum size of buffers and integer variables has been halved.  On
-32-bit machines, the maximum buffer size is now 128 megabytes.
+@item
+Various features in @file{package.el} have been simplified.  The
+``external'' package status is no longer available.  A package present
+on multiple archives will now be listed as many times as it is found:
+we don't believe in concealing any information from the users.  This
+and other similar simplifications made
+@code{package-menu-toggle-hiding} unnecessary, since there's nothing
+to unhide now.
+
+@item
+The @kbd{@key{UP}} and @kbd{@key{DOWN}} keys in the minibuffer have
+been simplified to move by history items.  No need to wonder whether
+you have moved to the next/previous item or to another line within the
+same item.  Well-written commands shouldn't allow too long history
+entries anyway; be sure to report any that do as bugs, so that we
+could fix them in past versions of Emacs.
+
+@item
+The VC mode was simplified by removing the support for ``push''
+commands.  Moving back in time means you will have less and less need
+to use modern version control systems such as Git, Bazaar, and
+Mercurial, so the necessity of using ``push'' commands will gradually
+disappear.  We removed it from Emacs in advance, so that you won't
+need to un-learn it when this command disappears, as it should.
+
+@item
+The support for full C/C++ expressions in macros has been removed from
+Hide-Ifdef mode.  It now supports only the basic literal macros.  As
+result, the user interface was simplified, and a number of useless
+commands have been removed from Hide-Ifdef mode.  Further
+simplifications were made possible by removing support for some fancy
+new preprocessor directives, such as @code{#if defined}, @code{#elif},
+etc.
+
+@item
+We have reverted to Etags for looking up definitions of functions,
+variables, etc.  Commands such as @kbd{M-.} use tags tables, as they
+always have.  This allowed the removal of the entire @file{xref.el}
+package and its many metastases in the other Emacs packages and
+commands, significantly simplifying those.  No more complexities with
+the various ``backends'' that provide incoherent behavior that is hard
+to explain and remember; either the symbol is in TAGS or it isn't.  No
+more new user interfaces we never before saw in Emacs, either; if you
+want the next definition for the symbol you typed, just invoke
+@kbd{C-u M-.}---what could be simpler?  As a nice side effect, you get
+to use your beloved @code{tags-loop-continue} and @code{pop-tag-mark}
+commands and their memorable bindings.  The @file{package.el} package
+has been removed for similar reasons.
 
 @item
-An unquoted @samp{$} in a file name is now an error, if the following
-name is not recognized as an environment variable.  Thus,
-the file name @file{foo$bar} would probably be an error.  Meanwhile,
-the @code{setenv} command does not expand @samp{$} at all.
+@code{(/ @var{n})} once again yields just @var{n}.  Emacs Lisp is not
+Common Lisp, so compatibility with CL just complicates Emacs here.
 
 @item
-If a single command accumulates too much undo information, Emacs never
-discards it.  If Emacs runs out of memory as a result, it will handle
-this by crashing.
-
-@item
-Many commands have been removed from the menus or rearranged.
-
-@item
-The @kbd{C-h} (help) subcommands have been rearranged---especially
-those that display specific files.  Type @kbd{C-h C-h} to see a list
-of these commands; that will show you what is different.
-
-@item
-The @kbd{C-h v} and @kbd{C-h f} commands no longer show a hyperlink to
-the C source code, even if it is available.  If you want to find the
-source code, grep for it.
-
-@item
-The apropos commands will not accept a list of words to match, in
-order to encourage you to be more specific.  Also, the user option
-@code{apropos-sort-by-scores} has been removed.
-
-@item
-The minibuffer prompt is now displayed using the default face.
-The colon is enough to show you what part is the prompt.
-
-@item
-Minibuffer completion commands always complete the entire minibuffer
-contents, just as if you had typed them at the end of the minibuffer,
-no matter where point is actually located.
-
-@item
-The command @code{backward-kill-sexp} is now bound to @kbd{C-M-delete}
-and @kbd{C-M-backspace}.  Be careful when using these key sequences!
-It may shut down your X server, or reboot your operating system.
-
-@item
-Commands to set the mark at a place away from point, including
-@kbd{M-@@}, @kbd{M-h}, etc., don't do anything special when you repeat
-them.  In most cases, typing these commands multiple times is
-equivalent to typing them once.  @kbd{M-h} ignores numeric arguments.
-
-@item
-The user option @code{set-mark-command-repeat-pop} has been removed.
-
-@item
-@kbd{C-@key{SPC} C-@key{SPC}} has no special meaning--it just sets the
-mark twice.  Neither does @kbd{C-u C-x C-x}, which simply exchanges
-point and mark like @kbd{C-x C-x}.
-
-@item
-The function @code{sentence-end} has been eliminated in favor of a
-more straightforward approach: directly setting the variable
-@code{sentence-end}.  For example, to end each sentence with a single
-space, use
-
-@lisp
-(setq sentence-end "[.?!][]\"')@}]*\\($\\|[ \t]\\)[ \t\n]*")
-@end lisp
+The functions @code{filepos-to-bufferpos} and
+@code{bufferpos-to-filepos} have been removed.  Code that needs to
+find a file position by a buffer position or vice versa should adapt
+by reading the file with no conversions and counting bytes while
+comparing text.  How hard can that be?
 
 @item
-The variable @code{fill-nobreak-predicate} is no longer customizable,
-and it can only hold a single function.
+We saw no need for the @code{make-process} primitive, so we removed
+it.  The @code{start-process} primitive provides all the functionality
+one needs, so adding more APIs just confuses users.
 
 @item
-Nobreak spaces and hyphens are displayed just like normal characters,
-and the user option @code{nobreak-char-display} has been removed.
+The functions @code{bidi-find-overridden-directionality} and
+@code{buffer-substring-with-bidi-context} were removed, in preparation
+for removing the whole bidi support when downgrading to Emacs 23.
 
 @item
-@kbd{C-w} in an incremental search always grabs an entire word
-into the search string.  More precisely, it grabs text through
-the next end of a word.
+Horizontal scroll bars are no longer supported.  Enlarge your windows
+and frames instead, or use @code{truncate-lines} and the automatic
+horizontal scrolling of text that Emacs had since time immemorial.
 
 @item
-Yanking now preserves all text properties that were in the killed
-text.  The variable @code{yank-excluded-properties} has been removed.
+Emacs is again counting the height of a frame's menu and its tool bar
+in the frame's text height calculations.  This makes Emacs invocation
+on different platforms and with different toolkits less predictable
+when frame geometry parameters are given on the Emacs command line,
+thus making Emacs more adventurous and less boring to use.
 
 @item
-Occur mode, Info mode, and Comint-derived modes now control
-fontification in their own way, and @kbd{M-x font-lock-mode} has
-nothing to do with it.  To control fontification in Info mode, use the
-variable @code{Info-fontify}.
-
-@item
-@samp{M-x shell} is now completely standard in regard to scrolling
-behavior.  It no longer has the option of scrolling the input line to
-the bottom of the window the way a text terminal running a shell does.
-
-@item
-The Grep package has been merged with Compilation mode.  Many
-grep-specific commands and user options have thus been eliminated.
-Also, @kbd{M-x grep} never tries the GNU grep @samp{-H} option,
-and instead silently appends @file{/dev/null} to the command line.
-
-@item
-In Dired's @kbd{!} command, @samp{*} and @samp{?} now
-cause substitution of the file names wherever they appear---not
-only when they are surrounded by whitespace.
-
-@item
-When a file is managed with version control, the command @kbd{C-x C-q}
-(whose general meaning is to make a buffer read-only or writable) now
-does so by checking the file in or out.  Checking the file out makes
-the buffer writable; checking it in makes the buffer read-only.
-
-You can still use @kbd{C-x v v} to do these operations if you wish;
-its meaning is unchanged.  If you want to control the buffer's
-read-only flag without performing any version control operation,
-use @kbd{M-x toggle-read-only}.
-
-@item
-SGML mode does not handle XML syntax, and does not have indentation
-support.
-
-@item
-Many Info mode commands have been removed.  Incremental search in Info
-searches only the current node.
-
-@item
-Many @code{etags} features for customizing parsing using regexps
-have been removed.
-
-@item
-The Emacs server now runs a small C program called @file{emacsserver},
-rather than trying to handle everything in Emacs Lisp.  Now there can
-only be one Emacs server running at a time.  The @code{server-mode}
-command and @code{server-name} user option have been eliminated.
-
-@item
-The @file{emacsclient} program no longer accepts the @samp{--eval},
-@samp{--display} and @samp{--server-file} command line options, and
-can only establish local connections using Unix domain sockets.
-
-@item
-The command @code{quail-show-key}, for showing how to input a
-character, has been removed.
-
-@item
-The default value of @code{keyboard-coding-system} is always
-@code{nil}, regardless of your locale settings.  If you want some
-other value, set it yourself.
-
-@item
-Unicode support and unification between Latin-@var{n} character sets
-have been removed.  Cutting and pasting X selections does not support
-``extended segments'', so there are certain coding systems it cannot
-handle.
-
-@item
-The input methods for Emacs are included in a separate distribution
-called ``Leim.''  To use this, you must extract the Leim tar file on
-top of the Emacs distribution, into the same directory, before you
-build Emacs.
-
-@item
-The following input methods have been eliminated: belarusian,
-bulgarian-bds, bulgarian-phonetic, chinese-sisheng, croatian, dutch,
-georgian, latin-alt-postfix, latin-postfix, latin-prefix,
-latvian-keyboard, lithuanian-numeric, lithuanian-keyboard,
-malayalam-inscript, rfc1345, russian-computer, sgml, slovenian,
-tamil-inscript ucs, ukrainian-computer, vietnamese-telex, and welsh.
-
-@item
-The following language environments have been eliminated: Belarusian,
-Bulgarian, Chinese-EUC-TW, Croatian, French, Georgian, Italian,
-Latin-6, Latin-7, Latvian, Lithuanian, Malayalam, Russian, Russian,
-Slovenian, Swedish, Tajik, Tamil, UTF-8, Ukrainian, Ukrainian, Welsh,
-and Windows-1255.
-
-@item
-The @code{code-pages} library, which contained various 8-bit coding
-systems, has been removed.
-
-@item
-The Kmacro package has been replaced with a simple and elegant
-keyboard macro system.  Use @kbd{C-x (} to start a new keyboard macro,
-@kbd{C-x )} to end the macro, and @kbd{C-x e} to execute the last
-macro.  Use @kbd{M-x name-last-kbd-macro} to name the most recently
-defined macro.
-
-@item
-Emacs no longer displays your breakpoints in the source buffer, so you
-have to remember where you left them.  It can be difficult to inspect
-the state of your debugged program from the command line, so Emacs
-tries to demonstrate this in the GUD buffer.
-
-@item
-The Calc, CUA, Ibuffer, Ido, Password, Printing, Reveal,
-Ruler-mode, SES, Table, Tramp, and URL packages have been removed.
-The Benchmark, Cfengine, Conf, Dns, Flymake, Python, Thumbs, and
-Wdired modes have also been removed.
-
-@item
-The Emacs Lisp Reference Manual and the Introduction to Programming in
-Emacs Lisp are now distributed separately, not in the Emacs
-distribution.
-
-@item
-On MS Windows, there is no longer any support for tooltips, images,
-sound, different mouse pointer shapes, or pointing devices with more
-than 3 buttons.  If you want these features, consider switching to
-another operating system.  But even if you don't want these features,
-you should still switch---for freedom's sake.
-
-@item
-Emacs will not use Unicode for clipboard operations on MS Windows.
+The @command{etags} program no longer supports Ruby and Go languages.
+You won't need that as you progressively travel back in time towards
+the time before these languages were invented.  We removed support for
+them in anticipation for that time.
 
 @item
 To keep up with decreasing computer memory capacity and disk space, many
-other functions and files have been eliminated in Emacs 21.4.
+other functions and files have been eliminated in Emacs 24.5.
 @end itemize
-
-@ignore
-   arch-tag: 32932bd9-46f5-41b2-8a0e-fb0cc4caeb29
-@end ignore