-2015-02-04 Kelvin White <kwhite@gnu.org>
+2015-03-03 Kelvin White <kwhite@gnu.org>
* MAINTAINERS: Add myself to section 2
- 2015-03-03 Glenn Morris <rgm@gnu.org>
-2015-02-02 Glenn Morris <rgm@gnu.org>
+2015-03-03 Glenn Morris <rgm@gnu.org>
* admin.el (manual-meta-string): Use bug-gnu-emacs@gnu email address
rather than webmasters@gnu.
-2015-01-03 Glenn Morris <rgm@gnu.org>
+2015-01-28 Glenn Morris <rgm@gnu.org>
* update_autogen (commit): Prepend "# " to commit message.
-2014-11-19 Paul Eggert <eggert@cs.ucla.edu>
+2015-01-24 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix a couple of AM_V_GEN bugs
+ * unidata/Makefile.in (unifiles): Use AM_V_at instead of AM_V_GEN,
+ since this doesn't generate a file.
+
+2015-01-15 Eli Zaretskii <eliz@gnu.org>
+
+ * unidata/uvs.el (uvs-print-table-ivd): Call set-binary-mode on
+ stdout.
+
+2015-01-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ Say "ELC foo.elc" instead of "GEN foo.elc"
+ * unidata/Makefile.in (AM_V_ELC, am__v_ELC_, am__v_ELC_0)
+ (am__v_ELC_1): New macros.
+ (%.elc): Use them.
+
+2015-01-08 Glenn Morris <rgm@gnu.org>
+
+ * authors.el (authors-aliases): Add an entry to ignore.
+
+2015-01-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ Less 'make' chatter for admin/grammars
+ * grammars/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_GEN)
+ (am__v_GEN_, am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_)
+ (am__v_at_0, am__v_at_1): New macros, from src/Makefile.in.
+ (${bovinedir}/%-by.el, ${bovinedir}/scm-by.el)
+ (${cedetdir}/semantic/%-wy.el, ${wisentdir}/%-wy.el)
+ (${wisentdir}/javat-wy.el, ${cedetdir}/srecode/srt-wy.el): Use them.
+
+ Less chatter in batch mode
+ * unidata/unidata-gen.el (unidata-gen-files):
+ Don't output messages like "Generating ..." in batch mode.
+
+2015-01-02 Paul Eggert <eggert@cs.ucla.edu>
+
+ Less 'make' chatter for unidata
+ * unidata/Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_GEN, am__v_GEN_)
+ (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0, am__v_at_1):
+ New macros, from ../src/Makefile.in.
+ (${top_srcdir}/src/macuvs.h, %.elc, unidata.txt)
+ (${unidir}/charprop.el, unifiles): Use them.
+ (PHONY_EXTRAS): New macro.
+ (.PHONY, ${unidir}/charprop.el): Use it.
+ (FORCE): Remove; all uses replaced by PHONY_EXTRAS manipulation.
+ (${unidir}/charprop.el, extraclean):
+ Use 'make' conditionals rather than shell.
+
+2015-01-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ * update-copyright (emacsver): Change to emacsver.tex.in.
+
+2014-12-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ * merge-gnulib (GNULIB_MODULES): Add stpcpy.
+
+2014-12-24 Glenn Morris <rgm@gnu.org>
+
+ * authors.el (authors-obsolete-files-regexps)
+ (authors-ignored-files, authors-valid-file-names)
+ (authors-renamed-files-alist, authors-renamed-files-regexps):
+ Additions.
+
+2014-12-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ * notes/unicode: Track leim/quail file renames.
+ Correct coding system of lisp/international/titdic-cnv.el.
+
+2014-12-14 Glenn Morris <rgm@gnu.org>
+
+ * quick-install-emacs (PUBLIC_LIBSRC_SCRIPTS): Remove, and all uses.
+ * authors.el (authors-valid-file-names): Add grep-changelog.
+
+2014-12-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ * notes/unicode: Don't mention Czech and Slovakian refcards.
+
+ * merge-gnulib (GNULIB_MODULES): Add stddef, for max_align_t.
+
+2014-12-06 Stephen Leake <stephen_leake@stephe-leake.org>
+
+ * notes/commits: Delete; merge into ./CONTRIBUTE.
+
+ * notes/repo: Move commit, branch info into ./CONTRIBUTE.
+
+2014-12-01 Glenn Morris <rgm@gnu.org>
+
+ * update_autogen: Fix bogosity introduced in 2014-11-16 merge.
+
+2014-11-29 Paul Eggert <eggert@cs.ucla.edu>
Lessen focus on ChangeLog files, as opposed to change log entries.
This is in preparation for generating the former automatically
* notes/changelogs: Remove, merging old contents to ...
* notes/repo: ... here.
-2014-11-17 Oscar Fuentes <ofv@wanadoo.es>
+2014-11-27 David Engster <deng@randomsample.de>
+
+ * gitmerge.el: New file.
+ * notes/git-workflow: Add documentation for using it.
+
+2014-11-27 Oscar Fuentes <ofv@wanadoo.es>
* CPP-DEFINES: Mention MINGW_W64.
-2014-11-15 Glenn Morris <rgm@gnu.org>
+2014-11-22 Glenn Morris <rgm@gnu.org>
- * update_autogen: Auto-detect VCS in use.
- (vcs): New variable.
- (status, commit, main): Handle git.
+ * admin.el (set-version): No more need to update nt/*.rc.
+ * authors.el (authors-renamed-files-alist): Add .rc.in files.
+
+2014-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * update_autogen: Merge from emacs-24 (restoring bzr conditionals).
+
+2014-11-13 Andreas Schwab <schwab@suse.de>
+
+ * make-tarball.txt: Make annotated tag and push it out.
2014-11-11 Eric S. Raymond <esr@thyrsus.com>
* update-copyright: Use git ls-files.
* update_autogen: Remove some bzr conditionals.
-2014-11-09 Eli Zaretskii <eliz@gnu.org>
+2014-11-10 Eli Zaretskii <eliz@gnu.org>
+
+ * unidata/Makefile.in (${top_srcdir}/src/macuvs.h):
+ Use unmsys--file-name. (Bug#18955)
+
+2014-11-10 Glenn Morris <rgm@gnu.org>
+
+ * admin.el (set-version): No need to update doc/man/emacs.1.
+
+ * admin.el (set-version): No need to update etc/refcards/emacsver.tex.
+ (set-copyright): Update etc/refcards/emacsver.tex.in.
- * unidata/Makefile.in (${top_srcdir}/src/macuvs.h): Use
- unmsys--file-name. (Bug#18955)
+ * admin.el (set-version): No need to update doc/emacs/emacsver.texi.
+ (make-manuals-dist-output-variables): Add top_srcdir.
+ (make-manuals-dist--1): Handle @version@ specially.
+
+2014-11-09 Eric Ludlam <zappo@gnu.org>
+
+ * grammars/c.by (template-type): Add :template-specifier and
+ :typevar to capture extra details about the template.
+ (opt-post-fcn-modifiers): Splice in the found symbol into the
+ return value correctly.
+ (QUESTION): New punctuation.
+ (expression): Add ternary conditional support.
+
+ * grammars/scheme.by (MODULE): New token.
+ (scheme): Handle expanding the MODULE tag.
+ (scheme-list): Remove closeparen required match.
+ (scheme-in-list): Remove extraneous matches for DEFINE.
+ Add support for MODULE Simplify matching for code & make work.
+ (name-args, name-arg-list, name-arg-expand): Make it work.
+
+2014-11-09 David Engster <dengste@eml.cc>
+
+ * grammars/c.by (opt-brackets-after-symbol): New.
+ (multi-stage-dereference): Use it. Add rules for explicit
+ matching the last dereference. We cannot just juse
+ 'namespace-symbol' as a single rule, since this would match too
+ greedy and mess with parsing default values of variables.
2014-11-09 Glenn Morris <rgm@gnu.org>
(make-manuals-dist--1, make-manuals-dist): New.
Replaces doc/*/Makefile.in `dist' rules.
-2014-10-31 Eli Zaretskii <eliz@gnu.org>
+2014-11-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ Spelling fixes; tweak explanation of commit messages.
+ * notes/repo: Avoid "DVCS" acronym without first explaining it.
+ Mention using the first line of a ChangeLog as the topic line,
+ and that commit messages should use UTF-8.
+
+2014-11-01 Eli Zaretskii <eliz@gnu.org>
* notes/repo (Notes): Reword the stylistic guidance for commit log
messages so that they are in line with Emacs development practices
and style guidance.
-2014-10-31 Eric S. Raymond <esr@thyrsus.com>
+2014-10-27 Eric S. Raymond <esr@thyrsus.com>
* notes/bzr: Rename to notes/repo, reorganize to separate
VCS-dependent from VCS-independent stuff. Add guidance about
2014-10-20 Glenn Morris <rgm@gnu.org>
- * Version 24.4 released.
+ * Merge in all changes up to 24.4 release.
+
+2014-10-15 Eli Zaretskii <eliz@gnu.org>
+
+ * unidata/unidata-gen.el (unidata-prop-alist): New properties
+ 'paired-bracket' and 'bracket-type', in support of the UBA 6.3.
+ (unidata-gen-table): Support PROP-IDX being a function.
+ (unidata-describe-bidi-bracket-type, unidata-gen-brackets-list)
+ (unidata-gen-bracket-type-list): New functions.
+ (unidata-check): Support checking the 'bracket-type' attribute.
+ (unidata-gen-files): Don't create backups for uni-*.el files.
+
+ * unidata/Makefile.in (${unidir}/charprop.el): Depend on
+ BidiMirroring.txt and BidiBrackets.txt.
+
+ * unidata/BidiBrackets.txt: New file, from Unicode.
+
+2014-10-13 Glenn Morris <rgm@gnu.org>
+
+ * authors.el (authors-aliases, authors-fixed-case)
+ (authors-obsolete-files-regexps): Additions.
+ (authors-no-scan-regexps): New constant.
+ (authors-no-scan-file-p): New function.
+ (authors): Respect authors-no-scan-file-p.
-2014-09-03 Eli Zaretskii <eliz@gnu.org>
+2014-10-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix putenv race conditions with undefined behavior (Bug#8705).
+ * merge-gnulib (GNULIB_MODULES): Add time_r, since Emacs now
+ calls localtime_r and gmtime_r directly.
+
+2014-10-07 Glenn Morris <rgm@gnu.org>
+
+ * unidata/Makefile.in: Check for deleted uni- files. (Bug#18489)
+ (all): Use unifiles rather than charprop.el.
+ (FORCE): New variable and phony rule.
+ (${unidir}/charprop.el): Respect FORCE.
+ (unifiles): New rule.
+
+ * unidata/Makefile.in (unidir): Rename from DSTDIR. Change all uses.
+ (charprop.el, install): Remove rules.
+ (clean): Simplify.
+
+2014-10-04 Glenn Morris <rgm@gnu.org>
+
+ * authors.el (authors-renamed-files-alist): Add package-x-test.el
+
+2014-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * unidata/unidata-gen.el (unidata-gen-table-word-list): Use alist-get
+ and cl-incf.
+
+2014-09-08 Eli Zaretskii <eliz@gnu.org>
* unidata/unidata-gen.el (unidata-check): Bring this function up
to date with the currently supported methods of generating Unicode
the check. Update the copyright years in the reference to the
Unicode data files we use.
-2014-06-24 Eli Zaretskii <eliz@gnu.org>
+2014-08-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ Vector-sorting fixes (Bug#18361).
+ * merge-gnulib (GNULIB_MODULES): Add vla.
+
+2014-08-30 Eli Zaretskii <eliz@gnu.org>
+
+ * authors.el (authors): Fix last change so it works for MS-Windows
+ as well.
+
+2014-08-29 Michael Albinus <michael.albinus@gmx.de>
+
+ * authors.el (authors): Use LOCALE argument of `string-collate-lessp'.
+
+2014-08-28 Michael Albinus <michael.albinus@gmx.de>
+
+ * authors.el (authors-aliases): Addition.
+
+2014-08-26 Glenn Morris <rgm@gnu.org>
+
+ * authors.el (authors-ignored-files, authors-valid-file-names)
+ (authors-renamed-files-alist): Additions.
+ (authors-renamed-files-alist): Revert 2014-08-09 change.
+ (authors): Sort authors in utf-8 order. (Bug#2263)
+
+2014-08-09 Reuben Thomas <rrt@sc3d.org>
+
+ * notes/copyright: Remove mention of msdos/is_exec.c and
+ sigaction.c.
+ * authors.el (authors-renamed-files-alist): Remove is_exec.c.
+
+2014-08-07 Reuben Thomas <rrt@sc3d.org>
+
+ * notes/exit-value: Remove specific discussion of VMS.
+
+2014-08-07 Reuben Thomas <rrt@sc3d.org>
+
+ Refer to MS-DOS using the same name everywhere.
+
+ * FOR-RELEASE: ``MS-DOG'', ``MSDOG'' and ``msdog'' become
+ ``MS-DOS''.
+ * MAINTAINERS: ditto.
+
+2014-07-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use binary-io module, O_BINARY, and "b" flag (Bug#18006).
+ * merge-gnulib (GNULIB_MODULES): Add binary-io. It was already
+ present implicitly; this just makes the dependence explicit.
+
+2014-06-30 Glenn Morris <rgm@gnu.org>
+
+ * update_autogen: Find loaddefs targets rather than
+ parsing lisp/Makefile.in
+
+2014-06-29 Glenn Morris <rgm@gnu.org>
+
+ * update_autogen: Remove need to cd into/out of lisp/.
+
+ * grammars/Makefile.in (bootstrap-clean): Don't delete Makefile,
+ for sake of top-level maintainer-clean rule.
+
+2014-06-26 Eli Zaretskii <eliz@gnu.org>
* notes/unicode: Some notes about what to do when a new Unicode
version is imported.
-2014-06-24 Glenn Morris <rgm@gnu.org>
+2014-06-26 Glenn Morris <rgm@gnu.org>
+
+ * authors.el: Move here from ../lisp/emacs-lisp.
+
+2014-06-25 Glenn Morris <rgm@gnu.org>
+
+ * grammars/Makefile.in (${bovinedir}/c-by.el, ${bovinedir}/make-by.el):
+ (${wisentdir}/js-wy.el, ${wisentdir}/python-wy.el):
+ Replace with pattern rules.
+ (${bovinedir}/scm-by.el, ${wisentdir}/javat-wy.el)
+ (${cedetdir}/srecode/srt-wy.el): Use $<.
+
+ * unidata/Makefile.in (${top_srcdir}/src/macuvs.h): Make and load .elc.
+ (.el.elc): Replace with pattern rule.
+ (%.elc): New.
+ (unidata.txt): Use $<.
+ (compile): Remove.
+ (${DSTDIR}/charprop.el): Use order-only prereqs rather than a sub-make.
+
+ * unidata/uvs.el (uvs-print-table-ivd): Fix free variable typo.
+
+2014-06-21 Glenn Morris <rgm@gnu.org>
* unidata/BidiMirroring.txt: Update to 7.0.0 (only comment changes).
* unidata/UnicodeData.txt: Update to 7.0.0.
* unidata/IVD_Sequences.txt: Update to 2014-05-16 version.
-2014-06-16 Stephen Berman <Stephen.Berman@gmx.net>
+2014-06-21 Stephen Berman <Stephen.Berman@gmx.net>
* notes/elpa: Use "git" instead of "bzr" in the name of machine to
clone the repository from.
-2014-05-26 Paul Eggert <eggert@cs.ucla.edu>
+2014-06-13 Glenn Morris <rgm@gnu.org>
+
+ * unidata/Makefile.in (${DSTDIR}/charprop.el):
+ GNU make automatically passes command-line arguments to sub-makes.
+
+2014-06-02 Paul Eggert <eggert@cs.ucla.edu>
Include sources used to create macuvs.h.
* unidata/IVD_Sequences.txt: New file.
(uvs-print-table-ivd): Output a header in the form that
unidata-gen.el generates.
-2014-05-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+2014-05-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
- * mac/uvs.el: New file. Generates ../src/macuvs.h.
+ * mac/uvs.el: New file from Mac port. Generates src/macuvs.h.
-2014-05-11 Glenn Morris <rgm@gnu.org>
+2014-05-17 Paul Eggert <eggert@cs.ucla.edu>
- * find-gc.el: Move here from ../lisp/emacs-lisp.
+ Assume C99 or later (Bug#17487).
+ * merge-gnulib (GNULIB_MODULES): Remove stdarg, stdbool.
+ (GNULIB_TOOL_FLAGS): Avoid stdarg, stdbool.
+
+2014-05-16 Paul Eggert <eggert@cs.ucla.edu>
-2014-05-10 Glenn Morris <rgm@gnu.org>
+ Don't require pkg-config when building from repository.
+ * merge-pkg-config: New script.
+ * notes/copyright: Update for m4/*.m4, in particular m4/pkg.m4.
+
+2014-05-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ * merge-gnulib: Defer to autogen.sh for ACLOCAL_PATH computation.
+
+2014-05-12 Glenn Morris <rgm@gnu.org>
+
+ * find-gc.el: Move here from ../lisp/emacs-lisp.
* admin.el (set-version-in-file): Don't set identical version.
(set-version): Provide default version number.
(set-version, set-copyright): Give start/end messages.
-2014-04-17 Paul Eggert <eggert@cs.ucla.edu>
+2014-04-18 Paul Eggert <eggert@cs.ucla.edu>
* notes/bzr: Update instructions for merging from gnulib.
Remove obsolete note about tramp.el and tramp-sh.el.
Change "emacs-23" to "emacs-24".
+2014-04-11 Glenn Morris <rgm@gnu.org>
+
+ * grammars/Makefile.in (EMACSDATA, EMACSDOC, EMACSPATH): Unexport.
+
+2014-03-22 Glenn Morris <rgm@gnu.org>
+
+ * quick-install-emacs (AVOID): Remove testfile and test-distrib.
+
+2014-03-21 Glenn Morris <rgm@gnu.org>
+
+ * update_autogen: Auto-detect VCS in use.
+ (vcs): New variable.
+ (status, commit, main): Handle git.
+
2014-03-07 Paul Eggert <eggert@cs.ucla.edu>
Fix oversight preventing lib/sys/types.h from being generated.
2006-04-17 Ramprasad B <ramprasad_i82@yahoo.com>
- * ./* (Copyright): Updated Copyright year(s).
+ * ./* (Copyright): Update Copyright year(s).
2006-02-24 Reiner Steib <Reiner.Steib@gmx.de>
-2015-02-07 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* processes.texi (Synchronous Processes): Update documentation of
call-process-shell-command and process-file-shell-command.
- 2015-03-03 Eli Zaretskii <eliz@gnu.org>
-2015-01-24 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Daniel Colascione <dancol@dancol.org>
+
+ * control.texi (Generators): Correct missing word. Clarify which
+ forms are legal in which parts of `unwind-protect'. Fix orphaned
+ close parenthesis.
+
+ * objects.texi (Finalizer Type): New section for finalizer objects.
+ (Type Predicates): Mention finalizers in `type-of' documentation.
+ * elisp.texi (Top): Link to finalizer type.
+
+2015-03-02 Daniel Colascione <dancol@dancol.org>
+
+ * control.texi (Generators): New section
+ * elisp.text: Reference new section.
+
+2015-02-28 Eli Zaretskii <eliz@gnu.org>
+
+ * searching.texi (Char Classes): Update the documentation of
+ [:alpha:] and [:alnum:]. (Bug#19878)
+
+2015-02-27 Eli Zaretskii <eliz@gnu.org>
+
+ * os.texi (Startup Summary):
+ * display.texi (Window Systems): Mention peculiarities of daemon
+ mode on MS-Windows.
+
+2015-02-11 Martin Rudalics <rudalics@gmx.at>
+
+ * frames.texi (Size Parameters): Update description of
+ fullscreen frame parameter. Describe `fullscreen-restore'
+ parameter.
+
+2015-02-09 Nicolas Petton <nicolas@petton.fr>
+
+ * sequences.texi (Sequence Functions): Update documentation
+ examples for seq-group-by.
+
+2015-02-09 Eli Zaretskii <eliz@gnu.org>
+
+ * positions.texi (Screen Lines): Update the documentation of
+ vertical-motion to document the new additional argument.
+
+2015-02-06 Nicolas Petton <nicolas@petton.fr>
+
+ * sequences.texi (Sequence Functions): Add documentation for
+ seq-mapcat, seq-partition and seq-group-by.
+
+2015-02-05 Martin Rudalics <rudalics@gmx.at>
+
+ * display.texi (Size of Displayed Text): Remove description of
+ optional argument BUFFER of `window-text-pixel-size'.
+
+2015-02-01 Martin Rudalics <rudalics@gmx.at>
+
+ * display.texi (Size of Displayed Text): Describe optional
+ argument BUFFER of `window-text-pixel-size'.
+
+2015-01-28 Eli Zaretskii <eliz@gnu.org>
* searching.texi (Regexp Search): Add a cross-reference to "Syntax
of Regexps". (Bug#19668)
-2015-01-21 Daniel Koning <dk@danielkoning.com> (tiny change)
+2015-01-28 Daniel Koning <dk@danielkoning.com> (tiny change)
* commands.texi (Drag Events, Motion Events, Event Examples)
(Accessing Mouse): Describe actual range of values that mouse
position objects can have.
-2015-01-20 Eli Zaretskii <eliz@gnu.org>
+2015-01-28 Eli Zaretskii <eliz@gnu.org>
* display.texi (Manipulating Buttons): Explain more about the
'action' property. (Bug#19628)
* text.texi (Clickable Text): Improve indexing. (Bug#19629)
+ * variables.texi (Creating Buffer-Local): Improve indexing. (Bug#19608)
+
+ * frames.texi (Display Feature Testing): Make the description of
+ x-server-version and x-server-vendor less X-specific. (Bug#19502)
+
2015-01-15 Eli Zaretskii <eliz@gnu.org>
- * variables.texi (Creating Buffer-Local): Improve indexing.
- (Bug#19608)
+ * streams.texi (Input Functions): Document 'set-binary-mode'.
+ (Output Functions): Cross-reference to documentation of
+ 'set-binary-mode'.
-2015-01-04 Eli Zaretskii <eliz@gnu.org>
+2015-01-04 Paul Eggert <eggert@cs.ucla.edu>
- * frames.texi (Display Feature Testing): Make the description of
- x-server-version and x-server-vendor less X-specific. (Bug#19502)
+ batch write-region no longer says "Wrote FOO"
+ * files.texi (Writing to Files): Document this.
+
+2014-12-31 Paul Eggert <eggert@cs.ucla.edu>
+
+ Less 'make' chatter for Emacs doc
+ * Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_GEN, am__v_GEN_)
+ (am__v_GEN_0, am__v_GEN_1): New macros, from ../../src/Makefile.in.
+ (ENVADD, $(buildinfodir)/elisp.info, elisp.html):
+ Use them.
+
+2014-12-30 Martin Rudalics <rudalics@gmx.at>
+
+ * display.texi (Temporary Displays): Amend description of
+ `with-temp-buffer-window'. Add descriptions for
+ `with-current-buffer-window', `with-displayed-buffer-window' and
+ `temp-buffer-resize-mode', `temp-buffer-max-height' and
+ `temp-buffer-max-width'.
+
+2014-12-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ * os.texi (System Environment): Update for system-name changes.
-2014-12-24 Glenn Morris <rgm@gnu.org>
+2014-12-27 Glenn Morris <rgm@gnu.org>
* control.texi (Pattern matching case statement):
* os.texi (Desktop Notifications):
* modes.texi (Defining Minor Modes, SMIE Lexer): Markup fixes.
-2014-12-23 Eli Zaretskii <eliz@gnu.org>
+2014-12-27 Eli Zaretskii <eliz@gnu.org>
* windows.texi (Recombining Windows): Index subject of sections.
* os.texi (Time of Day, Time Conversion, Time Parsing)
(Time Calculations, Idle Timers): Index subject of sections.
+2014-12-25 Martin Rudalics <rudalics@gmx.at>
+
+ * windows.texi (Windows): Resync @menu order with @node order.
+
+ * minibuf.texi (Minibuffer Windows): Add descriptions of
+ `resize-mini-windows' and `max-mini-window-height'.
+
+2014-12-25 Glenn Morris <rgm@gnu.org>
+
+ * windows.texi (Windows): Sync @menu order with @node order.
+
+ * sequences.texi (Sequence Functions): Copyedits.
+
+ * control.texi (Pattern matching case statement):
+ * positions.texi (List Motion):
+ * streams.texi (Output Functions):
+ * strings.texi (Text Comparison):
+ * text.texi (Document Object Model): Markup fixes.
+
+2014-12-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ Remove obsolete references to pre-C99 builds
+ * internals.texi (C Integer Types): Don't mention pre-C99 compilers.
+
+2014-12-19 Martin Rudalics <rudalics@gmx.at>
+
+ * windows.texi (Resizing Windows): Describe new argument of
+ `fit-window-to-buffer'. Move description of `window-size-fixed'
+ to new section below.
+ (Preserving Window Sizes): New section describing
+ `window-size-fixed' and `window-preserve-size'.
+ (Display Action Functions): Describe `preserve-size' alist
+ entry.
+ (Window Parameters): Describe `preserved-size' parameter.
+
+2014-12-18 Eli Zaretskii <eliz@gnu.org>
+
+ * display.texi (Low-Level Font): Document font-info and query-font.
+
2014-12-18 Stefan Monnier <monnier@iro.umontreal.ca>
- * display.texi (Forcing Redisplay): Remove references to
- redisplay-dont-pause and redisplay-preemption-period (which doesn't
- even exist).
+ * display.texi (Forcing Redisplay): Remove references to
+ redisplay-dont-pause and redisplay-preemption-period (which doesn't
+ even exist).
+
+2014-12-16 Nicolas Petton <petton.nicolas@gmail.com>
+
+ * sequences.texi (Seq Library): Add documentation for seq.el.
+
+2014-12-15 Alan Mackenzie <acm@muc.de>
+
+ "Advice" is a mass noun. Amend text accordingly.
+ * functions.texi: (Advising Functions, Core Advising Primitives)
+ (Advising Named Functions, Advice combinators)
+ (Porting old advice): Replace, e.g., "an advice" with "advice".
+
+2014-12-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * files.texi (Relative File Names): Mention `directory-name-p'.
-2014-12-11 Eli Zaretskii <eliz@gnu.org>
+2014-12-13 Eli Zaretskii <eliz@gnu.org>
* text.texi (Comparing Text): Prevent a text string from being
broken between 2 lines. (Bug#19257)
-2014-11-19 Paul Eggert <eggert@cs.ucla.edu>
+2014-12-09 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * files.texi (Contents of Directories):
+ Document directory-files-recursively.
+
+2014-12-04 Eli Zaretskii <eliz@gnu.org>
+
+ * display.texi (Bidirectional Display):
+ Document 'buffer-substring-with-bidi-context'.
+
+ * text.texi (Buffer Contents):
+ Mention 'buffer-substring-with-bidi-context' with a cross-reference.
+
+2014-12-02 Eli Zaretskii <eliz@gnu.org>
+
+ * display.texi (Bidirectional Display):
+ Document 'bidi-find-overridden-directionality'.
+
+2014-11-29 Paul Eggert <eggert@cs.ucla.edu>
Lessen focus on ChangeLog files, as opposed to change log entries.
* intro.texi (Acknowledgments): ChangeLog file -> change log entries.
* tips.texi (Library Headers): Emacs uses a version control system.
+2014-11-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * text.texi (Document Object Model): Mention `dom-pp'.
+
+2014-11-26 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * text.texi (Document Object Model): New node to document dom.el.
+
+2014-11-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * processes.texi (Network Security): Made into its own section and
+ fleshed out.
+ (Network Security): Mention more NSM variables.
+ (Processes): Move the Network Security Manager stuff to the Emacs
+ manual.
+
+2014-11-23 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * processes.texi (Network): Mention the new :warn-unless-encrypted
+ parameter to `open-network-stream'.
+ (Network): Mention the Network Security Manager.
+
+2014-11-21 Ulf Jasper <ulf.jasper@web.de>
+
+ * text.texi (Parsing HTML/XML): Document new optional parameter
+ 'discard-comments' of 'libxml-parse(html|xml)-region'.
+
+2014-11-18 Leo Liu <sdl.web@gmail.com>
+
+ * functions.texi (Advising Named Functions):
+ Document define-advice.
+
+2014-11-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ Improve time stamp handling, and be more consistent about it.
+ * os.texi (Time of Day, Time Conversion, Time Parsing)
+ (Processor Run Time, Time Calculations):
+ Document the new behavior, plus be clearer about the old behavior.
+ (Idle Timers): Take advantage of new functionality.
+
+2014-11-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * text.texi (Special Properties): Mention `inhibit-read-only'.
+
+2014-11-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ * os.texi (Time of Day):
+ Use leading zero with 24-hour times less than 10:00.
+
2014-11-09 Glenn Morris <rgm@gnu.org>
* Makefile.in (version): Remove variable.
(clean): No longer delete dist tarfile.
(dist): Remove rule; replace with code in admin.el.
+2014-11-07 Martin Rudalics <rudalics@gmx.at>
+
+ * frames.texi (Size and Position): Rewrite description of
+ `frame-inhibit-implied-resize'.
+
+2014-10-22 Martin Rudalics <rudalics@gmx.at>
+
+ * frames.texi (Size Parameters): Replace "frame contents" by
+ "frame's text area". Add reference to Size and Position
+ section.
+ (Size and Position): Major rewrite. Add explanations for
+ frame's default font, text and display areas. Add descriptions
+ for `set-frame-font', `frame-text-height', `frame-text-width'
+ and `frame-inhibit-implied-resize'.
+
2014-10-20 Glenn Morris <rgm@gnu.org>
- * Version 24.4 released.
+ * Merge in all changes up to 24.4 release.
+
+2014-10-20 Tom Tromey <tom@tromey.com>
+
+ * objects.texi (Type Predicates): Don't mention display-table-p.
+
+2014-10-15 Eli Zaretskii <eliz@gnu.org>
+
+ * nonascii.texi (Character Properties): Document the new
+ properties 'bracket-type' and 'paired-bracket'.
+
+ * display.texi (Bidirectional Display): Update the version of the
+ UBA to which we are conforming.
2014-10-13 Glenn Morris <rgm@gnu.org>
* Makefile.in (dist): Update for new output variables.
-2014-10-09 Glenn Morris <rgm@gnu.org>
+2014-10-12 Glenn Morris <rgm@gnu.org>
* elisp.texi (DATE): Bump to October 2014.
+2014-10-09 Glenn Morris <rgm@gnu.org>
+
* frames.texi (Multiple Terminals): Copyedits.
-2014-10-08 Eli Zaretskii <eliz@gnu.org>
+2014-10-09 Eli Zaretskii <eliz@gnu.org>
* frames.texi (Multiple Terminals): Improve the description of X
display names. Add index entries.
frame might be positioned differently than specified by the frame
parameters alist.
+2014-10-08 Leo Liu <sdl.web@gmail.com>
+
+ * streams.texi (Output Functions): Document new argument ENSURE to
+ terpri. (Bug#18652)
+
+2014-10-04 Martin Rudalics <rudalics@gmx.at>
+
+ * display.texi (Scroll Bars): Add description of horizontal scroll
+ bars and associated functions.
+ * frames.texi (Layout Parameters): Add horizontal scroll bar
+ entries. Remove paragraph on "combined fringe widths".
+ * windows.texi (Window Sizes): Describe affects of horizontal
+ scroll bars on window layout and sizes. Fix description of
+ window-full-height-p.
+ (Resizing Windows): Mention horizontal scroll bar.
+
2014-10-04 Glenn Morris <rgm@gnu.org>
* commands.texi (Generic Commands): Copyedits.
2014-10-03 Martin Rudalics <rudalics@gmx.at>
* frames.texi (Size Parameters, Size and Position): Mention that
- with some window managers you have to set
- `frame-resize-pixelwise' in order make a frame truly fullscreen
- or maximized.
+ with some window managers you have to set `frame-resize-pixelwise'
+ in order make a frame truly fullscreen or maximized.
+
+2014-10-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ Improve doc for use of 'int', and discuss 'ssize_t'.
+ * internals.texi (C Integer Types): Mention 'int' for other
+ randomish values that lie in 'int' range. Mention 'ssize_t'. See:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-10/msg00019.html
+
+ Use AUTO_CONS instead of SCOPED_CONS, etc.
+ * internals.texi (Stack-allocated Objects):
+ Adjust to match the revised, less error-prone macros.
+
+2014-09-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ * internals.texi (Stack-allocated Objects): Further improvements.
+ Give an example of misuse.
+
+2014-09-30 Eli Zaretskii <eliz@gnu.org>
+
+ * internals.texi (Stack-allocated Objects): Minor improvements of
+ the wording and the indexing.
+
+2014-09-30 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * internals.texi (Stack-allocated Objects): Describe this feature.
-2014-09-04 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-09-15 Daniel Colascione <dancol@dancol.org>
+
+ * text.texi (Registers): Make `insert-register' documentation
+ reflect interface change.
+
+2014-09-08 Stefan Monnier <monnier@iro.umontreal.ca>
* functions.texi (Core Advising Primitives): Add a note about the
confusing treatment of `interactive' for :filter-args (bug#18399).
-2014-08-19 Eli Zaretskii <eliz@gnu.org>
+2014-09-07 Michael Albinus <michael.albinus@gmx.de>
+
+ * strings.texi (Text Comparison): Describe `string-collate-equalp'
+ and `string-collate-lessp'.
+
+2014-09-06 Leo Liu <sdl.web@gmail.com>
+
+ * control.texi (Pattern matching case statement): Document vector
+ qpattern. (Bug#18327)
+
+2014-08-29 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * lists.texi (Functions that Rearrange Lists):
+ Remove description of sort ...
+ * sequences.texi (Sequence Functions): ... and generalize
+ it for sequences. Add an example.
+
+2014-08-28 Eli Zaretskii <eliz@gnu.org>
* display.texi (Bidirectional Display): Update the Emacs's class
of bidirectional conformance.
-2014-07-08 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-08-27 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * eval.texi (Eval): Mention possible recovery from stack overflow.
+
+2014-07-11 Eli Zaretskii <eliz@gnu.org>
+
+ * internals.texi (Garbage Collection): Fix last change.
+
+2014-07-11 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * internals.texi (Garbage Collection): Mention memory-info.
+
+2014-07-11 Michael Albinus <michael.albinus@gmx.de>
+
+ * minibuf.texi (Intro to Minibuffers, Reading a Password):
+ Password hiding is available in batch mode, do not mention it in
+ the exclusion list. Mention `read-hide-char'. (Bug#17839)
+
+2014-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
* debugging.texi (Function Debugging, Debugger Commands):
Update debug-on-entry w.r.t behavior after redefinitions (bug#17902).
-2014-06-29 Glenn Morris <rgm@gnu.org>
+2014-07-03 Glenn Morris <rgm@gnu.org>
* help.texi (Help Functions): "Online" help doesn't mean what it
used to any more.
-2014-06-26 Glenn Morris <rgm@gnu.org>
+2014-07-02 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keymaps.texi (Key Lookup): Remove mention of indirect entries.
+ (Scanning Keymaps): Reword the `noindirect' argument.
+
+2014-06-28 Glenn Morris <rgm@gnu.org>
* minibuf.texi (Intro to Minibuffers): Batch mode is basic.
(Reading a Password): Mention batch mode. (Bug#17839)
+2014-06-23 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (%.texi): Disable implicit rules.
+ (mkinfodir): Remove.
+ (.dvi.ps): Replace with explicit rule.
+ (html): Declare as PHONY.
+ (${buildinfodir}): New rule.
+ ($(buildinfodir)/elisp.info): Use order-only prereq for output dir.
+ Use $<.
+ (elisp.dvi, elisp.html, elisp.pdf): Use $<.
+ (elisp.ps): New rule.
+
2014-06-21 Eli Zaretskii <eliz@gnu.org>
* positions.texi (Screen Lines): Clarify how columns are counted
by vertical-motion.
-2014-06-14 Eli Zaretskii <eliz@gnu.org>
+2014-06-15 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (bootstrap-clean): New.
+
+2014-06-15 Eli Zaretskii <eliz@gnu.org>
* commands.texi (Accessing Mouse): Improve the wording of the
posn-col-row documentation. (Bug#17768)
+2014-06-10 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (INFO_EXT): Remove and replace by ".info" throughout.
+ (INFO_OPTS): Set directly rather than with configure.
+
+2014-06-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ Say (accept-process-output P)'s result pertains to P if P is non-nil.
+ * processes.texi (Accepting Output): Mention that if PROCESS is non-nil,
+ the return value is about PROCESS, not about other processes.
+
2014-06-08 Glenn Morris <rgm@gnu.org>
* os.texi (Startup Summary): Small fix for initial-buffer-choice.
* numbers.texi (Comparison of Numbers): Copyedits.
-2014-06-06 Glenn Morris <rgm@gnu.org>
+2014-06-08 Glenn Morris <rgm@gnu.org>
* display.texi (Window Systems): Remove window-setup-hook.
* os.texi (Startup Summary, Init File):
* display.texi (Overlay Properties): Update re priority. (Bug#17234)
-2014-06-05 Glenn Morris <rgm@gnu.org>
-
* package.texi (Package Archives): Mention signing packages.
-2014-05-27 Glenn Morris <rgm@gnu.org>
+2014-06-07 Eli Zaretskii <eliz@gnu.org>
+
+ * commands.texi (Click Events): Update contents of click event's
+ position list due to last changes in make_lispy_position.
+
+2014-06-02 Glenn Morris <rgm@gnu.org>
* text.texi (Buffer Contents):
Update for filter-buffer-substring changes.
* abbrevs.texi (Abbrev Expansion): Update for expand-abbrev changes.
* functions.texi (Advising Functions): Standardize menu case.
-2014-05-17 Eli Zaretskii <eliz@gnu.org>
+2014-05-26 Eli Zaretskii <eliz@gnu.org>
* display.texi (Invisible Text): Clarify the description of
line-move-ignore-invisible. (Bug#17511)
-2014-05-07 Paul Eggert <eggert@cs.ucla.edu>
+2014-05-22 Leo Liu <sdl.web@gmail.com>
+
+ * sequences.texi (Sequence Functions): Don't mention when and how
+ SEQ to nreverse is mutated.
+
+2014-05-21 Leo Liu <sdl.web@gmail.com>
+
+ * sequences.texi (Sequence Functions): Update nreverse.
+
+2014-05-19 Paul Eggert <eggert@cs.ucla.edu>
+
+ Allow any non-nil value to count as true in bool-vector.
+ * sequences.texi (Bool-Vectors): Coalesce discussion of how to
+ print them. bool-vector's args need not be t or nil.
+
+2014-05-19 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * sequences.texi (Bool-vectors): Mention bool-vector.
+
+2014-05-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ Assume C99 or later (Bug#17487).
+ * internals.texi (C Dialect): Document this.
+
+2014-05-15 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * lists.texi (Building Cons Cells and Lists):
+ Remove description of `reverse' and `'nreverse' to generalize them...
+ * sequences.texi (Sequences): ...for sequences here.
+
+2014-05-14 Glenn Morris <rgm@gnu.org>
+
+ * files.texi (Changing Files): Mention with-file-modes.
+
+2014-05-08 Paul Eggert <eggert@cs.ucla.edu>
* internals.texi (C Dialect): New section.
(C Integer Types): Mention bool_bf.
-2014-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
* processes.texi (Filter Functions, Sentinels): Advertise add-function.
-2014-04-24 Eli Zaretskii <eliz@gnu.org>
+2014-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * windows.texi (Window Configurations, Window Configurations):
+ Window configs don't store marks any more.
+
+2014-04-25 Eli Zaretskii <eliz@gnu.org>
* strings.texi (Text Comparison): Mention equal-including-properties
for when text properties of the strings matter for comparison.
-2014-04-21 Eli Zaretskii <eliz@gnu.org>
+2014-04-22 Eli Zaretskii <eliz@gnu.org>
* text.texi (Registers): Document register-read-with-preview.
* internals.texi (Building Emacs): Improve indexing.
-2014-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-17 Daniel Colascione <dancol@dancol.org>
- * display.texi (Overlay Properties): Reword the doc of `priority'.
- (Finding Overlays): Document new arg of `overlays-at'.
+ * frames.texi (Terminal Parameters): Document new
+ tty-mode-set-strings and tty-mode-reset-strings terminal
+ parameters.
-2014-04-05 Glenn Morris <rgm@gnu.org>
+2014-04-17 Paul Eggert <eggert@cs.ucla.edu>
- * os.texi (Recording Input): Dribble files may contain passwords.
+ * Makefile.in (infoclean): Be consistent about reporting failures.
+
+2014-04-09 Daniel Colascione <dancol@dancol.org>
+
+ * errors.texi (Standard Errors): Document required error
+ parameters for `scan-error'.
+
+ * positions.texi (List Motion): Explain new `up-list' arguments.
+ Mention `backward-up-list'.
+
+2014-04-08 Daniel Colascione <dancol@dancol.org>
+
+ * minibuf.texi (Programmed Completion): Improve phrasing, remove
+ incorrect bullet count.
-2014-04-04 Glenn Morris <rgm@gnu.org>
+2014-04-07 Glenn Morris <rgm@gnu.org>
+
+ * os.texi (Recording Input): Dribble files may contain passwords.
* backups.texi (Making Backups, Reverting):
Update for default values of some -function vars no longer being nil.
(Reverting): Update for buffer-stale-function
also applying to file-buffers.
-2014-03-25 Eli Zaretskii <eliz@gnu.org>
+2014-03-31 Daniel Colascione <dancol@dancol.org>
+
+ * minibuf.texi (Completion in Buffers): Discuss using lazy
+ completion tables for inline completion.
+
+2014-03-28 Glenn Morris <rgm@gnu.org>
+
+ * os.texi (Terminal-Specific): Mention term-file-aliases.
+
+2014-03-26 Eli Zaretskii <eliz@gnu.org>
* files.texi (Kinds of Files): Improve documentation of
file-symlink-p. (Bug#17073) Add cross-references.
-2014-03-24 Barry O'Reilly <gundaetiapo@gmail.com>
+2014-03-26 Barry O'Reilly <gundaetiapo@gmail.com>
* markers.texi (Moving Marker Positions): The 2014-03-02 doc
change mentioning undo's inability to handle relocated markers no
* text.texi (Undo): Expand documentation of (TEXT . POS) and
(MARKER . ADJUSTMENT) undo elements.
+2014-03-26 Glenn Morris <rgm@gnu.org>
+
+ * files.texi (File Locks): All systems support locking.
+
2014-03-22 Glenn Morris <rgm@gnu.org>
+ * commands.texi (Defining Commands):
+ Mention that interactive-only also affects describe-function.
+
+ * functions.texi (Declare Form): Add interactive-only.
+ * commands.texi (Defining Commands) Mention declare.
+
* commands.texi (Defining Commands): List interactive-only values.
2014-03-22 Eli Zaretskii <eliz@gnu.org>
* functions.texi (Core Advising Primitives): Fix cross-reference
in last change.
-2014-03-21 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-03-22 Stefan Monnier <monnier@iro.umontreal.ca>
* functions.texi (Advising Functions): Explain a bit more how
arguments work.
1998-01-30 Richard Stallman <rms@psilocin.gnu.org>
- * Makefile (SHELL): Defined.
+ * Makefile (SHELL): Define.
1998-01-27 Richard Stallman <rms@psilocin.gnu.org>
-2015-02-04 Kelvin White <kwhite@gnu.org>
+2015-03-03 Kelvin White <kwhite@gnu.org>
* erc.texi (Advanced Usage, Options): Add descriptions and examples
for erc-format-nick-function and erc-rename-buffers options.
(Connecting): fix typo
- 2015-03-03 Michael Albinus <michael.albinus@gmx.de>
-2014-12-29 Michael Albinus <michael.albinus@gmx.de>
+2015-03-02 Daniel Colascione <dancol@dancol.org>
- Sync with Tramp 2.2.11.
+ * cl.texi (Iteration Clauses): Mention iterator support.
+
+2015-02-25 Tassilo Horn <tsdh@gnu.org>
+
+ * reftex.texi (Multifile Documents): Document
+ reftex-include-file-commands.
+ (Options): Mention that non-customize changes might require
+ calling reftex-compile-variables.
+
+2015-02-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ * texinfo.tex: Update from gnulib.
+
+2015-02-10 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * eww.texi (Basics): Mention eww-toggle-fonts.
+
+2015-02-05 Glenn Morris <rgm@gnu.org>
+
+ * auth.texi (Multiple GMail accounts with Gnus): Markup fix.
+
+2015-02-05 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * auth.texi (Multiple GMail accounts with Gnus): Add FAQ.
+
+2015-02-05 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi (Using IMAP): Fix menu node name.
+
+2015-02-05 Trevor Murphy <trevor.m.murphy@gmail.com>
+
+ * gnus.texi (Support for IMAP Extensions): Document the Gmail label
+ extension.
+
+2015-02-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ * texinfo.tex: Update from gnulib.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * eudc.texi (LDAP Configuration): Rename from LDAP Requirements
+ and provide configuration examples.
+
+2015-01-17 Stefan Monnier <monnier@iro.umontreal.ca>
+ * eieio.texi (Slot Options): Document :protection as unsupported.
+
+2015-01-01 Michael Albinus <michael.albinus@gmx.de>
+
+ Sync with Tramp 2.2.11.
* trampver.texi: Update release number.
-2014-11-10 Tassilo Horn <tsdh@gnu.org>
+2014-12-31 Paul Eggert <eggert@cs.ucla.edu>
- * gnus.texi (HTML): Update section so that it mentions shr and w3m.
- Also link the full EWW manual that explains more on shr, too.
+ Less 'make' chatter for Emacs doc
+ * Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_GEN, am__v_GEN_)
+ (am__v_GEN_0, am__v_GEN_1): New macros, from ../../src/Makefile.in.
+ (ENVADD, $(buildinfodir)/%.info, %.html, ${buildinfodir}/ccmode.info)
+ (${buildinfodir}/efaq%.info, efaq%.html):
+ Use them.
- * gnus-faq.texi (FAQ 4 - Reading messages, FAQ 4-16): Add Q&A on how to
- increase contrast when displaying HTML mail with shr.
+2014-12-31 Filipp Gunbin <fgunbin@fastmail.fm>
+
+ * info.texi (Create Info buffer): Mention info-display-manual prefix.
+
+2014-12-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ * efaq.texi (Displaying the current file name in the titlebar):
+ Prefer (system-name) to system-name.
+ * smtpmail.texi (Server workarounds): Fix grammar.
+
+2014-12-18 Eric Abrahamsen <eric@ericabrahamsen.net>
+
+ * gnus.texi (Gnus Registry Setup): Explain pruning changes.
+ Mention gnus-registry-prune-factor. Explain sorting changes and
+ gnus-registry-default-sort-function. Correct file extension.
+
+2014-12-17 Jay Belanger <jay.p.belanger@gmail.com>
+
+ * calc.texi (About This Manual): Update instructions
+ for building the manual.
+
+2014-12-15 Alan Mackenzie <acm@muc.de>
+
+ "Advice" is a mass noun. Amend text accordingly.
+ * cl.texi (Obsolete Macros): Replace "an advice" with "advice".
+
+2014-12-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ * texinfo.tex: Update from gnulib.
+
+2014-12-08 Andrey Kotlarski <m00naticus@gmail.com>
+
+ * eww.texi (Basics): Document managing multiple eww buffers.
+
+2014-12-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * eww.texi (Basics): Document eww PDF viewing.
+
+2014-11-23 Ivan Shmakov <ivan@siamics.net>
+
+ * eww.texi (Advanced): Mention the Desktop stuff (bug#18010).
+
+2014-11-23 Michael Albinus <michael.albinus@gmx.de>
+
+ * tramp.texi (Remote processes): Let-bind environment variables to
+ `process-environment' when running `process-file' or
+ `start-file-process'.
+
+2014-11-19 Ivan Shmakov <ivan@siamics.net>
+
+ * eww.texi (Basics): Document `eww-history-limit'.
+
+2014-11-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ * org.texi (The date/time prompt, Matching tags and properties):
+ Use leading zero with 24-hour times less than 10:00.
+
+2014-11-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * eww.texi (Variable Index): Mention `eww-after-render-hook'.
+
+2014-11-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * eww.texi (Basics): Document `eww-readable'.
+
+2014-11-10 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus.texi (Top): Add missing `HTML' menu.
+ (HTML): Fix xref to FAQ 4-16.
2014-11-09 Glenn Morris <rgm@gnu.org>
(clean): No longer delete dist tarfile.
(dist): Remove rule; replace with code in admin.el.
-2014-11-08 Michael Albinus <michael.albinus@gmx.de>
+2014-11-08 Glenn Morris <rgm@gnu.org>
- Backport Tramp changes from trunk.
+ * Makefile.in (${buildinfodir}/ccmode.info)
+ (${buildinfodir}/efaq%.info): Ensure output directory exists.
- * tramp.texi (Inline methods): Remove restriction on "telnet".
- Recommend sharing ssh connections for "plink".
- (External methods): Remove "sftp". Merge "pscp" and "psftp"
- descriptions. Recommend sharing ssh connections. Add "nc" method.
- (GVFS based methods): Add "sftp".
- (Customizing Completion, External packages, Issues): Use @dots{}.
- (Remote shell setup): Explain, how to change command line
- arguments of remote "nc" listener.
+2014-11-07 Tassilo Horn <tsdh@gnu.org>
- * trampver.texi: Update release number.
+ * gnus.texi (HTML): Update section so that it mentions shr and w3m.
+ Also link the full EWW manual that explains more on shr, too.
-2014-11-07 Tassilo Horn <tsdh@gnu.org>
+ * gnus-faq.texi (FAQ 4 - Reading messages, FAQ 4-16): Add Q&A on how to
+ increase contrast when displaying HTML mail with shr.
* eww.texi (Advanced): Document increasing contrast with
shr-color-visible-distance-min and
shr-color-visible-luminance-min.
-2014-10-31 Eric S. Raymond <esr@thyrsus.com>
+2014-11-02 Teodor Zlatanov <tzz@lifelogs.com>
- * efaq-w32.texi, gnus-coding.texi:
- Neutralize language specific to a repository type.
+ * auth.texi (Help for users): Explain quoting rules better.
2014-10-30 Glenn Morris <rgm@gnu.org>
* efaq.texi (Gnus does not work with NNTP): Remove; ancient.
-2014-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-10-30 Stefan Monnier <monnier@iro.umontreal.ca>
* eieio.texi (Accessing Slots, CLOS compatibility): Adjust wording
since `setf' is in core rather than in CL nowadays.
-2014-10-20 Glenn Morris <rgm@gnu.org>
+2014-10-29 Paul Eggert <eggert@cs.ucla.edu>
- * efaq.texi (Finding a package with particular functionality):
- Update example.
- * vip.texi: Mention this is obsolete.
+ Simplify use of current-time and friends.
+ * org.texi (Dynamic blocks): Omit unnecessary call to current-time
+ in example.
+
+2014-10-28 Christopher Schmidt <ch@ristopher.com>
+
+ * calc.texi (Quick Calculator): Mention prefix argument of
+ `quick-calc'.
+
+2014-10-26 Eric S. Raymond <esr@thyrsus.com>
+
+ * efaq-w32.texi: Neutralize language specific to a repository type.
+
+2014-10-25 Eric S. Raymond <esr@thyrsus.com>
+
+ * gnus-coding.texi: Neutralize language specific to a repository type.
2014-10-20 Glenn Morris <rgm@gnu.org>
- * Version 24.4 released.
+ * Merge in all changes up to 24.4 release.
2014-10-13 Glenn Morris <rgm@gnu.org>
* Makefile.in (dist): Update for new output variables.
+2014-10-08 Leo Liu <sdl.web@gmail.com>
+
+ * cl.texi (Porting Common Lisp): Remove parse-integer.
+
+2014-10-06 Ulf Jasper <ulf.jasper@web.de>
+
+ * newsticker.texi (Supported Formats): Fix order of subheading and
+ itemize.
+
2014-10-04 Glenn Morris <rgm@gnu.org>
* vip.texi (Other Vi Commands): Markup fix.
-2014-10-02 Bastien Guerry <bzg@gnu.org>
+2014-10-03 Bastien Guerry <bzg@gnu.org>
- * org.texi (Key bindings and useful functions): Fix typo. Use the
- correct function's name.
+ * org.texi (Key bindings and useful functions): Fix typo.
+ Use the correct function's name.
-2014-10-02 Michael Brand <michael.ch.brand@gmail.com>
+2014-10-03 Michael Brand <michael.ch.brand@gmail.com>
* org.texi (Formula syntax for Calc): Add `f-1' to TBLFM example
about `nan'.
-2014-10-02 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+2014-10-03 Nicolas Goaziou <mail@nicolasgoaziou.fr>
* org.texi (Export settings): Be more explicit about how output
file name is built.
* org.texi (Headings and sectioning structure): Document menus.
-2014-10-02 Nicolas Goaziou <n.goaziou@gmail.com>
-
* org.texi (Include files, Publishing options): Remove reference
- to inexistent variable.
+ to nonexistent variable.
+
+2014-10-03 Eli Zaretskii <eliz@gnu.org>
+
+ * erc.texi (Connecting): Remove stray "OA" that failed the manual
+ build.
-2014-07-25 Stephen Berman <stephen.berman@gmx.net>
+2014-10-03 Kelvin White <kwhite@gnu.org>
+
+ * erc.texi (Advanced Usage, Options): Add descriptions and examples
+ for erc-format-nick-function and erc-rename-buffers options.
+
+2014-09-26 Leo Liu <sdl.web@gmail.com>
+
+ * cl.texi (Predicates on Numbers): Document cl-digit-char-p.
+ (Numerical Functions): Document cl-parse-integer. (Bug#18557)
+
+2014-09-24 Ulf Jasper <ulf.jasper@web.de>
+
+ * newsticker.texi: Reworked. Document new treeview group
+ commands. Remove VERSION, UPDATED, use EMACSVER instead.
+ Use term 'feed reader'.
+
+2014-09-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ Less chatter in 'make' output.
+ * Makefile.in (clean): Simplify, for shorter command line.
+
+2014-08-07 Reuben Thomas <rrt@sc3d.org>
+
+ * ediff.texi (Merging and diff3): Don't mention lack of support
+ for VMS diff, we no longer support VMS.
+
+2014-08-07 Michael Albinus <michael.albinus@gmx.de>
+
+ * tramp.texi (Remote shell setup): Explain, how to change command
+ line arguments of remote "nc" listener.
+
+2014-07-31 Tassilo Horn <tsdh@gnu.org>
+
+ * gnus.texi (Group Parameters): Document that `gcc-self' may also be a
+ list.
+
+2014-07-28 Stephen Berman <stephen.berman@gmx.net>
* todo-mode.texi (Marked Items): Correct omission of item deletion
from commands applying to both todo and done items.
-2014-07-04 Stephen Berman <stephen.berman@gmx.net>
+2014-07-18 Albert Krewinkel <albert+gnus@zeitkraut.de>
+
+ * gnus.texi (Posting Styles): Document the possibility to perform
+ string replacements when matching against headers.
+
+2014-07-09 Stephen Berman <stephen.berman@gmx.net>
* todo-mode.texi (Levels of Organization): Comment out statement
that Emacs recognizes todo files by their extension, since this
feature has been removed due to bug#17482.
-2014-06-29 Glenn Morris <rgm@gnu.org>
+2014-07-03 Michael Albinus <michael.albinus@gmx.de>
+
+ * trampver.texi: Update release number.
+
+2014-07-03 Glenn Morris <rgm@gnu.org>
* info.texi, mh-e.texi: "Online help" doesn't mean what it
used to any more.
* idlwave.texi (Introduction): Comment out dead http screenshot links.
-2014-06-23 Leo Liu <sdl.web@gmail.com>
+2014-06-24 Leo Liu <sdl.web@gmail.com>
+
+ * dired-x.texi (Omitting Files in Dired, Omitting Variables):
+ Fix key binding to dired-omit-mode. (Bug#16354)
- * dired-x.texi (Omitting Files in Dired, Omitting Variables): Fix
- key binding to dired-omit-mode. (Bug#16354)
+2014-06-24 Eli Zaretskii <eliz@gnu.org>
-2014-06-22 Eli Zaretskii <eliz@gnu.org>
+ * autotype.texi (Skeleton Language): Document the \n feature better.
- * autotype.texi (Skeleton Language): Document the \n feature
- better.
+2014-06-23 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (%.texi): Disable implicit rules.
+
+2014-06-22 Mario Lang <mlang@delysid.org>
+
+ * srecode.texi (Base Arguments): The the -> to the.
+
+ * org.texi (Images in ODT export): The the -> the.
2014-06-21 Eli Zaretskii <eliz@gnu.org>
* autotype.texi (Skeleton Language): Document the feature of \n
when at eol.
-2014-06-15 Michael Albinus <michael.albinus@gmx.de>
+2014-06-21 Michael Albinus <michael.albinus@gmx.de>
* dbus.texi (Type Conversion): Formatting edits in example.
-2014-06-10 Glenn Morris <rgm@gnu.org>
+2014-06-15 Michael Albinus <michael.albinus@gmx.de>
+
+ Sync with Tramp 2.2.10.
+
+ * tramp.texi (Inline methods): Remove restriction on "telnet".
+ Recommend sharing ssh connections for "plink".
+ (External methods): Remove "sftp". Merge "pscp" and "psftp"
+ descriptions. Recommend sharing ssh connections. Add "nc" method.
+ (GVFS based methods): Add "sftp".
+ (Customizing Completion, External packages, Issues):
+ Use @dots{}.
+
+ * trampver.texi: Update release number.
+
+2014-06-15 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (bootstrap-clean): New.
+
+2014-06-12 Vincent Belaïche <vincentb1@users.sourceforge.net>
+
+ * ses.texi: Adding documentation for SES local printer functions.
+
+2014-06-12 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in: Use GNU Make features to reduce duplication.
+ (mkinfodir): Remove.
+ (${buildinfodir}): Generate using an order-only prerequisite.
+ (.dvi.ps): Replace with pattern rule.
+ ($INFO_TARGETS): Mark as PHONY.
+ (${buildinfodir}): New rule.
+ (EXTRA_OPTS, need_emacsver, need_emacsver_prefix): New variables.
+ (${buildinfodir}/%.info, %.dvi, %.pdf, %.html, %.ps):
+ New pattern rules, replacing numerous previous explicit rules.
+ (info_template): New definition.
+ (gnus.dvi, gnus.pdf): Use distinct intermediate files.
+ (mostlyclean): Adjust for above gnus change.
+
+2014-06-11 Glenn Morris <rgm@gnu.org>
* Makefile.in (INFO_INSTALL): Update for 2013-08-28 DOCMISC_W32 change.
+2014-06-10 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (INFO_EXT): Remove and replace by ".info" throughout.
+ (INFO_OPTS): Set directly rather than with configure.
+
2014-06-08 Karl Berry <karl@gnu.org>
* doc/info.texi (Help-^L): "mode line", "screenful",
* todo-mode.texi (Moving and Deleting Items):
* woman.texi (Navigation): Markup fixes re SPC, RET.
-2014-05-24 Paul Eggert <eggert@cs.ucla.edu>
+2014-06-02 Glenn Morris <rgm@gnu.org>
+
+ * efaq.texi (Finding a package with particular functionality):
+ Update example.
+ * vip.texi: Mention this is obsolete.
+
+2014-05-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ * texinfo.tex: Update from gnulib.
+
+2014-05-26 Paul Eggert <eggert@cs.ucla.edu>
Specify coding if Latin-1 Emacs would misinterpret (Bug#17575).
* htmlfontify.texi, org.texi: Add "coding: utf-8".
-2014-05-23 Stephen Berman <stephen.berman@gmx.net>
+2014-05-26 Stephen Berman <stephen.berman@gmx.net>
* todo-mode.texi: Update in light of changes due to bug#17482.
Replace numerous mistaken uses of literal quotes with proper
(Todo Mode Entry Points): Comment out reference to using find-file
or Dired to visit Todo files, since this has been disabled (bug#17482).
-2014-05-06 Michael Albinus <michael.albinus@gmx.de>
+2014-05-20 Leo Liu <sdl.web@gmail.com>
+
+ * cl.texi (List Functions, Efficiency Concerns): Update cl-endp.
+
+2014-05-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ * texinfo.tex: Update from gnulib.
+
+2014-05-08 Michael Albinus <michael.albinus@gmx.de>
* tramp.texi (Frequently Asked Questions): Mention HISTFILE
setting in ~/.ssh/environment.
-2014-05-02 Stephen Berman <stephen.berman@gmx.net>
+2014-05-04 Stephen Berman <stephen.berman@gmx.net>
* todo-mode.texi: Update, improve exposition, add cross
references, fix typos.
(Inserting New Items, Editing Item Headers and Text): Rewrite to
document new user interface.
-2014-05-01 Glenn Morris <rgm@gnu.org>
+2014-05-04 Glenn Morris <rgm@gnu.org>
* autotype.texi (Skeleton Language):
* message.texi (Header Commands): Replace `iff'.
+2014-05-02 Paul Eggert <eggert@cs.ucla.edu>
+
+ * vhdl-mode.texi: Add "@documentencoding UTF-8",
+ since this is a toplevel .texi file.
+
2014-04-22 Bastien Guerry <bzg@gnu.org>
* org.texi (Installation): Be more clear on why installing Org
* org.texi (Top, Exporting): Org has its own documentation and
should therefore be removed from "Other build-in back-ends".
+2014-04-22 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * cl.texi (Structures): Remove cl-struct-set-slot-value.
+
+2014-04-20 Daniel Colascione <dancol@dancol.org>
+
+ * cl.texi (Declarations): Document changes to `cl-the' and defstruct functions.
+
+2014-04-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ * Makefile.in (infoclean): Be consistent about reporting failures.
+
+2014-03-27 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (INFO_COMMON): Add vhdl-mode.
+ (vhdl_mode_deps, vhdl-mode, $(buildinfodir)/vhdl-mode$(INFO_EXT))
+ (vhdl-mode.dvi, vhdl-mode.pdf, vhdl-mode.html): New rules/variables.
+
+ * vhdl-mode.texi: General clean-up. Set copyright to FSF, add license.
+ Remove hand-written node pointers. Remove info re old Emacs versions.
+ Markup fixes.
+ (Getting Connected): Remove irrelevant info.
+ (Indentation Commands, Requirements): Remove empty/irrelevant nodes.
+ (Frequently Asked Questions): Electric indent is now enabled.
+
+2014-03-27 Reto Zimmermann <reto@gnu.org>
+ Rod Whitby <software.vhdl-mode@rwhitby.net>
+
+ * vhdl-mode.texi: New file, imported from upstream vhdl-mode.
+
2014-03-26 Paul Eggert <eggert@cs.ucla.edu>
* texinfo.tex: Update from gnulib.
-2014-03-24 Michael Albinus <michael.albinus@gmx.de>
+2014-03-26 Michael Albinus <michael.albinus@gmx.de>
* tramp.texi (Frequently Asked Questions): Add fish shell settings.
+2014-03-23 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus.texi (Ma Gnus): Mention header attachment buttons.
+
+2014-03-23 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * emacs-mime.texi (MML Definition): Document recipient-filename.
+
+2014-03-23 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * gnus.texi (MIME Commands):
+ Mention gnus-mime-buttonize-attachments-in-header and
+ gnus-mime-display-attachment-buttons-in-header.
+
+2014-03-23 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * message.texi (Forwarding):
+ Mention `message-forward-included-headers'.
+
+2014-03-23 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * gnus.texi: w3 is no longer supported by Gnus.
+
+2014-03-22 Glenn Morris <rgm@gnu.org>
+
+ * efaq.texi (Informational files for Emacs): Do not mention etc/GNU.
+
2014-03-21 Glenn Morris <rgm@gnu.org>
* ede.texi (ede-linux):
2014-02-16 Michael Albinus <michael.albinus@gmx.de>
Sync with Tramp 2.2.9.
-
* trampver.texi: Update release number.
* efaq-w32.texi (Tramp ssh): Remove also pscp1 and pscp2.
* org.texi (Installation, Activation): Split from Installation and
Activation.
- (Clocking work time): Documented new features.
+ (Clocking work time): Document new features.
2006-08-13 Alex Schroeder <alex@gnu.org>
* emacs-mime.texi (Flowed text): Add mm-fill-flowed. (Sync
2004-01-27 from the trunk).
-2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org>
+2006-02-24 Alan Mackenzie <acm@muc.de>
* cc-mode.texi: Rename c-hungry-backspace to
c-hungry-delete-backwards, at the request of RMS. Leave the old
name as an alias.
-2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org>
+2006-02-24 Alan Mackenzie <acm@muc.de>
* cc-mode.texi: Correct the definition of c-beginning-of-defun, to
include the function header within the defun.
-2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org>
+2006-02-24 Alan Mackenzie <acm@muc.de>
* cc-mode.texi: Correct two typos.
-2006-02-24 Alan Mackenzie <bug-cc-mode@gnu.org>
+2006-02-24 Alan Mackenzie <acm@muc.de>
* cc-mode.texi (Comment Commands): State that C-u M-; kills any
existing comment.
(MIME with Emacs mail packages): Delete section about the Emacs
MIME FAQ (it's not reachable anymore).
-2005-12-08 Alan Mackenzie <bug-cc-mode@gnu.org>
+2005-12-08 Alan Mackenzie <acm@muc.de>
* cc-mode.texi: The manual has been extensively revised: the
information about using CC Mode has been separated from the larger
2005-10-10 Carsten Dominik <dominik@science.uva.nl>
- * org.texi (Workflow states): Documented that change in keywords
+ * org.texi (Workflow states): Document that change in keywords
becomes active only after restart of Emacs.
2005-10-08 Michael Albinus <michael.albinus@gmx.de>
* Makefile.in (../info/tramp, tramp.dvi): Depend on trampver.texi.
-2004-08-11 Martin Stjernholm <bug-cc-mode@gnu.org>
+2004-08-11 Martin Stjernholm <mast@lysator.liu.se>
* cc-mode.texi: Various updates for CC Mode 5.30.9.
* eshell.texi (Known Problems): Add doc item.
-2003-11-22 Martin Stjernholm <bug-cc-mode@gnu.org>
+2003-11-22 Martin Stjernholm <mast@lysator.liu.se>
* cc-mode.texi: Update for CC Mode 5.30.
-2015-02-12 Kelvin White <kwhite@gnu.org>
+2015-03-03 Kelvin White <kwhite@gnu.org>
-- * NEWS: Add section to include ERC changes
++ * NEWS.24: Add section to include ERC changes.
- 2015-03-03 Eli Zaretskii <eliz@gnu.org>
-2015-01-17 Eli Zaretskii <eliz@gnu.org>
+2015-03-02 Daniel Colascione <dancol@dancol.org>
+
+ * NEWS: Mention finalizers.
+
+2015-02-09 Gareth Rees <gdr@garethrees.org> (tiny change)
+
+ * NEWS.24: Fix typo (bug#19820)
+
+2015-02-08 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * NEWS: Document `comment-line'.
+
+2015-02-03 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * NEWS: Document package.el's improved dependency-handling.
+
+2015-01-29 Francesc Rocher <francesc.rocher@gmail.com>
+
+ * images/splash.svg, images/splash.png:
+ * images/splash.pbm, images/splash.xpm, images/README:
+ Splash images refurbished.
+
+2015-01-28 Eli Zaretskii <eliz@gnu.org>
* tutorials/TUTORIAL.he: Use u+05f4 HEBREW PUNCTUATION GERSHAYIM
instead of u+0022 QUOTATION MARK in Hebrew acronyms.
-2014-12-24 Álvar Ibeas <ibeas@gmx.com> (tiny change)
+2015-01-27 Ivan Shmakov <ivan@siamics.net>
+
+ * NEWS: Mention the new tar-new-entry command. (Bug#19274)
+
+2015-01-27 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * NEWS: Document EUDC improvements.
+
+2015-01-26 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * publicsuffix.txt: Install an updated version of the file from
+ https://publicsuffix.org/list/effective_tld_names.dat.
+
+2015-01-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use gnustep-config if available
+ * NEWS: Document this.
+
+2015-01-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ Don't downcase system diagnostics' first letters
+ * NEWS: Document this.
+
+2015-01-16 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * NEWS: Document installing packages from directories.
+
+2015-01-15 Eli Zaretskii <eliz@gnu.org>
+
+ * NEWS: Mention 'set-binary-mode'.
+
+2015-01-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ Default to 'configure --enable-silent-rules'
+ * NEWS: Document this.
+
+2015-01-10 Daniel Colascione <dancol@dancol.org>
+
+ * NEWS: Fix typo
+
+2015-01-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ batch write-region no longer says "Wrote FOO"
+ * NEWS: Document this.
+
+2014-12-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ * PROBLEMS: Omit obsolete mention of FQDNs.
+
+2014-12-27 Álvar Ibeas <ibeas@gmx.com> (tiny change)
* tutorials/TUTORIAL.es: Improve style consistency. Spelling fixes.
-2014-11-19 Paul Eggert <eggert@cs.ucla.edu>
+2014-12-25 Karl Fogel <kfogel@red-bean.com>
+
+ * NEWS: Mention new buffer display behavior for `shell'.
+ This follows up to Sam Steingold's change of 2014-12-23
+ in ../lisp/shell.el, in git commit e55a467ec0f758c311d3.
+
+2014-12-15 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * NEWS: Mention `let-alist.
+
+2014-12-14 Alan Mackenzie <acm@muc.de>
+
+ * NEWS: Add entry for fast-but-imprecise-scrolling.
+
+2014-12-14 Cameron Desautels <camdez@gmail.com>
+
+ * NEWS: Mention `custom-prompt-customize-unsaved-options'.
+
+ * TODO: Remove its entry.
+
+2014-12-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ Convert Czech and Slovakian refcards to UTF-8
+ * refcards/cs-dired-ref.tex, refcards/cs-refcard.tex:
+ * refcards/cs-survival.tex, refcards/sk-dired-ref.tex:
+ * refcards/sk-refcard.tex, refcards/sk-survival.tex:
+ Convert from iso-latin-2 to utf-8. Remove no-longer-necessary
+ coding comments and "\input utf8off" directives.
+
+2014-12-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * NEWS: Mention directory-name-p.
+
+2014-12-09 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * NEWS: Mention directory-files-recursively.
+
+2014-12-08 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * NEWS: Mention the new eww `S' command.
+
+2014-12-05 Stephen Leake <stephen_leake@stephe-leake.org>
+
+ * CONTRIBUTE: Move to ../.
+
+2014-12-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * NEWS: Add some doc markers to the eww stuff.
+
+2014-12-04 Eli Zaretskii <eliz@gnu.org>
+
+ * NEWS: Mention 'buffer-substring-with-bidi-context'.
+
+2014-12-02 Eli Zaretskii <eliz@gnu.org>
+
+ * NEWS: Mention 'bidi-find-overridden-directionality'.
+
+2014-11-29 Paul Eggert <eggert@cs.ucla.edu>
Lessen focus on ChangeLog files, as opposed to change log entries.
* CONTRIBUTE: Give advice about git commit messages and how
to generate proposed patches containing them.
+2014-11-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * NEWS: Mention dom.el.
+
+2014-11-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * NEWS: Mention NSM.
+
+2014-11-23 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * NEWS: Mention `url-request-noninteractive'.
+
+2014-11-19 Leo Liu <sdl.web@gmail.com>
+
+ * NEWS: Mention new macro define-advice.
+
+2014-11-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ Improve time stamp handling, and be more consistent about it.
+ * NEWS: Document the changes.
+
+2014-11-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * NEWS: Mention the new `M-s M-s' keystroke.
+
2014-11-13 Paul Eggert <eggert@cs.ucla.edu>
- Backport fix for minor Bazaar leftovers.
+ Fix minor Bazaar leftovers.
Reported by Perry E. Metzger in:
http://lists.gnu.org/archive/html/emacs-devel/2014-11/msg00745.html
* CONTRIBUTE: More git transition.
* CONTRIBUTE: git transition.
+2014-11-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * NEWS: Mention that you can have several eww buffers (bug#16211).
+
+2014-11-10 Glenn Morris <rgm@gnu.org>
+
+ * refcards/emacsver.tex.in: Rename from emacsver.tex.
+
+2014-11-09 Eric Ludlam <zappo@gnu.org>
+
+ * srecode/doc-cpp.srt (mode): Set to c mode so this works with
+ both C and C++.
+
+2014-11-05 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * NEWS: Mention `url-user-agent'. (Bug#16498)
+
+2014-09-13 Christopher Schmidt <ch@ristopher.com>
+
+ * NEWS: Mention prefix argument of `quick-calc'.
+
2014-10-20 Glenn Morris <rgm@gnu.org>
- * Version 24.4 released.
+ * Merge in all changes up to 24.4 release.
+
+2014-10-19 Jan Djärv <jan.h.d@swipnet.se>
+
+ * NEWS: Teroffs and detachable tool bar for Gtk+ is gone.
+
+2014-10-19 Ulf Jasper <ulf.jasper@web.de>
+
+ * images/newsticker/rss-feed.png: New.
+
+ * images/newsticker/rss-feed.svg: New.
+
+ * images/newsticker/README: Add rss-feed.png, rss-feed.svg.
+
+2014-10-18 Michal Nazarewicz <mina86@mina86.com>
+
+ * NEWS: Mention new whitespace-mode option: big-indent.
+
+2014-10-15 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * NEWS: Mention multipart/related.
+
+2014-10-15 Eli Zaretskii <eliz@gnu.org>
+
+ * NEWS: Mention the UBA implementation update.
+
+ * HELLO: Remove now unneeded directional control characters.
+
+2014-10-13 Jan Djärv <jan.h.d@swipnet.se>
+
+ * NEWS: Move and clarify OSX >= 10.6.
+
+2014-10-12 Jan Djärv <jan.h.d@swipnet.se>
+
+ * NEWS: OSX required is 10.6 or newer.
+
+2014-10-09 Leo Liu <sdl.web@gmail.com>
+
+ * NEWS: Mention optional arg to terpri and new cl-lib functions.
+
+2014-10-05 Jan Djärv <jan.h.d@swipnet.se>
+
+ * NEWS: Mention ns-use-fullscreen-animation.
2014-09-30 Bill Wohler <wohler@newt.com>
* NEWS, MH-E-NEWS: Update for MH-E release 8.6.
-2014-09-29 Fabrice Niessen <fniessen@pirilampo.org>
+2014-09-30 Fabrice Niessen <fniessen@pirilampo.org>
* themes/leuven-theme.el: Updates.
-2014-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
* package-keyring.gpg: New file.
+2014-09-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ * TODO: Remove char/unsigned char, long long, IRIX unexelf.c.
+ The first two are done, and IRIX support has been dropped.
+
+2014-09-29 Eli Zaretskii <eliz@gnu.org>
+
+ * refcards/ru-refcard.tex: Bump version to 25.0.50.
+
+ * refcards/emacsver.tex: Bump version to 25.0.50.
+
+2014-09-14 Daniel Colascione <dancol@dancol.org>
+
+ * NEWS: Mention changes to `insert-register'
+
+2014-09-13 Christopher Schmidt <ch@ristopher.com>
+
+ * NEWS: Mention nil `calendar-mode-line-format' will not modify
+ the mode line of the calendar buffer. (Bug#18467)
+
+2014-09-06 Leo Liu <sdl.web@gmail.com>
+
+ * NEWS: Mention vector qpattern for pcase. (Bug#18327).
+
+2014-09-01 Eli Zaretskii <eliz@gnu.org>
+
+ * NEWS: Mention that ls-lisp uses string-collate-lessp.
+
+2014-09-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ --enable-silent-rules now suppresses more chatter.
+ * NEWS: Document this.
+
+2014-08-29 Leo Liu <sdl.web@gmail.com>
+
+ * NEWS: Mention (:append FUN) to minibuffer-with-setup-hook.
+
+2014-08-29 Eli Zaretskii <eliz@gnu.org>
+
+ * NEWS: Mention w32-collate-ignore-punctuation.
+
+2014-08-29 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * NEWS: Mention that `sort' can handle vectors.
+
2014-08-28 Glenn Morris <rgm@gnu.org>
* emacs.appdata.xml: New file; description from Emacs's homepage.
-2014-07-12 Eli Zaretskii <eliz@gnu.org>
+2014-08-25 Eli Zaretskii <eliz@gnu.org>
+
+ * NEWS: Mention that string-collate-* functions are supported on
+ MS-Windows as well.
- * PROBLEMS: Mention the problem from bug #17950.
+2014-08-08 Jan Nieuwenhuizen <janneke@gnu.org>
-2014-07-04 Eli Zaretskii <eliz@gnu.org>
+ * compilation.txt (file): Add Guile backtrace example.
- * TODO: Remove items that were already done. Rearrange a few
- items that are closely related. Update a couple of items with new
- information.
+2014-08-09 Reuben Thomas <rrt@sc3d.org>
- * NEWS: Mention 'network-interface-list' and 'network-interface-info'
- being available on MS-Windows.
+ * PROBLEMS: Remove msdos/is_exec.c and sigaction.c.
-2014-06-29 Glenn Morris <rgm@gnu.org>
+2014-07-21 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * TODO: remove frame height remark.
+
+2014-07-11 Michael Albinus <michael.albinus@gmx.de>
+
+ * NEWS: Passwords in batch mode are hidden.
+
+2014-07-03 Glenn Morris <rgm@gnu.org>
* refcards/calccard.tex (section{Getting Help}):
Meaning of "on-line" has changed.
-2014-06-27 Glenn Morris <rgm@gnu.org>
+2014-06-28 Glenn Morris <rgm@gnu.org>
* publicsuffix.txt: Update from source.
+2014-06-24 Eli Barzilay <eli@barzilay.org>
+
+ * NEWS: calculator.el user-visible changes.
+
+2014-06-15 Michael Albinus <michael.albinus@gmx.de>
+
+ * NEWS: New Tramp method "nc".
+
2014-06-08 Leo Liu <sdl.web@gmail.com>
* themes/deeper-blue-theme.el: Use another fix. (Bug#17695)
-2014-06-05 Juri Linkov <juri@jurta.org>
+2014-06-08 Juri Linkov <juri@jurta.org>
* themes/deeper-blue-theme.el (diff-added, diff-changed, diff-removed):
Set face definitions explicitly. Inherit indicator faces from them.
(Bug#17695)
-2014-05-24 Paul Eggert <eggert@cs.ucla.edu>
+2014-05-28 Reuben Thomas <rrt@sc3d.org>
+
+ * TODO: add a note that undo-tree could be used to save undo
+ information (Bug #17581).
+
+2014-05-27 Fabrice Popineau <fabrice.popineau@gmail.com>
+
+ * NEWS: Mention build changes on MS-Windows.
+
+2014-05-26 Paul Eggert <eggert@cs.ucla.edu>
Specify coding if Latin-1 Emacs would misinterpret (Bug#17575).
* ETAGS.EBNF, NEWS, ORG-NEWS: Add "coding: utf-8".
+2014-05-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ * NEWS: Assume C99 or later (Bug#17487).
+
+2014-05-16 Paul Eggert <eggert@cs.ucla.edu>
+
+ Don't require pkg-config when building from repository.
+ * NEWS: Prefer './configure FOO=BAR' to 'FOO=BAR ./configure'.
+ * PROBLEMS (Build-time-problems): Remove pkg-config problem
+ that is no longer an issue.
+
+2014-05-13 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * PROBLEMS: Mention potential problems with
+ --enable-link-time-optimization and clang on Fedora 20.
+
+2014-05-04 Leo Liu <sdl.web@gmail.com>
+
+ * NEWS: Mention support for Chinese dates in calendar and diary.
+
+2014-04-20 Daniel Colascione <dancol@dancol.org>
+
+ * NEWS: Mention new struct functions and changes to `cl-the'.
+
+2014-04-17 Daniel Colascione <dancol@dancol.org>
+
+ * NEWS: Mention bracketed paste support.
+
2014-04-11 Glenn Morris <rgm@gnu.org>
* refcards/cs-dired-ref.tex, refcards/cs-refcard.tex:
* refcards/sk-refcard.tex, refcards/sk-survival.tex:
Input "utf8off", which seems to be needed.
+2014-04-01 Michael Albinus <michael.albinus@gmx.de>
+
+ * NEWS: `url-handler-mode' passes operations to Tramp for some
+ protocols.
+
+2014-03-28 Tassilo Horn <tsdh@gnu.org>
+
+ * themes/tsdh-light-theme.el (tsdh-light): Add gnus-group-* faces.
+
+2014-03-22 Glenn Morris <rgm@gnu.org>
+
+ * CENSORSHIP, GNU, LINUX-GNU, THE-GNU-PROJECT, WHY-FREE: Replace
+ contents with pointers to www.gnu.org or emacs.info, mark obsolete.
+
2014-03-14 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
* tutorials/TUTORIAL.de: Adapt to recent changes in TUTORIAL.
* orgcard.tex (section{Motion}): Add the item navigation commands.
(section{Publishing}): New section.
- (section{Links}): Documented elisp and shell links.
+ (section{Links}): Document elisp and shell links.
2006-05-20 Rodrigo Real <rreal@ucpel.tche.br>
GNU Emacs NEWS -- history of user-visible changes.
-Copyright (C) 2010-2015 Free Software Foundation, Inc.
+Copyright (C) 2014-2015 Free Software Foundation, Inc.
See the end of the file for license conditions.
Please send Emacs bug reports to bug-gnu-emacs@gnu.org.
If possible, use M-x report-emacs-bug.
-This file is about changes in Emacs version 24.
+This file is about changes in Emacs version 25.
-See files NEWS.23, NEWS.22, NEWS.21, NEWS.20, NEWS.19, NEWS.18,
+See files NEWS.24, NEWS.23, NEWS.22, NEWS.21, NEWS.20, NEWS.19, NEWS.18,
and NEWS.1-17 for changes in older Emacs versions.
You can narrow news to a specific version by calling `view-emacs-news'
with a prefix argument or by typing C-u C-h C-n.
-\f
-* Changes in Emacs 24.5
-
-** This is mainly a bug-fix release, but there are some other changes.
-
-** The default value of `history-length' has increased to 100.
-
-** The variable `redisplay-dont-pause' is obsolete.
++Temporary note:
+++++ indicates that all necessary documentation updates are complete.
++ (This means all relevant manuals in doc/ AND lisp doc-strings.)
++--- means no change in the manuals is needed.
++When you add a new item, use the appropriate mark if you are sure it applies,
++otherwise leave it unmarked.
+
\f
-* Changes in Specialized Modes and Packages in Emacs 24.5
-
-** `call-process-shell-command' and `process-file-shell-command' no longer
-take "&rest args".
-
-** The option `browse-url-firefox-startup-arguments' no longer has an effect.
-
-** ERC
-
-*** New option `erc-rename-buffers'.
+* Installation Changes in Emacs 25.1
-*** New faces `erc-my-nick-prefix-face' and `erc-nick-prefix-face'.
++++
-
+** Building Emacs now requires C99 or later.
- ** The default value of `history-length' has increased to 100.
-
- ** The variable `redisplay-dont-pause' is obsolete.
-
-*** `erc-format-@nick' displays all user modes instead of only op and voice.
+** Building Emacs now requires GNU make, version 3.81 or later.
- ** `call-process-shell-command' and `process-file-shell-command' no longer
- take "&rest args".
-
- ** The option `browse-url-firefox-startup-arguments' no longer has an effect.
-
-*** The display of irc commands in the current buffer has been disabled.
+** By default, Emacs no longer works on IRIX. We expect that Emacs
+users are not affected by this, as SGI stopped supporting IRIX in
+December 2013. If you are affected, please send a bug report. You
+should be able to work around the problem either by porting the Emacs
+undumping code to GCC under IRIX, or by configuring --with-wide-int,
+or by sticking with Emacs 24.4.
- ** ERC
-
-*** `erc-version' now follows the Emacs version.
+** 'configure' now prefers gnustep-config when configuring GNUstep.
+If gnustep-config is not available, the old heuristics are used.
- +++
- *** New option `erc-rename-buffers'.
-
- *** New faces `erc-my-nick-prefix-face' and `erc-nick-prefix-face'.
-
- *** `erc-format-@nick' displays all user modes instead of only op and voice.
-
- *** The display of irc commands in the current buffer has been disabled.
-
- *** `erc-version' now follows the Emacs version.
-
--** Obsolete packages
--
--*** cc-compat.el
-
+---
+** The configure option `--with-pkg-config-prog' has been removed.
+Use './configure PKG_CONFIG=/full/name/of/pkg-config' if you need to.
--*** crisp.el (moved to elpa.gnu.org)
-
+** The configure option '--enable-silent-rules' is now the default,
+and silent rules are now quieter. To get the old behavior where
+'make' chatters a lot, configure with '--disable-silent-rules' or
+build with 'make V=1'.
--*** tpu-edt.el, ws-mode.el
--These emulations of old editors are believed to be no longer relevant
-- - contact emacs-devel@gnu.org if you disagree.
-
+---
+** The configure option '--with-gameuser' now allows to specify a
+group instead of a user if its argument is prefixed by ':' (a colon).
+This will cause the game score files in ${localstatedir}/games/emacs
+to be owned by that group, and the helper program for updating them to
+be installed setgid. The option now defaults to the 'games' group.
-*** vi.el, vip.el (try M-x viper instead)
+---
+** The `grep-changelog' script (and its manual page) are no longer included.
+It has no particular connection to Emacs and has not changed in years,
+so if you want to use it, you can always take a copy from an older Emacs.
- *** vi.el, vip.el (try M-x viper instead)
-
\f
-* Installation Changes in Emacs 24.4
-
-** Emacs can now be compiled with ACL (access control list) support.
-This happens by default if a suitable support library is found at
-build time, like libacl on GNU/Linux. To prevent this, use the
-configure option `--disable-acl'. See below for the features this provides.
-
-** Emacs can now be compiled with file notification support.
-This happens by default if a suitable system library is found at
-build time. To prevent this, use the configure option
-`--without-file-notification'. See below for file-notify features.
-This feature is not available for the Nextstep port.
-
-** Emacs can now be compiled with zlib support.
-This happens by default if zlib is present, which it normally is.
-To prevent this, use the configure option `--without-zlib'.
-This provides the function `zlib-decompress-region'; see below for details.
-
-** The configure option `--without-compress-info' has been generalized,
-and renamed to `--without-compress-install'. It now prevents compression
-of _any_ files during installation.
-
-** The configure option `--with-crt-dir' has been removed.
-It is no longer needed, as the crt*.o files are no longer linked specially.
-
-** Directories passed to configure option `--enable-locallisppath' are
-no longer created during installation.
-
-** Emacs for Nextstep (Mac OS X, GNUstep) can be built with ImageMagick support.
-This requires pkg-config to be available at build time.
+* Startup Changes in Emacs 25.1
\f
-* Startup Changes in Emacs 24.4
-
-** When initializing `load-path', an empty element in the EMACSLOADPATH
-environment variable (either leading, e.g., ":/foo"; trailing, e.g.,
-"/foo:"; or embedded, e.g., "/foo::/bar") is replaced with the default
-load-path (the one that would have been used if EMACSLOADPATH was unset).
-This makes it easier to _extend_ the load-path via EMACSLOADPATH
-(previously, EMACSLOADPATH had to specify the complete load-path,
-including the defaults). (In older versions of Emacs, an empty element
-was replaced by ".", so use an explicit "." now if that is what you want.)
-
-** The -L option, which normally prepends its argument to load-path,
-will instead append, if the argument begins with `:' (or `;' on MS Windows;
-i.e., `path-separator').
-
-** If you use either site-load.el or site-init.el to customize the dumped
-Emacs executable, any changes to `load-path' that these files make
-will no longer be present after dumping. To affect a permanent change
-to `load-path', use the `--enable-locallisppath' option of `configure'.
-
-** The user option `initial-buffer-choice' can now specify a function
-to set up the initial buffer.
+* Changes in Emacs 25.1
+
+** New command `comment-line' bound to `C-x C-;'.
+
+** New function `custom-prompt-customize-unsaved-options' checks for
+unsaved customizations and prompts user to customize (if found).
+
++++
+** Network security (TLS/SSL certificate validity and the like) is
+added via the new Network Security Manager (NSM) and controlled via
+the `network-security-level' variable.
+
+** C-h l now also lists the commands that were run.
+
+---
+** The new M-s M-w key binding uses eww to search the web for the
+text in the region.
+
+** M-x suggests shorthands and ignores obsolete commands for completion.
+** x-select-enable-clipboard is renamed select-enable-clipboard.
+x-select-enable-primary and renamed select-enable-primary.
+Additionally they both now apply to all systems (OSX, GNUstep, Windows, you
+name it), with the proviso that on some systems (e.g. Windows)
+select-enable-primary is ineffective since the system doesn't
+have the equivalent of a primary selection.
+
++++
+** terpri gets an optional arg ENSURE to conditionally output a newline.
+
++++
+** New macro `define-advice'.
+
+** `insert-register' now leaves point after the inserted text
+when called interactively. A prefix argument toggles this behavior.
+
+** New var `truncate-string-ellipsis' to choose how to indicate truncation.
+
++++
+** The new variable `term-file-aliases' replaces some files from lisp/term.
+The function `tty-run-terminal-initialization' consults this variable
+when deciding what terminal-specific initialization code to run.
+
+---
+** New variable `system-configuration-features', listing some of the
+main features that Emacs was compiled with. This is mainly intended
+for use in Emacs bug reports.
+
++++
+** A password is now hidden also when typed in batch mode. Another
+hiding character but the default `.' can be used by let-binding the
+variable `read-hide-char'.
+
+** The new functions `string-collate-lessp' and `string-collate-equalp'
+preserve the collation order as defined by the system's locale(1)
+environment. For the time being this is implemented for modern POSIX
+systems and for MS-Windows, for other systems they fall back to their
+counterparts `string-lessp' and `string-equal'.
+
+*** The ls-lisp package uses `string-collate-lessp' to sort file names.
+If you want the old, locale-independent sorting, customize the new
+option `ls-lisp-use-string-collate' to a nil value.
+
+*** The MS-Windows specific variable `w32-collate-ignore-punctuation',
+if set to a non-nil value, causes the above 2 functions to ignore
+symbol and punctuation characters when collating strings. This
+emulates the behavior of modern Posix platforms when the locale's
+codeset is "UTF-8" (as in "en_US.UTF-8"). This is needed because
+MS-Windows doesn't support UTF-8 as codeset in its locales.
+
++++
+** The new function `bidi-find-overridden-directionality' allows to
+find characters whose directionality was, perhaps maliciously,
+overridden by directional override control characters. Lisp programs
+can use this to detect potential phishing of URLs and other links that
+exploits bidirectional display reordering.
+
++++
+** The new function `buffer-substring-with-bidi-context' allows to
+copy a portion of a buffer into a different location while preserving
+the visual appearance both of the copied text and the text at
+destination, even when the copied text includes mixed bidirectional
+text and directional control characters.
+
+** New variable `ns-use-fullscreen-animation' controls animation for
+non-native NS fullscreen. The default is nil. Set to t to enable
+animation when entering and leaving fullscreen. For native OSX fullscreen
+this has no effect.
+
+** A new text property `inhibit-read-only' can be used in read-only
+buffers to allow certain parts of the text to be writable.
+
+** A new function `directory-files-recursively' returns all matching
+files (recursively) under a directory.
+
+** The new `directory-name-p' can be used to check whether a file
+name (as returned from, for instance, `file-name-all-completions' is
+a directory file name. It returns non-nil if the last character in
+the name is a forward slash.
+
++++
+** New variable `fast-but-imprecise-scrolling' inhibits
+fontification during full screen scrolling operations, giving less
+hesitant operation during auto-repeat of C-v, M-v at the cost of
+possible inaccuracies in the end position.
+
+** The function `font-info' now returns more details about a font.
+In particular, it now returns the average width of the font's
+characters, which can be used for geometry-related calculations.
\f
-* Changes in Emacs 24.4
-
-** Support for ACLs (access control lists).
-This requires a suitable support library to be found at build time.
-On GNU/Linux, the POSIX ACL interface is used via libacl.
-On MS-Windows, the NT Security APIs are used to emulate the POSIX interface.
-ACLs are extended file attributes, used e.g. for finer-grained permissions.
-
-*** Emacs preserves the ACL entries of files when backing up.
-
-*** New functions `file-acl' and `set-file-acl' get and set file ACLs.
-
-** Support for menus on text-mode terminals.
-If the terminal supports a mouse, clicking on the menu bar, or on
-sensitive portions of the mode line or header line, will drop down the
-menu defined at that position. Likewise, clicking C-mouse-1, C-mouse-2, or
-C-mouse-3 on the text area will pop up the menus defined for those locations.
-
-If the text terminal does not support a mouse, you can activate the
-first menu-bar menu by typing F10, which invokes `menu-bar-open'.
-
-If you want the previous behavior, where F10 invoked `tmm-menubar',
-customize the option `tty-menu-open-use-tmm' to a non-nil value.
-(Typing M-` always invokes `tmm-menubar', even if `tty-menu-open-use-tmm'
-is nil.)
-
-** New option `load-prefer-newer' affects how the `load' function chooses
-the file to load. If this is non-nil, then when both .el and .elc
-versions of a file exist, and the caller did not explicitly specify
-which one to load, then the newer file is loaded. The default, nil,
-means to always load the .elc file.
-
-** Multi-monitor support
-
-*** New functions `display-monitor-attributes-list' and
-`frame-monitor-attributes' can be used to obtain information about
-each physical monitor on multi-monitor setups.
-
-*** The functions `display-pixel-width' and `display-pixel-height' now
-behave consistently among the platforms: they return the pixel width
-or height for all physical monitors associated with the given display
-as if they were on X. To get information for each physical
-monitor, use the new functions above. Similar notes also apply to
-`x-display-pixel-width', `x-display-pixel-height', `display-mm-width',
-`display-mm-height', `x-display-mm-width', and `x-display-mm-height'.
-
-** New function `zlib-decompress-region', which decompresses gzip- and
-zlib-format compressed data using built-in zlib support (if available).
-
-** The *Messages* buffer is created in `messages-buffer-mode',
-a new major mode, with read-only status. Any code that might create
-the *Messages* buffer should call the function `messages-buffer' to do
-so and set up the mode.
-
-** The cursor stops blinking after 10 blinks (by default) on X and Nextstep.
-You can change the default by customizing `blink-cursor-blinks'.
-
-** In keymaps where SPC scrolls forward, S-SPC now scrolls backward.
-This affects View mode, etc.
-
-** The default value of `make-backup-file-name-function' is no longer nil.
-Instead it defaults to a function that does what the nil value used to.
-
-** Help
-
-*** The command `apropos-variable' is renamed to `apropos-user-option'.
-`apropos-user-option' shows all user options, while `apropos-variable'
-shows all variables. When called with a universal prefix argument,
-the two commands swap their behaviors. When `apropos-do-all' is
-non-nil, they output the same results.
-
-*** The key `?' now describes prefix bindings, like `C-h'.
-
-*** The command `describe-function' has been extended for EIEIO.
-Running it on constructors will show a full description of the
-generated class. For generic functions, it will show all
-implementations together with links to the source. The old commands
-`describe-class', `describe-constructor' and `describe-generic' were
-removed.
-
-*** The function `quail-help' is no longer an interactive command.
-Use `C-h C-\' (`describe-input-method') instead.
-
-** Frame and window handling
-
-*** New commands `toggle-frame-fullscreen' and `toggle-frame-maximized',
-bound to <f11> and M-<f10>, respectively.
-
-*** New hooks `focus-in-hook', `focus-out-hook'.
-These are normal hooks run when an Emacs frame gains or loses input focus.
-
-*** The function `window-in-direction' now takes additional arguments
-for specifying a reference point, wrapping the selection around frame
-borders, and specifying ways to select the minibuffer window.
-
-*** Emacs can now change frame sizes in units of pixels, rather than
-text rows or columns. When maximizing a frame or making it fullscreen,
-remaining extra pixels are no longer given to the minibuffer, the rightmost
-fringe, or other unusable space, but are distributed among the text
-areas of the frame's windows. If the new option `frame-resize-pixelwise'
-is non-nil, all frame size changes happen pixelwise and set the
-corresponding size hints for the window manager.
-
-*** Emacs can now change window sizes in units of pixels.
-Mouse-dragging a mode line or window divider now changes the size of
-adjacent windows pixelwise. If the new option `window-resize-pixelwise'
-is non-nil, functions like `balance-windows-area' and `fit-window-to-buffer'
-resize windows pixelwise. Most functions for changing or accessing
-window sizes now have an additional argument that allows changes to apply,
-or values to be returned, in pixels instead of lines/columns.
-
-*** The functions `window-body-height' and `window-body-width' now never
-count partially visible lines or columns if called with a nil PIXELWISE
-argument.
-
-*** Emacs can now draw dividers between adjacent windows. To put
-dividers between side-by-side/vertically stacked windows customize the
-frame parameters `right-divider-width' and `bottom-divider-width' to
-some positive integer. You can drag dividers with the mouse (they show
-a corresponding cursor when the mouse hovers over them). You can change
-the appearance of dividers by customizing the faces `window-divider',
-`window-divider-first-pixel', and `window-divider-last-pixel'. The last
-two are useful to provide a 3D effect, or to better distinguish dividers
-from surrounding display objects.
-
-*** New functions to return the pixel sizes of window components, namely
-`window-scroll-bar-width', `window-mode-line-height',
-`window-header-line-height', `window-right-divider-width', and
-`window-bottom-divider-width'.
-
-*** The new function `window-text-pixel-size' returns the size of the
-text of a window's buffer in pixels. This allows functions like
-`fit-frame-to-buffer' and `fit-window-to-buffer' to accurately fit a
-window to its buffer as it will be displayed.
-
-*** `fit-window-to-buffer' can now resize windows in both dimensions.
-This behavior is controlled by the new option
-`fit-window-to-buffer-horizontally'. The new option
-`fit-frame-to-buffer' allows you to fit the window's frame to its buffer.
-
-*** `fit-frame-to-buffer' now fits frames in both dimensions. The new
-options `fit-frame-to-buffer-margins' and `fit-frame-to-buffer-sizes'
-control the size of the frame and its position on screen.
-
-*** Temp Buffer Resize Mode can now adjust the height and width of
-windows and frames. The new option `temp-buffer-max-width' allows you to
-control the width of temporary buffer windows. Moreover, if the new
-option `fit-frame-to-buffer' is non-nil and the buffer appears in the
-root window of a frame, Temp Buffer Resize Mode will try to adjust the
-width and/or height of the frame.
+* Editing Changes in Emacs 25.1
-*** `split-window' is now a non-interactive function, not a command.
-As a command, it was a special case of `C-x 2' (`split-window-below'),
-and as such superfluous. After being reimplemented in Lisp, its
-interactive form was mistakenly retained.
+** Unicode names entered via C-x 8 RET now use substring completion by default.
-*** The functions `window-size' and `window-total-size' now have an
-optional argument to return a rounded size value.
+** New minor mode global-eldoc-mode is enabled by default.
-*** `window-state-put' now allows you to put a window state into internal
-windows too.
+** Emacs now supports "bracketed paste mode" when running on a terminal
+that supports it. This facility allows Emacs to understand pasted
+chunks of text as strings to be inserted, instead of interpreting each
+character in the pasted text as actual user input. This results in a
+paste experience similar to that under a window system, and significant
+performance improvements when pasting large amounts of text.
-*** New option `scroll-bar-adjust-thumb-portion'.
-Available only on X, this option allows you to control over-scrolling
-using the scroll bar (i.e., dragging the thumb down even when the end
-of the buffer is visible).
-
-*** New display actions functions for `display-buffer':
-
-**** `display-buffer-at-bottom' chooses or creates a window at the
-bottom of the selected frame.
-
-**** `display-buffer-no-window' to not display the buffer in a window.
-
-*** New display action alist entry `allow-no-window' to indicate the
-caller of `display-buffer' is ready to handle the case of not displaying
-the buffer in a window.
+** Emacs now supports the latest version of the UBA.
+The Emacs implementation of the Unicode Bidirectional Algorithm (UBA)
+was updated to support all the latest additions and changes introduced
+in Unicode Standard versions 6.3 and 7.0, and a few changes suggested
+for Unicode 8.0. This includes full support for directional isolates
+and the Bidirectional Parentheses Algorithm (BPA) specified by these
+Unicode standards.
-*** `display-buffer-in-previous-window' is now a member of
-`display-buffer-fallback-action'.
-
-** Lisp evaluation
-
-*** `eval-defun' on an already defined defcustom calls the :set function,
-if there is one.
-
-*** The commands `eval-expression' (`M-:'), `eval-last-sexp' (`C-x C-e'),
-and `eval-print-last-sexp' (`C-j' in Lisp Interaction mode) can take a
-zero prefix argument. This disables truncation of lists in the output,
-equivalent to setting `(eval-expression-)print-length' and
-`(eval-expression-)print-level' to nil. Additionally, it causes integers
-to be printed in other formats (octal, hexadecimal, and character).
-
-*** New hook `eval-expression-minibuffer-setup-hook' run by
-`eval-expression' on entering the minibuffer.
-
-** `cache-long-line-scans' is now non-nil, and renamed to `cache-long-scans',
-because it affects caching of paragraph scanning results as well.
-There is no reason to set this to nil except for debugging purposes.
-
-** `emacs-bzr-version' has been renamed to `emacs-repository-version',
-and works for git too, if you fetch the repository notes.
-
-** The default value of `comment-use-global-state' is now t,
-and this variable has been marked obsolete.
-
-** `write-region-inhibit-fsync' now defaults to t in batch mode.
-
-** The option `set-mark-default-inactive' has been deleted.
-This unfinished feature was introduced by accident in Emacs 23.1;
-simply disabling Transient Mark mode does the same thing.
+** You can access `mouse-buffer-menu' (C-down-mouse-1) using C-f10.
\f
-* Editing Changes in Emacs 24.4
-
-** Indentation
-
-*** `electric-indent-mode' is now enabled by default.
-Typing RET reindents the current line and indents the new line.
-`C-j' inserts a newline but does not indent. In some programming modes,
-additional characters are electric (eg `{').
-
-*** New buffer-local `electric-indent-local-mode'.
-
-*** The behavior of `C-x TAB' (`indent-rigidly') has changed.
-When invoked without a prefix argument, it now activates a transient
-mode in which typing <left>, <right>, <S-left>, and <S-right> adjusts
-the text indentation in the region. Typing any other key resumes
-normal editing behavior.
+* Changes in Specialized Modes and Packages in Emacs 25.1
+** package.el
+*** `package-install-from-buffer' and `package-install-file' work on directories.
+This follows the same rules as installing from a .tar file, except the
+-pkg file is optional.
-*** `tab-stop-list' is now implicitly extended to infinity by repeating
-the last step. Its default value is changed to nil, which means a tab
-stop every `tab-width' columns.
+*** Packages which are dependencies of other packages cannot be deleted.
+The FORCE argument to `package-delete' overrides this.
-** Uniquify is enabled by default, with `post-forward-angle-brackets' style.
-In other words, if you visit two files that have the same base name,
-then rather than creating buffers basename and basename<2>,
-Emacs uses basename<dirA> and basename<dirB>. To change this,
-customize `uniquify-buffer-name-style'. Set it to nil for the old behavior.
+*** New custom variable `package-selected-packages' tracks packages
+which were installed by the user (as opposed to installed as
+dependencies). This variable can also be manually customized.
-** New command `C-x SPC' (`rectangle-mark-mode') makes a rectangular region.
-Most commands are still unaware of it, but kill/yank do work on the rectangle.
+*** New command `package-install-user-selected-packages' installs all
+packages from `package-selected-packages' which are currently missing.
-** New option `visual-order-cursor-movement'.
-If this is non-nil, cursor motion with arrow keys will follow the
-visual order of characters on the screen: <left> always moves to the
-left, <right> always moves to the right, disregarding the surrounding
-bidirectional context.
+*** New command `package-autoremove' removes all packages which were
+installed strictly as dependencies but are no longer needed.
-** New command `delete-duplicate-lines'.
-This searches the region for identical lines, and removes all but one
-copy of each repeated line. The lines need not be sorted.
+** Shell
-** New command `cycle-spacing' acts like a smarter `just-one-space'.
-When called in succession, it cycles between spacing conventions:
-one space, no spaces, original spacing.
+When you invoke `shell' interactively, the *shell* buffer will now
+display in a new window. However, you can customize this behavior via
+the `display-buffer-alist' variable. For example, to get
+the old behavior -- *shell* buffer displays in current window -- use
+(add-to-list 'display-buffer-alist
+ '("^\\*shell\\*$" . (display-buffer-same-window))).
-** `blink-matching-paren' now only highlights the matching open-paren
-by default, instead of moving the cursor. Set this variable to `jump' to
-restore the old behavior.
-** The new function `fill-single-char-nobreak-p' can stop fill from breaking
-a line after a one-letter word, which is an error in some typographical
-conventions. To use it, add it to the `fill-nobreak-predicate' hook.
-
-** Registers
-
-*** All interactive commands that read a register (`copy-to-register', etc.)
-now display a temporary window after `register-preview-delay' seconds
-that summarizes existing registers. To disable this, set that option to nil.
-Interactive commands that read registers and want to make use of this
-should use `register-read-with-preview' to read register names.
-
-*** New command `frameset-to-register' bound to `C-x r f', replacing
-`frame-configuration-to-register'. It offers similar functionality,
-plus enhancements like the ability to restore deleted frames.
-(`frame-configuration-to-register' still exists, but no longer has a
-key binding.)
-
-*** New command `C-x C-k x' (`kmacro-to-register') stores keyboard
-macros in registers.
-
-\f
-* Changes in Specialized Modes and Packages in Emacs 24.4
-
-** Backtrace and debugger
-
-*** New Lisp debugger command `v' (`debugger-toggle-locals') toggles the
-display of local variables of the current stack frame.
+** EIEIO
+*** The `:protection' slot option is not obeyed any more.
+*** The `newname' argument to constructors is optional&deprecated.
+If you need your objects to be named, do it by inheriting from `eieio-named'.
+*** The <class>-list-p and <class>-child-p functions are declared obsolete.
+*** The <class> variables are declared obsolete.
+*** The <initarg> variables are declared obsolete.
+*** defgeneric and defmethod are declared obsolete.
+*** `constructor' is now an obsolete alias for `make-instance'.
+
+** ido
+*** New command `ido-bury-buffer-at-head' bound to C-S-b
+Bury the buffer at the head of `ido-matches', analogous to how C-k
+kills the buffer at head.
-*** The Lisp debugger's `e' command (`debugger-eval-expression') now includes
-the lexical environment when evaluating the code in the context at point
-(and so allows you to access lexical variables).
+** Minibuffer
-*** New minor mode `jit-lock-debug-mode' helps you debug code run via JIT Lock.
+*** You can use <up> and <down> keys to move point in the multi-line
+minibuffer just as in an ordinary buffer. Only when point moves over
+the bottom/top of the minibuffer it goes to the next/previous history
+element. The new commands bound to <up> and <down> in the minibuffer:
+`next-line-or-history-element' and `previous-line-or-history-element'.
-** Battery information can now be retrieved from BSD's `apm' utility.
+** Search and Replace
-** In the Buffer Menu, `M-s a C-o' shows matches for a regexp in marked buffers.
+*** Query-replace history is enhanced.
+When query-replace reads the FROM string from the minibuffer, typing
+`M-p' will now show previous replacements as "FROM SEP TO", where FROM
+and TO are the original text and its replacement, and SEP is an arrow
+string defined by the new variable `query-replace-from-to-separator'.
+To select a prior replacement, type `M-p' until the desired
+replacement appears in the minibuffer, and then exit the minibuffer by
+typing RET.
** Calc
++++
+*** If `quick-calc' is called with a prefix argument, insert the
+result of the calculation into the current buffer.
-*** Calc by default now uses the Gregorian calendar for all dates, and
-uses January 1, 1 AD as its day number 1. Previously Calc used the
-Julian calendar for dates before September 14, 1752, and it used
-December 31, 1 BC as its day number 1; the new scheme is more
-consistent with Calendar's calendrical system and day numbering.
-
-*** The new option `calc-gregorian-switch' lets you configure if
-(and when) Calc switches from the Julian to the Gregorian calendar.
+** ElDoc
+*** New minor mode `global-eldoc-mode'
+*** `eldoc-documentation-function' now defaults to `ignore'
+*** `describe-char-eldoc' displays information about character at point,
+and can be used as a default value of `eldoc-documentation-function'. It is
+useful when, for example, one needs to distinguish various spaces (e.g. ] [,
+] [, ] [, etc.) while using mono-spaced font.
-*** Support for ISO 8601 dates.
+** eww
-** Calendar and Diary
+---
+*** HTML can now be rendered using variable-width fonts.
-*** New faces `calendar-weekday-header', `calendar-weekend-header',
-and `calendar-month-header'.
++++
+*** A new command `F' (`eww-toggle-fonts') can be used to toggle
+whether to use variable-pitch fonts or not. The user can also
+customize the `shr-use-fonts' variable.
-*** New option `calendar-day-header-array'.
++++
+*** A new command `R' (`eww-readable') will try do identify the main
+textual parts of a web page and display only that, leaving menus and
+the like off the page.
-*** New variable `diary-from-outlook-function', used by the command
-`diary-from-outlook'.
+---
+*** You can now use several eww buffers in parallel by renaming eww
+buffers you want to keep separate.
-*** The variable `calendar-font-lock-keywords' is obsolete.
++++
+*** Partial state of the eww buffers (the URIs and the titles of the
+pages visited) is now preserved in the desktop file.
-** CEDET
++++
+*** `eww-after-render-hook' is now called after eww has rendered
+the data in the buffer.
-*** EDE
+---
+*** The `eww-reload' command now takes a prefix to not reload via
+the net, but just use the local copy of the HTML.
-**** The cpp-root project now supports executing a compile command.
-It can be set through the new :compile-command slot or the
-buffer-local variable `compile-command'.
++++
+*** The DOM shr and eww uses has been changed to the general Emacs
+xml.el/libxml2 DOM, and a new package dom.el has been added to
+interact with this DOM. See the Emacs Lisp manual for interface
+details.
-**** Better selection of include directories for the 'linux' project.
-Include directories now support out-of-tree build directories and
-target architecture auto-detection.
++++
+*** `mailcap-mime-data' is now consulted when displaying PDF files.
-*** Semantic
++++
+*** The new `S' command will list all eww buffers, and allow managing
+them.
-**** Improved detection of used namespaces in current scope in C++.
+---
+*** https pages with valid certificates have headers marked in green, while
+invalid certificates are marked in red.
-**** Parsing of default values for variables and function arguments in C/C++.
-They are also displayed by the summarize feature in the mode line.
+** Message mode
-**** Improved parsing of function pointers in C/C++.
-This also includes parsing of function pointers as function arguments.
+*** text/html messages that contain inline image parts will be
+transformed into multipart/related messages before sending.
-**** Parsing of C/C++ preprocessor macros that open new scope.
-For example, this enables parsing of macros that open new namespaces.
+** pcase
+*** New UPatterns `quote' and `app'.
+*** New UPatterns can be defined with `pcase-defmacro'.
++++
+*** New vector QPattern.
-**** Support for 'this' pointer in inline member functions in C++.
+** Lisp mode
+*** Strings after `:documentation' are highlighted as docstrings.
-** CFEngine mode
+** Rectangle editing
+*** Rectangle Mark mode can have corners past EOL or in the middle of a TAB.
+*** C-x C-x in rectangle-mark-mode now cycles through the four corners.
+*** `string-rectangle' provides on-the-fly preview of the result.
-*** Support for completion, ElDoc, and Flycheck has been added.
+** New font-lock functions font-lock-ensure and font-lock-flush, which
+should be used instead of font-lock-fontify-buffer when called from Elisp.
-*** The current CFEngine syntax is parsed from "cf-promises -s json".
-There is a fallback syntax available if you don't have cf-promises or
-if your version doesn't support that option. See option `cfengine-cf-promises'.
+** Macro `minibuffer-with-setup-hook' takes (:append FUN) to mean
+appending FUN to `minibuffer-setup-hook'.
** cl-lib
+*** New functions cl-fresh-line, cl-digit-char-p and cl-parse-integer.
-*** New macro `cl-tagbody'.
-This executes statements while allowing for control transfer to labels.
-
-*** letf is now just an alias for cl-letf.
-
-** CUA mode
-
-*** CUA mode now uses `delete-selection-mode' and `shift-select-mode'.
-Hence, you can now enable it independently from those modes, and from
-`transient-mark-mode'.
-
-*** `cua-highlight-region-shift-only' is now obsolete.
-You can disable `transient-mark-mode' to get the same result.
-
-*** CUA's rectangles can now be used without CUA by calling the command
-`cua-rectangle-mark-mode'.
-
-** Delete Selection mode can now be used without Transient Mark mode.
-
-** Desktop
-
-*** `desktop-save-mode' by default now auto-saves an existing desktop file
-after `desktop-auto-save-timeout'. To disable this, customize that option
-to nil (or zero).
-
-*** Desktop now saves and restores the frame/window configuration.
-To disable this, set `desktop-restore-frames' to nil.
-See also related options `desktop-restore-reuses-frames',
-`desktop-restore-in-current-display', and `desktop-restore-forces-onscreen'.
-
-** New Dired minor mode `dired-hide-details-mode' toggles whether details,
-such as file ownership or permissions, are visible in Dired buffers.
-See the new options `dired-hide-details-hide-symlink-targets' and
-`dired-hide-details-hide-information-lines' for customizing what to hide.
-
-** You can enable ElDoc inside the `eval-expression' minibuffer with:
- (add-hook 'eval-expression-minibuffer-setup-hook 'eldoc-mode)
-The results display in the mode line.
-
-** Electric Pair mode
-
-*** New option `electric-pair-preserve-balance', enabled by default.
-If non-nil, pairing/skipping only kicks in when that help the balance
-of parentheses and quotes; i.e., the buffer should end up at least as
-balanced as before.
-
-You can further control this behavior by adjusting the predicates
-stored in `electric-pair-inhibit-predicate' and `electric-pair-skip-self'.
-
-*** New option `electric-pair-delete-adjacent-pairs', enabled by default.
-In `electric-pair-mode', the commands `backward-delete-char' and
-`backward-delete-char-untabify' are now bound to electric variants
-that delete the closer when invoked between adjacent pairs.
-
-*** New option `electric-pair-open-newline-between-pairs', enabled by default.
-In `electric-pair-mode', inserting a newline between adjacent pairs
-opens an extra newline after point, which is indented if
-`electric-indent-mode' is also set.
-
-*** New option `electric-pair-skip-whitespace', enabled by default.
-This controls if skipping over closing delimiters should jump over any
-whitespace slack. Setting it to `chomp' makes it delete this
-whitespace. See also the variable `electric-pair-skip-whitespace-chars'.
-
-*** New variables control the pairing in strings and comments.
-You can customize `electric-pair-text-pairs' and
-`electric-pair-text-syntax-table' to tweak pairing behavior inside
-strings and comments.
-
-** New EPA option `epa-mail-aliases'.
-You can set this to a list of email address aliases that `epa-mail-encrypt'
-should use to find keys.
-
-** New ERC option `erc-accidental-paste-threshold-seconds'.
-If set to a number, this can be used to avoid accidentally pasting large
-amounts of data into the ERC input.
-
-** New ERT macro `skip-unless' allows skipping ERT tests.
-
-** Eshell
-
-*** `eshell' now supports visual subcommands and options.
-Eshell has been able to handle "visual" commands (interactive,
-non-line oriented commands such as top that require display
-capabilities not provided by eshell) by running them in an Emacs
-terminal emulator. See `eshell-visual-commands'.
-
-This feature has been extended to subcommands and options that make a
-usually line-oriented command a visual command. Typical examples are
-"git log" and "git <command> --help", which display their output in a
-pager by default. See `eshell-visual-subcommands' and `eshell-visual-options'.
-
-*** New Eshell-Tramp module.
-External su and sudo commands are now the default; the internal,
-Tramp-using variants can still be used by enabling the eshell-tramp module.
-
-** New F90 mode option `f90-smart-end-names'.
-
-** New option `gnutls-verify-error', if non-nil, means that Emacs
-should reject SSL/TLS certificates that GnuTLS determines as invalid.
-(This option defaults to nil at present, but this is expected to change
-in a future release.)
-
-** Hi-Lock
-
-*** New global command `M-s h .' (`highlight-symbol-at-point') highlights
-the symbol near point.
-
-*** New option `hi-lock-auto-select-face'. When non-nil, hi-lock commands
-will cycle through faces in `hi-lock-face-defaults' without prompting.
-
-** Icomplete is now more similar to Ido.
-
-*** Icomplete by default now applies to all forms of minibuffer completion.
-The variable `icomplete-with-completion-tables' (now a user option)
-controls this. To restore the old behavior, set it back to
-'(internal-complete-buffer).
-
-*** You can navigate through and select completions using the keys
-from `icomplete-minibuffer-map'.
-
-*** The string that separates potential completions is now a customizable
-option (`icomplete-separator'). The default is " | " rather than ",".
-
-*** New face `icomplete-first-match'; and new options
-`icomplete-hide-common-prefix' and `icomplete-show-matches-on-no-input'.
-
-*** The option `icomplete-show-key-bindings' has been removed.
-
-** Ido
-
-*** An Ido user manual is now included.
-
-*** The option `ido-use-virtual-buffers' can now take the value `auto'.
-This means to use virtual buffers if the current ido input does not match
-an existing buffer.
-
-*** The variable `ido-decorations' can optionally have two new elements,
-which are the brackets to use around the sole remaining completion.
-
-** Image mode
-
-*** New commands `n' (`image-next-file') and `p' (`image-previous-file')
-visit the next image file and the previous image file in the same
-directory, respectively.
-
-*** New commands to show specific frames of multi-frame images.
-`f' (`image-next-frame') and `b' (`image-previous-frame') visit the
-next or previous frame. `F' (`image-goto-frame') shows a specific frame.
-
-*** New commands to speed up, slow down, or reverse animation.
-`a +' (`image-increase-speed') and `a -' (`image-decrease-speed') to
-speed up and slow down the animation. `a r' (`image-reverse-speed')
-to reverse it and `a 0' (`image-reset-speed') to reset it.
-
-*** The command `image-mode-fit-frame' deletes other windows.
-When toggling, it restores the frame's previous window configuration.
-It also has an optional frame argument, which can be used by Lisp
-callers to fit the image to a frame other than the selected frame.
-
-** New Imenu option `imenu-generic-skip-comments-and-strings'.
-
-** Info
-
-*** New Info face `info-index-match', used to highlight matches in index
-entries displayed by `Info-index-next', `Info-virtual-index' and
-`info-apropos'.
-
-*** The Info-edit command is obsolete. Editing Info nodes by hand
-has not been relevant for some time.
-
-** JS Mode
-
-*** New option `js-switch-indent-offset'.
-
-*** Better indentation of multiple-variable declarations.
-If a declaration spans several lines, variables on the following lines
-are lined up to the first one.
-
-*** Recognition and better indentation of continuations in array comprehensions.
-
-** MH-E has been updated to version 8.6 - see separate MH-E-NEWS file.
-
-** Octave mode
-
-*** Font locking for Texinfo comments and new keywords.
-
-*** Completion in Octave file buffers.
-
-*** ElDoc support.
-
-*** Jump to definition.
-
-*** Documentation lookup/search.
-
-** OPascal mode is the new name for Delphi mode
-
-*** All delphi-* variables and functions have been renamed to opascal-*.
-Obsolete aliases exist for those likely to have been used externally.
-
-*** The option `delphi-newline-always-indents' has been removed.
-Use `electric-indent-mode' instead.
-
-*** The TAB key runs the standard `indent-for-tab-command', not `delphi-tab'.
-
-** Package
-
-*** The package library now supports digital signing of packages.
-Maintainers of package archives should consider signing their packages
-to enhance security.
-
-**** If the user option `package-check-signature' is non-nil,
-Emacs tries to check package signatures at install time.
-The value `allow-unsigned' allows installation of unsigned packages.
-
-**** The user option `package-unsigned-archives' lists archives where
-Emacs will not try to check signatures.
-
-*** New option `package-pinned-packages'. This is useful if you have multiple
-archives enabled, with more than one offering a given package that you want.
-
-*** In the `list-packages' buffer, you can use `f' (`package-menu-filter')
-to filter the list of packages by a keyword.
-
-*** In the `describe-package' buffer, there are now buttons listing the
-keywords related to the package. Click on a button to see other packages
-related to that keyword.
-
-*** The format of `archive-contents' files, generated by package
-repositories, has changed to allow a new (fifth) element in the data
-vectors, containing an associative list with extra properties.
-(For example, `describe-package' uses the `:url' extra property to
-display a "Homepage" header.)
-
-** In Prolog mode, `prolog-use-smie' has been removed,
-along with the non-SMIE indentation code.
-
-** Python mode
-
-*** Out of the box support for CPython, iPython and readline based shells.
-**** `python-shell-completion-module-string-code' is no longer used.
-
-*** Automatic shell prompt detection. New user options:
-**** `python-shell-interpreter-interactive-arg'.
-**** `python-shell-prompt-detect-enabled'.
-**** `python-shell-prompt-detect-failure-warning'.
-**** `python-shell-prompt-input-regexps'.
-**** `python-shell-prompt-output-regexps'.
-
-*** Python shell support for remote hosts via tramp.
-
-*** Correct display of line numbers for code sent to the Python shell.
-
-** Remember
-
-*** The new command `remember-notes' creates a buffer that is saved on exit.
-You can use it as a more permanent *scratch* buffer.
-
-*** Remember can now store notes in separate files.
-To use this, add `remember-store-in-files' to the `remember-handler-functions'
-option. The files are saved in `remember-data-directory' using
-names specified by `remember-directory-file-name-format'.
-
-** Rmail
-
-*** Customize `rmail-mbox-format' to influence some minor aspects of
-how Rmail displays non-MIME messages.
-
-*** The `unrmail' command now converts from BABYL to mboxrd format,
-rather than mboxo. Customize `unrmail-mbox-format' to change this.
+** seq
+*** New seq library:
+The seq library adds sequence manipulation functions and macros that
+complement basic functions provided by subr.el. All functions are
+prefixed with `seq-' and work on lists, strings and vectors.
-** Ruby mode
+** Calendar and diary
-*** Improved syntax highlighting and indentation.
++++
+*** New commands to insert diary entries with Chinese dates:
+`diary-chinese-insert-anniversary-entry' `diary-chinese-insert-entry'
+`diary-chinese-insert-monthly-entry', `diary-chinese-insert-yearly-entry'.
-*** New `electric-indent-mode' integration.
++++
+*** The calendar can now list and mark diary entries with Chinese dates.
+See `diary-chinese-list-entries' and `diary-chinese-mark-entries'.
-*** New option `ruby-encoding-magic-comment-style'.
+---
+*** The option `calendar-mode-line-format' can now be nil,
+which means to do nothing special with the mode line in calendars.
-*** New option `ruby-custom-encoding-magic-comment-template'.
+---
+*** Many items obsolete since at least version 23.1 have been removed.
+The majority were function/variable/face aliases, too numerous to list here.
+The remainder were:
-*** New option `ruby-align-to-stmt-keywords'.
+**** Functions `calendar-one-frame-setup', `calendar-only-one-frame-setup',
+`calendar-two-frame-setup', `european-calendar', `american-calendar'.
-*** New option `ruby-align-chained-calls'.
+**** Hooks `cal-menu-load-hook', `cal-x-load-hook'.
-*** More Ruby file types have been added to `auto-mode-alist'.
+**** Macro `calendar-for-loop'.
-** Search and Replace
-
-*** New global command `M-s .' (`isearch-forward-symbol-at-point')
-starts a symbol (identifier) incremental search forward with the
-symbol found near point added to the search string initially.
-
-*** `C-x 8 RET' in Isearch mode reads a character by its Unicode name
-and adds it to the search string.
-
-*** `M-s i' in Isearch mode toggles whether search matches invisible text.
-
-*** `query-replace' skips invisible text when `search-invisible' is nil,
-and opens overlays with hidden text when `search-invisible' is `open'.
-
-*** A negative prefix argument of replacement commands replaces backward.
-`M-- M-%' replaces a string backward, `M-- C-M-%' replaces a regexp
-backward, `M-s w words M-- M-%' replaces a sequence of words backward.
-
-*** By default, prefix arguments do not now terminate Isearch mode.
-Set `isearch-allow-prefix' to nil to restore the old behavior.
-
-*** More Isearch commands accept prefix arguments, namely
-`isearch-printing-char', `isearch-quote-char', `isearch-yank-word',
-`isearch-yank-line'.
-
-*** Word search now matches whitespace at the beginning/end
-of the search string if it contains leading/trailing whitespace.
-In an incremental word search or when using a non-nil LAX argument
-of `word-search-regexp', the lax matching can also match part of
-the first word (in addition to the lax matching of the last word).
-The same rules are now applied to the symbol search, with the difference
-that it matches symbols, and non-symbol characters between symbols.
-
-** New SES command `ses-rename-cell' allows assignment of names to SES cells.
-
-** The shell.el option `explicit-bash-args' includes --noediting by default.
-All non-ancient Bash versions support this option.
-
-** Shell Script mode
-
-*** The SMIE indentation engine is now used by default - see `sh-use-smie'.
-
-*** `sh-mode' now has its own setting for `add-log-current-defun-function'.
-
-** SMIE
-
-*** You can customize the SMIE indentation of a mode via `smie-config'.
-The command `smie-config-guess' can help you derive the appropriate
-indentation settings, if you provide it with an indented sample file.
-Use `smie-config-save' to save the result.
+**** Variables `european-calendar-style', `diary-face', `hebrew-holidays-{1,4}'.
-*** You can customize the SMIE indentation of a file by adding an entry to
-the file's local variables of the form: `eval: (smie-config-local '(RULES))'.
+**** The nil and list forms of `diary-display-function'.
-*** New commands `smie-config-show-indent' and `smie-config-set-indent'.
+** New ERT function `ert-summarize-tests-batch-and-exit'.
-** SQL mode
-
-*** Improved login monitoring and appropriate response to login failures.
-New variable `sql-login-delay' defines maximum wait time for a connection.
-
-*** Oracle support.
-SQL*Plus script placeholders are properly highlighted and identified
-in `sql-placeholders-filter'. When starting SQL*Plus, `sql-oracle-options'
-are passed before the logon parameter, as required. The default now
-includes `-L', to limit the number of logon attempts per invocation.
-
-** New Term mode option `term-suppress-hard-newline'.
+---
+** `Info-fontify-maximum-menu-size' can be t for no limit.
-** Todo mode has been rewritten and enhanced.
-The Todo mode user manual describes all commands and most user
-options. To support some of these features, a new file format is
-used, which is incompatible with the old format; however, you can
-convert old todo and done item files to the new format on initializing
-the first new todo file, or at any later time with the provided
-conversion command. The previous version of todo-mode.el has been
-renamed to otodo-mode.el and is now obsolete. New features include:
++++
+** `info-display-manual' can now be given a prefix argument which (any
+non-nil value) directs the command to limit the completion
+alternatives to currently visited manuals.
-*** Support for multiple todo files and archive files of done items.
+---
+** ntlm.el has support for NTLM2.
-*** Renaming, reordering, moving, merging, and deleting categories.
+---
+** The Rmail commands d, C-d and u now handle repeat counts to delete or
+undelete multiple messages.
-*** Sortable tabular summaries of categories and the item types they contain.
+** Rmail can now render HTML mail messages if your Emacs was built with
+libxml2 or if you have the Lynx browser installed. By default, Rmail
+will display the HTML version of a mail message that has both HTML and
+plain text parts, if display of HTML email is possible; customize the
+`rmail-mime-prefer-html' option to `nil' if you don't want that.
-*** Cross-category lists of items filtered by specific criteria.
+** SES now supports local printer functions; see `ses-define-local-printer'.
-*** More fine-grained interaction with the Emacs diary, by being able to
-decide for each todo item whether it appears in the Fancy Diary display.
+** In sh-mode, you can now use `sh-shell' as a file-local variable to
+specify the type of shell in use (bash, csh, etc).
-*** Highly flexible new item insertion and item editing.
+** TLS
+---
+*** Fatal TLS errors are now silent by default.
-*** Moving items between categories, storing done items in their category
-or in archive files, undoing or unarchiving done items.
-
-*** Reprioritizing items by inputting a numerical priority.
+** URL
-*** Extensive customizability of operation and display, including many faces.
+*** The URL package accepts now the protocols "ssh", "scp" and "rsync".
+When `url-handler-mode' is enabled, file operations for these
+protocols as well as for "telnet" and "ftp" are passed to Tramp.
-** Trace
+*** The URL package allows customizing the `url-user-agent' string.
+The new `url-user-agent' variable can be customized to be a string or
+a function.
-*** `trace-function' and `trace-function-background' no longer prompt for
-the output buffer. Unless you use a prefix argument, they output to
-`trace-buffer'.
+*** The new interface variable `url-request-noninteractive' can be used
+to specify that we're running in a noninteractive context, and that
+we should not be queried about things like TLS certificate validity.
-*** With a prefix argument, `trace-function' and `trace-function-background'
-will prompt for a "context". This is a Lisp expression, whose value at the
-time the function is entered/exited is printed along with the function's
-name and arguments.
+*** If URL is used with a https connection, the first callback argument
+plist will contain a :peer element that has the output of
+`gnutls-peer-status' (if Emacs is built with GnuTLS support).
** Tramp
-*** New connection method "adb", which allows to access Android
-devices by the Android Debug Bridge. The variable `tramp-adb-program'
-can be used to adapt the path of the "adb" program, if needed.
+*** New connection method "nc", which allows to access dumb busyboxes.
-*** Handlers for `file-acl' and `set-file-acl' for remote machines
-that support POSIX ACLs.
-
-*** Handlers for `file-notify-add-watch' and `file-notify-rm-watch'
-for remote machines that support filesystem notifications.
+** SQL mode
-*** The experimental url syntax for remote file names has been removed.
+*** New user variable `sql-default-directory' enables remote
+connections using Tramp.
-*** The connection methods "plink1", "ssh1", "ssh2", "scp1", "scp2",
-"scpc" and "rsyncc" are discontinued. The ssh option
-"ControlMaster=auto" is set automatically in all ssh-based methods,
-when possible. See `tramp-use-ssh-controlmaster-options'.
+*** New command `sql-send-line-and-next' sends the current line to the
+interactive buffer and advances to the next line, skipping whitespace
+and comments.
-** New URL command `url-cookie-list' displays the current cookies,
-and allows you to interactively remove cookies.
+*** Add support for Vertica SQL.
** VC and related modes
-*** In VC directory mode, `D' displays diffs between VC-controlled
-whole tree revisions.
-
-*** In VC directory mode, `L' lists the change log for the current VC
-controlled tree in a window.
-
-*** In VC directory mode, `I' shows a log of changes that will be
-received with a pull operation.
-
-*** `C-x v G' (globally) and `G' (in VC directory mode) ignores a file
-under current version control system. When called with a prefix
-argument, you can remove a file from the ignored file list.
-
-** VHDL mode
-
-*** New options: `vhdl-actual-generic-name', `vhdl-beautify-options'.
-
-*** New commands: `vhdl-fix-statement-region', `vhdl-fix-statement-buffer'.
-
-** The Woman commands `woman-default-faces' and `woman-monochrome-faces'
-are obsolete. Customize the `woman-*' faces instead.
-
-** More packages look for ~/.emacs.d/<foo> additionally to ~/.<foo>.
-Affected files:
-~/.emacs.d/timelog replaces ~/.timelog
-~/.emacs.d/vip replaces ~/.vip
-~/.emacs.d/viper replaces ~/.viper
-~/.emacs.d/ido.last replaces ~/.ido.last
-~/.emacs.d/kkcrc replaces ~/.kkcrc
-~/.emacs.d/quickurls replaces ~/.quickurls
-~/.emacs.d/idlwave/ replaces ~/.idlwave/
-~/.emacs.d/bdfcache.el replaces ~/.bdfcache.el
-~/.emacs.d/places replaces ~/.emacs-places
-~/.emacs.d/shadows replaces ~/.shadows
-~/.emacs.d/shadow_todo replaces ~/.shadow_todo
-~/.emacs.d/strokes replaces ~/.strokes
-~/.emacs.d/notes replaces ~/.notes
-~/.emacs.d/type-break replaces ~/.type-break
-Also the following files used by the now obsolete otodo-mode.el:
-~/.emacs.d/todo-do replaces ~/.todo-do
-~/.emacs.d/todo-done replaces ~/.todo-done
-~/.emacs.d/todo-top replaces ~/.todo-top
-
-** Obsolete packages
-
-*** iswitchb.el; use icomplete-mode.
-
-*** longlines.el; use visual-line-mode.
-
-*** meese.el.
-
-*** sup-mouse.el.
-
-*** terminal.el; use term.el instead.
-
-*** the old version of todo-mode.el (renamed to otodo-mode.el).
+*** The new command vc-region-history shows the log+diff of the active region.
-*** xesam.el (owing to the cancellation of the XESAM project).
+*** New option `vc-annotate-background-mode' controls whether
+the color range from `vc-annotate-color-map' is applied to the
+background or to the foreground.
-*** yow.el; use fortune.el or cookie1.el instead.
+*** `compare-windows' now compares text with the most recently used window
+instead of the next window. The new option `compare-windows-get-window-function'
+allows to customize this.
-\f
-* New Modes and Packages in Emacs 24.4
-
-** New package eww.el provides a built-in web browser.
-This requires Emacs to have been compiled with libxml2 support.
+*** Two new faces `compare-windows-removed' and `compare-windows-added'
+replace the obsolete face `compare-windows'.
-** New package nadvice.el offers lighter-weight advice facilities.
-It is layered as:
+** VHDL mode supports VHDL'08.
-*** `add-function'/`remove-function', which can be used to add/remove code on
-any function-carrying place, such as process filters or `<foo>-function' hooks.
+** Calculator: decimal display mode uses "," groups, so it's more
+fitting for use in money calculations; factorial works with
+non-integer inputs.
-*** `advice-add'/`advice-remove' to add/remove a piece of advice on a named
-function, much like `defadvice' does.
+** HideIfDef mode now support full C/C++ expressions, argumented macro expansions
+, interactive macro evaluation and automatic scanning of #defined symbols.
-** New package frameset.el provides a set of operations to save a frameset
-(the state of all or a subset of the existing frames and windows, somewhat
-similar to a frame configuration), both in-session and persistently, and
-restore it at some point in the future.
+*** New custom variable `hide-ifdef-header-regexp' to define C/C++ header file
+name patterns. Default case-insensitive .h, .hh, .hpp and .hxx.
+*** New custom variable `hide-ifdef-expand-reinclusion-protection' to prevent
+reinclusion protected header files from being fully hidden.
+*** New custom variable `hide-ifdef-exclude-define-regexp' to define symbol
+name patterns (e.x. all "FOR_DOXYGEN_ONLY_*") to be excluded.
-** New package filenotify.el provides an interface for file system
-notifications. It requires that Emacs be compiled with one of the
-low-level libraries gfilenotify.c, inotify.c or w32notify.c.
+** TeX mode
-** New minor modes `prettify-symbols-mode' and `global-prettify-symbols-mode'
-display specified symbols as composed characters. E.g., in Emacs Lisp mode,
-this replaces the string "lambda" with the Greek lambda character.
+*** New custom variable `tex-print-file-extension' to help users who
+use PDF instead of DVI.
-** New minor mode `superword-mode', which overrides the default word motion
-commands to treat "symbol_words" as a single word, similar to what
-`subword-mode' does.
+** whitespace-mode: new 'big-indent style highlighting too much indentation.
+By default, 32 spaces and four TABs are considered to be too much but
+`whitespace-big-indent-regexp' can be configured to change that.
-\f
-* Incompatible Lisp Changes in Emacs 24.4
+** tildify: `tildify-space-string', `tildify-pattern', and
+`tildify-foreach-region-function' variables added making
+`tildify-string-alist', `tildify-pattern-alist', and
+`tildify-ignored-environments-alist' variables (as well as a few
+helper functions) obsolete.
-** The default file coding for Emacs Lisp files is now utf-8.
-(See `file-coding-system-alist'.) In most cases, this change is
-transparent, but files that contain unusual characters without
-specifying an explicit coding system may fail to load with obscure
-errors. You should either convert them to utf-8 or add an explicit
-`coding:' cookie.
+** xref
+The new package provides generic framework and new commands to find
+and move to definitions, as well as pop back to the original location.
-** Default process filters and sentinels are not nil any more.
-Instead they default to a function that does what the nil value used to do.
+*** New key bindings
+`xref-find-definitions' replaces `find-tag' and provides an interface
+to pick one destination among several. Hence, `tags-loop-continue' is
+unbound. `xref-pop-marker-stack' replaces `pop-tag-mark', but uses an
+easier binding, which is now unoccupied (`M-,').
+`xref-find-definitions-other-window' replaces `find-tag-other-window'.
+`xref-find-definitions-other-frame' replaces `find-tag-other-frame'.
+`xref-find-apropos' replaces `find-tag-regexp'.
-** Overlay priority does not have to be nil or a non-negative integer.
-Overlay priority can be other kinds of Lisp objects. We didn't yet
-decide whether other types of values are stable enough, and therefore
-don't feel it's right to document them. For now, don't assume in your
-code that the values of overlay priority can only be either nil or an
-integer, always test them with an appropriate predicate to be one or
-the other. If you need to sort arbitrary overlays into priority
-order, `overlays-at' can now optionally do this.
-You should still only specify integer priorities on overlays you create.
+*** New variables
+`find-tag-marker-ring-length' is now an obsolete alias for
+`xref-marker-ring-length'. `find-tag-marker-ring' is now an obsolete
+alias for a private variable. `xref-push-marker-stack' and
+`xref-pop-marker-stack' should be used to mutate it instead.
-** The cars of the elements in `interpreter-mode-alist' are now
-treated as regexps rather than literal strings.
+** etags
+As a result of the above, these commands are now obsolete:
+`find-tag-other-window', `find-tag-other-frame', `find-tag-regexp',
+`tags-apropos' and `tags-loop-continue'.
-** `overriding-terminal-local-map' no longer replaces the local keymaps.
-It used to disable the minor mode, major mode, and text-property keymaps,
-whereas now it simply has higher precedence.
+** EUDC
+EUDC's LDAP backend has been improved.
-** `kill-region' has lost its `yank-handler' optional argument.
+*** EUDC supports LDAP-over-SSL URLs (ldaps://).
-** `(input-pending-p)' no longer runs other timers that are ready to run.
-The new optional CHECK-TIMERS parameter allows for the prior behavior.
+*** EUDC passes LDAP passwords through a pipe to the ldapsearch
+subprocess instead of on the command line.
-** `defvar' and `defcustom' in a let-binding affect the "external" default.
+*** EUDC handles LDAP wildcards automatically so the user shouldn't
+need to configure this manually anymore.
-** The syntax of ?» and ?« is now punctuation instead of matched parens.
-Some languages match those as »...«, and others as «...», so it is
-better for Emacs to stay neutral by default.
+*** The LDAP configuration section of EUDC's manual has been
+rewritten.
-** `read-event' does not always decode chars in ttys any more. As was the case
-in Emacs 22 and before, `read-event' (and `read-char') by default read raw
-bytes from the terminal. If you want to read decoded chars instead (as was
-always the case in Emacs-23, for example), pass a non-nil
-`inherit-input-method' argument.
+There have also been customization changes.
-** In `symbol-function', nil and "unbound" are indistinguishable.
-`symbol-function' does not signal a `void-function' error any more.
-To determine if a symbol's function definition is void, use `fboundp'.
+*** New custom variable `eudc-server-hotlist' to allow specifying
+multiple EUDC servers in init file.
-** `defadvice' does not honor the `freeze' flag and cannot advise
-special-forms any more.
+*** Custom variable `eudc-inline-query-format' defaults to completing
+on email and firstname instead of surname.
-** `dolist' no longer binds VAR while evaluating the RESULT form,
-when lexical binding is enabled. Previously, VAR was bound to nil,
-which often led to spurious unused-variable warnings.
+*** Custom variable `eudc-expansion-overwrites-query' defaults to nil
+to avoid interfering with the kill ring.
-** The return value of `backup-buffer' has changed.
-The second argument is no longer an SELinux context, instead it is an
-alist of extended attributes as returned by the new function
-`file-extended-attributes'. The attributes can be applied to another
-file using `set-file-extended-attributes'.
+*** Custom variable `eudc-inline-expansion-format' defaults to
+"Firstname Surname <mail-address>".
-** By default `copy-file' no longer copies file permission bits to an
-existing destination; and it sets the file permission bits of a newly
-created destination to those of the source, masked by the default file
-permissions. To copy the file permission bits, pass t as the
-PRESERVE-PERMISSIONS argument of `copy-file'.
+*** New custom variable `ldap-ldapsearch-password-prompt-regexp' to
+allow overriding the regular expression that recognizes the ldapsearch
+command line's password prompt.
-** `visited-file-modtime' now returns -1 for nonexistent files.
-Formerly it returned a list (-1 LOW USEC PSEC), but this was ambiguous
-in the presence of files with negative time stamps.
++++
+** tar-mode: new `tar-new-entry' command, allowing for new members to
+be added to the archive.
-** Frame-local variables that affect redisplay do not work any more.
-More specifically, redisplay does not bother to check for a frame-local
-value when looking up variables.
+** Autorevert: dired buffers are also auto-reverted via file
+notifications, if Emacs is compiled with file notification support.
-** In compiled Lisp files, the header no longer includes a timestamp.
+** Obsolete packages
-** The option `inhibit-local-menu-bar-menus' has been removed.
+---
+*** gulp.el
\f
-* Lisp Changes in Emacs 24.4
-
-** Change to the Emacs Lisp coding conventions: the package descriptor
-and name of global variables, constants, and functions should be separated
-by two hyphens if the symbol is not meant to be used by other packages.
-
-** The second argument of `eval' can now specify a lexical environment.
-
-** New macro `define-alternatives' can be used to define generic commands.
-Generic commands are interactive functions whose implementation can be
-selected among several alternatives, as a matter of user preference.
-
-** Numeric comparison functions =, <, >, <=, >= can now take many arguments.
-
-** New functions `special-form-p' and `macrop'.
-
-** New macro `with-eval-after-load'.
-This is like the old `eval-after-load', but better behaved.
-
-** If you give a symbol a `defalias-fset-function' property, `defalias'
-on that symbol will use the associated value as a function to call
-in place of `fset'.
-
-** New variable `enable-dir-local-variables'.
-Directory-local variables are ignored if this is nil. This may be
-useful for modes that want to ignore directory-locals while still
-respecting file-local variables.
-
-** `read-regexp' now uses the new variable `read-regexp-defaults-function'
-as a function to call to provide default values.
-
-** New functions `group-gid' and `group-real-gid'.
-
-** New function `get-pos-property'.
-
-** New hook `pre-redisplay-function'.
-
-** `byte-compile-interactive-only-functions' is now obsolete.
-To specify that a command should only be called interactively, give it
-a non-nil `interactive-only' property.
-
-** New function `string-suffix-p'.
-
-** `split-string' now takes an optional argument TRIM.
-The value, if non-nil, is a regexp that specifies what to trim from
-the start and end of each substring.
-
-** Completion
-
-*** The separator used by `completing-read-multiple' is now a regexp.
-The default `crm-separator' has been changed to allow surrounding spaces
-around the comma.
-
-*** New function `completion-table-with-cache' is a wrapper for
-`completion-table-dynamic' that caches the result of the last lookup.
-
-*** New function `completion-table-merge' to combine several
-completion tables by merging their completions.
-
-*** The `common-substring' argument of `display-completion-list',
-which has been documented as obsolete since Emacs 23.1, is now _really_
-obsolete, and no longer advertised. Instead either call
-`completion-hilit-commonality' to add the highlighting; or use
-`completion-all-completions', which returns highlighted strings.
-
-** Encoding and decoding of text
-
-*** New coding-system `prefer-utf-8'.
-This is like `undecided' but prefers UTF-8 on decoding if the text to
-be decoded does not contain any invalid UTF-8 sequences. On encoding,
-any non-ASCII characters are automatically encoded as UTF-8.
-
-*** New attributes of coding-systems whose type is `undecided'.
-Two new attributes, `:inhibit-null-byte-detection' and
-`:inhibit-iso-escape-detection', determine how to detect encoding of
-text that includes null bytes and ISO-2022 escape sequences, respectively.
-Each of these attributes can be either nil, zero, or t. If t, decoding
-text ignores null bytes and ISO-2022 sequences, respectively. If nil,
-null bytes cause text to be decoded with no-conversion, and ISO-2022
-sequences cause Emacs to assume the text is encoded in one of the ISO-2022
-encodings, such as iso-2022-7bit. If zero, Emacs consults the variables
-`inhibit-null-byte-detection' and `inhibit-iso-escape-detection'.
-The new attribute `:prefer-utf-8', if non-nil, causes Emacs to prefer
-UTF-8 encoding and decoding, whenever possible.
-
-These attributes are only meaningful for coding-systems of type `undecided'.
-(The type of a coding-system is determined by its `:coding-type' attribute
-and can be accessed by calling the `coding-system-type' function.)
-
-** Error-handling
-
-*** New function `define-error'.
-
-*** `with-demoted-errors' takes an additional argument `format'.
-
-*** Errors from timer functions are no longer silently discarded,
-but are reported as messages. So you may see "Error running timer"
-messages from code that was failing silently till now. Set
-`debug-on-error' non-nil to get a real error and a backtrace.
+* New Modes and Packages in Emacs 25.1
-** Faces
+** cl-generic.el provides CLOS-style multiple-dispatch generic functions.
-*** Face specs set via Custom themes now replace the `defface' spec
-rather than inheriting from it. In other words, setting a face via a
-theme now behaves like setting it via Customize: you only need to
-specify the attributes that you want, you don't need to unset those
-that you don't want.
+** scss-mode (a minor variant of css-mode)
-*** The function `face-spec-set' is now like `setq' for face specs.
-Its third arg now accepts values specifying a face spec type (defface,
-custom, or override spec), and the relevant spec is set accordingly.
-
-*** New face spec attribute :distant-foreground
-specifies foreground to use if background color is near the foreground
-color that would otherwise have been used.
-
-*** New function `add-face-text-property', which can be used to
-conveniently prepend/append new face properties.
-
-*** New face characteristic (supports :underline (:style wave))
-specifies whether or not the terminal can display a wavy line.
-
-** File-handling
-
-*** Support for filesystem notifications.
-Emacs now supports notifications of filesystem changes, such as
-creation, modification, and deletion of files. This requires the
-`glib' API, or the 'inotify' API (on GNU/Linux systems only). On
-MS-Windows systems, this is supported for Windows XP and newer.
-
-*** The 9th element returned by `file-attributes' is now unspecified.
-Formerly, it was t if the file's gid would change if file were deleted
-and recreated. This value has been inaccurate for years on many
-platforms, and nobody seems to have noticed or cared.
-
-*** The 6th argument to `copy-file' has been renamed to
-PRESERVE-PERMISSIONS as it now handles ACL entries and the traditional
-Unix file permission bits as well as SELinux context.
-
-*** The function `file-ownership-preserved-p' now has an optional
-argument GROUP which causes it check for file group too. This can be
-used in place of the 9th element of `file-attributes'.
-
-*** The function `set-visited-file-modtime' now accepts a 0 or -1 argument,
-with the same interpretation as the returned value of `visited-file-modtime'.
-
-** Image API
-
-*** `image-animated-p' is now `image-multi-frame-p'.
-It returns non-nil for any image that contains multiple frames,
-whether or not it specifies a frame delay.
-
-*** New variable `image-default-frame-delay' gives the frame delay for
-animated images which do not specify a frame delay.
-
-*** New functions `image-current-frame' and `image-show-frame' for getting
-and setting the current frame of a multi-frame image.
-
-** ImageMagick
-
-*** ImageMagick images now support the :max-width and :max-height keywords.
-
-*** When using `create-image' with image data, you can pass a :format
-attribute (via the property-list argument) in order to help
-ImageMagick detect the image type. The value should be a MIME
-content-type that is found in the new variable `image-format-suffixes'.
-
-** Revert and Autorevert
-
-*** If Emacs is compiled with file notification support, it uses notifications
-instead of checking file time stamps. To disable this, set the user option
-`auto-revert-use-notify' to nil. Alternatively, you can specify a regular
-expression matching directories to be excluded from file notifications via
-`auto-revert-notify-exclude-dir-regexp'.
-
-*** The default values of `buffer-stale-function', `revert-buffer-function',
-and `revert-buffer-insert-file-contents-function' are no longer nil.
-Instead they default to functions that do what the nil value used to.
-
-*** `buffer-stale-function' is now used for buffers visiting files too.
-
-*** The new user option `auto-revert-remote-files' enables reversion
-of remote files, if non-nil.
-
-** Terminal
-
-*** Functions to pop up menus and dialogs now work on all terminals,
-including TTYs. This includes `x-popup-menu', `x-popup-dialog',
-`message-box', `yes-or-no-p', etc.
-
-The function `display-popup-menus-p' will now return non-nil for a
-display or frame whenever a mouse is supported on that display or frame.
-
-*** New hook `tty-setup-hook', run at the end of initializing a text terminal.
-
-*** The hook `term-setup-hook' is obsolete. It is entirely equivalent
-to `emacs-startup-hook'. See also the new `tty-setup-hook'.
-
-** Minor internal changes to the details of lock files.
-The lock for DIR/FILE is now _always_ DIR/.#FILE.
-If DIR/.#FILE already exists and is not an Emacs lock file,
-Emacs makes no attempt to lock DIR/FILE. (Previously, it fell back to
-numbered lock files DIR/.#FILE.0...).
-On file systems that do not support symbolic links, the lock is now a
-regular file with contents being what would have been in the symlink.
-
-** New bool-vector set operation functions:
-*** `bool-vector-exclusive-or'
-*** `bool-vector-union'
-*** `bool-vector-intersection'
-*** `bool-vector-set-difference'
-*** `bool-vector-not'
-*** `bool-vector-subsetp'
-*** `bool-vector-count-consecutive'
-*** `bool-vector-count-population'
-
-** New library subr-x.el with miscellaneous small utility functions:
-*** `hash-table-keys'
-*** `hash-table-values'
-*** `string-blank-p'
-*** `string-empty-p'
-*** `string-join'
-*** `string-reverse'
-*** `string-trim-left'
-*** `string-trim-right'
-*** `string-trim'
-*** `string-remove-prefix'
-*** `string-remove-suffix'
-
-** The `time-to-seconds' alias to `float-time' is no longer marked obsolete.
-
-** The spelling of the rx.el category `chinese-two-byte' has been
-corrected (the first 'e' was missing).
-
-** EIEIO namespace cleanup, obsolete-aliasing functions to use `eieio-' prefix:
-*** object-name -> eieio-object-name
-*** object-class -> eieio-object-class
-*** object-class-fast -> eieio--object-class
-*** object-class-name -> eieio-object-class-name
-*** object-name-string -> eieio-object-name-string
-*** object-num-slots -> eieio--object-num-slots
-*** object-set-name-string -> eieio-object-set-name-string
-*** class-of -> eieio-object-class
-*** class-name -> eieio-class-name
-*** class-parent -> eieio-class-parent
-*** class-parents -> eieio-class-parents
-*** class-parents-fast -> eieio-class-parents-fast
-*** class-children -> eieio-class-children
-*** class-num-slots -> eieio--class-num-slots
-*** class-precedence-list -> eieio-class-precedence-list
-*** class-direct-subclasses -> eieio-class-children
-*** class-direct-superclasses -> eieio-class-parents
-
-** Obsoleted functions
-*** `log10'
-*** `dont-compile'
-*** `lisp-complete-symbol'
-*** `field-complete'
-*** `minibuffer-completion-contents'
-*** `isearch-nonincremental-exit-minibuffer'
-*** `isearch-filter-visible'
-*** `generic-make-keywords-list'
-*** `get-upcase-table' (use `case-table-get-table' instead).
-
-** `with-wrapper-hook' is obsoleted by `add-function'.
-The few hooks that used with-wrapper-hook are replaced as follows:
-*** `abbrev-expand-function' obsoletes `abbrev-expand-functions'.
-*** `completion-in-region-function' obsoletes `completion-in-region-functions'.
-*** `filter-buffer-substring-function' obsoletes `filter-buffer-substring-functions'.
+** let-alist is a new macro (and a package) that allows one to easily
+let-bind the values stored in an alist.
+** `tildify-mode' allows to automatically insert hard spaces as one
+types the text. Breaking line after a single-character words is
+forbidden by Czech and Polish typography (and may be discouraged in
+other languages), so `auto-tildify-mode' makes it easier to create
+a typographically-correct documents.
\f
-* Changes in Emacs 24.4 on Non-Free Operating Systems
-
-** New Core Text based font backend for Mac OS X 10.5 and newer.
-To use the old font backend, use the following on the command line:
- % defaults write org.gnu.Emacs FontBackend ns
-GNUstep and Mac OS X 10.4 use the old font backend.
-
-** Improved fullscreen support on Mac OS X 10.7 and newer, where the
-default fullscreen method is now "native" fullscreen. To use the
-old style fullscreen, customize `ns-use-native-fullscreen' to nil.
-
-** On Mac OS X 10.7 and newer, Emacs can use sRGB colorspace, and does so
-by default. Customize `ns-use-srgb-colorspace' to go back to the old method.
-Note that this does not apply to images.
-
-** The procedure for building Emacs on MS-Windows has changed.
-It is now built by running the same configure script as on all other
-platforms. This requires the MSYS environment and MinGW development
-tools. See the updated instructions in nt/INSTALL for details.
-
-Using the Posix configure script and Makefiles also means a change in
-the directory structure of the Emacs installation on Windows. It is
-now the same as on GNU and Unix systems. In particular, the auxiliary
-programs, such as cmdproxy.exe and hexl.exe, are in
-libexec/emacs/VERSION/i686-pc-mingw32 (where VERSION is the Emacs
-version), version-independent site-lisp is in share/emacs/site-lisp,
-version-specific Lisp files are in share/emacs/VERSION/lisp and in
-share/emacs/VERSION/site-lisp, Info docs are in share/info, and data
-files are in share/emacs/VERSION/etc. (Emacs knows about all these
-directories and will find the files in there automatically; there's no
-need to set any variables due to this change.)
-
-** Emacs on Windows 2000 and later can now access files and directories
-whose names cannot be encoded in the current system codepage.
-
-The new variable `w32-unicode-filenames' controls this feature: if it
-is t, Emacs uses Unicode APIs to pass file names to system calls,
-which lifts the limitation of file names to the current locale.
-
-** Lock files now work on MS-Windows.
-This helps to prevent losing your edits if the same file is being
-edited in another Emacs session or by another user. See the node
-"Interlocking" in the Emacs User Manual for the details. To disable
-file locking, customize `create-lockfiles' to nil.
-
-** The "generate a backtrace on fatal error" feature now works on MS-Windows.
-The backtrace is written to the 'emacs_backtrace.txt' file in the
-directory where Emacs was running.
-
-** The `network-interface-list' and `network-interface-info' functions
-are now available on MS-Windows.
-
-** The variable `buffer-file-type' is no longer supported.
-Setting it has no effect, and %t in the mode-line format is ignored.
-Likewise, `file-name-buffer-file-type-alist' is now obsolete, and
-modifying it has no effect.
+* Incompatible Lisp Changes in Emacs 25.1
-\f
-* Installation Changes in Emacs 24.3
-
-** The default X toolkit is now Gtk+ version 3.
-If you don't pass `--with-x-toolkit' to configure, or if you use
-`--with-x-toolkit=gtk' or `--with-x-toolkit=yes', configure will try
-to build with Gtk+ version 3, and if that fails, try Gtk+ version 2.
-You can explicitly require a specific version by passing
-`--with-x-toolkit=gtk2' or `--with-x-toolkit=gtk3' to configure.
-
-** New configure option `--enable-link-time-optimization', to utilize
-an appropriate feature provided by GCC since version 4.5.0.
-
-** New configure option `--without-all' to disable most of the optional
-features (image support, etc.) that are normally enabled by default.
+** completion-table-dynamic stays in the minibuffer.
+If you want the old behavior of calling the function in the buffer
+from which the minibuffer was entered, call it with the new argument
+`switch-buffer'.
-** New configure option `--enable-gcc-warnings' (for developing/debugging
-Emacs). If building with GCC, this enables compile-time checks that
-warn/give errors about possibly-questionable C code. On a recent GNU
-system there should be no warnings; on older and on non-GNU systems
-the results may be useful to developers.
+** window-configurations no longer record the buffers's marks.
-** The configure option `--enable-use-lisp-union-type' has been
-renamed to `--enable-check-lisp-object-type', as the resulting
-Lisp_Object type no longer uses a union to implement the compile time
-check that this option enables.
+** inhibit-modification-hooks now also inhibits lock-file checks, as well as
+active region handling.
-** The configure option `--disable-maintainer-mode' has been removed,
-as it was confusingly-named and rarely useful.
+** deactivate-mark is now buffer-local.
-** The configure options `--program-prefix', `--program-suffix', and
-`--program-transform-name' apply to more than just the installed
-binaries. Now they also affect the man pages, icons, and the
-etc/emacs.desktop file; but not the info pages, since this would break
-links between the various manuals.
+** `cl-the' now asserts that its argument is of the given type.
-** You can use `NO_BIN_LINK=t make install' to prevent the installation
-overwriting "emacs" in the installation bin/ directory with a link
-to "emacs-VERSION".
++++
+** Mouse click events on mode line or header line no longer include
+any reference to a buffer position. The 6th member of the mouse
+position list returned for such events is now nil.
-** Emacs uses libtinfo in preference to libncurses, if available.
-
-** On FreeBSD and NetBSD, configure no longer adds /usr/local/lib and
-/usr/pkg/lib to the linker search path. You must add them yourself if
-you want them.
-
-** The standalone scripts `rcs-checkin' and `vcdiff' have been removed
-(from the bin and libexec directories, respectively). The former is
-no longer relevant, the latter is replaced by lisp (in vc-sccs.el).
-
-\f
-* Startup Changes in Emacs 24.3
+** Menu items in keymaps do not support the "key shortcut cache" any more.
+These slots used to hold key-shortcut data, but have been obsolete since
+Emacs-21.
-** Emacs no longer searches for `leim-list.el' files beneath the standard
-lisp/ directory. There should not be any there anyway. If you have
-been adding them there, put them somewhere else; e.g., site-lisp.
+** Emacs no longer downcases the first letter of a system diagnostic
+when signaling a file error. For example, it now reports "Permission
+denied" instead of "permission denied". The old behavior was problematic
+in languages like German where downcasing rules depend on grammar.
-** The `--no-site-lisp' command line option now works for Nextstep builds.
++++
+** The character classes [:alpha:] and [:alnum:] in regular expressions
+now match multibyte characters using Unicode character properties.
+If you want the old behavior where they matched any character with
+word syntax, use `\sw' instead.
\f
-* Changes in Emacs 24.3
+* Lisp Changes in Emacs 25.1
-** Help
+** Emacs Lisp now supports generators.
-*** `C-h f' (`describe-function') can now perform autoloading.
-When this command is called for an autoloaded function whose docstring
-contains a key substitution construct, that function's library is
-automatically loaded, so that the documentation can be shown
-correctly. To disable this, set `help-enable-auto-load' to nil.
+** New finalizer facility for running code when objects
+ become unreachable.
-*** `C-h f' now reports previously-autoloaded functions as "autoloaded",
-even after their associated libraries have been loaded (and the
-autoloads have been redefined as functions).
+** lexical closures can use (:documentation <form>) to build their docstring.
+It should be placed right where the docstring would be, and <form> is then
+evaluated (and should return a string) when the closure is built.
-** ImageMagick
+** define-inline provides a new way to define inlinable functions.
-*** Images displayed via ImageMagick now support transparency and the
-:background image specification property.
+** New function macroexpand-1 to perform a single step of macroexpansion.
-*** When available, ImageMagick support is automatically enabled.
-It is no longer necessary to call `imagemagick-register-types'
-explicitly to install ImageMagick image types; that function is called
-automatically at startup, or when customizing an imagemagick- option.
+** Some "x-*" were obsoleted:
+*** x-select-text is renamed gui-select-text.
+*** x-selection-value is renamed gui-selection-value.
+*** x-get-selection is renamed gui-get-selection.
+*** x-get-clipboard and x-clipboard-yank are marked obsolete.
+*** x-get-selection-value is renamed to gui-get-primary-selection.
+*** x-set-selection is renamed to gui-set-selection
-*** Setting `imagemagick-types-inhibit' to t now disables the use of
-ImageMagick to view images. (You must call `imagemagick-register-types'
-afterwards if you do not use customize to change this.)
+** New function `alist-get', which is also a valid place (aka lvalue).
-*** The new variable `imagemagick-enabled-types' also affects which
-ImageMagick types are treated as images. The function
-`imagemagick-filter-types' returns the list of types that will be
-treated as images.
+** New function `funcall-interactively', which works like `funcall'
+but makes `called-interactively-p' treat the function as (you guessed it)
+called interactively.
-** Minibuffer
-
-*** In minibuffer filename prompts, `C-M-f' and `C-M-b' now move to the
-next and previous path separator, respectively.
-
-*** `minibuffer-electric-default-mode' can shorten "(default ...)" to "[...]"
-in minibuffer prompts. Just set `minibuffer-eldef-shorten-default'
-non-nil before enabling the mode.
-
-** Mode line
-
-*** New option `mode-line-default-help-echo' specifies the help text
-(shown in a tooltip or in the echo area) for any part of the mode line
-that does not have its own specialized help text.
-
-*** You can now click mouse-3 in the coding system indicator to invoke
-`set-buffer-file-coding-system'.
-
-** Server and client
-
-*** emacsclient now obeys string values for `initial-buffer-choice',
-if it is told to open a new frame without specifying any file to visit
-or expression to evaluate.
+** New function `function-put' to use instead of `put' for function properties.
-*** New option `server-auth-key' specifies a shared server key.
++++
+** New properties that can be specified with `declare':
+*** (interactive-only INSTEAD), says to use INSTEAD for non-interactive use.
+*** (pure VAL), if VAL is non-nil, indicates the function is pure.
+*** (side-effect-free VAL), if VAL is non-nil, indicates the function does not
+have side effects.
-** Emacs now generates backtraces on fatal errors.
-On encountering a fatal error, Emacs now outputs a textual description
-of the fatal signal, and a short backtrace on platforms like glibc
-that support backtraces.
++++
+** New macro `with-file-modes', for evaluating expressions with default file
+permissions set to temporary values (e.g., for creating private files).
-** `C-x C-q' is now bound to the new minor mode `read-only-mode'.
-This minor mode replaces `toggle-read-only', which is now obsolete.
+** You can access the slots of structures using `cl-struct-slot-value'.
-** Most `y-or-n' prompts now allow you to scroll the selected window.
-Typing `C-v' or `M-v' at a y-or-n prompt scrolls forward or backward
-respectively, without exiting from the prompt.
+** Functions `rmail-delete-forward' and `rmail-delete-backward' take an
+optional repeat-count argument.
-** In the Package Menu, newly-available packages are listed as "new",
-and sorted above the other "available" packages by default.
+** Function `sort' can deal with vectors.
-** If your Emacs was built from a repository checkout, the new variable
-`emacs-bzr-version' contains information about the bzr revision used.
+** Function `system-name' now returns an updated value if the current
+system's name has changed or if the Emacs process has changed systems,
+and to avoid long waits it no longer consults DNS to canonicalize the
+name. The variable `system-name' is now obsolete.
-** New option `create-lockfiles' specifies usage of lockfiles.
-It defaults to t. Changing it to nil inhibits the creation of lock
-files (use this with caution).
++++
+** Function `write-region' no longer outputs "Wrote FILE" in batch mode.
-** New option `enable-remote-dir-locals', if non-nil, allows directory-local
-variables on remote hosts.
+---
+** New utilities in subr-x.el:
+*** New macros `if-let' and `when-let' allow defining bindings and to
+ execute code depending whether all values are true.
+*** New macros `thread-first' and `thread-last' allow threading a form
+ as the first or last argument of subsequent forms.
-** The entry for PCL-CVS has been removed from the Tools menu.
-The PCL-CVS commands are still available via the keyboard.
++++
+** Time-related changes:
-** Using "unibyte: t" in Lisp source files is obsolete.
-Use "coding: raw-text" instead.
+*** Time-related functions now consistently accept numbers
+(representing seconds since the epoch) and nil (representing the
+current time) as well as the usual list-of-integer representation.
+Affected functions include `current-time-string', `current-time-zone',
+`decode-time', `float-time', `format-time-string', `seconds-to-time',
+`time-add', `time-less-p', `time-subtract', `time-to-day-in-year',
+`time-to-days', and `time-to-seconds'.
-** In the buffer made by `M-x report-emacs-bug', the `C-c m' binding
-has been changed to `C-c M-i' (`report-emacs-bug-insert-to-mailer').
-The previous binding, introduced in Emacs 24.1, was a mistake, because
-`C-c LETTER' bindings are reserved for user customizations.
+*** The `encode-time-value' and `with-decoded-time-value' macros have
+been obsoleted.
-** Internationalization
+*** `calendar-next-time-zone-transition', `time-add', and
+`time-subtract' no longer return time values in the obsolete and
+undocumented integer-pair format. Instead, they return a list of two
+integers.
-*** New language environment: Persian.
-
-*** New input method `vietnamese-vni'.
-
-** Nextstep (GNUstep / Mac OS X) port
-
-*** Support for fullscreen and the frame parameter fullscreen.
-
-*** A file dialog is used for open/save operations initiated from the
-menu/toolbar.
++++
+** New function `set-binary-mode' allows to switch a standard stream
+of the Emacs process to binary I/O mode.
\f
-* Editing Changes in Emacs 24.3
-
-** Search and Replace
-
-*** Non-regexp Isearch now performs "lax" space matching.
-Each sequence of spaces in the supplied search string may match any
-sequence of one or more whitespace characters, as specified by the
-variable `search-whitespace-regexp'. (This variable is also used by a
-similar existing feature for regexp Isearch.)
-
-*** New Isearch command `M-s SPC' toggles lax space matching.
-This applies to both ordinary and regexp Isearch.
-
-*** New option `replace-lax-whitespace'.
-If non-nil, `query-replace' uses flexible whitespace matching too.
-The default is nil.
-
-*** Global `M-s _' starts a symbol (identifier) incremental search,
-and `M-s _' in Isearch toggles symbol search mode.
-`M-s c' in Isearch toggles search case-sensitivity.
-
-** Navigation commands
-
-*** New binding `M-g c' for `goto-char'.
-
-*** New binding `M-g TAB' for `move-to-column'.
-
-*** `M-g TAB' (`move-to-column') prompts for a column number if called
-interactively with no prefix arg. Previously, it moved to column 1.
-
-** New option `yank-handled-properties' allows processing of text
-properties on yanked text, in ways that are more general than just
-removing them (as is done by `yank-excluded-properties').
-
-** New option `delete-trailing-lines' specifies whether
-M-x delete-trailing-whitespace should delete trailing lines at the end
-of the buffer. It defaults to t.
-
-** `C-u M-=' now counts lines/words/characters in the entire buffer.
-
-** `C-x 8 RET' is now bound to `insert-char', which is now a command.
-`ucs-insert' is now an obsolete alias for `insert-char'.
-
-** The `z' key no longer has a binding in most special modes.
-It used to be bound to `kill-this-buffer', but `z' is too easy to
-accidentally type.
-
-** New command `C-x r M-w' (`copy-rectangle-as-kill').
-It copies the region-rectangle as the last rectangle kill.
-
-** Registers
-
-*** `C-x r +' is now overloaded to invoke `append-to-register'.
-
-*** New option `register-separator' specifies the register containing
-the text to put between collected texts for use with
-M-x append-to-register and M-x prepend-to-register.
+* Changes in Frames and Windows Code in Emacs 25.1
+
++++
+** Emacs can now draw horizontal scroll bars on some platforms that
+provide toolkit scroll bars, namely Gtk+, Lucid, Motif and Windows.
+Horizontal scroll bars are turned off by default.
+*** New function `horizontal-scroll-bars-available-p' telling whether
+ horizontal scroll bars are available on the underlying system.
+*** New mode `horizontal-scroll-bar-mode' to toggle horizontal scroll
+ bars on all existing and future frames.
+*** New function `toggle-horizontal-scroll-bar' to toggle horizontal
+ scroll bars on the selected frame.
+*** New frame parameters `horizontal-scroll-bars' and
+ `scroll-bar-height' to set horizontal scroll bars and their height
+ for individual frames and in `default-frame-alist'.
+*** New functions `frame-scroll-bar-height' and
+ `window-scroll-bar-height' return the height of horizontal scroll
+ bars on a specific frame or window.
+*** `set-window-scroll-bars' now accepts five parameters where the last
+ two specify height and type of the window's horizontal scroll bar.
+*** `window-scroll-bars' now returns type and sizes of horizontal scroll
+ bars too.
+*** New buffer-local variables `horizontal-scroll-bar' and
+ `scroll-bar-height'.
+
++++
+** The height of a frame's menu and tool bar are no longer counted in the
+frame's text height. This means that the text height stands only for
+the height of the frame's root window plus that of the echo area (if
+present). This was already the behavior for frames with external tool
+and menu bars (like in the Gtk builds) but has now been extended to all
+builds.
+
++++
+** Frames now do not necessarily preserve the number of columns or lines
+they display when setting default font, menu bar, fringe width, or
+scroll bars. In particular, maximized and fullscreen frames are
+conceptually never resized if such settings change. For fullheight and
+fullwidth frames, the behavior may depend on the toolkit used.
+*** New option `frame-inhibit-implied-resize' if non-nil, means that
+ setting default font, menu bar, fringe width, or scroll bars of a
+ specific frame does not resize that frame in order to preserve the
+ number of columns or lines it displays.
+
++++
+** New function `window-preserve-size' allows to preserve the size of
+windows without "fixing" it. It's supported by `fit-window-to-buffer',
+`temp-buffer-resize-mode' and `display-buffer'.
+
+** Tearoff menus and detachable toolbars for Gtk+ has been removed.
+Those features have been deprecated in Gtk+ for a long time.
\f
-* Changes in Specialized Modes and Packages in Emacs 24.3
-
-** Common Lisp emulation (CL)
-
-*** CL's main entry is now (require 'cl-lib).
-`cl-lib' is like the old `cl' except that it uses the namespace cleanly;
-i.e., all its definitions have the "cl-" prefix (and internal definitions
-use the "cl--" prefix).
-
-If `cl' provided a feature under the name `foo', then `cl-lib'
-provides it under the name `cl-foo' instead; with the exceptions of the
-few `cl' definitions that had to use `foo*' to avoid conflicts with
-pre-existing Elisp entities. These have been renamed to `cl-foo'
-rather than `cl-foo*'.
-
-The old `cl' is now deprecated and is mainly just a bunch of aliases that
-provide the old, non-prefixed names. Some exceptions are listed below:
-
-*** `cl-flet' is not like `flet' (which is deprecated).
-Instead it obeys the behavior of Common-Lisp's `flet'.
-In particular, in cl-flet function definitions are lexically scoped,
-whereas in flet the scoping is dynamic.
-
-*** `cl-labels' is slightly different from `labels'.
-The difference is that it relies on the `lexical-binding' machinery
-(as opposed to the `lexical-let' machinery used previously) to capture
-definitions in closures, so such closures will only work if `lexical-binding'
-is in use.
-
-*** `cl-letf' is not exactly like `letf'.
-The only difference is in details that relate to some deprecated usage
-of `symbol-function' in place forms.
-
-*** `progv' was rewritten to use the `let' machinery.
-A side effect is that variables without corresponding values are bound
-to nil rather than being made unbound.
-
-*** The following methods of extending `setf' are obsolete
-(use features from gv.el instead):
-`define-modify-macro' (use `gv-letplace')
-`defsetf' (use `gv-define-simple-setter' or `gv-define-setter')
-`define-setf-expander' (use `gv-define-setter' or `gv-define-expander')
-`get-setf-method' no longer exists (see "Incompatible Lisp Changes")
-
-** Diff mode
-
-*** Changes are now highlighted using the same color scheme as in
-modern VCSes. Deletions are displayed in red (new faces
-`diff-refine-removed' and `smerge-refined-removed', and new definition
-of `diff-removed'), insertions in green (new faces `diff-refine-added'
-and `smerge-refined-added', and new definition of `diff-added').
-
-*** The variable `diff-use-changed-face' defines whether to use the
-face `diff-changed', or `diff-removed' and `diff-added' to highlight
-changes in context diffs.
-
-*** The new command `diff-delete-trailing-whitespace' removes trailing
-whitespace introduced by a diff.
-
-** Ediff now uses the same color scheme as Diff mode.
-
-** Python mode
-
-A new version of python.el, which provides several new features, including:
-per-buffer shells, better indentation, Python 3 support, and improved
-shell-interaction compatible with iPython (and virtually any other
-text based shell).
-
-*** Some user options have been replaced/renamed, including (old -> new):
-**** python-indent -> python-indent-offset
-**** python-guess-indent -> python-indent-guess-indent-offset
-**** python-pdbtrack-do-tracking-p -> python-pdbtrack-activate
-**** python-use-skeletons -> python-skeleton-autoinsert
-
-*** Some user options have been removed, including:
-
-**** `python-indent-string-contents': Strings are never indented.
-
-**** `python-honour-comment-indentation':
-Comments are always considered as indentation markers.
-
-**** `python-continuation-offset': Indentation is automatically
-calculated in a pep8 compliant way depending on the context.
-
-**** `python-shell-prompt-alist', `python-shell-continuation-prompt-alist':
-Have no direct mapping as the shell interaction is completely different.
-
-**** `python-python-command', `python-jython-command':
-Replaced by `python-shell-interpreter'.
-
-**** `inferior-python-filter-regexp', `python-remove-cwd-from-path',
-`python-pdbtrack-minor-mode-string', `python-source-modes':
-No longer relevant.
-
-*** Some commands have been replaced (old -> new):
-**** python-insert-class -> python-skeleton-class
-**** python-insert-def -> python-skeleton-def
-**** python-insert-for -> python-skeleton-for
-**** python-insert-if -> python-skeleton-if
-**** python-insert-try/except -> python-skeleton-try
-**** python-insert-try/finally -> python-skeleton-try
-**** python-insert-while -> python-skeleton-while
-**** python-find-function -> python-nav-jump-to-defun
-**** python-next-statement -> python-nav-forward-sentence
-**** python-previous-statement -> python-nav-backward-sentence
-**** python-beginning-of-defun-function -> python-nav-beginning-of-defun
-**** python-end-of-defun-function -> python-nav-end-of-defun
-**** python-send-buffer -> python-shell-send-buffer
-**** python-send-defun -> python-shell-send-defun
-**** python-send-region -> python-shell-send-region
-**** python-send-region-and-go -> emulate with python-shell-send-region
-and python-shell-switch-to-shell
-**** python-send-string -> python-shell-send-string
-**** python-switch-to-python -> python-shell-switch-to-shell
-**** python-describe-symbol -> python-eldoc-at-point
-
-** D-Bus
-
-*** New variables `dbus-compiled-version' and `dbus-runtime-version'.
-
-*** The D-Bus object manager interface is implemented.
-
-*** Variables of type :(u)int32 and :(u)int64 accept floating points,
-if their value does not fit into Emacs's integer range.
-
-*** The function `dbus-call-method' is now non-blocking.
-It can be interrupted by `C-g'. `dbus-call-method-non-blocking' is obsolete.
-
-*** Signals can also be sent as unicast messages.
-
-*** The argument list of `dbus-register-signal' has been extended,
-according to the new match rule types of D-Bus.
-
-*** `dbus-init-bus' supports private connections.
-
-*** There is a new function `dbus-setenv'.
-
-** `desktop-path' no longer includes the "." directory.
-Desktop files are now located in ~/.emacs.d by default.
-
-** Dired
-
-*** `dired-do-async-shell-command' executes each file sequentially
-if the command ends in `;' (when operating on multiple files).
-Otherwise, it executes the command on each file in parallel.
-
-*** Typing `M-n' in the minibuffer of `dired-do-chmod', `dired-do-chgrp',
-`dired-do-chown', and `dired-do-touch' yanks the attributes of the
-file at point.
-
-*** When the region is active, `m' (`dired-mark'), `u' (`dired-unmark'),
-`DEL' (`dired-unmark-backward'), and `d' (`dired-flag-file-deletion')
-mark/unmark/flag all files in the active region.
-
-*** The minibuffer default for `=' (`dired-diff') has changed.
-It is now the backup file for the file at point, if one exists.
-In Transient Mark mode the default is the file at the active mark.
-
-*** `M-=' is no longer bound to `dired-backup-diff' in Dired buffers.
-The global binding for `M-=', `count-words-region' is in effect.
-
-** ERC
-
-*** New module "notifications", which can send a notification when you
-receive a private message or your nickname is mentioned.
-
-*** ERC will look up server/channel names via auth-source and use any
-channel keys found.
-
-*** New option `erc-lurker-hide-list', similar to `erc-hide-list', but
-only applies to messages sent by lurkers.
-
-** reStructuredText mode
-
-*** Keybindings (see `C-c C-h'), TAB indentation, filling and auto-filling,
-fontification, comment handling, and customization have all been revised
-and improved.
-
-*** Support for `imenu' and `which-function-mode'.
-
-*** The reStructuredText syntax is more closely covered.
-Sphinx support has been improved.
-
-*** `rst-insert-list' inserts new list or continues existing lists.
-
-*** A negative prefix argument always works for `rst-adjust'.
-
-*** The window configuration is reset after displaying a TOC.
-
-*** The constant `rst-version' describes the rst.el package version.
-
-** Ruby mode
-
-*** Support for percent literals and recognition of regular expressions
-in method calls without parentheses with more methods, including Cucumber
-steps definitions.
-
-*** Improved syntax highlighting and indentation.
-
-*** New command `ruby-toggle-block', bound to `C-c {'.
-
-*** Some non-standard keybindings/commands have been removed:
-
-**** `ruby-electric-brace'; use `electric-indent-mode' instead.
-
-**** `ruby-mark-defun'; use `mark-defun'.
-
-**** `ruby-beginning-of-defun' and `ruby-end-of-defun' are replaced by
-appropriate settings for the variables `beginning-of-defun-function'
-and `end-of-defun-function'.
-
-**** Non-standard keybindings for `backward-kill-word', `comment-region',
-`reindent-then-newline-and-indent' and `newline' have been removed.
-
-** Shell Script mode
-
-*** Pairing of parens/quotes uses `electric-pair-mode' instead of skeleton-pair.
-
-*** `sh-electric-here-document-mode' now controls auto-insertion of here-docs.
-
-*** `sh-use-smie' lets you choose a new indentation and navigation code.
-
-** VHDL mode
-
-*** The free software compiler GHDL is supported (and now the default).
-
-*** Support for the VHDL-AMS packages has been added/updated.
-
-*** Updated to the 2002 revision of the VHDL standard.
-
-*** Accepts \r and \f as whitespace.
-
-** Apropos
-
-*** The faces used by Apropos are now directly customizable.
-These faces are named `apropos-symbol', `apropos-keybinding', and so on;
-see the `apropos' Custom group for details.
-
-*** The old options whose values specified faces to use have been removed
-(i.e. `apropos-symbol-face', `apropos-keybinding-face', `apropos-label-face',
-`apropos-match-face' and `apropos-property-face'.).
-
-** Buffer Menu
-
-*** This package has been rewritten to use Tabulated List mode.
-
-*** Option `Buffer-menu-buffer+size-width' is now obsolete.
-Use `Buffer-menu-name-width' and `Buffer-menu-size-width' instead.
-
-** Calc
-
-*** Algebraic simplification mode is now the default.
-To restrict to the limited simplifications given by the former
-default simplification mode, use `m I'.
-
-** Calendar
-
-*** You can customize the header text that appears above each calendar month.
-See the variable `calendar-month-header'.
-
-*** New LaTeX calendar style, produced by `cal-tex-cursor-week2-summary'.
-
-*** The calendars produced by cal-html include holidays.
-Customize `cal-html-holidays' to change this.
-
-** CEDET
-
-*** The major modes from the parser generators "Bovine" and "Wisent"
-are now properly integrated in Emacs. The file suffixes ".by" and ".wy"
-are in `auto-mode-alist', and the corresponding manuals are included.
-
-*** EDE
-
-**** Menu support for the "Configuration" feature. This allows users to
-choose the active configuration (such as debug or install) from the menu.
-
-**** New command `ede-set' to interactively set project-local variables.
-
-**** Support for compiling, debugging, and running in "generic" projects.
-
-**** Autoconf editing support for M4 macros with complex arguments.
-
-**** Compilation support for the "linux" project type.
-
-**** "simple" projects have been removed; use "generic" projects instead.
-
-*** Semantic
-
-**** Support for parsing #include statements inside a namespace in C/C++.
-
-**** Improved support for 'extern "C"' declarations in C/C++.
-
-**** The ability to ignore more common special C/C++ preprocessor symbols,
-such as '__nonnull' and '__asm'. Add '__cplusplus' macro when parsing C++.
-If available, include cdefs.h as an additional source of preprocessor symbols.
-
-**** Improved C/C++ function pointer parsing.
-
-**** In Python, support for converting imports to include file names.
-
-**** Ability to dynamically determine the Python load path.
-
-**** Support for the Python 'WITH' and 'AT' keywords.
-
-**** Improved tooltip completion.
-
-*** SRecode
-
-**** The SRecode manual is now included.
-
-**** Tag generation supports constructor/destructor settings and system
-include differentiation.
-
-**** Addition of 'Framework' support: Frameworks are specified when a
-particular kind of library (such as Android) is needed in a common language
-mode (like Java).
-
-**** Support for nested templates and let variables override based on priority.
-
-**** Support for merging tables from multiple related modes, such as
-default -> c++ -> arduino.
-
-** Compile has a new option `compilation-always-kill'.
-
-** Customize
-
-*** `custom-reset-button-menu' now defaults to t.
-
-*** Non-option variables are never matched in `customize-apropos' and
-`customize-apropos-options' (i.e., the prefix argument does nothing for
-these commands now).
-
-** Term
-
-*** The variables `term-default-fg-color' and `term-default-bg-color'
-are now deprecated in favor of the customizable face `term'.
-
-*** You can customize how to display ANSI terminal colors and styles
-by customizing the corresponding `term-color-<COLOR>',
-`term-color-underline' and `term-color-bold' faces.
-
-** Tramp
-
-*** The syntax has been extended in order to allow ad-hoc proxy definitions.
-
-*** Remote processes are now also supported on remote MS-Windows hosts.
-
-** URL
-
-*** Structs made by `url-generic-parse-url' have nil `attributes' slot.
-Previously, this slot stored semicolon-separated attribute-value pairs
-appended to some imap URLs, but this is not compatible with RFC 3986.
-So now the `filename' slot stores the entire path and query components,
-and the `attributes' slot is always nil.
-
-*** New function `url-encode-url' for encoding a URI string.
-The `url-retrieve' function now uses this to encode its URL argument,
-in case that is not properly encoded.
-
-** notifications.el supports now version 1.2 of the Notifications API.
-The function `notifications-get-capabilities' returns the supported
-server properties.
-
-** Flymake uses fringe bitmaps to indicate errors and warnings.
-See `flymake-fringe-indicator-position', `flymake-error-bitmap' and
-`flymake-warning-bitmap'.
-
-** The FFAP option `ffap-url-unwrap-remote' can now be a list of strings,
-specifying URL types that should be converted to remote file names at
-the FFAP prompt. The default is now '("ftp").
-
-** New Ibuffer `derived-mode' filter, bound to `/ M'.
-The old binding for `/ M' (filter by used-mode) is now bound to `/ m'.
-
-** New option `mouse-avoidance-banish-position' specifies where the
-`banish' mouse avoidance setting moves the mouse.
-
-** In Perl mode, new option `perl-indent-parens-as-block' causes non-block
-closing brackets to be aligned with the line of the opening bracket.
-
-** In Proced mode, new command `proced-renice' renices marked processes.
-
-** New option `async-shell-command-buffer' specifies the buffer to use
-for a new asynchronous `shell-command' when the default output buffer
-`*Async Shell Command*' is already in use.
-
-** SQL mode has a new option `sql-db2-escape-newlines'.
-If non-nil, newlines sent to the command interpreter will be escaped
-by a backslash. The default does not escape the newlines and assumes
-that the sql statement will be terminated by a semicolon.
-
-** New command `tabulated-list-sort', bound to `S' in Tabulated List mode
-(and modes that derive from it), sorts the column at point, or the Nth
-column if a numeric prefix argument is given.
-
-** `which-func-modes' now defaults to t, so Which Function mode, when
-enabled, applies to all applicable major modes.
-
-** `winner-mode-hook' now runs when the mode is disabled, as well as when
-it is enabled.
-
-** Follow mode no longer works by using advice.
-The option `follow-intercept-processes' has been removed.
-
-** `javascript-generic-mode' is now an obsolete alias for `js-mode'.
-
-** Hooks renamed to avoid obsolete "-hooks" suffix:
-*** semantic-lex-reset-hooks -> semantic-lex-reset-functions
-*** semantic-change-hooks -> semantic-change-functions
-*** semantic-edits-new-change-hooks -> semantic-edits-new-change-functions
-*** semantic-edits-delete-change-hooks -> semantic-edits-delete-change-functions
-*** semantic-edits-reparse-change-hooks -> semantic-edits-reparse-change-functions
-*** semanticdb-save-database-hooks -> semanticdb-save-database-functions
-*** c-prepare-bug-report-hooks -> c-prepare-bug-report-hook
-*** rcirc-sentinel-hooks -> rcirc-sentinel-functions
-*** rcirc-receive-message-hooks -> rcirc-receive-message-functions
-*** rcirc-activity-hooks -> rcirc-activity-functions
-*** rcirc-print-hooks -> rcirc-print-functions
-*** dbus-event-error-hooks -> dbus-event-error-functions
-*** eieio-pre-method-execution-hooks -> eieio-pre-method-execution-functions
-*** checkdoc-style-hooks -> checkdoc-style-functions
-*** checkdoc-comment-style-hooks -> checkdoc-comment-style-functions
-*** archive-extract-hooks -> archive-extract-hook
-*** filesets-cache-fill-content-hooks -> filesets-cache-fill-content-hook
-*** hfy-post-html-hooks -> hfy-post-html-hook
-*** nndiary-request-create-group-hooks -> nndiary-request-create-group-functions
-*** nndiary-request-update-info-hooks -> nndiary-request-update-info-functions
-*** nndiary-request-accept-article-hooks -> nndiary-request-accept-article-functions
-*** gnus-subscribe-newsgroup-hooks -> gnus-subscribe-newsgroup-functions
-
-** Obsolete packages
-
-*** assoc.el
-In most cases, assoc+member+push+delq work just as well.
-And in any case it's just a terrible package: ugly semantics, terrible
-inefficiency, and not namespace-clean.
-*** bruce.el
-*** cust-print.el
-*** ledit.el
-*** mailpost.el
-*** mouse-sel.el
-*** patcomp.el
-
-\f
-* Incompatible Lisp Changes in Emacs 24.3
-
-** Docstrings starting with `*' no longer indicate user options.
-Only variables defined using `defcustom' are considered user options.
-The function `user-variable-p' is now an obsolete alias for
-`custom-variable-p'.
-
-** The return values of `defalias', `defun' and `defmacro' have changed,
-and are now undefined. For backwards compatibility, `defun' and
-`defmacro' currently return the name of the newly defined
-function/macro, but this should not be relied upon.
-
-** `random' by default now returns a different random sequence in
-every Emacs run. Use `(random S)', where S is a string, to set the
-random seed to a value based on S, in order to get a repeatable
-sequence in later calls.
-
-** If the NEWTEXT arg to `replace-match' contains a substring "\?",
-that substring is inserted literally even if the LITERAL arg is
-non-nil, instead of causing an error to be signaled.
-
-** `select-window' now always makes the window's buffer current.
-It does so even if the window was selected before.
-
-** The function `x-select-font' can return a font spec, instead of a
-font name as a string. Whether it returns a font spec or a font name
-depends on the graphical library.
-
-** `face-spec-set' no longer sets frame-specific attributes when the
-third argument is a frame (that usage was obsolete since Emacs 22.2).
-
-** `set-buffer-multibyte' now signals an error in narrowed buffers.
-
-** The CL package's `get-setf-method' function no longer exists.
-Generalized variables are now part of core Emacs Lisp, and implemented
-differently to the way cl.el used to do it. It is not possible to
-define a compatible replacement for `get-setf-method'. See the file
-gv.el for internal details of the new implementation.
-
-** The arguments of `dbus-register-signal' are no longer just strings,
-but keywords or keyword-string pairs. The old argument list will
-still be supported for Emacs 24.x.
-
-** Miscellaneous name changes
-Some Lisp symbols have been renamed to correct their spelling,
-or to be more consistent with standard Emacs terminology.
-
-*** Renamed functions
-**** hangul-input-method-inactivate -> hangul-input-method-deactivate
-**** inactivate-input-method -> deactivate-input-method
-**** quail-inactivate -> quail-deactivate
-**** robin-inactivate -> robin-deactivate
-**** viper-inactivate-input-method -> viper-deactivate-input-method
-**** viper-inactivate-input-method-action ->
- viper-deactivate-input-method-action
-**** ucs-input-inactivate -> ucs-input-deactivate
-
-*** Renamed hooks
-The old hooks are still supported for backward compatibility, but they
-are deprecated and will be removed eventually.
-**** input-method-inactivate-hook -> input-method-deactivate-hook
-**** robin-inactivate-hook -> robin-deactivate-hook
-**** quail-inactivate-hook -> quail-deactivate-hook
-
-*** Renamed variables
-**** follow-deactive-menu -> follow-inactive-menu
-**** inactivate-current-input-method-function ->
- deactivate-current-input-method-function
-
-** Some obsolete functions, variables, and faces have been removed:
-*** `last-input-char', `last-command-char', `unread-command-char'
-*** `facemenu-unlisted-faces'
-*** `rmail-decode-mime-charset'
-*** `iswitchb-read-buffer'
-*** `sc-version', `sc-submit-bug-report'
-*** `set-char-table-default'
-*** `string-to-sequence' (use `string-to-list' or `string-to-vector')
-*** `compile-internal'
-*** `modeline'
-*** `mode-line-inverse-video'
-*** `follow-mode-off-hook'
-*** `cvs-commit-buffer-require-final-newline'
-(use `log-edit-require-final-newline' instead)
-*** `cvs-changelog-full-paragraphs'
-(use `log-edit-changelog-full-paragraphs' instead)
-*** `cvs-diff-ignore-marks', `cvs-diff-buffer-name'
-*** `vc-ignore-vc-files' (use `vc-handled-backends' instead)
-*** `vc-master-templates' (use `vc-handled-backends' instead)
-*** `vc-checkout-carefully'
-
-\f
-* Lisp Changes in Emacs 24.3
-
-** CL-style generalized variables are now in core Elisp.
-`setf' is autoloaded; `push' and `pop' accept generalized variables.
-You can define your own generalized variables using `gv-define-simple-setter',
-`gv-define-setter', etc.
-
-** Emacs tries to macroexpand interpreted (non-compiled) files during load.
-This can significantly speed up execution of non-byte-compiled code,
-but can also bump into previously unnoticed cyclic dependencies.
-These are generally harmless: they will simply cause the macro calls
-to be left for later expansion (as before), but will result in a
-warning ("Eager macro-expansion skipped due to cycle") describing the cycle.
-You may wish to restructure your code so this does not happen.
-
-** New sampling-based Elisp profiler.
-Try M-x profiler-start, do some work, and then call M-x profiler-report.
-When finished, use M-x profiler-stop. The sampling rate can be based on
-CPU time or memory allocations.
-
-** `defun' also accepts a (declare DECLS) form, like `defmacro'.
-The interpretation of the DECLS is determined by `defun-declarations-alist'.
-
-** New macros `setq-local' and `defvar-local'.
-
-** Face underlining can now use a wave.
-
-** `read-regexp' has a new argument HISTORY; the first argument PROMPT
-of `read-regexp' accepts a string ending with a colon and space, and its
-second argument DEFAULTS can be a list of strings accessible via `M-n'
-in the minibuffer ahead of other hard-coded useful regexp-related values.
-More commands use `read-regexp' now to read their regexp arguments.
-
-** Completion
-
-*** New function `completion-table-with-quoting' to handle completion
-in the presence of quoting, such as file completion in shell buffers.
-
-*** New function `completion-table-subvert' to use an existing completion
-table, but with a different prefix.
-
-** Debugger
-
-*** New error type and new function `user-error'.
-These do not trigger the debugger.
-
-*** New option `debugger-bury-or-kill', saying what to do with the
-debugger buffer when exiting debug.
-
-*** Set `debug-on-message' to enter the debugger when a certain
-message is displayed in the echo area. This can be useful when trying
-to work out which code is doing something.
-
-*** New var `inhibit-debugger', automatically set to prevent accidental
-recursive invocations.
-
-** Window handling
-
-*** New command `fit-frame-to-buffer' adjusts the frame height to
-fit the contents.
-
-*** The command `fit-window-to-buffer' can adjust the frame height
-if the new option `fit-frame-to-buffer' is non-nil.
-
-*** New macro `with-temp-buffer-window', similar to
-`with-output-to-temp-buffer'.
-
-*** `temp-buffer-resize-mode' no longer resizes windows that have been
-reused.
-
-*** New option `switch-to-buffer-preserve-window-point' to restore a
-window's point when switching buffers.
-
-*** New display action alist entries `window-height' and `window-width'
-specify the size of new windows created by `display-buffer'.
-
-*** New display action alist entry `pop-up-frame-parameters', if
-non-nil, specifies frame parameters to give any newly-created frame.
-
-*** New display action alist entry `inhibit-switch-frame', if non-nil,
-tells display action functions to avoid changing which frame is
-selected.
-
-*** New display action alist entry `previous-window', if non-nil,
-specifies window to reuse in `display-buffer-in-previous-window'.
-
-*** New display action functions `display-buffer-below-selected',
-and `display-buffer-in-previous-window'.
-
-*** The functions `get-lru-window', `get-mru-window' and `get-largest-window'
-now accept a third argument to avoid choosing the selected window.
-
-*** Additional values recognized for option `window-combination-limit'.
-
-*** The following variables are obsolete, as they can be replaced by
-appropriate entries in the `display-buffer-alist' function introduced
-in Emacs 24.1:
-**** `dired-shrink-to-fit'
-**** `display-buffer-reuse-frames'
-**** `display-buffer-function'
-**** `special-display-buffer-names'
-**** `special-display-frame-alist'
-**** `special-display-function'
-**** `special-display-regexps'
-
-** Time
-
-*** `current-time-string' no longer requires that its argument's year
-must be in the range 1000..9999. It now works with any year supported
-by the underlying C implementation.
-
-*** `current-time' now returns extended-format time stamps
-(HIGH LOW USEC PSEC), where the new PSEC slot specifies picoseconds.
-PSEC is typically a multiple of 1000 on current machines. Other
-functions that use this format, such as `file-attributes' and
-`format-time-string', have been changed accordingly. Old-format time
-stamps are still accepted.
-
-*** The format of timers in `timer-list' and `timer-idle-list' is now
-[TRIGGERED-P HI-SECS LO-SECS USECS REPEAT-DELAY FUNCTION ARGS IDLE-DELAY PSECS].
-The PSECS slot is new, and uses picosecond resolution. It can be
-accessed via the new `timer--psecs' accessor.
-
-*** Last-modified time stamps in undo lists now are of the form
-(t HI-SECS LO-SECS USECS PSECS) instead of (t HI-SECS . LO-SECS).
-
-** EIEIO
-
-*** Improved security when handling persistent objects:
-
-**** `eieio-persistent-read' now features optional arguments for specifying
-the class to load, as well as a flag stating whether subclasses are allowed;
-if provided, other classes will be rejected by the reader. For
-compatibility with existing code, if the class is omitted only a
-warning is issued.
-
-**** New specialized reader for pulling in classes and signaling errors
-without evaluation of suspicious code.
-
-**** All slots that contain objects must have a :type. Slots with lists
-of objects must use a new type predicate for a list of an object type.
-
-*** Support for `find-function' and similar utilities, through the addition
-of filename support to generated symbols.
-
-** Floating point functions now always return special values like NaN,
-instead of signaling errors, if given invalid args; e.g., (log -1.0).
-Previously, they returned NaNs on some platforms but signaled errors
-on others. The affected functions are acos, asin, tan, exp, expt,
-log, log10, sqrt, and mod.
-
-** New fringe bitmap `exclamation-mark'.
-
-** Miscellaneous changes to special forms and macros
-
-*** `defun' and `defmacro' are now macros rather than special forms.
-
-*** `kbd' is now a function rather than a macro.
-
-** Miscellaneous new functions
-
-*** `set-temporary-overlay-map' sets up a temporary keymap that
-takes precedence over most other maps for a short while (normally one key).
-
-*** `autoloadp' tests if its argument is an autoloaded object.
-
-*** `autoload-do-load' performs the autoloading operation.
-
-*** `buffer-narrowed-p' tests if the buffer is narrowed.
-
-*** `file-name-base' returns a file name sans directory and extension.
-
-*** `function-get' fetches a function property, following aliases.
-
-*** `posnp' tests if an object is a `posn'.
-
-*** `system-users' returns the user names on the system.
-
-*** `system-groups' returns the group names on the system.
-
-*** `tty-top-frame' returns the topmost frame of a text terminal.
-
-** The following functions and variables are obsolete:
-*** `automount-dir-prefix' (use `directory-abbrev-alist')
-*** `buffer-has-markers-at'
-*** `macro-declaration-function' (use `macro-declarations-alist')
-*** `window-system-version' (provides no useful information)
-*** `dired-pop-to-buffer' (use `dired-mark-pop-up')
-*** `query-replace-interactive'
-*** `font-list-limit' (has had no effect since Emacs < 23)
-
-\f
-* Changes in Emacs 24.3 on Non-Free Operating Systems
-
-** Cygwin builds can use the native MS Windows user interface.
-Pass `--with-w32' to configure. The default remains the X11 interface.
-
-** Two new functions are available in Cygwin builds:
-`cygwin-convert-file-name-from-windows' and
-`cygwin-convert-file-name-to-windows'. These functions allow Lisp
-code to access the Cygwin file-name mapping machinery to convert
-between Cygwin and Windows-native file and directory names.
-
-** When invoked with the -nw switch to run on the Windows text-mode terminal,
-Emacs now supports `mouse-highlight', help-echo (in the echo area), and
-`mouse-autoselect-window'.
-
-** On MS Windows Vista and later Emacs now supports symbolic links.
-
-** On MS Windows, you can pass `--without-libxml2' to configure.bat to omit
-support for libxml2, even if its presence is detected.
-
-** On Mac OS X, the Nextstep port requires OS X 10.4 or later.
-
-** On Mac OS X, configure no longer automatically adds the Fink "/sw"
-directories to the search path. You must add them yourself if you want them.
-
-\f
-* Changes in Emacs 24.2
-
-** This is mainly a bug-fix release.
-
-\f
-* Installation Changes in Emacs 24.1
-
-** Emacs can be compiled with Gtk+ 3.0 if you pass --with-x-toolkit=gtk3
-to configure. Note that other libraries used by Emacs, RSVG and GConf,
-also depend on Gtk+. You can disable them with --without-rsvg and
---without-gconf.
-
-** Emacs can be compiled with GnuTLS support.
-This happens by default if a suitably recent version of the library is
-found at build time. To prevent this, use the configure option
-`--without-gnutls'. See below for GnuTLS features.
-
-** Emacs can be compiled with SELinux support.
-This happens by default if a suitably recent version of the library is
-found at build time. To prevent this, use the configure option
-`--without-selinux'. See below for SELinux features.
-
-** Emacs can be compiled with ImageMagick support.
-This happens by default if a suitably recent version of the library is
-found at build time. To prevent this, use the configure option
-`--without-imagemagick'. See below for ImageMagick features.
-This feature is not available for the Nextstep or MS ports.
-
-** Emacs can be compiled with libxml2 support.
-This happens by default if a suitably recent version of the library is
-found at build time. To prevent this, use the configure option
-`--without-xml2'. See below for libxml2 features.
-
-** By default, the installed Info and man pages are compressed.
-You can disable this by configuring --without-compress-info.
-
-** New configure option --with-wide-int.
-With it, Emacs integers typically have 62 bits, even on 32-bit machines.
-On 32-bit hosts, this raises the limit on buffer sizes from about 512 MiB
-to about 2 GiB.
-
-** New configure options: --with-mmdf, --with-mail-unlink, --with-mailhost.
-These provide no new functionality, they just remove the need to edit
-lib-src/Makefile by hand in order to use the associated features.
-
-** New configure option --enable-use-lisp-union-type.
-This is only useful for Emacs developers to debug certain types of bugs.
-This is not a new feature; only the configure flag is new.
-
-** The standalone programs digest-doc and sorted-doc are removed.
-Emacs now uses Lisp commands `doc-file-to-man' and `doc-file-to-info'.
-
-** The standalone program `fakemail' is removed.
-If you need it, feedmail.el provides a superset of the functionality.
-
-\f
-* Startup Changes in Emacs 24.1
-
-** The --unibyte, --multibyte, --no-multibyte, and --no-unibyte
-command line arguments, and the EMACS_UNIBYTE environment variable, no
-longer have any effect. (They were declared obsolete in Emacs 23.)
-
-** New command line option `--no-site-lisp' removes site-lisp directories
-from load-path. -Q now implies this. This option does not affect the
-EMACSLOADPATH environment variable (and hence has no effect for
-Nextstep builds).
-
-\f
-* Changes in Emacs 24.1
-
-** Completion
-
-*** Many packages now use the `completion-at-point' command,
-rather than implementing separate completion commands.
-
-*** `completion-at-point' now handles tags and semantic completion.
-
-*** Completion in a non-minibuffer now tries to detect the end of completion
-and pops down the *Completions* buffer accordingly.
-
-*** New option `completion-cycle-threshold' allows completion cycling.
-
-*** New option `completion-category-overrides' for overriding the
-default completion style in certain circumstances.
-
-*** New completion style `substring'.
-
-*** Completion of buffer names uses `substring' completion by default.
-
-*** The option `widget-complete-field' has been removed.
-
-** Mail changes
-
-*** The first time you try sending mail, Emacs asks for a mail method.
-This is implemented by a new default for `send-mail-function', which
-is `sendmail-query-once'. This offers to use the smtpmail package, or
-to use the old defaults relying on external mail facilities
-(`sendmail-send-it' on GNU/Linux and other Unix-like systems, and
-`mailclient-send-it' on Windows).
-
-*** Typing `C-c m' in the buffer made by `M-x report-emacs-bug'
-transfers the report to your desktop's preferred mail client, if there
-is one. This uses either the "xdg-email" utility, or Mac OS's "open"
-command.
-
-*** See Changes in Specialized Modes and Packages for SMTPmail changes
-and Mail mode changes
-
-** Emacs server and client changes
-
-*** New option `server-port' specifies the port for TCP Emacs servers.
-
-*** New emacsclient argument -q/--quiet suppresses some status messages.
-
-*** New emacsclient argument --frame-parameters specifies the frame
-parameters of any newly-created graphical frame.
-
-*** If emacsclient shuts down due to Emacs signaling an error,
-its exit status is 1.
-
-*** New emacsclient argument --parent-id ID.
-This opens a client frame in parent X window ID, via XEmbed, similar
-to the --parent-id argument to Emacs.
-
-** Internationalization changes
-
-*** Emacs now supports display and editing of bidirectional text.
-Right-to-left (RTL) scripts, such as Arabic, Farsi, and Hebrew, are
-displayed in the correct visual order as expected by users of those
-scripts. The display reordering is a "full bidirectionality" class
-implementation of the Unicode Bidirectional Algorithm (UBA). Buffers
-with no RTL text should look exactly the same as before.
-
-**** New buffer-local variable `bidi-display-reordering'.
-To disable display reordering in a buffer, change this to nil.
-
-**** New buffer-local variable `bidi-paragraph-direction'.
-If nil (the default), Emacs determines the base direction of each
-paragraph from its text, as specified by the UBA. Setting the value
-to `right-to-left' or `left-to-right' forces a base direction on each
-paragraph.
-
-Paragraphs with right-to-left base direction are displayed starting at
-the right window edge.
-
-*** Enhanced support for characters with no glyphs in available fonts,
-or, on text terminals, characters that cannot be encoded by the
-terminal coding system. The new option `glyphless-char-display-control'
-specifies how to display them: as a hexadecimal code in a box, a thin
-1-pixel space, an empty box, etc.
-
-*** New input methods for Farsi and Bulgarian
-(farsi-isiri-9147, farsi-transliterate-banan, bulgarian-alt-phonetic).
-
-*** `nobreak-char-display' now also highlights Unicode hyphen chars
-(U+2010 and U+2011).
-
-*** New Hebrew translation of the Emacs Tutorial.
-Type `C-u C-h t' to choose it in case your language setup doesn't
-automatically select it.
-
-** An Emacs Lisp package manager is now included.
-This is a convenient way to download and install additional packages,
-from a package repository at http://elpa.gnu.org.
-
-*** M-x list-packages shows a list of packages, which can be
-selected for installation.
-
-*** New command `describe-package', bound to `C-h P'.
-
-*** By default, all installed packages are loaded automatically when
-Emacs starts up. To disable this, set `package-enable-at-startup' to
-nil. To specify the packages to load, customize `package-load-list'.
-
-** Custom theme changes
-
-*** New command `M-x customize-themes', which provides a convenient
-interface for enabling and disabling Custom themes.
-
-*** New option `custom-theme-load-path' is the load path for themes.
-Emacs no longer looks for Custom themes in `load-path'. The default
-value of `custom-theme-load-path' says to look for themes in
-`custom-theme-directory', followed by a subdirectory of
-`data-directory' named "themes/", which contains a small selection of
-built-in Custom themes.
-
-*** New option `custom-safe-themes' records known-safe theme files.
-If a theme is not in this list, Emacs queries before loading it, and
-offers to save the theme to `custom-safe-themes' automatically. By
-default, all themes included in Emacs are treated as safe.
-
-** Improved GTK integration
-
-*** GTK scroll-bars are now placed on the right by default.
-The function `set-scroll-bar-mode' can change this.
-
-*** GTK tool bars can have just text, just images or images and text.
-Customize `tool-bar-style' to choose the style. On a Gnome desktop,
-the default is taken from desktop settings.
-
-*** GTK tool bars can be placed on any edge of the frame.
-The frame-parameter tool-bar-position controls this. It takes the
-values top, left, right or bottom. The Options => Show/Hide menu has
-entries for this.
-
-*** The default colors for selected text (the `region' face) are taken
-from the GTK theme when Emacs is built with GTK.
-
-*** Emacs uses GTK tooltips by default if built with GTK.
-You can disable this by changing `x-gtk-use-system-tooltips' to nil.
-
-** Graphical interface changes
-
-*** On graphical displays, the mode-line no longer ends in dashes.
-Also, the first dash (which does not indicate anything) is just
-displayed as a space.
-
-*** `menu-bar-select-buffer-function' lets you choose another operation
-instead of `switch-to-buffer' when selecting an item in the Buffers menu.
-
-*** Lucid menus and dialogs can display antialiased fonts if Emacs is
-built with Xft. These fonts can be set via X resources, for example:
-Emacs.pane.menubar.font: Courier-12
-
-** Exiting changes
-
-*** Emacs now calls `kill-emacs' if it receives SIGTERM or SIGHUP,
-or if it receives a SIGINT signal in batch mode.
-
-*** `kill-emacs-hook' is now also run in batch mode.
-Third-party code which adds to `kill-emacs-hook' should check if they
-do the right thing in batch mode.
-
-** Scrolling changes
-
-*** New scrolling commands `scroll-up-command' and `scroll-down-command'
-(bound to C-v/[next] and M-v/[prior]) do not signal errors at top/bottom
-of buffer at first key-press (instead they move to top/bottom of buffer)
-when `scroll-error-top-bottom' is non-nil.
-
-*** New option `scroll-error-top-bottom' (see above).
-
-*** New scrolling commands `scroll-up-line' and `scroll-down-line'
-scroll a line instead of full screen.
-
-*** New property `scroll-command' should be set on a command's symbol to
-define it as a scroll command affected by `scroll-preserve-screen-position'.
-
-*** If you customize `scroll-conservatively' to a value greater than 100,
-Emacs will never recenter point in the window when it scrolls due to
-cursor motion commands or commands that move point (e.f., `M-g M-g').
-Previously, you needed to use `most-positive-fixnum' as the value of
-`scroll-conservatively' to achieve the same effect.
-
-*** "Aggressive" scrolling now honors the scroll margins.
-If you customize `scroll-up-aggressively' or
-`scroll-down-aggressively' and move point off the window, Emacs now
-scrolls the window so as to avoid positioning point inside the scroll
-margin.
-
-** Basic SELinux support has been added.
-This requires Emacs to be linked with libselinux at build time.
-
-*** Emacs preserves the SELinux file context when backing up.
-Also, the function `copy-file' has an extra optional argument for
-preserving SELinux context, and the return value of `backup-buffer'
-now includes the SELinux context.
-
-*** New functions `file-selinux-context' and `set-file-selinux-context'
-get and set the SELinux context of a file.
-
-** Trash changes
-
-*** `delete-by-moving-to-trash' now only affects commands that specify
-trashing. This avoids inadvertently trashing temporary files.
-
-*** Calling `delete-file' or `delete-directory' with a prefix argument
-now forces true deletion, regardless of `delete-by-moving-to-trash'.
-
-** File- and directory-local variable changes
-
-*** You can stop directory local vars from applying to subdirectories.
-Add an element (subdirs . nil) to the alist portion of any variables
-settings to indicate that the section should not apply to
-subdirectories.
-
-*** Directory local variables can apply to some file-less buffers.
-Affected modes include dired, vc-dir, and log-edit. For example,
-adding "(diff-mode . ((mode . whitespace)))" to .dir-locals.el will
-turn on `whitespace-mode' for *vc-diff* buffers. Modes should call
-`hack-dir-local-variables-non-file-buffer' to support this.
-
-*** Using "mode: MINOR-MODE" to enable a minor mode is deprecated.
-Instead, use "eval: (minor-mode 1)".
-
-*** The variable `inhibit-first-line-modes-regexps' has been renamed
-to `inhibit-local-variables-regexps'. As the name suggests, it now
-applies to ALL file local variables, not just -*- lines. The
-associated `inhibit-first-line-modes-suffixes' has been renamed in the
-corresponding way.
-
-** Window changes
-
-*** The `quit-window' command now restores the last buffer displayed
-in the quitted window.
-
-*** Resizing an Emacs frame now preserves proportional window sizes,
-modulo restrictions like window minimum sizes and fixed-size windows.
-
-*** The behavior of `display-buffer' is now customizable in detail.
-
-**** New option `display-buffer-base-action' specifies a list of
-user-determined display "actions" (functions and optional arguments
-for choosing the displaying window).
-
-This takes precedence over the default display action, which is
-specified by `display-buffer-fallback-action'.
-
-**** New option `display-buffer-alist' maps buffer name regexps to
-display actions, taking precedence over `display-buffer-base-action'.
-
-*** New option `window-combination-limit'.
-The new option `window-combination-limit' allows to return the space
-obtained for resizing or creating a window more reliably to the window
-from which such space was obtained.
-
-*** New option `window-combination-resize'.
-The new option `window-combination-resize' allows to split a window that
-otherwise cannot be split because it's too small by stealing space from
-other windows in the same combination. Subsequent resizing or deletion
-of the window will resize all windows in the same combination as well.
-
-*** New option `frame-auto-hide-function' lets you choose between
-iconifying or deleting a frame when burying a buffer in a dedicated
-frame, or quitting a window showing a buffer in a frame of its own.
-
-*** New commands `maximize-window' and `minimize-window'.
-These maximize and minimize the size of a window within its frame.
-
-*** New commands `switch-to-prev-buffer' and `switch-to-next-buffer'.
-These functions allow to navigate through the live buffers that have
-been shown in a specific window.
-
-** Minibuffer changes
-
-*** The inactive minibuffer has its own major mode `minibuffer-inactive-mode'.
-This is handy for minibuffer-only frames, and is also used for the feature
-where mouse-1 pops up *Messages*"', which can now easily be changed.
-
-*** Minibuffers set `truncate-lines' to nil.
-If you want to change the value to something else, you could use
-for example `minibuffer-setup-hook'.
-
-** `auto-mode-case-fold' is now enabled by default.
-
-** `backup-by-copying-when-mismatch' now defaults to t.
-
-** New basic faces `error', `warning', `success'.
-These are used to highlight text indicating failure, caution or
-successful operation.
-
-** New option `list-colors-sort' defines the color sort order
-for `list-colors-display'.
-
-** The variable `focus-follows-mouse' now always defaults to nil.
-
-\f
-* Editing Changes in Emacs 24.1
-
-** Search changes
-
-*** C-y in Isearch is now bound to `isearch-yank-kill', instead of
-`isearch-yank-line'.
-
-*** M-y in Isearch is now bound to `isearch-yank-pop', instead of
-`isearch-yank-kill'.
-
-*** M-s C-e in Isearch is now bound to `isearch-yank-line'.
-
-** New commands `count-words-region' and `count-words'.
-
-*** M-= is bound to `count-words-region', not `count-lines-region'.
-The `count-words-region' command, when called interactively, reports
-the number of lines, words, and characters in the region. It is a
-superset of the old `count-lines-region', which is now an obsolete
-alias for it.
-
-** The command `just-one-space' (M-SPC), if given a negative argument,
-also deletes newlines around point.
-
-** Deletion changes
-
-*** New option `delete-active-region'.
-If non-nil, [delete] and DEL delete the region if it is active and no
-prefix argument is given. If set to `kill', those commands kill
-instead.
-
-*** New command `delete-forward-char', bound to [delete].
-This is meant for interactive use, and obeys `delete-active-region'.
-The command `delete-char' does not obey `delete-active-region'.
-
-*** `delete-backward-char' is now a Lisp function.
-Apart from obeying `delete-active-region', its behavior is unchanged.
-However, the byte compiler now warns if it is called from Lisp; Lisp
-callers should use delete-char with a negative argument instead.
-
-*** The option `mouse-region-delete-keys' has been deleted.
-
-** Selection changes.
-
-The default handling of clipboard and primary selections has been
-changed to conform with modern X applications. In short, most
-commands for killing and yanking text now use the clipboard, while
-mouse commands use the primary selection.
-
-In the following, we provide a list of these changes, followed by a
-list of steps to get the old behavior back if you prefer that.
-
-*** `select-active-regions' now defaults to t.
-Merely selecting text (e.g. with drag-mouse-1) no longer puts it in
-the kill ring. The selected text is put in the primary selection, if
-the system possesses a separate primary selection facility (e.g. X).
-
-**** `select-active-regions' also accepts a new value, `only'.
-This means to only set the primary selection for temporarily active
-regions (usually made by mouse-dragging or shift-selection);
-"ordinary" active regions, such as those made with C-SPC followed by
-point motion, do not alter the primary selection.
-
-**** `mouse-drag-copy-region' now defaults to nil.
-
-*** mouse-2 is now bound to `mouse-yank-primary'.
-This pastes from the primary selection, ignoring the kill-ring.
-Previously, mouse-2 was bound to `mouse-yank-at-click'.
-
-*** `x-select-enable-clipboard' now defaults to t on all platforms.
-
-*** `x-select-enable-primary' now defaults to nil.
-Thus, commands that kill text or copy it to the kill-ring (such as
-M-w, C-w, and C-k) also use the clipboard---not the primary selection.
-
-**** The "Copy", "Cut", and "Paste" items in the "Edit" menu are now
-exactly equivalent to M-w, C-w, and C-y respectively.
-
-**** Note that on MS-Windows, `x-select-enable-clipboard' was already
-non-nil by default, as Windows does not support the primary selection
-between applications.
-
-*** To return to the previous behavior, do the following:
-
-**** Change `select-active-regions' to nil.
-**** Change `mouse-drag-copy-region' to t.
-**** Change `x-select-enable-primary' to t (on X only).
-**** Change `x-select-enable-clipboard' to nil.
-**** Bind `mouse-yank-at-click' to mouse-2.
-
-*** Support for X cut buffers has been removed.
-
-*** X clipboard managers are now supported.
-To inhibit this, change `x-select-enable-clipboard-manager' to nil.
-
-** New command `C-x r N' (`rectangle-number-lines') numbers the lines
-in the current rectangle. With a prefix argument, this prompts for a
-number to count from and for a format string.
-
-** `redisplay-dont-pause' now defaults to t.
-This makes Emacs feel more responsive to editing commands that arrive
-at high rate, e.g. if you lean on some key, because stopping redisplay
-in the middle (when this variable is nil) forces more expensive
-updates later on, and Emacs appears to be unable to keep up.
-
-** The behavior of <TAB> for active regions in Text mode has changed.
-In Text and related modes, typing <TAB> (`indent-for-tab-command')
-when the region is active causes Emacs to indent all the lines in the
-region, aligning them with the line previous to the first line in the
-region (or with the left margin if there is no previous line).
-
-** When `occur' is called with a prefix argument, matching strings are
-collected into the `*Occur*' buffer without line numbers. If there
-are parenthesized subexpressions in the specified regexp, `occur'
-reads replacement text that may contain \\& and \\N whose convention
-follows `replace-match'.
-
-\f
-* Changes in Specialized Modes and Packages in Emacs 24.1
-
-** Archive Mode has basic support for browsing and updating 7z archives.
-
-** BibTeX mode
-
-*** BibTeX mode now supports biblatex.
-Use the variable `bibtex-dialect' to select different BibTeX dialects.
-`bibtex-entry-field-alist' is now an obsolete alias for
-`bibtex-BibTeX-entry-alist'.
-
-*** New command `bibtex-search-entries', bound to C-c C-a.
-
-*** New `bibtex-entry-format' option `sort-fields', disabled by default.
-
-*** New variable `bibtex-search-entry-globally'.
-
-** Browse-url
-
-*** New option `browse-url-mailto-function' specifies how to handle "mailto:"s.
-
-*** The default browser used by the package is now the "xdg-open" program,
-on platforms that support it. This calls your desktop's preferred browser.
-
-** Calc
-
-*** Support for musical notes.
-
-*** Support for logarithmic units.
-
-*** No longer uses the tex prefix for TeX specific unit names when
-using TeX or LaTeX mode.
-
-*** New option to highlight selections using faces.
-
-*** `calc-histogram' has the option of using a vector to determine the bins.
-
-*** New "O" option prefix.
-
-*** Use the "O" prefix to "d r" (`calc-radix') to turn on twos-complement mode.
-
-** Calendar, Diary, and Appt
-
-*** Diary entries can contain non-printing "comments".
-See the variable `diary-comment-start'.
-
-*** Appointments can specify their individual warning times.
-See the variable `appt-warning-time-regexp'.
-
-*** The function specified by `appt-disp-window-function' may be passed
-lists of arguments if multiple appointments are due at similar times.
-If you are using a custom function for this, you should update it.
-
-*** New function `diary-hebrew-birthday'.
-
-*** Elements of `calendar-day-abbrev-array' and `calendar-month-abbrev-array'
-may no longer be nil, but must all be strings.
-
-*** The obsolete (since Emacs 22.1) method of enabling the appt
-package by adding `appt-make-list' to `diary-hook' has been removed.
-Use `appt-activate' instead.
-
-*** Some appt variables (obsolete since Emacs 22.1) have been removed:
-appt-issue-message (use the function appt-activate)
-appt-visible/appt-msg-window (use the variable appt-display-format)
-
-*** Some diary function aliases (obsolete since Emacs 22.1) have been removed:
-view-diary-entries, list-diary-entries, show-all-diary-entries
-
-** CC Mode
-
-*** New feature to "guess" the style in an existing buffer.
-The main entry point is M-x c-guess.
-
-*** Java Mode now supports Java 5.0 (Tiger) and 6 (Mustang).
-
-*** `c-beginning-of-defun' and `c-end-of-defun' now respect nested scopes.
-Thus C-M-a will, by default, go to the beginning of the immediate function,
-not the top level.
-
-*** "Macros with semicolons" can be registered for correct indentation.
-Where such a macro ends a line (no semicolon) the next statement is no longer
-parsed as a statement continuation.
-
-** Comint and modes derived from it use the standard completion code.
-
-** Compilation mode
-
-*** Compilation mode can be used without Font Lock mode.
-`compilation-parse-errors-function' is now obsolete.
-
-*** New variable `compilation-filter-start', which is bound while
-`compilation-filter-hook' runs. It records the start position of the
-text inserted by `compilation-filter'.
-
-*** `compilation-error-screen-columns' and `compilation-first-column'
-are obeyed in the editing buffer. So programming language modes can
-set them, whereas previously only the value in the *Compilation*
-buffer was used.
-
-** Customize
-
-*** Customize buffers now contain a search field.
-The search is performed using `customize-apropos'.
-To turn off the search field, set `custom-search-field' to nil.
-
-*** Options in customize group buffers start out hidden if not customized.
-Use the arrow to the left of the option name to toggle visibility.
-
-*** custom-buffer-sort-alphabetically now defaults to t.
-
-*** The color widget now has a "Choose" button, which allows you to
-choose a color via `list-colors-display'.
-
-** D-Bus
-
-*** It is now possible to access buses other than the default system
-or session bus.
-
-*** The `dbus-register-method' and `dbus-register-property' functions
-optionally do not register names.
-
-*** The new function `dbus-register-service' registers a known service
-name on a D-Bus without also registering a property or a method.
-
-** Dired-x
-
-*** C-x C-j (`dired-jump') and C-x 4 C-j (`dired-jump-other-window'),
-if called with a prefix argument, read a file name from the minibuffer
-instead of using the current buffer.
-
-*** The "dired local variables" feature of Dired-x is obsolete.
-The standard directory local variables feature replaces it.
-
-** ERC changes
-
-*** New options `erc-autojoin-timing' and `erc-autojoin-delay',
-controlling attempts to autojoin a channel.
-
-*** New variable `erc-coding-system-precedence': If we use `undecided'
-as the server coding system, this variable will then be consulted.
-The default is to decode strings that can be decoded as utf-8 as
-utf-8, and do the normal `undecided' decoding for the rest.
-
-** Eshell changes
-
-*** The default value of `eshell-directory-name' has changed
-to be an "eshell" directory in `user-emacs-directory'.
-The old "~/.eshell/" directory is still used if it exists, though.
-
-** gdb-mi
-
-*** The M-x gdb command now uses the GDB Machine Interface protocol.
-It now supports multithread non-stop debugging and simultaneous
-debugging of several threads.
-
-** Image mode
-
-*** RET (`image-toggle-animation') toggles animation, if applicable.
-Animation plays once, unless the option `image-animate-loop' is non-nil.
-
-** Info
-
-*** New command M-x info-display-manual displays a named Info manual.
-If that manual is already visited in some Info buffer, it displays
-that buffer. (This is handy if you have many manuals in many *info*
-buffers, and don't remember the name of the buffer visiting the manual
-you want to consult.) Otherwise, it loads and displays the manual.
-
-*** `e' is now bound to `end-of-buffer' rather than to `Info-edit'.
-This is for compatibility with the stand-alone Info reader program,
-and also because `Info-edit' is a rarely used command that is disabled
-by default.
-
-** Mail mode changes (not Message mode)
-
-*** New command M-x mail-add-attachment for adding MIME attachments
-
-*** The command M-x mail-attach-file was renamed to M-x mail-insert-file.
-(Its name is misleading, since it has nothing to do with MIME
-attachments.) The old name is now an obsolete alias to the new name.
-
-** MH-E has been updated to MH-E version 8.3.1.
-See MH-E-NEWS for details.
-
-** Modula-2 mode provides auto-indentation.
-
-** mpc.el: Can use pseudo tags of the form tag1|tag2 as a union of two tags.
-
-** nXML mode no longer binds C-RET to `nxml-complete'.
-Completion is now performed via `completion-at-point', bound to C-M-i
-or M-TAB. If `nxml-bind-meta-tab-to-complete-flag' is non-nil (the
-default), this performs tag completion.
-
-** Org mode has been updated to version 7.8.09.
-See ORG-NEWS for details.
-
-** Prolog mode has been completely revamped, with lots of additional
-functionality such as more intelligent indentation, electricity,
-support for more variants, including Mercury, and a lot more.
-
-** Rmail
-
-*** The command `rmail-epa-decrypt' decrypts OpenPGP data
-in the Rmail incoming message.
-
-*** The variable `rmail-message-filter' no longer has any effect.
-This change was made in Emacs 23.1 but was not advertised at the time.
-Try using `rmail-show-message-hook' instead.
-
-** Shell mode
-
-*** M-x shell prompts for the shell path name if the default directory
-is a remote file name and neither the environment variable $ESHELL nor
-the variable `explicit-shell-file-name' is set.
-
-*** TAB is now bound to the standard `completion-at-point' command,
-which now implements the pcomplete rules for shell command completion.
-
-** SMTPmail
-
-*** SMTPmail now uses encrypted connections (via STARTTLS) by default
-if the mail server supports them. This uses either built-in GnuTLS
-support, or the starttls.el library. Customize `smtpmail-stream-type'
-to change this.
-
-*** The variable `smtpmail-auth-credentials' has been removed.
-By default, the information is now stored in the file ~/.authinfo.
-This was the default value of smtpmail-auth-credentials. If you had
-customized smtpmail-auth-credentials to a list of user names and
-passwords, those settings are not used. During your first connection
-to the smtp server, Emacs will prompt for the user name and password,
-and offer to save them to ~/.authinfo. Or you can manually copy the
-credentials to ~/.authinfo. For example, if you had
-
- (setq smtpmail-auth-credentials
- '(("mail.example.org" 25 "jim" "s!cret")))
-
-then the equivalent line in ~/.authinfo would be
-
- machine mail.example.org port 25 login jim password s!cret
-
-See the auth-source manual for more information, e.g. on encrypting
-the credentials file.
-
-*** The variable `smtpmail-starttls-credentials' has been removed.
-If you had that set, you need to put
-
- machine smtp.whatever.foo port 25 key "~/.my_smtp_tls.key" cert "~/.my_smtp_tls.cert"
-
-in your ~/.authinfo file instead.
-
-*** SMTPmail defaults to using the address in the From: header as the
-SMTP MAIL FROM envelope. To override this, set `mail-envelope-from'
-to the address you wish to use instead.
-
-** SQL mode
-
-*** New options `sql-port', `sql-connection-alist', `sql-send-terminator',
-and `sql-oracle-scan-on'.
-
-*** New options controlling prompting for login parameters.
-Each supported product has a custom variable `sql-*-login-params',
-which is a list of the parameters to be prompted for before a
-connection is established.
-
-*** The command `sql-product-interactive' now takes a prefix argument,
-which causes it to prompt for an SQL product.
-
-*** Product-specific SQL interactive commands now take prefix arguments.
-These commands (`sql-sqlite', `sql-postgres', `sql-mysql', etc.),
-given a prefix argument, prompt for a name for the SQL interactive
-buffer. This reduces the need for calling `sql-rename-buffer'.
-
-*** SQL interactive modes suppress command continuation prompts, and
-replace tabs with spaces. The first change impacts multiple line SQL
-statements entered with C-j between each line, statements yanked into
-the buffer and statements sent with `sql-send-*' functions. The
-second prevents the MySQL and Postgres interpreters from listing
-object name completions when sent text via `sql-send-*' functions.
-
-*** New command `sql-connect' starts a predefined SQLi session,
-using the login parameters from `sql-connection-alist'.
-
-*** New "Save Connection" menu item in SQLi buffers.
-This gathers the login params specified for the SQLi session, if it
-was not started by a connection, and saves them as a new connection.
-
-*** New commands for listing database objects and details:
-sql-list-all and sql-list-table.
-
-*** An API for manipulating SQL product definitions has been added.
-
-** TeX modes
-
-*** latex-electric-env-pair-mode keeps \begin..\end matched on the fly.
-
-** Tramp
-
-*** New inline access method "ksu" (kerberized su).
-
-*** The following access methods are discontinued: "ssh1_old",
-"ssh2_old", "scp1_old", "scp2_old", "imap", "imaps" and "fish".
-
-*** The user option `remote-file-name-inhibit-cache' controls whether
-remote file attributes are cached for better performance.
-
-*** The option `ange-ftp-binary-file-name-regexp' has changed its
-default value to "".
-
-*** Handlers for `file-selinux-context' and `set-file-selinux-context'
-for remote machines which support SELinux.
-
-** New function `url-queue-retrieve', which behaves like url-retrieve,
-but with limits (`url-queue-parallel-processes', `url-queue-timeout') on
-the degree of parallelism.
-
-** VC and related modes
-
-*** Support for pulling on distributed version control systems.
-The command C-x v + (`vc-pull') runs a "pull" operation, if it is
-supported (currently with Bzr, Git, and Mercurial), to update the
-current branch and working tree. A prefix argument means to prompt
-the user for specifics, e.g. a pull location.
-
-*** `vc-update' is now an alias for `vc-pull'.
-
-*** Support for merging on distributed version control systems.
-The command C-x v m (`vc-merge') now runs a "merge" operation, if it
-is supported (currently with Bzr, Git, and Mercurial), to merge
-changes from another branch into the current one. It prompts for
-specifics, e.g. a merge source.
-
-*** New option `vc-revert-show-diff' controls whether `vc-revert'
-shows a diff while querying the user. It defaults to t.
-
-*** Log entries in some Log View buffers can be toggled to display a
-longer description by typing RET (log-view-toggle-entry-display).
-This is currently supported for Bzr, Git, and Mercurial (to support
-another backend, define a `log-view-expanded-log-entry-function').
-In the Log View buffers made by C-x v L (`vc-print-root-log'), you can
-use this to display the full log entry for the revision at point.
-
-*** New command `vc-ediff' allows visual comparison of two revisions
-of a file similar to `vc-diff', but using ediff backend.
-
-*** The option `vc-initial-comment' was removed in Emacs 23.2, but
-this was not advertised at the time.
-
-*** `vc-toggle-read-only' is an obsolete alias for `toggle-read-only'.
-Since Emacs 23, it has done the same thing as `toggle-read-only', but
-this was not advertised at the time.
-
-** Obsolete modes
-
-*** abbrevlist.el
-
-*** erc-hecomplete.el (use erc-pcomplete.el instead)
-
-*** partial-completion-mode (complete.el) is obsolete.
-You can get a comparable behavior with:
-(setq completion-styles '(partial-completion initials))
-(setq completion-pcm-complete-word-inserts-delimiters t)
-
-*** pc-mode.el is obsolete (CUA mode is much more comprehensive).
-
-*** pgg is obsolete (use EasyPG instead).
-
-*** sregex.el is obsolete, since rx.el is a strict superset.
-
-*** s-region.el and pc-select.el are obsolete.
-They are superseded by shift-select-mode, enabled by default since 23.1.
-
-*** vc-mcvs.el is obsolete (for lack of a maintainer).
-
-** Miscellaneous
-
-*** The Landmark game is now invoked with `landmark', not `lm'.
-Its functions and variables have been similarly renamed.
-
-*** In `ido-file-completion-map', C-v is no longer bound to `ido-toggle-vc'.
-(This interfered with cua-mode.)
-
-*** f90.el has some support for Fortran 2008 syntax.
-
-*** `copyright-fix-years' can optionally convert consecutive years to ranges.
-
-*** New command `nato-region' converts text to NATO phonetic alphabet.
-
-\f
-* New Modes and Packages in Emacs 24.1
-
-** Occur Edit mode applies edits made in *Occur* buffers to the
-original buffers. It is bound to "e" in Occur mode.
-
-** New global minor mode electric-pair-mode.
-When enabled, typing an open parenthesis automatically inserts the
-matching closing one.
-
-** New global minor mode electric-indent-mode.
-When enabled, typing certain characters triggers reindentation.
-Major modes wishing to use this can set electric-indent-chars or
-electric-indent-functions.
-
-** New global minor mode electric-layout-mode.
-When enabled, typing certain characters automatically inserts newlines.
-Major modes wishing to use this can set electric-layout-rules.
-
-** tabulated-list.el provides a generic major mode for tabulated data,
-from which other modes can be derived.
-
-** pcase.el provides the ML-style pattern matching macro `pcase'.
-
-** secrets.el is an implementation of the Secret Service API, an
-interface to password managers like GNOME Keyring or KDE Wallet. The
-Secret Service API requires D-Bus for communication. The command
-`secrets-show-secrets' offers a buffer with a visualization of the
-secrets.
-
-** notifications.el provides an implementation of the Desktop
-Notifications API. It requires D-Bus for communication.
-
-** soap-client.el supports access to SOAP web services from Emacs.
-soap-inspect.el is an interactive inspector for SOAP WSDL structures.
-
-** New generic mode, xmodmap-generic-mode, for xmodmap files.
-
-** New emacs-lock.el package.
-The previous version has been moved to obsolete/old-emacs-lock.el.
-Now, there is a proper minor mode `emacs-lock-mode'. Protection
-against exiting Emacs and killing the buffer can be set separately.
-The mechanism for automatically turning off protection for buffers
-with dead inferior processes has been generalized.
-
-\f
-* Incompatible Lisp Changes in Emacs 24.1
-
-** Passing a nil argument to a minor mode function call now ENABLES
-the minor mode unconditionally. This is so that you can write e.g.
-
- (add-hook 'text-mode-hook 'foo-mode)
-
-to enable foo-mode in Text mode buffers, removing the need for
-`turn-on-foo-mode' style functions. This affects all mode commands
-defined by `define-minor-mode'. If called interactively, the mode
-command still toggles the minor mode.
-
-** The return value of `backup-buffer' has changed.
-It is now a list of three elements, where the second element is a list
-describing the original file's SELinux context. If Emacs or the
-system lacks SELinux support, the context list is (nil nil nil nil).
-See "Basic SELinux support" above, under "Changes in Emacs 24.1".
-
-** `char-direction-table' and the `char-direction' function were deleted.
-They were buggy and inferior to the new support of bidirectional
-editing introduced in Emacs 24. If you need the bidirectional
-properties of a character, use `get-char-code-property' with the last
-argument `bidi-class'.
-
-** `copy-directory' now copies the source directory as a subdirectory
-of the target directory, if the latter is an existing directory. The
-new optional arg COPY-CONTENTS, if non-nil, makes the function copy
-the contents directly into a pre-existing target directory.
-
-** For mouse click input events in the text area, the Y pixel
-coordinate in the POSITION list now counts from the top of the text
-area, excluding any header line. Previously, it counted from the top
-of the header line.
-
-** Support for "old-style" backquotes, obsolete for 10+ years, has
-been further reduced. Now a backquote not followed by a space is
-always treated as a "new-style" backquote. Please remove all
-"old-style" backquotes from your code. If your code uses backquotes
-as documented in the Elisp manual, and compiles without warning, then
-you have nothing to do in this regard. Code not following the
-appropriate conventions may fail to compile.
-
-The most common cause of trouble seems to be an old-style backquote
-followed by a newline. Another cause of trouble is vector notation
-for key sequence notation: instead of [(control ,)] and [(control ')],
-you should write [(control ?,)] and [(control ?')], which will work in
-older Emacsen too.
-
-** The macro `eval-at-startup' was removed in Emacs 23.2, but this
-was not advertised at the time. The function `custom-initialize-delay'
-replaced all known uses.
-
-** `view-buffer' now treats special mode-class in the same way that
-`view-file' has since Emacs 22 (i.e. it won't enable View mode if the
-major mode is special).
-
-** Menu and tool bar changes
-
-*** During startup, Emacs no longer adds entries for `menu-bar-lines'
-and `tool-bar-lines' to `default-frame-alist' and `initial-frame-alist'.
-With these alist entries omitted, `make-frame' checks the value of the
-variable `menu-bar-mode'/`tool-bar-mode' to determine whether to create
-a menu-bar or tool-bar, respectively. If the alist entries are added,
-they override the value of `menu-bar-mode'/`tool-bar-mode'.
-
-*** The menu bar bindings's caches are not used any more.
-Use (where-is-internal <def> nil t) instead.
-
-** Regions created by mouse dragging are now normal active regions,
-similar to those created by shift-selection (see Selection changes
-above). In previous Emacs versions, these regions were delineated by
-`mouse-drag-overlay'; that variable has been removed.
-
-** The fourth argument of `filter-buffer-substring' has been removed.
-If you want to remove text properties from the final result, simply
-pass the result through substring-no-properties.
-
-** cl.el no longer provides `cl-19'.
-
-** The following obsolete functions and aliases have been removed
-(the appropriate new function is given in parentheses; "not needed"
-means you can just remove all calls to the function in question):
-
-*** `comint-kill-output' (`comint-delete-output')
-*** `decompose-composite-char' (`char-to-string')
-*** `outline-visible' (`outline-invisible-p')
-*** `internal-find-face' (`facep')
-*** `internal-get-face' (`facep and check-face')
-*** `frame-update-faces' (not needed)
-*** `frame-update-face-colors' (`frame-set-background-mode')
-*** `x-frob-font-weight' and `x-frob-font-slant' (`make-face-*' functions)
-*** `x-make-font-bold' and `x-make-font-demibold' (`make-face-bold')
-*** `x-make-font-italic' and `x-make-font-oblique' (`make-face-italic')
-*** `x-make-font-bold-italic' (`make-face-bold-italic')
-*** `x-make-font-unbold' (`make-face-unbold')
-*** `x-make-font-unitalic' (`make-face-unitalic')
-*** `mldrag-drag-mode-line' (`mouse-drag-mode-line')
-*** `mldrag-drag-vertical-line' (`mouse-drag-vertical-line')
-*** `iswitchb-default-keybindings' (`iswitchb-mode')
-*** `char-bytes' (== 1)
-*** `isearch-return-char' (`isearch-printing-char')
-*** `make-local-hook' (not needed)
-*** `set-screen-height' (`set-frame-height')
-*** `set-screen-width' (`set-frame-width')
-
-** The following obsolete variables and varaliases have been removed
-(the appropriate new variable is given in parentheses):
-
-*** `checkdoc-minor-keymap' (`checkdoc-minor-mode-map')
-*** `vc-header-alist' (`vc-BACKEND-header')
-*** `directory-sep-char' (== ?/)
-*** `font-lock-defaults-alist' (`font-lock-defaults')
-*** `e' (`float-e').
-
-** The following obsolete files were removed:
-sc.el, x-menu.el, rnews.el, rnewspost.el
-
-** The format of the finder-inf.el file has changed, since the Finder
-mechanism is now based on the package system. The variable
-`finder-package-info' is replaced by `package--builtins' and
-`finder-keywords-hash'.
-
-** When generating autoloads, `update-directory-autoloads' no longer
-assumes every inspected file is in your `load-path'. It instead
-generates relative names according to the current `load-path'.
-
-\f
-* Lisp Changes in Emacs 24.1
-
-** Code can now use lexical scoping by default instead of dynamic scoping.
-The `lexical-binding' variable enables lexical scoping for local
-variables. It is typically set via a file-local variable in the first
-line of the file, in which case it applies to all the code in that
-file.
-
-*** `eval' takes a new optional argument `lexical' to choose the new lexical
-binding instead of the old dynamic binding mode.
-
-*** Lexically scoped interpreted functions are represented with a new form
-of function value which looks like (closure ENV ARGS &rest BODY).
-
-*** New macro `letrec' to define recursive local functions.
-
-*** `defvar' and `defconst' now mark the variable as special (dynamic).
-So do `defcustom' and other forms that call `defvar' as a subroutine.
-
-*** New function `special-variable-p' to check whether a variable is
-declared as dynamically bound.
-
-*** The form ((lambda ...) ...) is deprecated.
-
-** An Emacs Lisp testing tool is now included.
-Emacs Lisp developers can use this tool to write automated tests for
-their code. See the ERT info manual for details.
-
-** Changes for bidirectional display and editing
-
-*** New function `current-bidi-paragraph-direction'.
-This returns the base direction of the paragraph at point.
-
-*** New function `bidi-string-mark-left-to-right'.
-Given a string containing characters from right-to-left scripts, this
-function returns another string which can be safely inserted into a
-buffer, such that any following text will be always displayed to the
-right of that string. (This works by appending an invisible Unicode
-"LEFT-TO-RIGHT MARK" character if the argument string might need it.)
-
-This is useful when the buffer has overall left-to-right paragraph
-direction and you need to insert a string whose contents are not known
-in advance, without disrupting the layout of the line.
-
-** Window changes
-
-*** Window tree functions are accessible in Elisp.
-Functions are provided to return the parent, siblings or child windows
-of any window including internal windows (windows not associated with a
-buffer) in the window tree.
-
-**** New function `window-valid-p' gives non-nil for live and internal
-windows.
-
-**** Window manipulation can deal with internal windows.
-Many window handling functions like `split-window', `delete-window', or
-`delete-other-windows' as well as the window resizing functions can now
-act on any window including internal ones.
-
-*** window-total-height/-width vs window-body-height/-width.
-The function `window-height' has been renamed to `window-total-height'
-and `window-width' has been renamed to `window-body-width'. The old
-names are provided as aliases. Two new functions `window-total-width'
-and `window-body-height' are provided.
-
-*** Window parameters specific to window handling functions.
-For each window you can specify a parameter to override the default
-behavior of a number of functions like `split-window', `delete-window'
-and `delete-other-windows'. The variable `ignore-window-parameters'
-allows to ignore processing such parameters.
-
-*** New semantics of third argument of `split-window'.
-The third argument of `split-window' has been renamed to SIDE and can be
-set to any of the values 'below, 'right, 'above, or 'left to make the
-new window appear on the corresponding side of the window that shall be
-split. Any other value of SIDE will cause `split-window' to split the
-window into two side-by-side windows as before.
-
-*** Window resizing functions.
-A new standard function for resizing windows called `window-resize' has
-been introduced. This and all other functions for resizing windows no
-longer delete any windows when they become too small.
-
-*** Deleting the selected window now selects the most recently selected
-live window on that frame instead.
-
-*** `adjust-window-trailing-edge' adjustments.
-`adjust-window-trailing-edge' can now deal with fixed-size windows and
-is able to resize other windows if a window adjacent to the trailing
-edge cannot be shrunk any more. This makes its behavior more similar to
-that of Emacs 21 without compromising, however, its inability to delete
-windows which was introduced in Emacs 22.
-
-*** Window-local buffer lists.
-Windows now have local buffer lists. This means that removing a buffer
-from display in a window will preferably show the buffer previously
-shown in that window with its previous window-start and window-point
-positions. This also means that the same buffer may be automatically
-shown twice even if it already appears in another window.
-
-*** `switch-to-buffer' has a new optional argument FORCE-SAME-WINDOW,
-which if non-nil requires the buffer to be displayed in the currently
-selected window, signaling an error otherwise. If nil, another window
-can be used, e.g. if the selected one is strongly dedicated.
-
-*** `split-window-vertically' and `split-window-horizontally' renamed
-to `split-window-below' and `split-window-right' respectively.
-The old names are kept as aliases.
-
-*** Display actions
-
-**** The second arg to `display-buffer' and `pop-to-buffer' is now
-named ACTION, and takes a display action of the same form as
-`display-buffer-base-action' (see Changes, above). A non-nil,
-non-list value is treated specially, as the old meaning.
-
-**** New variable `display-buffer-overriding-action'.
-
-**** The procedure of `display-buffer' etc. to choose a window is
-determined by combining `display-buffer-overriding-action',
-`display-buffer-alist', the ACTION arg, `display-buffer-base-action',
-and `display-buffer-fallback-action'. The second and fourth of these
-are user-customizable variables.
-
-See the docstring of `display-buffer' for details.
-
-*** New functions `window-state-get' and `window-state-put'.
-These functions allow to save and restore the state of an arbitrary
-frame or window as an Elisp object.
-
-** Completion
-
-*** New variable `completion-extra-properties' used to specify extra
-properties of the current completion:
-- :annotation-function, same as the old completion-annotate-function.
-- :exit-function, function to call after completion took place.
-
-*** Functions on `completion-at-point-functions' can return any of the
-properties valid for `completion-extra-properties'.
-
-*** `completion-annotate-function' is obsolete.
-
-*** New `metadata' method for completion tables. The metadata thus returned
-can specify various details of the data returned by `all-completions':
-- `category' is the kind of objects returned (e.g., `buffer', `file', ...),
- used to select a style in completion-category-overrides.
-- `annotation-function' to add annotations in *Completions*.
-- `display-sort-function' to specify how to sort entries in *Completions*.
-- `cycle-sort-function' to specify how to sort entries when cycling.
-
-*** `minibuffer-local-filename-must-match-map' is not used any more.
-Instead, the bindings in `minibuffer-local-filename-completion-map'
-are combined with `minibuffer-local-must-match-map'.
-
-*** New variable `completing-read-function' allows overriding the
-behavior of `completing-read'.
-
-** `glyphless-char-display' can now distinguish between graphical and
-text terminal display, via a char-table entry that is a cons cell.
-
-** `pre-command-hook'/`post-command-hook' are not reset to nil on error.
-Instead, the offending function is removed.
-
-** New hook types
-
-*** New function `run-hook-wrapped' for running an abnormal hook by
-passing the hook functions as arguments to a "wrapping" function.
-Like `run-hook-with-args-until-success', it stops at the first
-non-nil return value.
-
-*** New macro `with-wrapper-hook' for running an abnormal hook as a
-set of "wrapping" filters, similar to around advice.
-(A version of this macro was actually added in Emacs 23.2 but was not
-advertised at the time.)
-
-** Debugger changes
-
-*** New macro `condition-case-unless-debug' (this was actually added in
-Emacs 23.1 as condition-case-no-debug, but not advertised)
-
-*** The macro `with-demoted-errors' was added in Emacs 23.1, but not advertised.
-
-*** Variable `stack-trace-on-error' removed.
-
-*** The debugger can now "continue" from an error, which means it will
-jump to the error handler as if the debugger had not been invoked
-instead of jumping all the way to the top-level.
-
-*** Set `debug-on-event' to enter the debugger on events like SIGUSR1.
-This can be useful when `inhibit-quit' is set.
-
-** The new function `server-eval-at' allows evaluation of Lisp forms on
-named Emacs server instances.
-
-** `call-process' and `call-process-region' allow a `(:file "file")' spec
-to redirect STDOUT to a file.
-
-** The function `format-time-string' now supports the %N directive,
-for higher-resolution time stamps.
-
-** New input reading functions
-
-*** New function `read-char-choice' reads a restricted set of
-characters, discarding any inputs not inside the set.
-
-*** The command `read-color' now requires a match for a color name
-or RGB triplet, instead of signaling an error if the user provides
-invalid input.
-
-**** `facemenu-read-color' is now an alias for `read-color'.
-
-** `image-library-alist' is renamed to `dynamic-library-alist'.
-The variable is now used to load all kind of supported dynamic libraries,
-not just image libraries. The previous name is still available as an
-obsolete alias.
-
-** Syntax parsing changes
-
-*** New variable `syntax-propertize-function'.
-This replaces `font-lock-syntactic-keywords' which is now obsolete.
-This allows syntax-table properties to be set independently from font-lock:
-just call syntax-propertize to make sure the text is propertized.
-Together with this new variable come a new hook
-syntax-propertize-extend-region-functions, as well as two helper functions:
-syntax-propertize-via-font-lock to reuse old font-lock-syntactic-keywords
-as-is; and syntax-propertize-rules which provides a new way to specify
-syntactic rules.
-
-*** Syntax tables support a new "comment style c" additionally to style b.
-
-** New hook `post-self-insert-hook', run after `self-insert-command'.
-
-** frame-local variables cannot be let-bound any more.
-
-** Major and minor mode changes
-
-*** `set-auto-mode' now respects mode: local variables at the end of files,
-as well as those in the -*- line.
-
-*** `prog-mode' is a new major mode from which programming modes
-should be derived.
-
-**** `prog-mode-hook' can be used to enable features for programming
-modes, e.g. (add-hook 'prog-mode-hook 'flyspell-prog-mode) to enable
-on-the-fly spell checking for comments and strings.
-
-*** New hook `change-major-mode-after-body-hook', run by
-`run-mode-hooks' just before any other mode hooks.
-
-*** Enabled globalized minor modes can be disabled in specific major modes.
-If the global mode is global-FOO-mode, then run (FOO-mode -1) in the
-major mode's hook, where FOO-mode toggles the mode on a per-buffer basis.
-
-*** `define-minor-mode' accepts new keywords :variable, :after-hook.
-
-** File-handling changes
-
-*** `delete-file' and `delete-directory' now accept optional arg TRASH.
-Trashing is performed if TRASH and `delete-by-moving-to-trash' are
-both non-nil. Interactively, TRASH defaults to t, unless a prefix
-argument is supplied (see Trash changes, above).
-
-*** New file predicates: `file-equal-p', `file-in-directory-p'.
-
-** Tool-bars can display separators.
-Tool-bar separators are handled like menu separators in menu-bar maps,
-i.e. via menu entries of the form `(menu-item "--")'.
-
-** Image API
-
-*** Animated images support (currently animated gifs only).
-
-**** `image-animated-p' returns non-nil if an image can be animated.
-
-**** `image-animate' animates a supplied image spec.
-
-**** `image-animate-timer' returns the timer object for an image that
-is being animated.
-
-*** `image-extension-data' has been renamed to `image-metadata'.
-The old name is an obsolete alias to the new one.
-
-*** Image mode can view any image type that ImageMagick supports.
-This requires Emacs to be built with ImageMagick support.
-
-**** New function `imagemagick-types', defined if ImageMagick support
-is enabled, returns a list of image file extensions that your
-ImageMagick installation supports.
-
-**** New function `imagemagick-register-types' enables ImageMagick
-image types in Image mode and in `create-image' and other helper
-functions.
-
-**** New option `imagemagick-types-inhibit' excludes certain
-ImageMagick image types from `imagemagick-register-types'.
-
-**** With ImageMagick support, there are extra Image mode commands to
-resize and rotate images: `image-transform-fit-to-height',
-`image-transform-fit-to-width', `image-transform-set-rotation', and
-`image-transform-set-scale'.
-
-** `compose-mail' now accepts an optional 8th arg, RETURN-ACTION, and
-passes it to the mail user agent function. This argument specifies an
-action for returning to the caller after finishing with the mail. For
-example, this is used by Rmail to optionally delete a mail window.
-
-** XML and HTML parsing
-If Emacs is compiled with libxml2 support, there are two new
-functions: `libxml-parse-html-region' (which parses "real world" HTML)
-and `libxml-parse-xml-region' (which parses XML). Both return an
-Emacs Lisp parse tree.
-
-** Networking and encryption changes
-
-*** `open-network-stream' can now be used to open an encrypted stream.
-It now accepts an optional `:type' parameter for initiating a TLS
-connection, directly or via STARTTLS. To do STARTTLS, additional
-parameters (`:end-of-command', `:success', `:capabilities-command')
-must also be supplied.
-
-*** New library gnutls.el.
-The new function `gnutls-available-p' returns non-nil if Emacs is
-built with GnuTLS support. The main entry points are
-`open-gnutls-stream' and `gnutls-negotiate'. It's easiest to use
-these functions through `open-network-stream', because that can
-upgrade connections through STARTTLS opportunistically or use plain
-SSL, depending on your needs. For debugging, set `gnutls-log-level'
-greater than 0.
-
-*** New primitive `secure-hash' that supports many secure hash algorithms:
-md5, sha1, sha2, sha224, sha256, sha384, and sha512. The lisp library
-sha1.el has been removed. The `sha1' feature is provided by default.
-
-** Isearch
-
-*** New hook `isearch-update-post-hook' that runs in `isearch-update'.
-
-** Progress reporters can now "spin".
-The MIN-VALUE and MAX-VALUE arguments of `make-progress-reporter' can
-now be nil, or omitted. This makes a "non-numeric" reporter. Each
-time you call `progress-reporter-update' on that progress reporter,
-with a nil or omitted VALUE argument, the reporter message is
-displayed with a "spinning bar".
-
-** New variable `revert-buffer-in-progress-p' is true while a buffer is
-being reverted, even if the buffer has a local `revert-buffer-function'.
-
-** New variables `delayed-warnings-list' and `delayed-warnings-hook'.
-If delayed-warnings-list is non-nil, the command loop calls
-`delayed-warnings-hook' after `post-command-hook'. At present, this
-is only used by Emacs on some platforms to display warnings during
-startup, which might otherwise not be noticed. This uses the
-functions `display-delayed-warnings' and `collapse-delayed-warnings'.
-
-** rx.el has a new `group-n' construct for explicitly numbered groups.
-
-** New function `make-composed-keymap' that constructs a new keymap
-from multiple input maps. You can use this to make a keymap that
-inherits from multiple maps, eg:
- (set-keymap-parent newmap (make-composed-keymap othermap parent))
-
-** New function `string-prefix-p'.
-(This was actually added in Emacs 23.2 but was not advertised at the time.)
-
-** New reader macro ## that stands for the empty symbol.
-This means that the empty symbol can now be read back. Also, #: by itself
-(when not immediately followed by a possible symbol character) stands for
-an empty uninterned symbol.
-
-** New math functions `isnan', `copysign', `frexp', `ldexp'.
-
-** The following functions and variables are obsolete:
-
-*** `tooltip-use-echo-area' is obsolete.
-Rather than setting this to t, disable Tooltip mode instead.
-
-*** buffer-substring-filters is obsolete.
-Use `filter-buffer-substring-functions' instead.
-
-*** `byte-compile-disable-print-circle' is obsolete.
-
-*** `deferred-action-list' and `deferred-action-function' are obsolete.
-Use `post-command-hook' instead.
-
-*** `font-lock-maximum-size' is obsolete.
-
-\f
-* Changes in Emacs 24.1 on Non-Free Operating Systems
-
-** On MS Windows, Emacs warns when using the obsolete init file _emacs,
-and also when HOME is set to C:\ by default.
-
-** New configure.bat options
-
-*** --enable-checking builds Emacs with extra runtime checks.
-
-*** --distfiles specifies files to be included in binary distribution.
-
-*** --without-gnutls disables automatic GnuTLS detection.
-
-*** --lib for general library linkage, works with the USER_LIBS build variable.
+* Changes in Emacs 25.1 on Non-Free Operating Systems
-** New make target `dist' to create binary distribution for MS Windows.
+---
+** Building Emacs for MS-Windows requires at least Windows XP
+or Windows Server 2003. The built binaries still run on all versions
+of Windows starting with Windows 9X.
-** The Lisp function `w32-default-color-map' is now obsolete.
-(It is only used internally in the Emacs C code.)
++++
+** Emacs running on MS-Windows now supports the daemon mode.
-** Customize ns-auto-hide-menu-bar to have the menu-bar hidden, but
-reappear on mouse-over. (Requires OS X 10.6 or later.)
+** OS X 10.5 or older is no longer supported.
-** On Mac OS X, dragging a file into Emacs visits the file, like on
-other platforms, rather than inserting its contents into the buffer.
+** OS X on PowerPC is no longer supported.
\f
----------------------------------------------------------------------
--- /dev/null
- Temporary note:
- +++ indicates that all necessary documentation updates are complete.
- (This means all relevant manuals in doc/ AND lisp doc-strings.)
- --- means no change in the manuals is needed.
- When you add a new item, use the appropriate mark if you are sure it applies,
- otherwise leave it unmarked.
-
+GNU Emacs NEWS -- history of user-visible changes.
+
+Copyright (C) 2010-2015 Free Software Foundation, Inc.
+See the end of the file for license conditions.
+
+Please send Emacs bug reports to bug-gnu-emacs@gnu.org.
+If possible, use M-x report-emacs-bug.
+
+This file is about changes in Emacs version 24.
+
+See files NEWS.23, NEWS.22, NEWS.21, NEWS.20, NEWS.19, NEWS.18,
+and NEWS.1-17 for changes in older Emacs versions.
+
+You can narrow news to a specific version by calling `view-emacs-news'
+with a prefix argument or by typing C-u C-h C-n.
+
- ---
+\f
+* Changes in Emacs 24.5
+
- +++
- ** `redisplay-dont-pause' is declared as obsolete.
++** This is mainly a bug-fix release, but there are some other changes.
++
+** The default value of `history-length' has increased to 100.
+
- ** `call-process-shell-command' and `process-file-shell-command'
- don't take "&rest args" any more.
++** The variable `redisplay-dont-pause' is obsolete.
+
+\f
+* Changes in Specialized Modes and Packages in Emacs 24.5
+
- ---
- *** crisp.el - moved to elpa.gnu.org.
++** `call-process-shell-command' and `process-file-shell-command' no longer
++take "&rest args".
++
++** The option `browse-url-firefox-startup-arguments' no longer has an effect.
++
++** ERC
++
++*** New option `erc-rename-buffers'.
++
++*** New faces `erc-my-nick-prefix-face' and `erc-nick-prefix-face'.
++
++*** `erc-format-@nick' displays all user modes instead of only op and voice.
++
++*** The display of irc commands in the current buffer has been disabled.
++
++*** `erc-version' now follows the Emacs version.
+
+** Obsolete packages
+
+*** cc-compat.el
+
- ---
++*** crisp.el (moved to elpa.gnu.org)
+
- ---
+*** tpu-edt.el, ws-mode.el
+These emulations of old editors are believed to be no longer relevant
+ - contact emacs-devel@gnu.org if you disagree.
+
+*** vi.el, vip.el (try M-x viper instead)
+
+\f
+* Installation Changes in Emacs 24.4
+
+** Emacs can now be compiled with ACL (access control list) support.
+This happens by default if a suitable support library is found at
+build time, like libacl on GNU/Linux. To prevent this, use the
+configure option `--disable-acl'. See below for the features this provides.
+
+** Emacs can now be compiled with file notification support.
+This happens by default if a suitable system library is found at
+build time. To prevent this, use the configure option
+`--without-file-notification'. See below for file-notify features.
+This feature is not available for the Nextstep port.
+
+** Emacs can now be compiled with zlib support.
+This happens by default if zlib is present, which it normally is.
+To prevent this, use the configure option `--without-zlib'.
+This provides the function `zlib-decompress-region'; see below for details.
+
+** The configure option `--without-compress-info' has been generalized,
+and renamed to `--without-compress-install'. It now prevents compression
+of _any_ files during installation.
+
+** The configure option `--with-crt-dir' has been removed.
+It is no longer needed, as the crt*.o files are no longer linked specially.
+
+** Directories passed to configure option `--enable-locallisppath' are
+no longer created during installation.
+
+** Emacs for Nextstep (Mac OS X, GNUstep) can be built with ImageMagick support.
+This requires pkg-config to be available at build time.
+
+\f
+* Startup Changes in Emacs 24.4
+
+** When initializing `load-path', an empty element in the EMACSLOADPATH
+environment variable (either leading, e.g., ":/foo"; trailing, e.g.,
+"/foo:"; or embedded, e.g., "/foo::/bar") is replaced with the default
+load-path (the one that would have been used if EMACSLOADPATH was unset).
+This makes it easier to _extend_ the load-path via EMACSLOADPATH
+(previously, EMACSLOADPATH had to specify the complete load-path,
+including the defaults). (In older versions of Emacs, an empty element
+was replaced by ".", so use an explicit "." now if that is what you want.)
+
+** The -L option, which normally prepends its argument to load-path,
+will instead append, if the argument begins with `:' (or `;' on MS Windows;
+i.e., `path-separator').
+
+** If you use either site-load.el or site-init.el to customize the dumped
+Emacs executable, any changes to `load-path' that these files make
+will no longer be present after dumping. To affect a permanent change
+to `load-path', use the `--enable-locallisppath' option of `configure'.
+
+** The user option `initial-buffer-choice' can now specify a function
+to set up the initial buffer.
+
+\f
+* Changes in Emacs 24.4
+
+** Support for ACLs (access control lists).
+This requires a suitable support library to be found at build time.
+On GNU/Linux, the POSIX ACL interface is used via libacl.
+On MS-Windows, the NT Security APIs are used to emulate the POSIX interface.
+ACLs are extended file attributes, used e.g. for finer-grained permissions.
+
+*** Emacs preserves the ACL entries of files when backing up.
+
+*** New functions `file-acl' and `set-file-acl' get and set file ACLs.
+
+** Support for menus on text-mode terminals.
+If the terminal supports a mouse, clicking on the menu bar, or on
+sensitive portions of the mode line or header line, will drop down the
+menu defined at that position. Likewise, clicking C-mouse-1, C-mouse-2, or
+C-mouse-3 on the text area will pop up the menus defined for those locations.
+
+If the text terminal does not support a mouse, you can activate the
+first menu-bar menu by typing F10, which invokes `menu-bar-open'.
+
+If you want the previous behavior, where F10 invoked `tmm-menubar',
+customize the option `tty-menu-open-use-tmm' to a non-nil value.
+(Typing M-` always invokes `tmm-menubar', even if `tty-menu-open-use-tmm'
+is nil.)
+
+** New option `load-prefer-newer' affects how the `load' function chooses
+the file to load. If this is non-nil, then when both .el and .elc
+versions of a file exist, and the caller did not explicitly specify
+which one to load, then the newer file is loaded. The default, nil,
+means to always load the .elc file.
+
+** Multi-monitor support
+
+*** New functions `display-monitor-attributes-list' and
+`frame-monitor-attributes' can be used to obtain information about
+each physical monitor on multi-monitor setups.
+
+*** The functions `display-pixel-width' and `display-pixel-height' now
+behave consistently among the platforms: they return the pixel width
+or height for all physical monitors associated with the given display
+as if they were on X. To get information for each physical
+monitor, use the new functions above. Similar notes also apply to
+`x-display-pixel-width', `x-display-pixel-height', `display-mm-width',
+`display-mm-height', `x-display-mm-width', and `x-display-mm-height'.
+
+** New function `zlib-decompress-region', which decompresses gzip- and
+zlib-format compressed data using built-in zlib support (if available).
+
+** The *Messages* buffer is created in `messages-buffer-mode',
+a new major mode, with read-only status. Any code that might create
+the *Messages* buffer should call the function `messages-buffer' to do
+so and set up the mode.
+
+** The cursor stops blinking after 10 blinks (by default) on X and Nextstep.
+You can change the default by customizing `blink-cursor-blinks'.
+
+** In keymaps where SPC scrolls forward, S-SPC now scrolls backward.
+This affects View mode, etc.
+
+** The default value of `make-backup-file-name-function' is no longer nil.
+Instead it defaults to a function that does what the nil value used to.
+
+** Help
+
+*** The command `apropos-variable' is renamed to `apropos-user-option'.
+`apropos-user-option' shows all user options, while `apropos-variable'
+shows all variables. When called with a universal prefix argument,
+the two commands swap their behaviors. When `apropos-do-all' is
+non-nil, they output the same results.
+
+*** The key `?' now describes prefix bindings, like `C-h'.
+
+*** The command `describe-function' has been extended for EIEIO.
+Running it on constructors will show a full description of the
+generated class. For generic functions, it will show all
+implementations together with links to the source. The old commands
+`describe-class', `describe-constructor' and `describe-generic' were
+removed.
+
+*** The function `quail-help' is no longer an interactive command.
+Use `C-h C-\' (`describe-input-method') instead.
+
+** Frame and window handling
+
+*** New commands `toggle-frame-fullscreen' and `toggle-frame-maximized',
+bound to <f11> and M-<f10>, respectively.
+
+*** New hooks `focus-in-hook', `focus-out-hook'.
+These are normal hooks run when an Emacs frame gains or loses input focus.
+
+*** The function `window-in-direction' now takes additional arguments
+for specifying a reference point, wrapping the selection around frame
+borders, and specifying ways to select the minibuffer window.
+
+*** Emacs can now change frame sizes in units of pixels, rather than
+text rows or columns. When maximizing a frame or making it fullscreen,
+remaining extra pixels are no longer given to the minibuffer, the rightmost
+fringe, or other unusable space, but are distributed among the text
+areas of the frame's windows. If the new option `frame-resize-pixelwise'
+is non-nil, all frame size changes happen pixelwise and set the
+corresponding size hints for the window manager.
+
+*** Emacs can now change window sizes in units of pixels.
+Mouse-dragging a mode line or window divider now changes the size of
+adjacent windows pixelwise. If the new option `window-resize-pixelwise'
+is non-nil, functions like `balance-windows-area' and `fit-window-to-buffer'
+resize windows pixelwise. Most functions for changing or accessing
+window sizes now have an additional argument that allows changes to apply,
+or values to be returned, in pixels instead of lines/columns.
+
+*** The functions `window-body-height' and `window-body-width' now never
+count partially visible lines or columns if called with a nil PIXELWISE
+argument.
+
+*** Emacs can now draw dividers between adjacent windows. To put
+dividers between side-by-side/vertically stacked windows customize the
+frame parameters `right-divider-width' and `bottom-divider-width' to
+some positive integer. You can drag dividers with the mouse (they show
+a corresponding cursor when the mouse hovers over them). You can change
+the appearance of dividers by customizing the faces `window-divider',
+`window-divider-first-pixel', and `window-divider-last-pixel'. The last
+two are useful to provide a 3D effect, or to better distinguish dividers
+from surrounding display objects.
+
+*** New functions to return the pixel sizes of window components, namely
+`window-scroll-bar-width', `window-mode-line-height',
+`window-header-line-height', `window-right-divider-width', and
+`window-bottom-divider-width'.
+
+*** The new function `window-text-pixel-size' returns the size of the
+text of a window's buffer in pixels. This allows functions like
+`fit-frame-to-buffer' and `fit-window-to-buffer' to accurately fit a
+window to its buffer as it will be displayed.
+
+*** `fit-window-to-buffer' can now resize windows in both dimensions.
+This behavior is controlled by the new option
+`fit-window-to-buffer-horizontally'. The new option
+`fit-frame-to-buffer' allows you to fit the window's frame to its buffer.
+
+*** `fit-frame-to-buffer' now fits frames in both dimensions. The new
+options `fit-frame-to-buffer-margins' and `fit-frame-to-buffer-sizes'
+control the size of the frame and its position on screen.
+
+*** Temp Buffer Resize Mode can now adjust the height and width of
+windows and frames. The new option `temp-buffer-max-width' allows you to
+control the width of temporary buffer windows. Moreover, if the new
+option `fit-frame-to-buffer' is non-nil and the buffer appears in the
+root window of a frame, Temp Buffer Resize Mode will try to adjust the
+width and/or height of the frame.
+
+*** `split-window' is now a non-interactive function, not a command.
+As a command, it was a special case of `C-x 2' (`split-window-below'),
+and as such superfluous. After being reimplemented in Lisp, its
+interactive form was mistakenly retained.
+
+*** The functions `window-size' and `window-total-size' now have an
+optional argument to return a rounded size value.
+
+*** `window-state-put' now allows you to put a window state into internal
+windows too.
+
+*** New option `scroll-bar-adjust-thumb-portion'.
+Available only on X, this option allows you to control over-scrolling
+using the scroll bar (i.e., dragging the thumb down even when the end
+of the buffer is visible).
+
+*** New display actions functions for `display-buffer':
+
+**** `display-buffer-at-bottom' chooses or creates a window at the
+bottom of the selected frame.
+
+**** `display-buffer-no-window' to not display the buffer in a window.
+
+*** New display action alist entry `allow-no-window' to indicate the
+caller of `display-buffer' is ready to handle the case of not displaying
+the buffer in a window.
+
+*** `display-buffer-in-previous-window' is now a member of
+`display-buffer-fallback-action'.
+
+** Lisp evaluation
+
+*** `eval-defun' on an already defined defcustom calls the :set function,
+if there is one.
+
+*** The commands `eval-expression' (`M-:'), `eval-last-sexp' (`C-x C-e'),
+and `eval-print-last-sexp' (`C-j' in Lisp Interaction mode) can take a
+zero prefix argument. This disables truncation of lists in the output,
+equivalent to setting `(eval-expression-)print-length' and
+`(eval-expression-)print-level' to nil. Additionally, it causes integers
+to be printed in other formats (octal, hexadecimal, and character).
+
+*** New hook `eval-expression-minibuffer-setup-hook' run by
+`eval-expression' on entering the minibuffer.
+
+** `cache-long-line-scans' is now non-nil, and renamed to `cache-long-scans',
+because it affects caching of paragraph scanning results as well.
+There is no reason to set this to nil except for debugging purposes.
+
+** `emacs-bzr-version' has been renamed to `emacs-repository-version',
+and works for git too, if you fetch the repository notes.
+
+** The default value of `comment-use-global-state' is now t,
+and this variable has been marked obsolete.
+
+** `write-region-inhibit-fsync' now defaults to t in batch mode.
+
+** The option `set-mark-default-inactive' has been deleted.
+This unfinished feature was introduced by accident in Emacs 23.1;
+simply disabling Transient Mark mode does the same thing.
+
+\f
+* Editing Changes in Emacs 24.4
+
+** Indentation
+
+*** `electric-indent-mode' is now enabled by default.
+Typing RET reindents the current line and indents the new line.
+`C-j' inserts a newline but does not indent. In some programming modes,
+additional characters are electric (eg `{').
+
+*** New buffer-local `electric-indent-local-mode'.
+
+*** The behavior of `C-x TAB' (`indent-rigidly') has changed.
+When invoked without a prefix argument, it now activates a transient
+mode in which typing <left>, <right>, <S-left>, and <S-right> adjusts
+the text indentation in the region. Typing any other key resumes
+normal editing behavior.
+
+*** `tab-stop-list' is now implicitly extended to infinity by repeating
+the last step. Its default value is changed to nil, which means a tab
+stop every `tab-width' columns.
+
+** Uniquify is enabled by default, with `post-forward-angle-brackets' style.
+In other words, if you visit two files that have the same base name,
+then rather than creating buffers basename and basename<2>,
+Emacs uses basename<dirA> and basename<dirB>. To change this,
+customize `uniquify-buffer-name-style'. Set it to nil for the old behavior.
+
+** New command `C-x SPC' (`rectangle-mark-mode') makes a rectangular region.
+Most commands are still unaware of it, but kill/yank do work on the rectangle.
+
+** New option `visual-order-cursor-movement'.
+If this is non-nil, cursor motion with arrow keys will follow the
+visual order of characters on the screen: <left> always moves to the
+left, <right> always moves to the right, disregarding the surrounding
+bidirectional context.
+
+** New command `delete-duplicate-lines'.
+This searches the region for identical lines, and removes all but one
+copy of each repeated line. The lines need not be sorted.
+
+** New command `cycle-spacing' acts like a smarter `just-one-space'.
+When called in succession, it cycles between spacing conventions:
+one space, no spaces, original spacing.
+
+** `blink-matching-paren' now only highlights the matching open-paren
+by default, instead of moving the cursor. Set this variable to `jump' to
+restore the old behavior.
+
+** The new function `fill-single-char-nobreak-p' can stop fill from breaking
+a line after a one-letter word, which is an error in some typographical
+conventions. To use it, add it to the `fill-nobreak-predicate' hook.
+
+** Registers
+
+*** All interactive commands that read a register (`copy-to-register', etc.)
+now display a temporary window after `register-preview-delay' seconds
+that summarizes existing registers. To disable this, set that option to nil.
+Interactive commands that read registers and want to make use of this
+should use `register-read-with-preview' to read register names.
+
+*** New command `frameset-to-register' bound to `C-x r f', replacing
+`frame-configuration-to-register'. It offers similar functionality,
+plus enhancements like the ability to restore deleted frames.
+(`frame-configuration-to-register' still exists, but no longer has a
+key binding.)
+
+*** New command `C-x C-k x' (`kmacro-to-register') stores keyboard
+macros in registers.
+
+\f
+* Changes in Specialized Modes and Packages in Emacs 24.4
+
+** Backtrace and debugger
+
+*** New Lisp debugger command `v' (`debugger-toggle-locals') toggles the
+display of local variables of the current stack frame.
+
+*** The Lisp debugger's `e' command (`debugger-eval-expression') now includes
+the lexical environment when evaluating the code in the context at point
+(and so allows you to access lexical variables).
+
+*** New minor mode `jit-lock-debug-mode' helps you debug code run via JIT Lock.
+
+** Battery information can now be retrieved from BSD's `apm' utility.
+
+** In the Buffer Menu, `M-s a C-o' shows matches for a regexp in marked buffers.
+
+** Calc
+
+*** Calc by default now uses the Gregorian calendar for all dates, and
+uses January 1, 1 AD as its day number 1. Previously Calc used the
+Julian calendar for dates before September 14, 1752, and it used
+December 31, 1 BC as its day number 1; the new scheme is more
+consistent with Calendar's calendrical system and day numbering.
+
+*** The new option `calc-gregorian-switch' lets you configure if
+(and when) Calc switches from the Julian to the Gregorian calendar.
+
+*** Support for ISO 8601 dates.
+
+** Calendar and Diary
+
+*** New faces `calendar-weekday-header', `calendar-weekend-header',
+and `calendar-month-header'.
+
+*** New option `calendar-day-header-array'.
+
+*** New variable `diary-from-outlook-function', used by the command
+`diary-from-outlook'.
+
+*** The variable `calendar-font-lock-keywords' is obsolete.
+
+** CEDET
+
+*** EDE
+
+**** The cpp-root project now supports executing a compile command.
+It can be set through the new :compile-command slot or the
+buffer-local variable `compile-command'.
+
+**** Better selection of include directories for the 'linux' project.
+Include directories now support out-of-tree build directories and
+target architecture auto-detection.
+
+*** Semantic
+
+**** Improved detection of used namespaces in current scope in C++.
+
+**** Parsing of default values for variables and function arguments in C/C++.
+They are also displayed by the summarize feature in the mode line.
+
+**** Improved parsing of function pointers in C/C++.
+This also includes parsing of function pointers as function arguments.
+
+**** Parsing of C/C++ preprocessor macros that open new scope.
+For example, this enables parsing of macros that open new namespaces.
+
+**** Support for 'this' pointer in inline member functions in C++.
+
+** CFEngine mode
+
+*** Support for completion, ElDoc, and Flycheck has been added.
+
+*** The current CFEngine syntax is parsed from "cf-promises -s json".
+There is a fallback syntax available if you don't have cf-promises or
+if your version doesn't support that option. See option `cfengine-cf-promises'.
+
+** cl-lib
+
+*** New macro `cl-tagbody'.
+This executes statements while allowing for control transfer to labels.
+
+*** letf is now just an alias for cl-letf.
+
+** CUA mode
+
+*** CUA mode now uses `delete-selection-mode' and `shift-select-mode'.
+Hence, you can now enable it independently from those modes, and from
+`transient-mark-mode'.
+
+*** `cua-highlight-region-shift-only' is now obsolete.
+You can disable `transient-mark-mode' to get the same result.
+
+*** CUA's rectangles can now be used without CUA by calling the command
+`cua-rectangle-mark-mode'.
+
+** Delete Selection mode can now be used without Transient Mark mode.
+
+** Desktop
+
+*** `desktop-save-mode' by default now auto-saves an existing desktop file
+after `desktop-auto-save-timeout'. To disable this, customize that option
+to nil (or zero).
+
+*** Desktop now saves and restores the frame/window configuration.
+To disable this, set `desktop-restore-frames' to nil.
+See also related options `desktop-restore-reuses-frames',
+`desktop-restore-in-current-display', and `desktop-restore-forces-onscreen'.
+
+** New Dired minor mode `dired-hide-details-mode' toggles whether details,
+such as file ownership or permissions, are visible in Dired buffers.
+See the new options `dired-hide-details-hide-symlink-targets' and
+`dired-hide-details-hide-information-lines' for customizing what to hide.
+
+** You can enable ElDoc inside the `eval-expression' minibuffer with:
+ (add-hook 'eval-expression-minibuffer-setup-hook 'eldoc-mode)
+The results display in the mode line.
+
+** Electric Pair mode
+
+*** New option `electric-pair-preserve-balance', enabled by default.
+If non-nil, pairing/skipping only kicks in when that help the balance
+of parentheses and quotes; i.e., the buffer should end up at least as
+balanced as before.
+
+You can further control this behavior by adjusting the predicates
+stored in `electric-pair-inhibit-predicate' and `electric-pair-skip-self'.
+
+*** New option `electric-pair-delete-adjacent-pairs', enabled by default.
+In `electric-pair-mode', the commands `backward-delete-char' and
+`backward-delete-char-untabify' are now bound to electric variants
+that delete the closer when invoked between adjacent pairs.
+
+*** New option `electric-pair-open-newline-between-pairs', enabled by default.
+In `electric-pair-mode', inserting a newline between adjacent pairs
+opens an extra newline after point, which is indented if
+`electric-indent-mode' is also set.
+
+*** New option `electric-pair-skip-whitespace', enabled by default.
+This controls if skipping over closing delimiters should jump over any
+whitespace slack. Setting it to `chomp' makes it delete this
+whitespace. See also the variable `electric-pair-skip-whitespace-chars'.
+
+*** New variables control the pairing in strings and comments.
+You can customize `electric-pair-text-pairs' and
+`electric-pair-text-syntax-table' to tweak pairing behavior inside
+strings and comments.
+
+** New EPA option `epa-mail-aliases'.
+You can set this to a list of email address aliases that `epa-mail-encrypt'
+should use to find keys.
+
+** New ERC option `erc-accidental-paste-threshold-seconds'.
+If set to a number, this can be used to avoid accidentally pasting large
+amounts of data into the ERC input.
+
+** New ERT macro `skip-unless' allows skipping ERT tests.
+
+** Eshell
+
+*** `eshell' now supports visual subcommands and options.
+Eshell has been able to handle "visual" commands (interactive,
+non-line oriented commands such as top that require display
+capabilities not provided by eshell) by running them in an Emacs
+terminal emulator. See `eshell-visual-commands'.
+
+This feature has been extended to subcommands and options that make a
+usually line-oriented command a visual command. Typical examples are
+"git log" and "git <command> --help", which display their output in a
+pager by default. See `eshell-visual-subcommands' and `eshell-visual-options'.
+
+*** New Eshell-Tramp module.
+External su and sudo commands are now the default; the internal,
+Tramp-using variants can still be used by enabling the eshell-tramp module.
+
+** New F90 mode option `f90-smart-end-names'.
+
+** New option `gnutls-verify-error', if non-nil, means that Emacs
+should reject SSL/TLS certificates that GnuTLS determines as invalid.
+(This option defaults to nil at present, but this is expected to change
+in a future release.)
+
+** Hi-Lock
+
+*** New global command `M-s h .' (`highlight-symbol-at-point') highlights
+the symbol near point.
+
+*** New option `hi-lock-auto-select-face'. When non-nil, hi-lock commands
+will cycle through faces in `hi-lock-face-defaults' without prompting.
+
+** Icomplete is now more similar to Ido.
+
+*** Icomplete by default now applies to all forms of minibuffer completion.
+The variable `icomplete-with-completion-tables' (now a user option)
+controls this. To restore the old behavior, set it back to
+'(internal-complete-buffer).
+
+*** You can navigate through and select completions using the keys
+from `icomplete-minibuffer-map'.
+
+*** The string that separates potential completions is now a customizable
+option (`icomplete-separator'). The default is " | " rather than ",".
+
+*** New face `icomplete-first-match'; and new options
+`icomplete-hide-common-prefix' and `icomplete-show-matches-on-no-input'.
+
+*** The option `icomplete-show-key-bindings' has been removed.
+
+** Ido
+
+*** An Ido user manual is now included.
+
+*** The option `ido-use-virtual-buffers' can now take the value `auto'.
+This means to use virtual buffers if the current ido input does not match
+an existing buffer.
+
+*** The variable `ido-decorations' can optionally have two new elements,
+which are the brackets to use around the sole remaining completion.
+
+** Image mode
+
+*** New commands `n' (`image-next-file') and `p' (`image-previous-file')
+visit the next image file and the previous image file in the same
+directory, respectively.
+
+*** New commands to show specific frames of multi-frame images.
+`f' (`image-next-frame') and `b' (`image-previous-frame') visit the
+next or previous frame. `F' (`image-goto-frame') shows a specific frame.
+
+*** New commands to speed up, slow down, or reverse animation.
+`a +' (`image-increase-speed') and `a -' (`image-decrease-speed') to
+speed up and slow down the animation. `a r' (`image-reverse-speed')
+to reverse it and `a 0' (`image-reset-speed') to reset it.
+
+*** The command `image-mode-fit-frame' deletes other windows.
+When toggling, it restores the frame's previous window configuration.
+It also has an optional frame argument, which can be used by Lisp
+callers to fit the image to a frame other than the selected frame.
+
+** New Imenu option `imenu-generic-skip-comments-and-strings'.
+
+** Info
+
+*** New Info face `info-index-match', used to highlight matches in index
+entries displayed by `Info-index-next', `Info-virtual-index' and
+`info-apropos'.
+
+*** The Info-edit command is obsolete. Editing Info nodes by hand
+has not been relevant for some time.
+
+** JS Mode
+
+*** New option `js-switch-indent-offset'.
+
+*** Better indentation of multiple-variable declarations.
+If a declaration spans several lines, variables on the following lines
+are lined up to the first one.
+
+*** Recognition and better indentation of continuations in array comprehensions.
+
+** MH-E has been updated to version 8.6 - see separate MH-E-NEWS file.
+
+** Octave mode
+
+*** Font locking for Texinfo comments and new keywords.
+
+*** Completion in Octave file buffers.
+
+*** ElDoc support.
+
+*** Jump to definition.
+
+*** Documentation lookup/search.
+
+** OPascal mode is the new name for Delphi mode
+
+*** All delphi-* variables and functions have been renamed to opascal-*.
+Obsolete aliases exist for those likely to have been used externally.
+
+*** The option `delphi-newline-always-indents' has been removed.
+Use `electric-indent-mode' instead.
+
+*** The TAB key runs the standard `indent-for-tab-command', not `delphi-tab'.
+
+** Package
+
+*** The package library now supports digital signing of packages.
+Maintainers of package archives should consider signing their packages
+to enhance security.
+
+**** If the user option `package-check-signature' is non-nil,
+Emacs tries to check package signatures at install time.
+The value `allow-unsigned' allows installation of unsigned packages.
+
+**** The user option `package-unsigned-archives' lists archives where
+Emacs will not try to check signatures.
+
+*** New option `package-pinned-packages'. This is useful if you have multiple
+archives enabled, with more than one offering a given package that you want.
+
+*** In the `list-packages' buffer, you can use `f' (`package-menu-filter')
+to filter the list of packages by a keyword.
+
+*** In the `describe-package' buffer, there are now buttons listing the
+keywords related to the package. Click on a button to see other packages
+related to that keyword.
+
+*** The format of `archive-contents' files, generated by package
+repositories, has changed to allow a new (fifth) element in the data
+vectors, containing an associative list with extra properties.
+(For example, `describe-package' uses the `:url' extra property to
+display a "Homepage" header.)
+
+** In Prolog mode, `prolog-use-smie' has been removed,
+along with the non-SMIE indentation code.
+
+** Python mode
+
+*** Out of the box support for CPython, iPython and readline based shells.
+**** `python-shell-completion-module-string-code' is no longer used.
+
+*** Automatic shell prompt detection. New user options:
+**** `python-shell-interpreter-interactive-arg'.
+**** `python-shell-prompt-detect-enabled'.
+**** `python-shell-prompt-detect-failure-warning'.
+**** `python-shell-prompt-input-regexps'.
+**** `python-shell-prompt-output-regexps'.
+
+*** Python shell support for remote hosts via tramp.
+
+*** Correct display of line numbers for code sent to the Python shell.
+
+** Remember
+
+*** The new command `remember-notes' creates a buffer that is saved on exit.
+You can use it as a more permanent *scratch* buffer.
+
+*** Remember can now store notes in separate files.
+To use this, add `remember-store-in-files' to the `remember-handler-functions'
+option. The files are saved in `remember-data-directory' using
+names specified by `remember-directory-file-name-format'.
+
+** Rmail
+
+*** Customize `rmail-mbox-format' to influence some minor aspects of
+how Rmail displays non-MIME messages.
+
+*** The `unrmail' command now converts from BABYL to mboxrd format,
+rather than mboxo. Customize `unrmail-mbox-format' to change this.
+
+** Ruby mode
+
+*** Improved syntax highlighting and indentation.
+
+*** New `electric-indent-mode' integration.
+
+*** New option `ruby-encoding-magic-comment-style'.
+
+*** New option `ruby-custom-encoding-magic-comment-template'.
+
+*** New option `ruby-align-to-stmt-keywords'.
+
+*** New option `ruby-align-chained-calls'.
+
+*** More Ruby file types have been added to `auto-mode-alist'.
+
+** Search and Replace
+
+*** New global command `M-s .' (`isearch-forward-symbol-at-point')
+starts a symbol (identifier) incremental search forward with the
+symbol found near point added to the search string initially.
+
+*** `C-x 8 RET' in Isearch mode reads a character by its Unicode name
+and adds it to the search string.
+
+*** `M-s i' in Isearch mode toggles whether search matches invisible text.
+
+*** `query-replace' skips invisible text when `search-invisible' is nil,
+and opens overlays with hidden text when `search-invisible' is `open'.
+
+*** A negative prefix argument of replacement commands replaces backward.
+`M-- M-%' replaces a string backward, `M-- C-M-%' replaces a regexp
+backward, `M-s w words M-- M-%' replaces a sequence of words backward.
+
+*** By default, prefix arguments do not now terminate Isearch mode.
+Set `isearch-allow-prefix' to nil to restore the old behavior.
+
+*** More Isearch commands accept prefix arguments, namely
+`isearch-printing-char', `isearch-quote-char', `isearch-yank-word',
+`isearch-yank-line'.
+
+*** Word search now matches whitespace at the beginning/end
+of the search string if it contains leading/trailing whitespace.
+In an incremental word search or when using a non-nil LAX argument
+of `word-search-regexp', the lax matching can also match part of
+the first word (in addition to the lax matching of the last word).
+The same rules are now applied to the symbol search, with the difference
+that it matches symbols, and non-symbol characters between symbols.
+
+** New SES command `ses-rename-cell' allows assignment of names to SES cells.
+
+** The shell.el option `explicit-bash-args' includes --noediting by default.
+All non-ancient Bash versions support this option.
+
+** Shell Script mode
+
+*** The SMIE indentation engine is now used by default - see `sh-use-smie'.
+
+*** `sh-mode' now has its own setting for `add-log-current-defun-function'.
+
+** SMIE
+
+*** You can customize the SMIE indentation of a mode via `smie-config'.
+The command `smie-config-guess' can help you derive the appropriate
+indentation settings, if you provide it with an indented sample file.
+Use `smie-config-save' to save the result.
+
+*** You can customize the SMIE indentation of a file by adding an entry to
+the file's local variables of the form: `eval: (smie-config-local '(RULES))'.
+
+*** New commands `smie-config-show-indent' and `smie-config-set-indent'.
+
+** SQL mode
+
+*** Improved login monitoring and appropriate response to login failures.
+New variable `sql-login-delay' defines maximum wait time for a connection.
+
+*** Oracle support.
+SQL*Plus script placeholders are properly highlighted and identified
+in `sql-placeholders-filter'. When starting SQL*Plus, `sql-oracle-options'
+are passed before the logon parameter, as required. The default now
+includes `-L', to limit the number of logon attempts per invocation.
+
+** New Term mode option `term-suppress-hard-newline'.
+
+** Todo mode has been rewritten and enhanced.
+The Todo mode user manual describes all commands and most user
+options. To support some of these features, a new file format is
+used, which is incompatible with the old format; however, you can
+convert old todo and done item files to the new format on initializing
+the first new todo file, or at any later time with the provided
+conversion command. The previous version of todo-mode.el has been
+renamed to otodo-mode.el and is now obsolete. New features include:
+
+*** Support for multiple todo files and archive files of done items.
+
+*** Renaming, reordering, moving, merging, and deleting categories.
+
+*** Sortable tabular summaries of categories and the item types they contain.
+
+*** Cross-category lists of items filtered by specific criteria.
+
+*** More fine-grained interaction with the Emacs diary, by being able to
+decide for each todo item whether it appears in the Fancy Diary display.
+
+*** Highly flexible new item insertion and item editing.
+
+*** Moving items between categories, storing done items in their category
+or in archive files, undoing or unarchiving done items.
+
+*** Reprioritizing items by inputting a numerical priority.
+
+*** Extensive customizability of operation and display, including many faces.
+
+** Trace
+
+*** `trace-function' and `trace-function-background' no longer prompt for
+the output buffer. Unless you use a prefix argument, they output to
+`trace-buffer'.
+
+*** With a prefix argument, `trace-function' and `trace-function-background'
+will prompt for a "context". This is a Lisp expression, whose value at the
+time the function is entered/exited is printed along with the function's
+name and arguments.
+
+** Tramp
+
+*** New connection method "adb", which allows to access Android
+devices by the Android Debug Bridge. The variable `tramp-adb-program'
+can be used to adapt the path of the "adb" program, if needed.
+
+*** Handlers for `file-acl' and `set-file-acl' for remote machines
+that support POSIX ACLs.
+
+*** Handlers for `file-notify-add-watch' and `file-notify-rm-watch'
+for remote machines that support filesystem notifications.
+
+*** The experimental url syntax for remote file names has been removed.
+
+*** The connection methods "plink1", "ssh1", "ssh2", "scp1", "scp2",
+"scpc" and "rsyncc" are discontinued. The ssh option
+"ControlMaster=auto" is set automatically in all ssh-based methods,
+when possible. See `tramp-use-ssh-controlmaster-options'.
+
+** New URL command `url-cookie-list' displays the current cookies,
+and allows you to interactively remove cookies.
+
+** VC and related modes
+
+*** In VC directory mode, `D' displays diffs between VC-controlled
+whole tree revisions.
+
+*** In VC directory mode, `L' lists the change log for the current VC
+controlled tree in a window.
+
+*** In VC directory mode, `I' shows a log of changes that will be
+received with a pull operation.
+
+*** `C-x v G' (globally) and `G' (in VC directory mode) ignores a file
+under current version control system. When called with a prefix
+argument, you can remove a file from the ignored file list.
+
+** VHDL mode
+
+*** New options: `vhdl-actual-generic-name', `vhdl-beautify-options'.
+
+*** New commands: `vhdl-fix-statement-region', `vhdl-fix-statement-buffer'.
+
+** The Woman commands `woman-default-faces' and `woman-monochrome-faces'
+are obsolete. Customize the `woman-*' faces instead.
+
+** More packages look for ~/.emacs.d/<foo> additionally to ~/.<foo>.
+Affected files:
+~/.emacs.d/timelog replaces ~/.timelog
+~/.emacs.d/vip replaces ~/.vip
+~/.emacs.d/viper replaces ~/.viper
+~/.emacs.d/ido.last replaces ~/.ido.last
+~/.emacs.d/kkcrc replaces ~/.kkcrc
+~/.emacs.d/quickurls replaces ~/.quickurls
+~/.emacs.d/idlwave/ replaces ~/.idlwave/
+~/.emacs.d/bdfcache.el replaces ~/.bdfcache.el
+~/.emacs.d/places replaces ~/.emacs-places
+~/.emacs.d/shadows replaces ~/.shadows
+~/.emacs.d/shadow_todo replaces ~/.shadow_todo
+~/.emacs.d/strokes replaces ~/.strokes
+~/.emacs.d/notes replaces ~/.notes
+~/.emacs.d/type-break replaces ~/.type-break
+Also the following files used by the now obsolete otodo-mode.el:
+~/.emacs.d/todo-do replaces ~/.todo-do
+~/.emacs.d/todo-done replaces ~/.todo-done
+~/.emacs.d/todo-top replaces ~/.todo-top
+
+** Obsolete packages
+
+*** iswitchb.el; use icomplete-mode.
+
+*** longlines.el; use visual-line-mode.
+
+*** meese.el.
+
+*** sup-mouse.el.
+
+*** terminal.el; use term.el instead.
+
+*** the old version of todo-mode.el (renamed to otodo-mode.el).
+
+*** xesam.el (owing to the cancellation of the XESAM project).
+
+*** yow.el; use fortune.el or cookie1.el instead.
+
+\f
+* New Modes and Packages in Emacs 24.4
+
+** New package eww.el provides a built-in web browser.
+This requires Emacs to have been compiled with libxml2 support.
+
+** New package nadvice.el offers lighter-weight advice facilities.
+It is layered as:
+
+*** `add-function'/`remove-function', which can be used to add/remove code on
+any function-carrying place, such as process filters or `<foo>-function' hooks.
+
+*** `advice-add'/`advice-remove' to add/remove a piece of advice on a named
+function, much like `defadvice' does.
+
+** New package frameset.el provides a set of operations to save a frameset
+(the state of all or a subset of the existing frames and windows, somewhat
+similar to a frame configuration), both in-session and persistently, and
+restore it at some point in the future.
+
+** New package filenotify.el provides an interface for file system
+notifications. It requires that Emacs be compiled with one of the
+low-level libraries gfilenotify.c, inotify.c or w32notify.c.
+
+** New minor modes `prettify-symbols-mode' and `global-prettify-symbols-mode'
+display specified symbols as composed characters. E.g., in Emacs Lisp mode,
+this replaces the string "lambda" with the Greek lambda character.
+
+** New minor mode `superword-mode', which overrides the default word motion
+commands to treat "symbol_words" as a single word, similar to what
+`subword-mode' does.
+
+\f
+* Incompatible Lisp Changes in Emacs 24.4
+
+** The default file coding for Emacs Lisp files is now utf-8.
+(See `file-coding-system-alist'.) In most cases, this change is
+transparent, but files that contain unusual characters without
+specifying an explicit coding system may fail to load with obscure
+errors. You should either convert them to utf-8 or add an explicit
+`coding:' cookie.
+
+** Default process filters and sentinels are not nil any more.
+Instead they default to a function that does what the nil value used to do.
+
+** Overlay priority does not have to be nil or a non-negative integer.
+Overlay priority can be other kinds of Lisp objects. We didn't yet
+decide whether other types of values are stable enough, and therefore
+don't feel it's right to document them. For now, don't assume in your
+code that the values of overlay priority can only be either nil or an
+integer, always test them with an appropriate predicate to be one or
+the other. If you need to sort arbitrary overlays into priority
+order, `overlays-at' can now optionally do this.
+You should still only specify integer priorities on overlays you create.
+
+** The cars of the elements in `interpreter-mode-alist' are now
+treated as regexps rather than literal strings.
+
+** `overriding-terminal-local-map' no longer replaces the local keymaps.
+It used to disable the minor mode, major mode, and text-property keymaps,
+whereas now it simply has higher precedence.
+
+** `kill-region' has lost its `yank-handler' optional argument.
+
+** `(input-pending-p)' no longer runs other timers that are ready to run.
+The new optional CHECK-TIMERS parameter allows for the prior behavior.
+
+** `defvar' and `defcustom' in a let-binding affect the "external" default.
+
+** The syntax of ?» and ?« is now punctuation instead of matched parens.
+Some languages match those as »...«, and others as «...», so it is
+better for Emacs to stay neutral by default.
+
+** `read-event' does not always decode chars in ttys any more. As was the case
+in Emacs 22 and before, `read-event' (and `read-char') by default read raw
+bytes from the terminal. If you want to read decoded chars instead (as was
+always the case in Emacs-23, for example), pass a non-nil
+`inherit-input-method' argument.
+
+** In `symbol-function', nil and "unbound" are indistinguishable.
+`symbol-function' does not signal a `void-function' error any more.
+To determine if a symbol's function definition is void, use `fboundp'.
+
+** `defadvice' does not honor the `freeze' flag and cannot advise
+special-forms any more.
+
+** `dolist' no longer binds VAR while evaluating the RESULT form,
+when lexical binding is enabled. Previously, VAR was bound to nil,
+which often led to spurious unused-variable warnings.
+
+** The return value of `backup-buffer' has changed.
+The second argument is no longer an SELinux context, instead it is an
+alist of extended attributes as returned by the new function
+`file-extended-attributes'. The attributes can be applied to another
+file using `set-file-extended-attributes'.
+
+** By default `copy-file' no longer copies file permission bits to an
+existing destination; and it sets the file permission bits of a newly
+created destination to those of the source, masked by the default file
+permissions. To copy the file permission bits, pass t as the
+PRESERVE-PERMISSIONS argument of `copy-file'.
+
+** `visited-file-modtime' now returns -1 for nonexistent files.
+Formerly it returned a list (-1 LOW USEC PSEC), but this was ambiguous
+in the presence of files with negative time stamps.
+
+** Frame-local variables that affect redisplay do not work any more.
+More specifically, redisplay does not bother to check for a frame-local
+value when looking up variables.
+
+** In compiled Lisp files, the header no longer includes a timestamp.
+
+** The option `inhibit-local-menu-bar-menus' has been removed.
+
+\f
+* Lisp Changes in Emacs 24.4
+
+** Change to the Emacs Lisp coding conventions: the package descriptor
+and name of global variables, constants, and functions should be separated
+by two hyphens if the symbol is not meant to be used by other packages.
+
+** The second argument of `eval' can now specify a lexical environment.
+
+** New macro `define-alternatives' can be used to define generic commands.
+Generic commands are interactive functions whose implementation can be
+selected among several alternatives, as a matter of user preference.
+
+** Numeric comparison functions =, <, >, <=, >= can now take many arguments.
+
+** New functions `special-form-p' and `macrop'.
+
+** New macro `with-eval-after-load'.
+This is like the old `eval-after-load', but better behaved.
+
+** If you give a symbol a `defalias-fset-function' property, `defalias'
+on that symbol will use the associated value as a function to call
+in place of `fset'.
+
+** New variable `enable-dir-local-variables'.
+Directory-local variables are ignored if this is nil. This may be
+useful for modes that want to ignore directory-locals while still
+respecting file-local variables.
+
+** `read-regexp' now uses the new variable `read-regexp-defaults-function'
+as a function to call to provide default values.
+
+** New functions `group-gid' and `group-real-gid'.
+
+** New function `get-pos-property'.
+
+** New hook `pre-redisplay-function'.
+
+** `byte-compile-interactive-only-functions' is now obsolete.
+To specify that a command should only be called interactively, give it
+a non-nil `interactive-only' property.
+
+** New function `string-suffix-p'.
+
+** `split-string' now takes an optional argument TRIM.
+The value, if non-nil, is a regexp that specifies what to trim from
+the start and end of each substring.
+
+** Completion
+
+*** The separator used by `completing-read-multiple' is now a regexp.
+The default `crm-separator' has been changed to allow surrounding spaces
+around the comma.
+
+*** New function `completion-table-with-cache' is a wrapper for
+`completion-table-dynamic' that caches the result of the last lookup.
+
+*** New function `completion-table-merge' to combine several
+completion tables by merging their completions.
+
+*** The `common-substring' argument of `display-completion-list',
+which has been documented as obsolete since Emacs 23.1, is now _really_
+obsolete, and no longer advertised. Instead either call
+`completion-hilit-commonality' to add the highlighting; or use
+`completion-all-completions', which returns highlighted strings.
+
+** Encoding and decoding of text
+
+*** New coding-system `prefer-utf-8'.
+This is like `undecided' but prefers UTF-8 on decoding if the text to
+be decoded does not contain any invalid UTF-8 sequences. On encoding,
+any non-ASCII characters are automatically encoded as UTF-8.
+
+*** New attributes of coding-systems whose type is `undecided'.
+Two new attributes, `:inhibit-null-byte-detection' and
+`:inhibit-iso-escape-detection', determine how to detect encoding of
+text that includes null bytes and ISO-2022 escape sequences, respectively.
+Each of these attributes can be either nil, zero, or t. If t, decoding
+text ignores null bytes and ISO-2022 sequences, respectively. If nil,
+null bytes cause text to be decoded with no-conversion, and ISO-2022
+sequences cause Emacs to assume the text is encoded in one of the ISO-2022
+encodings, such as iso-2022-7bit. If zero, Emacs consults the variables
+`inhibit-null-byte-detection' and `inhibit-iso-escape-detection'.
+The new attribute `:prefer-utf-8', if non-nil, causes Emacs to prefer
+UTF-8 encoding and decoding, whenever possible.
+
+These attributes are only meaningful for coding-systems of type `undecided'.
+(The type of a coding-system is determined by its `:coding-type' attribute
+and can be accessed by calling the `coding-system-type' function.)
+
+** Error-handling
+
+*** New function `define-error'.
+
+*** `with-demoted-errors' takes an additional argument `format'.
+
+*** Errors from timer functions are no longer silently discarded,
+but are reported as messages. So you may see "Error running timer"
+messages from code that was failing silently till now. Set
+`debug-on-error' non-nil to get a real error and a backtrace.
+
+** Faces
+
+*** Face specs set via Custom themes now replace the `defface' spec
+rather than inheriting from it. In other words, setting a face via a
+theme now behaves like setting it via Customize: you only need to
+specify the attributes that you want, you don't need to unset those
+that you don't want.
+
+*** The function `face-spec-set' is now like `setq' for face specs.
+Its third arg now accepts values specifying a face spec type (defface,
+custom, or override spec), and the relevant spec is set accordingly.
+
+*** New face spec attribute :distant-foreground
+specifies foreground to use if background color is near the foreground
+color that would otherwise have been used.
+
+*** New function `add-face-text-property', which can be used to
+conveniently prepend/append new face properties.
+
+*** New face characteristic (supports :underline (:style wave))
+specifies whether or not the terminal can display a wavy line.
+
+** File-handling
+
+*** Support for filesystem notifications.
+Emacs now supports notifications of filesystem changes, such as
+creation, modification, and deletion of files. This requires the
+`glib' API, or the 'inotify' API (on GNU/Linux systems only). On
+MS-Windows systems, this is supported for Windows XP and newer.
+
+*** The 9th element returned by `file-attributes' is now unspecified.
+Formerly, it was t if the file's gid would change if file were deleted
+and recreated. This value has been inaccurate for years on many
+platforms, and nobody seems to have noticed or cared.
+
+*** The 6th argument to `copy-file' has been renamed to
+PRESERVE-PERMISSIONS as it now handles ACL entries and the traditional
+Unix file permission bits as well as SELinux context.
+
+*** The function `file-ownership-preserved-p' now has an optional
+argument GROUP which causes it check for file group too. This can be
+used in place of the 9th element of `file-attributes'.
+
+*** The function `set-visited-file-modtime' now accepts a 0 or -1 argument,
+with the same interpretation as the returned value of `visited-file-modtime'.
+
+** Image API
+
+*** `image-animated-p' is now `image-multi-frame-p'.
+It returns non-nil for any image that contains multiple frames,
+whether or not it specifies a frame delay.
+
+*** New variable `image-default-frame-delay' gives the frame delay for
+animated images which do not specify a frame delay.
+
+*** New functions `image-current-frame' and `image-show-frame' for getting
+and setting the current frame of a multi-frame image.
+
+** ImageMagick
+
+*** ImageMagick images now support the :max-width and :max-height keywords.
+
+*** When using `create-image' with image data, you can pass a :format
+attribute (via the property-list argument) in order to help
+ImageMagick detect the image type. The value should be a MIME
+content-type that is found in the new variable `image-format-suffixes'.
+
+** Revert and Autorevert
+
+*** If Emacs is compiled with file notification support, it uses notifications
+instead of checking file time stamps. To disable this, set the user option
+`auto-revert-use-notify' to nil. Alternatively, you can specify a regular
+expression matching directories to be excluded from file notifications via
+`auto-revert-notify-exclude-dir-regexp'.
+
+*** The default values of `buffer-stale-function', `revert-buffer-function',
+and `revert-buffer-insert-file-contents-function' are no longer nil.
+Instead they default to functions that do what the nil value used to.
+
+*** `buffer-stale-function' is now used for buffers visiting files too.
+
+*** The new user option `auto-revert-remote-files' enables reversion
+of remote files, if non-nil.
+
+** Terminal
+
+*** Functions to pop up menus and dialogs now work on all terminals,
+including TTYs. This includes `x-popup-menu', `x-popup-dialog',
+`message-box', `yes-or-no-p', etc.
+
+The function `display-popup-menus-p' will now return non-nil for a
+display or frame whenever a mouse is supported on that display or frame.
+
+*** New hook `tty-setup-hook', run at the end of initializing a text terminal.
+
+*** The hook `term-setup-hook' is obsolete. It is entirely equivalent
+to `emacs-startup-hook'. See also the new `tty-setup-hook'.
+
+** Minor internal changes to the details of lock files.
+The lock for DIR/FILE is now _always_ DIR/.#FILE.
+If DIR/.#FILE already exists and is not an Emacs lock file,
+Emacs makes no attempt to lock DIR/FILE. (Previously, it fell back to
+numbered lock files DIR/.#FILE.0...).
+On file systems that do not support symbolic links, the lock is now a
+regular file with contents being what would have been in the symlink.
+
+** New bool-vector set operation functions:
+*** `bool-vector-exclusive-or'
+*** `bool-vector-union'
+*** `bool-vector-intersection'
+*** `bool-vector-set-difference'
+*** `bool-vector-not'
+*** `bool-vector-subsetp'
+*** `bool-vector-count-consecutive'
+*** `bool-vector-count-population'
+
+** New library subr-x.el with miscellaneous small utility functions:
+*** `hash-table-keys'
+*** `hash-table-values'
+*** `string-blank-p'
+*** `string-empty-p'
+*** `string-join'
+*** `string-reverse'
+*** `string-trim-left'
+*** `string-trim-right'
+*** `string-trim'
+*** `string-remove-prefix'
+*** `string-remove-suffix'
+
+** The `time-to-seconds' alias to `float-time' is no longer marked obsolete.
+
+** The spelling of the rx.el category `chinese-two-byte' has been
+corrected (the first 'e' was missing).
+
+** EIEIO namespace cleanup, obsolete-aliasing functions to use `eieio-' prefix:
+*** object-name -> eieio-object-name
+*** object-class -> eieio-object-class
+*** object-class-fast -> eieio--object-class
+*** object-class-name -> eieio-object-class-name
+*** object-name-string -> eieio-object-name-string
+*** object-num-slots -> eieio--object-num-slots
+*** object-set-name-string -> eieio-object-set-name-string
+*** class-of -> eieio-object-class
+*** class-name -> eieio-class-name
+*** class-parent -> eieio-class-parent
+*** class-parents -> eieio-class-parents
+*** class-parents-fast -> eieio-class-parents-fast
+*** class-children -> eieio-class-children
+*** class-num-slots -> eieio--class-num-slots
+*** class-precedence-list -> eieio-class-precedence-list
+*** class-direct-subclasses -> eieio-class-children
+*** class-direct-superclasses -> eieio-class-parents
+
+** Obsoleted functions
+*** `log10'
+*** `dont-compile'
+*** `lisp-complete-symbol'
+*** `field-complete'
+*** `minibuffer-completion-contents'
+*** `isearch-nonincremental-exit-minibuffer'
+*** `isearch-filter-visible'
+*** `generic-make-keywords-list'
+*** `get-upcase-table' (use `case-table-get-table' instead).
+
+** `with-wrapper-hook' is obsoleted by `add-function'.
+The few hooks that used with-wrapper-hook are replaced as follows:
+*** `abbrev-expand-function' obsoletes `abbrev-expand-functions'.
+*** `completion-in-region-function' obsoletes `completion-in-region-functions'.
+*** `filter-buffer-substring-function' obsoletes `filter-buffer-substring-functions'.
+
+\f
+* Changes in Emacs 24.4 on Non-Free Operating Systems
+
+** New Core Text based font backend for Mac OS X 10.5 and newer.
+To use the old font backend, use the following on the command line:
+ % defaults write org.gnu.Emacs FontBackend ns
+GNUstep and Mac OS X 10.4 use the old font backend.
+
+** Improved fullscreen support on Mac OS X 10.7 and newer, where the
+default fullscreen method is now "native" fullscreen. To use the
+old style fullscreen, customize `ns-use-native-fullscreen' to nil.
+
+** On Mac OS X 10.7 and newer, Emacs can use sRGB colorspace, and does so
+by default. Customize `ns-use-srgb-colorspace' to go back to the old method.
+Note that this does not apply to images.
+
+** The procedure for building Emacs on MS-Windows has changed.
+It is now built by running the same configure script as on all other
+platforms. This requires the MSYS environment and MinGW development
+tools. See the updated instructions in nt/INSTALL for details.
+
+Using the Posix configure script and Makefiles also means a change in
+the directory structure of the Emacs installation on Windows. It is
+now the same as on GNU and Unix systems. In particular, the auxiliary
+programs, such as cmdproxy.exe and hexl.exe, are in
+libexec/emacs/VERSION/i686-pc-mingw32 (where VERSION is the Emacs
+version), version-independent site-lisp is in share/emacs/site-lisp,
+version-specific Lisp files are in share/emacs/VERSION/lisp and in
+share/emacs/VERSION/site-lisp, Info docs are in share/info, and data
+files are in share/emacs/VERSION/etc. (Emacs knows about all these
+directories and will find the files in there automatically; there's no
+need to set any variables due to this change.)
+
+** Emacs on Windows 2000 and later can now access files and directories
+whose names cannot be encoded in the current system codepage.
+
+The new variable `w32-unicode-filenames' controls this feature: if it
+is t, Emacs uses Unicode APIs to pass file names to system calls,
+which lifts the limitation of file names to the current locale.
+
+** Lock files now work on MS-Windows.
+This helps to prevent losing your edits if the same file is being
+edited in another Emacs session or by another user. See the node
+"Interlocking" in the Emacs User Manual for the details. To disable
+file locking, customize `create-lockfiles' to nil.
+
+** The "generate a backtrace on fatal error" feature now works on MS-Windows.
+The backtrace is written to the 'emacs_backtrace.txt' file in the
+directory where Emacs was running.
+
+** The `network-interface-list' and `network-interface-info' functions
+are now available on MS-Windows.
+
+** The variable `buffer-file-type' is no longer supported.
+Setting it has no effect, and %t in the mode-line format is ignored.
+Likewise, `file-name-buffer-file-type-alist' is now obsolete, and
+modifying it has no effect.
+
+\f
+* Installation Changes in Emacs 24.3
+
+** The default X toolkit is now Gtk+ version 3.
+If you don't pass `--with-x-toolkit' to configure, or if you use
+`--with-x-toolkit=gtk' or `--with-x-toolkit=yes', configure will try
+to build with Gtk+ version 3, and if that fails, try Gtk+ version 2.
+You can explicitly require a specific version by passing
+`--with-x-toolkit=gtk2' or `--with-x-toolkit=gtk3' to configure.
+
+** New configure option `--enable-link-time-optimization', to utilize
+an appropriate feature provided by GCC since version 4.5.0.
+
+** New configure option `--without-all' to disable most of the optional
+features (image support, etc.) that are normally enabled by default.
+
+** New configure option `--enable-gcc-warnings' (for developing/debugging
+Emacs). If building with GCC, this enables compile-time checks that
+warn/give errors about possibly-questionable C code. On a recent GNU
+system there should be no warnings; on older and on non-GNU systems
+the results may be useful to developers.
+
+** The configure option `--enable-use-lisp-union-type' has been
+renamed to `--enable-check-lisp-object-type', as the resulting
+Lisp_Object type no longer uses a union to implement the compile time
+check that this option enables.
+
+** The configure option `--disable-maintainer-mode' has been removed,
+as it was confusingly-named and rarely useful.
+
+** The configure options `--program-prefix', `--program-suffix', and
+`--program-transform-name' apply to more than just the installed
+binaries. Now they also affect the man pages, icons, and the
+etc/emacs.desktop file; but not the info pages, since this would break
+links between the various manuals.
+
+** You can use `NO_BIN_LINK=t make install' to prevent the installation
+overwriting "emacs" in the installation bin/ directory with a link
+to "emacs-VERSION".
+
+** Emacs uses libtinfo in preference to libncurses, if available.
+
+** On FreeBSD and NetBSD, configure no longer adds /usr/local/lib and
+/usr/pkg/lib to the linker search path. You must add them yourself if
+you want them.
+
+** The standalone scripts `rcs-checkin' and `vcdiff' have been removed
+(from the bin and libexec directories, respectively). The former is
+no longer relevant, the latter is replaced by lisp (in vc-sccs.el).
+
+\f
+* Startup Changes in Emacs 24.3
+
+** Emacs no longer searches for `leim-list.el' files beneath the standard
+lisp/ directory. There should not be any there anyway. If you have
+been adding them there, put them somewhere else; e.g., site-lisp.
+
+** The `--no-site-lisp' command line option now works for Nextstep builds.
+
+\f
+* Changes in Emacs 24.3
+
+** Help
+
+*** `C-h f' (`describe-function') can now perform autoloading.
+When this command is called for an autoloaded function whose docstring
+contains a key substitution construct, that function's library is
+automatically loaded, so that the documentation can be shown
+correctly. To disable this, set `help-enable-auto-load' to nil.
+
+*** `C-h f' now reports previously-autoloaded functions as "autoloaded",
+even after their associated libraries have been loaded (and the
+autoloads have been redefined as functions).
+
+** ImageMagick
+
+*** Images displayed via ImageMagick now support transparency and the
+:background image specification property.
+
+*** When available, ImageMagick support is automatically enabled.
+It is no longer necessary to call `imagemagick-register-types'
+explicitly to install ImageMagick image types; that function is called
+automatically at startup, or when customizing an imagemagick- option.
+
+*** Setting `imagemagick-types-inhibit' to t now disables the use of
+ImageMagick to view images. (You must call `imagemagick-register-types'
+afterwards if you do not use customize to change this.)
+
+*** The new variable `imagemagick-enabled-types' also affects which
+ImageMagick types are treated as images. The function
+`imagemagick-filter-types' returns the list of types that will be
+treated as images.
+
+** Minibuffer
+
+*** In minibuffer filename prompts, `C-M-f' and `C-M-b' now move to the
+next and previous path separator, respectively.
+
+*** `minibuffer-electric-default-mode' can shorten "(default ...)" to "[...]"
+in minibuffer prompts. Just set `minibuffer-eldef-shorten-default'
+non-nil before enabling the mode.
+
+** Mode line
+
+*** New option `mode-line-default-help-echo' specifies the help text
+(shown in a tooltip or in the echo area) for any part of the mode line
+that does not have its own specialized help text.
+
+*** You can now click mouse-3 in the coding system indicator to invoke
+`set-buffer-file-coding-system'.
+
+** Server and client
+
+*** emacsclient now obeys string values for `initial-buffer-choice',
+if it is told to open a new frame without specifying any file to visit
+or expression to evaluate.
+
+*** New option `server-auth-key' specifies a shared server key.
+
+** Emacs now generates backtraces on fatal errors.
+On encountering a fatal error, Emacs now outputs a textual description
+of the fatal signal, and a short backtrace on platforms like glibc
+that support backtraces.
+
+** `C-x C-q' is now bound to the new minor mode `read-only-mode'.
+This minor mode replaces `toggle-read-only', which is now obsolete.
+
+** Most `y-or-n' prompts now allow you to scroll the selected window.
+Typing `C-v' or `M-v' at a y-or-n prompt scrolls forward or backward
+respectively, without exiting from the prompt.
+
+** In the Package Menu, newly-available packages are listed as "new",
+and sorted above the other "available" packages by default.
+
+** If your Emacs was built from a repository checkout, the new variable
+`emacs-bzr-version' contains information about the bzr revision used.
+
+** New option `create-lockfiles' specifies usage of lockfiles.
+It defaults to t. Changing it to nil inhibits the creation of lock
+files (use this with caution).
+
+** New option `enable-remote-dir-locals', if non-nil, allows directory-local
+variables on remote hosts.
+
+** The entry for PCL-CVS has been removed from the Tools menu.
+The PCL-CVS commands are still available via the keyboard.
+
+** Using "unibyte: t" in Lisp source files is obsolete.
+Use "coding: raw-text" instead.
+
+** In the buffer made by `M-x report-emacs-bug', the `C-c m' binding
+has been changed to `C-c M-i' (`report-emacs-bug-insert-to-mailer').
+The previous binding, introduced in Emacs 24.1, was a mistake, because
+`C-c LETTER' bindings are reserved for user customizations.
+
+** Internationalization
+
+*** New language environment: Persian.
+
+*** New input method `vietnamese-vni'.
+
+** Nextstep (GNUstep / Mac OS X) port
+
+*** Support for fullscreen and the frame parameter fullscreen.
+
+*** A file dialog is used for open/save operations initiated from the
+menu/toolbar.
+
+\f
+* Editing Changes in Emacs 24.3
+
+** Search and Replace
+
+*** Non-regexp Isearch now performs "lax" space matching.
+Each sequence of spaces in the supplied search string may match any
+sequence of one or more whitespace characters, as specified by the
+variable `search-whitespace-regexp'. (This variable is also used by a
+similar existing feature for regexp Isearch.)
+
+*** New Isearch command `M-s SPC' toggles lax space matching.
+This applies to both ordinary and regexp Isearch.
+
+*** New option `replace-lax-whitespace'.
+If non-nil, `query-replace' uses flexible whitespace matching too.
+The default is nil.
+
+*** Global `M-s _' starts a symbol (identifier) incremental search,
+and `M-s _' in Isearch toggles symbol search mode.
+`M-s c' in Isearch toggles search case-sensitivity.
+
+** Navigation commands
+
+*** New binding `M-g c' for `goto-char'.
+
+*** New binding `M-g TAB' for `move-to-column'.
+
+*** `M-g TAB' (`move-to-column') prompts for a column number if called
+interactively with no prefix arg. Previously, it moved to column 1.
+
+** New option `yank-handled-properties' allows processing of text
+properties on yanked text, in ways that are more general than just
+removing them (as is done by `yank-excluded-properties').
+
+** New option `delete-trailing-lines' specifies whether
+M-x delete-trailing-whitespace should delete trailing lines at the end
+of the buffer. It defaults to t.
+
+** `C-u M-=' now counts lines/words/characters in the entire buffer.
+
+** `C-x 8 RET' is now bound to `insert-char', which is now a command.
+`ucs-insert' is now an obsolete alias for `insert-char'.
+
+** The `z' key no longer has a binding in most special modes.
+It used to be bound to `kill-this-buffer', but `z' is too easy to
+accidentally type.
+
+** New command `C-x r M-w' (`copy-rectangle-as-kill').
+It copies the region-rectangle as the last rectangle kill.
+
+** Registers
+
+*** `C-x r +' is now overloaded to invoke `append-to-register'.
+
+*** New option `register-separator' specifies the register containing
+the text to put between collected texts for use with
+M-x append-to-register and M-x prepend-to-register.
+
+\f
+* Changes in Specialized Modes and Packages in Emacs 24.3
+
+** Common Lisp emulation (CL)
+
+*** CL's main entry is now (require 'cl-lib).
+`cl-lib' is like the old `cl' except that it uses the namespace cleanly;
+i.e., all its definitions have the "cl-" prefix (and internal definitions
+use the "cl--" prefix).
+
+If `cl' provided a feature under the name `foo', then `cl-lib'
+provides it under the name `cl-foo' instead; with the exceptions of the
+few `cl' definitions that had to use `foo*' to avoid conflicts with
+pre-existing Elisp entities. These have been renamed to `cl-foo'
+rather than `cl-foo*'.
+
+The old `cl' is now deprecated and is mainly just a bunch of aliases that
+provide the old, non-prefixed names. Some exceptions are listed below:
+
+*** `cl-flet' is not like `flet' (which is deprecated).
+Instead it obeys the behavior of Common-Lisp's `flet'.
+In particular, in cl-flet function definitions are lexically scoped,
+whereas in flet the scoping is dynamic.
+
+*** `cl-labels' is slightly different from `labels'.
+The difference is that it relies on the `lexical-binding' machinery
+(as opposed to the `lexical-let' machinery used previously) to capture
+definitions in closures, so such closures will only work if `lexical-binding'
+is in use.
+
+*** `cl-letf' is not exactly like `letf'.
+The only difference is in details that relate to some deprecated usage
+of `symbol-function' in place forms.
+
+*** `progv' was rewritten to use the `let' machinery.
+A side effect is that variables without corresponding values are bound
+to nil rather than being made unbound.
+
+*** The following methods of extending `setf' are obsolete
+(use features from gv.el instead):
+`define-modify-macro' (use `gv-letplace')
+`defsetf' (use `gv-define-simple-setter' or `gv-define-setter')
+`define-setf-expander' (use `gv-define-setter' or `gv-define-expander')
+`get-setf-method' no longer exists (see "Incompatible Lisp Changes")
+
+** Diff mode
+
+*** Changes are now highlighted using the same color scheme as in
+modern VCSes. Deletions are displayed in red (new faces
+`diff-refine-removed' and `smerge-refined-removed', and new definition
+of `diff-removed'), insertions in green (new faces `diff-refine-added'
+and `smerge-refined-added', and new definition of `diff-added').
+
+*** The variable `diff-use-changed-face' defines whether to use the
+face `diff-changed', or `diff-removed' and `diff-added' to highlight
+changes in context diffs.
+
+*** The new command `diff-delete-trailing-whitespace' removes trailing
+whitespace introduced by a diff.
+
+** Ediff now uses the same color scheme as Diff mode.
+
+** Python mode
+
+A new version of python.el, which provides several new features, including:
+per-buffer shells, better indentation, Python 3 support, and improved
+shell-interaction compatible with iPython (and virtually any other
+text based shell).
+
+*** Some user options have been replaced/renamed, including (old -> new):
+**** python-indent -> python-indent-offset
+**** python-guess-indent -> python-indent-guess-indent-offset
+**** python-pdbtrack-do-tracking-p -> python-pdbtrack-activate
+**** python-use-skeletons -> python-skeleton-autoinsert
+
+*** Some user options have been removed, including:
+
+**** `python-indent-string-contents': Strings are never indented.
+
+**** `python-honour-comment-indentation':
+Comments are always considered as indentation markers.
+
+**** `python-continuation-offset': Indentation is automatically
+calculated in a pep8 compliant way depending on the context.
+
+**** `python-shell-prompt-alist', `python-shell-continuation-prompt-alist':
+Have no direct mapping as the shell interaction is completely different.
+
+**** `python-python-command', `python-jython-command':
+Replaced by `python-shell-interpreter'.
+
+**** `inferior-python-filter-regexp', `python-remove-cwd-from-path',
+`python-pdbtrack-minor-mode-string', `python-source-modes':
+No longer relevant.
+
+*** Some commands have been replaced (old -> new):
+**** python-insert-class -> python-skeleton-class
+**** python-insert-def -> python-skeleton-def
+**** python-insert-for -> python-skeleton-for
+**** python-insert-if -> python-skeleton-if
+**** python-insert-try/except -> python-skeleton-try
+**** python-insert-try/finally -> python-skeleton-try
+**** python-insert-while -> python-skeleton-while
+**** python-find-function -> python-nav-jump-to-defun
+**** python-next-statement -> python-nav-forward-sentence
+**** python-previous-statement -> python-nav-backward-sentence
+**** python-beginning-of-defun-function -> python-nav-beginning-of-defun
+**** python-end-of-defun-function -> python-nav-end-of-defun
+**** python-send-buffer -> python-shell-send-buffer
+**** python-send-defun -> python-shell-send-defun
+**** python-send-region -> python-shell-send-region
+**** python-send-region-and-go -> emulate with python-shell-send-region
+and python-shell-switch-to-shell
+**** python-send-string -> python-shell-send-string
+**** python-switch-to-python -> python-shell-switch-to-shell
+**** python-describe-symbol -> python-eldoc-at-point
+
+** D-Bus
+
+*** New variables `dbus-compiled-version' and `dbus-runtime-version'.
+
+*** The D-Bus object manager interface is implemented.
+
+*** Variables of type :(u)int32 and :(u)int64 accept floating points,
+if their value does not fit into Emacs's integer range.
+
+*** The function `dbus-call-method' is now non-blocking.
+It can be interrupted by `C-g'. `dbus-call-method-non-blocking' is obsolete.
+
+*** Signals can also be sent as unicast messages.
+
+*** The argument list of `dbus-register-signal' has been extended,
+according to the new match rule types of D-Bus.
+
+*** `dbus-init-bus' supports private connections.
+
+*** There is a new function `dbus-setenv'.
+
+** `desktop-path' no longer includes the "." directory.
+Desktop files are now located in ~/.emacs.d by default.
+
+** Dired
+
+*** `dired-do-async-shell-command' executes each file sequentially
+if the command ends in `;' (when operating on multiple files).
+Otherwise, it executes the command on each file in parallel.
+
+*** Typing `M-n' in the minibuffer of `dired-do-chmod', `dired-do-chgrp',
+`dired-do-chown', and `dired-do-touch' yanks the attributes of the
+file at point.
+
+*** When the region is active, `m' (`dired-mark'), `u' (`dired-unmark'),
+`DEL' (`dired-unmark-backward'), and `d' (`dired-flag-file-deletion')
+mark/unmark/flag all files in the active region.
+
+*** The minibuffer default for `=' (`dired-diff') has changed.
+It is now the backup file for the file at point, if one exists.
+In Transient Mark mode the default is the file at the active mark.
+
+*** `M-=' is no longer bound to `dired-backup-diff' in Dired buffers.
+The global binding for `M-=', `count-words-region' is in effect.
+
+** ERC
+
+*** New module "notifications", which can send a notification when you
+receive a private message or your nickname is mentioned.
+
+*** ERC will look up server/channel names via auth-source and use any
+channel keys found.
+
+*** New option `erc-lurker-hide-list', similar to `erc-hide-list', but
+only applies to messages sent by lurkers.
+
+** reStructuredText mode
+
+*** Keybindings (see `C-c C-h'), TAB indentation, filling and auto-filling,
+fontification, comment handling, and customization have all been revised
+and improved.
+
+*** Support for `imenu' and `which-function-mode'.
+
+*** The reStructuredText syntax is more closely covered.
+Sphinx support has been improved.
+
+*** `rst-insert-list' inserts new list or continues existing lists.
+
+*** A negative prefix argument always works for `rst-adjust'.
+
+*** The window configuration is reset after displaying a TOC.
+
+*** The constant `rst-version' describes the rst.el package version.
+
+** Ruby mode
+
+*** Support for percent literals and recognition of regular expressions
+in method calls without parentheses with more methods, including Cucumber
+steps definitions.
+
+*** Improved syntax highlighting and indentation.
+
+*** New command `ruby-toggle-block', bound to `C-c {'.
+
+*** Some non-standard keybindings/commands have been removed:
+
+**** `ruby-electric-brace'; use `electric-indent-mode' instead.
+
+**** `ruby-mark-defun'; use `mark-defun'.
+
+**** `ruby-beginning-of-defun' and `ruby-end-of-defun' are replaced by
+appropriate settings for the variables `beginning-of-defun-function'
+and `end-of-defun-function'.
+
+**** Non-standard keybindings for `backward-kill-word', `comment-region',
+`reindent-then-newline-and-indent' and `newline' have been removed.
+
+** Shell Script mode
+
+*** Pairing of parens/quotes uses `electric-pair-mode' instead of skeleton-pair.
+
+*** `sh-electric-here-document-mode' now controls auto-insertion of here-docs.
+
+*** `sh-use-smie' lets you choose a new indentation and navigation code.
+
+** VHDL mode
+
+*** The free software compiler GHDL is supported (and now the default).
+
+*** Support for the VHDL-AMS packages has been added/updated.
+
+*** Updated to the 2002 revision of the VHDL standard.
+
+*** Accepts \r and \f as whitespace.
+
+** Apropos
+
+*** The faces used by Apropos are now directly customizable.
+These faces are named `apropos-symbol', `apropos-keybinding', and so on;
+see the `apropos' Custom group for details.
+
+*** The old options whose values specified faces to use have been removed
+(i.e. `apropos-symbol-face', `apropos-keybinding-face', `apropos-label-face',
+`apropos-match-face' and `apropos-property-face'.).
+
+** Buffer Menu
+
+*** This package has been rewritten to use Tabulated List mode.
+
+*** Option `Buffer-menu-buffer+size-width' is now obsolete.
+Use `Buffer-menu-name-width' and `Buffer-menu-size-width' instead.
+
+** Calc
+
+*** Algebraic simplification mode is now the default.
+To restrict to the limited simplifications given by the former
+default simplification mode, use `m I'.
+
+** Calendar
+
+*** You can customize the header text that appears above each calendar month.
+See the variable `calendar-month-header'.
+
+*** New LaTeX calendar style, produced by `cal-tex-cursor-week2-summary'.
+
+*** The calendars produced by cal-html include holidays.
+Customize `cal-html-holidays' to change this.
+
+** CEDET
+
+*** The major modes from the parser generators "Bovine" and "Wisent"
+are now properly integrated in Emacs. The file suffixes ".by" and ".wy"
+are in `auto-mode-alist', and the corresponding manuals are included.
+
+*** EDE
+
+**** Menu support for the "Configuration" feature. This allows users to
+choose the active configuration (such as debug or install) from the menu.
+
+**** New command `ede-set' to interactively set project-local variables.
+
+**** Support for compiling, debugging, and running in "generic" projects.
+
+**** Autoconf editing support for M4 macros with complex arguments.
+
+**** Compilation support for the "linux" project type.
+
+**** "simple" projects have been removed; use "generic" projects instead.
+
+*** Semantic
+
+**** Support for parsing #include statements inside a namespace in C/C++.
+
+**** Improved support for 'extern "C"' declarations in C/C++.
+
+**** The ability to ignore more common special C/C++ preprocessor symbols,
+such as '__nonnull' and '__asm'. Add '__cplusplus' macro when parsing C++.
+If available, include cdefs.h as an additional source of preprocessor symbols.
+
+**** Improved C/C++ function pointer parsing.
+
+**** In Python, support for converting imports to include file names.
+
+**** Ability to dynamically determine the Python load path.
+
+**** Support for the Python 'WITH' and 'AT' keywords.
+
+**** Improved tooltip completion.
+
+*** SRecode
+
+**** The SRecode manual is now included.
+
+**** Tag generation supports constructor/destructor settings and system
+include differentiation.
+
+**** Addition of 'Framework' support: Frameworks are specified when a
+particular kind of library (such as Android) is needed in a common language
+mode (like Java).
+
+**** Support for nested templates and let variables override based on priority.
+
+**** Support for merging tables from multiple related modes, such as
+default -> c++ -> arduino.
+
+** Compile has a new option `compilation-always-kill'.
+
+** Customize
+
+*** `custom-reset-button-menu' now defaults to t.
+
+*** Non-option variables are never matched in `customize-apropos' and
+`customize-apropos-options' (i.e., the prefix argument does nothing for
+these commands now).
+
+** Term
+
+*** The variables `term-default-fg-color' and `term-default-bg-color'
+are now deprecated in favor of the customizable face `term'.
+
+*** You can customize how to display ANSI terminal colors and styles
+by customizing the corresponding `term-color-<COLOR>',
+`term-color-underline' and `term-color-bold' faces.
+
+** Tramp
+
+*** The syntax has been extended in order to allow ad-hoc proxy definitions.
+
+*** Remote processes are now also supported on remote MS-Windows hosts.
+
+** URL
+
+*** Structs made by `url-generic-parse-url' have nil `attributes' slot.
+Previously, this slot stored semicolon-separated attribute-value pairs
+appended to some imap URLs, but this is not compatible with RFC 3986.
+So now the `filename' slot stores the entire path and query components,
+and the `attributes' slot is always nil.
+
+*** New function `url-encode-url' for encoding a URI string.
+The `url-retrieve' function now uses this to encode its URL argument,
+in case that is not properly encoded.
+
+** notifications.el supports now version 1.2 of the Notifications API.
+The function `notifications-get-capabilities' returns the supported
+server properties.
+
+** Flymake uses fringe bitmaps to indicate errors and warnings.
+See `flymake-fringe-indicator-position', `flymake-error-bitmap' and
+`flymake-warning-bitmap'.
+
+** The FFAP option `ffap-url-unwrap-remote' can now be a list of strings,
+specifying URL types that should be converted to remote file names at
+the FFAP prompt. The default is now '("ftp").
+
+** New Ibuffer `derived-mode' filter, bound to `/ M'.
+The old binding for `/ M' (filter by used-mode) is now bound to `/ m'.
+
+** New option `mouse-avoidance-banish-position' specifies where the
+`banish' mouse avoidance setting moves the mouse.
+
+** In Perl mode, new option `perl-indent-parens-as-block' causes non-block
+closing brackets to be aligned with the line of the opening bracket.
+
+** In Proced mode, new command `proced-renice' renices marked processes.
+
+** New option `async-shell-command-buffer' specifies the buffer to use
+for a new asynchronous `shell-command' when the default output buffer
+`*Async Shell Command*' is already in use.
+
+** SQL mode has a new option `sql-db2-escape-newlines'.
+If non-nil, newlines sent to the command interpreter will be escaped
+by a backslash. The default does not escape the newlines and assumes
+that the sql statement will be terminated by a semicolon.
+
+** New command `tabulated-list-sort', bound to `S' in Tabulated List mode
+(and modes that derive from it), sorts the column at point, or the Nth
+column if a numeric prefix argument is given.
+
+** `which-func-modes' now defaults to t, so Which Function mode, when
+enabled, applies to all applicable major modes.
+
+** `winner-mode-hook' now runs when the mode is disabled, as well as when
+it is enabled.
+
+** Follow mode no longer works by using advice.
+The option `follow-intercept-processes' has been removed.
+
+** `javascript-generic-mode' is now an obsolete alias for `js-mode'.
+
+** Hooks renamed to avoid obsolete "-hooks" suffix:
+*** semantic-lex-reset-hooks -> semantic-lex-reset-functions
+*** semantic-change-hooks -> semantic-change-functions
+*** semantic-edits-new-change-hooks -> semantic-edits-new-change-functions
+*** semantic-edits-delete-change-hooks -> semantic-edits-delete-change-functions
+*** semantic-edits-reparse-change-hooks -> semantic-edits-reparse-change-functions
+*** semanticdb-save-database-hooks -> semanticdb-save-database-functions
+*** c-prepare-bug-report-hooks -> c-prepare-bug-report-hook
+*** rcirc-sentinel-hooks -> rcirc-sentinel-functions
+*** rcirc-receive-message-hooks -> rcirc-receive-message-functions
+*** rcirc-activity-hooks -> rcirc-activity-functions
+*** rcirc-print-hooks -> rcirc-print-functions
+*** dbus-event-error-hooks -> dbus-event-error-functions
+*** eieio-pre-method-execution-hooks -> eieio-pre-method-execution-functions
+*** checkdoc-style-hooks -> checkdoc-style-functions
+*** checkdoc-comment-style-hooks -> checkdoc-comment-style-functions
+*** archive-extract-hooks -> archive-extract-hook
+*** filesets-cache-fill-content-hooks -> filesets-cache-fill-content-hook
+*** hfy-post-html-hooks -> hfy-post-html-hook
+*** nndiary-request-create-group-hooks -> nndiary-request-create-group-functions
+*** nndiary-request-update-info-hooks -> nndiary-request-update-info-functions
+*** nndiary-request-accept-article-hooks -> nndiary-request-accept-article-functions
+*** gnus-subscribe-newsgroup-hooks -> gnus-subscribe-newsgroup-functions
+
+** Obsolete packages
+
+*** assoc.el
+In most cases, assoc+member+push+delq work just as well.
+And in any case it's just a terrible package: ugly semantics, terrible
+inefficiency, and not namespace-clean.
+*** bruce.el
+*** cust-print.el
+*** ledit.el
+*** mailpost.el
+*** mouse-sel.el
+*** patcomp.el
+
+\f
+* Incompatible Lisp Changes in Emacs 24.3
+
+** Docstrings starting with `*' no longer indicate user options.
+Only variables defined using `defcustom' are considered user options.
+The function `user-variable-p' is now an obsolete alias for
+`custom-variable-p'.
+
+** The return values of `defalias', `defun' and `defmacro' have changed,
+and are now undefined. For backwards compatibility, `defun' and
+`defmacro' currently return the name of the newly defined
+function/macro, but this should not be relied upon.
+
+** `random' by default now returns a different random sequence in
+every Emacs run. Use `(random S)', where S is a string, to set the
+random seed to a value based on S, in order to get a repeatable
+sequence in later calls.
+
+** If the NEWTEXT arg to `replace-match' contains a substring "\?",
+that substring is inserted literally even if the LITERAL arg is
+non-nil, instead of causing an error to be signaled.
+
+** `select-window' now always makes the window's buffer current.
+It does so even if the window was selected before.
+
+** The function `x-select-font' can return a font spec, instead of a
+font name as a string. Whether it returns a font spec or a font name
+depends on the graphical library.
+
+** `face-spec-set' no longer sets frame-specific attributes when the
+third argument is a frame (that usage was obsolete since Emacs 22.2).
+
+** `set-buffer-multibyte' now signals an error in narrowed buffers.
+
+** The CL package's `get-setf-method' function no longer exists.
+Generalized variables are now part of core Emacs Lisp, and implemented
+differently to the way cl.el used to do it. It is not possible to
+define a compatible replacement for `get-setf-method'. See the file
+gv.el for internal details of the new implementation.
+
+** The arguments of `dbus-register-signal' are no longer just strings,
+but keywords or keyword-string pairs. The old argument list will
+still be supported for Emacs 24.x.
+
+** Miscellaneous name changes
+Some Lisp symbols have been renamed to correct their spelling,
+or to be more consistent with standard Emacs terminology.
+
+*** Renamed functions
+**** hangul-input-method-inactivate -> hangul-input-method-deactivate
+**** inactivate-input-method -> deactivate-input-method
+**** quail-inactivate -> quail-deactivate
+**** robin-inactivate -> robin-deactivate
+**** viper-inactivate-input-method -> viper-deactivate-input-method
+**** viper-inactivate-input-method-action ->
+ viper-deactivate-input-method-action
+**** ucs-input-inactivate -> ucs-input-deactivate
+
+*** Renamed hooks
+The old hooks are still supported for backward compatibility, but they
+are deprecated and will be removed eventually.
+**** input-method-inactivate-hook -> input-method-deactivate-hook
+**** robin-inactivate-hook -> robin-deactivate-hook
+**** quail-inactivate-hook -> quail-deactivate-hook
+
+*** Renamed variables
+**** follow-deactive-menu -> follow-inactive-menu
+**** inactivate-current-input-method-function ->
+ deactivate-current-input-method-function
+
+** Some obsolete functions, variables, and faces have been removed:
+*** `last-input-char', `last-command-char', `unread-command-char'
+*** `facemenu-unlisted-faces'
+*** `rmail-decode-mime-charset'
+*** `iswitchb-read-buffer'
+*** `sc-version', `sc-submit-bug-report'
+*** `set-char-table-default'
+*** `string-to-sequence' (use `string-to-list' or `string-to-vector')
+*** `compile-internal'
+*** `modeline'
+*** `mode-line-inverse-video'
+*** `follow-mode-off-hook'
+*** `cvs-commit-buffer-require-final-newline'
+(use `log-edit-require-final-newline' instead)
+*** `cvs-changelog-full-paragraphs'
+(use `log-edit-changelog-full-paragraphs' instead)
+*** `cvs-diff-ignore-marks', `cvs-diff-buffer-name'
+*** `vc-ignore-vc-files' (use `vc-handled-backends' instead)
+*** `vc-master-templates' (use `vc-handled-backends' instead)
+*** `vc-checkout-carefully'
+
+\f
+* Lisp Changes in Emacs 24.3
+
+** CL-style generalized variables are now in core Elisp.
+`setf' is autoloaded; `push' and `pop' accept generalized variables.
+You can define your own generalized variables using `gv-define-simple-setter',
+`gv-define-setter', etc.
+
+** Emacs tries to macroexpand interpreted (non-compiled) files during load.
+This can significantly speed up execution of non-byte-compiled code,
+but can also bump into previously unnoticed cyclic dependencies.
+These are generally harmless: they will simply cause the macro calls
+to be left for later expansion (as before), but will result in a
+warning ("Eager macro-expansion skipped due to cycle") describing the cycle.
+You may wish to restructure your code so this does not happen.
+
+** New sampling-based Elisp profiler.
+Try M-x profiler-start, do some work, and then call M-x profiler-report.
+When finished, use M-x profiler-stop. The sampling rate can be based on
+CPU time or memory allocations.
+
+** `defun' also accepts a (declare DECLS) form, like `defmacro'.
+The interpretation of the DECLS is determined by `defun-declarations-alist'.
+
+** New macros `setq-local' and `defvar-local'.
+
+** Face underlining can now use a wave.
+
+** `read-regexp' has a new argument HISTORY; the first argument PROMPT
+of `read-regexp' accepts a string ending with a colon and space, and its
+second argument DEFAULTS can be a list of strings accessible via `M-n'
+in the minibuffer ahead of other hard-coded useful regexp-related values.
+More commands use `read-regexp' now to read their regexp arguments.
+
+** Completion
+
+*** New function `completion-table-with-quoting' to handle completion
+in the presence of quoting, such as file completion in shell buffers.
+
+*** New function `completion-table-subvert' to use an existing completion
+table, but with a different prefix.
+
+** Debugger
+
+*** New error type and new function `user-error'.
+These do not trigger the debugger.
+
+*** New option `debugger-bury-or-kill', saying what to do with the
+debugger buffer when exiting debug.
+
+*** Set `debug-on-message' to enter the debugger when a certain
+message is displayed in the echo area. This can be useful when trying
+to work out which code is doing something.
+
+*** New var `inhibit-debugger', automatically set to prevent accidental
+recursive invocations.
+
+** Window handling
+
+*** New command `fit-frame-to-buffer' adjusts the frame height to
+fit the contents.
+
+*** The command `fit-window-to-buffer' can adjust the frame height
+if the new option `fit-frame-to-buffer' is non-nil.
+
+*** New macro `with-temp-buffer-window', similar to
+`with-output-to-temp-buffer'.
+
+*** `temp-buffer-resize-mode' no longer resizes windows that have been
+reused.
+
+*** New option `switch-to-buffer-preserve-window-point' to restore a
+window's point when switching buffers.
+
+*** New display action alist entries `window-height' and `window-width'
+specify the size of new windows created by `display-buffer'.
+
+*** New display action alist entry `pop-up-frame-parameters', if
+non-nil, specifies frame parameters to give any newly-created frame.
+
+*** New display action alist entry `inhibit-switch-frame', if non-nil,
+tells display action functions to avoid changing which frame is
+selected.
+
+*** New display action alist entry `previous-window', if non-nil,
+specifies window to reuse in `display-buffer-in-previous-window'.
+
+*** New display action functions `display-buffer-below-selected',
+and `display-buffer-in-previous-window'.
+
+*** The functions `get-lru-window', `get-mru-window' and `get-largest-window'
+now accept a third argument to avoid choosing the selected window.
+
+*** Additional values recognized for option `window-combination-limit'.
+
+*** The following variables are obsolete, as they can be replaced by
+appropriate entries in the `display-buffer-alist' function introduced
+in Emacs 24.1:
+**** `dired-shrink-to-fit'
+**** `display-buffer-reuse-frames'
+**** `display-buffer-function'
+**** `special-display-buffer-names'
+**** `special-display-frame-alist'
+**** `special-display-function'
+**** `special-display-regexps'
+
+** Time
+
+*** `current-time-string' no longer requires that its argument's year
+must be in the range 1000..9999. It now works with any year supported
+by the underlying C implementation.
+
+*** `current-time' now returns extended-format time stamps
+(HIGH LOW USEC PSEC), where the new PSEC slot specifies picoseconds.
+PSEC is typically a multiple of 1000 on current machines. Other
+functions that use this format, such as `file-attributes' and
+`format-time-string', have been changed accordingly. Old-format time
+stamps are still accepted.
+
+*** The format of timers in `timer-list' and `timer-idle-list' is now
+[TRIGGERED-P HI-SECS LO-SECS USECS REPEAT-DELAY FUNCTION ARGS IDLE-DELAY PSECS].
+The PSECS slot is new, and uses picosecond resolution. It can be
+accessed via the new `timer--psecs' accessor.
+
+*** Last-modified time stamps in undo lists now are of the form
+(t HI-SECS LO-SECS USECS PSECS) instead of (t HI-SECS . LO-SECS).
+
+** EIEIO
+
+*** Improved security when handling persistent objects:
+
+**** `eieio-persistent-read' now features optional arguments for specifying
+the class to load, as well as a flag stating whether subclasses are allowed;
+if provided, other classes will be rejected by the reader. For
+compatibility with existing code, if the class is omitted only a
+warning is issued.
+
+**** New specialized reader for pulling in classes and signaling errors
+without evaluation of suspicious code.
+
+**** All slots that contain objects must have a :type. Slots with lists
+of objects must use a new type predicate for a list of an object type.
+
+*** Support for `find-function' and similar utilities, through the addition
+of filename support to generated symbols.
+
+** Floating point functions now always return special values like NaN,
+instead of signaling errors, if given invalid args; e.g., (log -1.0).
+Previously, they returned NaNs on some platforms but signaled errors
+on others. The affected functions are acos, asin, tan, exp, expt,
+log, log10, sqrt, and mod.
+
+** New fringe bitmap `exclamation-mark'.
+
+** Miscellaneous changes to special forms and macros
+
+*** `defun' and `defmacro' are now macros rather than special forms.
+
+*** `kbd' is now a function rather than a macro.
+
+** Miscellaneous new functions
+
+*** `set-temporary-overlay-map' sets up a temporary keymap that
+takes precedence over most other maps for a short while (normally one key).
+
+*** `autoloadp' tests if its argument is an autoloaded object.
+
+*** `autoload-do-load' performs the autoloading operation.
+
+*** `buffer-narrowed-p' tests if the buffer is narrowed.
+
+*** `file-name-base' returns a file name sans directory and extension.
+
+*** `function-get' fetches a function property, following aliases.
+
+*** `posnp' tests if an object is a `posn'.
+
+*** `system-users' returns the user names on the system.
+
+*** `system-groups' returns the group names on the system.
+
+*** `tty-top-frame' returns the topmost frame of a text terminal.
+
+** The following functions and variables are obsolete:
+*** `automount-dir-prefix' (use `directory-abbrev-alist')
+*** `buffer-has-markers-at'
+*** `macro-declaration-function' (use `macro-declarations-alist')
+*** `window-system-version' (provides no useful information)
+*** `dired-pop-to-buffer' (use `dired-mark-pop-up')
+*** `query-replace-interactive'
+*** `font-list-limit' (has had no effect since Emacs < 23)
+
+\f
+* Changes in Emacs 24.3 on Non-Free Operating Systems
+
+** Cygwin builds can use the native MS Windows user interface.
+Pass `--with-w32' to configure. The default remains the X11 interface.
+
+** Two new functions are available in Cygwin builds:
+`cygwin-convert-file-name-from-windows' and
+`cygwin-convert-file-name-to-windows'. These functions allow Lisp
+code to access the Cygwin file-name mapping machinery to convert
+between Cygwin and Windows-native file and directory names.
+
+** When invoked with the -nw switch to run on the Windows text-mode terminal,
+Emacs now supports `mouse-highlight', help-echo (in the echo area), and
+`mouse-autoselect-window'.
+
+** On MS Windows Vista and later Emacs now supports symbolic links.
+
+** On MS Windows, you can pass `--without-libxml2' to configure.bat to omit
+support for libxml2, even if its presence is detected.
+
+** On Mac OS X, the Nextstep port requires OS X 10.4 or later.
+
+** On Mac OS X, configure no longer automatically adds the Fink "/sw"
+directories to the search path. You must add them yourself if you want them.
+
+\f
+* Changes in Emacs 24.2
+
+** This is mainly a bug-fix release.
+
+\f
+* Installation Changes in Emacs 24.1
+
+** Emacs can be compiled with Gtk+ 3.0 if you pass --with-x-toolkit=gtk3
+to configure. Note that other libraries used by Emacs, RSVG and GConf,
+also depend on Gtk+. You can disable them with --without-rsvg and
+--without-gconf.
+
+** Emacs can be compiled with GnuTLS support.
+This happens by default if a suitably recent version of the library is
+found at build time. To prevent this, use the configure option
+`--without-gnutls'. See below for GnuTLS features.
+
+** Emacs can be compiled with SELinux support.
+This happens by default if a suitably recent version of the library is
+found at build time. To prevent this, use the configure option
+`--without-selinux'. See below for SELinux features.
+
+** Emacs can be compiled with ImageMagick support.
+This happens by default if a suitably recent version of the library is
+found at build time. To prevent this, use the configure option
+`--without-imagemagick'. See below for ImageMagick features.
+This feature is not available for the Nextstep or MS ports.
+
+** Emacs can be compiled with libxml2 support.
+This happens by default if a suitably recent version of the library is
+found at build time. To prevent this, use the configure option
+`--without-xml2'. See below for libxml2 features.
+
+** By default, the installed Info and man pages are compressed.
+You can disable this by configuring --without-compress-info.
+
+** New configure option --with-wide-int.
+With it, Emacs integers typically have 62 bits, even on 32-bit machines.
+On 32-bit hosts, this raises the limit on buffer sizes from about 512 MiB
+to about 2 GiB.
+
+** New configure options: --with-mmdf, --with-mail-unlink, --with-mailhost.
+These provide no new functionality, they just remove the need to edit
+lib-src/Makefile by hand in order to use the associated features.
+
+** New configure option --enable-use-lisp-union-type.
+This is only useful for Emacs developers to debug certain types of bugs.
+This is not a new feature; only the configure flag is new.
+
+** The standalone programs digest-doc and sorted-doc are removed.
+Emacs now uses Lisp commands `doc-file-to-man' and `doc-file-to-info'.
+
+** The standalone program `fakemail' is removed.
+If you need it, feedmail.el provides a superset of the functionality.
+
+\f
+* Startup Changes in Emacs 24.1
+
+** The --unibyte, --multibyte, --no-multibyte, and --no-unibyte
+command line arguments, and the EMACS_UNIBYTE environment variable, no
+longer have any effect. (They were declared obsolete in Emacs 23.)
+
+** New command line option `--no-site-lisp' removes site-lisp directories
+from load-path. -Q now implies this. This option does not affect the
+EMACSLOADPATH environment variable (and hence has no effect for
+Nextstep builds).
+
+\f
+* Changes in Emacs 24.1
+
+** Completion
+
+*** Many packages now use the `completion-at-point' command,
+rather than implementing separate completion commands.
+
+*** `completion-at-point' now handles tags and semantic completion.
+
+*** Completion in a non-minibuffer now tries to detect the end of completion
+and pops down the *Completions* buffer accordingly.
+
+*** New option `completion-cycle-threshold' allows completion cycling.
+
+*** New option `completion-category-overrides' for overriding the
+default completion style in certain circumstances.
+
+*** New completion style `substring'.
+
+*** Completion of buffer names uses `substring' completion by default.
+
+*** The option `widget-complete-field' has been removed.
+
+** Mail changes
+
+*** The first time you try sending mail, Emacs asks for a mail method.
+This is implemented by a new default for `send-mail-function', which
+is `sendmail-query-once'. This offers to use the smtpmail package, or
+to use the old defaults relying on external mail facilities
+(`sendmail-send-it' on GNU/Linux and other Unix-like systems, and
+`mailclient-send-it' on Windows).
+
+*** Typing `C-c m' in the buffer made by `M-x report-emacs-bug'
+transfers the report to your desktop's preferred mail client, if there
+is one. This uses either the "xdg-email" utility, or Mac OS's "open"
+command.
+
+*** See Changes in Specialized Modes and Packages for SMTPmail changes
+and Mail mode changes
+
+** Emacs server and client changes
+
+*** New option `server-port' specifies the port for TCP Emacs servers.
+
+*** New emacsclient argument -q/--quiet suppresses some status messages.
+
+*** New emacsclient argument --frame-parameters specifies the frame
+parameters of any newly-created graphical frame.
+
+*** If emacsclient shuts down due to Emacs signaling an error,
+its exit status is 1.
+
+*** New emacsclient argument --parent-id ID.
+This opens a client frame in parent X window ID, via XEmbed, similar
+to the --parent-id argument to Emacs.
+
+** Internationalization changes
+
+*** Emacs now supports display and editing of bidirectional text.
+Right-to-left (RTL) scripts, such as Arabic, Farsi, and Hebrew, are
+displayed in the correct visual order as expected by users of those
+scripts. The display reordering is a "full bidirectionality" class
+implementation of the Unicode Bidirectional Algorithm (UBA). Buffers
+with no RTL text should look exactly the same as before.
+
+**** New buffer-local variable `bidi-display-reordering'.
+To disable display reordering in a buffer, change this to nil.
+
+**** New buffer-local variable `bidi-paragraph-direction'.
+If nil (the default), Emacs determines the base direction of each
+paragraph from its text, as specified by the UBA. Setting the value
+to `right-to-left' or `left-to-right' forces a base direction on each
+paragraph.
+
+Paragraphs with right-to-left base direction are displayed starting at
+the right window edge.
+
+*** Enhanced support for characters with no glyphs in available fonts,
+or, on text terminals, characters that cannot be encoded by the
+terminal coding system. The new option `glyphless-char-display-control'
+specifies how to display them: as a hexadecimal code in a box, a thin
+1-pixel space, an empty box, etc.
+
+*** New input methods for Farsi and Bulgarian
+(farsi-isiri-9147, farsi-transliterate-banan, bulgarian-alt-phonetic).
+
+*** `nobreak-char-display' now also highlights Unicode hyphen chars
+(U+2010 and U+2011).
+
+*** New Hebrew translation of the Emacs Tutorial.
+Type `C-u C-h t' to choose it in case your language setup doesn't
+automatically select it.
+
+** An Emacs Lisp package manager is now included.
+This is a convenient way to download and install additional packages,
+from a package repository at http://elpa.gnu.org.
+
+*** M-x list-packages shows a list of packages, which can be
+selected for installation.
+
+*** New command `describe-package', bound to `C-h P'.
+
+*** By default, all installed packages are loaded automatically when
+Emacs starts up. To disable this, set `package-enable-at-startup' to
+nil. To specify the packages to load, customize `package-load-list'.
+
+** Custom theme changes
+
+*** New command `M-x customize-themes', which provides a convenient
+interface for enabling and disabling Custom themes.
+
+*** New option `custom-theme-load-path' is the load path for themes.
+Emacs no longer looks for Custom themes in `load-path'. The default
+value of `custom-theme-load-path' says to look for themes in
+`custom-theme-directory', followed by a subdirectory of
+`data-directory' named "themes/", which contains a small selection of
+built-in Custom themes.
+
+*** New option `custom-safe-themes' records known-safe theme files.
+If a theme is not in this list, Emacs queries before loading it, and
+offers to save the theme to `custom-safe-themes' automatically. By
+default, all themes included in Emacs are treated as safe.
+
+** Improved GTK integration
+
+*** GTK scroll-bars are now placed on the right by default.
+The function `set-scroll-bar-mode' can change this.
+
+*** GTK tool bars can have just text, just images or images and text.
+Customize `tool-bar-style' to choose the style. On a Gnome desktop,
+the default is taken from desktop settings.
+
+*** GTK tool bars can be placed on any edge of the frame.
+The frame-parameter tool-bar-position controls this. It takes the
+values top, left, right or bottom. The Options => Show/Hide menu has
+entries for this.
+
+*** The default colors for selected text (the `region' face) are taken
+from the GTK theme when Emacs is built with GTK.
+
+*** Emacs uses GTK tooltips by default if built with GTK.
+You can disable this by changing `x-gtk-use-system-tooltips' to nil.
+
+** Graphical interface changes
+
+*** On graphical displays, the mode-line no longer ends in dashes.
+Also, the first dash (which does not indicate anything) is just
+displayed as a space.
+
+*** `menu-bar-select-buffer-function' lets you choose another operation
+instead of `switch-to-buffer' when selecting an item in the Buffers menu.
+
+*** Lucid menus and dialogs can display antialiased fonts if Emacs is
+built with Xft. These fonts can be set via X resources, for example:
+Emacs.pane.menubar.font: Courier-12
+
+** Exiting changes
+
+*** Emacs now calls `kill-emacs' if it receives SIGTERM or SIGHUP,
+or if it receives a SIGINT signal in batch mode.
+
+*** `kill-emacs-hook' is now also run in batch mode.
+Third-party code which adds to `kill-emacs-hook' should check if they
+do the right thing in batch mode.
+
+** Scrolling changes
+
+*** New scrolling commands `scroll-up-command' and `scroll-down-command'
+(bound to C-v/[next] and M-v/[prior]) do not signal errors at top/bottom
+of buffer at first key-press (instead they move to top/bottom of buffer)
+when `scroll-error-top-bottom' is non-nil.
+
+*** New option `scroll-error-top-bottom' (see above).
+
+*** New scrolling commands `scroll-up-line' and `scroll-down-line'
+scroll a line instead of full screen.
+
+*** New property `scroll-command' should be set on a command's symbol to
+define it as a scroll command affected by `scroll-preserve-screen-position'.
+
+*** If you customize `scroll-conservatively' to a value greater than 100,
+Emacs will never recenter point in the window when it scrolls due to
+cursor motion commands or commands that move point (e.f., `M-g M-g').
+Previously, you needed to use `most-positive-fixnum' as the value of
+`scroll-conservatively' to achieve the same effect.
+
+*** "Aggressive" scrolling now honors the scroll margins.
+If you customize `scroll-up-aggressively' or
+`scroll-down-aggressively' and move point off the window, Emacs now
+scrolls the window so as to avoid positioning point inside the scroll
+margin.
+
+** Basic SELinux support has been added.
+This requires Emacs to be linked with libselinux at build time.
+
+*** Emacs preserves the SELinux file context when backing up.
+Also, the function `copy-file' has an extra optional argument for
+preserving SELinux context, and the return value of `backup-buffer'
+now includes the SELinux context.
+
+*** New functions `file-selinux-context' and `set-file-selinux-context'
+get and set the SELinux context of a file.
+
+** Trash changes
+
+*** `delete-by-moving-to-trash' now only affects commands that specify
+trashing. This avoids inadvertently trashing temporary files.
+
+*** Calling `delete-file' or `delete-directory' with a prefix argument
+now forces true deletion, regardless of `delete-by-moving-to-trash'.
+
+** File- and directory-local variable changes
+
+*** You can stop directory local vars from applying to subdirectories.
+Add an element (subdirs . nil) to the alist portion of any variables
+settings to indicate that the section should not apply to
+subdirectories.
+
+*** Directory local variables can apply to some file-less buffers.
+Affected modes include dired, vc-dir, and log-edit. For example,
+adding "(diff-mode . ((mode . whitespace)))" to .dir-locals.el will
+turn on `whitespace-mode' for *vc-diff* buffers. Modes should call
+`hack-dir-local-variables-non-file-buffer' to support this.
+
+*** Using "mode: MINOR-MODE" to enable a minor mode is deprecated.
+Instead, use "eval: (minor-mode 1)".
+
+*** The variable `inhibit-first-line-modes-regexps' has been renamed
+to `inhibit-local-variables-regexps'. As the name suggests, it now
+applies to ALL file local variables, not just -*- lines. The
+associated `inhibit-first-line-modes-suffixes' has been renamed in the
+corresponding way.
+
+** Window changes
+
+*** The `quit-window' command now restores the last buffer displayed
+in the quitted window.
+
+*** Resizing an Emacs frame now preserves proportional window sizes,
+modulo restrictions like window minimum sizes and fixed-size windows.
+
+*** The behavior of `display-buffer' is now customizable in detail.
+
+**** New option `display-buffer-base-action' specifies a list of
+user-determined display "actions" (functions and optional arguments
+for choosing the displaying window).
+
+This takes precedence over the default display action, which is
+specified by `display-buffer-fallback-action'.
+
+**** New option `display-buffer-alist' maps buffer name regexps to
+display actions, taking precedence over `display-buffer-base-action'.
+
+*** New option `window-combination-limit'.
+The new option `window-combination-limit' allows to return the space
+obtained for resizing or creating a window more reliably to the window
+from which such space was obtained.
+
+*** New option `window-combination-resize'.
+The new option `window-combination-resize' allows to split a window that
+otherwise cannot be split because it's too small by stealing space from
+other windows in the same combination. Subsequent resizing or deletion
+of the window will resize all windows in the same combination as well.
+
+*** New option `frame-auto-hide-function' lets you choose between
+iconifying or deleting a frame when burying a buffer in a dedicated
+frame, or quitting a window showing a buffer in a frame of its own.
+
+*** New commands `maximize-window' and `minimize-window'.
+These maximize and minimize the size of a window within its frame.
+
+*** New commands `switch-to-prev-buffer' and `switch-to-next-buffer'.
+These functions allow to navigate through the live buffers that have
+been shown in a specific window.
+
+** Minibuffer changes
+
+*** The inactive minibuffer has its own major mode `minibuffer-inactive-mode'.
+This is handy for minibuffer-only frames, and is also used for the feature
+where mouse-1 pops up *Messages*"', which can now easily be changed.
+
+*** Minibuffers set `truncate-lines' to nil.
+If you want to change the value to something else, you could use
+for example `minibuffer-setup-hook'.
+
+** `auto-mode-case-fold' is now enabled by default.
+
+** `backup-by-copying-when-mismatch' now defaults to t.
+
+** New basic faces `error', `warning', `success'.
+These are used to highlight text indicating failure, caution or
+successful operation.
+
+** New option `list-colors-sort' defines the color sort order
+for `list-colors-display'.
+
+** The variable `focus-follows-mouse' now always defaults to nil.
+
+\f
+* Editing Changes in Emacs 24.1
+
+** Search changes
+
+*** C-y in Isearch is now bound to `isearch-yank-kill', instead of
+`isearch-yank-line'.
+
+*** M-y in Isearch is now bound to `isearch-yank-pop', instead of
+`isearch-yank-kill'.
+
+*** M-s C-e in Isearch is now bound to `isearch-yank-line'.
+
+** New commands `count-words-region' and `count-words'.
+
+*** M-= is bound to `count-words-region', not `count-lines-region'.
+The `count-words-region' command, when called interactively, reports
+the number of lines, words, and characters in the region. It is a
+superset of the old `count-lines-region', which is now an obsolete
+alias for it.
+
+** The command `just-one-space' (M-SPC), if given a negative argument,
+also deletes newlines around point.
+
+** Deletion changes
+
+*** New option `delete-active-region'.
+If non-nil, [delete] and DEL delete the region if it is active and no
+prefix argument is given. If set to `kill', those commands kill
+instead.
+
+*** New command `delete-forward-char', bound to [delete].
+This is meant for interactive use, and obeys `delete-active-region'.
+The command `delete-char' does not obey `delete-active-region'.
+
+*** `delete-backward-char' is now a Lisp function.
+Apart from obeying `delete-active-region', its behavior is unchanged.
+However, the byte compiler now warns if it is called from Lisp; Lisp
+callers should use delete-char with a negative argument instead.
+
+*** The option `mouse-region-delete-keys' has been deleted.
+
+** Selection changes.
+
+The default handling of clipboard and primary selections has been
+changed to conform with modern X applications. In short, most
+commands for killing and yanking text now use the clipboard, while
+mouse commands use the primary selection.
+
+In the following, we provide a list of these changes, followed by a
+list of steps to get the old behavior back if you prefer that.
+
+*** `select-active-regions' now defaults to t.
+Merely selecting text (e.g. with drag-mouse-1) no longer puts it in
+the kill ring. The selected text is put in the primary selection, if
+the system possesses a separate primary selection facility (e.g. X).
+
+**** `select-active-regions' also accepts a new value, `only'.
+This means to only set the primary selection for temporarily active
+regions (usually made by mouse-dragging or shift-selection);
+"ordinary" active regions, such as those made with C-SPC followed by
+point motion, do not alter the primary selection.
+
+**** `mouse-drag-copy-region' now defaults to nil.
+
+*** mouse-2 is now bound to `mouse-yank-primary'.
+This pastes from the primary selection, ignoring the kill-ring.
+Previously, mouse-2 was bound to `mouse-yank-at-click'.
+
+*** `x-select-enable-clipboard' now defaults to t on all platforms.
+
+*** `x-select-enable-primary' now defaults to nil.
+Thus, commands that kill text or copy it to the kill-ring (such as
+M-w, C-w, and C-k) also use the clipboard---not the primary selection.
+
+**** The "Copy", "Cut", and "Paste" items in the "Edit" menu are now
+exactly equivalent to M-w, C-w, and C-y respectively.
+
+**** Note that on MS-Windows, `x-select-enable-clipboard' was already
+non-nil by default, as Windows does not support the primary selection
+between applications.
+
+*** To return to the previous behavior, do the following:
+
+**** Change `select-active-regions' to nil.
+**** Change `mouse-drag-copy-region' to t.
+**** Change `x-select-enable-primary' to t (on X only).
+**** Change `x-select-enable-clipboard' to nil.
+**** Bind `mouse-yank-at-click' to mouse-2.
+
+*** Support for X cut buffers has been removed.
+
+*** X clipboard managers are now supported.
+To inhibit this, change `x-select-enable-clipboard-manager' to nil.
+
+** New command `C-x r N' (`rectangle-number-lines') numbers the lines
+in the current rectangle. With a prefix argument, this prompts for a
+number to count from and for a format string.
+
+** `redisplay-dont-pause' now defaults to t.
+This makes Emacs feel more responsive to editing commands that arrive
+at high rate, e.g. if you lean on some key, because stopping redisplay
+in the middle (when this variable is nil) forces more expensive
+updates later on, and Emacs appears to be unable to keep up.
+
+** The behavior of <TAB> for active regions in Text mode has changed.
+In Text and related modes, typing <TAB> (`indent-for-tab-command')
+when the region is active causes Emacs to indent all the lines in the
+region, aligning them with the line previous to the first line in the
+region (or with the left margin if there is no previous line).
+
+** When `occur' is called with a prefix argument, matching strings are
+collected into the `*Occur*' buffer without line numbers. If there
+are parenthesized subexpressions in the specified regexp, `occur'
+reads replacement text that may contain \\& and \\N whose convention
+follows `replace-match'.
+
+\f
+* Changes in Specialized Modes and Packages in Emacs 24.1
+
+** Archive Mode has basic support for browsing and updating 7z archives.
+
+** BibTeX mode
+
+*** BibTeX mode now supports biblatex.
+Use the variable `bibtex-dialect' to select different BibTeX dialects.
+`bibtex-entry-field-alist' is now an obsolete alias for
+`bibtex-BibTeX-entry-alist'.
+
+*** New command `bibtex-search-entries', bound to C-c C-a.
+
+*** New `bibtex-entry-format' option `sort-fields', disabled by default.
+
+*** New variable `bibtex-search-entry-globally'.
+
+** Browse-url
+
+*** New option `browse-url-mailto-function' specifies how to handle "mailto:"s.
+
+*** The default browser used by the package is now the "xdg-open" program,
+on platforms that support it. This calls your desktop's preferred browser.
+
+** Calc
+
+*** Support for musical notes.
+
+*** Support for logarithmic units.
+
+*** No longer uses the tex prefix for TeX specific unit names when
+using TeX or LaTeX mode.
+
+*** New option to highlight selections using faces.
+
+*** `calc-histogram' has the option of using a vector to determine the bins.
+
+*** New "O" option prefix.
+
+*** Use the "O" prefix to "d r" (`calc-radix') to turn on twos-complement mode.
+
+** Calendar, Diary, and Appt
+
+*** Diary entries can contain non-printing "comments".
+See the variable `diary-comment-start'.
+
+*** Appointments can specify their individual warning times.
+See the variable `appt-warning-time-regexp'.
+
+*** The function specified by `appt-disp-window-function' may be passed
+lists of arguments if multiple appointments are due at similar times.
+If you are using a custom function for this, you should update it.
+
+*** New function `diary-hebrew-birthday'.
+
+*** Elements of `calendar-day-abbrev-array' and `calendar-month-abbrev-array'
+may no longer be nil, but must all be strings.
+
+*** The obsolete (since Emacs 22.1) method of enabling the appt
+package by adding `appt-make-list' to `diary-hook' has been removed.
+Use `appt-activate' instead.
+
+*** Some appt variables (obsolete since Emacs 22.1) have been removed:
+appt-issue-message (use the function appt-activate)
+appt-visible/appt-msg-window (use the variable appt-display-format)
+
+*** Some diary function aliases (obsolete since Emacs 22.1) have been removed:
+view-diary-entries, list-diary-entries, show-all-diary-entries
+
+** CC Mode
+
+*** New feature to "guess" the style in an existing buffer.
+The main entry point is M-x c-guess.
+
+*** Java Mode now supports Java 5.0 (Tiger) and 6 (Mustang).
+
+*** `c-beginning-of-defun' and `c-end-of-defun' now respect nested scopes.
+Thus C-M-a will, by default, go to the beginning of the immediate function,
+not the top level.
+
+*** "Macros with semicolons" can be registered for correct indentation.
+Where such a macro ends a line (no semicolon) the next statement is no longer
+parsed as a statement continuation.
+
+** Comint and modes derived from it use the standard completion code.
+
+** Compilation mode
+
+*** Compilation mode can be used without Font Lock mode.
+`compilation-parse-errors-function' is now obsolete.
+
+*** New variable `compilation-filter-start', which is bound while
+`compilation-filter-hook' runs. It records the start position of the
+text inserted by `compilation-filter'.
+
+*** `compilation-error-screen-columns' and `compilation-first-column'
+are obeyed in the editing buffer. So programming language modes can
+set them, whereas previously only the value in the *Compilation*
+buffer was used.
+
+** Customize
+
+*** Customize buffers now contain a search field.
+The search is performed using `customize-apropos'.
+To turn off the search field, set `custom-search-field' to nil.
+
+*** Options in customize group buffers start out hidden if not customized.
+Use the arrow to the left of the option name to toggle visibility.
+
+*** custom-buffer-sort-alphabetically now defaults to t.
+
+*** The color widget now has a "Choose" button, which allows you to
+choose a color via `list-colors-display'.
+
+** D-Bus
+
+*** It is now possible to access buses other than the default system
+or session bus.
+
+*** The `dbus-register-method' and `dbus-register-property' functions
+optionally do not register names.
+
+*** The new function `dbus-register-service' registers a known service
+name on a D-Bus without also registering a property or a method.
+
+** Dired-x
+
+*** C-x C-j (`dired-jump') and C-x 4 C-j (`dired-jump-other-window'),
+if called with a prefix argument, read a file name from the minibuffer
+instead of using the current buffer.
+
+*** The "dired local variables" feature of Dired-x is obsolete.
+The standard directory local variables feature replaces it.
+
+** ERC changes
+
+*** New options `erc-autojoin-timing' and `erc-autojoin-delay',
+controlling attempts to autojoin a channel.
+
+*** New variable `erc-coding-system-precedence': If we use `undecided'
+as the server coding system, this variable will then be consulted.
+The default is to decode strings that can be decoded as utf-8 as
+utf-8, and do the normal `undecided' decoding for the rest.
+
+** Eshell changes
+
+*** The default value of `eshell-directory-name' has changed
+to be an "eshell" directory in `user-emacs-directory'.
+The old "~/.eshell/" directory is still used if it exists, though.
+
+** gdb-mi
+
+*** The M-x gdb command now uses the GDB Machine Interface protocol.
+It now supports multithread non-stop debugging and simultaneous
+debugging of several threads.
+
+** Image mode
+
+*** RET (`image-toggle-animation') toggles animation, if applicable.
+Animation plays once, unless the option `image-animate-loop' is non-nil.
+
+** Info
+
+*** New command M-x info-display-manual displays a named Info manual.
+If that manual is already visited in some Info buffer, it displays
+that buffer. (This is handy if you have many manuals in many *info*
+buffers, and don't remember the name of the buffer visiting the manual
+you want to consult.) Otherwise, it loads and displays the manual.
+
+*** `e' is now bound to `end-of-buffer' rather than to `Info-edit'.
+This is for compatibility with the stand-alone Info reader program,
+and also because `Info-edit' is a rarely used command that is disabled
+by default.
+
+** Mail mode changes (not Message mode)
+
+*** New command M-x mail-add-attachment for adding MIME attachments
+
+*** The command M-x mail-attach-file was renamed to M-x mail-insert-file.
+(Its name is misleading, since it has nothing to do with MIME
+attachments.) The old name is now an obsolete alias to the new name.
+
+** MH-E has been updated to MH-E version 8.3.1.
+See MH-E-NEWS for details.
+
+** Modula-2 mode provides auto-indentation.
+
+** mpc.el: Can use pseudo tags of the form tag1|tag2 as a union of two tags.
+
+** nXML mode no longer binds C-RET to `nxml-complete'.
+Completion is now performed via `completion-at-point', bound to C-M-i
+or M-TAB. If `nxml-bind-meta-tab-to-complete-flag' is non-nil (the
+default), this performs tag completion.
+
+** Org mode has been updated to version 7.8.09.
+See ORG-NEWS for details.
+
+** Prolog mode has been completely revamped, with lots of additional
+functionality such as more intelligent indentation, electricity,
+support for more variants, including Mercury, and a lot more.
+
+** Rmail
+
+*** The command `rmail-epa-decrypt' decrypts OpenPGP data
+in the Rmail incoming message.
+
+*** The variable `rmail-message-filter' no longer has any effect.
+This change was made in Emacs 23.1 but was not advertised at the time.
+Try using `rmail-show-message-hook' instead.
+
+** Shell mode
+
+*** M-x shell prompts for the shell path name if the default directory
+is a remote file name and neither the environment variable $ESHELL nor
+the variable `explicit-shell-file-name' is set.
+
+*** TAB is now bound to the standard `completion-at-point' command,
+which now implements the pcomplete rules for shell command completion.
+
+** SMTPmail
+
+*** SMTPmail now uses encrypted connections (via STARTTLS) by default
+if the mail server supports them. This uses either built-in GnuTLS
+support, or the starttls.el library. Customize `smtpmail-stream-type'
+to change this.
+
+*** The variable `smtpmail-auth-credentials' has been removed.
+By default, the information is now stored in the file ~/.authinfo.
+This was the default value of smtpmail-auth-credentials. If you had
+customized smtpmail-auth-credentials to a list of user names and
+passwords, those settings are not used. During your first connection
+to the smtp server, Emacs will prompt for the user name and password,
+and offer to save them to ~/.authinfo. Or you can manually copy the
+credentials to ~/.authinfo. For example, if you had
+
+ (setq smtpmail-auth-credentials
+ '(("mail.example.org" 25 "jim" "s!cret")))
+
+then the equivalent line in ~/.authinfo would be
+
+ machine mail.example.org port 25 login jim password s!cret
+
+See the auth-source manual for more information, e.g. on encrypting
+the credentials file.
+
+*** The variable `smtpmail-starttls-credentials' has been removed.
+If you had that set, you need to put
+
+ machine smtp.whatever.foo port 25 key "~/.my_smtp_tls.key" cert "~/.my_smtp_tls.cert"
+
+in your ~/.authinfo file instead.
+
+*** SMTPmail defaults to using the address in the From: header as the
+SMTP MAIL FROM envelope. To override this, set `mail-envelope-from'
+to the address you wish to use instead.
+
+** SQL mode
+
+*** New options `sql-port', `sql-connection-alist', `sql-send-terminator',
+and `sql-oracle-scan-on'.
+
+*** New options controlling prompting for login parameters.
+Each supported product has a custom variable `sql-*-login-params',
+which is a list of the parameters to be prompted for before a
+connection is established.
+
+*** The command `sql-product-interactive' now takes a prefix argument,
+which causes it to prompt for an SQL product.
+
+*** Product-specific SQL interactive commands now take prefix arguments.
+These commands (`sql-sqlite', `sql-postgres', `sql-mysql', etc.),
+given a prefix argument, prompt for a name for the SQL interactive
+buffer. This reduces the need for calling `sql-rename-buffer'.
+
+*** SQL interactive modes suppress command continuation prompts, and
+replace tabs with spaces. The first change impacts multiple line SQL
+statements entered with C-j between each line, statements yanked into
+the buffer and statements sent with `sql-send-*' functions. The
+second prevents the MySQL and Postgres interpreters from listing
+object name completions when sent text via `sql-send-*' functions.
+
+*** New command `sql-connect' starts a predefined SQLi session,
+using the login parameters from `sql-connection-alist'.
+
+*** New "Save Connection" menu item in SQLi buffers.
+This gathers the login params specified for the SQLi session, if it
+was not started by a connection, and saves them as a new connection.
+
+*** New commands for listing database objects and details:
+sql-list-all and sql-list-table.
+
+*** An API for manipulating SQL product definitions has been added.
+
+** TeX modes
+
+*** latex-electric-env-pair-mode keeps \begin..\end matched on the fly.
+
+** Tramp
+
+*** New inline access method "ksu" (kerberized su).
+
+*** The following access methods are discontinued: "ssh1_old",
+"ssh2_old", "scp1_old", "scp2_old", "imap", "imaps" and "fish".
+
+*** The user option `remote-file-name-inhibit-cache' controls whether
+remote file attributes are cached for better performance.
+
+*** The option `ange-ftp-binary-file-name-regexp' has changed its
+default value to "".
+
+*** Handlers for `file-selinux-context' and `set-file-selinux-context'
+for remote machines which support SELinux.
+
+** New function `url-queue-retrieve', which behaves like url-retrieve,
+but with limits (`url-queue-parallel-processes', `url-queue-timeout') on
+the degree of parallelism.
+
+** VC and related modes
+
+*** Support for pulling on distributed version control systems.
+The command C-x v + (`vc-pull') runs a "pull" operation, if it is
+supported (currently with Bzr, Git, and Mercurial), to update the
+current branch and working tree. A prefix argument means to prompt
+the user for specifics, e.g. a pull location.
+
+*** `vc-update' is now an alias for `vc-pull'.
+
+*** Support for merging on distributed version control systems.
+The command C-x v m (`vc-merge') now runs a "merge" operation, if it
+is supported (currently with Bzr, Git, and Mercurial), to merge
+changes from another branch into the current one. It prompts for
+specifics, e.g. a merge source.
+
+*** New option `vc-revert-show-diff' controls whether `vc-revert'
+shows a diff while querying the user. It defaults to t.
+
+*** Log entries in some Log View buffers can be toggled to display a
+longer description by typing RET (log-view-toggle-entry-display).
+This is currently supported for Bzr, Git, and Mercurial (to support
+another backend, define a `log-view-expanded-log-entry-function').
+In the Log View buffers made by C-x v L (`vc-print-root-log'), you can
+use this to display the full log entry for the revision at point.
+
+*** New command `vc-ediff' allows visual comparison of two revisions
+of a file similar to `vc-diff', but using ediff backend.
+
+*** The option `vc-initial-comment' was removed in Emacs 23.2, but
+this was not advertised at the time.
+
+*** `vc-toggle-read-only' is an obsolete alias for `toggle-read-only'.
+Since Emacs 23, it has done the same thing as `toggle-read-only', but
+this was not advertised at the time.
+
+** Obsolete modes
+
+*** abbrevlist.el
+
+*** erc-hecomplete.el (use erc-pcomplete.el instead)
+
+*** partial-completion-mode (complete.el) is obsolete.
+You can get a comparable behavior with:
+(setq completion-styles '(partial-completion initials))
+(setq completion-pcm-complete-word-inserts-delimiters t)
+
+*** pc-mode.el is obsolete (CUA mode is much more comprehensive).
+
+*** pgg is obsolete (use EasyPG instead).
+
+*** sregex.el is obsolete, since rx.el is a strict superset.
+
+*** s-region.el and pc-select.el are obsolete.
+They are superseded by shift-select-mode, enabled by default since 23.1.
+
+*** vc-mcvs.el is obsolete (for lack of a maintainer).
+
+** Miscellaneous
+
+*** The Landmark game is now invoked with `landmark', not `lm'.
+Its functions and variables have been similarly renamed.
+
+*** In `ido-file-completion-map', C-v is no longer bound to `ido-toggle-vc'.
+(This interfered with cua-mode.)
+
+*** f90.el has some support for Fortran 2008 syntax.
+
+*** `copyright-fix-years' can optionally convert consecutive years to ranges.
+
+*** New command `nato-region' converts text to NATO phonetic alphabet.
+
+\f
+* New Modes and Packages in Emacs 24.1
+
+** Occur Edit mode applies edits made in *Occur* buffers to the
+original buffers. It is bound to "e" in Occur mode.
+
+** New global minor mode electric-pair-mode.
+When enabled, typing an open parenthesis automatically inserts the
+matching closing one.
+
+** New global minor mode electric-indent-mode.
+When enabled, typing certain characters triggers reindentation.
+Major modes wishing to use this can set electric-indent-chars or
+electric-indent-functions.
+
+** New global minor mode electric-layout-mode.
+When enabled, typing certain characters automatically inserts newlines.
+Major modes wishing to use this can set electric-layout-rules.
+
+** tabulated-list.el provides a generic major mode for tabulated data,
+from which other modes can be derived.
+
+** pcase.el provides the ML-style pattern matching macro `pcase'.
+
+** secrets.el is an implementation of the Secret Service API, an
+interface to password managers like GNOME Keyring or KDE Wallet. The
+Secret Service API requires D-Bus for communication. The command
+`secrets-show-secrets' offers a buffer with a visualization of the
+secrets.
+
+** notifications.el provides an implementation of the Desktop
+Notifications API. It requires D-Bus for communication.
+
+** soap-client.el supports access to SOAP web services from Emacs.
+soap-inspect.el is an interactive inspector for SOAP WSDL structures.
+
+** New generic mode, xmodmap-generic-mode, for xmodmap files.
+
+** New emacs-lock.el package.
+The previous version has been moved to obsolete/old-emacs-lock.el.
+Now, there is a proper minor mode `emacs-lock-mode'. Protection
+against exiting Emacs and killing the buffer can be set separately.
+The mechanism for automatically turning off protection for buffers
+with dead inferior processes has been generalized.
+
+\f
+* Incompatible Lisp Changes in Emacs 24.1
+
+** Passing a nil argument to a minor mode function call now ENABLES
+the minor mode unconditionally. This is so that you can write e.g.
+
+ (add-hook 'text-mode-hook 'foo-mode)
+
+to enable foo-mode in Text mode buffers, removing the need for
+`turn-on-foo-mode' style functions. This affects all mode commands
+defined by `define-minor-mode'. If called interactively, the mode
+command still toggles the minor mode.
+
+** The return value of `backup-buffer' has changed.
+It is now a list of three elements, where the second element is a list
+describing the original file's SELinux context. If Emacs or the
+system lacks SELinux support, the context list is (nil nil nil nil).
+See "Basic SELinux support" above, under "Changes in Emacs 24.1".
+
+** `char-direction-table' and the `char-direction' function were deleted.
+They were buggy and inferior to the new support of bidirectional
+editing introduced in Emacs 24. If you need the bidirectional
+properties of a character, use `get-char-code-property' with the last
+argument `bidi-class'.
+
+** `copy-directory' now copies the source directory as a subdirectory
+of the target directory, if the latter is an existing directory. The
+new optional arg COPY-CONTENTS, if non-nil, makes the function copy
+the contents directly into a pre-existing target directory.
+
+** For mouse click input events in the text area, the Y pixel
+coordinate in the POSITION list now counts from the top of the text
+area, excluding any header line. Previously, it counted from the top
+of the header line.
+
+** Support for "old-style" backquotes, obsolete for 10+ years, has
+been further reduced. Now a backquote not followed by a space is
+always treated as a "new-style" backquote. Please remove all
+"old-style" backquotes from your code. If your code uses backquotes
+as documented in the Elisp manual, and compiles without warning, then
+you have nothing to do in this regard. Code not following the
+appropriate conventions may fail to compile.
+
+The most common cause of trouble seems to be an old-style backquote
+followed by a newline. Another cause of trouble is vector notation
+for key sequence notation: instead of [(control ,)] and [(control ')],
+you should write [(control ?,)] and [(control ?')], which will work in
+older Emacsen too.
+
+** The macro `eval-at-startup' was removed in Emacs 23.2, but this
+was not advertised at the time. The function `custom-initialize-delay'
+replaced all known uses.
+
+** `view-buffer' now treats special mode-class in the same way that
+`view-file' has since Emacs 22 (i.e. it won't enable View mode if the
+major mode is special).
+
+** Menu and tool bar changes
+
+*** During startup, Emacs no longer adds entries for `menu-bar-lines'
+and `tool-bar-lines' to `default-frame-alist' and `initial-frame-alist'.
+With these alist entries omitted, `make-frame' checks the value of the
+variable `menu-bar-mode'/`tool-bar-mode' to determine whether to create
+a menu-bar or tool-bar, respectively. If the alist entries are added,
+they override the value of `menu-bar-mode'/`tool-bar-mode'.
+
+*** The menu bar bindings's caches are not used any more.
+Use (where-is-internal <def> nil t) instead.
+
+** Regions created by mouse dragging are now normal active regions,
+similar to those created by shift-selection (see Selection changes
+above). In previous Emacs versions, these regions were delineated by
+`mouse-drag-overlay'; that variable has been removed.
+
+** The fourth argument of `filter-buffer-substring' has been removed.
+If you want to remove text properties from the final result, simply
+pass the result through substring-no-properties.
+
+** cl.el no longer provides `cl-19'.
+
+** The following obsolete functions and aliases have been removed
+(the appropriate new function is given in parentheses; "not needed"
+means you can just remove all calls to the function in question):
+
+*** `comint-kill-output' (`comint-delete-output')
+*** `decompose-composite-char' (`char-to-string')
+*** `outline-visible' (`outline-invisible-p')
+*** `internal-find-face' (`facep')
+*** `internal-get-face' (`facep and check-face')
+*** `frame-update-faces' (not needed)
+*** `frame-update-face-colors' (`frame-set-background-mode')
+*** `x-frob-font-weight' and `x-frob-font-slant' (`make-face-*' functions)
+*** `x-make-font-bold' and `x-make-font-demibold' (`make-face-bold')
+*** `x-make-font-italic' and `x-make-font-oblique' (`make-face-italic')
+*** `x-make-font-bold-italic' (`make-face-bold-italic')
+*** `x-make-font-unbold' (`make-face-unbold')
+*** `x-make-font-unitalic' (`make-face-unitalic')
+*** `mldrag-drag-mode-line' (`mouse-drag-mode-line')
+*** `mldrag-drag-vertical-line' (`mouse-drag-vertical-line')
+*** `iswitchb-default-keybindings' (`iswitchb-mode')
+*** `char-bytes' (== 1)
+*** `isearch-return-char' (`isearch-printing-char')
+*** `make-local-hook' (not needed)
+*** `set-screen-height' (`set-frame-height')
+*** `set-screen-width' (`set-frame-width')
+
+** The following obsolete variables and varaliases have been removed
+(the appropriate new variable is given in parentheses):
+
+*** `checkdoc-minor-keymap' (`checkdoc-minor-mode-map')
+*** `vc-header-alist' (`vc-BACKEND-header')
+*** `directory-sep-char' (== ?/)
+*** `font-lock-defaults-alist' (`font-lock-defaults')
+*** `e' (`float-e').
+
+** The following obsolete files were removed:
+sc.el, x-menu.el, rnews.el, rnewspost.el
+
+** The format of the finder-inf.el file has changed, since the Finder
+mechanism is now based on the package system. The variable
+`finder-package-info' is replaced by `package--builtins' and
+`finder-keywords-hash'.
+
+** When generating autoloads, `update-directory-autoloads' no longer
+assumes every inspected file is in your `load-path'. It instead
+generates relative names according to the current `load-path'.
+
+\f
+* Lisp Changes in Emacs 24.1
+
+** Code can now use lexical scoping by default instead of dynamic scoping.
+The `lexical-binding' variable enables lexical scoping for local
+variables. It is typically set via a file-local variable in the first
+line of the file, in which case it applies to all the code in that
+file.
+
+*** `eval' takes a new optional argument `lexical' to choose the new lexical
+binding instead of the old dynamic binding mode.
+
+*** Lexically scoped interpreted functions are represented with a new form
+of function value which looks like (closure ENV ARGS &rest BODY).
+
+*** New macro `letrec' to define recursive local functions.
+
+*** `defvar' and `defconst' now mark the variable as special (dynamic).
+So do `defcustom' and other forms that call `defvar' as a subroutine.
+
+*** New function `special-variable-p' to check whether a variable is
+declared as dynamically bound.
+
+*** The form ((lambda ...) ...) is deprecated.
+
+** An Emacs Lisp testing tool is now included.
+Emacs Lisp developers can use this tool to write automated tests for
+their code. See the ERT info manual for details.
+
+** Changes for bidirectional display and editing
+
+*** New function `current-bidi-paragraph-direction'.
+This returns the base direction of the paragraph at point.
+
+*** New function `bidi-string-mark-left-to-right'.
+Given a string containing characters from right-to-left scripts, this
+function returns another string which can be safely inserted into a
+buffer, such that any following text will be always displayed to the
+right of that string. (This works by appending an invisible Unicode
+"LEFT-TO-RIGHT MARK" character if the argument string might need it.)
+
+This is useful when the buffer has overall left-to-right paragraph
+direction and you need to insert a string whose contents are not known
+in advance, without disrupting the layout of the line.
+
+** Window changes
+
+*** Window tree functions are accessible in Elisp.
+Functions are provided to return the parent, siblings or child windows
+of any window including internal windows (windows not associated with a
+buffer) in the window tree.
+
+**** New function `window-valid-p' gives non-nil for live and internal
+windows.
+
+**** Window manipulation can deal with internal windows.
+Many window handling functions like `split-window', `delete-window', or
+`delete-other-windows' as well as the window resizing functions can now
+act on any window including internal ones.
+
+*** window-total-height/-width vs window-body-height/-width.
+The function `window-height' has been renamed to `window-total-height'
+and `window-width' has been renamed to `window-body-width'. The old
+names are provided as aliases. Two new functions `window-total-width'
+and `window-body-height' are provided.
+
+*** Window parameters specific to window handling functions.
+For each window you can specify a parameter to override the default
+behavior of a number of functions like `split-window', `delete-window'
+and `delete-other-windows'. The variable `ignore-window-parameters'
+allows to ignore processing such parameters.
+
+*** New semantics of third argument of `split-window'.
+The third argument of `split-window' has been renamed to SIDE and can be
+set to any of the values 'below, 'right, 'above, or 'left to make the
+new window appear on the corresponding side of the window that shall be
+split. Any other value of SIDE will cause `split-window' to split the
+window into two side-by-side windows as before.
+
+*** Window resizing functions.
+A new standard function for resizing windows called `window-resize' has
+been introduced. This and all other functions for resizing windows no
+longer delete any windows when they become too small.
+
+*** Deleting the selected window now selects the most recently selected
+live window on that frame instead.
+
+*** `adjust-window-trailing-edge' adjustments.
+`adjust-window-trailing-edge' can now deal with fixed-size windows and
+is able to resize other windows if a window adjacent to the trailing
+edge cannot be shrunk any more. This makes its behavior more similar to
+that of Emacs 21 without compromising, however, its inability to delete
+windows which was introduced in Emacs 22.
+
+*** Window-local buffer lists.
+Windows now have local buffer lists. This means that removing a buffer
+from display in a window will preferably show the buffer previously
+shown in that window with its previous window-start and window-point
+positions. This also means that the same buffer may be automatically
+shown twice even if it already appears in another window.
+
+*** `switch-to-buffer' has a new optional argument FORCE-SAME-WINDOW,
+which if non-nil requires the buffer to be displayed in the currently
+selected window, signaling an error otherwise. If nil, another window
+can be used, e.g. if the selected one is strongly dedicated.
+
+*** `split-window-vertically' and `split-window-horizontally' renamed
+to `split-window-below' and `split-window-right' respectively.
+The old names are kept as aliases.
+
+*** Display actions
+
+**** The second arg to `display-buffer' and `pop-to-buffer' is now
+named ACTION, and takes a display action of the same form as
+`display-buffer-base-action' (see Changes, above). A non-nil,
+non-list value is treated specially, as the old meaning.
+
+**** New variable `display-buffer-overriding-action'.
+
+**** The procedure of `display-buffer' etc. to choose a window is
+determined by combining `display-buffer-overriding-action',
+`display-buffer-alist', the ACTION arg, `display-buffer-base-action',
+and `display-buffer-fallback-action'. The second and fourth of these
+are user-customizable variables.
+
+See the docstring of `display-buffer' for details.
+
+*** New functions `window-state-get' and `window-state-put'.
+These functions allow to save and restore the state of an arbitrary
+frame or window as an Elisp object.
+
+** Completion
+
+*** New variable `completion-extra-properties' used to specify extra
+properties of the current completion:
+- :annotation-function, same as the old completion-annotate-function.
+- :exit-function, function to call after completion took place.
+
+*** Functions on `completion-at-point-functions' can return any of the
+properties valid for `completion-extra-properties'.
+
+*** `completion-annotate-function' is obsolete.
+
+*** New `metadata' method for completion tables. The metadata thus returned
+can specify various details of the data returned by `all-completions':
+- `category' is the kind of objects returned (e.g., `buffer', `file', ...),
+ used to select a style in completion-category-overrides.
+- `annotation-function' to add annotations in *Completions*.
+- `display-sort-function' to specify how to sort entries in *Completions*.
+- `cycle-sort-function' to specify how to sort entries when cycling.
+
+*** `minibuffer-local-filename-must-match-map' is not used any more.
+Instead, the bindings in `minibuffer-local-filename-completion-map'
+are combined with `minibuffer-local-must-match-map'.
+
+*** New variable `completing-read-function' allows overriding the
+behavior of `completing-read'.
+
+** `glyphless-char-display' can now distinguish between graphical and
+text terminal display, via a char-table entry that is a cons cell.
+
+** `pre-command-hook'/`post-command-hook' are not reset to nil on error.
+Instead, the offending function is removed.
+
+** New hook types
+
+*** New function `run-hook-wrapped' for running an abnormal hook by
+passing the hook functions as arguments to a "wrapping" function.
+Like `run-hook-with-args-until-success', it stops at the first
+non-nil return value.
+
+*** New macro `with-wrapper-hook' for running an abnormal hook as a
+set of "wrapping" filters, similar to around advice.
+(A version of this macro was actually added in Emacs 23.2 but was not
+advertised at the time.)
+
+** Debugger changes
+
+*** New macro `condition-case-unless-debug' (this was actually added in
+Emacs 23.1 as condition-case-no-debug, but not advertised)
+
+*** The macro `with-demoted-errors' was added in Emacs 23.1, but not advertised.
+
+*** Variable `stack-trace-on-error' removed.
+
+*** The debugger can now "continue" from an error, which means it will
+jump to the error handler as if the debugger had not been invoked
+instead of jumping all the way to the top-level.
+
+*** Set `debug-on-event' to enter the debugger on events like SIGUSR1.
+This can be useful when `inhibit-quit' is set.
+
+** The new function `server-eval-at' allows evaluation of Lisp forms on
+named Emacs server instances.
+
+** `call-process' and `call-process-region' allow a `(:file "file")' spec
+to redirect STDOUT to a file.
+
+** The function `format-time-string' now supports the %N directive,
+for higher-resolution time stamps.
+
+** New input reading functions
+
+*** New function `read-char-choice' reads a restricted set of
+characters, discarding any inputs not inside the set.
+
+*** The command `read-color' now requires a match for a color name
+or RGB triplet, instead of signaling an error if the user provides
+invalid input.
+
+**** `facemenu-read-color' is now an alias for `read-color'.
+
+** `image-library-alist' is renamed to `dynamic-library-alist'.
+The variable is now used to load all kind of supported dynamic libraries,
+not just image libraries. The previous name is still available as an
+obsolete alias.
+
+** Syntax parsing changes
+
+*** New variable `syntax-propertize-function'.
+This replaces `font-lock-syntactic-keywords' which is now obsolete.
+This allows syntax-table properties to be set independently from font-lock:
+just call syntax-propertize to make sure the text is propertized.
+Together with this new variable come a new hook
+syntax-propertize-extend-region-functions, as well as two helper functions:
+syntax-propertize-via-font-lock to reuse old font-lock-syntactic-keywords
+as-is; and syntax-propertize-rules which provides a new way to specify
+syntactic rules.
+
+*** Syntax tables support a new "comment style c" additionally to style b.
+
+** New hook `post-self-insert-hook', run after `self-insert-command'.
+
+** frame-local variables cannot be let-bound any more.
+
+** Major and minor mode changes
+
+*** `set-auto-mode' now respects mode: local variables at the end of files,
+as well as those in the -*- line.
+
+*** `prog-mode' is a new major mode from which programming modes
+should be derived.
+
+**** `prog-mode-hook' can be used to enable features for programming
+modes, e.g. (add-hook 'prog-mode-hook 'flyspell-prog-mode) to enable
+on-the-fly spell checking for comments and strings.
+
+*** New hook `change-major-mode-after-body-hook', run by
+`run-mode-hooks' just before any other mode hooks.
+
+*** Enabled globalized minor modes can be disabled in specific major modes.
+If the global mode is global-FOO-mode, then run (FOO-mode -1) in the
+major mode's hook, where FOO-mode toggles the mode on a per-buffer basis.
+
+*** `define-minor-mode' accepts new keywords :variable, :after-hook.
+
+** File-handling changes
+
+*** `delete-file' and `delete-directory' now accept optional arg TRASH.
+Trashing is performed if TRASH and `delete-by-moving-to-trash' are
+both non-nil. Interactively, TRASH defaults to t, unless a prefix
+argument is supplied (see Trash changes, above).
+
+*** New file predicates: `file-equal-p', `file-in-directory-p'.
+
+** Tool-bars can display separators.
+Tool-bar separators are handled like menu separators in menu-bar maps,
+i.e. via menu entries of the form `(menu-item "--")'.
+
+** Image API
+
+*** Animated images support (currently animated gifs only).
+
+**** `image-animated-p' returns non-nil if an image can be animated.
+
+**** `image-animate' animates a supplied image spec.
+
+**** `image-animate-timer' returns the timer object for an image that
+is being animated.
+
+*** `image-extension-data' has been renamed to `image-metadata'.
+The old name is an obsolete alias to the new one.
+
+*** Image mode can view any image type that ImageMagick supports.
+This requires Emacs to be built with ImageMagick support.
+
+**** New function `imagemagick-types', defined if ImageMagick support
+is enabled, returns a list of image file extensions that your
+ImageMagick installation supports.
+
+**** New function `imagemagick-register-types' enables ImageMagick
+image types in Image mode and in `create-image' and other helper
+functions.
+
+**** New option `imagemagick-types-inhibit' excludes certain
+ImageMagick image types from `imagemagick-register-types'.
+
+**** With ImageMagick support, there are extra Image mode commands to
+resize and rotate images: `image-transform-fit-to-height',
+`image-transform-fit-to-width', `image-transform-set-rotation', and
+`image-transform-set-scale'.
+
+** `compose-mail' now accepts an optional 8th arg, RETURN-ACTION, and
+passes it to the mail user agent function. This argument specifies an
+action for returning to the caller after finishing with the mail. For
+example, this is used by Rmail to optionally delete a mail window.
+
+** XML and HTML parsing
+If Emacs is compiled with libxml2 support, there are two new
+functions: `libxml-parse-html-region' (which parses "real world" HTML)
+and `libxml-parse-xml-region' (which parses XML). Both return an
+Emacs Lisp parse tree.
+
+** Networking and encryption changes
+
+*** `open-network-stream' can now be used to open an encrypted stream.
+It now accepts an optional `:type' parameter for initiating a TLS
+connection, directly or via STARTTLS. To do STARTTLS, additional
+parameters (`:end-of-command', `:success', `:capabilities-command')
+must also be supplied.
+
+*** New library gnutls.el.
+The new function `gnutls-available-p' returns non-nil if Emacs is
+built with GnuTLS support. The main entry points are
+`open-gnutls-stream' and `gnutls-negotiate'. It's easiest to use
+these functions through `open-network-stream', because that can
+upgrade connections through STARTTLS opportunistically or use plain
+SSL, depending on your needs. For debugging, set `gnutls-log-level'
+greater than 0.
+
+*** New primitive `secure-hash' that supports many secure hash algorithms:
+md5, sha1, sha2, sha224, sha256, sha384, and sha512. The lisp library
+sha1.el has been removed. The `sha1' feature is provided by default.
+
+** Isearch
+
+*** New hook `isearch-update-post-hook' that runs in `isearch-update'.
+
+** Progress reporters can now "spin".
+The MIN-VALUE and MAX-VALUE arguments of `make-progress-reporter' can
+now be nil, or omitted. This makes a "non-numeric" reporter. Each
+time you call `progress-reporter-update' on that progress reporter,
+with a nil or omitted VALUE argument, the reporter message is
+displayed with a "spinning bar".
+
+** New variable `revert-buffer-in-progress-p' is true while a buffer is
+being reverted, even if the buffer has a local `revert-buffer-function'.
+
+** New variables `delayed-warnings-list' and `delayed-warnings-hook'.
+If delayed-warnings-list is non-nil, the command loop calls
+`delayed-warnings-hook' after `post-command-hook'. At present, this
+is only used by Emacs on some platforms to display warnings during
+startup, which might otherwise not be noticed. This uses the
+functions `display-delayed-warnings' and `collapse-delayed-warnings'.
+
+** rx.el has a new `group-n' construct for explicitly numbered groups.
+
+** New function `make-composed-keymap' that constructs a new keymap
+from multiple input maps. You can use this to make a keymap that
+inherits from multiple maps, eg:
+ (set-keymap-parent newmap (make-composed-keymap othermap parent))
+
+** New function `string-prefix-p'.
+(This was actually added in Emacs 23.2 but was not advertised at the time.)
+
+** New reader macro ## that stands for the empty symbol.
+This means that the empty symbol can now be read back. Also, #: by itself
+(when not immediately followed by a possible symbol character) stands for
+an empty uninterned symbol.
+
+** New math functions `isnan', `copysign', `frexp', `ldexp'.
+
+** The following functions and variables are obsolete:
+
+*** `tooltip-use-echo-area' is obsolete.
+Rather than setting this to t, disable Tooltip mode instead.
+
+*** buffer-substring-filters is obsolete.
+Use `filter-buffer-substring-functions' instead.
+
+*** `byte-compile-disable-print-circle' is obsolete.
+
+*** `deferred-action-list' and `deferred-action-function' are obsolete.
+Use `post-command-hook' instead.
+
+*** `font-lock-maximum-size' is obsolete.
+
+\f
+* Changes in Emacs 24.1 on Non-Free Operating Systems
+
+** On MS Windows, Emacs warns when using the obsolete init file _emacs,
+and also when HOME is set to C:\ by default.
+
+** New configure.bat options
+
+*** --enable-checking builds Emacs with extra runtime checks.
+
+*** --distfiles specifies files to be included in binary distribution.
+
+*** --without-gnutls disables automatic GnuTLS detection.
+
+*** --lib for general library linkage, works with the USER_LIBS build variable.
+
+** New make target `dist' to create binary distribution for MS Windows.
+
+** The Lisp function `w32-default-color-map' is now obsolete.
+(It is only used internally in the Emacs C code.)
+
+** Customize ns-auto-hide-menu-bar to have the menu-bar hidden, but
+reappear on mouse-over. (Requires OS X 10.6 or later.)
+
+** On Mac OS X, dragging a file into Emacs visits the file, like on
+other platforms, rather than inserting its contents into the buffer.
+
+\f
+----------------------------------------------------------------------
+This file is part of GNU Emacs.
+
+GNU Emacs is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+GNU Emacs is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
+
+\f
+Local variables:
+coding: utf-8
+mode: outline
+paragraph-separate: "[ \f]*$"
+end:
-2015-02-24 Glenn Morris <rgm@gnu.org>
+ 2015-03-03 Agustín Martín Domingo <agustin6martin@gmail.com>
+
+ * textmodes/ispell.el (ispell-aspell-find-dictionary): Make sure
+ .dat files for aspell dicts are also searched for in location
+ described by `ispell-aspell-dict-dir', matching aspell's dict-dir
+ variable.
+
+ 2015-03-03 Agustín Martín Domingo <agustin6martin@gmail.com>
+
+ * textmodes/ispell.el (ispell-dicts-name2locale-equivs-alist)
+ (ispell-hunspell-fill-dictionary-entry)
+ (ispell-find-hunspell-dictionaries)
+ (ispell-set-spellchecker-params): New generic name for
+ `ispell-hunspell-dictionary-equivs-alist'.
+ (ispell-aspell-add-aliases): Also use
+ `ispell-dicts-name2locale-equivs-alist' to get aspell aliases for
+ standard dict names.
+
+2015-03-03 Glenn Morris <rgm@gnu.org>
* net/browse-url.el (browse-url-firefox-startup-arguments):
Make obsolete.
exists in Firefox 36. (Bug#19921)
(browse-url-firefox-sentinel): Remove function.
-2015-02-23 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* frame.el (blink-cursor-timer-function): Don't increment
blink-cursor-blinks-done counter when a menu is active on a w32
frame. (Bug#19925)
-2015-02-19 Juri Linkov <juri@linkov.net>
+2015-03-03 Juri Linkov <juri@linkov.net>
* comint.el (comint-line-beginning-position): Revert searching for
the prompt when comint-use-prompt-regexp is non-nil because it
`output' for the case when comint-use-prompt-regexp is nil.
(Bug#19710)
-2015-02-15 Jérémy Compostella <jeremy.compostella@gmail.com>
+2015-03-03 Jérémy Compostella <jeremy.compostella@gmail.com>
* net/tramp-sh.el (tramp-remote-process-environment): Disable paging
with PAGER=cat. (Bug#19870)
- 2015-03-03 Glenn Morris <rgm@gnu.org>
-2015-02-13 Glenn Morris <rgm@gnu.org>
+2015-03-03 Glenn Morris <rgm@gnu.org>
* textmodes/flyspell.el (flyspell-duplicate-distance):
Bump :version.
-2015-02-13 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* textmodes/text-mode.el (text-mode-syntax-table): Make some
punctuation character behave as word-constituent, for more
* simple.el (transient-mark-mode): Doc fix. (Bug#19841)
-2015-02-12 Agustín Martín Domingo <agustin6martin@gmail.com>
+2015-03-03 Agustín Martín Domingo <agustin6martin@gmail.com>
Improve string search in `flyspell-word-search-*`. (Bug#16800)
* flyspell.el (flyspell-duplicate-distance): Limit default search
(flyspell-word-search-backward, flyspell-word-search-forward):
Search as full word with defined casechars, not as substring.
- 2015-03-03 Juri Linkov <juri@linkov.net>
-2015-02-10 Juri Linkov <juri@linkov.net>
+2015-03-03 Juri Linkov <juri@linkov.net>
Better support for the case of typing RET on the prompt in comint.
* comint.el (comint-get-old-input-default): Go to the field end
on the prompt before searching for the prompt when
comint-use-prompt-regexp is non-nil. (Bug#19710)
-2015-02-08 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* frame.el (frame-notice-user-settings): Refresh the value of
frame parameters after calling tty-handle-reverse-video. Call
(set-background-color, set-foreground-color): Pass the foreground
and background colors to face-set-after-frame-default. (Bug#19802)
-2015-02-06 Wolfgang Jenkner <wjenkner@inode.at>
+2015-03-03 Wolfgang Jenkner <wjenkner@inode.at>
* net/network-stream.el (network-stream-open-tls): Respect the
:end-of-capability setting.
- 2015-03-03 Juri Linkov <juri@linkov.net>
-2015-02-05 Juri Linkov <juri@linkov.net>
+2015-03-03 Juri Linkov <juri@linkov.net>
Revert the previous change of comint-line-beginning-position callers,
and modify comint-line-beginning-position instead.
Use field-beginning instead of line-beginning-position
if comint-use-prompt-regexp is nil. (Bug#19710)
-2015-02-04 Robert Pluim <rpluim@gmail.com> (tiny change)
+2015-03-03 Robert Pluim <rpluim@gmail.com> (tiny change)
* calendar/todo-mode.el (todo-item-done): When done items are
hidden, restore point to its location prior to invoking this
command. (Bug#19727)
-2015-02-04 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* textmodes/artist.el (artist-ellipse-compute-fill-info): Use
mapcar, not mapc, to create the other half of fill-info.
(Bug#19763)
- 2015-03-03 Nicolas Petton <nicolas@petton.fr>
-2015-02-04 Nicolas Petton <nicolas@petton.fr>
+2015-03-03 Nicolas Petton <nicolas@petton.fr>
* emacs-lisp/authors.el (authors-ignored-files)
(authors-renamed-files-alist): Additions.
-2015-02-03 Michael Albinus <michael.albinus@gmx.de>
+2015-03-03 Michael Albinus <michael.albinus@gmx.de>
* net/tramp.el (tramp-ssh-controlmaster-options): Don't use a
tempfile for ControlPath. (Bug#19702)
-2015-02-02 Michael Albinus <michael.albinus@gmx.de>
+2015-03-03 Michael Albinus <michael.albinus@gmx.de>
* net/tramp.el (tramp-ssh-controlmaster-options): Use "%C" for
ControlPath if possible. (Bug#19702)
-2015-02-02 Glenn Morris <rgm@gnu.org>
+2015-03-03 Glenn Morris <rgm@gnu.org>
* emacs-lisp/authors.el (authors-obsolete-files-regexps)
(authors-valid-file-names, authors-renamed-files-alist): Additions.
- 2015-03-03 Alan Mackenzie <acm@muc.de>
-2015-02-01 Alan Mackenzie <acm@muc.de>
+2015-03-03 Alan Mackenzie <acm@muc.de>
CC Mode: Stop Font Lock forcing fontification from BOL. Fixes
debbugs#19669.
* progmodes/cc-mode.el (c-font-lock-init): Setq
font-lock-extend-region-functions to nil.
-2015-01-31 Alan Mackenzie <acm@muc.de>
+2015-03-03 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/generator.el: Make globals conform to elisp
+ style throughout. Use more efficient font-lock patterns.
+ (cps-inhibit-atomic-optimization): Rename from
+ `cps-disable-atomic-optimization'.
+ (cps--gensym): New macro; replaces `cl-gensym' throughout.
+ (cps-generate-evaluator): Move the `iter-yield' local macro
+ definition here
+ (iter-defun, iter-lambda): from here.
+
+ (iter-defun): Use `macroexp-parse-body'.
+
+2015-03-03 Daniel Colascione <dancol@dancol.org>
+
+2015-03-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/gud.el: Use lexical-binding (bug#19966).
+
+ * emacs-lisp/gv.el (gv-ref): Warn about likely problematic cases.
+
+2015-03-03 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/generator.el: Make globals conform to elisp
+ style throughout. Use more efficient font-lock patterns.
+ (cps-inhibit-atomic-optimization): Rename from
+ `cps-disable-atomic-optimization'.
+ (cps--gensym): New macro; replaces `cl-gensym' throughout.
+ (cps-generate-evaluator): Move the `iter-yield' local macro
+ definition here...
+ (iter-defun, iter-lambda): ...from here.
+
+2015-03-03 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * emacs-lisp/package.el (package-autoremove): Fix if logic.
+
+2015-03-03 Martin Rudalics <rudalics@gmx.at>
+
+ * window.el (window--dump-frame): For pixel height return total
+ number of frame's lines.
+
+2015-03-03 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/cl-macs.el (cl-iter-defun): Add cl-iter-defun.
+
+ * emacs-lisp/generator.el (iter-defun): Correctly propagate
+ docstrings and declarations to underlying function.
+
+2015-03-02 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/generator.el: New file.
+
+ * vc/vc.el (vc-responsible-backend): Add autoload cookie for
+ `vc-responsible-backend'.
+
+2015-03-01 Michael Albinus <michael.albinus@gmx.de>
+
+ * vc/vc-hooks.el (vc-state, vc-working-revision):
+ Use `vc-responsible-backend' in order to support unregistered files.
+
+ * vc/vc-rcs.el (vc-rcs-unregister): Support unregistered files.
+
+ * vc/vc-rcs.el (vc-rcs-fetch-master-state):
+ * vc/vc-sccs.el (vc-sccs-working-revision): Handle undefined
+ master name.
+
+ * vc/vc-src.el (vc-src-working-revision): Do not return an empty string.
+
+2015-03-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-insert): Remove soft hyphens.
+ (shr-insert): Also remove soft hypens from non-folded text.
+
+2015-02-28 Eli Zaretskii <eliz@gnu.org>
+
+ * mail/rmailmm.el (rmail-mime-insert-html): Decode HTML payload
+ when the charset is only given by the HTML <head>, and allow to
+ specify the encoding with "C-x RET c".
+
+2015-02-27 Mark Laws <mdl@60hz.org>
+
+ Support daemon mode on MS-Windows (bug#19688)
+ * server.el (server-process-filter): Force GUI frames on
+ MS-Windows in daemon mode, even if a TTY frame was requested.
+
+ * frameset.el (frameset-keep-original-display-p): Don't assume
+ windows-nt cannot be in daemon mode.
+
+ * frame.el (window-system-for-display): Don't assume windows-nt
+ cannot be in daemon mode.
+
+2015-02-26 Ivan Shmakov <ivan@siamics.net>
+
+ * faces.el (face-list-p): Split from face-at-point.
+ (face-at-point): Use it.
+ * facemenu.el (facemenu-add-face): Likewise. (Bug#19912)
+
+2015-02-26 Oscar Fuentes <ofv@wanadoo.es>
+
+ * vc/vc.el (vc-annotate-switches): New defcustom.
+ * vc/vc-bzr.el (vc-bzr-annotate-switches): New defcustom.
+ (vc-bzr-annotate-command): Use vc-switches.
+ * vc/vc-cvs.el (vc-cvs-annotate-switches): New defcustom.
+ (vc-cvs-annotate-command): Use vc-switches.
+ * vc/vc-git.el (vc-git-annotate-switches): New defcustom.
+ (vc-git-annotate-command): Use vc-switches.
+ * vc/vc-hg.el (vc-hg-annotate-switches): New defcustom.
+ (vc-hg-annotate-command): Use vc-switches.
+ * vc/vc-mtn.el (vc-mtn-annotate-switches): New defcustom.
+ (vc-mtn-annotate-command): Use vc-switches.
+ * vc/vc-svn.el (vc-svn-annotate-switches): New defcustom.
+ (vc-svn-annotate-command): Use vc-switches.
+
+2015-02-26 Alan Mackenzie <acm@muc.de>
Handle "#" operator properly inside macro. Fix coding bug.
"safe" position into the list of them when this is beyond our
current position.
-2015-01-31 Martin Rudalics <rudalics@gmx.at>
+2015-02-26 Martin Rudalics <rudalics@gmx.at>
* menu-bar.el (menu-bar-non-minibuffer-window-p): Return nil when
the menu frame is dead. (Bug#19728)
-2015-01-30 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2015-02-26 Fabián Ezequiel Gallina <fgallina@gnu.org>
python.el: Handle tabs in python-indent-dedent-line.
* progmodes/python.el (python-indent-dedent-line): Fixes for
indentation with tabs. Thanks to <dale@codefu.org> (Bug#19730).
-2015-01-30 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2015-02-26 Fabián Ezequiel Gallina <fgallina@gnu.org>
* progmodes/python.el (python-indent-context): Respect user
indentation after comment.
-2015-01-29 Tassilo Horn <tsdh@gnu.org>
+2015-02-26 Tassilo Horn <tsdh@gnu.org>
* textmodes/reftex-vars.el (featurep): Conditionalize value of
reftex-label-regexps in order to stay compatible with XEmacs 21.5
which has no explicitly numbered groups in regexps (bug#19714).
-2015-01-28 Tassilo Horn <tsdh@gnu.org>
+2015-02-26 Daiki Ueno <ueno@gnu.org>
- * textmodes/reftex.el (reftex-syntax-table-for-bib): Give ( and )
- punctuation syntax since to allow bibtex fields with values such
- as {Test 1) and 2)} (bug#19205, bug#19707).
- (reftex--prepare-syntax-tables): New function.
- (reftex-mode): Use it.
+ * net/dbus.el (dbus-register-signal): Convert "N" of ":argN" to
+ integer before comparison.
-2015-01-26 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2015-02-25 Nicolas Richard <theonewiththeevillook@yahoo.fr>
- python.el: New non-global state dependent indentation engine.
- (Bug#18319, Bug#19595)
+ * progmodes/elisp-mode.el (elisp--eval-last-sexp): Document argument.
- * progmodes/python.el (python-syntax-comment-or-string-p): Accept
- PPSS as argument.
- (python-syntax-closing-paren-p): New function.
- (python-indent-current-level)
- (python-indent-levels): Mark obsolete.
- (python-indent-context): Return more context cases.
- (python-indent--calculate-indentation)
- (python-indent--calculate-levels): New functions.
- (python-indent-calculate-levels): Use them.
- (python-indent-calculate-indentation, python-indent-line):
- (python-indent-line-function): Rewritten to use new API.
- (python-indent-dedent-line): Simplify logic.
- (python-indent-dedent-line-backspace): Use `unless`.
- (python-indent-toggle-levels): Delete function.
+2015-02-25 Oleh Krehel <ohwoeowho@gmail.com>
-2015-01-22 Wolfgang Jenkner <wjenkner@inode.at>
+ * emacs-lisp/check-declare.el (check-declare-warn): Use
+ compilation-style warnings.
+ (check-declare-files): Make sure that
+ `check-declare-warning-buffer' is in `compilation-mode'.
- * calc/calc-units.el (math-units-in-expr-p)
- (math-single-units-in-expr-p, math-find-compatible-unit-rec)
- (math-extract-units): Handle the `neg' operator. (Bug#19582)
- [Backport]
+2015-02-25 Oleh Krehel <ohwoeowho@gmail.com>
-2015-01-21 Daniel Koning <dk@danielkoning.com> (tiny change)
+ * emacs-lisp/check-declare.el (check-declare-ext-errors): New
+ defcustom.
+ (check-declare): New defgroup.
+ (check-declare-verify): When `check-declare-ext-errors' is
+ non-nil, warn about an unfound function, instead of saying
+ "skipping external file".
- * subr.el (posnp): Correct docstring of `posnp'.
- (posn-col-row): Make it work with all mouse position objects.
- * textmodes/artist.el (artist-mouse-draw-continously): Cancel
- timers if an error occurs during continuous drawing. (Bug#6130)
+2015-02-25 Tassilo Horn <tsdh@gnu.org>
-2015-01-20 Eli Zaretskii <eliz@gnu.org>
+ * textmodes/reftex-vars.el (reftex-include-file-commands): Call
+ reftex-set-dirty on changes.
- * button.el (button-activate, push-button): Doc fix. (Bug#19628)
+2015-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
-2015-01-16 Samer Masterson <samer@samertm.com> (tiny change)
+ * emacs-lisp/edebug.el (edebug--display): Save-excursion (bug#19611).
+ * emacs-lisp/debug.el (debugger-env-macro): Remove redundant
+ save-excursion.
- * pcomplete.el (pcomplete-parse-arguments): Parse arguments
- regardless of pcomplete-cycle-completions's value. (Bug#18950)
+2015-02-24 Glenn Morris <rgm@gnu.org>
-2015-01-13 Michael Albinus <michael.albinus@gmx.de>
+ * mail/rmailsum.el (rmail-summary-previous-all)
+ (rmail-summary-previous-msg): Simplify.
- * filenotify.el (file-notify-descriptors, file-notify-handle-event):
- Adapt docstring.
- (file-notify--descriptor): New defun.
- (file-notify-callback, file-notify-add-watch, file-notify-rm-watch):
- Adapt docstring. Handle multiple values for
- `file-notify-descriptors' entries. (Bug#18880)
+2015-02-25 Artur Malabarba <bruce.connor.am@gmail.com>
- * net/tramp.el (tramp-handle-file-notify-rm-watch): Do not check
- `file-notify-descriptors', the implementation has been changed.
+ * simple.el (region-active-p): Fix doc to say non-nil.
-2015-01-13 Juri Linkov <juri@linkov.net>
+2015-02-24 Samer Masterson <nosefrog@gmail.com>
- * comint.el (comint-history-isearch-search)
- (comint-history-isearch-wrap): Use field-beginning instead of
- comint-line-beginning-position.
- (comint-send-input): Go to the end of the field instead of the end
- of the line to accept whole multi-line input.
- http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00305.html
- (comint-history-isearch-message): Use field-beginning
- instead of comint-line-beginning-position - that's more fixes for
- http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00305.html
- (comint-history-isearch-message): Fix args of isearch-message-prefix.
+ * eshell/em-hist.el (eshell-hist-parse-word-designator):
+ Return args joined with " ".
+ * eshell/em-pred.el (eshell-parse-modifiers): Correct docstring.
+ (eshell-hist-parse-modifier): Pass mod a list instead of a string
+ (bug#18960).
- [Backport]
+2015-02-24 Karl Fogel <kfogel@red-bean.com> (tiny change)
-2015-01-09 Eli Zaretskii <eliz@gnu.org>
+ * comint.el (comint-mode-map): Fix obvious typo.
- * net/net-utils.el (net-utils-run-program, net-utils-run-simple):
- On MS-Windows, bind coding-system-for-read to the console output
- codepage. (Bug#19458)
+2015-02-24 Johan Claesson <johanclaesson@bredband.net> (tiny change)
-2015-01-08 Eli Zaretskii <eliz@gnu.org>
+ * filecache.el (file-cache-filter-regexps):
+ Add lock files. (Bug#19516)
- * simple.el (line-move-visual): When converting X pixel coordinate
- to temporary-goal-column, adjust the value for right-to-left
- screen lines. This fixes vertical-motion, next/prev-line, etc.
+2015-02-24 Glenn Morris <rgm@gnu.org>
-2015-01-06 Glenn Morris <rgm@gnu.org>
+ * mail/rmailsum.el (rmail-summary-next-all)
+ (rmail-summary-previous-all, rmail-summary-next-msg):
+ Fix handling of optional argument. (Bug#19916)
- * progmodes/sh-script.el (sh-mode): Doc fix.
- (sh-basic-indent-line): Handle electric newline. (Bug#18756)
+ * progmodes/f90.el (f90-beginning-of-subprogram)
+ (f90-end-of-subprogram, f90-match-end):
+ Handle continued strings where the continuation does not start
+ with "&" and happens to match our regexp. (Bug#19809)
-2014-12-14 Steve Purcell <steve@sanityinc.com> (tiny change)
+2015-02-24 Bozhidar Batsov <bozhidar@batsov.com>
- * emacs-lisp/package.el (package-menu-mode): Use an extra column
- for the "Version" column, to accomodate date-and-time-based versions.
+ * comint.el (comint-clear-buffer): New command.
+ (comint-mode-map): Bind `comint-clear-buffer' to 'C-c M-o'.
-2015-01-04 Paul Eggert <eggert@cs.ucla.edu>
+2015-02-23 Pete Williamson <petewil0@googlemail.com> (tiny change)
- Fix dired quoting bug with "Hit`N`Hide". Fixes Bug#19498.
- * files.el (shell-quote-wildcard-pattern): Also quote "`".
+ Use ${EXEEXT} more uniformly in makefiles
+ * Makefile.in (EMACS): Append ${EXEEXT}.
-2015-01-04 Dmitry Gutov <dgutov@yandex.ru>
+2015-02-23 Sam Steingold <sds@gnu.org>
- Unbreak `mouse-action' property in text buttons.
- * button.el (push-button): Fix regression from 2012-12-06.
+ * files.el (recover-session): Handle `auto-save-list-file-prefix'
+ being a directory (empty non-directory part).
-2015-01-01 Eli Zaretskii <eliz@gnu.org>
+2015-02-23 Magnus Henoch <magnus.henoch@gmail.com>
- * tool-bar.el (tool-bar-local-item)
- (tool-bar-local-item-from-menu): Call force-mode-line-update to
- make sure the tool-bar changes show on display.
+ * net/sasl.el (sasl-mechanism-alist): Refer to sasl-scram-rfc
+ instead of sasl-scram-sha-1, as the former is the name that can be
+ required.
-2014-12-29 Michael Albinus <michael.albinus@gmx.de>
+ * net/sasl-scram-rfc.el (sasl-scram-sha-1-steps)
+ (sasl-scram-sha-1-client-final-message)
+ (sasl-scram-sha-1-authenticate-server): Move to end of file.
- Sync with Tramp 2.2.11.
+2015-02-23 Paul Eggert <eggert@cs.ucla.edu>
- * net/tramp-compat.el (top): Require cl-macs for Emacs 22.
- Make an alias for `default-toplevel-value' if it doesn't exist.
+ Fix the desired binding for comment-line
+ * bindings.el (ctl-x-map): Use [?\C-\;] to get the desired binding.
+ Fixes: bug#19826
- * net/tramp-smb.el (tramp-smb-handle-copy-directory):
- Use `tramp-compat-delete-directory'.
+2015-02-23 Stefan Monnier <monnier@iro.umontreal.ca>
- * net/trampver.el: Update release number.
+ * emacs-lisp/macroexp.el (macroexp-parse-body): Handle cl-declare
+ and :documentation. Change return value format accordingly.
+ * emacs-lisp/cl-generic.el (cl--generic-lambda):
+ * emacs-lisp/pcase.el (pcase-lambda): Adjust accordingly.
+ * emacs-lisp/cl-macs.el (cl--transform-lambda): Use macroexp-parse-body.
-2014-12-29 Filipp Gunbin <fgunbin@fastmail.fm>
+2015-02-23 Dmitry Gutov <dgutov@yandex.ru>
- * autorevert.el (auto-revert-handler): Fix auto-revert-tail-mode
- for remote files. (Bug#19449)
+ Introduce `xref-etags-mode'.
+ * progmodes/xref.el (xref-etags-mode--saved): New variable.
+ (xref-etags-mode): New minor mode. (Bug#19466)
-2014-12-28 Eli Zaretskii <eliz@gnu.org>
+2015-02-22 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * international/mule.el (define-coding-system): Fix typos in the
- doc string.
+ * dom.el (dom-previous-sibling): New function.
-2014-12-28 Kenichi Handa <handa@gnu.org>
+2015-02-21 Paul Eggert <eggert@cs.ucla.edu>
- * international/mule.el (define-coding-system): Improve the doc
- string.
+ * bindings.el (ctl-x-map): There is no 'C-;'.
+ For now, make do with 'M-;'; this allows 'make bootstrap' to work.
+ Perhaps some other binding should be chosen.
+ Fixes: bug#19826
-2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2015-02-21 Artur Malabarba <bruce.connor.am@gmail.com>
- * progmodes/python.el (python-shell-buffer-substring): Handle
- cornercase when region sent starts at point-min.
+ * bindings.el (ctl-x-map): Fix `comment-line' binding. (Bug#19826)
-2014-12-27 Eli Zaretskii <eliz@gnu.org>
+2015-02-21 Michael Albinus <michael.albinus@gmx.de>
- * language/misc-lang.el (composition-function-table): Add Syriac
- characters and also ZWJ/ZWNJ. See
- http://lists.gnu.org/archive/html/help-gnu-emacs/2014-12/msg00248.html
- for the details.
+ * autorevert.el (auto-revert-notify-add-watch)
+ (auto-revert-notify-handler, auto-revert-buffers): Handle also
+ buffers without an associated file, like dired buffers. (Bug#16112)
-2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2015-02-21 Dima Kogan <dima@secretsauce.net>
- python.el: Fix message when sending region.
+ * autorevert.el (auto-revert-mode, auto-revert-tail-mode)
+ (global-auto-revert-mode): Remove (let (auto-revert-use-notify) ... )
+ wrappers. Call (auto-revert-buffers) consequently in order to
+ install handlers.
- * progmodes/python.el (python-shell-send-region): Rename argument
- send-main from nomain. Fix message.
- (python-shell-send-buffer): Rename argument send-main from arg.
+2015-02-21 Wilson Snyder <wsnyder@wsnyder.org>
-2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+ Sync with upstream verilog-mode revision 0d6420b.
+ * progmodes/verilog-mode.el (verilog-mode-version): Update.
+ (vector-skip-list): Remove.
+ (verilog-auto-inst-port, verilog-auto-inst-port-list)
+ (verilog-auto-inst, verilog-auto-inst-param):
+ Use arguments rather than vector-skip.
+ (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
+ modport if signal attachment is itself a modport.
+ Reported by Matthew Lovell.
+
+2015-02-21 Reto Zimmermann <reto@gnu.org>
+
+ Sync with upstream vhdl mode v3.37.1. Add VHDL'08 support.
+ * progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp)
+ (vhdl-doc-release-notes): Update.
+ (vhdl-standard): Add VHDL'08 option.
+ (vhdl-sensitivity-list-all): New option.
+ (vhdl-directive-keywords): Add psl.
+ (vhdl-offsets-alist-default, vhdl-mode-abbrev-table-init)
+ (vhdl-template-construct-alist-init, vhdl-create-mode-menu):
+ (vhdl-imenu-generic-expression): Add context, directive.
+ (vhdl-offsets-alist, vhdl-mode, vhdl-doc-keywords): Doc fixes.
+ (vhdl-template-map-init): Add vhdl-template-context.
+ (vhdl-mode-syntax-table): Support VHDL'08 block comments.
+ (vhdl-create-mode-menu): Add some entries.
+ (vhdl-08-keywords, vhdl-08-types, vhdl-08-attributes)
+ (vhdl-08-functions, vhdl-08-packages, vhdl-08-directives):
+ New constants.
+ (vhdl-directives): New variable.
+ (vhdl-words-init, vhdl-template-process)
+ (vhdl-template-replace-header-keywords): Support VHDL'08.
+ (vhdl-abbrev-list-init): Add vhdl-directives.
+ (vhdl-in-comment-p, vhdl-in-literal, vhdl-win-il)
+ (vhdl-forward-syntactic-ws, vhdl-get-syntactic-context)
+ (vhdl-lineup-comment): Handle block comments and directives.
+ (vhdl-beginning-of-directive, vhdl-template-context)
+ (vhdl-template-context-hook): New functions.
+ (vhdl-libunit-re, vhdl-defun-re, vhdl-begin-p)
+ (vhdl-corresponding-begin, vhdl-get-library-unit, vhdl-regress-line)
+ (vhdl-align-declarations, vhdl-beginning-of-block, vhdl-end-of-block)
+ (vhdl-font-lock-keywords-2, vhdl-get-end-of-unit)
+ (vhdl-scan-context-clause): Add context.
- python.el: Cleanup temp files even with eval errors.
+2015-02-20 Glenn Morris <rgm@gnu.org>
- * progmodes/python.el (python-shell-send-file): Make file-name
- mandatory. Fix temp file removal in the majority of cases.
+ * calendar/solar.el (solar-sunrise-sunset-string):
+ Shorten message a little.
+ (sunrise-sunset): Use message rather than a window. (Bug#19859)
-2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+ * progmodes/f90.el (f90-keywords-re, f90-procedures-re)
+ (f90-font-lock-keywords-2): Some F2008 additions.
- python.el: Handle file encoding for shell.
+2015-02-19 Dima Kogan <dima@secretsauce.net>
- * progmodes/python.el (python-rx-constituents): Add coding-cookie.
- (python-shell--save-temp-file): Write file with proper encoding.
- (python-shell-buffer-substring): Add coding cookie for detected
- encoding to generated content. Fix blank lines when removing
- if-name-main block.
- (python-shell-send-file): Handle file encoding.
- (python-info-encoding-from-cookie)
- (python-info-encoding): New functions.
+ * autorevert.el (auto-revert-buffers-counter)
+ (auto-revert-buffers-counter-lockedout): New variables.
+ (auto-revert-buffers): Increase `auto-revert-buffers-counter'.
+ (auto-revert-notify-handler): Apply `auto-revert-handler' if not
+ suppressed by lockout. (Bug#18958)
-2014-12-24 Michael Albinus <michael.albinus@gmx.de>
+2015-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
- * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
- Use `tramp-rsh-end-of-line', it ought to be more robust.
+ * emacs-lisp/eieio-opt.el (eieio-help-class): `eieio-class-parents'
+ returns classes, not class names (bug#19891).
-2014-12-23 Stefan Monnier <monnier@iro.umontreal.ca>
+ * emacs-lisp/cl-macs.el (cl-struct-slot-value): Handle a nil type.
- * progmodes/js.el (js-syntax-propertize): "return" can't be divided
- (bug#19397).
+ * emacs-lisp/smie.el (smie-prec2->grammar): Fix corner case problem.
-2014-12-23 Michael Albinus <michael.albinus@gmx.de>
+2015-02-18 Kelly Dean <kelly@prtime.org>
- * net/tramp.el (tramp-read-passwd): Ignore errors from `auth-source-*'.
+ * register.el (jump-to-register):
+ * emacs-lisp/lisp.el (check-parens):
+ Push mark before goto-char so user doesn't lose his previous place.
- * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Use "\n"
- as end-of-line delimeter for passwords, when running on MS Windows.
+2015-02-18 Kelly Dean <kelly@prtime.org>
-2014-12-23 Stefan Monnier <monnier@iro.umontreal.ca>
+ * rect.el (rectangle-mark-mode):
+ Suppress superfluous "Mark set" message from push-mark.
- * progmodes/sh-script.el (sh-set-shell): Don't change the global value
- of indent-line-function (bug#19433).
+2015-02-18 Kelly Dean <kelly@prtime.org>
-2014-12-23 Fabián Ezequiel Gallina <fgallina@gnu.org>
+ * help-mode.el (help-go-back, help-go-forward, help-follow):
+ * simple.el (yank-pop, pop-to-mark-command, exchange-point-and-mark):
+ * winner.el (winner-redo):
+ * windmove.el (windmove-do-window-select):
+ * register.el (jump-to-register, increment-register, insert-register)
+ (append-to-register, prepend-to-register):
+ * files.el (find-alternate-file, abort-if-file-too-large, write-file)
+ (set-visited-file-name):
+ * emacs-lisp/lisp.el (kill-backward-up-list):
+ Use user-error instead of error. (Bug#14480)
- Fix line numbers on Python shell.
- * progmodes/python.el (python-shell--save-temp-file): Do not
- append coding cookie.
- (python-shell-send-string): Generalize for
- python-shell-send-region.
- (python--use-fake-loc): Delete var.
- (python-shell-buffer-substring): Cleanup fake-loc logic.
- (python-shell-send-region): Remove fake-loc logic, simplify.
+2015-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-12-22 Fabián Ezequiel Gallina <fgallina@gnu.org>
+ * emacs-lisp/checkdoc.el (checkdoc-show-diagnostics): Don't make bogus
+ assumptions about window ordering.
- * progmodes/python.el (python-indent-post-self-insert-function):
- Make colon to re-indent only for dedenters, handling
- multiline-statements gracefully.
+2015-02-16 Kelly Dean <kelly@prtime.org>
-2014-12-21 Michael Albinus <michael.albinus@gmx.de>
+ * files.el (insert-file-contents-literally): Fix docstring typo.
- * net/tramp.el (tramp-handle-insert-file-contents):
- Set `find-file-not-found-functions' in case of errors. (Bug#18623)
+2015-02-16 Kelly Dean <kelly@prtime.org>
-2014-12-19 Michael Albinus <michael.albinus@gmx.de>
+ * emacs-lisp/easy-mmode.el (define-minor-mode): Process macro
+ arguments correctly. (Bug#19685)
+ (define-minor-mode): Clarify docstring.
+ Clarify mode switch messages for minor modes. (Bug#19690)
- * net/tramp-sh.el (tramp-send-command-and-read): New optional
- arg MARKER.
- (tramp-get-remote-path): Use it.
+2015-02-16 Kelly Dean <kelly@prtime.org>
-2014-12-18 Stefan Monnier <monnier@iro.umontreal.ca>
+ * emacs-lisp/package-x.el (package-upload-buffer-internal):
+ Create valid tar files. (Bug#19536)
- * subr.el (redisplay-dont-pause): Mark as obsolete.
+2015-02-16 Kelly Dean <kelly@prtime.org>
-2014-12-17 Michael Albinus <michael.albinus@gmx.de>
+ * desktop.el (desktop-read): Conditionally re-enable desktop autosave.
+ (Bug#19059)
- * net/tramp.el (tramp-error-with-buffer): Call `message' properly.
- (tramp-accept-process-output): Use nil as argument for
- `accept-process-output', when there is a gateway prepended.
+2015-02-16 Kelly Dean <kelly@prtime.org>
- * net/tramp-gw.el (tramp-gw-open-connection): Suppress traces in
- wrong debug buffer.
- (tramp-gw-open-connection): Set process coding system 'binary.
- (tramp-gw-open-network-stream): Handle HTTP error 403.
+ * help-mode.el (help-do-xref): Prevent duplicated display of Info
+ buffer, and prevent interference with existing buffer. (Bug#13190)
- * net/tramp-sh.el (tramp-compute-multi-hops): Suppress traces in
- wrong debug buffer.
- (tramp-maybe-open-connection): Set connection property "gateway".
+2015-02-16 Fabián Ezequiel Gallina <fgallina@gnu.org>
-2014-12-15 Stefan Monnier <monnier@iro.umontreal.ca>
+ python.el: Do not deactivate mark on shell fontification. (Bug#19871)
- * subr.el (sit-for): Tweak docstring (bug#19381).
+ * progmodes/python.el (python-shell-font-lock-post-command-hook):
+ Do not deactivate mark on fontification.
-2014-12-15 Dmitry Gutov <dgutov@yandex.ru>
+2015-02-16 Ivan Shmakov <ivan@siamics.net>
- * vc/vc-git.el (vc-git-after-dir-status-stage): Move `up-to-date'
- stage to after `diff-index' (bug#19386).
+ * net/eww.el: Fix desktop support. (Bug#19226)
+ (eww-mode): Add autoload cookie.
+ (eww-restore-desktop): Use inhibit-read-only.
-2014-12-14 João Távora <joaotavora@gmail.com>
+ * net/eww.el (eww-suggest-uris): Add autoload cookie, so that
+ add-hook works correctly even if the file is not yet loaded.
- * textmodes/tex-mode.el (tex-insert-quote): Consider and respect
- `electric-pair-mode' (bug#19356).
+2015-02-16 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-12-12 Michael Albinus <michael.albinus@gmx.de>
+ * emacs-lisp/eieio.el (defclass): Use make-instance rather than
+ eieio-constructor.
+ (set-slot-value): Mark as obsolete.
+ (eieio-object-class-name): Improve call to eieio-class-name.
+ (eieio-slot-descriptor-name, eieio-class-slots): New functions.
+ (object-slots): Use it. Declare obsolete.
+ (eieio-constructor): Merge it with `make-instance'.
+ (initialize-instance): Use `dolist'.
+ (eieio-override-prin1, eieio-edebug-prin1-to-string):
+ Use eieio--class-print-name.
- * simple.el (password-word-equivalents): Add "passcode", used for
- numeric secrets like PINs or RSA tokens.
+ * emacs-lisp/eieio-core.el (eieio--class-print-name): New function.
+ (eieio-class-name): Make it do what the docstring claims.
+ (eieio-defclass-internal): Simplify since `prots' isn't used any more.
+ (eieio--slot-name-index): Simplify accordingly.
+ (eieio-barf-if-slot-unbound): Pass the class object rather than its
+ name to `slot-unbound'.
-2014-12-10 Michael Albinus <michael.albinus@gmx.de>
+ * emacs-lisp/eieio-base.el (make-instance): Add a method here rather
+ than on eieio-constructor.
- * net/tramp-sh.el (tramp-get-remote-path): Use a login shell in
- order to determine `tramp-own-remote-path'.
+2015-02-16 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-12-09 Fabián Ezequiel Gallina <fgallina@gnu.org>
+ * emacs-lisp/cl-macs.el (cl-defstruct): Keep type=nil by default.
+ * emacs-lisp/cl-preloaded.el (cl-struct-define): Add sanity checks
+ about relationship between `type', `named', and `slots'.
+ * emacs-lisp/cl-generic.el (cl--generic-struct-tagcode): Adjust to new
+ value of `cl-struct-type' property.
- * progmodes/python.el (python-shell-parse-command):
- Quote `python-shell-interpreter`. (Bug#19289)
+2015-02-15 Jérémy Compostella <jeremy.compostella@gmail.com>
-2014-12-04 Stefan Monnier <monnier@iro.umontreal.ca>
+ * net/tramp-sh.el (tramp-remote-process-environment): Disable paging
+ with PAGER=cat. (Bug#19870)
- * progmodes/sh-script.el (sh-smie-sh-rules): Go back to the beginning
- of the whole pipe when indenting an opening keyword after a |.
- Generalize this treatment to opening keywords like "while" (bug#18031).
+2015-02-14 Artur Malabarba <bruce.connor.am@gmail.com>
-2014-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
+ * emacs-lisp/package.el (package-read-all-archive-contents):
+ Don't build the compatibility table.
+ (package-refresh-contents, package-initialize): Do build the
+ compatibility table.
+ (package--build-compatibility-table): New function.
+ (describe-package-1): Describe why a package is incompatible.
- * simple.el (newline): Place the hook buffer-locally,
- to make sure it's first.
+2015-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
- * progmodes/prog-mode.el (prettify-symbols--compose-symbol):
- Fix handling of symbols with different syntax at beginning/end or with
- symbol rather than word syntax.
+ * emacs-lisp/cl-preloaded.el (cl-struct-define): Register as children
+ of the parent.
+ (cl--assertion-failed): New function.
+ (cl-assertion-failed): Move in from cl-lib.el.
-2014-11-30 Eli Zaretskii <eliz@gnu.org>
+ * emacs-lisp/cl-macs.el (cl-defstruct): Don't generate code to register
+ as children of its parents.
+ (cl--make-type-test, cl--compiler-macro-typep): Remove functions.
+ (cl-typep): Reimplement using define-inline.
+ (cl-assert): Use cl--assertion-failed.
+ (cl-struct-slot-value): Use define-inline.
- * simple.el (line-move): If noninteractive, call line-move-1, not
- forward-line, since the former is compatible with line-move-visual
- both in terms of the column to which it moves and the return
- value. (Bug#19211)
+ * emacs-lisp/cl-lib.el: Move autoloaded code to cl-preload.
-2014-11-27 Stephen Berman <stephen.berman@gmx.net>
- Stefan Monnier <monnier@iro.umontreal.ca>
+ * textmodes/flyspell.el (flyspell-word): Defvar (bug#19844).
+ (flyspell-generic-check-word-p): Mark as obsolete.
- * outline.el (outline-move-subtree-down): Make sure we can move
- forward to find the end of the subtree and the insertion point
- (bug#19102).
+2015-02-13 Artur Malabarba <bruce.connor.am@gmail.com>
-2014-11-27 Leonard Randall <leonard.a.randall@gmail.com>
+ * emacs-lisp/package.el (package--compatibility-table): New var.
+ (package--add-to-compatibility-table): New function.
+ (package-read-all-archive-contents): Populate compatibility table.
+ (package--incompatible-p): Also look in dependencies.
+ (describe-package-1): Fix "incompat" handling.
- * textmodes/reftex-parse.el (reftex-using-biblatex-p): Make search
- for comment lines non-greedy and stopping at newlines to fix stack
- overflows with large files. [Backport]
+2015-02-13 Lars Ingebrigtsen <larsi@gnus.org>
-2014-11-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+ * net/rfc2104.el: Moved here from lisp/gnus.
- * progmodes/python.el (python-shell-completion-setup-code):
- Use __builtin__ module (or builtins in Python 3) and catch all errors
- when importing readline and rlcompleter.
+2015-02-13 Magnus Henoch <magnus.henoch@gmail.com>
-2014-11-26 Stephen Berman <stephen.berman@gmx.net>
+ * net/sasl-scram-rfc.el: New file.
- * calendar/todo-mode.el: Handle calling revert-buffer (bug#19187).
- (todo-revert-buffer): New function.
- (todo-modes-set-1): Use it as the buffer-local value of
- revert-buffer-function.
+ * net/sasl.el (sasl-mechanisms): Remove SCRAM-MD5.
+ Add SCRAM-SHA-1 first.
+ (sasl-mechanism-alist): Remove SCRAM-MD5 entry. Add SCRAM-SHA-1
+ entry (bug#17636).
-2014-11-26 Stephen Berman <stephen.berman@gmx.net>
+2015-02-13 Lars Ingebrigtsen <larsi@gnus.org>
- * calendar/todo-mode.el (todo-mode): If called interactively, just
- display a message saying to call todo-show to enter Todo mode
- (Bug#19112).
+ * net/shr.el (shr-tag-li): Speed up rendering pages with lots of
+ <ul>.
-2014-11-24 Dmitry Gutov <dgutov@yandex.ru>
+2015-02-12 Oleh Krehel <ohwoeowho@gmail.com>
- * vc/vc-hg.el (vc-hg-dir-status-files): Include ignored files.
- (Bug#18579)
+ * progmodes/gdb-mi.el (gdb-display-io-nopopup): New defcustom.
+ (gdb-inferior-filter): Don't pop up the buried output buffer when
+ `gdb-display-io-nopopup' is non-nil.
- * vc/vc-bzr.el (vc-bzr-after-dir-status): Don't skip ignored
- files. (Bug#18579)
+2015-02-12 Fabián Ezequiel Gallina <fgallina@gnu.org>
-2014-11-23 Michael Albinus <michael.albinus@gmx.de>
+ python.el: Allow killing shell buffer if process is dead. (Bug#19823)
- * textmodes/makeinfo.el (makeinfo-buffer): Make it work also for
- remote `buffer-file-name'.
+ * progmodes/python.el (python-shell-font-lock-kill-buffer):
+ Don't require a running process.
+ (python-shell-font-lock-post-command-hook): Fontify only if the
+ shell process is running.
-2014-11-23 Leo Liu <sdl.web@gmail.com>
+2015-02-11 Stefan Monnier <monnier@iro.umontreal.ca>
- * calendar/diary-lib.el (calendar-mark-1): Fix thinko.
+ * hi-lock.el (hi-lock-unface-buffer): Don't call
+ font-lock-remove-keywords if not needed (bug#19796).
-2014-11-22 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2015-02-11 Artur Malabarba <bruce.connor.am@gmail.com>
- Set PYTHONUNBUFFERED on shell startup.
+ * emacs-lisp/package.el (package-install): Invert the second
+ argument, for better backwards compatibility.
+ (package-install-button-action, package-reinstall)
+ (package-menu-execute): Account for the change.
- * progmodes/python.el (python-shell-unbuffered): New var.
- (python-shell-calculate-process-environment): Use it.
+2015-02-11 Nicolas Petton <nicolas@petton.fr>
-2014-11-22 Michael Albinus <michael.albinus@gmx.de>
+ * emacs-lisp/seq.el (seq-reverse): Add a backward-compatible
+ version of seq-reverse that works on sequences in Emacs 24.
+ Bump seq.el version to 1.2.
- * net/tramp.el (tramp-action-password): Clean password on subsequent
- attempts even if there was no wrong password indication. (Bug#19047)
+2015-02-11 Artur Malabarba <bruce.connor.am@gmail.com>
- * net/tramp-sh.el (tramp-get-remote-locale): Return "LC_ALL=C" as
- fallback.
- (tramp-open-connection-setup-interactive-shell): No need to check
- for nil as `tramp-get-remote-locale' return value.
+ * emacs-lisp/package.el (package--incompatible-p): New function.
+ Return non-nil if PKG has no chance of being installable.
+ (package--emacs-version-list): New variable.
+ (describe-package-1, package-desc-status)
+ (package-menu--print-info, package-menu--status-predicate):
+ Account for the "incompat" status.
-2014-11-21 Eli Zaretskii <eliz@gnu.org>
-
- * vc/vc-git.el (vc-git-command, vc-git--call):
- Bind coding-system-for-read and coding-system-for-write to
- vc-git-commits-coding-system.
- (vc-git-previous-revision): Use "~1" instead of "^", since the
- latter is a special character for MS-Windows system shells.
-
-2014-11-20 Michael Albinus <michael.albinus@gmx.de>
+2015-02-11 Martin Rudalics <rudalics@gmx.at>
- Improve XEmacs compatibility.
-
- * net/tramp.el (tramp-autoload-file-name-handler):
- Wrap `temporary-file-directory' by `symbol-value', it doesn't
- exist in XEmacs.
- (tramp-read-passwd): Don't use `with-timeout-suspend' and
- `with-timeout-unsuspend' if they don't exist, like in XEmacs.
- (tramp-time-less-p, tramp-time-subtract): Remove functions.
- (tramp-handle-file-newer-than-file-p, tramp-time-diff):
- * net/tramp-adb.el (tramp-adb-ls-output-time-less-p):
- * net/tramp-cache.el (tramp-get-file-property):
- * net/tramp-smb.el (tramp-smb-handle-insert-directory):
- Use `time-less-p' and `time-subtract, respectively.
+ * frame.el (toggle-frame-maximized, toggle-frame-fullscreen):
+ Rename frame parameter `maximized' to `fullscreen-restore'.
+ Restore fullwidth/-height after fullboth state. Update doc-strings.
- * net/tramp-adb.el (top): Do not require time-date.el.
+2015-02-11 Lars Ingebrigtsen <larsi@gnus.org>
- * net/tramp-compat.el (top): Require time-date.el for XEmacs.
+ * net/shr.el (shr-insert): Make sure the space inserted has the
+ right font (for width).
+ (shr-fill-line): Preserve background colours when indenting/folding.
+ (shr-ensure-paragraph): Don't insert a new paragraph as the first
+ item in a <li>.
- * net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
- Check, whether `utf-8' is a valid coding system.
+2015-02-10 Lars Ingebrigtsen <larsi@gnus.org>
-2014-11-19 Eli Zaretskii <eliz@gnu.org>
+ * net/shr.el (shr-use-fonts): New variable.
+ (shr-fill-text): Rename from "fold".
+ (shr-pixel-column, shr-pixel-region, shr-string-pixel-width):
+ New functions.
+ (shr-insert): Just insert, don't fill the text. Filling is now
+ done afterwards per display unit.
+ (shr-fill-lines, shr-fill-line): New functions to fill text on a
+ per-unit base.
+ (shr-find-fill-point): Take a "beginning" parameter.
+ (shr-indent): Indent using the :width display parameter when using
+ fonts.
+ (shr-parse-style): Ignore "inherit" values, since we already do that.
+ (shr-tag-img): Remove the insertion states.
+ (shr-tag-blockquote): New-style filling.
+ (shr-tag-dd): Ditto.
+ (shr-tag-li): Ditto.
+ (shr-mark-fill): New function to mark lines that need filling.
+ (shr-tag-h1): Use a larger font.
+ (shr-tag-table-1): Get the natural and suggested widths in one
+ rendering.
+ (shr-tag-table): Create the "fixed" version of the table only once
+ so that we can cache data in the table.
+ (shr-insert-table): Get colspan calculations right by having
+ zero-width columns after colspan ones.
+ (shr-expand-alignments): New function to make :align-to specs work
+ right when rendered in one buffer and displayed in another one.
+ (shr-insert-table-ruler): Use :align-to to get the widths right.
+ (shr-make-table): Cache more.
+ (shr-make-table-1): Use the new <td> data layout.
+ (shr-pixel-buffer-width): New function.
+ (shr-render-td): Add a caching layer.
+ (shr-dom-max-natural-width): New function.
+ (shr-tag-h1): Don't use variable-pitch fonts on fontless rendering.
+ (shr-tag-tt): New function.
+ (shr-tag-hr): Compute the right length when using fonts.
+ (shr-table-widths): Off-by-one error in width computation.
+ (shr-expand-newlines): Remove dead code.
+ (shr-insert-table): Extend background colors to the end of the column.
+ (shr-insert-table): Only copy the background, not underline and
+ the like.
+ (shr-face-background): New function.
+
+2015-02-10 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ python.el: Improved shell font lock respecting markers. (Bug#19650)
- * vc/vc.el (vc-retrieve-tag): Doc fix.
+ * progmodes/python.el
+ (python-shell-font-lock-get-or-create-buffer): Use special buffer name.
+ (python-shell-font-lock-with-font-lock-buffer): Enable font lock.
+ (python-shell-font-lock-post-command-hook): Fontify by copying text
+ properties from fontified buffer to shell, keeping markers unchanged.
+ (python-shell-font-lock-turn-off): Fix typo.
+ (python-util-text-properties-replace-name): Delete function.
-2014-11-17 Eli Zaretskii <eliz@gnu.org>
+2015-02-09 Nicolas Petton <nicolas@petton.fr>
- * vc/vc-bzr.el (vc-bzr-print-log, vc-bzr-expanded-log-entry):
- Don't assume --long is the default for "bzr log", always specify
- it explicitly, in case the user defined an alias for 'log' that
- uses some other format.
+ * emacs-lisp/seq.el (seq-group-by): Improves seq-group-by to
+ return sequence elements in correct order.
-2014-11-16 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2015-02-09 Simen Heggestøyl <simenheg@gmail.com> (tiny change)
- * progmodes/python.el (python-eldoc--get-doc-at-point):
- Strip shell output before returning. (bug#18794)
+ * textmodes/css-mode.el (css-smie-rules): Fix paren indent (bug#19815).
-2014-11-16 Dmitry Gutov <dgutov@yandex.ru>
+2015-02-09 Stefan Monnier <monnier@iro.umontreal.ca>
- Fix indentation before `!=' and after `+='. Originally reported
- in https://github.com/mooz/js2-mode/issues/174.
- * progmodes/js.el (js--indent-operator-re): Make assignments and
- (in)equality operator a separate case.
- (js--continued-expression-p): Escape the second `+' in the regexp.
+ * emacs-lisp/cl-generic.el (cl--generic-lambda): Use macroexp-parse-body.
-2014-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
+ * emacs-lisp/eieio-core.el (eieio-oset-default): Catch the unexpected
+ case where the default value would be re-interpreted as a form!
- * window.el (handle-select-window): Deactivate shift-region (bug#19003).
+2015-02-09 Christopher Genovese <genovese@cmu.edu> (tiny change)
-2014-11-15 Andreas Schwab <schwab@linux-m68k.org>
+ * help-fns.el (help-fns--signature): Keep doc for keymap.
- * version.el (emacs-repository-get-version): Use git rev-parse
- instead of git log.
+2015-02-09 Kelly Dean <kelly@prtime.org>
-2014-11-15 Fabián Ezequiel Gallina <fgallina@gnu.org>
+ * desktop.el: Save mark-ring less verbosely.
+ (desktop-var-serdes-funs): New var.
+ (desktop-buffer-info, desktop-create-buffer): Use it.
+ (desktop-file-version): Update to 208.
- * progmodes/python.el (python-indent-calculate-levels):
- Fix indentation behavior multiline dedenter statement. (Bug#18432)
+2015-02-09 Leo Liu <sdl.web@gmail.com>
-2014-11-15 Fabián Ezequiel Gallina <fgallina@gnu.org>
+ * emacs-lisp/pcase.el (pcase-lambda): New Macro. (Bug#19814)
- * progmodes/python.el (python-indent-region):
- Use python-indent-line and skip special cases. (Bug#18843)
+ * emacs-lisp/lisp-mode.el (el-kws-re): Include `pcase-lambda'.
-2014-11-15 Michael Albinus <michael.albinus@gmx.de>
+ * emacs-lisp/macroexp.el (macroexp-parse-body): New function.
- * vc/vc-hg.el (vc-hg-state): Disable pager. (Bug#18940)
+2015-02-08 Paul Eggert <eggert@cs.ucla.edu>
-2014-11-15 Peder O. Klingenberg <peder@klingenberg.no>
+ Port to platforms lacking test -a and -o
+ * Makefile.in (compile-clean):
+ * net/tramp-sh.el (tramp-find-executable):
+ Prefer '&&' and '||' to 'test -a' and 'test -o'.
- * mail/emacsbug.el (report-emacs-bug): Make a better guess at
- envelope-from when reporting through sendmail (bug#19054).
+2015-02-08 Artur Malabarba <bruce.connor.am@gmail.com>
-2014-11-14 Ivan Andrus <darthandrus@gmail.com>
+ * newcomment.el (comment-line): Fix missing paren.
- * progmodes/python.el (python-ffap-module-path):
- Use `derived-mode-p' instead of equality test on `major-mode'.
+2015-02-08 Ulrich Müller <ulm@gentoo.org>
-2014-11-13 Ulrich Müller <ulm@gentoo.org>
+ * play/gamegrid.el: Update comment to reflect that the
+ 'update-game-score' helper program is now setgid by default.
- * version.el (emacs-repository-get-version): Call `git log'
- command with proper format argument (bug#19049).
+2015-02-08 David Kastrup <dak@gnu.org>
-2014-11-10 Glenn Morris <rgm@gnu.org>
+ * subr.el (apply-partially): Use lexical binding here.
- * startup.el (command-line): Handle nil elements in load-path.
+2015-02-08 Artur Malabarba <bruce.connor.am@gmail.com>
-2014-11-08 Glenn Morris <rgm@gnu.org>
+ * newcomment.el (comment-line): New command.
- * emacs-lisp/bytecomp.el (byte-compile-report-error):
- Allow the argument to be a string. Due to the vague doc,
- it was already being used this way.
+ * bindings.el (ctl-x-map): Bind to `C-x C-;'.
-2014-11-07 Michael Albinus <michael.albinus@gmx.de>
+2015-02-08 Oleh Krehel <ohwoeowho@gmail.com>
- * net/tramp.el (tramp-check-cached-permissions): Include hop in
- the constructed Tramp file name. (Bug#18943)
+ * outline.el (outline-show-entry): Fix one invisible char for the
+ file's last outline. Fixes Bug#19493.
-2014-11-07 Stefan Monnier <monnier@iro.umontreal.ca>
+2015-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
- * emulation/cua-base.el (cua--select-keymaps): Use region-active-p
- (bug#18952).
- (cua-set-mark, cua--pre-command-handler-1,cua--post-command-handler-1):
- * emulation/cua-gmrk.el (cua-cancel-global-mark): Same.
+ * subr.el (indirect-function): Change advertised calling convention.
-2014-11-07 Michael Albinus <michael.albinus@gmx.de>
+2015-02-08 Fabián Ezequiel Gallina <fgallina@gnu.org>
- * files.el (file-name-non-special): Wrap the call of
- `insert-file-contents' by `unwind-protect', in order to set the
- buffer's file name anyway. (Bug#18891)
+ python.el: Fix completion-at-point. (Bug#19667)
-2014-11-07 Daiki Ueno <ueno@gnu.org>
+ * progmodes/python.el
+ (python-shell-completion-native-get-completions): Force process buffer.
+ (python-shell-completion-at-point): Handle case where call is not
+ in a shell buffer.
- * epg.el (epg--list-keys-1): Ignore fields after the 15th field
- (bug#18979). Reported by Hideki Saito.
+2015-02-08 Fabián Ezequiel Gallina <fgallina@gnu.org>
-2014-10-18 Alan Mackenzie <acm@muc.de>
+ python.el: Fix shell font-lock multiline input. (Bug#19744)
- Check that a "macro" found near point-min isn't a ## operator.
- Fixes bug #18749. Backported from trunk, 2014-11-05.
- * progmodes/cc-engine.el (c-macro-is-genuine-p): New function.
- (c-beginning-of-macro): Use the above new function.
+ * progmodes/python.el
+ (python-shell-font-lock-post-command-hook): Handle multiline input.
-2014-11-05 Alan Mackenzie <acm@muc.de>
+2015-02-08 Fabián Ezequiel Gallina <fgallina@gnu.org>
- Fix wrong bound to c-font-lock-declarators. Fixes bug #18948.
- * progmodes/cc-fonts.el (c-font-lock-declarations):
- Pass "(point-max)" as bound to c-font-lock-declarators, not "limit", as
- the buffer is sometimes narrowed to less than "limit" (e.g., in
- the presence of macros).
+ python.el: Make shell font-lock respect markers. (Bug#19650)
-2014-11-05 Michael Albinus <michael.albinus@gmx.de>
+ * progmodes/python.el (python-shell-font-lock-cleanup-buffer):
+ Use `erase-buffer`.
+ (python-shell-font-lock-comint-output-filter-function):
+ Handle newlines.
+ (python-shell-font-lock-post-command-hook): Respect markers on
+ text fontification.
- * net/tramp.el (tramp-error-with-buffer): Show connection buffer
- only when message appeared in minibuffer. (Bug#18891)
+2015-02-07 Fabián Ezequiel Gallina <fgallina@gnu.org>
- * net/tramp-adb.el (tramp-adb-handle-file-attributes):
- * net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
- * net/tramp-sh.el (tramp-sh-handle-file-attributes): Return nil in
- case of errors.
+ python.el: Keep eldoc visible while typing args. (Bug#19637)
-2014-11-04 Eli Zaretskii <eliz@gnu.org>
+ * progmodes/python.el (python-eldoc--get-symbol-at-point):
+ New function based on Carlos Pita <carlosjosepita@gmail.com> patch.
+ (python-eldoc--get-doc-at-point, python-eldoc-at-point): Use it.
- * jit-lock.el (jit-lock-stealth-fontify): Be tolerant to nil being
- returned by load-average.
+2015-02-07 Fabián Ezequiel Gallina <fgallina@gnu.org>
-2014-11-04 Michael Albinus <michael.albinus@gmx.de>
+ Fix hideshow integration. (Bug#19761)
- * net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer): Don't use
- a local copy; setting `inhibit-file-name-handlers' proper might be
- more performant. (Bug#18751)
+ * progmodes/python.el
+ (python-hideshow-forward-sexp-function): New function based on
+ Carlos Pita <carlosjosepita@gmail.com> patch.
+ (python-mode): Make `hs-special-modes-alist` use it and initialize
+ the end regexp with the empty string to avoid skipping parens.
-2014-11-04 Glenn Morris <rgm@gnu.org>
+2015-02-07 Fabián Ezequiel Gallina <fgallina@gnu.org>
- * mail/emacsbug.el (report-emacs-bug): No longer include
- recent-keys in the report. (Bug#18900)
+ * progmodes/python.el (python-check-custom-command): Do not use
+ defvar-local for compat with Emacs<24.3.
-2014-11-03 Michael Albinus <michael.albinus@gmx.de>
+2015-02-07 Martin Rudalics <rudalics@gmx.at>
- * net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer): Use a
- local copy of FILENAME, when it is remote. (Bug#18751)
+ * frame.el (frame-notice-user-settings):
+ Update `frame-size-history'.
+ (make-frame): Update `frame-size-history'.
+ Call `frame-after-make-frame'.
+ * faces.el (face-set-after-frame-default): Remove call to
+ frame-can-run-window-configuration-change-hook.
-2014-11-02 Michael Albinus <michael.albinus@gmx.de>
+2015-02-06 Dmitry Gutov <dgutov@yandex.ru>
- * net/tramp-adb.el (tramp-adb-handle-process-file): Do not raise
- an error when the command fails; the return code must indicate.
- (tramp-adb-send-command-and-check): Fix docstring.
+ * vc/vc-cvs.el (vc-cvs-dir-status-files): Don't pass DIR to
+ `vc-cvs-command' (bug#19732).
-2014-11-01 Michael Albinus <michael.albinus@gmx.de>
+2015-02-06 Nicolas Petton <nicolas@petton.fr>
- * net/tramp-cache.el (tramp-get-file-property)
- (tramp-set-file-property): Check, that `tramp-cache-get-count-*'
- and `tramp-cache-set-count-*' are bound. Otherwise, there might
- be compiler warnings.
+ * emacs-lisp/seq.el (seq-mapcat, seq-partition, seq-group-by): New functions.
+ * emacs-lisp/seq.el (seq-drop-while, seq-take-while, seq-count)
+ (seq--drop-list, seq--take-list, seq--take-while-list): Better docstring.
- * net/tramp-sh.el (tramp-get-remote-uid, tramp-get-remote-gid):
- Return -1 respective "UNKNOWN", if uid or gid cannot be determined.
+2015-02-06 Artur Malabarba <bruce.connor.am@gmail.com>
-2014-11-01 Eli Zaretskii <eliz@gnu.org>
+ * doc-view.el (doc-view-kill-proc-and-buffer): Obsolete. Use
+ `image-kill-buffer' instead.
- * progmodes/compile.el (compilation-mode): Turn off deferred
- fontifications locally. (Bug#18856)
+2015-02-06 Thomas Fitzsimmons <fitzsim@fitzsim.org>
-2014-11-01 Wolfgang Jenkner <wjenkner@inode.at>
+ * net/ldap.el (ldap-search-internal): Fix docstring.
- * net/tramp-sh.el (tramp-send-command): Fix the case where the
- remote-echo connection property is non-nil (bug#18858).
+2015-02-06 Lars Ingebrigtsen <larsi@gnus.org>
-2014-11-01 Michael Albinus <michael.albinus@gmx.de>
+ * subr.el (define-error): The error conditions may be constant
+ lists, so use `append' to concatenate them.
- Backport Tramp changes from trunk.
+2015-02-06 Wolfgang Jenkner <wjenkner@inode.at>
- * net/tramp.el (tramp-methods): Tweak docstring.
- (tramp-file-name-handler): Apply `cons' where appropriate.
- (tramp-handle-file-accessible-directory-p): Check for
- `file-readable-p' instead of `file-executable-p'.
- (tramp-handle-shell-command): Use `display-buffer'. (Bug#18326)
- (tramp-handle-unhandled-file-name-directory): Return "/".
- (tramp-check-cached-permissions):
- Use `tramp-compat-file-attributes'.
- (tramp-call-process): Add new argument VEC. Adapt callees in all
- tramp*.el files.
+ * net/network-stream.el (network-stream-open-tls): Respect the
+ :end-of-capability setting.
- * net/tramp-adb.el (tramp-adb-sh-fix-ls-output): Use `bolp'.
- (tramp-adb-handle-write-region): Improve messages.
- (tramp-adb-maybe-open-connection): Don't set
- `tramp-current-*' variables.
+2015-02-05 Artur Malabarba <bruce.connor.am@gmail.com>
- * net/tramp-cache.el (tramp-flush-file-function): Simplify check.
- Suppress debug messages.
+ * emacs-lisp/package.el (package--sort-by-dependence):
+ New function. Return PACKAGE-LIST sorted by dependencies.
+ (package-menu-execute): Use it to delete packages in order.
+ (package--sort-deps-in-alist): New function.
+ (package-menu-mark-install): Can mark dependencies.
+ (package--newest-p): New function.
+ (package-delete): Don't deselect when deleting an older version of
+ an upgraded package.
- * net/tramp-ftp.el (top): Remove special handling for URL syntax.
- (tramp-ftp-file-name-handler):
+ * emacs-lisp/package.el: Add missing (require 'subr-x)
- * net/tramp-gvfs.el (tramp-gvfs-methods) <sftp>: Add.
- (tramp-gvfs-methods-mounttracker)
- (tramp-gvfs-mountlocation-signature): Check `tramp-gvfs-enabled'
- during initialization. (Bug#18774)
- (tramp-gvfs-handle-delete-file): Flush file properties, not
- directory properties.
- (tramp-gvfs-handle-file-attributes): Use `string-to-number' when
- reading "unix::mode".
- (tramp-gvfs-handle-file-name-all-completions):
- Use "-h" option for "gvfs-ls".
- (tramp-gvfs-url-file-name): Apply `cons' where appropriate.
- `user' and `localname' could be nil.
- (tramp-gvfs-send-command): Simplify traces.
+2015-02-05 Stefan Monnier <monnier@iro.umontreal.ca>
- * net/tramp-sh.el (vc-handled-backends, vc-bzr-program)
- (vc-git-program, vc-hg-program): Declare.
- (tramp-methods) <sftp>: Remove. It has never worked satisfactorily.
- (tramp-methods) <nc>: Add new method.
- (tramp-methods) <telnet>: Redirect stderr to "/dev/null".
- (tramp-methods) <plink, plinkx, pscp, psftp>: Improve
- `tramp-login-args'.
- (tramp-default-user-alist): Add "nc".
- (top): Remove completion function for "sftp". Add completion
- functions for "nc" and "psftp".
- (tramp-sh-handle-set-visited-file-modtime):
- (tramp-sh-handle-verify-visited-file-modtime): Use `point-at-eol'.
- (tramp-do-copy-or-rename-file-out-of-band):
- Use cached "remote-copy-args" value, if available. (Bug#18199)
- Tweak docstring. Implement support for "nc" method.
- (tramp-sh-handle-expand-file-name, tramp-local-coding-commands)
- (tramp-remote-coding-commands, tramp-call-local-coding-command):
- Tweak docstring.
- (tramp-sh-handle-start-file-process): Expand `default-directory'.
- (tramp-sh-handle-write-region): Tweak error message.
- (tramp-sh-handle-vc-registered): Remove backends when the remote
- binary does not exist.
- (tramp-open-connection-setup-interactive-shell):
- Prefer utf-8 coding. (Bug#17859)
- (tramp-find-inline-encoding): Do not raise an error.
- (tramp-make-copy-program-file-name): Tweak docstring. Handle also
- the "nc" case. Quote result also locally.
- (tramp-get-remote-id): Check also for "gid".
- (tramp-get-remote-python):
+ * textmodes/css-mode.el (scss-smie--not-interpolation-p): Vars can be
+ hyphenated (bug#19263).
- * net/tramp-smb.el (tramp-smb-handle-copy-directory)
- (tramp-smb-handle-set-file-acl): Use `start-process'.
- (tramp-smb-handle-insert-directory): Use progress reporter.
- (tramp-smb-handle-rename-file): Flush also file properties of
- FILENAME.
+ * textmodes/css-mode.el (css-fill-paragraph): Fix filling in presence
+ of variable interpolation (bug#19751).
- * net/trampver.el: Update release number.
+2015-02-05 Era Eriksson <era+emacs@iki.fi>
-2014-11-01 Reuben Thomas <rrt@sc3d.org>
+ * json.el (json-end-of-file): New error (bug#19768).
+ (json-pop, json-read): Use it.
- * net/tramp.el (tramp-handle-file-symlink-p):
- * net/tramp-ftp.el (tramp-ftp-file-name-handler): Remove a comment
- about VMS, which we no longer support.
+2015-02-05 Kelly Dean <kelly@prtime.org>
-2014-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
+ * help-mode.el (help-xref-interned): Pass BUFFER and FRAME to
+ `describe-variable'.
- * net/tramp-sh.el (tramp-sh-handle-vc-registered): Don't modify
- the global vc-handled-backends (bug#18535).
+ * help-fns.el (describe-function-or-variable): New function.
-2014-11-01 Jérémy Compostella <jeremy.compostella@intel.com>
- Michael Albinus <michael.albinus@gmx.de>
+ * help.el (help-map): Bind `describe-function-or-variable' to o.
+ (help-for-help-internal): Document o key.
- * net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
- Reduce the amount of set environment variable commands.
+2015-02-05 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-11-01 Paul Eggert <eggert@cs.ucla.edu>
+ * emacs-lisp/eieio-compat.el (eieio--defmethod): Use new
+ special (:documentation ...) feature.
+ * emacs-lisp/eieio-core.el (eieio-make-class-predicate)
+ (eieio-make-child-predicate): Same.
+ (eieio-copy-parents-into-subclass): Remove unused arg.
+ (eieio-defclass-internal): Adjust call accordingly and remove redundant
+ `pname' var.
+ (eieio--slot-name-index): Remove unused arg `obj' and adjust all
+ callers accordingly.
- * net/tramp-sh.el (tramp-get-remote-touch): Omit unnecessary call to
- current-time.
+ * emacs-lisp/cconv.el (cconv--convert-function):
+ Add `docstring' argument.
+ (cconv-convert): Use it to handle the new (:documentation ...) form.
+ (cconv-analyze-form): Handle the new (:documentation ...) form.
-2014-11-01 Emilio C. Lopes <eclig@gmx.net>
+ * emacs-lisp/bytecomp.el:
+ (byte-compile-initial-macro-environment): Use macroexp-progn.
+ (byte-compile-cl-warn): Don't silence use of cl-macroexpand-all.
+ (byte-compile-file-form-defvar-function): Rename from
+ byte-compile-file-form-define-abbrev-table.
+ (defvaralias, byte-compile-file-form-custom-declare-variable): Use it.
+ (byte-compile): Use byte-compile-top-level rather than
+ byte-compile-lambda so we can compile non-values.
+ (byte-compile-form): Add warnings for failed uses of lexical vars via
+ quoted symbols.
+ (byte-compile-unfold-bcf): Improve message for failed inlining.
+ (byte-compile-make-closure): Handle new format of internal-make-closure
+ for dynamically-generated docstrings.
- * net/tramp-sh.el (tramp-get-remote-python): Also search for
- executables named "python2" or "python3".
- (tramp-get-remote-uid-with-python): Use parentheses around
- arguments to `print' to make it compatible with Python 3.
- (tramp-get-remote-gid-with-python): Ditto. (Bug#18118)
+ * delsel.el: Deprecate the `kill' option. Use lexical-binding.
+ (open-line): Delete like all other commands, instead of killing.
+ (delete-active-region): Don't define any return any value.
-2014-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
+ * progmodes/python.el: Try to preserve compatibility with Emacs-24.
+ (python-mode): Don't assume eldoc-documentation-function has a non-nil
+ default.
- * simple.el (newline): Add assertions to try and help catch bug#18913.
+2015-02-04 Sam Steingold <sds@gnu.org>
- * emulation/cua-base.el (cua-delete-region): Use delete-active-region
- (bug#18886).
- (cua--last-deleted-region-pos, cua--last-deleted-region-text): Remove.
+ * progmodes/python.el (python-indent-calculate-indentation):
+ Avoid the error when computing top-level indentation.
-2014-10-31 Eli Zaretskii <eliz@gnu.org>
+2015-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
- * Makefile.in (repo-update): Fix a typo and slightly reword
- commentary.
+ * emacs-lisp/cl-generic.el (cl--generic-member-method): Fix paren typo.
-2014-10-31 Eric S. Raymond <esr@thyrsus.com>
+ * textmodes/flyspell.el: Use lexical-binding and cl-lib.
+ (mail-mode-flyspell-verify): Fix last change.
+ (flyspell-external-point-words, flyspell-large-region):
+ Avoid add-to-list on local vars.
- * Makefile.in: Change some production names so they're neutral
- about the repository type.
+2015-02-04 Tassilo Horn <tsdh@gnu.org>
-2014-10-30 Kim F. Storm <storm@cua.dk>
+ * emacs-lisp/package.el (package-installed-p): Fix typo causing
+ void-variable error.
- Restore cua-delete-copy-to-register-0 and M-v command (bug#18886).
- * delsel.el (delete-selection-save-to-register)
- (delsel--replace-text-or-position): New vars.
- (delete-active-region): Use them.
- (delete-selection-repeat-replace-region): New command, moved from
- cua-base.el.
- * emulation/cua-base.el (cua--repeat-replace-text): Remove var.
- (cua-repeat-replace-region): Move command to delsel.el.
- (cua--init-keymaps): Update binding accordingly.
- (cua-mode): Set delete-selection-save-to-register.
+2015-02-04 Artur Malabarba <bruce.connor.am@gmail.com>
-2014-10-30 Stefan Monnier <monnier@iro.umontreal.ca>
+ * image-mode.el (image-kill-buffer): New command.
+ (image-mode-map): Bind it to k.
- * progmodes/cc-defs.el (c--macroexpand-all): New function (bug#18845).
- (c-lang-defconst):
- * progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use it.
+ * emacs-lisp/package.el (package-delete): Remove package from
+ `package-selected-packages' even if it can't be deleted.
+ (package-installed-p): Accept package-desc objects.
+ (package-install): Can be used to mark dependencies as
+ selected. When given a package-desc object which is already
+ installed, the package is not downloaded again, but it is marked
+ as selected (if it wasn't already).
+ (package-reinstall): Accept package-desc objects.
-2014-10-29 Eli Zaretskii <eliz@gnu.org>
+2015-02-03 Artur Malabarba <bruce.connor.am@gmail.com>
- * progmodes/compile.el (compilation-start):
- If compilation-scroll-output is non-nil, don't force window-start of
- the compilation buffer to be at beginning of buffer. (Bug#18874)
+ * emacs-lisp/package.el (package-delete): Document NOSAVE.
+ (package--get-deps): delete-dups when ONLY is nil.
+ (package-autoremove): Warn the user if `package-selected-packages'
+ is empty.
-2014-10-23 Tassilo Horn <tsdh@gnu.org>
+ (package--user-selected-p): New function.
+ (package-delete, package-install, package-install-from-buffer):
+ Use it
+ (package-selected-packages): Mention it.
- * doc-view.el (doc-view-open-text): View the document's plain text
- in the current buffer instead of a new one.
- (doc-view-toggle-display): Handle the case where the current
- buffer contains the plain text contents of the document.
- (doc-view-initiate-display): Don't switch to fallback mode if the
- user wants to view the doc's plain text. [Backport]
+ (package-initialize): Don't populate `package-selected-packages'.
+ (package-install-user-selected-packages, package-autoremove):
+ Special handling for empty `package-selected-packages'.
+ (package-install): Fix when PKG is a package-desc.
-2014-10-23 Eli Zaretskii <eliz@gnu.org>
+ (package-desc-status): Add "dependency" status to the Package
+ Menu.
+ (package-menu--status-predicate, package-menu--print-info)
+ (package-menu-mark-delete, package-menu--find-upgrades)
+ (package-menu--status-predicate, describe-package-1): Use it
- * startup.el (fancy-about-text): Read the entire tutorial, not
- just its first 256 bytes. (Bug#18760)
+ (package--removable-packages): New function.
+ (package-autoremove): Use it.
+ (package-menu-execute): Offer to remove unneeded packages.
-2014-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
+ (package--read-pkg-desc, package-tar-file-info): Fix reference to
+ tar-desc.
- * emacs-lisp/bytecomp.el: Require cl-extra (bug#18804).
- * emacs-lisp/cl-extra.el: Add missing provide.
+2015-02-03 Thierry Volpiatto <thierry.volpiatto@gmail.com>
-2014-10-22 Stefan Monnier <monnier@iro.umontreal.ca>
+ * emacs-lisp/package.el (package-reinstall): Don't change package's selected status.
+ (package-delete): New NOSAVE argument.
- * emacs-lisp/bytecomp.el (byte-compile-and-folded): Optimize case where
- all args are copyable (bug#18767).
- (=, <, >, <=, >=): Re-enable the optimization.
+2015-02-03 Michael Albinus <michael.albinus@gmx.de>
-2014-10-20 Santiago Payà i Miralta <santiagopim@gmail.com>
+ * net/tramp-sh.el (tramp-histfile-override): Fix docstring.
+ (tramp-open-shell, tramp-maybe-open-connection): Set also
+ HISTFILESIZE and HISTSIZE when needed. (Bug#19731)
- * vc/vc-hg.el (vc-hg-log-graph): New var.
- (vc-hg-print-log): Use it.
- (vc-hg-root-log-format): Include branch name and bookmarks; ignore
- graph output (bug#17515).
+2015-02-02 Artur Malabarba <bruce.connor.am@gmail.com>
-2014-10-20 Juri Linkov <juri@jurta.org>
+ * emacs-lisp/package.el (package--find-non-dependencies):
+ New function.
+ (package-initialize): Use it to populate `package-selected-packages'.
+ (package-menu-execute): Clean unnecessary `and'.
+ (package--get-deps): Fix returning duplicates.
- * vc/diff-mode.el (diff-refine-changed): Rename from
- `diff-refine-change' for consistency with `diff-changed'.
- (diff-refine-change): Add obsolete face alias. (Bug#10181)
+2015-02-02 Michael Albinus <michael.albinus@gmx.de>
- * vc/smerge-mode.el (smerge-refined-changed): Rename from
- `smerge-refined-change'.
- (smerge-refined-change): Add obsolete face alias.
+ * net/tramp-sh.el (tramp-histfile-override): Add another choice t.
+ Use it as default.
+ (tramp-open-shell, tramp-maybe-open-connection): Support it.
+ (Bug#19731)
+
+2015-02-02 Thierry Volpiatto <thierry.volpiatto@gmail.com>
+
+ * emacs-lisp/package.el (package-delete): Remove package from
+ package-selected-packages.
+ (package-autoremove): Remove unneeded variable.
+
+2015-02-01 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * emacs-lisp/package.el (package-selected-packages): Fix :type
+ (package-install): Rename ARG to MARK-SELECTED.
+ (package--get-deps): Fix for indirect dependencies.
+ (package-used-elsewhere-p): Rename to
+ (package--used-elsewhere-p): New function.
+ (package-reinstall, package-user-selected-packages-install)
+ (package-autoremove): Use sharp-quote.
+ (package-user-selected-packages-install): Reindent and rename to
+ (package-install-user-selected-packages): New function.
+
+2015-02-01 Thierry Volpiatto <thierry.volpiatto@gmail.com>
+
+ * emacs-lisp/package.el: Don't allow deleting dependencies.
+
+ (package-used-elsewhere-p): New function.
+ (package-delete): Use it, return now an error when trying to
+ delete a package used as dependency by another package.
+
+ Add a reinstall package command.
+ (package-reinstall): New function.
+
+ Add a package-autoremove command.
+ (package-selected-packages): New user var.
+ (package-install): Add an optional arg to notify interactive use.
+ Fix docstring. Save installed package to
+ packages-installed-directly.
+ (package-install-from-buffer): Same.
+ (package-user-selected-packages-install): Allow installing all
+ packages in packages-installed-directly at once.
+ (package--get-deps): New function.
+ (package-autoremove): New function.
+ (package-install-button-action): Call package-install with
+ interactive arg.
+ (package-menu-execute): Same but only for only for not installed
+ packages.
+
+2015-01-31 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (defclass): Use new eieio-make-class-predicate
+ and eieio-make-child-predicate.
+ (eieio-class-parents): Use eieio--class-object.
+ (slot-boundp, find-class, eieio-override-prin1): Avoid class-p.
+ (slot-exists-p): Use find-class.
+
+ * emacs-lisp/eieio-opt.el (eieio-help-class, eieio-help-constructor):
+ Use find-lisp-object-file-name, help-fns-short-filename and new calling
+ convention for eieio-class-def.
+ (eieio-build-class-list): Remove function, unused.
+ (eieio-method-def): Remove button type, unused.
+ (eieio-class-def): Inherit from help-function-def.
+ (eieio--defclass-regexp): New constant.
+ (find-function-regexp-alist): Use it.
+ (eieio--specializers-apply-to-class-p): Handle eieio--static as well.
+ (eieio-help-find-method-definition, eieio-help-find-class-definition):
+ Remove functions.
-2014-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
+ * emacs-lisp/eieio-core.el (eieio--check-type): Remove.
+ Use cl-check-type everywhere instead.
+ (eieio-class-object): Remove, use find-class instead when needed.
+ (class-p): Don't inline.
+ (eieio-object-p): Check more thoroughly, so we don't treat cl-structs,
+ such as eieio classes, as objects. Don't inline.
+ (object-p): Mark as obsolete.
+ (eieio-defclass-autoload, eieio-defclass-internal, eieio-oref)
+ (eieio--generic-tagcode): Avoid `class-p'.
+ (eieio-make-class-predicate, eieio-make-child-predicate): New functions.
+ (eieio-defclass-internal): Use current-load-list rather than
+ `class-location'.
+
+ * emacs-lisp/cl-generic.el (cl--generic-search-method): Fix regexp.
+
+2015-01-30 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/backquote.el (backquote-delay-process): Don't reuse `s'
+ since it may be "equivalent" in some sense, yet different (bug#19734).
+
+2015-01-30 Oleh Krehel <ohwoeowho@gmail.com>
+
+ * outline.el (outline-font-lock-face): Add docstring.
+ (outline-invisible-p): Improve docstring.
+ (outline-invent-heading): Add docstring.
+ (outline-promote): Improve docstring.
+ (outline-demote): Improve docstring.
+ (outline-head-from-level): Improve docstring.
+ (outline-end-of-heading): Add docstring.
+ (outline-next-visible-heading): Improve docstring.
+ (outline-previous-visible-heading): Improve docstring.
+ (outline-hide-region-body): Improve docstring.
+ (outline-flag-subtree): Add docstring.
+ (outline-end-of-subtree): Add docstring.
+ (outline-headers-as-kill): Improve docstring.
+
+2015-01-30 Oleh Krehel <ohwoeowho@gmail.com>
+
+ * outline.el (outline-hide-entry): Rename from `hide-entry'.
+ (hide-entry): Declare as obsolete.
+ (outline-show-entry): Rename from `show-entry'.
+ (show-entry): Declare as obsolete.
+ (outline-hide-body): Rename from `hide-body'.
+ (hide-body): Declare as obsolete.
+ (outline-hide-region-body): Rename from `hide-region-body'.
+ (hide-region-body): Declare as obsolete.
+ (outline-show-all): Rename from `show-all'.
+ (show-all): Declare as obsolete.
+ (outline-hide-subtree): Rename from `hide-subtree'.
+ (hide-subtree): Declare as obsolete.
+ (outline-hide-leaves): Rename from `hide-leaves'.
+ (hide-leaves): Declare as obsolete.
+ (outline-show-subtree): Rename from `show-subtree'.
+ (show-subtree): Declare as obsolete.
+ (outline-hide-sublevels): Rename from `hide-sublevels'.
+ (hide-sublevels): Declare as obsolete.
+ (outline-hide-other): Rename from `hide-other'.
+ (hide-other): Declare as obsolete.
+ (outline-show-children): Rename from `show-children'.
+ (show-children): Declare as obsolete.
+ (outline-show-branches): Rename from `show-branches'.
+ (show-branches): Declare as obsolete.
+
+2015-01-30 Oleh Krehel <ohwoeowho@gmail.com>
+
+ * outline.el (outline-mode): Clean up docstring.
+ (font-lock-warning-face): Remove obsolete declaration.
+ (outline-font-lock-face): Remove obsolete comment.
+
+2015-01-30 Oleh Krehel <ohwoeowho@gmail.com>
+
+ * lisp/custom.el (defface): Set `indent' to 1.
+
+2015-01-30 Oleh Krehel <ohwoeowho@gmail.com>
+
+ * emacs-lisp/easy-mmode.el (define-minor-mode): Set `indent' to 1.
+
+2015-01-30 Michal Nazarewicz <mina86@mina86.com>
+
+ * lisp/files.el (save-buffers-kill-emacs): If `confirm-kill-emacs'
+ is set, but user has just been asked whether they really want to
+ kill Emacs (for example with a ‘Modified buffers exist; exit
+ anyway?’ prompt), do not ask them for another confirmation.
+
+2015-01-29 Jay Belanger <jay.p.belanger@gmail.com>
+
+ * lisp/calc/calc-units.el (calc-convert-exact-units): New function.
+ (calc-convert-units): Check for missing units.
+ (math-consistent-units-p): Strengthen the test for consistent units.
+
+ * lisp/calc/calc-ext.el (calc-init-extensions): Autoload
+ `calc-convert-exact-units' and assign it a keybinding.
+
+ * lisp/calc/calc-help (calc-u-prefix-help): Add help for the
+ "un" keybinding.
+
+2015-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/cl.el (cl--function-convert): Simplify.
- * subr.el (call-process-shell-command, process-file-shell-command):
- Make the `args' obsolete (bug#18409).
- (start-process-shell-command, start-file-process-shell-command):
- Use `declare'.
+2015-01-28 Tassilo Horn <tsdh@gnu.org>
-2014-10-20 Juanma Barranquero <lekktu@gmail.com>
+ * textmodes/reftex.el (reftex-syntax-table-for-bib): Give ( and )
+ punctuation syntax since to allow bibtex fields with values such
+ as {Test 1) and 2)} (bug#19205, bug#19707).
+ (reftex--prepare-syntax-tables): New function.
+ (reftex-mode): Use it.
- * skeleton.el (skeleton-autowrap): Mark as obsolete. Doc fix.
+2015-01-28 Fabián Ezequiel Gallina <fgallina@gnu.org>
-2014-10-20 Glenn Morris <rgm@gnu.org>
+ python.el: New non-global state dependent indentation engine.
+ (Bug#18319, Bug#19595)
+ * progmodes/python.el (python-syntax-comment-or-string-p):
+ Accept PPSS as argument.
+ (python-syntax-closing-paren-p): New function.
+ (python-indent-current-level)
+ (python-indent-levels): Mark obsolete.
+ (python-indent-context): Return more context cases.
+ (python-indent--calculate-indentation)
+ (python-indent--calculate-levels): New functions.
+ (python-indent-calculate-levels): Use them.
+ (python-indent-calculate-indentation, python-indent-line):
+ (python-indent-line-function): Rewritten to use new API.
+ (python-indent-dedent-line): Simplify logic.
+ (python-indent-dedent-line-backspace): Use `unless`.
+ (python-indent-toggle-levels): Delete function.
+
+2015-01-28 Daniel Koning <dk@danielkoning.com> (tiny change)
+
+ * subr.el (posnp): Correct docstring of `posnp'.
+ (posn-col-row): Make it work with all mouse position objects.
+ * textmodes/artist.el (artist-mouse-draw-continously):
+ Cancel timers if an error occurs during continuous drawing. (Bug#6130)
+
+2015-01-28 Eli Zaretskii <eliz@gnu.org>
+
+ * button.el (button-activate, push-button): Doc fix. (Bug#19628)
+
+2015-01-28 Michael Albinus <michael.albinus@gmx.de>
+
+ * filenotify.el (file-notify-descriptors, file-notify-handle-event):
+ Adapt docstring.
+ (file-notify--descriptor): New defun.
+ (file-notify-callback, file-notify-add-watch, file-notify-rm-watch):
+ Adapt docstring. Handle multiple values for
+ `file-notify-descriptors' entries. (Bug#18880)
+
+ * net/tramp.el (tramp-handle-file-notify-rm-watch): Do not check
+ `file-notify-descriptors', the implementation has been changed.
+
+2015-01-28 Eli Zaretskii <eliz@gnu.org>
+
+ * net/net-utils.el (net-utils-run-program, net-utils-run-simple):
+ On MS-Windows, bind coding-system-for-read to the console output
+ codepage. (Bug#19458)
+
+2015-01-28 Dmitry Gutov <dgutov@yandex.ru>
+
+ Unbreak `mouse-action' property in text buttons.
+ * button.el (push-button): Fix regression from 2012-12-06.
+
+2015-01-28 Glenn Morris <rgm@gnu.org>
+
+ * progmodes/sh-script.el (sh-mode): Doc fix.
+ (sh-basic-indent-line): Handle electric newline. (Bug#18756)
+
+2015-01-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix dired quoting bug with "Hit`N`Hide". Fixes Bug#19498.
+ * files.el (shell-quote-wildcard-pattern): Also quote "`".
+
+2015-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Tighten up the tagcode used for eieio and cl-struct objects.
+ * loadup.el: Load cl-preloaded.
+ * emacs-lisp/eieio-core.el (eieio-defclass-internal): Set the function
+ slot of the tag symbol to :quick-object-witness-check.
+ (eieio-object-p): Use :quick-object-witness-check.
+ (eieio--generic-tagcode): Use cl--generic-struct-tag.
+ * emacs-lisp/cl-preloaded.el: New file.
+ * emacs-lisp/cl-macs.el (cl--bind-inits): Remove, unused.
+ (cl--transform-lambda, cl-destructuring-bind): Remove cl--bind-inits.
+ (cl--make-usage-args): Strip away &aux args.
+ (cl-case, cl-typecase, cl--parse-loop-clause): Use macroexp-let2.
+ (cl-the, cl-check-type): Use macroexp-let2 and cl-typep.
+ (cl-defstruct): Use `declare' and cl-struct-define.
+ * emacs-lisp/cl-generic.el (cl--generic-struct-tag): New function.
+ (cl--generic-struct-tagcode): Use it to tighten the tagcode.
+
+2015-01-27 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * emacs-lisp/cl.el (cl--function-convert):
+ Merge cache that cl--labels-convert adds (bug#19699).
+
+2015-01-27 Ivan Shmakov <ivan@siamics.net>
+
+ * tar-mode.el: Allow for adding new archive members. (Bug#19274)
+ (tar-new-regular-file-header, tar--pad-to, tar--put-at)
+ (tar-header-serialize): New functions.
+ (tar-current-position): Split from tar-current-descriptor.
+ (tar-current-descriptor): Use it.
+ (tar-new-entry): New command.
+ (tar-mode-map): Bind it.
+
+2015-01-27 Sam Steingold <sds@gnu.org>
+
+ * progmodes/python.el (python-check-custom-command): Buffer local
+ because it usually includes the buffer name.
+ (python-check-command): Set to epylint when pyflakes is not available.
+
+2015-01-27 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * isearch.el (isearch-process-search-char): Add docstring.
+
+2015-01-27 Oleh Krehel <ohwoeowho@gmail.com>
+
+ * emacs-lisp/derived.el (define-derived-mode): Declare indent 3.
+
+2015-01-27 Katsumi Yamaoka <yamaoka@jpl.org>
+
+ * emacs-lisp/cl.el (cl--function-convert): Run cl--labels-convert
+ for the case cl-flet or cl-labels form is wrapped with lexical-let
+ (bug#19613).
+
+2015-01-26 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/cl-generic.el (cl--generic-method): New struct.
+ (cl--generic): The method-table is now a (list-of cl--generic-method).
+ (cl--generic-member-method): New function.
+ (cl-generic-define-method): Use it.
+ (cl--generic-build-combined-method, cl--generic-cache-miss):
+ Adapt to new method-table.
+ (cl--generic-no-next-method-function): Add `method' argument.
+ (cl-generic-call-method): Adapt to new method representation.
+ (cl--generic-cnm-sample, cl--generic-nnm-sample): Adjust.
+ (cl-find-method, cl-method-qualifiers): New functions.
+ (cl--generic-method-info): Adapt to new method representation.
+ Return a string for the qualifiers.
+ (cl--generic-describe):
+ * emacs-lisp/eieio-opt.el (eieio-help-class): Adjust accordingly.
+ (eieio-all-generic-functions, eieio-method-documentation):
+ Adjust to new method representation.
+
+ * emacs-lisp/eieio-compat.el (eieio--defmethod): Use cl-find-method.
+
+2015-01-26 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/cl-generic.el: Add a method-combination hook.
+ (cl-generic-method-combination-function): New var.
+ (cl--generic-lambda): Remove `with-cnm' arg.
+ (cl-defmethod): Change accordingly.
+ (cl-generic-define-method): Don't check qualifiers validity.
+ Preserve all qualifiers in `method-table'.
+ (cl-generic-call-method): New function.
+ (cl--generic-nest): Remove (morph into cl-generic-call-method).
+ (cl--generic-build-combined-method): Adjust to new format of method-table
+ and use cl-generic-method-combination-function.
+ (cl--generic-standard-method-combination): New function, extracted from
+ cl--generic-build-combined-method.
+ (cl--generic-cnm-sample): Adjust to new format of method-table.
+
+ * emacs-lisp/eieio-compat.el (eieio--defmethod): Use () qualifiers
+ instead of :primary.
+
+ * emacs-lisp/eieio-datadebug.el (eieio-debug-methodinvoke):
+ Remove obsolete function.
+
+2015-01-26 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-make-table-1): Fix colspan typo.
+ (shr-make-table-1): Add comments.
+ (shr-make-table-1): Make colspan display more sensibly.
+
+ * net/eww.el (eww-add-bookmark): Fix prompt and clean up the code
+ slightly.
+
+2015-01-25 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/cl-generic.el (cl--generic-no-next-method-function): New fun.
+ (cl--generic-build-combined-method, cl--generic-nnm-sample): Use it
+ (bug#19672).
+ (cl--generic-typeof-types): Add support for `sequence'.
+ (cl-defmethod): Add non-keywords in the qualifiers.
+
+2015-01-25 Dmitry Gutov <dgutov@yandex.ru>
+
+ * emacs-lisp/find-func.el (find-function-regexp): Don't match
+ `defgroup' (regression from the previous change here).
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/ldap.el (ldap-search-internal): Mention binddn in invalid
+ credentials error message.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/ldap.el (ldap-password-read): Validate password before
+ caching it.
+ (ldap-search-internal): Handle ldapsearch error conditions.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/ldap.el (ldap-password-read): Handle password-cache being nil.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/eudc.el (eudc-expand-inline): Always restore former server
+ and protocol.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/eudcb-ldap.el: Don't nag the user in case a default base is
+ provided by the LDAP system configuration file.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/eudc.el (eudc-format-query): Preserve the
+ eudc-inline-query-format ordering of attributes in the returned list.
+ * net/eudcb-ldap.el (eudc-ldap-format-query-as-rfc1558):
+ Append the LDAP wildcard character to the last attribute value.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/eudcb-ldap.el (eudc-ldap-cleanup-record-simple):
+ Downcase field names of LDAP results.
+ (eudc-ldap-cleanup-record-filtering-addresses): Likewise.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/ldap.el (ldap-ldapsearch-password-prompt): New defcustom.
+ (ldap-search-internal): Send password to ldapsearch through a pipe
+ instead of via the command line.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/ldap.el: Require password-cache.
+ (ldap-password-read): New function.
+ (ldap-search-internal): Call ldap-password-read when it is
+ configured to be called.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/eudc-vars.el (eudc-expansion-overwrites-query):
+ Change default to nil.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/eudc.el (eudc-expand-inline): Ignore text properties of
+ string-to-expand.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/eudc-vars.el (eudc-inline-expansion-format): Default to a
+ format that includes first name and surname.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/eudc-vars.el (eudc-inline-query-format): Change default to
+ query email and first name instead of surname.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/ldap.el (ldap-search-internal): Support new-style LDAP URIs.
+
+2015-01-23 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/eudc-vars.el (eudc-server): Adjust docstring to mention
+ eudc-server-hotlist.
+ (eudc-server-hotlist): Move from eudc.el and make defcustom.
+ * net/eudc.el (eudc-server-hotlist): Move to eudc-vars.el.
+ (eudc-set-server): Allow setting protocol to nil.
+ (eudc-expand-inline): Support hotlist-only expansions when server
+ is not set.
+
+2015-01-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/cl-generic.el (cl-no-primary-method): New fun and error.
+ (cl--generic-build-combined-method): Use it.
+
+2015-01-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ Don't downcase system diagnostics' first letters
+ * emacs-lisp/bytecomp.el (byte-compile-file):
+ * ffap.el (find-file-at-point):
+ * files.el (insert-file-1):
+ * net/ange-ftp.el (ange-ftp-barf-if-not-directory)
+ (ange-ftp-copy-file-internal):
+ * progmodes/etags.el (visit-tags-table):
+ Keep diagnostics consistent with system's.
+ * ffap.el (ffap-machine-p):
+ Ignore case while comparing diagnostics.
+
+2015-01-22 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * help.el (help-make-usage): Don't turn a "_" arg into an empty-string
+ arg (bug#19645).
+ * emacs-lisp/cl-generic.el (cl--generic-lambda): Don't confuse a string
+ body with a docstring.
+
+2015-01-22 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref-location-marker, xref-location-group):
+ Use `cl-defgeneric' and `cl-defmethod' instead of the EIEIO
+ counterparts.
+
+ * progmodes/etags.el (xref-location-marker): Same.
+
+ * progmodes/xref.el (xref--current): Rename from `xref--selected'.
+ (xref--inhibit-mark-current): Rename from
+ `xref--inhibit-mark-selected'. Update the usages.
+ (xref-quit): Reword the docstring. Kill buffers after quitting
+ windows instead of before.
+ (xref--insert-xrefs): Tweak help-echo.
+ (xref--read-identifier-history, xref--read-pattern-history):
+ New variables.
+ (xref--read-identifier, xref-find-apropos): Use them.
+
+2015-01-21 Ulrich Müller <ulm@gentoo.org>
+
+ * play/gamegrid.el (gamegrid-add-score-with-update-game-score):
+ Allow the 'update-game-score' helper program to run suid or sgid.
+
+2015-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el: Use cl-defmethod.
+ (defclass): Generate cl-defmethod calls; use setf methods for :accessor.
+ (eieio-object-name-string): Declare as obsolete.
+
+ * emacs-lisp/eieio-opt.el: Adapt to cl-generic.
+ (eieio--specializers-apply-to-class-p): New function.
+ (eieio-all-generic-functions): Use it.
+ (eieio-method-documentation): Use it as well as cl--generic-method-info.
+ Change format of return value.
+ (eieio-help-class): Adapt accordingly.
+
+ * emacs-lisp/eieio-compat.el (eieio--defmethod): Avoid no-next-method
+ errors when there's a `before' but no `primary' (bug#19645).
+ (next-method-p): Return nil rather than signal an error.
+ (eieio-defgeneric): Remove bogus (fboundp 'method).
+
+ * emacs-lisp/eieio-speedbar.el:
+ * emacs-lisp/eieio-datadebug.el:
+ * emacs-lisp/eieio-custom.el:
+ * emacs-lisp/eieio-base.el: Use cl-defmethod.
+
+ * emacs-lisp/cl-generic.el (cl-defgeneric): Add support for `declare'.
+ (cl--generic-setf-rewrite): Setup the setf expander right away.
+ (cl-defmethod): Make sure the setf expander is setup before we expand
+ the body.
+ (cl-defmethod): Silence byte-compiler warnings.
+ (cl-generic-define-method): Shuffle code to change return value.
+ (cl--generic-method-info): New function, extracted from
+ cl--generic-describe.
+ (cl--generic-describe): Use it.
+
+2015-01-21 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref--xref-buffer-mode-map): Define before
+ the major mode. Remap `quit-window' to `xref-quit'.
+ (xref--xref-buffer-mode): Inherit from special-mode.
+
+ xref: Keep track of temporary buffers (bug#19466).
+ * progmodes/xref.el (xref--temporary-buffers, xref--selected)
+ (xref--inhibit-mark-selected): New variables.
+ (xref--mark-selected): New function.
+ (xref--show-location): Maybe add the buffer to
+ `xref--temporary-buffers', add `xref--mark-selected' to
+ `buffer-list-update-hook' there.
+ (xref--window): Add docstring.
+ (xref-quit): Rename from `xref--quit'. Update both references.
+ Add KILL argument. When it's non-nil, kill the temporary buffers
+ that haven't been selected by the user.
+ (xref--show-xref-buffer): Change the second argument to alist,
+ extract the values for `xref--window' and
+ `xref--temporary-buffers' from it. Add `xref--mark-selected' to
+ `buffer-list-update-hook' to each buffer in the list.
+ (xref--show-xrefs): Move the logic of calling `xref-find-function'
+ here. Save the difference between buffer lists before and after
+ it's called as "temporary buffers", and `pass it to
+ `xref-show-xrefs-function'.
+ (xref--find-definitions, xref-find-references)
+ (xref-find-apropos): Update accordingly.
+
+2015-01-20 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * emacs-lisp/package.el (package-dir-info): Fix `while' logic.
+
+2015-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-generic.el: Remove.
+ (defgeneric, defmethod): Move to eieio-compat.el. Mark obsolete.
+ * emacs-lisp/eieio-compat.el: New file.
+ * emacs-lisp/eieio.el: Don't require eieio-generic any more.
+ * emacs-lisp/eieio-core.el (eieio--slot-originating-class-p):
+ Remove unused function.
+ (eieio-defclass): Move to eieio-compat.el.
+ * emacs-lisp/macroexp.el (macroexp-macroexpand): New function.
+ (macroexp--expand-all): Use it.
+ * emacs-lisp/bytecomp.el (byte-compile-recurse-toplevel): Here too.
+
+2015-01-20 Michal Nazarewicz <mina86@mina86.com>
+
+ * emacs-lisp/eldoc.el (eldoc-documentation-function): Describe how
+ major modes should use `add-function' to alter value of the variable.
+ * hexl.el (hexl-mode):
+ * ielm.el (inferior-emacs-lisp-mode):
+ * progmodes/cfengine.el (cfengine3-mode):
+ * progmodes/elisp-mode (emacs-lisp-mode):
+ * progmodes/octave.el (octave-mode):
+ * progmodes/python.el (python-mode):
+ * simple.el (read--expression): Set `eldoc-documentation-function'
+ using `add-function' so the default value is always used.
+
+ * descr-text.el (describe-char-eldoc): New function returning
+ basic Unicode codepoint information (e.g. name) about character
+ at point. It is meant to be used as a default value of the
+ `eldoc-documentation-function' variable.
+ (describe-char-eldoc--format, describe-char-eldoc--truncate):
+ New helper functions for `describe-char-eldoc' function.
+
+2015-01-20 Michal Nazarewicz <mina86@mina86.com>
+
+ * textmodes/paragraphs.el (sentence-end-base): Include an
+ ellipsis (…) and interrobang (‽) characters as end of a sentence,
+ and a closing single quote (’) as an end of a quote.
+
+2015-01-20 Michal Nazarewicz <mina86@mina86.com>
+
+ * textmodes/tildify.el (tildify-double-space-undos): A new
+ variable specifying whether pressing space in `tildify-mode' after
+ a space has been replaced with hard space undos the substitution.
+ (tildify-space): Add code branch for handling `tildify-doule-space'.
+
+ * textmodes/tildify.el (tildify-space): A new function
+ which can be used as a `post-self-insert-hook' to automatically
+ convert spaces into hard spaces.
+ (tildify-space-pattern): A new variable specifying pattern where
+ `tildify-space' should take effect.
+ (tildify-space-predicates): A new variable specifying list of
+ predicate functions that all must return non-nil for
+ `tildify-space' to take effect.
+ (tildify-space-region-predicate): A new functions meant to be
+ used as a predicate in `tildify-space-predicates' list.
+ (tildify-mode): A new minor mode enabling `tildify-space' as a
+ `post-self-insert-hook'
+
+2015-01-20 Daniel Colascione <dancol@dancol.org>
+
+ * vc/vc-dir.el (vc-dir): Default to repository root, not
+ default-directory.
+
+2015-01-20 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/etags.el (xref-etags-location): New class.
+ (xref-make-etags-location): New function.
+ (etags--xref-find-definitions): Use it.
+ (xref-location-marker): New method implementation.
+
+ * progmodes/xref.el: Mention that xref-location is an EIEIO class.
+ (xref--insert-xrefs): Expand help-echo string.
+
+2015-01-19 Dmitry Gutov <dgutov@yandex.ru>
+
+ * ido.el: Update Customization instructions.
+
+2015-01-19 Jonas Bernoulli <jonas@bernoul.li>
+
+ Define Ido keymaps once (bug#17000).
+ * ido.el (ido-common-completion-map)
+ (ido-file-dir-completion-map)
+ (ido-file-completion-map, ido-buffer-completion-map): Set up key
+ bindings when each variable is defined.
+ (ido-completion-map): Move definition.
+ (ido-init-completion-maps): Noop.
+ (ido-common-initialization): Don't call it.
+ (ido-setup-completion-map): Improve doc-string, cleanup.
+
+2015-01-19 Ivan Shmakov <ivan@siamics.net>
+
+ * cus-dep.el (custom-make-dependencies): Ensure that
+ default-directory is interpreted as a directory (see bug#19140.)
+
+2015-01-19 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref--display-position):
+ Set `other-window-scroll-buffer'.
+ (xref-goto-xref): Use `user-error'.
+
+2015-01-19 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref--display-history): New variable.
+ (xref--window-configuration): Remove.
+ (xref--save-to-history): New function.
+ (xref--display-position): Use it. Add new argument.
+ (xref--restore-window-configuration): Remove.
+ (xref--show-location, xref-show-location-at-point):
+ Update accordingly.
+ (xref--xref-buffer-mode): Don't use `pre-command-hook'.
+ (xref--quit): New command.
+ (xref-goto-xref): Use it.
+ (xref--xref-buffer-mode-map): Bind `q' to it.
+
+2015-01-18 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref-goto-xref): Perform the jump even inside
+ indentation or at eol.
+
+2015-01-18 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-core.el: Add `subclass' specializer for cl-generic.
+ (eieio--generic-subclass-tagcode, eieio--generic-subclass-tag-types):
+ New functions.
+ (cl-generic-tagcode-function, cl-generic-tag-types-function): Use them.
+
+ * emacs-lisp/eieio.el (defclass): Add obsolescence warning for the
+ `newname' argument.
+
+ * emacs-lisp/cl-generic.el (cl-generic-define-method): Correctly handle
+ introduction of a new dispatch argument.
+ (cl--generic-cache-miss): Handle dispatch on an argument which was not
+ considered as dispatchable for this method.
+ (cl-defmethod): Warn when adding a method to an obsolete generic function.
+ (cl--generic-lambda): Make sure it works if cl-lib is not yet loaded.
+
+ * emacs-lisp/eieio-generic.el (eieio--defgeneric-init-form): Use autoloadp.
+
+2015-01-18 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * emacs-lisp/package.el (package--append-to-alist): Rename from
+ `package--add-to-alist'
+ Updated docstring due to new name.
+
+2015-01-18 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/cl-extra.el (cl-subseq): Use seq-subseq and fix
+ multiple evaluation. (Bug#19519)
+
+ * emacs-lisp/seq.el (seq-subseq): Throw bad bounding indices
+ error. (Bug#19434)
+
+2015-01-18 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-core.el: Add `subclass' specializer for cl-generic.
+ (eieio--generic-subclass-tagcode, eieio--generic-subclass-tag-types):
+ New functions.
+ (cl-generic-tagcode-function, cl-generic-tag-types-function): Use them.
+
+ * emacs-lisp/cl-macs.el (cl-defstruct): Minor optimization when include
+ or print is nil.
+ (cl-struct-type-p): New function.
+
+ * emacs-lisp/cl-generic.el: Add support for cl-next-method-p.
+ (cl-defmethod): Add edebug spec.
+ (cl--generic-build-combined-method): Fix call to
+ cl-no-applicable-method.
+ (cl--generic-nnm-sample, cl--generic-cnm-sample): New constant.
+ (cl--generic-isnot-nnm-p): New function.
+ (cl--generic-lambda): Use it to add support for cl-next-method-p.
+ (cl-no-next-method, cl-no-applicable-method): Simplify arg list.
+ (cl-next-method-p): New function.
+
+2015-01-17 Ulrich Müller <ulm@gentoo.org>
+
+ * version.el (emacs-repository-get-version): Update docstring.
+
+2015-01-17 Ivan Shmakov <ivan@siamics.net>
+
+ * files.el (find-file-other-window, find-file-other-frame):
+ Use mapc instead of mapcar. (Bug#18175)
+
+ * files.el (dir-locals-collect-variables): Use default-directory
+ in place of the file name while working on non-file buffers, just
+ like hack-dir-local-variables already does. (Bug#19140)
+
+ * textmodes/enriched.el (enriched-encode):
+ Use inhibit-point-motion-hooks in addition to inhibit-read-only.
+ (Bug#18246)
+
+ * desktop.el (desktop-read): Do not call desktop-clear when no
+ desktop file is found. (Bug#18371)
+
+ * misearch.el (multi-isearch-unload-function): New function.
+ (misearch-unload-function): New alias. (Bug#19566)
+
+2015-01-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-core.el (eieio--class-constructor): Rename from
+ class-constructor, and make it an alias for `identity'.
+ Update all callers.
+
+ * emacs-lisp/eieio.el (eieio-constructor): Handle obsolete object name
+ argument here (bug#19620)...
+ (defclass): ...instead of in the constructor here.
+
+2015-01-16 Jorgen Schaefer <contact@jorgenschaefer.de>
+
+ * emacs-lisp/package.el (package-archive-priorities):
+ Specify correct type.
+
+2015-01-17 Ulrich Müller <ulm@gentoo.org>
+
+ * version.el (emacs-bzr-version-dirstate, emacs-bzr-version-bzr):
+ Remove.
+ (emacs-repository-get-version): Discard the Bazaar case.
+ * vc/vc-bzr.el (vc-bzr-version-dirstate): Rename from
+ emacs-bzr-version-dirstate and move from version.el to here.
+ (vc-bzr-working-revision): Use it.
+
+2015-01-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-generic.el (call-next-method): Don't bother checking
+ eieio--scoped-class any more.
+
+ * emacs-lisp/eieio-core.el (eieio--scoped-class-stack): Remove var.
+ (eieio--scoped-class): Remove function.
+ (eieio--with-scoped-class): Remove macro. Replace uses with `progn'.
+ (eieio--slot-name-index): Don't check the :protection anymore.
+ (eieio-initializing-object): Remove var.
+ (eieio-set-defaults): Don't let-bind eieio-initializing-object.
+
+2015-01-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Improve handling of doc-strings and describe-function for cl-generic.
+
+ * help-mode.el (help-function-def): Add optional arg `type'.
+
+ * help-fns.el (find-lisp-object-file-name): Accept any `type' as long
+ as it's a symbol.
+ (help-fns-short-filename): New function.
+ (describe-function-1): Use it. Use autoload-do-load.
+
+ * emacs-lisp/find-func.el: Use lexical-binding.
+ (find-function-regexp): Don't rule out `defgeneric'.
+ (find-function-regexp-alist): Document new possibility of including
+ a function instead of a regexp.
+ (find-function-search-for-symbol): Implement that new possibility.
+ (find-function-library): Don't assume that `function' is a symbol.
+ (find-function-do-it): Remove unused var `orig-buf'.
+
+ * emacs-lisp/eieio-generic.el (eieio--defalias): Move from eieio-core.
+ (eieio--defgeneric-init-form): Don't throw away a previous docstring.
+ (eieio--method-optimize-primary): Don't mess with the docstring.
+ (defgeneric): Keep the `args' in the docstring.
+ (defmethod): Don't use the method's docstring for the generic
+ function's docstring.
+
+ * emacs-lisp/eieio-core.el (eieio--defalias): Move to eieio-generic.el.
+ (eieio-defclass-autoload): Don't record the superclasses any more.
+ (eieio-defclass-internal): Reuse the old class object if it was just an
+ autoload stub.
+ (eieio--class-precedence-list): Load the class if it's autoloaded.
+
+ * emacs-lisp/cl-generic.el (cl-generic-ensure-function): It's OK to
+ override an autoload.
+ (cl-generic-current-method-specializers): Replace dyn-bind variable
+ with a lexically-scoped macro.
+ (cl--generic-lambda): Update accordingly.
+ (cl-generic-define-method): Record manually in the load-history with
+ type `cl-defmethod'.
+ (cl--generic-get-dispatcher): Minor optimization.
+ (cl--generic-search-method): New function.
+ (find-function-regexp-alist): Add entry for `cl-defmethod' type.
+ (cl--generic-search-method): Add hyperlinks for methods. Merge the
+ specializers and the function's arguments.
+
+2015-01-16 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * emacs-lisp/package.el (package--read-pkg-desc):
+ New function. Read a `define-package' form in current buffer.
+ Return the pkg-desc, with desc-kind set to KIND.
+ (package-dir-info): New function. Find package information for a
+ directory. The return result is a `package-desc'.
+ (package-install-from-buffer): Install packages from dired buffer.
+ (package-install-file): Install packages from directory.
+ (package-desc-suffix)
+ (package-install-from-archive)
+ * emacs-lisp/package-x.el (package-upload-buffer-internal):
+ Ensure all remaining instances of `package-desc-kind' handle the 'dir
+ value.
+
+2015-01-16 Jorgen Schaefer <contact@jorgenschaefer.de>
+
+ * emacs-lisp/package.el: Provide repository priorities.
+ (package-archive-priorities): New variable.
+ (package--add-to-alist): New function.
+ (package--add-to-archive-contents): Use it.
+ (package-menu--find-upgrades): Use it as well. Small clean up to
+ make the use of the package name here explicit.
+ (package-archive-priority): New function.
+ (package-desc-priority-version): New function.
+
+2015-01-16 Daniel Colascione <dancol@dancol.org>
+
+ * cus-start.el (all): Make `ring-bell-function' customizable.
+
+2015-01-16 Dmitry Gutov <dgutov@yandex.ru>
+
+ * vc/vc-svn.el (vc-svn-dir-status-files): Pass t as
+ vc-svn-after-dir-status's second argument. (Bug#19429)
+
+2015-01-16 Samer Masterson <samer@samertm.com>
+
+ * pcomplete.el (pcomplete-parse-arguments): Parse arguments
+ regardless of pcomplete-cycle-completions's value. (Bug#18950)
+
+2015-01-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * dom.el (dom-strings): New function.
+
+ * files.el (directory-files-recursively): Don't use the word
+ "path" for a file name.
+
+2015-01-15 Wolfgang Jenkner <wjenkner@inode.at>
+
+ * calc/calc-units.el (math-units-in-expr-p)
+ (math-single-units-in-expr-p, math-find-compatible-unit-rec)
+ (math-extract-units): Handle the `neg' operator. (Bug#19582)
+
+2015-01-15 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/cl-macs.el (cl--labels-magic): New constant.
+ (cl--labels-convert): Use it to ask the macro what is its replacement
+ in the #'f case.
+
+ * emacs-lisp/cl-generic.el (cl--generic-build-combined-method):
+ Return the value of the primary rather than the after method.
+
+ * emacs-lisp/eieio-core.el: Provide support for cl-generic.
+ (eieio--generic-tagcode): New function.
+ (cl-generic-tagcode-function): Use it.
+ (eieio--generic-tag-types): New function.
+ (cl-generic-tag-types-function): Use it.
+ (eieio-object-p): Tighten up the test.
+
+ * emacs-lisp/cl-generic.el (cl-generic-define-method): Fix paren typo.
+
+2015-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/cl-generic.el: New file.
+
+ * emacs-lisp/cl-macs.el (cl-flet): Allow (FUN EXP) forms.
+ (cl-load-time-value, cl-labels): Use closures rather than
+ backquoted lambdas.
+ (cl-macrolet): Use `eval' to create the function value, and support CL
+ style arguments in for the defined macros.
+
+2015-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * net/eww.el: Use lexical-binding.
+ (eww-links-at-point): Remove unused arg.
+ (eww-mode-map): Inherit from special-mode-map.
+ (eww-mode): Derive from special-mode. Don't use `setq' on a hook.
+
+2015-01-13 Alan Mackenzie <acm@muc.de>
+
+ Allow compilation during loading of CC Mode-derived modes (bug#19206).
+ * progmodes/cc-bytecomp.el (cc-bytecomp-compiling-or-loading):
+ New function which walks the stack to discover whether we're compiling
+ or loading.
+ (cc-bytecomp-is-compiling): Reformulate, and move towards beginning.
+ (cc-bytecomp-is-loading): New defsubst.
+ (cc-bytecomp-setup-environment, cc-bytecomp-restore-environment):
+ Use the above defsubsts.
+ (cc-require-when-compile, cc-bytecomp-defvar)
+ (cc-bytecomp-defun): Simplify conditionals.
+ * progmodes/cc-defs.el (cc-bytecomp-compiling-or-loading):
+ "Borrow" this function from cc-bytecomp.el.
+ (c-get-current-file): Reformulate using the above.
+ (c-lang-defconst): Prevent duplicate entries of file names in a
+ symbol's 'source property.
+ (c-lang-const): Use cc-bytecomp-is-compiling.
+ * progmodes/cc-langs.el (c-make-init-lang-vars-fun):
+ Use cc-bytecomp-is-compiling.
+
+2015-01-13 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-core.el (eieio-defclass): Fix call to `defclass'
+ (bug#19552).
+
+2015-01-13 Dmitry Gutov <dgutov@yandex.ru>
+
+ * menu-bar.el (menu-bar-goto-menu): Before calling
+ `xref-marker-stack-empty-p', first check that `xref' is loaded.
+ (Bug#19554)
+
+2015-01-12 Martin Rudalics <rudalics@gmx.at>
+
+ * progmodes/xref.el (xref-marker-stack-empty-p): Add autoload
+ cookie (Bug#19554).
+
+ * frame.el (frame-notice-user-settings): Remove code dealing with
+ frame-initial-frame-tool-bar-height. Turn off `tool-bar-mode'
+ only if `window-system-frame-alist' or `default-frame-alist' ask
+ for it.
+ (make-frame): Update frame-adjust-size-history if needed.
+
+2015-01-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ Have 'make' output better GEN names
+ * Makefile.in (PHONY_EXTRAS): New macro.
+ (.PHONY): Depend on it, and on $(lisp)/loaddefs.el, so that the
+ relevant files' time stamps are ignored.
+ (custom-deps, $(lisp)/cus-load.el, finder-data)
+ ($(lisp)/finder-inf.el): Use PHONY_EXTRAS.
+ (custom-deps, $(lisp)/cus-load.el, finder-data)
+ ($(lisp)/finder-inf.el, autoloads, $(lisp)/loaddefs.el)
+ ($(lisp)/subdirs.el, update-subdirs):
+ Output more-accurate destination names with GEN.
+
+ Say "ELC foo.elc" instead of "GEN foo.elc"
+ * Makefile.in (AM_V_ELC, am__v_ELC_, am__v_ELC_0, am__v_ELC_1):
+ New macros.
+ ($(THEFILE)c, .el.elc): Use them.
+
+2015-01-11 Michael Albinus <michael.albinus@gmx.de>
+
+ * files.el (directory-files-recursively): Do not include
+ superfluous remote file names.
+
+2015-01-11 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww): Interpret anything that looks like a protocol
+ designator as a full URL.
+
+2015-01-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-urlify): Don't bother the user about
+ invalidly-encoded display strings.
+
+2015-01-10 Ivan Shmakov <ivan@siamics.net>
+
+ * net/shr.el (shr-urlify): Decode URLs before using them as titles
+ (bug#19555).
+
+2015-01-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww): Always interpret URLs that start with https?:
+ as plain URLs, even if they have spaces in them (bug#19556).
+ (eww): Also interpret things like "en.wikipedia.org/wiki/Free
+ software" as an URL.
+ (eww): Don't interpret "org/foo" as an URL.
+ (eww): Clear the title when loading so that we don't display
+ misleading information.
+
+2015-01-10 Daniel Colascione <dancol@dancol.org>
+
+ * vc/vc-hooks.el (vc-prefix-map): Bind vc-delete-file to C-x v x,
+ by analogy with dired.
+
+2015-01-09 Daniel Colascione <dancol@dancol.org>
+
+ * progmodes/js.el (js--function-heading-1-re)
+ (js--function-prologue-beginning): Parse ES6 generator function
+ declarations. (That is, "function* name()").
+
+2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (defclass): Move from eieio-defclass all the code
+ that creates functions, and most of the sanity checks.
+ Mark as obsolete the <class>-child-p function.
+ * emacs-lisp/eieio-core.el (eieio--define-field-accessors): Remove.
+ (eieio--class, eieio--object): Use cl-defstruct.
+ (eieio--object-num-slots): Define manually.
+ (eieio-defclass-autoload): Use eieio--class-make.
+ (eieio-defclass-internal): Rename from eieio-defclass. Move all the
+ `(lambda...) definitions and most of the sanity checks to `defclass'.
+ Mark as obsolete the <class>-list-p function, the <class> variable and
+ the <initarg> variables. Use pcase-dolist.
+ (eieio-defclass): New compatibility function.
+ * emacs-lisp/eieio-opt.el (eieio-build-class-alist)
+ (eieio-class-speedbar): Don't use eieio-default-superclass var.
+
+2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-generic.el: New file.
+ * emacs-lisp/eieio-core.el: Move all generic function code to
+ eieio-generic.el.
+ (eieio--defmethod): Declare.
+
+ * emacs-lisp/eieio.el: Require eieio-generic. Move all generic
+ function code to eieio-generic.el.
+ * emacs-lisp/eieio-opt.el (eieio-help-generic): Move to
+ eieio-generic.el.
+ * emacs-lisp/eieio-datadebug.el (eieio-debug-methodinvoke): Update call
+ to eieio--generic-call.
+ * emacs-lisp/eieio-base.el (eieio-instance-inheritor): Don't use
+ <class>-child type.
+
+2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/chart.el (chart-add-sequence, chart-bar-quickie):
+ Don't use <class> as a variable.
+
+ * emacs-lisp/eieio.el (same-class-p): Accept class object as well.
+ (call-next-method): Simplify.
+ (clone): Obey eieio-backward-compatibility.
+
+ * emacs-lisp/eieio-opt.el (eieio-read-generic-p): Remove.
+ (eieio-read-generic): Use `generic-p' instead.
+
+ * emacs-lisp/eieio-core.el (eieio-backward-compatibility): New var.
+ (eieio-defclass-autoload): Obey it.
+ (eieio--class-object): Improve error behavior.
+ (eieio-class-children-fast, same-class-fast-p): Remove. Inline at
+ every use site.
+ (eieio--defgeneric-form-primary-only): Rename from
+ eieio-defgeneric-form-primary-only; update all callers.
+ (eieio--defgeneric-form-primary-only-one): Rename from
+ eieio-defgeneric-form-primary-only-one; update all callers.
+ (eieio-defgeneric-reset-generic-form)
+ (eieio-defgeneric-reset-generic-form-primary-only)
+ (eieio-defgeneric-reset-generic-form-primary-only-one): Remove.
+ (eieio--method-optimize-primary): New function to replace them.
+ (eieio--defmethod, eieio-defmethod): Use it.
+ (eieio--perform-slot-validation): Rename from
+ eieio-perform-slot-validation; update all callers.
+ (eieio--validate-slot-value): Rename from eieio-validate-slot-value.
+ Change `class' to be a class object. Update all callers.
+ (eieio--validate-class-slot-value): Rename from
+ eieio-validate-class-slot-value. Change `class' to be a class object.
+ Update all callers.
+ (eieio-oset-default): Accept class object as well.
+ (eieio--generic-call-primary-only): Rename from
+ eieio-generic-call-primary-only. Update all callers.
+
+ * emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
+ Improve error messages.
+ (eieio-persistent-slot-type-is-class-p): Handle `list-of' types, as
+ well as user-defined types. Emit errors for legacy types like
+ <class>-child and <class>-list, if not eieio-backward-compatibility.
+
+2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (eieio-class-parents): Accept class objects.
+ (eieio--class-slot-initarg): Rename from class-slot-initarg.
+ Change `class' arg to be a class object. Update all callers.
+ (call-next-method): Adjust to new return value of `eieio-generic-form'.
+ (eieio-default-superclass): Set var to the class object.
+ (eieio-edebug-prin1-to-string): Fix recursive call for lists.
+ Change print behavior to affect class objects rather than
+ class symbols.
+
+ * emacs-lisp/eieio-core.el (eieio-class-object): New function.
+ (eieio-class-parents-fast): Remove macro.
+ (eieio--class-option-assoc): Rename from class-option-assoc.
+ Update all callers.
+ (eieio--class-option): Rename from class-option. Change `class' arg to
+ be a class object. Update all callers.
+ (eieio--class-method-invocation-order): Rename from
+ class-method-invocation-order. Change `class' arg to be a class
+ object. Update all callers.
+ (eieio-defclass-autoload, eieio-defclass): Set the `parent' field to
+ a list of class objects rather than names.
+ (eieio-defclass): Remove redundant quotes. Use `eieio-oref-default'
+ for accessors to class allocated slots.
+ (eieio--perform-slot-validation-for-default): Rename from
+ eieio-perform-slot-validation-for-default. Update all callers.
+ (eieio--add-new-slot): Rename from eieio-add-new-slot.
+ Update all callers. Use push.
+ (eieio-copy-parents-into-subclass): Adjust to new content of
+ `parent' field. Use dolist.
+ (eieio-oref): Remove support for providing a class rather than
+ an object.
+ (eieio-oref-default): Prefer class objects over class names.
+ (eieio--slot-originating-class-p): Rename from
+ eieio-slot-originating-class-p. Update all callers. Use `or'.
+ (eieio--slot-name-index): Turn check into assertion.
+ (eieio--class-slot-name-index): Rename from
+ eieio-class-slot-name-index. Change `class' arg to be a class object.
+ Update all callers.
+ (eieio-attribute-to-initarg): Move to eieio-test-persist.el.
+ (eieio--c3-candidate): Rename from eieio-c3-candidate.
+ Update all callers.
+ (eieio--c3-merge-lists): Rename from eieio-c3-merge-lists.
+ Update all callers.
+ (eieio--class-precedence-c3): Rename from eieio-class-precedence-c3.
+ Update all callers.
+ (eieio--class-precedence-dfs): Rename from eieio-class-precedence-dfs.
+ Update all callers.
+ (eieio--class-precedence-bfs): Rename from eieio-class-precedence-bfs.
+ Update all callers. Adjust to new `parent' content.
+ (eieio--class-precedence-list): Rename from -class-precedence-list.
+ Update all callers.
+ (eieio-generic-call): Use autoloadp and autoload-do-load.
+ Slight simplification.
+ (eieio-generic-call, eieio-generic-call-primary-only): Adjust to new
+ return value of `eieio-generic-form'.
+ (eieiomt-add): Index the hashtable with class objects rather than
+ class names.
+ (eieio-generic-form): Accept class objects as well.
+
+ * emacs-lisp/eieio-base.el (eieio-persistent-convert-list-to-object):
+ Adjust to new convention for eieio-persistent-validate/fix-slot-value.
+ (eieio-persistent-validate/fix-slot-value):
+ Change `class' arg to be a class object. Update all callers.
+
+2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (child-of-class-p): Make it accept class objects
+ additionally to class names.
+
+ * emacs-lisp/eieio-core.el (eieio--with-scoped-class): Use let-binding.
+ (object): Remove first (constant) slot; rename second to `class-tag'.
+ (eieio--object-class-object, eieio--object-class-name): New funs
+ to replace eieio--object-class.
+ (eieio--class-object, eieio--class-p): New functions.
+ (same-class-fast-p): Make it a defsubst, change its implementation
+ to check the class objects rather than their names.
+ (eieio-object-p): Rewrite.
+ (eieio-defclass): Adjust the object initialization according to the new
+ object layout.
+ (eieio--scoped-class): Declare it returns a class object (not a class
+ name any more). Adjust calls accordingly (along with calls to
+ eieio--with-scoped-class).
+ (eieio--slot-name-index): Rename from eieio-slot-name-index and change
+ its class arg to be a class object. Adjust callers accordingly.
+ (eieio-slot-originating-class-p): Make its start-class arg a class
+ object. Adjust all callers.
+ (eieio--initarg-to-attribute): Rename from eieio-initarg-to-attribute.
+ Make its `class' arg a class object. Adjust all callers.
+
+ * emacs-lisp/eieio-base.el (eieio-persistent-validate/fix-slot-value):
+ Use eieio--slot-name-index rather than eieio-slot-name-index.
+
+2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (make-instance): Simplify by not adding an object
+ name argument.
+ (eieio-object-name): Use eieio-object-name-string.
+ (eieio--object-names): New const.
+ (eieio-object-name-string, eieio-object-set-name-string): Re-implement
+ using a hashtable rather than a built-in slot.
+ (eieio-constructor): Rename from `constructor'. Remove `newname' arg.
+ (clone): Don't mess with the object's "name".
+
+ * emacs-lisp/eieio-custom.el (eieio-widget-test): Remove dummy arg.
+ (eieio-object-value-get): Use eieio-object-set-name-string.
+
+ * emacs-lisp/eieio-core.el (eieio--defalias): Follow aliases.
+ (eieio--object): Remove `name' field.
+ (eieio-defclass): Adjust to new convention where constructors don't
+ take an "object name" any more.
+ (eieio--defgeneric-init-form, eieio--defmethod): Follow aliases.
+ (eieio-validate-slot-value, eieio-oset-default)
+ (eieio-slot-name-index): Don't hardcode eieio--object-num-slots.
+ (eieio-generic-call-primary-only): Simplify.
+
+ * emacs-lisp/eieio-base.el (clone) <eieio-instance-inheritor>:
+ Use call-next-method.
+ (eieio-constructor): Rename from `constructor'.
+ (eieio-persistent-convert-list-to-object): Drop objname.
+ (eieio-persistent-validate/fix-slot-value): Don't hardcode
+ eieio--object-num-slots.
+ (eieio-named): Use a normal slot.
+ (slot-missing) <eieio-named>: Remove.
+ (eieio-object-name-string, eieio-object-set-name-string, clone)
+ <eieio-named>: New methods.
+
+2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-core.el (eieio--class-v): Rename from class-v.
+ (method-*): Add a "eieio--" prefix to those constants.
+
+ * emacs-lisp/eieio.el: Move edebug specs to the corresponding macro.
+
+ * emacs-lisp/eieio-speedbar.el: Use lexical-binding.
+
+2015-01-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el (child-of-class-p): Fix case where `class' is
+ `eieio-default-superclass'.
+
+ * emacs-lisp/eieio-datadebug.el: Use lexical-binding.
+
+ * emacs-lisp/eieio-custom.el: Use lexical-binding.
+ (eieio-object-value-to-abstract): Simplify.
+
+ * emacs-lisp/eieio-opt.el (eieio-build-class-list): Use cl-mapcan.
+ (eieio-build-class-alist): Use dolist.
+ (eieio-all-generic-functions): Adjust to use of hashtables.
+
+ * emacs-lisp/eieio-core.el (class): Rename field symbol-obarray to
+ symbol-hashtable. It contains a hashtable instead of an obarray.
+ (generic-p): Use symbol property `eieio-method-hashtable' instead of
+ `eieio-method-obarray'.
+ (generic-primary-only-p, generic-primary-only-one-p):
+ Slight optimization.
+ (eieio-defclass-autoload-map): Use a hashtable instead of an obarray.
+ (eieio-defclass-autoload, eieio-defclass): Adjust/simplify accordingly.
+ (eieio-class-un-autoload): Use autoload-do-load.
+ (eieio-defclass): Use dolist, cl-pushnew, cl-callf.
+ Use new cl-deftype-satisfies. Adjust to use of hashtables.
+ Don't hardcode the value of eieio--object-num-slots.
+ (eieio-defgeneric-form-primary-only-one): Remove `doc-string' arg.
+ Use a closure rather than a backquoted lambda.
+ (eieio--defmethod): Adjust call accordingly. Set doc-string via the
+ function-documentation property.
+ (eieio-slot-originating-class-p, eieio-slot-name-index)
+ (eieiomt--optimizing-hashtable, eieiomt-install, eieiomt-add)
+ (eieio-generic-form): Adjust to use of hashtables.
+ (eieiomt--sym-optimize): Rename from eieiomt-sym-optimize; take
+ additional class argument.
+ (eieio-generic-call-methodname): Remove, unused.
+
+ * emacs-lisp/eieio-base.el (eieio-persistent-slot-type-is-class-p):
+ Prefer \' to $.
+
+2015-01-08 Eli Zaretskii <eliz@gnu.org>
+
+ * simple.el (line-move-visual): When converting X pixel coordinate
+ to temporary-goal-column, adjust the value for right-to-left
+ screen lines. This fixes vertical-motion, next/prev-line, etc.
+
+2015-01-08 Glenn Morris <rgm@gnu.org>
+
+ * files.el (file-tree-walk): Remove; of unknown authorship. (Bug#19325)
+
+2015-01-07 K. Handa <handa@gnu.org>
+
+ * international/ccl.el (define-ccl-program): Improve the docstring.
+
+2015-01-06 Sam Steingold <sds@gnu.org>
+
+ * shell.el (shell-display-buffer-actions): Remove,
+ use `display-buffer-alist' instead.
+
+2015-01-05 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref--insert-xrefs): Add `help-echo' property
+ to the references.
+
+2015-01-05 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * minibuffer.el (completion-category-defaults): New var.
+ Set unicode-name to use substring completion.
+ (completion-category-defaults): Set it to nil.
+
+2015-01-04 Dmitry Gutov <dgutov@yandex.ru>
+
+ Add mouse interaction to xref.
+ * progmodes/xref.el (xref--button-map): New variable.
+ (xref--mouse-2): New command.
+ (xref--insert-xrefs): Add `mouse-face' and `keymap' properties to
+ the inserted references.
+
+2015-01-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ Less 'make' chatter for lisp dir
+ * Makefile.in (THEFILE): Define to be 'no-such-file' by default,
+ to make it clearer that the caller must specify it.
+ (compile-onefile): Remove, replacing by ...
+ ($(THEFILE)c): ... new rule. This lets us use AM_V_GEN here.
+ ($(THEFILE)c, .el.elc, $(MH_E_DIR)/mh-loaddefs.el)
+ ($(TRAMP_DIR)/tramp-loaddefs.el, $(CAL_DIR)/cal-loaddefs.el)
+ ($(CAL_DIR)/diary-loaddefs.el, $(CAL_DIR)/hol-loaddefs.el):
+ Use AM_V_GEN to lessen 'make' chatter.
+ (.el.elc): Omit duplicate comment.
+
+ Less 'make' chatter in batch mode
+ * emacs-lisp/autoload.el (autoload-generate-file-autoloads):
+ * emacs-lisp/bytecomp.el (byte-compile-file):
+ * files.el (save-buffer, basic-save-buffer):
+ * international/quail.el (quail-update-leim-list-file):
+ Don't output messages like "Generating ..." in batch mode.
+
+2015-01-04 Dmitry Gutov <dgutov@yandex.ru>
+
+ Unbreak `mouse-action' property in text buttons.
+ * button.el (push-button): Fix regression from 2012-12-06.
+
+2015-01-03 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref-marker-stack-empty-p): New function.
+
+ * menu-bar.el (menu-bar-goto-menu): Use it.
+
+2015-01-03 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref--window-configuration): New variable.
+ (xref-show-location-at-point): New command.
+ (xref--restore-window-configuration): New function.
+ (xref-next-line, xref-prev-line): Delegate to
+ `xref-show-location-at-point'.
+ (xref--location-at-point): Don't signal the error.
+ (xref-goto-xref): Do that here instead.
+ (xref--xref-buffer-mode): Add `xref--restore-window-configuration'
+ to `pre-command-hook'.
+ (xref--xref-buffer-mode-map): Don't remap `next-line' and
+ `previous-line'. Additionally bind `xref-next-line' and
+ `xref-prev-line' to `n' and `p' respectively.
+ Bind `xref-show-location-at-point' to `C-o'.
+
+2015-01-01 Eli Zaretskii <eliz@gnu.org>
+
+ * tool-bar.el (tool-bar-local-item)
+ (tool-bar-local-item-from-menu): Call force-mode-line-update to
+ make sure the tool-bar changes show on display.
+
+2015-01-01 Michael Albinus <michael.albinus@gmx.de>
+
+ Sync with Tramp 2.2.11.
+
+ * net/tramp-compat.el (top): Require cl-macs for Emacs 22.
+ Make an alias for `default-toplevel-value' if it doesn't exist.
+
+ * net/tramp-smb.el (tramp-smb-handle-copy-directory):
+ Use `tramp-compat-delete-directory'.
+
+ * net/trampver.el: Update release number.
+
+2015-01-01 Filipp Gunbin <fgunbin@fastmail.fm>
+
+ * autorevert.el (auto-revert-handler): Fix auto-revert-tail-mode
+ for remote files. (Bug#19449)
+
+2015-01-01 Simen Heggestøyl <simenheg@gmail.com> (tiny change)
+
+ * textmodes/css-mode.el (scss-mode): Fix typo (bug#19446).
+
+2014-12-31 Paul Eggert <eggert@cs.ucla.edu>
+
+ Less 'make' chatter in lisp directory
+ * Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_GEN, am__v_GEN_)
+ (am__v_GEN_0, am__v_GEN_1): New macros, from ../src/Makefile.in.
+ (custom-deps, finder-data, autoloads, update-subdirs): Use them.
+
+2014-12-31 Filipp Gunbin <fgunbin@fastmail.fm>
+
+ * info.el (info-display-manual): Limit the completion alternatives
+ to currently visited manuals if prefix argument is non-nil.
+
+2014-12-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ * Makefile.in (semantic): Simplify.
+
+2014-12-30 Juri Linkov <juri@linkov.net>
+
+ * net/eww.el (eww-isearch-next-buffer): New function.
+ (eww-mode): Set multi-isearch-next-buffer-function to it.
+
+2014-12-30 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/xref.el (xref-find-definitions): Mention "no
+ identifier at point" case in the docstring.
+
+ * menu-bar.el (menu-bar-goto-uses-etags-p): New function.
+ (menu-bar-goto-menu): Use it to show or hide the `set-tags-name'
+ and `separator-tag-file' items.
+
+2014-12-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ * obsolete/pc-select.el (pc-selection-mode): Use system-type.
+ This is instead of system-name, which is both wrong here and obsolete.
+ * desktop.el (desktop-save-frameset):
+ * dnd.el (dnd-get-local-file-uri):
+ * nxml/rng-uri.el (rng-uri-file-name-1):
+ Prefer (system-name) to system-name, and avoid naming
+ locals 'system-name'.
+ * startup.el (system-name): Now an obsolete variable. (Bug#19438)
+
+2014-12-29 Dmitry Gutov <dgutov@yandex.ru>
+
+ * menu-bar.el (menu-bar-next-tag-other-window)
+ (menu-bar-next-tag): Remove.
+
+2014-12-29 K. Handa <handa@gnu.org>
+
+ * international/mule.el (make-translation-table-from-alist):
+ Accept nil or zero-length vector for FROM and TO.
+
+2014-12-29 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-mode): Truncate overlong lines for prettier
+ display when resizing.
+
+ * net/shr.el (shr-width): Default to using the window width when
+ rendering.
+
+2014-12-29 Dmitry Gutov <dgutov@yandex.ru>
+
+ Unbreak jumping to an alias's definition.
+ * emacs-lisp/find-func.el (find-function-library): Return a pair
+ (ORIG-FUNCTION . LIBRARY) instead of just its second element.
+ (find-function-noselect): Use it.
+ * progmodes/elisp-mode.el (elisp--xref-identifier-file): Rename to
+ `elisp--xref-identifier-location', incorporate logic from
+ `elisp--xref-find-definitions', use the changed
+ `find-function-library' return value.
+
+2014-12-29 Juri Linkov <juri@linkov.net>
+
+ * comint.el (comint-history-isearch-message): Use field-beginning
+ instead of comint-line-beginning-position - that's more fixes for
+ http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00305.html
+ (comint-history-isearch-message): Fix args of isearch-message-prefix.
+
+2014-12-29 Juri Linkov <juri@linkov.net>
+
+ * vc/vc-dir.el (vc-dir-display-file): New command (bug#19450).
+ (vc-dir-mode-map): Bind it to "\C-o".
+ (vc-dir-menu-map): Add it to menu.
+
+2014-12-29 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/etags.el (find-tag-other-window)
+ (find-tag-other-frame, find-tag-regexp, tags-loop-continue)
+ (tags-apropos): Declare obsolete.
+
+ * menu-bar.el (menu-bar-goto-menu): Replace all but one etags item
+ with xref ones.
+
+2014-12-28 Eli Zaretskii <eliz@gnu.org>
+
+ * international/mule.el (define-coding-system): Fix typos in the
+ doc string.
+
+2014-12-28 Kenichi Handa <handa@gnu.org>
+
+ * international/mule.el (define-coding-system): Improve the doc
+ string.
+
+2014-12-28 Ivan Shmakov <ivan@siamics.net>
+
+ * net/shr.el (shr-tag-table): Fix handling of tbody/header/footer
+ elements in tables (bug#19444).
+
+ * net/eww.el (eww-handle-link): Fix typo in "up" rel handling
+ (bug#19445).
+
+2014-12-28 Juri Linkov <juri@linkov.net>
+
+ * vc/compare-w.el: Require diff-mode for diff faces.
+ (compare-windows-removed, compare-windows-added): New faces
+ inheriting from diff faces.
+ (compare-windows): Define obsolete face alias.
+ (compare-windows-highlight): Replace face `compare-windows' with
+ new faces `compare-windows-added' and `compare-windows-removed'
+ (bug#19451).
+ (compare-windows-get-recent-window): Signal an error when
+ no other window is found (bug#19170).
+
+2014-12-27 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/elisp-mode.el (elisp--xref-identifier-file):
+ Skip features that have no sources.
+
+ * simple.el (execute-extended-command):
+ When `suggest-key-bindings' is nil, don't.
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ python.el: Native readline completion.
+ * progmodes/python.el (python-shell-completion-native-disabled-interpreters)
+ (python-shell-completion-native-enable)
+ (python-shell-completion-native-output-timeout): New defcustoms.
+ (python-shell-completion-native-interpreter-disabled-p)
+ (python-shell-completion-native-try)
+ (python-shell-completion-native-setup)
+ (python-shell-completion-native-turn-off)
+ (python-shell-completion-native-turn-on)
+ (python-shell-completion-native-turn-on-maybe)
+ (python-shell-completion-native-turn-on-maybe-with-msg)
+ (python-shell-completion-native-toggle): New functions.
+ (python-shell-completion-native-get-completions): New function.
+ (python-shell-completion-at-point): Use it.
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ python.el: Enhance shell user interaction and deprecate
+ python-shell-get-or-create-process.
+ * progmodes/python.el (python-shell-get-process-or-error):
+ New function.
+ (python-shell-with-shell-buffer): Use it.
+ (python-shell-send-string, python-shell-send-region)
+ (python-shell-send-buffer, python-shell-send-defun)
+ (python-shell-send-file, python-shell-switch-to-shell): Use it.
+ Add argument MSG to display user-friendly message when no process
+ is running.
+ (python-shell-switch-to-shell): Call pop-to-buffer with NORECORD.
+ (python-shell-make-comint): Rename argument SHOW from POP.
+ Use display-buffer instead of pop-to-buffer.
+ (run-python): Doc fix. Return process.
+ (python-shell-get-or-create-process): Make obsolete.
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-shell-buffer-substring):
+ Handle cornercase when region sent starts at point-min.
+
+2014-12-27 Eli Zaretskii <eliz@gnu.org>
+
+ * language/misc-lang.el (composition-function-table): Add Syriac
+ characters and also ZWJ/ZWNJ.
+ See http://lists.gnu.org/archive/html/help-gnu-emacs/2014-12/msg00248.html
+ for the details.
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ python.el: Fix message when sending region.
+ * progmodes/python.el (python-shell-send-region): Rename argument
+ send-main from nomain. Fix message.
+ (python-shell-send-buffer): Rename argument send-main from arg.
+
+ python.el: Cleanup temp files even with eval errors.
+ * progmodes/python.el (python-shell-send-file): Make file-name
+ mandatory. Fix temp file removal in the majority of cases.
+
+ python.el: Handle file encoding for shell.
+ * progmodes/python.el (python-rx-constituents): Add coding-cookie.
+ (python-shell--save-temp-file): Write file with proper encoding.
+ (python-shell-buffer-substring): Add coding cookie for detected
+ encoding to generated content. Fix blank lines when removing
+ if-name-main block.
+ (python-shell-send-file): Handle file encoding.
+ (python-info-encoding-from-cookie)
+ (python-info-encoding): New functions.
+
+2014-12-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
+ Use `tramp-rsh-end-of-line', it ought to be more robust.
+
+2014-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/js.el (js-syntax-propertize): "return" can't be divided
+ (bug#19397).
+
+2014-12-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-read-passwd): Ignore errors from `auth-source-*'.
+
+ * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band): Use "\n"
+ as end-of-line delimeter for passwords, when running on MS Windows.
+
+2014-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/sh-script.el (sh-set-shell): Don't change the global value
+ of indent-line-function (bug#19433).
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ Fix line numbers on Python shell.
+ * progmodes/python.el (python-shell--save-temp-file): Do not
+ append coding cookie.
+ (python-shell-send-string): Generalize for
+ python-shell-send-region.
+ (python--use-fake-loc): Delete var.
+ (python-shell-buffer-substring): Cleanup fake-loc logic.
+ (python-shell-send-region): Remove fake-loc logic, simplify.
+
+2014-12-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-indent-post-self-insert-function):
+ Make colon to re-indent only for dedenters, handling
+ multiline-statements gracefully.
+
+2014-12-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-handle-insert-file-contents):
+ Set `find-file-not-found-functions' in case of errors. (Bug#18623)
+
+2014-12-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-send-command-and-read): New optional
+ arg MARKER.
+ (tramp-get-remote-path): Use it.
+
+2014-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (redisplay-dont-pause): Mark as obsolete.
+
+2014-12-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-error-with-buffer): Call `message' properly.
+ (tramp-accept-process-output): Use nil as argument for
+ `accept-process-output', when there is a gateway prepended.
+
+ * net/tramp-gw.el (tramp-gw-open-connection): Suppress traces in
+ wrong debug buffer.
+ (tramp-gw-open-connection): Set process coding system 'binary.
+ (tramp-gw-open-network-stream): Handle HTTP error 403.
+
+ * net/tramp-sh.el (tramp-compute-multi-hops): Suppress traces in
+ wrong debug buffer.
+ (tramp-maybe-open-connection): Set connection property "gateway".
+
+2014-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (sit-for): Tweak docstring (bug#19381).
+
+2014-12-27 Dmitry Gutov <dgutov@yandex.ru>
+
+ * vc/vc-git.el (vc-git-after-dir-status-stage): Move `up-to-date'
+ stage to after `diff-index' (bug#19386).
+
+2014-12-27 João Távora <joaotavora@gmail.com>
+
+ * textmodes/tex-mode.el (tex-insert-quote): Consider and respect
+ `electric-pair-mode' (bug#19356).
+
+2014-12-27 Dmitry Gutov <dgutov@yandex.ru>
+
+ elisp-xref-find: Don't create buffers eagerly.
+
+ * progmodes/elisp-mode.el (elisp--identifier-location): Fold back
+ into `elisp--company-location'.
+ (elisp--identifier-completion-table): Rename to
+ `elisp--identifier-completion-table', and do not include just any
+ symbols with a property list.
+ (elisp-completion-at-point): Revert the 2014-12-25 change.
+ (elisp--xref-identifier-file): New function.
+ (elisp--xref-find-definitions): Use it.
+
+ * emacs-lisp/find-func.el (find-function-library): New function,
+ extracted from `find-function-noselect'.
+
+ * progmodes/xref.el (xref-elisp-location): New class.
+ (xref-make-elisp-location): New function.
+ (xref-location-marker): New implementation.
+
+2014-12-27 Juri Linkov <juri@linkov.net>
+
+ * minibuffer.el (minibuffer-completion-help):
+ Use shrink-window-if-larger-than-buffer in window-height
+ when temp-buffer-resize-mode is nil.
+
+ * window.el (with-displayed-buffer-window): Remove window-height
+ from the action alist in the temp-buffer-window-show call
+ when window-height is handled explicitly afterwards (bug#19355).
+
+2014-12-27 Juri Linkov <juri@linkov.net>
+
+ Support subdirectories when saving places in dired.
+ * saveplace.el (toggle-save-place, save-place-to-alist)
+ (save-places-to-alist, save-place-dired-hook):
+ Use dired-current-directory instead of dired-directory (bug#19436).
+ (save-place-dired-hook): Add check for alist to make the new
+ format future-proof to allow other possible formats.
+
+2014-12-26 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ python.el: Generate clearer shell buffer names.
+ * progmodes/python.el (python-shell-get-process-name)
+ (python-shell-internal-get-process-name): Use `buffer-name`.
+ (python-shell-internal-get-or-create-process): Simplify.
+
+2014-12-26 Dmitry Gutov <dgutov@yandex.ru>
+
+ Add basic xref apropos implementation to elisp-mode.
+
+ * progmodes/elisp-mode.el (elisp--xref-find-definitions):
+ Filter out nil results.
+ (elisp--xref-find-apropos): New function.
+ (elisp-xref-find): Use it.
+
+ * progmodes/xref.el (xref--show-xrefs): Use `user-error'.
+
+2014-12-25 Filipp Gunbin <fgunbin@fastmail.fm>
+
+ * dired-aux.el (dired-maybe-insert-subdir):
+ Make dired-maybe-insert-subdir always skip trivial files.
+
+2014-12-25 Helmut Eller <eller.helmut@gmail.com>
+ Dmitry Gutov <dgutov@yandex.ru>
+
+ Consolidate cross-referencing commands.
+
+ Move autoloaded bindings for `M-.', `M-,', `C-x 4 .' and
+ `C-x 5 .' from etags.el to xref.el.
+
+ * progmodes/xref.el: New file.
+
+ * progmodes/elisp-mode.el (elisp--identifier-types): New variable.
+ (elisp--identifier-location): New function, extracted from
+ `elisp--company-location'.
+ (elisp--company-location): Use it.
+ (elisp--identifier-completion-table): New variable.
+ (elisp-completion-at-point): Use it.
+ (emacs-lisp-mode): Set the local values of `xref-find-function'
+ and `xref-identifier-completion-table-function'.
+ (elisp-xref-find, elisp--xref-find-definitions)
+ (elisp--xref-identifier-completion-table): New functions.
+
+ * progmodes/etags.el (find-tag-marker-ring): Mark obsolete in
+ favor of `xref--marker-ring'.
+ (tags-lazy-completion-table): Autoload.
+ (tags-reset-tags-tables): Use `xref-clear-marker-stack'.
+ (find-tag-noselect): Use `xref-push-marker-stack'.
+ (pop-tag-mark): Make an alias for `xref-pop-marker-stack'.
+ (etags--xref-limit): New constant.
+ (etags-xref-find, etags--xref-find-definitions): New functions.
+
+2014-12-25 Martin Rudalics <rudalics@gmx.at>
+
+ * cus-start.el (resize-mini-windows): Make it customizable.
+
+2014-12-24 Stephen Leake <stephen_leake@stephe-leake.org>
+
+ * startup.el (fancy-about-text): Change buttons for etc/CONTRIBUTE
+ to (info "(emacs)Contributing"). (Bug#19299)
+
+2014-12-24 Martin Rudalics <rudalics@gmx.at>
+
+ * window.el (mouse-autoselect-window-position-1): New variable.
+ (mouse-autoselect-window-cancel)
+ (mouse-autoselect-window-select, handle-select-window):
+ With delayed autoselection select window only if mouse moves after
+ selecting its frame.
+
+2014-12-24 Michael Albinus <michael.albinus@gmx.de>
+
+ * eshell/esh-ext.el (eshell-find-interpreter): Expand relative
+ remote file names. (Bug#18782)
+
+2014-12-23 Sam Steingold <sds@gnu.org>
+
+ * shell.el (shell-display-buffer-actions): New user option.
+ (shell): Pass it to `pop-to-buffer' instead of hard-coding
+ `pop-to-buffer-same-window'.
+
+2014-12-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/js.el (js--syntax-propertize-regexp-syntax-table): New var.
+ (js-syntax-propertize-regexp): Use it to recognize "slash in
+ a character class" (bug#19397).
+
+2014-12-22 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * completion.el: Use post-self-insert-hook (bug#19400).
+ (completion-separator-self-insert-command)
+ (completion-separator-self-insert-autofilling): Remove.
+ (completion-separator-chars): New var.
+ (completion-c-mode-hook, completion-setup-fortran-mode): Use it instead
+ of changing the keymap.
+ (completion--post-self-insert): New function.
+ (dynamic-completion-mode): Use it instead of rebinding keys.
+ (cmpl--completion-string): Rename from completion-string.
+ (add-completion-to-head, delete-completion): Let-bind it explicitly.
+
+2014-12-22 Bozhidar Batsov <bozhidar@batsov.com>
+
+ * progmodes/ruby-mode.el (ruby--string-region): Simplify code
+ by leveraging `syntax-ppss'.
+
+2014-12-22 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * let-alist.el (let-alist): Use `make-symbol' instead of `gensym'.
+
+2014-12-20 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-histfile-override): Add :version.
+
+2014-12-20 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * net/tramp-sh.el (tramp-histfile-override): Clarify docstring.
+
+2014-12-19 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * let-alist.el (let-alist): Enable access to deeper alists by
+ using dots inside the dotted symbols.
+
+2014-12-19 Alan Mackenzie <acm@muc.de>
+
+ Make C++11 uniform init syntax work.
+ New keywords "final" and "override".
+ * progmodes/cc-engine.el (c-back-over-member-initializer-braces):
+ New function.
+ (c-guess-basic-syntax): Set `containing-sex' and `lim' using the
+ new function.
+ * progmodes/cc-fonts.el (c-font-lock-declarations): Check more
+ carefully for "are we at a declarator?" using
+ c-back-over-member-initializers.
+ * progmodes/cc-langs.el (c-type-modifier-kwds): Include "final"
+ and "override" in the C++ value.
+
+2014-12-19 Martin Rudalics <rudalics@gmx.at>
+
+ * textmodes/ispell.el (ispell-command-loop): Don't use `next-window'.
+
+2014-12-21 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * net/nsm.el (nsm-save-host): Don't save the host name twice
+ (bug#19269).
+
+2014-12-18 Sam Steingold <sds@gnu.org>
+
+ Keyboard interface (C-f10) to `mouse-buffer-menu' (C-down-mouse-1).
+ * mouse.el (mouse-buffer-menu-map): Extract from `mouse-buffer-menu'.
+ (mouse-buffer-menu): Use `mouse-buffer-menu-map'.
+ * menu-bar.el (menu-bar-buffer-vector): Extract from
+ `menu-bar-update-buffers'.
+ (menu-bar-update-buffers): Use `menu-bar-buffer-vector'.
+ (buffer-menu-open): New user command, bound globally to C-f10,
+ provides a keyboard interface to `mouse-buffer-menu' (C-down-mouse-1).
+ (mouse-buffer-menu-keymap): Use `menu-bar-buffer-vector' to
+ convert the value returned by `mouse-buffer-menu-map' to a list
+ acceptable to `popup-menu' for `buffer-menu-open'.
+
+2014-12-18 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * let-alist.el (let-alist): Evaluate the `alist' argument only once.
+
+2014-12-18 Sam Steingold <sds@gnu.org>
+
+ * emacs-lisp/package.el: Avoid compilation warning by declaring
+ the `find-library-name' function.
+ (package-activate-1): Fix the `with-demoted-errors' calls:
+ the first argument must be a string literal.
+
+2014-12-18 Martin Rudalics <rudalics@gmx.at>
+
+ Add code for "preserving" window sizes.
+ * dired.el (dired-pop-to-buffer): Call fit-window-to-buffer with
+ `preserve-size' t.
+ (dired-mark-pop-up): Preserve size of window showing marked files.
+ * electric.el (Electric-pop-up-window):
+ * help.el (resize-temp-buffer-window): Call fit-window-to-buffer
+ with `preserve-size' t.
+ * minibuffer.el (minibuffer-completion-help):
+ Use `resize-temp-buffer-window' instead of `fit-window-to-buffer'
+ (Bug#19355). Preserve size of completions window.
+ * register.el (register-preview): Preserve size of register
+ preview window.
+ * tmm.el (tmm-add-prompt): Call fit-window-to-buffer
+ with `preserve-size' t (Bug#1291).
+ * window.el (with-displayed-buffer-window): Add calls to
+ `window-preserve-size'.
+ (window-min-pixel-size, window--preservable-size)
+ (window-preserve-size, window-preserved-size)
+ (window--preserve-size, window--min-size-ignore-p): New functions.
+ (window-min-size, window-min-delta, window--resizable)
+ (window--resize-this-window, split-window-below)
+ (split-window-right): Amend doc-string.
+ (window--min-size-1, window-sizable, window--size-fixed-1)
+ (window-size-fixed-p, window--min-delta-1)
+ (frame-windows-min-size, window--max-delta-1, window-resize)
+ (window--resize-child-windows, window--resize-siblings)
+ (enlarge-window, shrink-window, split-window): Handle preserving
+ window sizes.
+ (adjust-window-trailing-edge): Handle preserving window
+ sizes. Signal user-error instead of an error when there's no
+ window above or below.
+ (window--state-put-2): Handle horizontal scroll bars.
+ (window--display-buffer): Call `preserve-size' if asked for.
+ (display-buffer): Mention `preserve-size' alist member in doc-string.
+ (fit-window-to-buffer): New argument PRESERVE-SIZE.
+ * textmodes/ispell.el (ispell-command-loop): Suppress horizontal
+ scroll bar on ispell's windows. Don't count window lines and
+ don't deal with dedicated windows.
+ (ispell-show-choices, ispell-help): Let `ispell-display-buffer'
+ do the window handling.
+ (ispell-adjusted-window-height, ispell-overlay-window): Remove.
+ (ispell-display-buffer): New function to reuse, create and fit
+ window to ispell's buffers. (Bug#3413)
+
+2014-12-18 Dmitry Gutov <dgutov@yandex.ru>
+
+ * emacs-lisp/package.el (package-activate): Do not re-activate or
+ reload the dependencies (bug#19390).
+
+2014-12-18 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/cc-cmds.el (c-subword-mode): Alias to subword-mode.
+ (c-update-modeline):
+ * progmodes/cc-langs.el (c-mode-menu): Use c-subword-mode.
+ * progmodes/cc-mode.el (subword-mode): Move autoload to cc-cmds.el.
+ (c-mode-base-map): Use c-subword-mode.
+
+2014-12-18 Eli Zaretskii <eliz@gnu.org>
+
+ * international/mule-diag.el (describe-font-internal):
+ Display additional info returned by font-info.
+
+ * linum.el (linum--face-width): Rename from linum--face-height,
+ and use the new functionality of font-info.
+ (linum-update-window): Use linum--face-width and frame-char-width,
+ instead of approximating with height.
+
+2014-12-18 Dmitry Gutov <dgutov@yandex.ru>
+
+ * vc/vc-svn.el (vc-svn-dir-status-files): Revert the 2014-12-02
+ change (bug#19387). Use `apply' on `vc-dir-command' (bug#19405).
+
+ * emacs-lisp/package.el (package-activate-1): Add RELOAD argument
+ and a docstring.
+ (package-activate): Call itself on dependencies on PACKAGE with
+ the same FORCE argument. Pass FORCE as RELOAD into
+ `package-activate-1' (bug#19390).
+
+2014-12-17 Sam Steingold <sds@gnu.org>
+
+ * emacs-lisp/package.el (package--list-loaded-files):
+ Handle `(nil ...)' elements in `load-history'.
+
+2014-12-17 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * net/tramp-sh.el (tramp-histfile-override): New variable.
+ (tramp-open-shell, tramp-maybe-open-connection): Use it.
+
+2014-12-17 Dmitry Gutov <dgutov@yandex.ru>
+
+ * vc/vc.el: Improve `dir-status-files' description.
+
+ * emacs-lisp/package.el (package--list-loaded-files): Don't call
+ file-truename on load-history elements (bug#19390).
+
+2014-12-16 Nicolas Petton <petton.nicolas@gmail.com>
+
+ * emacs-lisp/seq.el: New file.
+
+2014-12-16 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * jit-lock.el (jit-lock-function): Don't defer if jit-lock-defer-time
+ is 0 and there is no input pending.
+
+2014-12-15 Juri Linkov <juri@linkov.net>
+
+ * replace.el (query-replace-read-from): Use query-replace-compile-replacement
+ only on the return value (bug#19383).
+
+2014-12-15 Juri Linkov <juri@linkov.net>
+
+ * isearch.el (isearch-lazy-highlight-search): Extend the bound of
+ the wrapped search by the length of the search string to be able
+ to lazy-highlight the whole search string at point (bug#19353).
+
+2014-12-15 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-fold-text): Don't bug out on zero-length text.
+
+2014-12-14 Alan Mackenzie <acm@muc.de>
+
+ * cus-start.el (all): Add fast-but-imprecise-scrolling.
+
+2014-12-14 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * let-alist.el: Add lexical binding.
+
+2014-12-14 Steve Purcell <steve@sanityinc.com> (tiny change)
+
+ * emacs-lisp/package.el (package-menu-mode): Use an extra column
+ for the "Version" column, to accomodate date-and-time-based versions.
+
+2014-12-14 Cameron Desautels <camdez@gmail.com>
+
+ * cus-edit.el (custom-unsaved-options): New function, extracted
+ from `customize-unsaved'.
+ (custom-unsaved): Use it.
+ (custom-prompt-customize-unsaved-options): New function.
+ (Bug#19328)
+
+2014-12-14 Dmitry Gutov <dgutov@yandex.ru>
+
+ * fringe.el (fringe-bitmap-p): Fix 2014-12-05 breakage.
+
+2014-12-14 Dmitry Gutov <dgutov@yandex.ru>
+
+ Move ASYNC argument to the `diff' VC command to the fifth
+ position, for better compatibility with existing third-party code,
+ and document it.
+
+ * vc/vc.el (vc-diff-internal): Pass `async' argument to the
+ backend `diff' command in the last position.
+
+ * vc/vc-svn.el (vc-svn-diff):
+ * vc/vc-src.el (vc-src-diff):
+ * vc/vc-sccs.el (vc-sccs-diff):
+ * vc/vc-rcs.el (vc-rcs-diff):
+ * vc/vc-mtn.el (vc-mtn-diff):
+ * vc/vc-hg.el (vc-hg-diff):
+ * vc/vc-git.el (vc-git-diff):
+ * vc/vc-dav.el (vc-dav-diff):
+ * vc/vc-cvs.el (vc-cvs-diff):
+ * vc/vc-bzr.el (vc-bzr-diff):
+ * obsolete/vc-arch.el (vc-arch-diff): Move ASYNC argument to the end.
+
+2014-12-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ * emacs-lisp/cconv.el (cconv--analyze-use):
+ Rename from cconv--analyse-use.
+ (cconv--analyze-function): Rename from cconv--analyse-function.
+ (cconv-analyze-form): Rename from cconv-analyse-form.
+
+2014-12-13 Andreas Schwab <schwab@linux-m68k.org>
+
+ * net/shr.el (shr-next-link): Don't error out at eob.
+
+2014-12-05 Nicolas Richard <theonewiththeevillook@yahoo.fr>
+
+ * isearch.el (isearch-open-necessary-overlays): Open overlay
+ ending at point (bug#19333).
+
+2014-12-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-fold-text): New function.
+ (shr-show-alt-text, shr-urlify, shr-tag-img): Use it to fold long
+ alt/title texts.
+ (shr-fold-text): Inhibit state from being altered.
+
+ * files.el (directory-files-recursively): Really check whether
+ files are symlinks.
+ (directory-name-p): New function.
+ (directory-files-recursively): Use it.
+
+2014-12-13 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * emacs-lisp/package.el (package--list-loaded-files): New function
+ to list files in a given directory which correspond to already
+ loaded files.
+ (package-activate-1): Reload files given by `package--list-loaded-files'.
+ Fix bug#10125, bug#18443, and bug#18448.
+
+2014-12-13 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * vc/vc-svn.el (vc-svn-diff): Fix bug #19312.
+
+2014-12-13 Michael Albinus <michael.albinus@gmx.de>
+
+ * simple.el (password-word-equivalents): Add "passcode", used for
+ numeric secrets like PINs or RSA tokens.
+
+2014-12-13 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-get-remote-path): Use a login shell in
+ order to determine `tramp-own-remote-path'.
+
+2014-12-13 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-shell-parse-command):
+ Quote `python-shell-interpreter`. (Bug#19289)
+
+2014-12-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/python.el (python-indent-line): Use `noindent' in strings.
+ (python-indent-levels): Document extra value.
+ (python-indent-calculate-indentation): Return `noindent' in strings.
+ (python-indent-post-self-insert-function)
+ (python-indent-calculate-levels): Handle new value.
+
+2014-12-12 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/network-stream.el (network-stream-open-starttls): No need to
+ check for the availability of `gnutls-available-p'.
+
+ * files.el (directory-files-recursively): Don't follow symlinks to
+ other directories.
+
+2014-12-12 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * vc/vc-dav.el, vc/vc-git.el, vc/vc-hg.el, vc/vc-src.el:
+ * vc/vc.el: latest-on-branch-p is no longer a public method.
+
+ * vc/vc.el, vc/vc-hg.el, vc/vc-git.el, vc/vc-hooks.el:
+ * vc/vc-mtn.el, vc/vc-rcs.el, vc/vc-sccs.el, vc/vc-src.el:
+ Remove `rollback' method, to be replaced in the future by uncommit.
+
+2014-12-11 Michael Albinus <michael.albinus@gmx.de>
+
+ * vc/vc-hg.el (vc-hg-state): Make FILE absolute. Handle the case
+ that there is empty output.
+
+2014-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eldoc.el (eldoc-documentation-function): Change default.
+ (eldoc-mode, eldoc-schedule-timer): Adjust to new default.
+
+2014-12-10 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * let-alist.el: Add new package and macro.
+
+2014-12-10 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * vc/vc-dispatcher.el, vc/vc-hooks.el, vc/vc-rcs.el:
+ * vc/vc-sccs.el, vc/vc.el: Righteous featurectomy of vc-keep-workfiles,
+ it's a shoot-self-in-foot archaism. Workfiles are always kept.
+
+2014-12-10 Rasmus Pank Roulund <emacs@pank.eu>
+
+ * net/ange-ftp.el (ange-ftp-switches-ok): Disallow flags causing
+ trouble with ls over ftp. These flags result in ls returning no
+ output, causing Tramp-breakage. (bug#19192)
+
+2014-12-10 Andreas Schwab <schwab@suse.de>
+
+ * files.el (file-tree-walk): Use file-name-as-directory unconditionally.
+
+2014-12-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * files.el (directory-files-recursively):
+ Use `file-name-all-completions' instead of `directory-files' for
+ greater speed.
+
+ * net/shr.el (shr-tag-object): Don't bug out on text elements in
+ <object>.
+
+2014-12-09 Bozhidar Batsov <bozhidar@batsov.com>
+
+ * progmodes/ruby-mode.el (auto-mode-alist): Add .rabl, Berksfile
+ and Puppetfile.
+ (ruby-toggle-string-quotes): New command that allows you to quickly
+ toggle between single-quoted and double-quoted string literals.
+
+2014-12-09 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * vc/vc-src.el (vc-src-do-comand): Prepend -- to file argument
+ list, avoids problems witt names containing hyphens.
+
+2014-12-09 Wilson Snyder <wsnyder@wsnyder.org>
+
+ Sync with upstream verilog-mode revision aa4b777.
+ * progmodes/verilog-mode.el (verilog-mode-version): Update.
+ (verilog-auto-end-comment-lines-re, verilog-end-block-ordered-re)
+ (verilog-set-auto-endcomments): Automatically comment property/
+ endproperty blocks to match other similar blocks like sequence/
+ endsequence, function/endfunction, etc. Reported by Alex Reed.
+ (verilog-set-auto-endcomments): Fix end comments for functions of
+ type void, etc. Detect the function- or task-name when
+ auto-commenting blocks that lack an explicit portlist.
+ Reported by Alex Reed.
+ (verilog-nameable-item-re): Fix nameable items that can have an
+ end-identifier to include endchecker, endgroup, endprogram,
+ endproperty, and endsequence. Reported by Alex Reed.
+ (verilog-preprocessor-re, verilog-beg-of-statement):
+ Fix indentation of property/endproperty around pre-processor
+ directives. Reported by Alex Reed.
+ (verilog-label-be): When auto-commenting a buffer, consider
+ auto-comments on all known keywords (not just a subset thereof).
+ Reported by Alex Reed.
+ (verilog-beg-of-statement): Fix labeling do-while blocks, bug842.
+ Reported by Alex Reed.
+ (verilog-beg-of-statement-1, verilog-at-constraint-p):
+ Fix hanging with many curly-bracket pairs, bug663.
+ (verilog-do-indent): Fix electric tab deleting form-feeds.
+ Note caused by indent-line-to deleting tabls pre 24.5.
+ (verilog-auto-output, verilog-auto-input, verilog-auto-inout)
+ (verilog-auto-inout-module, verilog-auto-inout-in): Doc fixes.
+ (verilog-read-always-signals, verilog-auto-sense-sigs)
+ (verilog-auto-reset): Fix AUTORESET with always_comb and always_latch,
+ bug844. Reported by Greg Hilton.
+
+2014-12-09 Alex Reed <acreed4@gmail.com> (tiny change)
+
+ * progmodes/verilog-mode.el (verilog-no-indent-begin-re):
+ Fix `verilog-indent-begin-after-if' nil not honoring 'forever',
+ 'foreach', and 'do' keywords.
+ (verilog-endcomment-reason-re, verilog-beg-of-statement):
+ Fix labeling do-while blocks, bug842.
+ (verilog-backward-token): Fix indenting sensitivity lists with
+ named events, bug840.
+
+2014-12-09 Reto Zimmermann <reto@gnu.org>
+
+ Sync with upstream vhdl mode v3.36.1.
+ * progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
+ (vhdl-compiler-alist): Anchor all error regexps.
+ (vhdl-compile-use-local-error-regexp): Change default to nil.
+ (vhdl-asort, vhdl-anot-head-p): Remove.
+ (vhdl-aput, vhdl-adelete, vhdl-aget): Simplify.
+ Remove optional argument of vhdl-aget and update all callers.
+ (vhdl-import-project): Also set `vhdl-compiler'.
+
+2014-12-09 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * files.el (find-files): New function.
+
+ * net/shr.el (shr-dom-print): Don't print comments.
+ (shr-tag-svg): Give inline SVG images the right type.
+
+ * net/eww.el (eww-update-header-line-format): Mark valid/invalid
+ certificates in the header line.
+ (eww-invalid-certificate, eww-valid-certificate): New faces.
+
+2014-12-09 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (inferior-python-mode):
+ Set `comint-prompt-read-only` to `t` only locally.
+
+2014-12-08 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/nsm.el (nsm-check-protocol): Test for RC4 on `high'.
+ (nsm-format-certificate): Include more data about the connection.
+ (nsm-query): Fill the text to that it looks nicer.
+ (nsm-check-protocol): Also warn if using SSL3 or older.
+
+2014-12-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/gud.el (gud-gdb-completions): Remove unused var `start'.
+
+ * obsolete/gulp.el (gulp-create-m-p-alist): Remove unused var `mnt-tm'.
+
+ * net/tramp.el (tramp-handle-make-symbolic-link): Mark unused arg.
+
+ * info.el (Info-mode-map): Remove left-over binding.
+
+ * emacs-lisp/avl-tree.el: Use lexical-binding and cl-lib.
+ (avl-tree--root): Remove redundant defsetf.
+
+2014-12-08 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/nsm.el (network-security-level): Remove the detailed
+ description, which was already outdated, and refer the users to
+ the manual.
+ (nsm-check-protocol): Check for weak Diffie-Hellman prime bits
+ (bug#19153).
+
+2014-12-06 Andrey Kotlarski <m00naticus@gmail.com>
+
+ * net/eww.el (eww-buffers-mode): New major mode.
+ (eww-list-buffers, eww-buffer-select, eww-buffer-show-next)
+ (eww-buffer-show-previous, eww-buffer-kill, eww-buffer-show):
+ New commands/functions (bug#19131).
+
+2014-12-08 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/gnutls.el (gnutls-negotiate): Ignore files found via
+ 'file-name-handler-alist' since the gnutls library can't use those
+ (bug#15866).
+
+2014-12-08 Dmitry Gutov <dgutov@yandex.ru>
+
+ * vc/vc-hg.el (vc-hg-dir-status-files): Only include ignores files
+ when FILES is non-nil (bug#19304).
+
+2014-12-08 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * vc/vc-arch.el: Move to obsolete directory so a test framework
+ won't trip over bit-rot in it. There has been no Arch snapshot
+ for nine years.
+
+2014-12-07 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-follow-link): Revert prefix behaviour to
+ previous behavior.
+ (eww-copy-page-url): Add doc string.
+
+2014-12-07 Ivan Shmakov <ivan@siamics.net>
+
+ * net/eww.el (eww): Move history recording here...
+ (eww-browse-url): ... from here (bug#19253).
+
+ * net/eww.el (eww-browse-url): Use generate-new-buffer (was:
+ iterating over possible buffer names.)
+
+2014-12-07 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-reload): Take a prefix to work locally (bug#19086).
+ (eww-current-buffer): Compilation fix for bug#18550 patch.
+
+2014-12-07 Ivan Shmakov <ivan@siamics.net>
+
+ * net/eww.el (eww-list-histories): Restore the history in the
+ correct buffer (bug#18550).
+
+2014-12-07 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-bookmark-prepare): Display URLs in first by
+ displaying shortened titles first (bug#16398).
+
+2014-12-07 Tom Willemse <tom@ryuslash.org> (tiny change)
+
+ * progmodes/python.el: Recognize docstrings.
+ (python-docstring-at-p, python-font-lock-syntactic-face-function):
+ New functions.
+ (python-mode): Use them.
+
+2014-12-06 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-treeview.el (newsticker--treeview-list-add-item)
+ (newsticker--treeview-propertize-tag): Bind tree menu to mouse-3.
+ (newsticker--treeview-create-groups-menu)
+ (newsticker--treeview-create-tree-menu): Remove.
+ (newsticker--treeview-tree-open-menu): New.
+ (newsticker-treeview-tree-click): Pass event to
+ `newsticker-treeview-tree-do-click'.
+ (newsticker-treeview-tree-do-click): Open treemenu on mouse-3.
+
+2014-12-05 Juri Linkov <juri@linkov.net>
+
+ * comint.el (comint-history-isearch-search)
+ (comint-history-isearch-wrap): Use field-beginning instead of
+ comint-line-beginning-position.
+ (comint-send-input): Go to the end of the field instead of the end
+ of the line to accept whole multi-line input.
+ http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00305.html
+
+2014-12-05 Juri Linkov <juri@linkov.net>
+
+ * minibuffer.el (minibuffer-completion-help):
+ Compare selected-window with minibuffer-window to check whether
+ completions should be displayed near the minibuffer. (Bug#17809)
+ http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00311.html
+
+2014-12-05 Michael Albinus <michael.albinus@gmx.de>
+
+ * vc/vc-mtn.el (vc-mtn-root):
+ * vc/vc-svn.el (vc-svn-registered): Make FILE absolute.
+
+2014-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/sh-script.el (sh-smie-sh-rules): Go back to the beginning
+ of the whole pipe when indenting an opening keyword after a |.
+ Generalize this treatment to opening keywords like "while" (bug#18031).
+
+2014-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (newline): Place the hook buffer-locally,
+ to make sure it's first.
+
+ * progmodes/prog-mode.el (prettify-symbols--compose-symbol):
+ Fix handling of symbols with different syntax at beginning/end or with
+ symbol rather than word syntax.
+
+2014-12-05 Eli Zaretskii <eliz@gnu.org>
+
+ * simple.el (line-move): If noninteractive, call line-move-1, not
+ forward-line, since the former is compatible with line-move-visual
+ both in terms of the column to which it moves and the return
+ value. (Bug#19211)
+
+2014-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * vc/ediff-init.el (ediff-odd-p): Remove.
+ (ediff-background-face): Use cl-oddp instead.
+ (ediff-buffer-live-p): Make it a defsubst.
+
+ * tooltip.el (tooltip-region-active-p): Remove.
+
+ * net/shr.el (shr-char-breakable-p, shr-char-kinsoku-bol-p)
+ (shr-char-kinsoku-eol-p, shr-char-nospace-p): Use define-inline.
+
+ * fringe.el (fringe-bitmap-p): Make it a plain function.
+
+ * emacs-lisp/eieio-core.el: Prefer inlinable functions over macros.
+ (class-p, generic-p, eieio-object-p, class-abstract-p):
+ Make them defsubst, so as to avoid corner case problems where
+ the arg might be evaluated in the condition-case, or it can't be passed
+ to higher-order functions like `cl-some'.
+
+2014-12-05 Nicolas Richard <theonewiththeevillook@yahoo.fr>
+
+ * wid-edit.el (widget-choose): Let numeric keypad work (bug#19268)
+ and remove old menu-related code.
+
+2014-12-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-display-pdf): Let mailcap determine how to
+ display PDF files (bug#19270).
+
+2014-12-05 Juri Linkov <juri@linkov.net>
+
+ Compare with the most recent window by default.
+ * vc/compare-w.el (compare-windows-get-window-function): New defcustom.
+ (compare-windows-get-recent-window)
+ (compare-windows-get-next-window): New functions.
+ (compare-windows, compare-windows-sync-default-function):
+ Use `compare-windows-get-window-function' instead of `next-window'.
+ (compare-windows): Add diff/match messages with region boundaries.
+ (Bug#19170)
+
+2014-12-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (filter): Remove. Use `cl-remove-if-not' or `seq-filter'.
+
+2014-12-04 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr--extract-best-source): Ignore non-text children.
+
+2014-12-04 Eli Zaretskii <eliz@gnu.org>
+
+ Implement copying of a buffer portion while preserving visual order.
+ * simple.el (bidi-directional-controls-chars)
+ (bidi-directional-non-controls-chars): New variables.
+ (squeeze-bidi-context-1, squeeze-bidi-context)
+ (line-substring-with-bidi-context)
+ (buffer-substring-with-bidi-context): New functions.
+
+ * files.el (file-tree-walk): Doc fix.
+
+2014-12-04 Rupert Swarbrick <ruperts@broadcom.com> (tiny change)
+ Rüdiger Sonderfeld <ruediger@c-plusplus.net>
+
+ * autoinsert.el (auto-insert-alist): Update C/C++ header and
+ program support to match more extensions. Replace non-alnum
+ characters when generating include guards (headers) and check for
+ more extensions when generating includes (programs)
+ (bug#19254).
+
+2014-12-03 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * files.el (file-tree-walk): Fix docstring.
+
+2014-12-03 Karl Fogel <kfogel@red-bean.com>
+
+ Fix bug whereby saving files hung in VC hook.
+
+ Saving a buffer visiting a file under SVN control would hang if
+ the remote repository were unreachable, because the VC hooks tried
+ to run "svn status -u" on the file, where the "-u" tells svn to
+ get update information from the remote repository.
+ http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg00174.html
+
+ * vc/vc-svn.el (vc-svn-state): Remove optional `localp'
+ argument and always pass "-v" to "svn status", never "-u".
+
+2014-12-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/inline.el: Fix up copyright header.
+ (inline-quote, inline-const-p, inline-const-val, inline-error):
+ Silence compiler warnings.
+ (inline-letevals): Fix edebug spec.
+ (inline--testconst-p): Consider lambda expressions as const-p.
+ (inline--getconst-val): Use inline--testconst-p.
+
+ * minibuffer.el (completion-table-dynamic): Add arg `switch-buffer'
+ and change default to stay in the minibuffer when called from
+ the minibuffer (bug#19250).
+ (lazy-completion-table): Use this new argument to preserve the
+ old behavior.
+
+ * progmodes/elisp-mode.el (elisp--local-variables): Don't burp on
+ incorrect lexical elements (bug#19250).
+
+2014-12-03 A. N. Other <none@example.com>
+
+ * files.el (file-tree-walk): Lisp translation of ANSI ftw(3).
+
+2014-12-02 Glenn Morris <rgm@gnu.org>
+
+ * whitespace.el (whitespace-big-indent-regexp): Add :version.
+
+2014-12-02 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * subr.el (filter): New macro. Because it's just silly for a Lisp
+ not to have this in 2014. And VC needs it.
+
+ * vc.el: All backends: API simplification: Abolish dir-status.
+ It's replaced by dir-status-files.
+
+ * vc.el: All backends: API simplification: Remove 4th
+ 'default-state' argument from vc-dir-status files and its backend
+ methods - no backend method ever set it. It was used only in the
+ fallback method to to set a default of 'up-to-date, though a
+ convoluted call chain obscured this.
+
+ * vc-hooks.el: Bind vc-delete-file to Ctrl-x v delete.
+
+ * vc.el (vc-expand-dirs): Now takes a second BACKEND argument,
+ improving behavior on directories using multiple file-oriented VCSes.
+
+ * vc/vc.el: All backends: API simplification; clear-headers
+ is no longer a public method. It is now local to the one place
+ it's used, in the RCS steal-lock method.
+
+2014-12-01 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * vc/vc.el: In all backends: API simplification; could-register
+ is no longer a public method. (vc-cvs.el still has a private
+ implementation.)
+
+ * vc/vc.el: In all backends: API cleanup; the backend diff method
+ takes an explicit async flag. This eliminates a particularly ugly
+ global.
+
+ * vc-bzr.el: Restore vc-bzr-state-heuristic as a private method.
+ VC randomly/unpredictably fails without it; cause not yet established.
+
+2014-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Merge some of the differences from the standalone CC-mode.
+ The main change is to only use the `category' text-property only when
+ available. For that many calls are changed to use c-get-char-property,
+ c-next-single-property-change, c-sc-scan-lists,
+ c-sc-parse-partial-sexp, c-unmark-<->-as-paren.
+
+ * progmodes/cc-mode.el (c-just-done-before-change): New var.
+ (c-basic-common-init): Initialize it.
+ (c-common-init): Only use mode-require-final-newline when available.
+ (c-before-change): Check and set c-just-done-before-change.
+ (c-after-change): Re-set c-just-done-before-change.
+ (c-advise-fl-for-region): New macro.
+ (lazy-lock-defer-rest-after-change, lazy-lock-defer-line-after-change)
+ (font-lock-after-change-function, jit-lock-after-change):
+ Advise if needed.
+
+ * progmodes/cc-langs.el (c-modified-constant): New lang var.
+ (c-known-type-key): Don't make a list just to throw it away.
+
+ * progmodes/cc-engine.el (c-invalidate-state-cache, c-parse-state):
+ Handle the case where categories are not available.
+ (c-record-parse-state-state, c-replay-parse-state-state):
+ Handle marker values.
+ (c-before-change-check-<>-operators): Look for the `syntax-table'
+ property rather than for the corresponding `category'.
+ (c-looking-at-decl-block): Remove unused var
+ `c-disallow-comma-in-<>-arglists'.
+ (c-forward-<>-arglist-recur): Remove unused var
+ `orig-record-found-types'.
+
+ * progmodes/cc-defs.el (c-version): Bump up to 5.33.
+ (c-use-category): New const.
+ (c-next-single-property-change): New macro.
+ (c-region-is-active-p): Prefer region-active-p when available.
+ (c-search-backward-char-property): Fix old min/max typo; probably
+ a copy/paste error.
+ (c-mark-<-as-paren, c-mark->-as-paren, c-unmark-<->-as-paren):
+ Turn them into macros that obey c-use-category.
+ (c-sc-scan-lists-no-category+1+1, c-sc-scan-lists-no-category+1-1)
+ (c-sc-scan-lists-no-category-1+1, c-sc-scan-lists-no-category-1-1)
+ (c-sc-scan-lists, c-sc-parse-partial-sexp)
+ (c-looking-at-non-alphnumspace): New macros.
+ (c-sc-parse-partial-sexp-no-category): New function.
+ (c-emacs-features): Add `category-properties' element.
+
+ * progmodes/cc-cmds.el (c-forward-into-nomenclature)
+ (c-backward-into-nomenclature): Use cc-subword if subword-mode is
+ not available.
+ (c-beginning-of-defun, c-end-of-defun, c-mark-function)
+ (c-indent-line-or-region): Use c-region-is-active-p.
+
+ * progmodes/cc-bytecomp.el (cc-bytecomp-unbound-variables)
+ (cc-bytecomp-original-functions, cc-bytecomp-original-properties)
+ (cc-bytecomp-loaded-files): Re-set each time the file is loaded.
+ (cc-bytecomp-obsolete-var, cc-bytecomp-ignore-obsolete)
+ (cc-bytecomp-obsolete-fun): Delete unused functions.
+
+ * progmodes/cc-align.el (c-lineup-respect-col-0): New function.
+
+2014-12-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-dom-print): Fix up `shr-dom-print' after the
+ dom.el changes.
+
+2014-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * vc/vc.el (vc-find-conflicted-file): Look for conflicted files in the
+ current "project" rather than just the current directory.
+ * vc/vc-git.el (vc-git-conflicted-files): Clarify in which directory
+ the file names make sense.
+
+ * vc/smerge-mode.el (smerge-swap): New command.
+
+ * vc/diff-mode.el (diff-kill-applied-hunks): New command.
+
+2014-12-01 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-treeview.el (newsticker--treeview-item-show):
+ Check window liveliness before measuring its width.
+
+ * net/newst-backend.el (newsticker--get-news-by-url-callback):
+ Pass correct status to `newsticker--sentinel-work'.
+ (newsticker--sentinel-work): Use "newsticker--download-error" as
+ guid in order to prevent multiple "Could not download..."
+ messages. Fixes bug#19166.
+
+2014-12-01 Ivan Shmakov <ivan@siamics.net>
+
+ * net/eww.el (eww-render): Call `eww-after-render-hook' in the
+ correct buffer (bug#19225).
+
+2014-12-01 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/nsm.el (network-security-level): Change the default to `medium'.
+
+ * net/eww.el (eww): Leave point in a place that doesn't cause
+ scrolling when displaying "Loading...".
+
+2014-12-01 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * vc/vc.el, vc/vc-cvs.el, vc/vc-rcs.el, vc/vc-svn.el: The 'merge'
+ backend method of RCS/CVS/SVN is now 'merge-file', to contrast with
+ 'merge-branch'. Prompting for merge revisions is pushed down to
+ the back ends; this fixes a layering violation that caused bad
+ behavior with SVN.
+
+ * vc/vc.el, vc-hooks.el: All backends: API simplification;
+ vc-stay-local-p and repository-hostname are no longer public
+ methods. Only the CVS and SVN backends used these, and the SVN
+ support was conditioned out because svn status -v is too slow.
+ The CVS back end retains this machinery and the vc-stay-local
+ configuration variable now only affects it.
+
+2014-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/inline.el: New file.
+
+2014-12-01 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * vc/vc.el, vc-hooks.el: All backends: API simplification;
+ vc-state-heuristic is no longer a public method, having been
+ removed where it is redundant, unnecessary, or known buggy.
+ This eliminated all backends except CVS. Eliminates bug#7850.
+
+ * vc/vc-cvs.el, vc/vc-hooks.el, vc/vc-rcs.el, vc/vc-sccs.el:
+ Eliminate vc-mistrust-permissions. It was only relevant to the
+ RCS and SCCS back ends and defaulted to t. Code now always
+ mistrusts permissions - by actual measurement the effect on
+ performance is negligible. As a side effect bug#11490 is now
+ irrelevant.
+
+ * vc/vc.el, vc-hooks.el: All backends: API simplification;
+ vc-workfile-unchanged-p is no longer a public method (but the RCS
+ and SCCS back ends retain it as a private method used in state
+ computation). This method was redundant with vc-state and usually
+ implemented as a trivial call to same. Fixes the failure mode
+ described in bug#694.
+
+ * vc/vc.el: All backends: API simplification; init-revision is
+ gone, and vc-registered functions no longer take an
+ initial-revision argument.
+
+2014-11-29 Glenn Morris <rgm@gnu.org>
+
+ * vc/vc-src.el (vc-src, vc-src-diff-switches)
+ (vc-src-master-templates): Fix :version tags.
+
+2014-11-29 Paul Rankin <paul@tilk.co> (tiny change)
+
+ * outline.el (outline-move-subtree-down): Refactor and improve code.
+
+2014-11-29 Stephen Berman <stephen.berman@gmx.net>
+ Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * outline.el (outline-move-subtree-down): Make sure we can move
+ forward to find the end of the subtree and the insertion point
+ (bug#19102).
+
+2014-11-29 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-shell-completion-setup-code):
+ Use __builtin__ module (or builtins in Python 3) and catch all errors
+ when importing readline and rlcompleter.
+
+2014-11-29 Stephen Berman <stephen.berman@gmx.net>
+
+ * calendar/todo-mode.el: Handle calling revert-buffer (bug#19187).
+ (todo-revert-buffer): New function.
+ (todo-modes-set-1): Use it as the buffer-local value of
+ revert-buffer-function.
+
+2014-11-29 Stephen Berman <stephen.berman@gmx.net>
+
+ * calendar/todo-mode.el (todo-mode): If called interactively, just
+ display a message saying to call todo-show to enter Todo mode
+ (Bug#19112).
+
+2014-11-29 Dmitry Gutov <dgutov@yandex.ru>
+
+ * vc/vc-hg.el (vc-hg-dir-status-files): Include ignored files.
+ (Bug#18579)
+
+ * vc/vc-bzr.el (vc-bzr-after-dir-status): Don't skip ignored
+ files. (Bug#18579)
+
+2014-11-29 Michael Albinus <michael.albinus@gmx.de>
+
+ * textmodes/makeinfo.el (makeinfo-buffer): Make it work also for
+ remote `buffer-file-name'.
+
+2014-11-29 Leo Liu <sdl.web@gmail.com>
+
+ * calendar/diary-lib.el (calendar-mark-1): Fix thinko.
+
+2014-11-29 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ Set PYTHONUNBUFFERED on shell startup.
+
+ * progmodes/python.el (python-shell-unbuffered): New var.
+ (python-shell-calculate-process-environment): Use it.
+
+2014-11-29 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-action-password): Clean password on subsequent
+ attempts even if there was no wrong password indication. (Bug#19047)
+
+ * net/tramp-sh.el (tramp-get-remote-locale): Return "LC_ALL=C" as
+ fallback.
+ (tramp-open-connection-setup-interactive-shell): No need to check
+ for nil as `tramp-get-remote-locale' return value.
+
+2014-11-29 Eli Zaretskii <eliz@gnu.org>
+
+ * vc/vc-git.el (vc-git-command, vc-git--call):
+ Bind coding-system-for-read and coding-system-for-write to
+ vc-git-commits-coding-system.
+ (vc-git-previous-revision): Use "~1" instead of "^", since the
+ latter is a special character for MS-Windows system shells.
+
+2014-11-29 Michael Albinus <michael.albinus@gmx.de>
+
+ Improve XEmacs compatibility.
+
+ * net/tramp.el (tramp-autoload-file-name-handler):
+ Wrap `temporary-file-directory' by `symbol-value', it doesn't
+ exist in XEmacs.
+ (tramp-read-passwd): Don't use `with-timeout-suspend' and
+ `with-timeout-unsuspend' if they don't exist, like in XEmacs.
+ (tramp-time-less-p, tramp-time-subtract): Remove functions.
+ (tramp-handle-file-newer-than-file-p, tramp-time-diff):
+ * net/tramp-adb.el (tramp-adb-ls-output-time-less-p):
+ * net/tramp-cache.el (tramp-get-file-property):
+ * net/tramp-smb.el (tramp-smb-handle-insert-directory):
+ Use `time-less-p' and `time-subtract, respectively.
+
+ * net/tramp-adb.el (top): Do not require time-date.el.
+
+ * net/tramp-compat.el (top): Require time-date.el for XEmacs.
+
+ * net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
+ Check, whether `utf-8' is a valid coding system.
+
+2014-11-29 Eli Zaretskii <eliz@gnu.org>
+
+ * vc/vc.el (vc-retrieve-tag): Doc fix.
+
+2014-11-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (execute-extended-command--shorter): Fix the "M-p" case
+ (bug#19152).
+
+2014-11-28 Martin Rudalics <rudalics@gmx.at>
+
+ Fix two issues around help-window-select. (Bug#11039) (Bug#19012)
+ * help.el (help-window-old-frame): New variable.
+ (help-window-select): Default to nil (Bug#11039).
+ Rewrite doc-string.
+ (help-window-setup): When the help window appears on another
+ frame and `help-window-select' is non-nil, give that frame input
+ focus too (Bug#19012).
+ (with-help-window): Store selected frame in
+ help-window-old-frame.
+
+2014-11-28 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-treeview.el (newsticker--treeview-load): Take care of
+ nil value for `newsticker-groups-filename'.
+
+2014-11-28 Daiki Ueno <ueno@gnu.org>
+
+ * epa.el (epa-sign-file, epa-encrypt-file, epa-decrypt-region)
+ (epa-sign-region, epa-encrypt-region):
+ Use `epg-context-set-{passphrase,progress}-callback', instead of
+ `setf'. This partially reverts commit 9e48a95c (bug#19150).
+ Reported by José A. Romero L.
+
+2014-11-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-restore-history):
+ Bind `inhibit-modification-hooks' instead of `after-change-functions'.
+
+2014-11-27 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-backend.el (newsticker--parse-atom-1.0):
+ Handle embedded (x)html in summary node.
+
+2014-11-27 Sam Steingold <sds@gnu.org>
+
+ * menu-bar.el (menu-bar-open): When everything else fails,
+ use (mouse-menu-bar-map).
+
+2014-11-27 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-treeview.el (newsticker-groups-filename):
+ Change default value to nil. Point out that variable is obsolete in doc
+ string.
+ (newsticker--treeview-load): Change wording of the questions the
+ user is asked when `newsticker-groups-filename' is found to be
+ used and we offer to read and remove the groups file. (Bug#19165)
+
+2014-11-27 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww): Record the new URL immediately, so that if the
+ HTTP fetch fails, we have the right URL in the buffer.
+ (eww-process-text-input): Don't shorten the input field if
+ deleting at the last character (bug#19085).
+ (eww-restore-history): Inhibit change functions while restoring
+ the history.
+ (eww-process-text-input): Fix deletion at the start of the field, too.
+ (eww-mode): Revert mistanken removal of `buffer-disable-undo'.
+ (eww-process-text-input): Try to keep track of the size more reliably.
+
+ * dom.el (dom-pp): New function.
+
+2014-11-27 Eli Zaretskii <eliz@gnu.org>
+
+ * vc/vc-bzr.el (vc-bzr-print-log, vc-bzr-expanded-log-entry):
+ Don't assume --long is the default for "bzr log", always specify
+ it explicitly, in case the user defined an alias for 'log' that
+ uses some other format.
+
+2014-11-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-eldoc--get-doc-at-point):
+ Strip shell output before returning. (bug#18794)
+
+2014-11-27 Dmitry Gutov <dgutov@yandex.ru>
+
+ Fix indentation before `!=' and after `+='. Originally reported
+ in https://github.com/mooz/js2-mode/issues/174.
+ * progmodes/js.el (js--indent-operator-re): Make assignments and
+ (in)equality operator a separate case.
+ (js--continued-expression-p): Escape the second `+' in the regexp.
+
+2014-11-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * window.el (handle-select-window): Deactivate shift-region (bug#19003).
+
+2014-11-26 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/nsm.el (nsm-new-fingerprint-ok-p): Display the certificate
+ when querying about new certificates.
+
+ * net/shr.el (shr-make-table-1): dom.el changes for table rendering.
+
+ * dom.el (dom-by-tag): Use `equal' for comparisons so that tags
+ can be strings.
+ (dom-elements): Protect against non-text nodes.
+ (dom-non-text-children): New function.
+
+ * net/eww.el (eww-tag-title): Use `dom-text'.
+
+2014-11-26 Sam Steingold <sds@gnu.org>
+
+ * textmodes/sgml-mode.el (sgml-validate-command): Pass -utf8 to tidy.
+
+2014-11-26 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-highest-readability): More dom.el fixes.
+
+2014-11-26 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-backend.el (newsticker--parse-generic-items):
+ Take care of UIDs when adding elements to cache.
+
+2014-11-26 Alan Mackenzie <acm@muc.de>
+
+ Remove spurious reference to symbol category_properties.
+ * progmodes/cc-engine.el (c-state-pp-to-literal): Fix here.
+
+2014-11-26 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el: Use the new dom.el accessors throughout.
+
+ * net/shr.el: Ditto.
+
+ * dom.el: New file.
+
+2014-11-26 Glenn Morris <rgm@gnu.org>
+
+ * arc-mode.el (archive-visit-single-files): Add :version.
+
+2014-11-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/nsm.el (nsm-format-certificate): Don't bug out on missing
+ elements.
+ (nsm-warnings-ok-p): The new version of this function always
+ returned nil when everything was OK.
+
+2014-11-25 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * net/gnutls.el (gnutls): Set :group to 'comm so it's near NSM.
+
+ * net/nsm.el (nsm-check-tls-connection, nsm-save-host)
+ (nsm-warnings-ok-p): Use `gnutls-peer-status-warning-describe'.
+
+2014-11-20 Nicolas Richard <theonewiththeevillook@yahoo.fr>
+
+ * emacs-lisp/byte-run.el (function-put): Match argument names to
+ docstring.
+
+2014-11-24 Sam Steingold <sds@gnu.org>
+
+ * vc/vc-hooks.el (vc-directory-exclusion-list):
+ Fix a trivial typo (bug#19171).
+
+2014-11-24 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * vc/vc-hooks.el (vc-state-base-face): Don't override
+ mode-line-inactive.
+
+2014-11-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-set-character-encoding): Use `read-coding-system'.
+ (eww-process-text-input): Inhibit read only so that input fields
+ don't get shortened (bug#19085).
+
+2014-11-24 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/macroexp.el (macroexp-let2*): New macro.
+
+ * window.el (with-temp-buffer-window)
+ (with-current-buffer-window, with-displayed-buffer-window):
+ * emacs-lisp/cl-macs.el (cl--compiler-macro-adjoin):
+ * emacs-lisp/cl-lib.el (substring):
+ * emacs-lisp/cl-extra.el (cl-getf): Use it.
+
+2014-11-24 Eli Zaretskii <eliz@gnu.org>
+
+ * isearch.el (isearch-update): Don't assume
+ pos-visible-in-window-p will return nil when point is hscrolled
+ out of view. (Bug#19157)
+
+2014-11-20 Andrey Kotlarski <m00naticus@gmail.com>
+
+ * net/eww.el (eww-browse-url): Optionally create new eww buffer.
+ (eww-follow-link): Follow in new buffer in case of prefix
+ argument, open externally with double prefix (bug#19130).
+
+2014-11-23 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-display-html): Decode the document-defined charset.
+ (eww): Pop to the *eww* buffer immediately after executing the
+ `M-x eww' command to avoid having buffers pop up later.
+ (eww-display-html): Don't pop the *eww* buffer.
+ (eww-display-raw): Ditto.
+ (eww-display-image): Ditto.
+ (eww-follow-link): Make going to #targets in the page work again.
+
+2014-11-23 Ivan Shmakov <ivan@siamics.net>
+
+ * net/eww.el (eww-suggest-uris): New variable.
+ (eww-suggested-uris): New function.
+ (eww): Default to URL under point.
+ (eww-links-at-point): New function.
+
+2014-11-20 Mark Oteiza <mvoteiza@udel.edu> (tiny change)
+
+ * net/eww.el (eww-add-bookmark): Fix bookmark titles.
+
+2014-11-17 Mark Oteiza <mvoteiza@udel.edu> (tiny change)
+
+ * net/eww.el (eww-mode-map): Bind backtab to shr-previous-link.
+
+2014-11-23 Kenjiro Nakayama <nakayamakenjiro@gmail.com>
+
+ * net/eww.el (eww-set-character-encoding): New command and keystroke.
+ (eww-display-raw): Use it (bug#16225).
+
+2014-11-23 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/nsm.el (network-security-level): Rename from
+ `nsm-security-level' and documented.
+
+ * mail/smtpmail.el (smtpmail-via-smtp): Warn unless encrypted and
+ we're sending a password.
+
+ * net/nsm.el: New file that implements a Network Security Manager.
+
+ * net/network-stream.el (open-network-stream): Add a new
+ :warn-unless-encrypted parameter.
+ (network-stream-open-plain): Allow warning unless encrypted.
+ (network-stream-open-starttls): Call the Network Security Manager.
+ (network-stream-open-tls): Ditto.
+
+2014-11-23 Leo Liu <sdl.web@gmail.com>
+
+ * calendar/cal-china.el (calendar-chinese-from-absolute-for-diary)
+ (calendar-chinese-to-absolute-for-diary)
+ (calendar-chinese-mark-date-pattern, diary-chinese-anniversary):
+ Handle leap months in Chinese calendar. (Bug#18953)
+
+2014-11-22 Alan Mackenzie <acm@muc.de>
+
+ Fix error with `mark-defun' and "protected:" in C++ Mode.
+ Fixes: debbugs:19134.
+
+ * progmodes/cc-cmds.el (c-where-wrt-brace-construct): Handle a
+ return code of (label) from c-beginning-of-decl-1.
+
+2014-11-22 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-backend.el (newsticker--sentinel-work):
+ Tell `libxml-parse-xml-region' to discard comments. Fixes bug#18787.
+
+2014-11-22 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-sh-handle-start-file-process)
+ (tramp-sh-handle-process-file): Propagate `process-environment'.
+
+ * vc/vc-hg.el (vc-hg-state): No special handling for remote files;
+ Tramp propagates environment variables now.
+
+2014-11-22 Eric S. Raymond <esr@snark>
+
+ * vc/vc-filewise.el: New file to isolate code used only by the
+ file-oriented back ends (SCCS/RCS/CVS/SRC) which should not
+ live in vc.el and certainly not in vc-hooks.el.
+
+ * vc/vc-hooks.el, vc-rcs.el, vc-sccs.el: vc-name -> vc-master-name.
+ This is preparatory to isolating all the 'master' functions
+ used only by the file-oriented back ends. With this done first,
+ the substantive diffs will be easier to read.
+
+2014-11-21 Rüdiger Sonderfeld <ruediger@c-plusplus.net>
+
+ * play/morse.el (nato-alphabet): Mark URL in docstring in a way
+ that is recognized by `help-mode'.
+
+2014-11-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * desktop.el (desktop-create-buffer): Use activate-mark to set
+ `mark-active' (bug#19058).
+
+2014-11-21 Eric S. Raymond <esr@snark>
+
+ * vc/vc-src.el (vc-src-state): Fix bug that produced spurious
+ nil state.
+
+2014-11-21 Eli Zaretskii <eliz@gnu.org>
+
+ * vc/vc.el (vc-deduce-fileset): Support invocation from
+ *vc-change-log* buffer. (Bug#19084)
+
+2014-11-13 Matthew Leach <matthew@mattleach.net>
+
+ * arc-mode.el (archive-visit-single-files): New.
+ (archive-mode): Visit file if archive contains a single file.
+ (Bug#1702)
+
+2014-11-21 Ulrich Müller <ulm@gentoo.org>
+
+ * vc/vc.el: Fix a typo in the commentary.
+
+2014-11-20 Eric S. Raymond <esr@snark.thyrsus.com>
+
+ * vc/vc-src.el, vc/vc.el: Added support for SRC. Needs more
+ testing and a real log-view mode.
+
+ * vc/vc-bzr.el, vc/vc-cvs.el, vc/vc-dav.el, vc/vc-git.el:
+ * vc/vc-hg.el, vc/vc-mtn.el, vc/vc-rcs.el, vc/vc-sccs.el:
+ * vc/vc-svn.el, vc/vc.el: Remove editable argument from the backend
+ checkout methods; where it matters (which is only in SCCS and RCS)
+ files are always checked out editable. This may actually have
+ been dynamically true already - it looks like the vc-next-action
+ code evolved past visiting the other case. Tested with RCS.
+
+ * vc/vc-arch.el, vc/vc-bzr.el, vc/vc-cvs.el, vc/vc-dav.el:
+ * vc/vc-git.el, vc/vc-hg.el, vc/vc-mtn.el, vc/vc-rcs.el:
+ * vc/vc-sccs.el, vc/vc-svn.el, vc/vc.el: Remove never-used rev
+ argument from the backend checkin methods. Only the RCS, SCCS,
+ and CVS back ends tried to do anything with it, and that code was
+ never exercised. Chiseling away the cruft of decades...
+
+2014-11-19 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-render): Remove a no-op :title setting.
+
+2014-11-19 Ivan Shmakov <ivan@siamics.net>
+
+ * net/eww.el (eww-history-limit): New variable.
+ (eww-save-history): Use it (bug#19105).
+ (eww-reload): Reload the page in the right buffer.
+
+2014-11-19 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-desktop-misc-data): Use `cl-remove-duplicates'.
+
+2014-11-19 Ivan Shmakov <ivan@siamics.net>
+
+ * net/eww.el (eww-desktop-remove-duplicates)
+ (eww-restore-desktop, eww-restore-reload-prompt): New variables.
+ (eww-mode): Set up desktop mode (bug#18010).
+ (eww-desktop-data-save, eww-desktop-data-1)
+ (eww-desktop-history-duplicate, eww-desktop-misc-data)
+ (eww-restore-desktop): New functions.
+
+2014-11-19 Eli Zaretskii <eliz@gnu.org>
+
+ * vc/vc.el (vc-log-internal-common): Turn on log-view-mode in the
+ correct buffer. (Bug#19101)
+
+2014-11-19 Rüdiger Sonderfeld <ruediger@c-plusplus.net>
+
+ * vc/vc-git.el (vc-git-diff): Use "difftool -x diff" with
+ `diff-switches' if `vc-git-diff-switches' is nil. (Bug#19099)
+
+2014-11-19 Artur Malabarba <bruce.connor.am@gmail.com>
+
+ * ido.el (ido-bury-buffer-at-head): New command.
+ (ido-buffer-completion-map): Bind it to C-S-b.
+
+2014-11-18 Juri Linkov <juri@linkov.net>
+
+ * simple.el (next-line-or-history-element): Wrap next-line
+ in with-no-warnings.
+ (previous-line-or-history-element): Wrap previous-line
+ in with-no-warnings.
+
+2014-11-18 Juri Linkov <juri@linkov.net>
+
+ * progmodes/grep.el (grep-compute-defaults):
+ Compute grep-highlight-matches before its use.
+
+2014-11-18 Juri Linkov <juri@linkov.net>
+
+ * replace.el (query-replace-from-to-separator): Turn defvar into
+ defcustom. Wrap char-displayable-p in ignore-errors because an
+ attempt to autoload char-displayable-p fails during pre-loading.
+ Move (propertize "\0" ... 'separator t) out of customizable part
+ to query-replace-read-from.
+ (query-replace-read-from): Call custom-reevaluate-setting on
+ query-replace-from-to-separator to reevaluate the separator
+ depending on the return value of char-displayable-p.
+ http://lists.gnu.org/archive/html/emacs-devel/2014-11/msg00466.html
+
+2014-11-18 Juri Linkov <juri@linkov.net>
+
+ * bindings.el (minibuffer-local-map): Rebind [down] from
+ next-history-element to next-line-or-history-element, and [up]
+ from previous-history-element to previous-line-or-history-element.
+
+ * simple.el (next-line-or-history-element)
+ (previous-line-or-history-element): New commands.
+ http://lists.gnu.org/archive/html/emacs-devel/2014-11/msg00822.html
+
+2014-11-18 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/nadvice.el (define-advice): New macro.
+ * emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
+ Add define-advice.
+ (lisp-font-lock-keywords-1): Add define-advice.
+
+2014-11-18 Daiki Ueno <ueno@gnu.org>
+
+ * epg.el (epg-context): New slot EDIT-CALLBACK.
+ (epg--process-filter): Call EDIT-CALLBACK when editing a key.
+ (epg-reset): Reset EDIT-CALLBACK of the context.
+ (epg-start-edit-key): New function.
+ (epg-edit-key): New function.
+
+2014-11-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port new time stamp handling to Emacs 23.2.
+ This fix is for Gnus. Reported by Katsumi Yamaoka.
+ * calendar/time-date.el (time-add, time-subtract, time-less-p):
+ Use eval-and-compile, not eval-when-compile.
+
+2014-11-18 Daiki Ueno <ueno@gnu.org>
+
+ * epg.el (epg-context-set-passphrase-callback)
+ (epg-context-set-progress-callback): Check if the CALLBACK
+ argument is a function, instead of a cons.
+
+2014-11-18 Daiki Ueno <ueno@gnu.org>
+
+ * epa-file.el (epa-file-insert-file-contents)
+ (epa-file-write-region): Remove redundant check of
+ epa-pinentry-mode.
+ * epa.el (epa-sign-file, epa-encrypt-file, epa-decrypt-region)
+ (epa-sign-region, epa-encrypt-region): Remove redundant check of
+ epa-pinentry-mode.
+
+2014-11-18 Daiki Ueno <ueno@gnu.org>
+
+ * epa-file.el (epa-file-insert-file-contents): Don't show
+ "*Error*" buffer if input file does not exist.
+ Reported by Herbert J. Skuhra.
+
+2014-11-18 Paul Pogonyshev <pogonyshev@gmail.com>
+ Rüdiger Sonderfeld <ruediger@c-plusplus.net>
+
+ * progmodes/cc-langs.el: Support some of the new keywords in C++11.
+ An alternative version of the patch from bug#13871.
+ (c-operators): Add "alignof".
+ (c-primitive-type-kwds): Add "char16_t", "char32_t".
+ (c-type-modifier-kwds): Add "constexpr", "noexcept".
+ (c-modifier-kwds): Add "thread_local".
+ (c-constant-kwds): Add "nullptr".
+
+2014-11-17 Michal Nazarewicz <mina86@mina86.com>
+
+ * textmodes/tildify.el (tildify-pattern, tildify-space-string):
+ New variables for specifying tildify pattern and representation of
+ a hard space -- a no-break space by default -- respectively.
+ Being buffer-local they are much easier to handle than
+ `tildify-string-alist' and `tildify-pattern-alist' respectively
+ that have been used so far. They also works better with derived
+ modes.
+ (tildify-foreach-region-function): New variable specifying
+ a function determining portions of buffer that should be
+ tildified. It allows major modes to create a filtering function
+ more elaborate than a set of regular expressions. Initialised to
+ `tildify--deprecated-ignore-evironments' by default to handle now
+ deprecated `tildify-ignored-environments-alist' variable.
+ (tildify--foreach-region): A new function that takes
+ `tildify-foreach-region-function' into account and calls callback
+ for regions of the buffer that should be tildified.
+ (tildify-foreach-ignore-environments): A new function which can be
+ partially applied and used as `tildify-foreach-region-function'.
+ (tildify-ignored-environments-alist, tildify-pattern)
+ (tildify-string-alist, tildify--pick-alist-entry): Mark as obsolete.
+ (tildify--find-env): Rename from `tildify-find-env' and mark as
+ obsolete.
+ (tildify--deprecated-ignore-evironments): New function,
+ immediately marked as obsolete, used to handle deprecated
+ `tildify-ignored-environments-alist'.
+
+ * textmodes/tex-mode.el (tex-common-initialization):
+ Set `tildify-space-string' and `tildify-foreach-region-function'
+ variables in all variants of TeX mode since `tildify-string-alist'
+ and `tildify-ignored-environments-alist' are now empty by default.
+
+ * nxml/nxml-mode.el (nxml-mode): Ditto in `nxml-mode'.
+ If encoding supports it use no-break space instead of character
+ entity; this changes previous default which used a numeric
+ reference.
+
+ * textmodes/sgml-mode.el (sgml-mode): ditto in `sgml-mode'.
+ If encoding does not support no-break space, use numeric reference;
+ this changes previous default which used named entity (“ ”)
+ in HTML mode.
+
+2014-11-17 Ulf Jasper <ulf.jasper@web.de>
+
+ * calendar/icalendar.el (icalendar-export-alarms):
+ New customizable variable. (Bug#5433)
+ (icalendar-export-region): Export alarms as specified in
+ `icalendar-export-alarms'.
+ (icalendar--create-ical-alarm, icalendar--do-create-ical-alarm):
+ New functions for exporting alarms.
+
+2014-11-17 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * bindings.el (search-map): Move `eww-search-words' to `M-s M-w'.
+
+2014-11-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port new time stamp handling to old Emacs and to XEmacs.
+ This is needed for Gnus, which copies time-date.el and which
+ runs on older Emacs implementations.
+ * calendar/time-date.el (with-decoded-time-value):
+ Handle 'nil' and floating-point arg more compatibly with new Emacs.
+ (encode-time-value, with-decoded-time-value):
+ Obsolete only if new Emacs.
+ (time-add, time-subtract, time-less-p): Define if not new Emacs.
+
+ Improve time stamp handling, and be more consistent about it.
+ This implements a suggestion made in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-10/msg00587.html
+ Among other things, this means timer.el no longer needs to
+ autoload the time-date module.
+ * allout-widgets.el (allout-elapsed-time-seconds): Doc fix.
+ * arc-mode.el (archive-ar-summarize):
+ * calendar/time-date.el (seconds-to-time, days-to-time, time-since):
+ * emacs-lisp/timer.el (timer-relative-time, timer-event-handler)
+ (run-at-time, with-timeout-suspend, with-timeout-unsuspend):
+ * net/tramp.el (tramp-time-less-p, tramp-time-subtract):
+ * proced.el (proced-time-lessp):
+ * timezone.el (timezone-time-from-absolute):
+ * type-break.el (type-break-schedule, type-break-time-sum):
+ Simplify by using new functionality.
+ * calendar/cal-dst.el (calendar-next-time-zone-transition):
+ Do not return time values in obsolete and undocumented (HI . LO)
+ format; use (HI LO) instead.
+ * calendar/time-date.el (with-decoded-time-value):
+ Treat 'nil' as current time. This is mostly for XEmacs.
+ (encode-time-value, with-decoded-time-value): Obsolete.
+ (time-add, time-subtract, time-less-p): Use no-op autoloads, for
+ XEmacs. Define only if XEmacs, as they're now C builtins in Emacs.
+ * ldefs-boot.el: Update to match new time-date.el
+ * proced.el: Do not require time-date.
+
+2014-11-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-mode): Make the buffer read-only.
+ (eww-form-text): Inhibit read-only-ness in text input fields
+ (bug#16476).
+
+2014-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (execute-extended-command--shorter): Cut search here.
+ (execute-extended-command): Instead of here.
+
+2014-11-16 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-mode): Avoid use of set-local to
+ keep Emacs 24.x compatibility.
+
+2014-11-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr): Move to the new defgroup `web'.
+
+ * net/eww.el (eww): Ditto.
+
+ * simple.el (execute-extended-command): Don't show the help
+ message if the binding isn't significantly shorter than the
+ M-x command the user typed (bug#19013).
+
+2014-11-16 Ulf Jasper <ulf.jasper@web.de>
+
+ * calendar/icalendar.el (icalendar--convert-tz-offset):
+ Return complete cons when offsets of standard time and daylight saving
+ time are equal.
+ (icalendar-export-region): Fix unbound variable warning.
+
+2014-11-16 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (run-python): Allow CMD to be optional and
+ default it to a safe command, even for Windows. (bug#18596)
+
+2014-11-16 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-shell-calculate-command):
+ Rename from python-shell-parse-command. Cleanup.
+ (run-python, run-python-internal): Use it.
+ (python-shell-calculate-pythonpath): Rename from
+ python-new-pythonpath.
+ (python-shell-calculate-process-environment): Use it.
+ (python-shell-calculate-exec-path): Add comment.
+
+2014-11-16 Thierry Banel <tbanelwebmin@free.fr> (tiny change)
+
+ * calc/calc-arith.el (math-max-list, math-min-list): Fix bug
+ for date handling.
+
+2014-11-16 Andreas Schwab <schwab@linux-m68k.org>
+
+ * version.el (emacs-repository-get-version): Use git rev-parse
+ instead of git log.
+
+2014-11-16 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-indent-calculate-levels):
+ Fix indentation behavior multiline dedenter statement. (Bug#18432)
+
+2014-11-16 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-indent-region):
+ Use python-indent-line and skip special cases. (Bug#18843)
+
+2014-11-16 Peder O. Klingenberg <peder@klingenberg.no>
+
+ * mail/emacsbug.el (report-emacs-bug): Make a better guess at
+ envelope-from when reporting through sendmail (bug#19054).
+
+2014-11-16 Oscar Fuentes <ofv@wanadoo.es>
+
+ Add faces for the VC modeline state indicator.
+ * vc/vc-hooks.el:
+ (vc-state-faces, vc-state-base-face)
+ (vc-up-to-date-state, vc-needs-update-state)
+ (vc-locked-state, vc-locally-added-state)
+ (vc-conflict-state, vc-removed-state)
+ (vc-missing-state, vc-edited-state):
+ New faces.
+ (vc-default-mode-line-string): Use them
+
+2014-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/backquote.el (backquote-process): Optimize away ",'".
+
+2014-11-15 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-search-words): Mention `eww-search-prefix'.
+
+2014-11-15 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-eldoc-setup-code): Enhance string
+ type checks, simplify printing. (Bug#18962)
+
+2014-11-14 Ivan Andrus <darthandrus@gmail.com>
+
+ * progmodes/python.el (python-shell-font-lock-kill-buffer):
+ (python-shell-font-lock-with-font-lock-buffer)
+ (python-shell-get-buffer, python-ffap-module-path):
+ Use `derived-mode-p' instead of equality test on `major-mode'.
+
+2014-11-14 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-shell-virtualenv-root): Rename from
+ python-shell-virtualenv-path.
+ (python-shell-internal-get-process-name)
+ (python-shell-calculate-process-environment)
+ (python-shell-calculate-exec-path): Use it.
+
+2014-11-14 Eli Zaretskii <eliz@gnu.org>
+
+ * bindings.el (search-map): Fix last change: don't use 'kbd' in
+ bindings.el, since it is not yet loaded when bindings.el is
+ preloaded.
+
+2014-11-14 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-shell-completion-get-completions):
+ Fix previous merge.
+
+2014-11-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-render): Don't set the title to the URL.
+
+2014-11-13 Ulrich Müller <ulm@gentoo.org>
+
+ * version.el (emacs-repository-get-version): Call `git log'
+ command with proper format argument (bug#19049).
+
+2014-11-14 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * bindings.el (search-map): Bind M-s M-s to `eww-search-words'.
+
+2014-11-14 Kenjiro NAKAYAMA <nakayamakenjiro@gmail.com>
+
+ * net/eww.el (eww-search-words): New command (bug#16258).
+
+2014-11-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-inhibit-images): Add a doc string.
+
+ * net/eww.el (eww-after-render-hook): New variable.
+ (eww-render): Use it.
+
+ * net/shr.el (shr-descend): Don't descend further than
+ `max-specpdl-size' allows (bug#16587).
+ (shr-depth): New variable.
+ (shr-warning): New variable.
+
+2014-11-13 Ivan Shmakov <ivan@siamics.net>
+
+ * net/shr.el (shr-parse-base): Handle <base href=""> correctly.
+ (shr-expand-url): Expand absolute URLs correctly (bug#17958).
+
+2014-11-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww): Add comment to clarify.
+
+ * net/shr.el (shr-parse-image-data): Remove blocked bits from
+ external SVG images.
+ (shr-tag-object): Display images in <object> forms (bug#16244).
+ (shr-tag-table): Also insert <objects> after the tables.
+
+2014-11-13 Michael Albinus <michael.albinus@gmx.de>
+
+ * vc/vc-hg.el (vc-hg-state): Disable pager. (Bug#18940)
+
+2014-11-13 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-form-file): Fix version number.
+
+2014-11-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-form-file): :type isn't a valid `defface' keyword.
+
+2014-11-10 Kenjiro NAKAYAMA <nakayamakenjiro@gmail.com>
+
+ * net/eww.el(eww-form-file(defface)): New defface of file upload form.
+ (eww-submit-file): New key map of file upload.
+ (eww-form-file): New file upload button and file name context.
+ (eww-select-file): Select file and display selected file name.
+ (eww-tag-input): Handle input tag of file type.
+ (eww-update-field): Add point offset.
+ (eww-submit): Add submit with multipart/form-data.
+
+2014-11-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-render, eww-display-html, eww-setup-buffer):
+ Allow taking a buffer to render data in. This allows using several
+ eww buffers (bug#16211).
+
+2014-11-10 Charles Rendleman <carendle@gmail.com> (tiny change)
+
+ * net/eww.el (eww-download-callback): Save only the file contents,
+ not the headers.
+
+2014-11-10 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-data): New plist to store all the data relevant
+ to a single page, used throughout the file instead of the
+ variables `eww-current-url', `eww-current-dom',
+ `eww-current-source', and `eww-current-title'.
+ (eww-readable): Copy over pertinent data from the parent page.
+ (eww-save-history): Don't let the history grow infinitely.
+
+ * net/eww.el: Remove `eww-next-url', `eww-previous-url',
+ `eww-up-url', `eww-home-url', `eww-start-url' and
+ `eww-contents-url' and put the data into the `eww-data' plist.
+ This allow restoring these values after going back in the history.
+
+2014-11-10 Sylvain Chouleur <sylvain.chouleur@gmail.com> (tiny change)
+
+ Allow VTIMEZONE where daylight and standard time zones are equal.
+ See: http://lists.gnu.org/archive/html/emacs-devel/2014-11/msg00494.html
+ * calendar/icalendar.el (icalendar--convert-tz-offset):
+ Support timezone without daylight saving time.
+
+2014-11-10 Glenn Morris <rgm@gnu.org>
+
+ * startup.el (command-line): Handle nil elements in load-path.
+
+2014-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * help.el (view-lossage): Include the actual commands run.
+
+2014-11-10 Dmitry Gutov <dgutov@yandex.ru>
+
+ * vc/vc-dir.el (vc-dir-hide-state): Also hide `ignored' items when
+ no state is specified. (Bug#18964)
+
+2014-11-09 Eric Ludlam <zappo@gnu.org>
+
+ * emacs-lisp/eieio-custom.el (eieio-customize-object):
+ Set eieio-cog (current group) to g, which is an improved form of input
+ group.
+
+2014-11-09 Juri Linkov <juri@jurta.org>
+
+ * isearch.el (isearch-message-prefix): Show "Multi-file" and
+ "Multi-buffer" instead of "Multi". (Bug#13592)
+
+ * misearch.el (multi-isearch-file-list):
+ Autoload multi-isearch-buffer-list and multi-isearch-file-list.
+ (multi-isearch-end): Reset multi-isearch-buffer-list and
+ multi-isearch-file-list to nil.
+
+2014-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
+ Don't call byte-compile-preprocess since the result will go through
+ cconv.
+ (byte-compile-output-docform): Handle uninterned `name' correctly.
+ * emacs-lisp/cl-macs.el (cl-define-compiler-macro): Use interned name
+ to circumvent byte-compiler bug.
+
+ * emacs-lisp/macroexp.el (macroexp--expand-all): Fix typo.
+ (macroexp--compiler-macro): Remove left-over debug code.
+
+ * emacs-lisp/cl-extra.el (cl-get): Silence compiler warning.
+
+2014-11-08 Juri Linkov <juri@jurta.org>
+
+ * simple.el (shell-command): Use buffer-name when output-buffer is
+ a buffer. (Bug#18096)
+
+2014-11-08 Juri Linkov <juri@jurta.org>
+
+ * minibuffer.el (minibuffer-completion-help): Compare this-command
+ with completion-at-point. (Bug#17809)
+
+2014-11-08 Glenn Morris <rgm@gnu.org>
+
+ * emacs-lisp/bytecomp.el (byte-compile-report-error):
+ Allow the argument to be a string. Due to the vague doc,
+ it was already being used this way.
+
+2014-11-08 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-check-cached-permissions): Include hop in
+ the constructed Tramp file name. (Bug#18943)
+
+2014-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emulation/cua-base.el (cua--select-keymaps): Use region-active-p
+ (bug#18952).
+ (cua-set-mark, cua--post-command-handler-1):
+ * emulation/cua-gmrk.el (cua-cancel-global-mark): Same.
+
+2014-11-08 Michael Albinus <michael.albinus@gmx.de>
+
+ * files.el (file-name-non-special): Wrap the call of
+ `insert-file-contents' by `unwind-protect', in order to set the
+ buffer's file name anyway. (Bug#18891)
+
+2014-11-08 Alan Mackenzie <acm@muc.de>
+
+ Fix wrong bound to c-font-lock-declarators. Fixes bug #18948.
+ * progmodes/cc-fonts.el (c-font-lock-declarations):
+ Pass "(point-max)" as bound to c-font-lock-declarators, not "limit", as
+ the buffer is sometimes narrowed to less than "limit" (e.g., in
+ the presence of macros).
+
+2014-11-08 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-error-with-buffer): Show connection buffer
+ only when message appeared in minibuffer. (Bug#18891)
+
+ * net/tramp-adb.el (tramp-adb-handle-file-attributes):
+ * net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
+ * net/tramp-sh.el (tramp-sh-handle-file-attributes): Return nil in
+ case of errors.
+
+2014-11-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
+ Don't compile before eval in `eval-and-compile'.
+ (byte-compile-arglist-warn): Add check for defining macros after their
+ first use. Check call use even if the function is fboundp.
+
+2014-11-08 Richard Stallman <rms@gnu.org>
+
+ * mail/rmail.el (rmail-epa-decrypt): Detect armor with line prefixes.
+ Check more carefully for mime-part specified character set.
+ Check for mime-part Content Transfer Encoding.
+ Notify if no armor found.
+
+2014-11-08 Martin Rudalics <rudalics@gmx.at>
+
+ * faces.el (face-set-after-frame-default): Enable running
+ `window-configuration-change-hook'.
+
+2014-11-07 Juri Linkov <juri@jurta.org>
+
+ * replace.el: History for query replace pairs.
+ (query-replace-defaults): Promote to a list of cons cell. Doc fix.
+ (query-replace-from-to-separator): New variable.
+ (query-replace-read-from): Let-bind query-replace-from-to-history
+ to a list of FROM-TO strings created from query-replace-defaults
+ and separated by query-replace-from-to-separator. Use it as
+ the history while reading from the minibuffer. Split the returned
+ string by the separator to get FROM and TO parts, and add them
+ to the history variables.
+ (query-replace-read-to): Add FROM-TO pairs to query-replace-defaults.
+ (query-replace-regexp-eval): Let-bind query-replace-defaults to nil.
+ http://lists.gnu.org/archive/html/emacs-devel/2014-11/msg00253.html
+
+ * isearch.el (isearch-text-char-description): Keep characters
+ intact and put formatted strings with the `display' property.
+
+2014-11-07 Martin Rudalics <rudalics@gmx.at>
+
+ * cus-start.el (frame-resize-pixelwise): Fix group.
+ (frame-inhibit-implied-resize): Add entry.
+
+2014-11-07 Daiki Ueno <ueno@gnu.org>
+
+ * epa.el (epa-pinentry-mode): New user option.
+ (epa-sign-file, epa-encrypt-file, epa-decrypt-region)
+ (epa-sign-region, epa-encrypt-region): Respect epa-pinentry-mode.
+ * epa-file.el (epa-file-insert-file-contents)
+ (epa-file-write-region): Respect epa-pinentry-mode.
+
+2014-11-07 Daiki Ueno <ueno@gnu.org>
+
+ * epg.el (epg--list-keys-1): Ignore fields after the 15th field
+ (bug#18979). Reported by Hideki Saito.
+
+2014-11-06 Daiki Ueno <ueno@gnu.org>
+
+ * emacs-lisp/package.el (package--display-verify-error): New function.
+ (package--check-signature): Use it to display output sent to stderr.
+
+2014-11-06 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (pop): Don't call the getter twice (bug#18968).
+
+ * emacs-lisp/macroexp.el (macroexp--expand-all): Optimize away trivial
+ uses of `funcall'.
+
+2014-11-06 Daiki Ueno <ueno@gnu.org>
+
+ * epa.el (epa-error-buffer): New variable.
+ (epa-display-error): New function.
+ (epa-decrypt-file, epa-verify-file, epa-verify-region)
+ (epa-delete-keys, epa-import-keys): Display output sent to stderr.
+ (epa-sign-file, epa-sign-region, epa-encrypt-region)
+ (epa-export-keys, epa-insert-keys): Display output sent to stderr.
+ Use setf instead of epg-context-set-*.
+ * epa-file.el (epa-file-insert-file-contents):
+ Use epa-display-error instead of epa-display-info. Mimic the behavior
+ of jka-compr when decryption program is not found.
+ (epa-file-write-region): Use epa-display-error instead of
+ epa-display-info.
+
+2014-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * vc/vc.el (vc-region-history): New command.
+ (vc-print-log-internal): Use cl-some.
+
+ * vc/vc-git.el (vc-git-region-history): New function.
+ (vc-git-region-history-mode-map)
+ (vc-git--log-view-long-font-lock-keywords)
+ (vc-git-region-history-font-lock-keywords): New vars.
+ (vc-git-region-history-font-lock): New function.
+ (vc-git-region-history-mode): New major mode.
+
+2014-11-05 Tassilo Horn <tsdh@gnu.org>
+
+ * net/eww.el (subr-x): Require subr-x at compile-time because eww
+ uses string-trim.
+
+2014-11-05 Daiki Ueno <ueno@gnu.org>
+
+ * epg.el (epg-context): Add new slot ERROR-OUTPUT.
+ (epg-error-output): New buffer-local variable.
+ (epg--start): Initialize epg-error-output.
+ (epg--process-filter): Record output lines sent to stderr, in
+ epg-error-output.
+ (epg-wait-for-completion): Copy epg-error-output to ERROR-OUTPUT
+ slot of context.
+ * epa-file.el (epa-file-insert-file-contents): On error, display
+ output sent to stderr.
+ (epa-file-write-region): Likewise.
+
+2014-11-05 Eli Zaretskii <eliz@gnu.org>
+
+ * jit-lock.el (jit-lock-stealth-fontify): Be tolerant to nil being
+ returned by load-average.
+
+2014-11-05 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer): Don't use
+ a local copy; setting `inhibit-file-name-handlers' proper might be
+ more performant. (Bug#18751)
- * dired.el (dired-read-regexp): Make obsolete.
- (dired-mark-files-regexp, dired-mark-files-containing-regexp)
- (dired-flag-files-regexp):
- * dired-aux.el (dired-mark-read-regexp):
- * dired-x.el (dired-mark-unmarked-files): Use read-regexp directly.
+2014-11-05 Glenn Morris <rgm@gnu.org>
-2014-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
+ * mail/emacsbug.el (report-emacs-bug): No longer include
+ recent-keys in the report. (Bug#18900)
- * progmodes/python.el (inferior-python-mode): Use add-hook.
+2014-11-04 Paul Eggert <eggert@cs.ucla.edu>
- * Makefile.in (AUTOGEN_VCS): Remove emulation/tpu-edt.el.
+ * mouse.el (mouse-drag-line): Fix misspelling of "right-fringe".
-2014-10-20 Glenn Morris <rgm@gnu.org>
+2014-11-04 Teodor Zlatanov <tzz@lifelogs.com>
- * emulation/crisp.el, emulation/tpu-edt.el, emulation/tpu-extras.el:
- * emulation/tpu-mapper.el, emulation/vi.el, emulation/vip.el:
- * emulation/ws-mode.el: Move to obsolete/. [Backport]
+ * net/eww.el (eww): Trim URL with `string-trim'.
+ Suggested by Vibhav Pant <vibhavp@gmail.com>.
-2014-10-20 Glenn Morris <rgm@gnu.org>
+2014-11-03 Lars Magne Ingebrigtsen <larsi@gnus.org>
- * cus-start.el (history-length): Bump :version. [Backport]
+ * net/eww.el (eww-score-readability): Don't count comments positively.
-2014-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
+ * net/shr.el (shr-retransform-dom): Typo fix.
+
+ * net/eww.el (eww-score-readability): Parse SVC images correctly.
+ (eww-display-html): Don't leave point inside forms.
+
+ * net/shr.el: Ditto.
+
+2014-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/edebug.el (edebug-safe-prin1-to-string): Assume that
+ edebug-prin1-to-string already handles circularity.
+
+ * emacs-lisp/byte-run.el (defun-declarations-alist): Fix compiler-macro
+ autoloading when specified as a lambda.
+
+ * simple.el (execute-extended-command--last-typed): New var.
+ (read-extended-command): Set it.
+ Don't complete obsolete commands.
+ (execute-extended-command--shorter-1)
+ (execute-extended-command--shorter): New functions.
+ (execute-extended-command): Use them to suggest shorter names.
+ (indicate-copied-region, deactivate-mark): Use region-active-p.
+
+2014-11-03 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer): Use a
+ local copy of FILENAME, when it is remote. (Bug#18751)
+
+ * net/tramp-adb.el (tramp-adb-handle-process-file): Do not raise
+ an error when the command fails; the return code must indicate.
+ (tramp-adb-send-command-and-check): Fix docstring.
+
+2014-11-03 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-retransform-dom): Don't ignore elements that
+ have no children like <br />.
+
+ * net/eww.el (eww-display-html): Clear `url-queue'.
+ (eww-display-pdf): New function.
+ (eww-render): Display PDFs with `doc-view'.
+ (url-queue): Require `url-queue' to avoid compilation warning.
+ (eww-colorize-region): Remove duplicate function.
+ (eww-tag-body): Use `shr-colorize-region'.
+
+2014-11-03 Yoni Rabkin <yrk@gnu.org>
+
+ * net/eww.el (eww-list-bookmarks): Autoload.
+
+2014-11-03 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-retransform-dom): Allow several text sub-nodes.
+
+ * net/eww.el (eww-display-html): The charset is called `utf-8',
+ not `utf8'.
+ (eww-readable): Decode the saved text correctly.
+ (eww-readable): Save the history before displaying so that we can
+ go back to the non-readable version.
+ (eww-display-html): Don't try to decode the text if we've been
+ passed in a pre-parsed DOM.
+ (eww-tag-title): Remove newlines and extra whitespace from the
+ displayed title.
+
+2014-11-02 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/eww.el (eww-readable): New command and keystroke.
+
+ * net/shr.el (shr-retransform-dom): New function.
+
+ * net/eww.el (eww-display-html): Set `eww-current-source' in the
+ correct buffer.
+ (eww-view-source): Use it.
+
+2014-11-02 Ivan Shmakov <ivan@siamics.net>
+
+ * net/eww.el (eww): Recognize colon-delimited IPv6 addresses.
+ (Bug#18603).
+
+2014-11-02 Brian McKenna <brian@brianmckenna.org> (tiny change)
+
+ * net/eww.el (eww-submit): Encode empty form values as "". (Bug#17785).
+
+2014-11-02 Ivan Shmakov <ivan@siamics.net>
+
+ * net/eww.el (eww): Allow "file:/file/name" URLs. (Bug#18825).
+
+2014-11-02 Ivan Shmakov <ivan@siamics.net>
+
+ * net/eww.el (eww-mode-map): Remove mentions of `eww-quit'.
+ (Bug#18834).
+
+2014-11-02 Eric Abrahamsen <eric@ericabrahamsen.net>
+
+ * emacs-lisp/eieio.el (eieio-edebug-prin1-to-string): Adjust for
+ use as advice.
+ (edebug-setup-hook): Advise `edebug-prin1-to-string'. (Bug#18897)
+
+2014-11-02 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/pp.el (pp-macroexpand-expression): Use macroexpand-1
+ (bug#18821).
+ * progmodes/elisp-mode.el (emacs-lisp-macroexpand): Idem.
+
+2014-11-01 Michael R. Mauger <michael@mauger.com>
+
+ * sql.el (sql-mode-oracle-font-lock-keywords): Correct regexp
+ syntax, add new keywords, and parse longer keywords first.
+ (sql-redirect-one): Protect against empty command.
+ (sql-mode, sql-interactive-mode): Set `custom-mode-group' property
+ to SQL. (Bug#14759)
+
+2014-11-01 Michael R. Mauger <michael@mauger.com>
+
+ * sql.el (sql-interactive-mode, sql-stop): Correct fix for
+ Bug#16814 with let-bind of comint-input-ring variables around read
+ and save functions.
+
+2014-11-01 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-cache.el (tramp-get-file-property)
+ (tramp-set-file-property): Check that `tramp-cache-get-count-*'
+ and `tramp-cache-set-count-*' are bound. Otherwise, there might
+ be compiler warnings.
+
+ * net/tramp-sh.el (tramp-get-remote-uid, tramp-get-remote-gid):
+ Return -1 respective "UNKNOWN", if uid or gid cannot be determined.
+
+2014-11-01 Eli Zaretskii <eliz@gnu.org>
+
+ * progmodes/compile.el (compilation-mode): Turn off deferred
+ fontifications locally. (Bug#18856)
+
+2014-11-01 Wolfgang Jenkner <wjenkner@inode.at>
+
+ * net/tramp-sh.el (tramp-send-command): Fix the case where the
+ remote-echo connection property is non-nil (bug#18858).
+
+2014-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (newline): Add assertions to try and help catch bug#18913.
+
+ * emulation/cua-base.el (cua-delete-region): Use delete-active-region
+ (bug#18886).
+ (cua--last-deleted-region-pos, cua--last-deleted-region-text): Remove.
+
+2014-11-01 Kim F. Storm <storm@cua.dk>
+
+ Restore cua-delete-copy-to-register-0 and M-v command (bug#18886).
+ * delsel.el (delete-selection-save-to-register)
+ (delsel--replace-text-or-position): New vars.
+ (delete-active-region): Use them.
+ (delete-selection-repeat-replace-region): New command, moved from
+ cua-base.el.
+ * emulation/cua-base.el (cua--repeat-replace-text): Remove var.
+ (cua-repeat-replace-region): Move command to delsel.el.
+ (cua--init-keymaps): Update binding accordingly.
+ (cua-mode): Set delete-selection-save-to-register.
+
+2014-11-01 Alan Mackenzie <acm@muc.de>
+
+ Make blink-parens work with a closing template delimiter.
+ * progmodes/cc-cmds.el (c-electric-lt-gt): Cause a redisplay
+ before calling blink-paren-function, so as to apply syntax-table
+ properties to the ">".
+
+2014-11-01 Jan Djärv <jan.h.d@swipnet.se>
+
+ * select.el (gui-get-selection): Comment: data-type ignored on NS.
+
+2014-10-31 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/macroexp.el (macroexpand-1): New function (bug#18821).
+ (macroexp--expand-all): Unrelated tweaks.
+
+ * emacs-lisp/gv.el (gv-get): Use macroexpand-1.
+
+2014-10-30 Glenn Morris <rgm@gnu.org>
+
+ * startup.el (command-line): Remove pointless attempt to avoid
+ statting the file-system (which expand-file-name doesn't do).
+
+2014-10-30 Daniel Colascione <dancol@dancol.org>
+
+ Add "enum class" support to C++ mode.
+ * progmodes/cc-langs.el (c-after-brace-list-decl-kwds)
+ (c-after-brace-list-key): New language consts/variables.
+ * progmodes/cc-engine.el (c-looking-at-decl-block):
+ Exclude spurious match of "enum struct" from decl-block recognition.
+ (c-backward-colon-prefixed-type): New function.
+ (c-backward-over-enum-header): Call above function to extend
+ recognition of enum structure.
+
+2014-10-30 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/cc-defs.el (c--macroexpand-all): New function (bug#18845).
+ (c-lang-defconst):
+ * progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use it.
+
+2014-10-30 Eli Zaretskii <eliz@gnu.org>
+
+ * progmodes/compile.el (compilation-start):
+ If compilation-scroll-output is non-nil, don't force window-start of
+ the compilation buffer to be at beginning of buffer. (Bug#18874)
+
+ * startup.el (fancy-about-text): Read the entire tutorial, not
+ just its first 256 bytes. (Bug#18760)
+
+2014-10-30 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/bytecomp.el: Require cl-extra (bug#18804).
+ * emacs-lisp/cl-extra.el: Add missing provide.
+
+ * emacs-lisp/bytecomp.el (byte-compile-and-folded): Optimize case where
+ all args are copyable (bug#18767).
+ (=, <, >, <=, >=): Re-enable the optimization.
+
+2014-10-29 Glenn Morris <rgm@gnu.org>
+
+ * net/rcirc.el (rcirc-fill-column): Unbump :version. Mark :risky.
+
+ * version.el (emacs-bzr-version, emacs-bzr-get-version):
+ Revert 2014-10-26 change.
+
+2014-10-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ Simplify use of current-time and friends.
+ * allout-widgets.el (allout-widgets-hook-error-handler):
+ * calendar/appt.el (appt-display-message):
+ * calendar/icalendar.el (icalendar--convert-float-to-ical):
+ * calendar/timeclock.el (timeclock-in, timeclock-when-to-leave)
+ (timeclock-last-period, timeclock-day-base):
+ * eshell/em-ls.el (eshell-ls-file):
+ * eshell/esh-util.el (eshell-parse-ange-ls):
+ * generic-x.el (named-database-print-serial):
+ * net/newst-backend.el (newsticker--get-news-by-url-callback)
+ (newsticker-get-news, newsticker--sentinel-work)
+ (newsticker--image-get, newsticker--image-sentinel):
+ * net/tramp-sh.el (tramp-get-remote-touch):
+ * progmodes/opascal.el (opascal-debug-log):
+ * textmodes/remember.el (remember-mail-date)
+ (remember-store-in-files):
+ * vc/vc-annotate.el (vc-annotate-display-autoscale)
+ (vc-default-annotate-current-time):
+ * vc/vc-bzr.el (vc-bzr-shelve-snapshot):
+ * vc/vc-cvs.el (vc-cvs-annotate-current-time):
+ * vc/vc-rcs.el (vc-rcs-annotate-current-time):
+ Omit unnecessary call to current-time.
+ * calendar/time-date.el (time-to-seconds) [!float-time]:
+ * vc/vc-annotate.el (vc-annotate-convert-time):
+ Use current time if arg is nil, to be compatible with float-time.
+ (time-date--day-in-year): New function, with most of the guts of
+ the old time-to-day-in-year.
+ (time-to-day-in-year): Use it.
+ (time-to-days): Use it, to avoid decoding the same time stamp twice.
+ * calendar/timeclock.el (timeclock-time-to-date):
+ Arg is now optional, like current-time-string.
+ (timeclock-update-mode-line):
+ Don't call current-time twice to get the current time stamp,
+ as this can lead to inconsistent results.
+ * completion.el (cmpl-hours-since-origin):
+ * ido.el (ido-time-stamp):
+ * vc/vc-annotate.el (vc-annotate-convert-time):
+ Simplify by using float-time.
+ * completion.el (save-completions-to-file):
+ Rename local var to avoid confusion.
+ * net/rcirc.el (rcirc-float-time): Simplify to an alias because
+ time-to-seconds now behaves like float-time with respect to nil arg.
+ * subr.el (progress-reporter-do-update):
+ Don't call float-time unless needed.
+
+2014-10-29 Leo Liu <sdl.web@gmail.com>
+
+ * net/rcirc.el (rcirc-fill-column): Use function.
+ (rcirc-markup-fill): Remove adjustment.
+
+2014-10-28 Christopher Schmidt <ch@ristopher.com>
+
+ * calc/calc.el (quick-calc):
+ * calc/calc-aent.el (calc-do-quick-calc): New argument INSERT.
+
+2014-10-28 Sam Steingold <sds@gnu.org>
+
+ * net/rcirc.el (rcirc-fill-column): Allow any symbolic value for
+ the sake of `window-body-width' (in addition to `frame-width').
+
+2014-10-26 Eric S. Raymond <esr@thyrsus.com>
+
+ * version.el: Fix some fallback values to conform to the actual
+ release number.
+
+2014-10-25 Eric S. Raymond <esr@thyrsus.com>
+
+ * Makefile.in: Change some production names so they're neutral
+ about the repository type.
+
+2014-10-25 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-gvfs.el (tramp-gvfs-methods-mounttracker)
+ (tramp-gvfs-mountlocation-signature): Check `tramp-gvfs-enabled'
+ during initialization. (Bug#18774)
+
+2014-10-25 Vincent Belaïche <vincentb1@users.sourceforge.net>
+
+ * ses.el (macroexp): Add require for this package, so that
+ function `ses--cell' gets macroexp-quote --- this change was
+ supposed to be in my previous commit, but left out by mistake.
+ (ses--cell): Do not make formula a macroexp-quote of value when
+ value, not formula, is *skip*.
+
+2014-10-24 Vincent Belaïche <vincentb1@users.sourceforge.net>
+
+ * ses.el (macroexp): Add require for this package, so that function
+ `ses--cell gets macroexp-quote.
+ (ses--cell): Makes formula a macroexp-quote of value when formula
+ is nil. The rationale of this changr is to allow in the future
+ shorter SES files, e.g. we could have only `(ses-cell A1 1.0)'
+ instead of `(ses-cell A1 1.0 1.0 nil REFLIST)'. In such a case
+ reference list REFLIST would be re-computed after load --- thus
+ trading off load time against file size.
+
+ * emacs-lisp/package.el (package--alist-to-plist-args):
+ Use macroexp-quote instead of a lambda expression which has the same
+ content as macroexp-quote.
+ (macroexp): Add require for this package, so that function
+ `package--alist-to-plist-args' gets macroexp-quote.
+
+ * emacs-lisp/macroexp.el (macroexp-quote): New defun.
+
+2014-10-24 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * term/ns-win.el (ns-store-cut-buffer-internal)
+ (ns-copy-including-secondary): Use gui-set-selection (bug#18816).
+
+2014-10-24 Martin Rudalics <rudalics@gmx.at>
+
+ * mouse.el (mouse-drag-line): Don't use mouse-pixel-position.
+ Calculate increment from last position instead of window edge.
+ Add right- and bottom-divider bindings to transient map.
+
+2014-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/cl-macs.el (cl-defstruct): Define an internal predicate
+ even if :predicate was nil, for the benefit of typep.
+ Record the name of the predicate for typep's use.
+ (cl--make-type-test): Use pcase. Obey new
+ cl-deftype-satisfies property.
+
+ * epg.el: Use cl-defstruct.
+ (epg-make-data-from-file, epg-make-data-from-string, epg-data-file)
+ (epg-data-string): Define via cl-defstruct.
+ (epg--gv-nreverse): New macro.
+ (epg-context--make): New constructor (provided vi cl-defstruct).
+ (epg-make-context): Rewrite using it.
+ (epg-context-protocol, epg-context-program)
+ (epg-context-home-directory, epg-context-armor, epg-context-textmode)
+ (epg-context-include-certs, epg-context-cipher-algorithm)
+ (epg-context-digest-algorithm, epg-context-compress-algorithm)
+ (epg-context-passphrase-callback, epg-context-progress-callback)
+ (epg-context-signers, epg-context-sig-notations, epg-context-process)
+ (epg-context-output-file, epg-context-result, epg-context-operation)
+ (epg-context-pinentry-mode): Define using cl-defstruct.
+ (epg-context-set-protocol, epg-context-set-program)
+ (epg-context-set-include-certs, epg-context-set-cipher-algorithm)
+ (epg-context-set-digest-algorithm)
+ (epg-context-set-sig-notations, epg-context-set-process)
+ (epg-context-set-output-file, epg-context-set-result)
+ (epg-context-set-operation, epg-context-set-pinentry-mode)
+ (epg-context-set-compress-algorithm): Remove. Use setf instead.
+ (epg-context-set-armor, epg-context-set-textmode)
+ (epg-context-set-signers): Redefine using setf
+ and declare as obsolete.
+ (epg-context-set-passphrase-callback)
+ (epg-context-set-progress-callback): Use setf.
+ (epg-signature-notations): Rename from epg-sig-notations.
+ (epg-make-signature, epg-signature-status, epg-signature-key-id)
+ (epg-signature-validity, epg-signature-fingerprint)
+ (epg-signature-creation-time, epg-signature-expiration-time)
+ (epg-signature-pubkey-algorithm, epg-signature-digest-algorithm)
+ (epg-signature-class, epg-signature-version): Define vi cl-defstruct.
+ (epg-signature-set-status, epg-signature-set-key-id)
+ (epg-signature-set-validity, epg-signature-set-fingerprint)
+ (epg-signature-set-creation-time, epg-signature-set-expiration-time)
+ (epg-signature-set-pubkey-algorithm)
+ (epg-signature-set-digest-algorithm, epg-signature-set-class)
+ (epg-signature-set-version, epg-signature-set-notations): Remove.
+ Use setf instead.
+ (epg-make-new-signature, epg-new-signature-type)
+ (epg-new-signature-pubkey-algorithm)
+ (epg-new-signature-digest-algorithm, epg-new-signature-class)
+ (epg-new-signature-creation-time, epg-new-signature-fingerprint):
+ Define using cl-defstruct.
+ (epg-make-key, epg-key-owner-trust, epg-key-sub-key-list)
+ (epg-key-user-id-list): Define using cl-defstruct.
+ (epg-key-set-sub-key-list, epg-key-set-user-id-list): Remove.
+ Use setf instead.
+ (epg-make-sub-key, epg-sub-key-validity, epg-sub-key-capability)
+ (epg-sub-key-secret-p, epg-sub-key-algorithm, epg-sub-key-length)
+ (epg-sub-key-id, epg-sub-key-creation-time)
+ (epg-sub-key-expiration-time, epg-sub-key-fingerprint): Define using
+ cl-defstruct.
+ (epg-sub-key-set-fingerprint): Remove. Use setf instead.
+ (epg-make-user-id, epg-user-id-validity, epg-user-id-string)
+ (epg-user-id-signature-list): Define using cl-defstruct.
+ (epg-user-id-set-signature-list): Remove. Use setf instead.
+ (epg-make-key-signature, epg-key-signature-validity)
+ (epg-key-signature-pubkey-algorithm, epg-key-signature-key-id)
+ (epg-key-signature-creation-time, epg-key-signature-expiration-time)
+ (epg-key-signature-user-id, epg-key-signature-class)
+ (epg-key-signature-exportable-p): Define using cl-defstruct.
+ (epg-make-sig-notation, epg-sig-notation-name)
+ (epg-sig-notation-value, epg-sig-notation-human-readable)
+ (epg-sig-notation-critical): Define using cl-defstruct.
+ (epg-sig-notation-set-value): Remove. Use setf instead.
+ (epg-make-import-status, epg-import-status-fingerprint)
+ (epg-import-status-reason, epg-import-status-new)
+ (epg-import-status-user-id, epg-import-status-signature)
+ (epg-import-status-sub-key, epg-import-status-secret): Define using
+ cl-defstruct.
+ (epg-make-import-result, epg-import-result-considered)
+ (epg-import-result-no-user-id, epg-import-result-imported)
+ (epg-import-result-imported-rsa, epg-import-result-unchanged)
+ (epg-import-result-new-user-ids, epg-import-result-new-sub-keys)
+ (epg-import-result-new-signatures, epg-import-result-new-revocations)
+ (epg-import-result-secret-read, epg-import-result-secret-imported)
+ (epg-import-result-secret-unchanged, epg-import-result-not-imported)
+ (epg-import-result-imports): Define using cl-defstruct.
+
+ * emacs-lisp/package.el: Require EPG during macroexpansion.
+ (package--check-signature, package-import-keyring): Use setf instead of
+ epg-context-set-home-directory.
+
+2014-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/bytecomp.el (byte-compile--use-old-handlers): Change default.
+
+2014-10-23 Leo Liu <sdl.web@gmail.com>
+
+ * progmodes/cfengine.el (cfengine3-defun-full-re): New var.
+ (cfengine3-create-imenu-index): Use it and use ` ' for separation.
+ (cfengine3-current-defun): New function.
+ (cfengine3-mode): Set add-log-current-defun-function.
+
+2014-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * select.el: Use lexical-binding.
+ (gui-set-selection): Provide an implementation for non-GUI frames
+ (bug#18791).
+ * term/x-win.el: Use lexical-binding.
+ (x-clipboard-yank): Fix up missed renamings.
+ * term/w32-win.el (libgif-version, libjpeg-version): Silence compiler.
+ (w32--set-selection): Fix up var names.
+ * term/pc-win.el: Use lexical-binding.
+ (w16-selection-exists-p): Silence compiler warning.
+ (w16-selection-owner-p): Fix up missed renamings.
+
+ * emacs-lisp/bytecomp.el (byte-compile-form): Remove left-over debug.
+
+ * frame.el (frame-notice-user-settings): Fix excessive quoting.
+
+2014-10-22 Tassilo Horn <tsdh@gnu.org>
+
+ * doc-view.el (doc-view-open-text): View the document's plain text
+ in the current buffer instead of a new one.
+ (doc-view-toggle-display): Handle the case where the current
+ buffer contains the plain text contents of the document.
+ (doc-view-initiate-display): Don't switch to fallback mode if the
+ user wants to view the doc's plain text.
+ (doc-view-set-doc-type): Use assoc-string instead of
+ assoc-ignore-case.
+
+2014-10-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (read-key): Fix clicks on the mode-line.
+ (set-transient-map): Return exit function.
+
+ * mouse.el (mouse-drag-line): Use set-transient-map (bug#18015).
+ (mouse--down-1-maybe-follows-link): Remove unused var `this-event'.
+ (mouse-yank-secondary): Use gui-get-selection.
+ (mouse--down-1-maybe-follows-link): Use read-key.
+
+ * xt-mouse.el: Add `event-kind' property on the fly from
+ xterm-mouse-translate-1 rather than statically at the outset.
+
+2014-10-21 Daniel Colascione <dancol@dancol.org>
+
+ * vc/vc-dispatcher.el (vc-resynch-window): Tell view-mode not to
+ change window configuration when we turn it off.
+
+2014-10-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Get rid of backend-dependent selection-handling functions for kill/yank
+ and make it generic instead by relying on the lower-level selection
+ management functions.
+
+ * select.el (select-enable-clipboard): Rename from
+ gui-select-enable-clipboard.
+ (select-enable-primary): Move from x-win.el and rename from
+ x-select-enable-primary.
+ (gui-last-selected-text): Remove.
+ (gui--last-selected-text-clipboard, gui--last-selected-text-primary):
+ New vars.
+ (gui-select-text): Rewrite, based on x-win.el's old x-select-text.
+ (gui-select-text-alist, gui-selection-value-alist): Remove.
+ (x-select-request-type): Move from x-win.el.
+ (gui--selection-value-internal): New function, taken from x-win's
+ x-selection-value-internal.
+ (gui-selection-value): Rewrite, based on x-win.el's old x-selection-value.
+ (gui-set-selection-alist): Rename from gui-own-selection-alist and
+ extend it to handle a nil value as a "disown" request.
+ (gui-disown-selection-alist): Remove.
+ (xselect-convert-to-delete): Adjust accordingly.
+ (gui-set-selection): Simplify accordingly as well. Use dotimes.
+
+ * term/x-win.el (x-last-selected-text-primary)
+ (x-select-enable-primary): Remove (moved to select.el).
+ (x-select-request-type): Move to select.el.
+ (x-selection-value-internal, x--selection-value): Remove functions.
+ (gui-selection-value, gui-select-text): Remove moethods.
+ (gui-set-selection): Merge own and disown methods.
+
+ * term/w32-win.el (w32--select-text, w32--get-selection-value):
+ Delete function (move functionality into w32--set-selection and
+ w32--get-selection).
+ (gui-select-text, gui-selection-value): Don't define methods.
+ (w32--set-selection, w32--get-selection, w32--selection-owner-p):
+ New functions.
+ (gui-get-selection, gui-selection-owner-p, gui-selection-exists-p):
+ Use them.
+ (gui-selection-exists-p): Adjust to new name of C primitive.
+
+ * term/pc-win.el (w16-get-selection-value): Add dummy argument and drop
+ test of gui-select-enable-clipboard, to make it usable as
+ a gui-get-selection method.
+ (gui-selection-exists-p): Adjust to new name of C primitive.
+ (gui-set-selection): Merge own and disown methods.
+ (gui-select-text, gui-selection-value): Delete methods.
+ (w16--select-text): Delete function.
+
+ * term/ns-win.el (ns-get-pasteboard, ns-set-pasteboard)
+ (ns-selection-value): Remove functions.
+ (gui-select-text, gui-selection-value): Don't define method any more.
+ (gui-set-selection): Merge the old own and disown methods.
+ (gui-selection-exists-p, gui-get-selection): Adjust to new name of
+ underlying C primitive.
+
+ * startup.el (command-line): Adjust now that `gui-method' expects nil
+ for ttys.
+
+ * frame.el (gui-method): Use window-system rather than framep.
+ (gui-method-declare): The tty case is now nil rather than t.
+ (make-frame): Adjust accordingly.
+
+2014-10-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * net/newst-reader.el (newsticker--image-read): Simplify.
+ (newsticker--icon-read): Use dolist and fix free var error.
+
+ * imenu.el (imenu--menubar-keymap): New var.
+ (imenu-add-to-menubar): Set it to remember the keymap we used.
+ (imenu-update-menubar): Use it instead of asking lookup-key.
* obsolete/cc-compat.el: Make obsolete (bug#18561).
* emacs-lisp/bytecomp.el (=, <, >, <=, >=): Don't optimize multi-arg
case (bug#18767).
+2014-10-21 Glenn Morris <rgm@gnu.org>
+
+ * Merge in all changes up to version 24.4 release.
+
+2014-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/bytecomp.el (=, <, >, <=, >=): Don't optimize multi-arg
+ case (bug#18767).
+
2014-10-20 Glenn Morris <rgm@gnu.org>
- * Version 24.4 released.
+ * Merge in all changes up to 24.4 release.
+
+2014-10-20 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-backend.el
+ (newsticker--image-download-by-url-callback): Make this function
+ actually work: Check status properly, then save image.
+
+2014-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * mouse.el (mouse--down-1-maybe-follows-link): Remove unused var
+ `this-event'.
+ (mouse-drag-line): Unless there's no actual mouse, use the event's
+ position info.
+
+2014-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * textmodes/css-mode.el (scss-mode): New major-mode.
+ (css-mode-syntax-table): Use d style comment, to ease the scss case.
+ (css-ident-re): Allow things like @-moz-keyframes.
+ (scss--hash-re): New const.
+ (css--font-lock-keywords): New function, extracted from
+ css-font-lock-keywords.
+
+2014-10-19 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-backend.el: Require url-parse.
+ (newsticker--get-news-by-wget): Store feed name as process property.
+ (newsticker--sentinel): Read feed name from process property.
+ (newsticker--sentinel-work): Rename argument name to feed-name.
+ Rename variable imageurl to image-url. Pick icon url from Atom
+ 1.0 data. Launch download of feed icon.
+ (newsticker--get-icon-url-atom-1.0): New.
+ (newsticker--unxml)
+ (newsticker--unxml-node)
+ (newsticker--unxml-attribute): Documentation.
+ (newsticker--icons-dir): New.
+ (newsticker--image-get): New arguments FILENAME and DIRECTORY.
+ Use `url-retrieve' if `newsticker-retrieval-method' is 'intern.
+ (newsticker--image-download-by-wget): New. Use process properties
+ for storing informations.
+ (newsticker--image-sentinel): Read informations from process properties.
+ (newsticker--image-save)
+ (newsticker--image-remove)
+ (newsticker--image-download-by-url)
+ (newsticker--image-download-by-url-callback): New.
+ (newsticker-opml-export): Handle url list entries containing a
+ function instead of an url string.
+
+ * net/newst-reader.el (newsticker-html-renderer): Whitespace.
+ (newsticker--print-extra-elements)
+ (newsticker--do-print-extra-element):
+ Documentation (newsticker--image-read): Optionally limit image height.
+ Use imagemagick if possible.
+ (newsticker--icon-read): New.
+
+ * net/newst-treeview.el (newsticker--treeview-item-show): Limit height of feed logo.
+ (newsticker--treeview-tree-expand): Use feed icons in treeview.
+ (newsticker--tree-widget-icon-create): New. Set the tree widget icon.
+ (newsticker--tree-widget-leaf-icon): Use feed icon.
+
+2014-10-19 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio-opt.el (eieio-lambda-arglist): Remove.
+ Use help-function-arglist instead.
+
+ * emacs-lisp/eieio-core.el (eieio-compiled-function-arglist): Remove.
+ (eieio--with-scoped-class): Use `declare'.
+ (eieio-defclass): Remove compatibility code.
+ (no-method-definition, no-next-method, inconsistent-class-hierarchy)
+ (invalid-slot-type, unbound-slot, invalid-slot-name): Use define-error.
+
+2014-10-18 Jan Djärv <jan.h.d@swipnet.se>
+
+ * cus-start.el (x-gtk-whole-detached-tool-bar): Remove.
+
+ * term/x-win.el (x-gtk-stock-map): Add icon names suggested as
+ replacements to stock names before stock names in a list.
+ Cdr may be a list, each name is tried in turn until one is found.
+
+2014-10-18 Alan Mackenzie <acm@muc.de>
+
+ Check that a "macro" found near point-min isn't a ## operator.
+ Fixes bug #18749.
+ * progmodes/cc-engine.el (c-macro-is-genuine-p): New function.
+ (c-beginning-of-macro): Use the above new function.
+
+2014-10-18 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * net/gnutls.el (gnutls-negotiate): Don't use cl-mapcan; pass
+ correct data to `gnutls-boot' (Bug#18664).
+ Reported by Toke Høiland-Jørgensen <toke@toke.dk>.
+
+2014-10-18 Michal Nazarewicz <mina86@mina86.com>
+
+ * whitespace.el (whitespace-style, whitespace-big-indent)
+ (whitespace-big-indent-regexp, whitespace-style-value-list)
+ (whitespace-toggle-option-alist, whitespace-interactive-char)
+ (whitespace-toggle-options)
+ (global-whitespace-toggle-options, whitespace-help-text)
+ (whitespace-style-face-p, whitespace-color-on): Add a 'big-indent
+ style to `whitespace-mode' to indicate that the line indentation
+ is too deep. By default, 32 SPACEs or four TABs are considered
+ too many but `whitespace-big-indent-regexp' can be configured.
+
+2014-10-17 Michal Nazarewicz <mina86@mina86.com>
+
+ * textmodes/tildify.el (tildify--pick-alist-entry): Rename from
+ tildify-mode-alist.
+
+2014-10-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eieio.el: Use lexical-binding drop non-GV fallback.
+ (defclass, defgeneric, defmethod): Add doc-string position.
+ (with-slots): Require cl-lib.
+
+ * emacs-lisp/eieio-core.el: Use lexical-binding and cl-lib.
+ (list-of): New type.
+ (eieio--typep): Remove.
+ (eieio-perform-slot-validation): Use cl-typep instead.
+
+ * emacs-lisp/eieio-base.el: Use lexical-binding and cl-lib.
+
+ * emacs-lisp/cl-macs.el (cl--make-type-test): Avoid ((lambda ..) ..).
+
+2014-10-16 Alan Mackenzie <acm@muc.de>
+
+ Trigger showing when point is in the "periphery" of a line or just
+ inside a paren.
+ * paren.el (show-paren-style, show-paren-delay)
+ (show-paren-priority, show-paren-ring-bell-on-mismatch):
+ Remove superfluous :group specifications.
+ (show-paren-when-point-inside-paren)
+ (show-paren-when-point-in-periphery): New customizable variables.
+ (show-paren-highlight-openparen): Make into a defcustom.
+ (show-paren--unescaped-p, show-paren--categorize-paren)
+ (show-paren--locate-near-paren): New defuns.
+ (show-paren--default): Refaactor and trigger on more paren
+ positions.
+ (show-paren-function): Small consequential changes.
+
+2014-10-16 Tom Tromey <tom@tromey.com>
-2014-10-15 Alan Mackenzie <acm@muc.de>
+ * files.el (auto-mode-alist): Use javascript-mode for .jsm
+ (bug #18719).
+
+2014-10-16 Eli Zaretskii <eliz@gnu.org>
+
+ * international/characters.el (bracket-type): Force pre-loading of
+ uni-brackets.el.
+
+2014-10-16 Alan Mackenzie <acm@muc.de>
* cus-edit.el (custom-command-apply): Specify the return value in
the doc string.
2014-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
- * emacs-lisp/lisp.el (lisp--local-variables-1): Handle `quote'.
- Backported (bug#18688).
+ * emacs-lisp/eldoc.el (global-eldoc-mode): Enable by default.
+ Remove incorrect handling of eldoc-print-after-edit.
+ (eldoc-message-commands, eldoc-last-data): Use defvar.
+ * loadup.el (emacs-lisp/eldoc): Load it.
+
+ * progmodes/m4-mode.el (m4-syntax-propertize): New var.
+ (m4-mode): Use it.
+ (m4--quoted-p): New function.
+ (m4-font-lock-keywords): Don't handle #..\n comments any more.
+ (m4-mode-syntax-table): Use punctuation syntax (according to m4 manual)
+ for most special characters.
-2014-10-14 Eli Zaretskii <eliz@gnu.org>
+ * progmodes/compile.el (compilation--previous-directory): Simplify.
+ (compilation-next-error): Ensure the parse before we look at
+ compilation-message property.
+
+2014-10-15 Eli Zaretskii <eliz@gnu.org>
+
+ * simple.el (what-cursor-position):
+ * descr-text.el (describe-char): Update to support the new bidi
+ characters.
* emacs-lisp/tabulated-list.el (tabulated-list-mode):
Force bidi-paragraph-direction to 'left-to-right'. This fixes
buffer-menu display when the first buffer happens to start with
R2L letter.
-2014-10-13 Glenn Morris <rgm@gnu.org>
+2014-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/elisp-mode.el (elisp--local-variables-1):
+ Handle quoted expressions (bug#18688).
- * emacs-lisp/authors.el (authors-aliases, authors-fixed-case)
- (authors-obsolete-files-regexps): Additions.
- (authors-no-scan-regexps): New constant.
- (authors-no-scan-file-p): New function.
- (authors): Respect authors-no-scan-file-p.
+2014-10-14 Jérémy Compostella <jeremy.compostella@intel.com>
+ Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
+ Reduce the amount of set environment variable commands.
2014-10-12 Fabián Ezequiel Gallina <fgallina@gnu.org>
- Fix import completion. (Bug#18582)
- * progmodes/python.el (python-shell-completion-get-completions):
- Fix import case regexp.
+ Fix import completion. (Bug#18582)
+ * progmodes/python.el (python-shell-completion-get-completions):
+ Fix import case regexp.
+
+2014-10-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/bat-mode.el (bat-font-lock-keywords): Fix \\<_ typo
+ (bug#18622). Reported by Arni Magnusson <arnima@hafro.is>.
+ * progmodes/prolog.el (prolog-electric--underscore): Same.
+
+2014-10-12 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-get-remote-id): Check also for "gid".
+
+2014-10-11 Jan Djärv <jan.h.d@swipnet.se>
+
+ * cus-start.el (all): Add missing ns and boolean to
+ ns-use-fullscreen-animation.
+
+2014-10-11 Leo Liu <sdl.web@gmail.com>
+
+ * progmodes/cfengine.el (cfengine3-defuns, cfengine3-vartypes):
+ Use strings.
+ (cfengine3-create-imenu-index): New function.
+ (cfengine3-mode): Use it for `imenu-create-index-function'.
+ (cfengine-auto-mode): Improve and prefer cfengine3-mode when
+ buffer is empty.
+
+2014-10-11 Jan Djärv <jan.h.d@swipnet.se>
+
+ * cus-start.el (all): Add ns-use-fullscreen-animation.
+
+2014-10-11 Glenn Morris <rgm@gnu.org>
+
+ * calendar/diary-lib.el (diary-display-function):
+ Drop support for deprecated nil and list forms.
+ (diary-list-entries): Update for the above.
+ * calendar/cal-x.el (calendar-dedicate-diary): Simplify accordingly.
+
+2014-10-10 Leo Liu <sdl.web@gmail.com>
+
+ * window.el (temp-buffer-window-show): Make BUFFER a required arg.
+ (Bug#18656)
2014-10-10 Stefan Monnier <monnier@iro.umontreal.ca>
- * progmodes/bat-mode.el (bat-font-lock-keywords): Fix \\<_ typo
- (bug#18622). Reported by Arni Magnusson <arnima@hafro.is>.
- * progmodes/prolog.el (prolog-electric--underscore): Same.
+ * select.el (gui-selection-exists-p-alist): New method.
+ * menu-bar.el (menu-bar-edit-menu, clipboard-yank):
+ * simple.el (deactivate-mark): Use it.
+ * term/x-win.el (gui-selection-exists-p):
+ * term/w32-win.el (gui-selection-exists-p):
+ * term/pc-win.el (gui-selection-exists-p):
+ * term/ns-win.el (gui-selection-exists-p): Provide a backend instance.
+
+2014-10-10 Glenn Morris <rgm@gnu.org>
+
+ * info.el (Info-fontify-maximum-menu-size): Bump to 400k. (Bug#16227)
+ Fix :type. Allow t to mean no limit.
+ (Info-fontify-node): Handle Info-fontify-maximum-menu-size = t.
2014-10-09 Glenn Morris <rgm@gnu.org>
* frame.el (display-monitor-attributes-list): Doc tweaks.
-2014-10-08 Eli Zaretskii <eliz@gnu.org>
+2014-10-09 Eli Zaretskii <eliz@gnu.org>
* faces.el (display-grayscale-p): Mention in the doc string that
the argument can be either a display name or a frame.
be either a display name or a frame. Improve the docs of the
monitor attributes. (Bug#18636)
-2014-10-06 Martin Rudalics <rudalics@gmx.at>
+2014-10-09 Martin Rudalics <rudalics@gmx.at>
* term.el (term-window-width): Subtract 1 from the width when
any fringe has zero width, not just the right fringe. (Bug#18601)
+2014-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * frame.el (make-frame): Use t rather than nil for `w' (bug#18653).
+
+2014-10-08 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/cl-extra.el (cl-fresh-line): New function.
+
+2014-10-08 Glenn Morris <rgm@gnu.org>
+
+ * calendar/cal-x.el (calendar-dedicate-diary):
+ Drop support for recently deleted aliases.
+
+2014-10-08 Leo Liu <sdl.web@gmail.com>
+
+ * progmodes/cfengine.el (cfengine3-make-syntax-cache):
+ Always return a syntax. Replace call-process-shell-command with
+ process-file. Ensure cfengine-mode-syntax-functions-regex is
+ always set. Ensure cache when cfengine-cf-promises fails.
+ (Bug#18620)
+
+2014-10-07 Glenn Morris <rgm@gnu.org>
+
+ * font-lock.el (font-lock-fontify-buffer): Fix interactive-only markup.
+
+2014-10-07 Wilson Snyder <wsnyder@wsnyder.org>
+
+ Sync with upstream verilog-mode revision c075a492.
+ * progmodes/verilog-mode.el (verilog-mode-version): Bump.
+ (verilog-menu): Add AUTOINSERTLAST.
+ (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
+ is nil, fix indenting initial/final to match always statements, bug825.
+ Reported by Tim Clapp.
+ (verilog-extended-complete-re): Fix indentation of DPI-C imports,
+ bug557. Reported by ZeDong Mao and Jason Forkey.
+ (verilog-read-decls): Fix parsing typed interfaces.
+ Fix AUTOINOUTMODPORT missing types. Reported by Stephan Bourduas.
+ (verilog-auto-arg-ports): Fix verilog-auto-arg-format single.
+ (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY, bug793.
+ Reported by Pierre-David Pfister.
+ (verilog-auto-insert-lisp): Doc fix.
+ (verilog-auto-insert-last, verilog-auto): Add AUTOINSERTLAST to
+ allow post-AUTO user fixups, bug826. Reported by Dennis Muhlestein.
+ (verilog-sk-ovm-class, verilog-sk-uvm-object)
+ (verilog-sk-uvm-component): Fix missing string keyword in class
+ skeletons, bug824. Reported by eldad faruhi.
+
+2014-10-06 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * term/w32-win.el: Move all code from 32-common-fns.el here.
+ (gui-select-text, gui-selection-value): Use w32 handlers in the w32
+ console as well (bug#18629).
+ * w32-common-fns.el: Remove.
+ * loadup.el: Don't load w32-common-fns.el.
+ * w32-fns.elc: Don't require w32-common-fns.
+
+ * icomplete.el: Move Iswitchb autoload here. Much simpler.
+ * obsolete/iswitchb.el (iswitchb-mode): Use normal autoload cookie.
+ Remove redundant obsolescence thingy.
+ * loadup.el: Don't load obsolete/loaddefs.el.
+ * Makefile.in (obsolete-autoloads): Remove.
+ (AUTOGENEL): Remove obsolete/loaddefs.el.
+
+2014-10-06 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (obsolete-autoloads): Write to a separate file,
+ to workaround autoloads bug. (Bug#17407)
+ (AUTOGENEL): Add obsolete/loaddefs.el.
+ * loadup.el: Load obsolete/loaddefs.el if present.
+ * subr.el (do-after-load-evaluation):
+ Don't warn about obsolete/loaddefs.el.
+
+ * menu-bar.el (menu-bar-games-menu): Remove landmark.
+ It has zero relationship to a game.
+
+2014-10-06 Leo Liu <sdl.web@gmail.com>
+
+ * imenu.el (imenu): Re-write for clarity.
+
+2014-10-06 Glenn Morris <rgm@gnu.org>
+
+ Remove calendar code obsolete since at least version 23.1.
+ * calendar/cal-bahai.el (calendar-absolute-from-bahai)
+ (calendar-print-bahai-date, calendar-bahai-prompt-for-date)
+ (calendar-goto-bahai-date, list-bahai-diary-entries)
+ (mark-bahai-calendar-date-pattern, mark-bahai-diary-entries)
+ (insert-bahai-diary-entry, insert-monthly-bahai-diary-entry)
+ (insert-yearly-bahai-diary-entry):
+ * calendar/cal-china.el (chinese-calendar-time-zone)
+ (chinese-calendar-location-name)
+ (chinese-calendar-daylight-time-offset)
+ (chinese-calendar-standard-time-zone-name)
+ (chinese-calendar-daylight-time-zone-name)
+ (chinese-calendar-daylight-savings-starts)
+ (chinese-calendar-daylight-savings-ends)
+ (chinese-calendar-daylight-savings-starts-time)
+ (chinese-calendar-daylight-savings-ends-time)
+ (chinese-calendar-celestial-stem)
+ (chinese-calendar-terrestrial-branch)
+ (calendar-absolute-from-chinese, calendar-print-chinese-date)
+ (calendar-goto-chinese-date):
+ * calendar/cal-coptic.el (calendar-absolute-from-coptic)
+ (calendar-print-coptic-date, coptic-prompt-for-date)
+ (calendar-goto-coptic-date, calendar-absolute-from-ethiopic)
+ (calendar-print-ethiopic-date, calendar-goto-ethiopic-date):
+ * calendar/cal-french.el (calendar-absolute-from-french)
+ (calendar-print-french-date, calendar-goto-french-date):
+ * calendar/cal-hebrew.el (diary-sabbath-candles-minutes)
+ (calendar-absolute-from-hebrew, calendar-print-hebrew-date)
+ (hebrew-calendar-yahrzeit, calendar-goto-hebrew-date)
+ (holiday-rosh-hashanah-etc, holiday-hanukkah)
+ (holiday-passover-etc, holiday-tisha-b-av-etc)
+ (list-hebrew-diary-entries, mark-hebrew-calendar-date-pattern)
+ (mark-hebrew-diary-entries, insert-hebrew-diary-entry)
+ (insert-monthly-hebrew-diary-entry)
+ (insert-yearly-hebrew-diary-entry, list-yahrzeit-dates)
+ (diary-omer, diary-yahrzeit, diary-rosh-hodesh, diary-parasha)
+ (diary-sabbath-candles):
+ * calendar/cal-islam.el (calendar-absolute-from-islamic)
+ (calendar-print-islamic-date, calendar-goto-islamic-date)
+ (list-islamic-diary-entries, mark-islamic-calendar-date-pattern)
+ (mark-islamic-diary-entries, insert-islamic-diary-entry)
+ (insert-monthly-islamic-diary-entry)
+ (insert-yearly-islamic-diary-entry):
+ * calendar/cal-iso.el (calendar-absolute-from-iso)
+ (calendar-print-iso-date, calendar-iso-read-args)
+ (calendar-goto-iso-date, calendar-goto-iso-week):
+ * calendar/cal-julian.el (calendar-absolute-from-julian)
+ (calendar-print-julian-date, calendar-goto-julian-date)
+ (calendar-absolute-from-astro, calendar-print-astro-day-number)
+ (calendar-goto-astro-day-number):
+ * calendar/cal-mayan.el (calendar-print-mayan-date)
+ (calendar-next-haab-date, calendar-previous-haab-date)
+ (calendar-next-tzolkin-date, calendar-previous-tzolkin-date)
+ (calendar-next-calendar-round-date)
+ (calendar-previous-calendar-round-date)
+ (calendar-absolute-from-mayan-long-count)
+ (calendar-goto-mayan-long-count-date):
+ * calendar/cal-move.el (scroll-calendar-left)
+ (scroll-calendar-right, scroll-calendar-left-three-months)
+ (scroll-calendar-right-three-months):
+ * calendar/cal-persia.el (calendar-absolute-from-persian)
+ (calendar-print-persian-date, persian-prompt-for-date)
+ (calendar-goto-persian-date):
+ * calendar/cal-x.el (calendar-after-frame-setup-hooks):
+ * calendar/calendar.el (view-diary-entries-initially)
+ (mark-diary-entries-in-calendar, calendar-today-face)
+ (diary-face, holiday-face, view-calendar-holidays-initially)
+ (mark-holidays-in-calendar, initial-calendar-window-hook)
+ (today-visible-calendar-hook, today-invisible-calendar-hook)
+ (hebrew-diary-entry-symbol, islamic-diary-entry-symbol)
+ (bahai-diary-entry-symbol, american-date-diary-pattern)
+ (european-date-diary-pattern, european-calendar-display-form)
+ (american-calendar-display-form, holidays-in-diary-buffer)
+ (all-hebrew-calendar-holidays, all-christian-calendar-holidays)
+ (all-islamic-calendar-holidays, all-bahai-calendar-holidays)
+ (fancy-diary-buffer, increment-calendar-month)
+ (extract-calendar-month, extract-calendar-day)
+ (extract-calendar-year, exit-calendar, calendar-date-is-legal-p)
+ (mark-visible-calendar-date, calendar-version):
+ * calendar/diary-lib.el (diary-button-face, sexp-diary-entry-symbol)
+ (diary-display-hook, list-diary-entries-hook)
+ (mark-diary-entries-hook, nongregorian-diary-listing-hook)
+ (nongregorian-diary-marking-hook, print-diary-entries-hook)
+ (abbreviated-calendar-year, number-of-diary-entries)
+ (view-other-diary-entries, add-to-diary-list)
+ (include-other-diary-files, simple-diary-display)
+ (fancy-diary-display, print-diary-entries, mark-diary-entries)
+ (mark-sexp-diary-entries, mark-included-diary-files)
+ (mark-calendar-days-named, mark-calendar-month)
+ (mark-calendar-date-pattern, sort-diary-entries)
+ (list-sexp-diary-entries, make-diary-entry, insert-diary-entry)
+ (insert-weekly-diary-entry, insert-monthly-diary-entry)
+ (insert-yearly-diary-entry, insert-anniversary-diary-entry)
+ (insert-block-diary-entry, insert-cyclic-diary-entry)
+ (fancy-diary-font-lock-keywords, fancy-diary-display-mode):
+ * calendar/holidays.el (general-holidays, oriental-holidays)
+ (local-holidays, other-holidays, hebrew-holidays)
+ (christian-holidays, islamic-holidays, bahai-holidays)
+ (solar-holidays, list-calendar-holidays)
+ (check-calendar-holidays, mark-calendar-holidays)
+ (filter-visible-calendar-holidays):
+ * calendar/lunar.el (calendar-phases-of-moon, phases-of-moon)
+ (diary-phases-of-moon): Remove obsolete aliases.
+ * calendar/cal-menu.el (cal-menu-load-hook): Remove obsolete hook.
+ * calendar/cal-x.el (calendar-one-frame-setup)
+ (calendar-only-one-frame-setup, calendar-two-frame-setup):
+ Remove obsolete functions.
+ (cal-x-load-hook): Remove obsolete hook.
+ * calendar/calendar.el (european-calendar-style):
+ Remove obsolete variable.
+ (calendar-date-style): No longer consult european-calendar-style.
+ * calendar/calendar.el (european-calendar, american-calendar):
+ Remove obsolete commands.
+ * calendar/calendar.el (calendar-for-loop): Remove obsolete macro.
+ * calendar/diary-lib.el (diary-face): Remove obsolete variable.
+ (diary-font-lock-date-forms, diary-fancy-font-lock-keywords):
+ Use the face `diary' instead of the variable `diary-face'.
+ * calendar/holidays.el (hebrew-holidays-1, hebrew-holidays-2)
+ (hebrew-holidays-3, hebrew-holidays-4): Remove obsolete variables.
+ * calendar/icalendar.el (icalendar--date-style): Remove function.
+ Replace all uses with calendar-date-style.
+ * textmodes/remember.el (calendar-date-style): Declare.
+ (remember-diary-convert-entry):
+ No longer consult european-calendar-style.
+
2014-10-05 Leo Liu <sdl.web@gmail.com>
* imenu.el (imenu-default-goto-function): Fix typo.
+2014-10-04 Thomas Fitzsimmons <fitzsim@fitzsim.org>
+
+ * net/ntlm.el (ntlm-build-auth-request):
+ Add NTLM2 Session support. (Bug#15603)
+
+2014-10-04 Glenn Morris <rgm@gnu.org>
+
+ * apropos.el (apropos-symbols-internal):
+ Avoid error with non-symbol properties. (Bug#18337#16)
+
+ * startup.el (command-line):
+ Handle altered user-emacs-directory in load-path warning. (Bug#18512)
+
+2014-10-04 Martin Rudalics <rudalics@gmx.at>
+
+ * window.el (window-full-height-p): Make it behave correctly for
+ minibuffer window.
+ (window-current-scroll-bars): Fix code.
+ (fit-frame-to-buffer): Use window-scroll-bar-height instead of
+ window-scroll-bars.
+ * frame.el (frame-current-scroll-bars): Fix doc-string.
+ * scroll-bar.el (toggle-horizontal-scroll-bar): New command.
+
+2014-10-04 Mark Oteiza <mvoteiza@udel.edu> (tiny change)
+
+ * files.el (auto-mode-alist): Use sh-mode for .zsh files. (Bug#18488)
+
2014-10-04 Glenn Morris <rgm@gnu.org>
* frame.el (frame-monitor-attributes)
(display-monitor-attributes-list): Doc fixes.
+2014-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Merge trivially safe differences from standalone CC-mode.
+ * progmodes/cc-mode.el (c-initialize-cc-mode): Don't quote a symbol
+ just to then pass it to `symbol-value'.
+ (prog-mode): Provide fallback definition, if needed.
+ * progmodes/cc-langs.el: Always load `cl'. Don't load `cl-lib'.
+ Remove "cl-" prefix accordingly.
+ * progmodes/cc-fonts.el (c-font-lock-invalid-string): Use integerp or
+ characterp depending on the type of characters.
+ (c-font-lock-enum-tail): Remove unused var `start'.
+ * progmodes/cc-engine.el: Load CL at compile-time.
+ (c-declare-lang-variables): Use mapcan.
+ (c-append-to-state-cache): Remove unused var `ce+1'.
+ (c-parse-state-state): Make buffer-local.
+ (c-ssb-lit-begin): Remove unused var `pps-end-pos'.
+ (c-just-after-func-arglist-p): Remove unused var `end'.
+ * progmodes/cc-defs.el: Load cc-fix if delete-dups is undefined.
+ (c-<-as-paren-syntax, c->-as-paren-syntax): Move definition earlier.
+ (c-make-keywords-re): Use delete-dups.
+ (c-get-current-file): Avoid file-name-base.
+ * progmodes/cc-cmds.el (c-electric-lt-gt): Remove unused var
+ `close-paren-inserted'.
+ * progmodes/cc-awk.el (c-forward-sws): Remove unused declaration.
+
+ * progmodes/python.el: Avoid building unneeded markers.
+ (python-font-lock-keywords, python-indent-dedent-line)
+ (python-fill-paren, python-shell-completion-complete-or-indent):
+ Prefer point over point-marker.
+ (inferior-python-mode): Remove redundant completion settings.
+
2014-10-03 Dmitry Gutov <dgutov@yandex.ru>
* vc/vc-svn.el (vc-svn-ignore-completion-table): Implement.
similarly to Rogers's 2010-06-16 change for the remote case
(bug#18605).
-2014-10-01 Glenn Morris <rgm@gnu.org>
+2014-10-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ New gui-selection-value consolidating x-selection-value.
+ * select.el (gui-selection-value-alist): New method.
+ (gui-selection-value): New function.
+ (x-selection-value): Make it an obsolete alias.
+ * simple.el (interprogram-paste-function): Default to
+ gui-selection-value.
+ * w32-common-fns.el (w32-get-selection-value): Simplify.
+ (x-selection-value): Remove alias.
+ (interprogram-paste-function): Don't set.
+ (gui-selection-value): Define for w32.
+ * term/x-win.el (gui-selection-value): Define for x.
+ (x--selection-value): Rename from x--selection-value.
+ (interprogram-paste-function): Don't set.
+ * term/pc-win.el (w16-get-selection-value): Simplify.
+ (msdos-initialize-window-system): Don't set
+ interprogram-paste-function.
+ (gui-selection-value): Define for pc.
+ * term/ns-win.el (x-selection-value): Remove.
+ (gui-selection-value): Define for ns, instead.
+ * term/common-win.el (x-setup-function-keys): Don't set
+ interprogram-paste-function.
+ * obsolete/mouse-sel.el (mouse-sel-get-selection-function):
+ Use gui-selection-value.
+
+2014-10-02 David Raynes <rayners@gmail.com> (tiny change)
+
+ * term/ns-win.el: Add functions to ns frame, not x frame (bug#18614).
+
+2014-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * obsolete/lucid.el (read-number): Remove, redundant.
+ * obsolete/cl-compat.el (cl-floor, cl-ceiling, cl-round, cl-truncate):
+ Remove, broken.
+
+2014-10-02 Glenn Morris <rgm@gnu.org>
* emacs-lisp/package.el (package-import-keyring):
Create gnupg directory private. (Bug#17625#155)
-2014-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
* progmodes/python.el (python-shell-completion-get-completions):
Use python-shell--prompt-calculated-input-regexp from the
process buffer (bug#18582).
Don't assume that `line' comes from the process buffer.
+2014-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * frame.el: Use lexical-binding (bug#18598).
+ (make-frame): Use t rather than nil for tty's window-system.
+ * startup.el (command-line): Use gui-method.
+
+ Consolidate management/ownership of selections.
+ * select.el (gui-get-selection-alist): New method.
+ (gui-get-selection): Use it. Rename from x-get-selection.
+ (x-get-selection): Define as obsolete alias.
+ (x-get-clipboard): Mark obsolete.
+ (gui-get-primary-selection): New function.
+ (x-get-selection-value): Mark obsolete.
+ (gui-own-selection-alist, gui-disown-selection-alist)
+ (gui-selection-owner-p-alist): New methods.
+ (gui-set-selection): Use them. Rename from x-set-selection.
+ (x-set-selection): Define as obsolete alias.
+ (gui--valid-simple-selection-p): Rename from
+ x-valid-simple-selection-p.
+ * w32-common-fns.el (gui-own-selection, gui-disown-selection)
+ (gui-selection-owner-p, gui-get-selection): Define for w32.
+ (w32-get-selection-value): Rename from x-get-selection-value.
+ Use the new gui-last-selected-text.
+ * term/x-win.el (x-get-selection-value): Remove.
+ (x-clipboard-yank): Declare obsolete.
+ (gui-own-selection, gui-disown-selection, gui-get-selection)
+ (gui-selection-owner-p): Define for x.
+ * term/w32-win.el (w32-win-suspend-error): Rename from
+ x-win-suspend-error.
+ * term/pc-win.el (w16-get-selection-value): Rename from
+ x-get-selection-value.
+ (w16-selection-owner-p): Rename from x-selection-owner-p.
+ (gui-own-selection, gui-disown-selection, gui-get-selection)
+ (gui-selection-owner-p): Define for pc.
+ (w16--select-text): New function.
+ * term/ns-win.el (gui-own-selection, gui-disown-selection)
+ (gui-get-selection, gui-selection-owner-p): Define for ns.
+ * term.el (term-mouse-paste):
+ * mouse.el (mouse-yank-primary): Use gui-get-primary-selection.
+
+2014-10-02 H. Dieter Wilhelm <dieter@duenenhof-wilhelm.de>
+
+ * calc/calc-help.el (calc-describe-thing): Quote strings
+ which could look like regexps.
+
+2014-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Consolidate x-select-text.
+ * frame.el (gui-method, gui-method-define, gui-method-declare)
+ (gui-call): New macros.
+ (gui-method--name): New function.
+ (frame-creation-function-alist): Use gui-method-declare.
+ (make-frame): Use gui-method.
+ * select.el (gui-select-enable-clipboard): Rename from
+ x-select-enable-clipboard and move here.
+ (x-select-enable-clipboard): Define as obsolete alias.
+ (gui-last-selected-text): New var, to replace x-last-selected-text.
+ (gui-select-text): New GUI method.
+ (gui-select-text): New function.
+ (x-select-text): Define as obsolete alias.
+ * term/common-win.el (x-select-enable-clipboard, x-select-text):
+ Move to select.el.
+ * simple.el (interprogram-cut-function): Change default to
+ x-select-text.
+ (interprogram-paste-function): Change default to `ignore'.
+ * w32-common-fns.el (interprogram-cut-function): Don't modify.
+ * term/x-win.el (interprogram-cut-function): Don't modify.
+ (gui-select-text): Add method for x.
+ * term/w32-win.el (gui-select-text): Add method for w32.
+ * term/pc-win.el (x-last-selected-text): Remove, use
+ gui-last-selected-text instead.
+ (msdos-initialize-window-system): Don't set interprogram-cut-function.
+ (gui-select-text): Add method for pc.
+ * term/ns-win.el (ns-last-selected-text): Remove, use
+ gui-last-selected-text instead.
+ (gui-select-text): Add method for ns.
+ (x-setup-function-keys): Don't change interprogram-cut-function.
+ * loadup.el ("startup"): Load after "frame".
+ * subr.el (package--builtin-versions, package--description-file):
+ Move from startup.el.
+ * startup.el (package--builtin-versions, package--description-file):
+ Move to subr.el.
+ (handle-args-function-alist, window-system-initialization-alist):
+ Use gui-method-declare.
+ (command-line): Use gui-method.
+
+2014-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (alist-get): New accessor.
+ * emacs-lisp/gv.el (alist-get): Provide expander.
+ * winner.el (winner-remember):
+ * tempo.el (tempo-use-tag-list):
+ * progmodes/gud.el (minor-mode-map-alist):
+ * international/mule-cmds.el (define-char-code-property):
+ * frameset.el (frameset-filter-params):
+ * files.el (dir-locals-set-class-variables):
+ * register.el (get-register, set-register):
+ * calc/calc-yank.el (calc-set-register): Use it.
+ * ps-print.el (ps-get, ps-put, ps-del): Mark as obsolete.
+ * tooltip.el (tooltip-set-param): Mark as obsolete.
+ (tooltip-show): Use alist-get instead.
+ * ses.el (ses--alist-get): Remove. Use alist-get instead.
+
+2014-10-01 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-backend.el: Remove Time-stamp. Rename variable
+ `newsticker--download-logos' to `newsticker-download-logos' and
+ make it customizable.
+ (newsticker--sentinel-work): Move xml-workarounds to function
+ `newsticker--do-xml-workarounds', call unless libxml-parser is
+ used. Allow single quote in regexp for encoding.
+ Use libxml-parser if available, else fall back to `xml-parse-region'.
+ Take care of possibly missing namespace prefixes (like "RDF"
+ instead of "rdf:RDF") when checking xml nodes and attributes (as
+ libxml correctly removes the prefixes). Always use Atom 1.0 as
+ fallback feed type. Rename `newsticker--download-logos' to
+ `newsticker-download-logos'
+ (newsticker--unxml, newsticker--unxml-node)
+ (newsticker--unxml-attribute): New.
+ (newsticker--parse-atom-1.0): Call `unxml' in case that embedded
+ HTML code has become part of the xml parse tree.
+ (newsticker--parse-rss-1.0, newsticker--parse-rss-2.0): Take care
+ of possibly missing namespace prefixes.
+ (newsticker--parse-generic-items): Code formatting. Typo.
+ (newsticker--images-dir): Add trailing slash.
+ (newsticker--image-get): Fix error message.
+
+ * net/newst-plainview.el: Remove Time-stamp.
+
+ * net/newst-reader.el: Remove Time-stamp.
+ (newsticker-download-logos): Rename variable
+ `newsticker--download-logos' to `newsticker-download-logos' and
+ make it customizable.
+ (newsticker--print-extra-elements): Add optional parameter
+ 'htmlish for using html markup. Amend list of ignored elements.
+ (newsticker--do-print-extra-element): Add parameter 'htmlish for
+ using html markup.
+
+ * net/newst-ticker.el: Remove Time-stamp.
+
+ * net/newst-treeview.el (newsticker--treeview-item-show): Use html
+ for formatting extra elements.
+
+ * net/newsticker.el: Remove Time-stamp, Version.
+ (newsticker-version): Make obsolete.
+
2014-09-30 Leonardo Nobrega <leonobr@gmail.com> (tiny change)
* progmodes/python.el (python-fill-paren): Don't inf-loop at EOB
(bug#18462).
-2014-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/package.el (package-check-signature): Default to nil if
GPG is not available.
(package-refresh-contents): Don't mess with the keyring if we won't
check the signatures anyway.
-2014-09-18 Kan-Ru Chen <kanru@kanru.info>
+2014-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * ses.el (ses--row, ses--col): New dyn-scoped vars, to replace row&col.
+ (ses-center, ses-center-span): Use them.
+ (ses-print-cell): Bind them while calling the printer.
+ (row, col, maxrow, maxcol): Don't declare as dynamically scoped.
+ (ses-dorange): Revert last change.
+ (ses-calculate-cell): Don't bind row&col dynamically while evaluating
+ the formula.
+ (ses-set-cell): Avoid `eval'.
+ (ses--time-check): Rename it from ses-time-check and turn it into
+ a macro.
+
+ * ses.el (ses-setup): Don't assume modifying the iteration var of
+ dotimes affects the iteration (bug#18191).
+
+2014-09-30 Vincent Belaïche <vincentb1@users.sourceforge.net>
+
+ * ses.el (ses-calculate-cell): Bind row and col dynamically to
+ their values with 'cl-progv'.
+ (ses-dorange): Bind row, col, maxrow and maxcol dynamically to
+ their values with 'cl-progv', also use non-interned symbols for
+ row, minrow, maxrow, mincol and maxcol.
+ (maxrow maxcol): New defvar, to make the compiler happy.
+
+2014-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * minibuffer.el (completion-at-point): Emit warning for ill-behaved
+ completion functions.
+
+2014-09-29 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * ses.el (ses--letref): Quote value before it gets re-evaluated.
+
+2014-09-28 Thien-Thi Nguyen <ttn@gnu.org>
+
+ Font-lock `cl-flet*', too.
+ * emacs-lisp/lisp-mode.el (lisp-cl-font-lock-keywords-2):
+ Add "flet*" to intermediate var `cl-lib-kw'.
+
+2014-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * epg-config.el (epg-gpg-program): Use the plain program names rather
+ than their absolute file name.
+
+ * subr.el (track-mouse): New macro.
+ * emacs-lisp/cconv.el (cconv-convert, cconv-analyse-form):
+ Remove track-mouse case.
+ * emacs-lisp/bytecomp.el (byte-compile-track-mouse): Remove.
+
+2014-09-27 Leo Liu <sdl.web@gmail.com>
+
+ * progmodes/elisp-mode.el (elisp--eldoc-last-data): Use defvar.
+
+ * emacs-lisp/eldoc.el (eldoc-mode): Fix thinko.
+
+2014-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/pcase.el (pcase--split-match, pcase--app-subst-match):
+ Handle the case where `match' is :pcase--succeed or :pcase--fail
+ (bug#18554).
+
+ Introduce global-eldoc-mode. Move Elisp-specific code to elisp-mode.el.
+ * emacs-lisp/eldoc.el (global-eldoc-mode): New minor mode.
+ (eldoc-schedule-timer): Obey it.
+ (eldoc-documentation-function): Default to nil.
+ (eldoc-mode): Don't enable if eldoc-documentation-function is not set.
+ (eldoc-documentation-function-default, eldoc-get-fnsym-args-string)
+ (eldoc-highlight-function-argument, eldoc-get-var-docstring)
+ (eldoc-last-data-store, eldoc-docstring-first-line)
+ (eldoc-docstring-format-sym-doc, eldoc-fnsym-in-current-sexp)
+ (eldoc-beginning-of-sexp, eldoc-current-symbol)
+ (eldoc-function-argstring): Move to elisp-mode.el.
+ (eldoc-symbol-function): Remove, unused.
+ * progmodes/elisp-mode.el: New file. Rename all "eldoc-*" to "elisp--*".
+ (elisp-completion-at-point): Rename from lisp-completion-at-point.
+ (elisp--preceding-sexp): Rename from preceding-sexp.
+ * loadup.el: Load new file progmodes/elisp-mode.
+ * ielm.el (inferior-emacs-lisp-mode): Set eldoc-documentation-function.
+ * emacs-lisp/lisp.el (lisp--local-variables-1, lisp--local-variables)
+ (lisp--local-variables-completion-table, lisp--expect-function-p)
+ (lisp--form-quoted-p, lisp--company-doc-buffer)
+ (lisp--company-doc-string, lisp--company-location)
+ (lisp-completion-at-point): Move to elisp-mode.el.
+ * emacs-lisp/lisp-mode.el (lisp--mode-syntax-table): New syntax-table,
+ extracted from emacs-lisp-mode-syntax-table.
+ (emacs-lisp-mode-abbrev-table, emacs-lisp-mode-syntax-table): Move to
+ elisp-mode.el.
+ (lisp-imenu-generic-expression): Add comments to document what comes
+ from which Lisp dialect.
+ (emacs-lisp-mode-map, emacs-lisp-byte-compile)
+ (emacs-lisp-byte-compile-and-load, emacs-lisp-mode-hook)
+ (emacs-lisp-mode, emacs-list-byte-code-comment-re)
+ (emacs-lisp-byte-code-comment)
+ (emacs-lisp-byte-code-syntax-propertize, emacs-lisp-byte-code-mode)
+ (lisp-interaction-mode-map, lisp-interaction-mode)
+ (eval-print-last-sexp, last-sexp-setup-props)
+ (last-sexp-toggle-display, prin1-char, preceding-sexp)
+ (eval-last-sexp-1, eval-last-sexp-print-value)
+ (eval-last-sexp-fake-value, eval-sexp-add-defvars, eval-last-sexp)
+ (eval-defun-1, eval-defun-2, eval-defun): Move to elisp-mode.el.
+
+2014-09-26 Paul Eggert <eggert@cs.ucla.edu>
+
+ * progmodes/grep.el (grep-regexp-alist): Use more-accurate regexp.
+ Do not match file names that end in '/', as they cannot be 'grep'
+ hits nowadays. This prevents confusion when 'grep -r' reports a
+ match in a file whose basename is ':12345:'. Conversely, do not
+ require exactly the same sequence of spaces and tabs after both
+ colons, and allow spaces or tabs before the second colon, as per
+ the POSIX spec for 'grep' output.
+
+2014-09-26 Leo Liu <sdl.web@gmail.com>
+
+ Add cl-parse-integer based on parse-integer (Bug#18557)
+ * calendar/parse-time.el (parse-time-digits): Remove.
+ (digit-char-p, parse-integer) Moved to cl-lib.el.
+ (parse-time-tokenize, parse-time-rules, parse-time-string):
+ Use cl-parse-integer.
+
+ * emacs-lisp/cl-extra.el (cl-parse-integer): New function.
+
+ * emacs-lisp/cl-lib.el (cl-digit-char-table): New var.
+ (cl-digit-char-p): New function.
+
+2014-09-25 Juri Linkov <juri@jurta.org>
+
+ * vc/add-log.el (change-log-next-buffer): Don't create an empty
+ buffer "ChangeLog" when the current buffer doesn't match ChangeLog.[0-9].
+ Return the current buffer if no files match the default pattern
+ ChangeLog.[0-9]. Signal "end of multi" when file is nil. (Bug#18547)
+
+2014-09-25 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * net/tramp-sh.el (tramp-sh-handle-vc-registered): Don't modify
+ the global vc-handled-backends (bug#18535).
+
+2014-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * find-cmd.el (find-cmd): Use grep's `find-program' (bug#18518).
+ Suggested by <lompik@voila.fr>.
+
+2014-09-24 Ulf Jasper <ulf.jasper@web.de>
+
+ * net/newst-treeview.el (newsticker--treeview-do-get-node-by-id):
+ Rename from `newsticker--treeview-do-get-node'.
+ (newsticker--treeview-get-node-by-id):
+ Rename from `newsticker--treeview-get-node'.
+ (newsticker--treeview-buffer-init)
+ (newsticker--treeview-buffer-init): Disable buffer undo.
+ (newsticker--treeview-unfold-node): Adapt to modified
+ `newsticker--group-find-parent-group'.
+ (newsticker--group-do-find-group):
+ Rename from `newsticker--group-do-find-group-for-feed'.
+ Now works for both, groups and feeds.
+ (newsticker--group-find-parent-group):
+ Rename from `newsticker--group-find-group-for-feed'.
+ Now works for both, groups and feeds.
+ (newsticker--group-do-get-parent-group)
+ (newsticker--group-get-parent-group): Remove.
+ (newsticker-group-add-group): Change interactive prompts.
+ (newsticker-group-add-group): Finally jump to added group.
+ (newsticker-group-delete-group): Finally jump to current feed.
+ (newsticker--group-do-rename-group, newsticker-group-rename-group)
+ (newsticker--get-group-names, newsticker--group-names): New.
+ (newsticker-group-move-feed): Finally jump to moved feed.
+ (newsticker-group-shift-feed-down, newsticker-group-shift-feed-up)
+ (newsticker-group-shift-group-down)
+ (newsticker-group-shift-group-up, newsticker--group-shift): New.
+ (newsticker-treeview-mode-map): New keybindings for new shift commands.
+
+ * net/newst-backend.el (newsticker--item-list)
+ (newsticker--item-position, newsticker--prev-message)
+ (newsticker--scrollable-text): Move to newst-ticker.el.
+
+ * net/newst-ticker.el (newsticker--item-list)
+ (newsticker--item-position, newsticker--prev-message)
+ (newsticker--scrollable-text): Move from newst-backend.el.
+
+2014-09-22 Kan-Ru Chen <kanru@kanru.info>
* window.el (fit-window-to-buffer): When counting buffer width,
count the whole visible buffer. Correctly convert the body-height
to pixel size for window-text-pixel-size (Bug#18498).
-2014-09-14 Glenn Morris <rgm@gnu.org>
+2014-09-22 Sam Steingold <sds@gnu.org>
+
+ * progmodes/sql.el (sql-product-alist): Improve the Vertica entry.
+ (sql-execute): Use `special-mode'.
+
+2014-09-22 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Add pcase-defmacro, as well as `quote' and `app' patterns.
+ * loadup.el: Increase max-lisp-eval-depth when macroexpanding macroexp.
+ * emacs-lisp/pcase.el: Allow (F . ARGS) in `app' patterns.
+ (pcase--funcall, pcase--eval): New functions.
+ (pcase--u1): Use them for guard, pred, let, and app.
+ (\`): Use the new feature to generate better code for vector patterns.
+ * emacs-lisp/pcase.el: Use pcase-defmacro to handle backquote.
+ (pcase--upat): Remove.
+ (pcase--macroexpand): Don't hardcode handling of `.
+ (pcase--split-consp, pcase--split-vector): Remove.
+ (pcase--split-equal): Disregard ` since it's expanded away.
+ (pcase--split-member): Optimize for quote rather than for `.
+ (pcase--split-pred): Optimize for quote rather than for `.
+ (pcase--u1): Remove handling of ` (and of `or' and `and').
+ Quote non-selfquoting values when passing them to `eq'.
+ Drop `app's let-binding if the variable is not used.
+ (pcase--q1): Remove.
+ (`): Define as a pattern macro.
+ * emacs-lisp/pcase.el (pcase--match): New smart-constructor function.
+ (pcase--expand pcase--q1, pcase--app-subst-match): Use it.
+ (pcase--macroexpand): Handle self-quoting patterns here, expand them to
+ quote patterns.
+ (pcase--split-match): Don't hoist or/and here any more.
+ (pcase--split-equal): Optimize quote patterns as well as ` patterns.
+ (pcase--flip): New helper macro.
+ (pcase--u1): Optimize the memq case directly.
+ Don't handle neither self-quoting nor and/or patterns any more.
+ * emacs-lisp/pcase.el (pcase-defmacro): New macro.
+ (pcase--macroexpand): New function.
+ (pcase--expand): Use it.
+ * emacs-lisp/pcase.el (pcase--app-subst-match, pcase--app-subst-rest):
+ New optimization functions.
+ (pcase--u1): Add support for `quote' and `app'.
+ (pcase): Document them in the docstring.
+
+2014-09-22 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Use lexical-bindin in Ibuffer.
+ * ibuffer.el (ibuffer-do-toggle-read-only): `arg' is unused.
+ (ibuffer-compile-format): Simplify.
+ (ibuffer-clear-summary-columns): Simplify.
+ * ibuf-ext.el (ibuffer-generate-filter-groups): Don't use the third
+ elem of dotimes when we don't refer to the iteration var from it.
+ (ibuffer-toggle-sorting-mode): Avoid add-to-list.
+ * ibuf-macs.el (define-ibuffer-column, define-ibuffer-op):
+ Silence byte-compiler.
+
+2014-09-22 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * font-lock.el (font-lock-compile-keyword): Don't confuse a lambda
+ expression for a list.
+
+ * emacs-lisp/bytecomp.el (byte-compile-lambda): Don't add fundoc usage
+ for functions with no arguments.
+
+ * mpc.el (mpc-data-directory): Use locate-user-emacs-file.
+ (mpc-volume-refresh): Make sure the corresponding header-line is updated.
+
+2014-09-17 Tom Willemse <tom@ryuslash.org> (tiny change)
+
+ * simple.el (clone-indirect-buffer): Mention the return value
+ (bug#18478).
+
+ * progmodes/prog-mode.el (prog-mode-hook): Replace reference to
+ Text mode in docstring (bug#18464).
+
+2014-09-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/perl-mode.el (perl-syntax-propertize-function):
+ Accept underscores in identifiers after "sub" (bug#18502).
+
+2014-09-21 Tassilo Horn <tsdh@gnu.org>
+
+ * textmodes/reftex-sel.el (reftex-select-label-mode)
+ (reftex-select-bib-mode, reftex-insert-docstruct): Derive modes
+ from special-mode (instead of fundamental-mode) and propertize
+ with font-lock-face instead of just face. (Bug#18496)
+
+ * textmodes/reftex-toc.el (reftex-toc-mode, reftex-toc): Ditto.
+
+2014-09-19 Dmitry Gutov <dgutov@yandex.ru>
+
+ * emacs-lisp/lisp.el (lisp-completion-at-point): Only calculate
+ `table-etc' when `end' is non-nil.
+ (lisp-completion-at-point): Move `end' back if it's after quote.
+ If in comment or string, only complete when after backquote.
+ (Bug#18265)
+ (lisp-completion-at-point): Don't use
+ `lisp--local-variables-completion-table' in the
+ `lisp--form-quoted-p' case.
+
+2014-09-19 Dmitry Gutov <dgutov@yandex.ru>
+
+ * emacs-lisp/lisp.el (lisp--expect-function-p)
+ (lisp--form-quoted-p): New functions.
+ (lisp-completion-at-point): Use them to see if we're completing a
+ variable reference, a function name, or just any symbol.
+ http://lists.gnu.org/archive/html/emacs-devel/2014-02/msg00229.html
+
+2014-09-18 Ivan Kanis <ivan@kanis.fr>
+
+ * net/shr.el, net/eww.el: Don't override `shr-width', but
+ introduce a new variable `shr-internal-width'. This allows users
+ to specify a width themselves.
+
+2014-09-18 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * image-mode.el (image-toggle-display-image): If we have a
+ `fit-width' or a `fit-height', don't limit the size of the image
+ to the window size, because that doesn't preserve the aspect ratio.
+ * image-mode.el: Move defvars earlier to avoid a byte-compilation
+ warning.
+
+2014-09-17 Reuben Thomas <rrt@sc3d.org>
+
+ * progmodes/js.el: Add interpreter-mode-alist support for various
+ JavaScript interpreters.
+
+2014-09-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ Don't assume 'grep' supports GREP_OPTIONS.
+ The GREP_OPTIONS environment variable is planned to be marked
+ obsolescent in GNU grep, due to problems in its use, so stop
+ relying on it.
+ * progmodes/grep.el (grep-highlight-matches): Document this.
+ (grep-process-setup): Do not set GREP_OPTIONS.
+ (grep-compute-defaults): Use an explicit --color option if supported.
+
+2014-09-16 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * msb.el (msb--make-keymap-menu, msb-menu-bar-update-buffers):
+ Don't add outdated key-shortcut cache (bug#18482).
+
+2014-09-15 Glenn Morris <rgm@gnu.org>
* image.el (image-multi-frame-p): Fix thinko - do not force
a delay if none was specified. (Bug#18334)
-2014-09-12 Kan-Ru Chen <kanru@kanru.info>
+2014-09-15 Kan-Ru Chen <kanru@kanru.info>
+
+ * window.el (fit-window-to-buffer): Doc fix.
+
+2014-09-15 Ivan Shmakov <ivan@siamics.net>
+
+ * desktop.el (desktop-create-buffer): Check that buffers are still live
+ before burying them (bug#18373).
+
+2014-09-15 Glenn Morris <rgm@gnu.org>
+
+ * calendar/diary-lib.el (diary-list-entries):
+ Restore 24.3 display behavior. (Bug#18381)
+
+2014-09-15 Eli Zaretskii <eliz@gnu.org>
+
+ * mouse.el (mouse-drag-line): On text-mode frames, count the mode
+ line and header line as 1 pixel. This fixes the 1-"pixel" (row)
+ discrepancy between window-pixel-edges and mouse events, and
+ avoids moving mode line up when the mouse click is on the modeline
+ and no drag is attempted.
+
+2014-09-14 Daniel Colascione <dancol@dancol.org>
+
+ * register.el (insert-register): Change default interactive
+ insertion mode.
+
+2014-09-14 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-cache.el (tramp-flush-file-function): Simplify check.
+ Suppress debug messages.
+
+ * net/tramp.el (tramp-file-name-handler):
+ * net/tramp-gvfs.el (tramp-gvfs-url-file-name): Apply `cons' where
+ appropriate.
+
+2014-09-13 Christopher Schmidt <ch@ristopher.com>
+
+ * calendar/calendar.el (calendar-update-mode-line):
+ Do not overwrite mode-line-format if calendar-mode-line-format is
+ nil. (Bug#18467)
+
+2014-09-13 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/pcase.el (pcase--dontwarn-upats): New var.
+ (pcase--expand): Use it.
+ (pcase-exhaustive): New macro. (Bug#16567)
+
+ * emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2):
+ Add pcase-exhaustive.
+
+2014-09-13 Eli Zaretskii <eliz@gnu.org>
+
+ * mail/rmailmm.el (rmail-mime-insert-html): Decode the HTML part
+ using the specified transfer-encoding, if any, or 'undecided'.
+ (rmail-mime-render-html-shr): Bind shr-width to nil, so lines are
+ broken at the window margin.
+
+2013-12-27 Ken Olum <kdo@cosmos.phy.tufts.edu>
+
+ Support rendering of HTML parts in Rmail (bug#4258).
+ * mail/rmailmm.el (rmail-mime-process): Handle text/html
+ separately from other text/ types. Suppress tagline for
+ multipart body.
+ (rmail-mime-parse): Don't change visibility of tagline here.
+ (rmail-mime-set-bulk-data, rmail-mime-insert-bulk):
+ Handle text/html specially.
+ (rmail-mime-render-html-function,rmail-mime-prefer-html): New variables.
+ (rmail-mime-insert-html, rmail-mime-render-html-shr)
+ (rmail-mime-render-html-lynx): New functions.
+ (rmail-mime-fix-inserted-faces): New function.
+ (rmail-mime-process-multipart): Find the best part to show
+ following rmail-mime-prefer-html if set.
+ (rmail-mime-searching): New variable.
+ (rmail-search-mime-message): Bind rmail-mime-searching to
+ suppress rendering while searching.
+
+2014-09-12 Sam Steingold <sds@gnu.org>
+
+ * progmodes/sql.el (sql-product-alist): Add vertica.
+ (sql-vertica-program, sql-vertica-options)
+ (sql-vertica-login-params, sql-comint-vertica, sql-vertica):
+ New functions and variables to support Vertica.
+ Inspired by code by Roman Scherer <roman@burningswell.com>.
+
+2014-09-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ * ses.el (ses-file-format-extend-parameter-list): Rename from
+ ses-file-format-extend-paramter-list, to correct a misspelling.
+ All uses changed.
+
+2014-09-10 Alan Mackenzie <acm@muc.de>
+
+ CC Mode: revert recent changes and fix bug 17463 (cc-langs.elc
+ gets loaded at run-time).
+ * progmodes/cc-langs.el (c-no-parens-syntax-table): Rename the
+ c-lang-const to c-make-no-parens-syntax-table and correct the
+ logic.
+ (c-no-parens-syntax-table): Correct the logic of the
+ c-lang-defvar.
+
+2014-09-10 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ CC-mode: Set open-paren-in-column-0-is-defun-start to nil;
+ plus misc cleanup.
+ * progmodes/cc-mode.el (c-basic-common-init):
+ Set open-paren-in-column-0-is-defun-start.
+ (adaptive-fill-first-line-regexp, font-lock-syntactic-keywords):
+ Remove declarations, unused.
+ (run-mode-hooks): Remove declaration.
+ (font-lock-defaults): Use plain `defvar' to declare.
+ (c-run-mode-hooks): Test existence of run-mode-hooks with fboundp.
+ * progmodes/cc-langs.el (c-filter-ops): Avoid `setq'.
+ (c-make-mode-syntax-table): Don't micro-optimize.
+ (c-keywords, c-keyword-member-alist): Simplify.
+ (c-kwds-lang-consts): Don't eval at compile-time.
+ (c-primary-expr-regexp): Comment out unused vars.
+ * progmodes/cc-fonts.el (c-font-lock-context): Declare at top-level.
+ (c-font-byte-compile): New var.
+ (c--compile): New function. Use it instead of `byte-compile'.
+ (c-cpp-matchers): Quote the value returned by
+ `c-make-syntactic-matcher' in case it's not self-evaluating.
+ (c-basic-matchers-before): Avoid a plain MATCHER as keyword, wrap it in
+ parentheses instead (in case MATCHER happens to be a list).
+ (c-font-lock-enum-tail): Remove unused var `start'.
+ (c-font-lock-objc-methods): Silence byte-compiler warnings.
+ * progmodes/cc-engine.el (c-syntactic-re-search-forward): Sink an `if'
+ test into an argument.
+ * progmodes/cc-defs.el (c-point, c-major-mode-is, c-put-char-property)
+ (c-get-char-property): Don't use `eval' just to unquote a constant.
+ (c-use-extents): Remove. Use (featurep 'xemacs), compiled
+ more efficiently.
+ (c-put-char-property-fun): Don't call `byte-compile' by hand.
+ (c-clear-char-property, c-clear-char-properties): Check that `property'
+ is a quoted constant.
+ (c-emacs-features): Remove `infodock', `syntax-properties', and
+ `pps-extended-state' (never used), `8-bit' and `1-bit' (use (featurep
+ 'xemacs) instead). Use `with-temp-buffer' and let-bind vars after
+ changing buffer, so we don't have to setq them again afterwards.
+ (c-lang-const): Remove redundant symbolp assertions.
+ (c-find-assignment-for-mode): Use `or'.
+ * Makefile.in (compile-one-process): Remove cc-mode dependency.
+
+2014-09-09 Sam Steingold <sds@gnu.org>
+
+ * progmodes/sql.el (sql-default-directory): Fix type annotation.
+
+2014-09-09 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/cc-awk.el: Remove unneeded cc-bytecomp use.
+ Change doc comments into docstrings.
+ * Makefile.in: Remove cc-awk dependency.
+
+2014-09-08 Sam Steingold <sds@gnu.org>
+
+ * progmodes/sql.el (sql-send-line-and-next): New command,
+ bound to C-c C-n.
+ (sql-show-sqli-buffer): Display the buffer instead of its name and
+ bind the command to C-c C-z.
+ (sql-default-directory): New user option.
+ (sql-product-interactive): Bind `default-directory' to it to
+ enable remote connections using Tramp.
+ (sql-set-sqli-buffer): Call `sql-product-interactive' when no
+ suitable buffer is available.
+
+2014-09-08 Glenn Morris <rgm@gnu.org>
+
+ * calendar/calendar.el (calendar-basic-setup):
+ Fix calendar-view-holidays-initially-flag and fancy display.
+ * calendar/diary-lib.el (diary-live-p): Doc fix.
+
+ * calendar/calendar.el (calendar-basic-setup):
+ Avoid clobbering calendar with diary. (Bug#18381)
+
+2014-09-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * vc/vc-dir.el (vc-dir-update): Don't burp in corner case.
+
+2014-09-08 Lars Ljung <lars@matholka.se> (tiny change)
+
+ * isearch.el (isearch-yank-word-or-char): Obey superword-mode
+ as well (bug#18400).
+
+2014-09-08 Eli Zaretskii <eliz@gnu.org>
+
+ * subr.el (posn-actual-col-row): Doc fix. (Bug#18385)
+
+2014-09-06 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/pcase.el (pcase): Doc fix.
+ (pcase--split-vector): New function.
+ (pcase--q1): Support vector qpattern. (Bug#18327)
+
+2014-09-05 Sam Steingold <sds@gnu.org>
+
+ * textmodes/tex-mode.el (tex-print-file-extension): New user
+ option.
+ (tex-print): Use it instead of the hard-coded string.
+
+2014-09-05 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-sh-handle-start-file-process):
+ Expand `default-directory'.
+
+2014-09-05 Martin Rudalics <rudalics@gmx.at>
+
+ * scroll-bar.el (horizontal-scroll-bars-available-p):
+ New function.
+ (horizontal-scroll-bar-mode): Rewrite using
+ horizontal-scroll-bars-available-p.
+ * menu-bar.el (menu-bar-showhide-scroll-bar-menu): Rewrite using
+ horizontal-scroll-bars-available-p.
+
+2014-09-05 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (call-process-shell-command, process-file-shell-command):
+ Make the `args' obsolete (bug#18409).
+ (start-process-shell-command, start-file-process-shell-command):
+ Use `declare'.
+
+2014-09-05 Jay Belanger <jay.p.belanger@gmail.com>
+
+ * calc/calc-forms.el (math-normalize-hms): Do a better check for
+ "negative" hms forms.
+
+2014-09-04 Rasmus Pank Roulund <emacs@pank.eu>
+
+ * vc/vc-git.el (vc-git-conflicted-files): Fix bug when git status
+ returns nil (bug#18391).
+
+2014-09-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/eldoc.el (eldoc-function-argstring): Don't strip
+ terminating paren (bug#18352).
+ (eldoc-last-data-store): Return cached data.
+ (eldoc-get-var-docstring): Avoid setq.
+ (eldoc-get-fnsym-args-string): Clarify data flow.
+
+2014-09-04 Thierry Volpiatto <thierry.volpiatto@gmail.com>
+
+ * emacs-lisp/eldoc.el (eldoc-highlight-function-argument): Handle the
+ case where we're currently providing part of the &rest arg after some
+ &key args, as in define-ibuffer-op (bug#18048).
+
+2014-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/which-func.el (which-func-ff-hook): Obey pre-existing
+ buffer-local setting of which-func-mode.
+ (which-func-mode): Use defvar-local.
+ (which-function-mode): Don't reset which-func-mode in each buffer since
+ it might have been set by someone else.
+ (which-func-update-ediff-windows): Check which-function-mode.
+
+2014-09-03 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.el (frame-initialize): Remove horizontal-scroll-bars
+ from frame-initial-frame-alist.
+ * scroll-bar.el (previous-horizontal-scroll-bar-mode)
+ (horizontal-scroll-bar-mode-explicit)
+ (set-horizontal-scroll-bar-mode, get-horizontal-scroll-bar-mode)
+ (toggle-horizontal-scroll-bar): Remove.
+ (horizontal-scroll-bar-mode): Remove defcustom.
+ (horizontal-scroll-bar-mode): Fix doc-string.
+ (scroll-bar-toolkit-scroll)
+ (scroll-bar-toolkit-horizontal-scroll): Add doc-strings stubs.
+
+2014-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/package.el (package-generate-description-file):
+ Properly quote the arguments (bug#18332). Change second arg.
+ (package--alist-to-plist-args): Rename from package--alist-to-plist and
+ quote the elements.
+ (package--make-autoloads-and-stuff): Fix the test for pre-existence of
+ the *-pkg.el file. Adjust to new calling convention of
+ package-generate-description-file.
+
+ * progmodes/gud.el (gud-gdb-completion-at-point): Add hack (bug#18282).
+ (gud-gdb-completions): Remove obsolete workaround.
+
+2014-09-03 Eli Zaretskii <eliz@gnu.org>
+
+ * subr.el (posn-col-row): Revert the change from commit
+ 2010-11-13T21:07:58Z!eliz@gnu.org, which
+ was inadvertently merged from emacs-23 release branch in 2010-11-18T03:54:14Z!monnier@iro.umontreal.ca
+ monnier@iro.umontreal.ca-20101118035414-yvlg7k7dk4k4l3q, and
+ introduced an off-by-one error in the reported row when there is a
+ header line. (Bug#18384)
+
+2014-09-03 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-indent-post-self-insert-function):
+ Avoid electric colon at beginning-of-defun. (Bug#18228)
+
+2014-09-03 Glenn Morris <rgm@gnu.org>
+
+ * tutorial.el (tutorial--display-changes):
+ Fix 2014-08-01 change. (Bug#18382)
+
+2014-09-03 Ken Brown <kbrown@cornell.edu>
+
+ * startup.el (fancy-splash-frame): Extend the fix for Bug#16014 to
+ the Cygwin-w32 build. (Bug#18347)
+
+2014-09-03 Glenn Morris <rgm@gnu.org>
+
+ * tar-mode.el (tar--extract, tar-extract):
+ Avoid permanently disabling undo in extracted buffers. (Bug#18344)
+
+2014-09-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/sh-script.el (sh-font-lock-quoted-subshell): Try to better
+ handle multiline elements (bug#18380).
+
+2014-09-01 Eli Zaretskii <eliz@gnu.org>
+
+ * ls-lisp.el (ls-lisp-use-string-collate)
+ (ls-lisp-UCA-like-collation): New defcustoms.
+ (ls-lisp-string-lessp): Use them to control sorting by file
+ names. (Bug#18051)
+ (ls-lisp-version-lessp): New function.
+ (ls-lisp-handle-switches): Use it to implement the -v switch of
+ GNU ls.
+ (ls-lisp--insert-directory): Mention the -v switch in the doc string.
+
+2014-08-31 Christoph Scholtes <cschol2112@gmail.com>
+
+ * ibuffer.el: Replace mode-specific quit function with
+ `quit-window' via `special-mode'.
+ (ibuffer-mode-map): Use keybindings from special-mode-map instead
+ of local overrides.
+ (ibuffer): Don't store previous windows configuration.
+ Let `quit-window' handle restoring.
+ (ibuffer-quit): Remove function. Use `quit-window' instead.
+ (ibuffer-restore-window-config-on-quit): Remove variable.
+ (ibuffer-prev-window-config): Remove variable.
+
+2014-08-29 Michael Heerdegen <michael_heerdegen@web.de>
+
+ * emacs-lisp/easy-mmode.el (define-minor-mode): Use mode function
+ name instead of variable name in hook docstring. (Bug#18349)
+
+2014-08-29 Martin Rudalics <rudalics@gmx.at>
+
+ * window.el (display-buffer-at-bottom): Prefer bottom-left
+ window to other bottom windows. Reuse a bottom window if it
+ shows the buffer already. Suggested by Juri Linkov
+ <juri@jurta.org> in discussion of (Bug#18181).
+
+2014-08-29 Leo Liu <sdl.web@gmail.com>
+
+ * files.el (minibuffer-with-setup-hook): Allow (:append FUN) to
+ append to minibuffer-setup-hook. (Bug#18341)
+
+2014-08-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/cc-defs.el: Expose c-lanf-defconst's expressions to the
+ byte-compiler.
+ (lookup-syntax-properties): Silence byte-compiler.
+ (c-lang-defconst): Quote the code with `lambda' rather than with
+ `quote'.
+ (c-lang-const): Avoid unneeded setq.
+ (c-lang-constants-under-evaluation): Add docstring.
+ (c-lang--novalue): New constant.
+ (c-find-assignment-for-mode): Use it instead of c-lang-constants.
+ (c-get-lang-constant): Same here.
+ Get the mode's value using `funcall' now that the code is quoted
+ with `lambda'.
+
+2014-08-28 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-handle-shell-command): Use `display-buffer'.
+ (Bug#18326)
+
+2014-08-28 Martin Rudalics <rudalics@gmx.at>
+
+ * scroll-bar.el (scroll-bar-horizontal-drag-1): Handle new
+ interpretation of `portion-whole'.
+
+2014-08-28 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-adb.el: Spell author name correctly.
+
+2014-08-28 João Távora <joaotavora@gmail.com>
+
+ * net/shr.el (shr-expand-url): Plain expand-file-name is not enough;
+ use url-expand-file-name. (Bug#18310)
+
+2014-08-28 Glenn Morris <rgm@gnu.org>
+
+ * emulation/cua-rect.el (cua--highlight-rectangle):
+ Avoid error at point-min. (Bug#18309)
+
+2014-08-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/python.el (python-shell-prompt-detect): Remove redundant
+ executable-find (bug#18244).
+
+ * simple.el (self-insert-uses-region-functions): Defvar.
+
+2014-08-28 Glenn Morris <rgm@gnu.org>
+
+ * subr.el (remq): Revert 2014-08-25 doc change (not always true).
+
+2014-08-27 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * startup.el (normal-top-level): Now use internal--top-level-message.
+
+2014-08-26 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * startup.el (normal-top-level): Use top-level-message.
+
+2014-08-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-copy-url): Encode copied URL to avoid getting
+ URLs containing spaces and the like.
+
+2014-08-25 Christoph Scholtes <cschol2112@gmail.com>
+
+ * subr.el (remq): Fix docstring (Bug#18253).
+
+2014-08-25 Christoph Scholtes <cschol2112@gmail.com>
+
+ * replace.el (query-replace): Fix typo in docstring (Bug#18320).
+
+2014-08-24 Alan Mackenzie <acm@muc.de>
+
+ Handle C++11's "auto" and "decltype" constructions.
+ * progmodes/cc-engine.el (c-forward-type): Enhance to recognise
+ and return 'decltype.
+ (c-forward-decl-or-cast-1): New let variables backup-kwd-sym,
+ prev-kwd-sym, new-style-auto. Enhance to handle the new "auto"
+ keyword.
+ * progmodes/cc-fonts.el (c-font-lock-declarations): Handle the
+ "decltype" keyword.
+ (c-font-lock-c++-new): Handle "decltype" constructions.
+ * progmodes/cc-langs.el (c-auto-ops, c-auto-ops-re):
+ New c-lang-defconsts/defvars.
+ (c-haskell-op, c-haskell-op-re): New c-lang-defconsts/defvars.
+ (c-typeof-kwds, c-typeof-key): New c-lang-defconsts/defvars.
+ (c-typeless-decl-kwds): Append "auto" onto the C++ value.
+ (c-not-decl-init-keywords): Also exclude c-typeof-kwds from value.
+
+ Make ">>" act as double template ender in C++ Mode. (Bug#11386)
+ * progmodes/cc-langs.el (c->-op-cont-tokens): New lang-const split
+ off from c->-op-cont-re.
+ (c->-op-cont-tokens): Change to use the above.
+ (c->-op-without->-cont-regexp): New lang-const.
+ * progmodes/cc-engine.el (c-forward-<>-arglist-recur):
+ Use c->-op-without->-cont-regexp in place of c->-op-cont-tokens.
+
+
+2014-08-23 Alan Mackenzie <acm@muc.de>
+
+ * progmodes/cc-fonts.el (c-font-lock-declarators): Fix infinite
+ loop, bug #18306. The bug was introduced on 2014-08-02.
+
+2014-08-21 Eli Zaretskii <eliz@gnu.org>
+
+ * textmodes/texnfo-upd.el (texinfo-specific-section-type):
+ Don't recognize a Top node if there are other sectioning commands
+ earlier in the Texinfo file. This fixes a bug in
+ texinfo-make-menu and avoids inflooping in
+ texinfo-all-menus-update when they are invoked on texinfo.texi.
+
+2014-08-21 Martin Rudalics <rudalics@gmx.at>
+
+ * window.el (window--side-window-p): New function.
+ (split-window, window-splittable-p): Use window--side-window-p to
+ determine whether WINDOW can be split (Bug#18304).
+ * calendar/calendar.el (calendar-basic-setup): Fix one call of
+ `window-splittable-p' and add another (Bug#18304).
- * window.el (fit-window-to-buffer): Doc fix.
+2014-08-20 Sam Steingold <sds@gnu.org>
-2014-09-10 Ivan Shmakov <ivan@siamics.net> (tiny change)
+ * progmodes/python.el (python-new-pythonpath): Extract from
+ `python-shell-calculate-process-environment'.
- * desktop.el (desktop-create-buffer): Check that buffers are still live
- before burying them (bug#18373).
+2014-08-18 Thierry Volpiatto <thierry.volpiatto@gmail.com>
-2014-09-09 Glenn Morris <rgm@gnu.org>
+ * emacs-lisp/eldoc.el (eldoc-highlight-function-argument): Add support
+ for &key args (bug#18048).
- * calendar/diary-lib.el (diary-list-entries):
- Restore 24.3 display behavior. (Bug#18381)
+2014-08-18 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-09-09 Eli Zaretskii <eliz@gnu.org>
+ * emacs-lisp/eldoc.el (eldoc-argument-case): Obsolete and change default.
+ (eldoc-function-argstring-format): Remove.
+ (eldoc-function-argstring): Always return upcase args.
+ Use help-make-usage. Don't add parens.
+ (eldoc-get-fnsym-args-string): Don't obey eldoc-argument-case since
+ it's too late to do it right (bug#18048).
- * mouse.el (mouse-drag-line): On text-mode frames, count the mode
- line and header line as 1 pixel. This fixes the 1-"pixel" (row)
- discrepancy between window-pixel-edges and mouse events, and
- avoids moving mode line up when the mouse click is on the modeline
- and no drag is attempted.
+2014-08-18 Eli Zaretskii <eliz@gnu.org>
-2014-09-08 Glenn Morris <rgm@gnu.org>
+ * scroll-bar.el (scroll-bar-horizontal-drag-1)
+ (scroll-bar-toolkit-horizontal-scroll): When determining the
+ paragraph direction, use the buffer of the window designated in
+ the event.
- * calendar/calendar.el (calendar-basic-setup):
- Avoid clobbering calendar with diary. (Bug#18381)
+2014-08-16 Andreas Schwab <schwab@linux-m68k.org>
-2014-09-05 Stefan Monnier <monnier@iro.umontreal.ca>
+ * vc/diff-mode.el (diff-fixup-modifs): Handle empty line in
+ context of unified diff.
- * vc/vc-dir.el (vc-dir-update): Don't burp in corner case.
+2014-08-16 Paul Eggert <eggert@cs.ucla.edu>
-2014-09-04 Lars Ljung <lars@matholka.se> (tiny change)
+ Add dependencies to fix loaddefs race during parallel builds.
+ Without this, for example, 'make -j bootstrap' can fail and report
+ "Opening input file: no such file or directory,
+ .../lisp/calendar/diary-loaddefs.el ... recipe for target
+ 'calendar/hol-loaddefs.el' failed", where the hol-loaddefs.el rule
+ got confused because diary-loaddefs.el was being built in parallel.
+ * Makefile.in ($(CAL_DIR)/diary-loaddefs.el):
+ Depend on $(CAL_DIR)/cal-loaddefs.el.
+ ($(CAL_DIR)/hol-loaddefs.el): Depend on $(CAL_DIR)/diary-loaddefs.el.
- * isearch.el (isearch-yank-word-or-char): Obey superword-mode
- as well (bug#18400).
+2014-08-16 Martin Rudalics <rudalics@gmx.at>
-2014-09-04 Eli Zaretskii <eliz@gnu.org>
+ * scroll-bar.el (scroll-bar-horizontal-drag-1): Use cdr of
+ portion-whole for scrolling right-to-left text.
- * subr.el (posn-actual-col-row): Doc fix. (Bug#18385)
+2014-08-15 Leo Liu <sdl.web@gmail.com>
-2014-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
+ * speedbar.el (speedbar-generic-list-tag-p): Allow special
+ elements from imenu.
- * emacs-lisp/package.el (package-generate-description-file):
- Properly quote the arguments (bug#18332). Change second arg.
- (package--alist-to-plist-args): Rename from package--alist-to-plist and
- quote the elements.
- (package--make-autoloads-and-stuff): Fix the test for pre-existence of
- the *-pkg.el file. Adjust to new calling convention of
- package-generate-description-file.
+2014-08-15 Glenn Morris <rgm@gnu.org>
- * progmodes/gud.el (gud-gdb-completion-at-point): Add hack (bug#18282).
- (gud-gdb-completions): Remove obsolete workaround.
+ * subr.el (with-output-to-temp-buffer): Doc fix; from elisp manual.
-2014-09-02 Eli Zaretskii <eliz@gnu.org>
+2014-08-13 Jan Nieuwenhuizen <janneke@gnu.org>
- * subr.el (posn-col-row): Revert the change from commit
- 2010-11-13T21:07:58Z!eliz@gnu.org, which
- was inadvertently merged from emacs-23 release branch in 2010-11-18T03:54:14Z!monnier@iro.umontreal.ca
- monnier@iro.umontreal.ca-20101118035414-yvlg7k7dk4k4l3q, and
- introduced an off-by-one error in the reported row when there is a
- header line. (Bug#18384)
+ * progmodes/compile.el (compilation-error-regexp-alist-alist):
+ Add Guile regexpses.
-2014-09-01 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2014-08-13 Jan Nieuwenhuizen <janneke@gnu.org>
- * progmodes/python.el (python-indent-post-self-insert-function):
- Avoid electric colon at beginning-of-defun. (Bug#18228)
+ * progmodes/gud.el (guiler): New function. Starts the Guile REPL;
+ add Guile debugger support for GUD.
-2014-09-01 Glenn Morris <rgm@gnu.org>
+2014-08-13 Stefan Monnier <monnier@iro.umontreal.ca>
- * tutorial.el (tutorial--display-changes):
- Fix 2014-07-29 change. (Bug#18382)
+ * obsolete/mouse-sel.el (mouse-sel-mode): Use add/remove-function.
+ (mouse-sel--ignore): New function.
+ (mouse-sel-has-been-enabled, mouse-sel-original-bindings)
+ (mouse-sel-original-interprogram-cut-function)
+ (mouse-sel-original-interprogram-paste-function): Remove.
-2014-08-29 Ken Brown <kbrown@cornell.edu>
+2014-08-13 Eric S. Raymond <esr@thyrsus.com>
- * startup.el (fancy-splash-frame): Extend the fix for Bug#16014 to
- the Cygwin-w32 build. (Bug#18347)
+ * vc/vc-git.el (vc-git-resolve-when-done): New function.
+ Call "git add" when there are no longer conflict markers.
-2014-08-28 Glenn Morris <rgm@gnu.org>
+2014-08-13 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
- * tar-mode.el (tar--extract, tar-extract):
- Avoid permanently disabling undo in extracted buffers. (Bug#18344)
+ * vc/vc-git.el (vc-git-find-file-hook): New function.
+ Adds support for calling smerge (and resolve) on a conflicted file.
+ (vc-git-conflicted-files): New function.
+ Useful in itself and a step towards better smerge support.
-2014-08-27 Michael Albinus <michael.albinus@gmx.de>
+2014-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
- * emacs-lisp/authors.el (authors-aliases): Addition.
+ * mpc.el (mpc-reorder): Don't bother splitting the "active" elements
+ to the first part if they're the same as the selection.
- * net/tramp-adb.el: Spell author name correctly.
+2014-08-12 Lars Magne Ingebrigtsen <larsi@gnus.org>
-2014-08-27 João Távora <joaotavora@gmail.com>
+ * image-mode.el (image-transform-reset): New command and menu item.
+ (image-mode-map): Rearrange the menu items to put presumably more
+ obscure items at the end.
- * net/shr.el (shr-expand-url): Plain expand-file-name is not enough;
- use url-expand-file-name. (Bug#18310)
+2014-08-12 Juri Linkov <juri@jurta.org>
-2014-08-25 Glenn Morris <rgm@gnu.org>
+ * vc/vc-annotate.el (vc-annotate-background-mode):
+ Use `with-demoted-errors' instead of `ignore-errors'. (Bug#18189)
- * emulation/cua-rect.el (cua--highlight-rectangle):
- Avoid error at point-min. (Bug#18309)
+2014-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-08-18 Stefan Monnier <monnier@iro.umontreal.ca>
+ * files.el (out-of-memory-warning-percentage): Turn it off by default.
- * progmodes/python.el (python-shell-prompt-detect): Remove redundant
- executable-find (bug#18244).
+2014-08-11 Sam Steingold <sds@gnu.org>
- * simple.el (self-insert-uses-region-functions): Defvar.
+ * textmodes/sgml-mode.el (sgml-validate-command): Set depending on
+ the presence of known validators (tidy, (o)nsgmls).
-2014-08-13 Leo Liu <sdl.web@gmail.com>
+2014-08-11 Ulf Jasper <ulf.jasper@web.de>
- * speedbar.el (speedbar-generic-list-tag-p): Allow special
- elements from imenu.
+ Newsticker: introduce `newsticker-treeview-date-format'. (Bug#17227)
+ * net/newst-treeview.el (newsticker-treeview-date-format): New.
+ (newsticker--treeview-list-add-item):
+ Use `newsticker-treeview-date-format'.
2014-08-11 Glenn Morris <rgm@gnu.org>
- * subr.el (with-output-to-temp-buffer): Doc fix; from elisp manual.
-
* files.el (basic-save-buffer-2): Revert 2013-01-31 change, which
chose coding system for writing before backing up, since it causes
a more serious problem than the one it solves. (Closes Bug#18141,
reopens Bug#13522.)
-2014-08-10 Martin Rudalics <rudalics@gmx.at>
+2014-08-11 Martin Rudalics <rudalics@gmx.at>
- * window.el (window-total-size): Make doc-string more
- self-contained.
-
-2014-08-09 Martin Rudalics <rudalics@gmx.at>
+ * window.el (window-total-size): Make doc-string more self-contained.
* window.el (display-buffer-below-selected): Restore original
behavior if buffer is already displayed in the window below the
selected one (Bug#18181).
-2014-08-08 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-08-11 Stefan Monnier <monnier@iro.umontreal.ca>
* mouse.el (mouse--down-1-maybe-follows-link): Don't convert the down
event (bug#18212).
-2014-08-08 Eli Zaretskii <eliz@gnu.org>
+2014-08-11 Eli Zaretskii <eliz@gnu.org>
* info.el (info): Doc fix.
-2014-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-08-11 Stefan Monnier <monnier@iro.umontreal.ca>
* info.el (Info-mode-map): Override a global down-mouse-2 binding
(bug#18212).
-2014-08-05 Eli Zaretskii <eliz@gnu.org>
+2014-08-11 Eli Zaretskii <eliz@gnu.org>
* simple.el (default-line-height): A floating-point value of
line-spacing means a fraction of the default frame font's height,
(window-screen-lines): Use window-inside-pixel-edges for
determining the window height in pixels. (Bug#18195)
-2014-07-29 Eli Zaretskii <eliz@gnu.org>
+2014-08-11 Grégoire Jadi <daimrod@gmail.com>
+
+ * leim/quail/latin-post.el: Transform " __" into " _". (Bug#18023)
+
+2014-08-10 Ulf Jasper <ulf.jasper@web.de>
+
+ Enumerate evaluated sexp diary entries (Bug#7911).
+ * calendar/icalendar.el (icalendar-export-sexp-enumerate-all)
+ (icalendar-export-sexp-enumeration-days): New.
+ (icalendar-export-region): Now `icalendar--convert-to-ical'
+ returns a cons cell or a list of cons cells.
+ (icalendar--convert-to-ical): Take care of
+ `icalendar-export-sexp-enumerate-all'. Return (a list of) cons cells.
+ (icalendar--convert-ordinary-to-ical)
+ (icalendar--convert-weekly-to-ical, icalendar--convert-yearly-to-ical)
+ (icalendar--convert-block-to-ical, icalendar--convert-block-to-ical)
+ (icalendar--convert-float-to-ical, icalendar--convert-cyclic-to-ical)
+ (icalendar--convert-anniversary-to-ical): Return cons cell.
+ (icalendar--convert-sexp-to-ical): Enumerate evaluated sexp
+ entries. Return (list of) cons cells.
+
+2014-08-09 Juri Linkov <juri@jurta.org>
+
+ * vc/vc-annotate.el (vc-annotate-background-mode): Add :set
+ to reevaluate `vc-annotate-color-map'. (Bug#18189)
+
+2014-08-09 Alan Mackenzie <acm@muc.de>
+
+ * progmodes/cc-fonts.el (c-font-lock-declarators): Remove check
+ for top-level that can cause unacceptable slow-down in scrolling.
+ See email Subject: Huge {...} blocks in C/C++ again, from Dmitry
+ Antipov from 2013-10-14 in emacs-devel.
+
+2014-08-08 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
+
+ * ibuffer.el (ibuffer-mode-map): Use toggle button for
+ `ibuffer-auto-mode' menu entry.
+ (ibuffer-mode-hook): Add `ibuffer-auto-mode' customization option.
+
+2014-08-08 Matthias Meulien <orontee@gmail.com>
+
+ * progmodes/prog-mode.el (prog-mode-hook): Make customizable.
+ (Bug#16394)
+
+2014-08-07 Martin Rudalics <rudalics@gmx.at>
+
+ * window.el (window--min-size-1): Explicitly set WINDOW arg in
+ calls of window-min-pixel-height and window-min-pixel-width.
+
+2014-08-07 Reuben Thomas <rrt@sc3d.org>
+
+ * progmodes/ada-mode.el:
+ * net/tramp.el (tramp-handle-file-symlink-p):
+ * net/tramp-ftp.el (tramp-ftp-file-name-handler): Remove a comment
+ about VMS, which we no longer support.
+ * progmodes/ada-xref.el (ada-xref-current): Remove mention of VMS,
+ and fix a FIXME, using convert-standard-filename in place of
+ removed ada-convert-file-name.
+
+2014-08-07 Eli Zaretskii <eliz@gnu.org>
+
+ * files.el (auto-mode-alist): Remove support for VMS from a pattern.
+
+2014-08-07 Reuben Thomas <rrt@sc3d.org>
+
+ Refer to MS-DOS using the same name everywhere.
+ * arc-mode.el, files.el, frame.el: ``MS-DOG'', ``MSDOG'' and
+ ``msdog'' become ``MS-DOS''.
+
+2014-08-07 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
+ Use cached "remote-copy-args" value, if available. (Bug#18199)
+
+2014-08-07 Leo Liu <sdl.web@gmail.com>
+
+ * help.el (temp-buffer-setup-hook,temp-buffer-show-hook):
+ Revert change on 2014-03-22.
+
+2014-08-06 Ulf Jasper <ulf.jasper@web.de>
+
+ * calendar/icalendar.el (icalendar--diarytime-to-isotime)
+ (icalendar--convert-ordinary-to-ical): Allow for missing minutes
+ (Bug#13750).
+
+
+2014-08-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * image-mode.el (image-toggle-display-image): Always rescale images
+ to not be bigger than the current window.
+
+2014-08-05 Eric Brown <brown@fastmail.fm> (tiny change)
+
+ * net/eww.el (eww-bookmarks-directory): New variable.
+ (eww-write-bookmarks): Use it.
+ (eww-read-bookmarks): Ditto.
+
+2014-08-05 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * net/shr.el (shr-copy-url): Also copy the image URL.
+
+2014-08-05 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-cache.el (tramp-flush-file-function): Suppress function
+ also for Tramp working buffers.
+
+2014-08-04 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el: Fix completions inside (i)pdb.
+ (python-shell-completion-pdb-string-code): Make obsolete.
+ (python-shell-completion-get-completions):
+ Use python-shell-completion-string-code resending setup code
+ continuously for (i)pdb.
+
+2014-08-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ * rect.el (rectangle--default-line-number-format): Rename
+ from misspelled rectange--default-line-number-format (Bug#18045).
+ All uses changed.
+
+2014-08-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ Don't mishandle year-9999 dates (Bug#18176).
+ * calendar/parse-time.el (parse-time-rules):
+ Allow years up to most-positive-fixnum.
+ * calendar/time-date.el (date-to-time):
+ Pass "Specified time is not representable" errors through.
+
+2014-08-02 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el: Completion code cleanups.
+ (python-shell-completion-get-completions): Detect and send import
+ statements directly to completion function.
+ (python-shell-completion-at-point): Simplify prompt calculation
+ and import vs input completion logic.
+
+2014-08-02 Alan Mackenzie <acm@muc.de>
+
+ Fix confusion in C++ file caused by comma in "= {1,2},".
+ Bug #17756.
+ * progmodes/cc-engine.el (c-beginning-of-statement-1): In checking
+ for a statement boundary marked by "}", check there's no "="
+ before the "{".
+ (c-guess-basic-syntax CASE 9B): Call c-beginning-of-statement with
+ non-nil `comma-delim' argument.
+ * progmodes/cc-fonts.el (c-font-lock-declarators): Parse an
+ initializer expression more accurately.
+
+ Correct loop termination condition in c-syntactic-skip-backward.
+ * progmodes/cc-engine.el (c-syntactic-skip-backward): Correct for
+ the situation where, after moving back out of a literal,
+ skip-chars-backward doesn't move further, yet checks have still to
+ be done.
+
+2014-08-01 Eli Zaretskii <eliz@gnu.org>
* tutorial.el (tutorial--display-changes): Accept punctuation
characters before the key binding. (Bug#18146)
-2014-07-28 Stephen Berman <stephen.berman@gmx.net>
+2014-07-31 Fabián Ezequiel Gallina <fgallina@gnu.org>
- * doc-view.el (doc-view-open-text): Don't require that the
- document is saved in a file (e.g., email attachment).
+ * progmodes/python.el: Shell output capture enhancements.
+ (python-shell-accept-process-output): New function.
+ (inferior-python-mode)
+ (python-shell-send-setup-code): Use it.
-2014-07-27 Eli Zaretskii <eliz@gnu.org>
+2014-07-30 Christophe Deleuze <christophe.deleuze@free.fr> (tiny change)
+
+ * calendar/icalendar.el (icalendar--decode-isodatetime):
+ Use actual current-time-zone when converting to local time. (Bug#15408)
+
+2014-07-29 Martin Rudalics <rudalics@gmx.at>
+
+ * window.el (window--state-put-2): Handle horizontal scroll
+ bars, if present.
+
+2014-07-29 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
+
+ * menu-bar.el (menu-bar-update-buffers): Update item list format
+ in `buffers-menu' to confirm with changes to `get_keyelt'
+ (r117463). (Bug#18016)
+
+2014-07-28 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (inferior-python-mode): Make input prompts
+ read-only.
+
+2014-07-28 Emilio C. Lopes <eclig@gmx.net>
+
+ * net/tramp-sh.el (tramp-get-remote-python): Also search for
+ executables named "python2" or "python3".
+ (tramp-get-remote-uid-with-python): Use parentheses around
+ arguments to `print' to make it compatible with Python 3.
+ (tramp-get-remote-gid-with-python): Ditto. (Bug#18118)
+
+2014-07-28 Eli Zaretskii <eliz@gnu.org>
* window.el (window--pixel-to-total): Use FRAME's root window, not
that of the selected frame. (Bug#18112, Bug#16674)
-2014-07-27 Andreas Schwab <schwab@linux-m68k.org>
+2014-07-28 Andreas Schwab <schwab@linux-m68k.org>
* textmodes/tex-mode.el (tex-font-lock-verb): Doc fix.
(Bug#18117)
-2014-07-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2014-07-28 Fabián Ezequiel Gallina <fgallina@gnu.org>
* progmodes/python.el (inferior-python-mode): Doc fix.
-2014-07-25 Stephen Berman <stephen.berman@gmx.net>
+2014-07-28 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el (todo-edit-item--next-key): If next key is
not a character, ignore it instead of raising an error.
-2014-07-25 Stephen Berman <stephen.berman@gmx.net>
-
* calendar/todo-mode.el: Fix handling of marked items and make
minor code improvements.
(todo-edit-item): If there are marked items, ensure user can only
(todo-edit-item--header, todo-edit-item--diary-inclusion)
(todo-item-done): Use it.
-2014-07-25 Glenn Morris <rgm@gnu.org>
+2014-07-28 Glenn Morris <rgm@gnu.org>
* files.el (toggle-read-only): Re-add basic doc-string.
* vc/vc-hooks.el (vc-toggle-read-only): Tweak obsolescence mesage.
Replace missing `switch-to-prolog' with `run-prolog'.
(switch-to-prolog): Define as (obsolete) alias, as in 23.4.
-2014-07-22 Stephen Berman <stephen.berman@gmx.net>
+2014-07-28 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el (todo-set-top-priorities): Fix overwriting
of file-wide setting when changing category-wide setting.
+2014-07-28 Stephen Berman <stephen.berman@gmx.net>
+
+ * doc-view.el (doc-view-open-text): Don't require that the
+ document is saved in a file (e.g., email attachment).
+
+2014-07-28 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ Parse completion input in a iPython friendly way. (Bug#18084)
+ * progmodes/python.el
+ (python-shell-completion-at-point): Rename from
+ python-shell-completion-complete-at-point.
+ (inferior-python-mode): Use it.
+ (python-completion-at-point): Rename from
+ python-completion-complete-at-point. Parse input up to first
+ backward occurrence of whitespace, open-paren, close-paren or
+ string delimiter.
+ (python-mode): Use it.
+
+2014-07-28 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el
+ (python-shell-with-shell-buffer): New macro.
+ (python-shell-font-lock-get-or-create-buffer)
+ (python-shell-font-lock-kill-buffer)
+ (python-shell-font-lock-with-font-lock-buffer)
+ (python-shell-font-lock-cleanup-buffer)
+ (python-shell-font-lock-toggle): Use it.
+ (python-shell-font-lock-turn-on)
+ (python-shell-font-lock-turn-off): Use it. Make command.
+
+2014-07-28 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ Grab all Python process output before inferior-python-mode hooks.
+ * progmodes/python.el (inferior-python-mode):
+ Call accept-process-output and sit-for to ensure all output for process
+ has been received before running hooks.
+ (python-shell-internal-get-or-create-process):
+ Cleanup accept-process-output and sit-for calls.
+
+2014-07-28 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ More robust shell startup and code setup.
+ * progmodes/python.el (python-shell-make-comint):
+ Remove accept-process-output call.
+ (python-shell-get-buffer): Return current buffer if major-mode is
+ inferior-python-mode.
+ (python-shell-get-or-create-process): Use it.
+ (python-shell-send-setup-code): Send all setup code in one string,
+ output success message and accept-process-output.
+
+2014-07-27 Eli Zaretskii <eliz@gnu.org>
+
+ * scroll-bar.el (scroll-bar-toolkit-horizontal-scroll):
+ Add rudimentary support for bidirectional text.
+
+2014-07-27 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.el (frame-notice-user-settings): Rewrite using
+ frame-initial-frame-tool-bar-height.
+ * menu-bar.el (menu-bar-horizontal-scroll-bar)
+ (menu-bar-no-horizontal-scroll-bar): New functions.
+ (menu-bar-showhide-scroll-bar-menu): Add bindings for horizontal
+ scroll bars.
+ * scroll-bar.el (scroll-bar-lines)
+ (set-horizontal-scroll-bar-mode)
+ (get-horizontal-scroll-bar-mode, horizontal-scroll-bar-mode)
+ (scroll-bar-horizontal-drag-1, scroll-bar-horizontal-drag)
+ (scroll-bar-toolkit-horizontal-scroll): New functions.
+ (horizontal-scroll-bar-mode)
+ (previous-horizontal-scroll-bar-mode)
+ (horizontal-scroll-bar-mode-explicit): New variables.
+ (horizontal-scroll-bar-mode): New option.
+ (toggle-horizontal-scroll-bar): Do something.
+ (top-level): Bind horizontal-scroll-bar mouse-1.
+ * startup.el (tool-bar-originally-present): Remove variable.
+ (command-line): Don't set tool-bar-originally-present.
+ * window.el (window-min-height): Update doc-string.
+ (window--dump-frame): Dump horizontal scroll bar values.
+ (window--min-size-1): Handle minibuffer window separately.
+ Count in margins and horizontal scroll bar. Return safe value
+ iff IGNORE equals 'safe.
+ (frame-windows-min-size): New function (used by frame resizing
+ routines).
+ (fit-frame-to-buffer, fit-window-to-buffer): Count in horizontal
+ scroll bars.
+ (window--sanitize-window-sizes): New function.
+ (window-split-min-size): Remove.
+ (split-window): Count divider-width. Don't use
+ `window-split-min-size' any more. Reword error messages.
+ Sanitize windows sizes after splitting.
+
+2014-07-27 Thien-Thi Nguyen <ttn@gnu.org>
+
+ Use `defvar-local' more.
+ * progmodes/hideshow.el
+ (hs-c-start-regexp, hs-block-start-regexp)
+ (hs-block-start-mdata-select, hs-block-end-regexp)
+ (hs-forward-sexp-func, hs-adjust-block-beginning): ...here;
+ remove corresponding `make-variable-buffer-local' top-level calls.
+
+2014-07-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ Cleanup error signals. (Bug#18067)
+ * progmodes/python.el
+ (python-indent-shift-left): Use user-error instead.
+ (python-shell-prompt-detect): Use lwarn with python group.
+ (python-completion-complete-at-point)
+ (python-eldoc--get-doc-at-point): Don't signal error.
+
+2014-07-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ Support for packages in Python shell. (Bug#13570)
+ * progmodes/python.el (python-shell--package-depth): New var.
+ (python-shell-package-enable): New command.
+ (python-util-list-directories, python-util-list-files)
+ (python-util-list-packages): New functions.
+
+2014-07-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ Faster comint output. (Bug#16875)
+ * progmodes/python.el:
+ (python-comint-output-filter-function): Make obsolete.
+ (python-comint-postoutput-scroll-to-bottom): New function.
+ (inferior-python-mode): Set comint-output-filter-functions to a
+ minimum.
+
+2014-07-27 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * progmodes/python.el (python-shell-font-lock-post-command-hook):
+ Safeguard current point and undo history.
+
+2014-07-26 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ Robust shell syntax highlighting. (Bug#18084, Bug#16875)
+ * progmodes/python.el:
+ (python-shell-prompt-input-regexps): Add iPython block prompt.
+ (python-shell-output-syntax-table): Delete var.
+ (python-shell-font-lock-with-font-lock-buffer): New macro.
+ (python-shell-font-lock-get-or-create-buffer)
+ (python-shell-font-lock-kill-buffer)
+ (python-shell-font-lock-cleanup-buffer)
+ (python-shell-font-lock-post-command-hook)
+ (python-shell-font-lock-turn-off): New functions.
+ (python-shell-font-lock-turn-on): New function.
+ (inferior-python-mode): Use it.
+ (python-shell-font-lock-toggle): New command.
+ (python-shell-font-lock-enable): Rename from
+ python-shell-enable-font-lock.
+ (run-python-internal): Use it.
+ (python-shell-font-lock-comint-output-filter-function): New function.
+ (python-shell-comint-end-of-output-p): New function.
+ (python-shell-output-filter): Use it.
+ (python-util-comint-last-prompt): New function.
+ (python-util-text-properties-replace-name): New function.
+
+2014-07-25 Glenn Morris <rgm@gnu.org>
+
+ * vc/ediff-init.el (ediff-toggle-read-only-function):
+ * vc/ediff-util.el (ediff-toggle-read-only):
+ Replace obsolete toggle-read-only with read-only-mode.
+
+2014-07-24 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-cache.el (tramp-flush-file-function): Wrap the code
+ with `save-match-data'. (Bug#18095)
+
+2014-07-21 Vincent Belaïche <vincentb1@users.sourceforge.net>
+
+ * ses.el (ses-truncate-cell): Use cl-progv instead of eval in
+ order to ensure that row and col are lexically bound inside the
+ evaluated sexp.
+
2014-07-21 Glenn Morris <rgm@gnu.org>
* progmodes/hideif.el (hide-ifdef-mode-submap):
* progmodes/hideif.el (hide-ifdef-toggle-outside-read-only):
Doc fixes re toggle-read-only.
-2014-07-20 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2014-07-21 Fabián Ezequiel Gallina <fgallina@gnu.org>
* progmodes/python.el: Add comment about pipe buffering and
solutions for missing/delayed output in inferior Python shells.
(Bug#17304)
-2014-07-20 Fabián Ezequiel Gallina <fgallina@gnu.org>
-
* progmodes/python.el (python-mode): Don't set
mode-require-final-newline. (Bug#17990)
-2014-07-20 Fabián Ezequiel Gallina <fgallina@gnu.org>
-
Make python.el work with IPython automatically. (Bug#15510)
* progmodes/python.el:
(python-shell-completion-setup-code): New value supporting iPython.
(python-shell-prompt-output-regexps): Add safeguard for ipdb.
(python-shell-output-filter): Fix comment typo.
-2014-07-19 Fabián Ezequiel Gallina <fgallina@gnu.org>
-
Fix Python shell prompts detection for remote hosts.
* progmodes/python.el (python-shell-prompt-detect):
Replace call-process with process-file and make it more robust.
-2014-07-17 Fabián Ezequiel Gallina <fgallina@gnu.org>
-
Autodetect Python shell prompts. (Bug#17370)
* progmodes/python.el:
(python-shell-interpreter-interactive-arg)
(python-shell-prompt-detect)
(python-shell-prompt-validate-regexps): New functions.
(python-shell-prompt-set-calculated-regexps): New function.
- (inferior-python-mode): Use it. Also honor overridden
+ (inferior-python-mode): Use it. Also honor overriden
python-shell-interpreter and python-shell-interpreter-args.
- (python-shell-make-comint): Honor overridden
+ (python-shell-make-comint): Honor overriden
python-shell-interpreter and python-shell-interpreter-args.
(python-shell-get-or-create-process): Make it testable by allowing
to call run-python non-interactively.
(python-shell-prompt-output-regexp)
(python-shell-prompt-pdb-regexp): Use it as defcustom :safe.
+2014-07-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/smie.el (smie-config--guess-1): Split from
+ smie-config--guess.
+ (smie-config--guess): Use it.
+
+ * emacs-lisp/edebug.el: Use nadvice.
+ (edebug-original-read): Remove.
+ (edebug--read): Rename from edebug-read and add `orig' arg.
+ (edebug-uninstall-read-eval-functions)
+ (edebug-install-read-eval-functions): Use nadvice.
+ (edebug-read-sexp, edebug-read-storing-offsets, edebug-read-symbol)
+ (edebug-read-and-maybe-wrap-form1, edebug-instrument-callee)
+ (edebug-read-string, edebug-read-function): Use just `read'.
+ (edebug-original-debug-on-entry): Remove.
+ (edebug--debug-on-entry): Rename from edebug-debug-on-entry and add
+ `orig' arg.
+ (debug-on-entry): Override with nadvice.
+
+ * mouse.el (tear-off-window): Rename from mouse-tear-off-window since
+ it also makes sense to bind it to a non-mouse event.
+
+ * vc/vc-bzr.el (vc-bzr-shelve): Make it operate on fileset.
+
+2014-07-19 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * xt-mouse.el (xterm-mouse-event): Don't assume last-click is non-nil
+ (bug#18015).
+
+ * rect.el (rectangle--string-preview): Don't assume there
+ a non-nil default (bug#17984).
+
2014-07-16 Glenn Morris <rgm@gnu.org>
* desktop.el (after-init-hook): Disable startup frame restoration
in non-graphical situations. (Bug#17693)
-2014-07-14 Glenn Morris <rgm@gnu.org>
-
* vc/vc-dispatcher.el (vc-log-edit): Do set up the log buffer
if it was "empty", or used for a different set of files. (Bug#17884)
-2014-07-13 Eli Zaretskii <eliz@gnu.org>
+2014-07-16 Eli Zaretskii <eliz@gnu.org>
* bindings.el (mode-line-remote): If default-directory is not a
string, don't call file-remote-p on it; instead state in the
help-echo that it is nil. (Bug#17986)
+2014-07-14 Daniel Colascione <dancol@dancol.org>
+
+ * progmodes/cc-langs.el: Change comments from `cl-macroexpand-all'
+ to `macroexpand-all'
+
+ * progmodes/cc-defs.el (c-lang-defconst-eval-immediately):
+ Use `macroexpand-all' instead of `cl-macroexpand-all'.
+
2014-07-12 Paul Eggert <eggert@cs.ucla.edu>
Fix bug: C-x v v discarded existing log message (Bug#17884).
* vc/vc-dispatcher.el (vc-log-edit):
Don't clobber an already-existing log message.
-2014-07-10 Glenn Morris <rgm@gnu.org>
+2014-07-12 Glenn Morris <rgm@gnu.org>
* vc/log-edit.el (log-edit-changelog-entries):
Check for a visited-but-never-saved ChangeLog.
-2014-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-07-12 Stefan Monnier <monnier@iro.umontreal.ca>
* vc/log-edit.el (log-edit-changelog-entries): Don't both visiting
a non-existing file (bug#17970).
* faces.el (face-name): Undo last change.
(x-resolve-font-name): Don't call face-name (bug#17956).
-2014-07-09 Fabián Ezequiel Gallina <fgallina@gnu.org>
-
- Fix dedenters and electric colon handling. (Bug#15163)
+2014-07-12 Fabián Ezequiel Gallina <fgallina@gnu.org>
+ Fix dedenters and electric colon handling. (Bug#15163)
* progmodes/python.el
(python-rx-constituents): Add dedenter and block-ender.
(python-indent-dedenters, python-indent-block-enders): Delete.
(python-info-dedenter-opening-block-positions)
(python-info-dedenter-statement-p): New functions.
-2014-07-08 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-07-11 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * files.el (out-of-memory-warning-percentage): New defcustom.
+ (warn-maybe-out-of-memory): Use it.
+
+2014-07-11 Michael Albinus <michael.albinus@gmx.de>
+
+ * subr.el (read-passwd): Use `read-hide-char' if non-nil. Bind it
+ when calling `read-string'. (Bug#17839)
+
+2014-07-10 Eli Zaretskii <eliz@gnu.org>
+
+ * files.el (warn-maybe-out-of-memory): Fix the wording of the
+ warning.
+
+2014-07-10 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * files.el (warn-maybe-out-of-memory): New function.
+ (find-file-noselect): Use it.
+
+2014-07-09 Sam Steingold <sds@gnu.org>
+
+ * progmodes/cperl-mode.el (cperl-block-p): Treat the perl keyword
+ `constant' like `bless', `return' &c
+
+2014-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * rect.el (apply-on-rectangle): Check forward-line really moved to the
+ next line.
+
+2014-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
* progmodes/sh-script.el (sh-smie-sh-rules): Don't align with a && in
the middle of a line (bug#17896).
-2014-07-08 Juri Linkov <juri@jurta.org>
+2014-07-09 Juri Linkov <juri@jurta.org>
* startup.el (command-line): Append displaying the warning about
the errors in the init file to the end of `after-init-hook'.
(Bug#17927)
-2014-07-08 Juri Linkov <juri@jurta.org>
-
- * faces.el (face-name): Return input arg `face' as is
+ * faces.el (face-name): Return input arg `face' as-is
when it's not a symbol.
(x-resolve-font-name): Don't check if the face is a symbol.
(Bug#17956)
-2014-07-08 Juri Linkov <juri@jurta.org>
-
* facemenu.el (list-colors-print): In help-echo format use %.2f
instead of %d because now HSV values are floating-point components
between 0.0 and 1.0.
-2014-07-06 Glenn Morris <rgm@gnu.org>
+2014-07-09 Glenn Morris <rgm@gnu.org>
* emulation/cua-rect.el (cua--activate-rectangle):
Avoid setting cua--rectangle to nil. (Bug#17877)
-2014-07-06 Stephen Berman <stephen.berman@gmx.net>
+2014-07-09 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el: Fix wrong-type-argument error when
marking multiple consecutive items.
(todo-mark-category): Don't try to mark the empty line between the
todo and done items sections.
-2014-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/edebug.el (edebug-eval-defun): Print result using
proper Lisp quoting (bug#17934).
* progmodes/ruby-mode.el (ruby-mode-variables): Don't meddle with
require-final-newline since prog-mode already took care of it (bug#17947).
-2014-07-04 Stephen Berman <stephen.berman@gmx.net>
+2014-07-09 Stephen Berman <stephen.berman@gmx.net>
+
+ * calendar/todo-mode.el: Fix two bugs. Shorten Commentary and
+ refer to the Todo mode Info manual. Update the comment on
+ requiring cl-lib.
+ (todo-find-filtered-items-file): Add todo-prefix overlays.
+ (todo-filter-items): Reorder a let-bound variable to avoid a
+ wrong-type-argument error on canceling the file choice dialog.
+
+2014-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/octave.el (inferior-octave-mode):
+ Set comint-input-ring-size to a number (bug#17912).
+
+2014-07-09 Juri Linkov <juri@jurta.org>
+
+ * desktop.el (desktop-minor-mode-table): Add `defining-kbd-macro'
+ and `isearch-mode' associated with nil. (Bug#17849)
+
+2014-07-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * linum.el (linum--face-height): New function (bug#17813).
+ (linum-update-window): Use it to adjust margin to linum's width.
+
+ * leim/quail/sisheng.el (sisheng-list): Don't bother with-case-table.
+ * eshell/em-smart.el (eshell-smart-scroll-window):
+ Use with-selected-window.
+
+ * xt-mouse.el (xterm-mouse-translate-1): Intern drag event (bug#17894).
+ Remove also pointless window&mark manipulation.
+
+ * progmodes/perl-mode.el: Use syntax-ppss; fix one indentation case.
+ (perl-indent-line): Use syntax-ppss to detect we're in a doc-section.
+ (perl-continuation-line-p): Don't skip over anything else than labels.
+ Return the previous char.
+ (perl-calculate-indent): Use syntax-ppss instead of parse-start
+ and update callers accordingly. For continuation lines, check the
+ the case of array hashes.
+ (perl-backward-to-noncomment): Make it non-interactive.
+ (perl-backward-to-start-of-continued-exp): Rewrite.
+
+2014-07-08 Sam Steingold <sds@gnu.org>
+
+ * progmodes/inf-lisp.el (lisp-eval-paragraph, lisp-eval-form-and-next):
+ New user commands.
+
+2014-07-08 Juri Linkov <juri@jurta.org>
+
+ * vc/vc-annotate.el (vc-annotate-background-mode): New defcustom.
+ (vc-annotate-color-map): Use less saturated colors (20%) for
+ background-mode.
+ (vc-annotate-very-old-color): Add default value for background-mode.
+ (vc-annotate-background): Set default value to nil since now text on
+ the default backgrounds should be legible in light and dark modes.
+ (vc-annotate-lines): Use `vc-annotate-background-mode'. Doc fix.
+ (Bug#17808)
+
+2014-07-08 Juri Linkov <juri@jurta.org>
+
+ * simple.el (transpose-chars): Don't move point into read-only area.
+ (Bug#17829)
+
+2014-07-08 Juri Linkov <juri@jurta.org>
+
+ * window.el (with-displayed-buffer-window): New macro.
+ (with-temp-buffer-window, with-current-buffer-window):
+ Use `macroexp-let2' to evaluate and bind variables
+ in the same order as macro arguments.
+ (display-buffer--action-function-custom-type):
+ Add `display-buffer-below-selected' and `display-buffer-at-bottom'.
+
+ * minibuffer.el (minibuffer-completion-help): Replace
+ `with-output-to-temp-buffer' with `with-displayed-buffer-window'
+ with actions that display *Completions* at-bottom when called
+ from the minibuffer, or below-selected in a normal buffer.
+ Associate `window-height' with `fit-window-to-buffer'.
+ Let-bind `pop-up-windows' to nil.
+
+ * dired.el (dired-mark-pop-up): Use `with-displayed-buffer-window'
+ instead of `with-current-buffer-window'. (Bug#17809)
+
+2014-07-07 Luke Lee <luke.yx.lee@gmail.com>
+
+ * progmodes/hideif.el (hide-ifdef-env): Change to global.
+ (hide-ifdef-env-backup): New variable.
+ (hide-ifdef-expand-reinclusion-protection, hide-ifdef-header-regexp):
+ New customizable variables.
+ (hif-clear-all-ifdef-defined): New defun.
+ (hif-merge-ifdef-region, hide-ifdef-region-internal, hide-ifdef-region)
+ (hif-show-ifdef-region): Merge hidden regions to prevent continuous "...".
+ (hif-tokenize): Fix for MS-DOS/Win EOL style.
+ (hif-endif-to-ifdef, hif-make-range, hif-find-range, hif-possibly-hide):
+ Fix bug to hide the correct #elif region(s).
+ (hif-range-elif): New defun.
+ (hif-recurse-level): New var.
+ (hif-evaluate-region, hif-evaluate-macro): New defun.
+ (hide-ifdef-guts): Prevent reinclusion protected C/C++ headers from
+ fully hidden.
+ (hide-ifdef-define, hide-ifdefs, hide-ifdef-block, show-ifdef-block):
+ Better interaction.
+
+2014-07-04 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/dbus.el (dbus-peer-handler): New defun.
+ (dbus-register-service): Register it. (Bug#17858)
+ (dbus-managed-objects-handler): Fix docstring.
+
+2014-07-04 Phil Sainty <psainty@orcon.net.nz>
+
+ * emacs-lisp/lisp.el (narrow-to-defun-include-comments): New var.
+ (narrow-to-defun): New arg include-comments, defaulting to it
+ (bug#16328).
+
+2014-07-03 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * rect.el (rectangle--highlight-for-redisplay): Don't pass `orig' with
+ different calling convention to rectangle--unhighlight-for-redisplay.
- * calendar/todo-mode.el: Fix two bugs. Shorten Commentary and
- refer to the Todo mode Info manual. Update the comment on
- requiring cl-lib.
- (todo-find-filtered-items-file): Add todo-prefix overlays.
- (todo-filter-items): Reorder a let-bound variable to avoid a
- wrong-type-argument error on canceling the file choice dialog.
+2014-07-03 Michael Albinus <michael.albinus@gmx.de>
-2014-07-04 Stefan Monnier <monnier@iro.umontreal.ca>
+ * net/tramp.el (tramp-call-process): Handle error strings.
- * progmodes/octave.el (inferior-octave-mode):
- Set comint-input-ring-size to a number (bug#17912).
+ * net/tramp-adb.el (tramp-adb-sh-fix-ls-output): Use `bolp'.
-2014-07-03 Juri Linkov <juri@jurta.org>
+ * net/tramp-sh.el (tramp-sh-handle-set-visited-file-modtime)
+ (tramp-sh-handle-verify-visited-file-modtime): Use `point-at-eol'.
- * desktop.el (desktop-minor-mode-table): Add `defining-kbd-macro'
- and `isearch-mode' associated with nil. (Bug#17849)
+ * net/trampver.el: Update release number.
-2014-07-02 Juri Linkov <juri@jurta.org>
+2014-07-03 Juri Linkov <juri@jurta.org>
* desktop.el (desktop-save): Rename arg `auto-save' to
`only-if-changed'. Doc fix. (Bug#17873)
-2014-07-02 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-07-03 Stefan Monnier <monnier@iro.umontreal.ca>
* mouse.el (mouse-yank-primary, mouse-yank-secondary):
Use insert-for-yank (bug#17271).
-2014-07-02 Leo Liu <sdl.web@gmail.com>
+2014-07-03 Leo Liu <sdl.web@gmail.com>
* emacs-lisp/pp.el (pp-eval-expression, pp-eval-last-sexp):
Support lexical-binding.
-2014-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-07-03 Stefan Monnier <monnier@iro.umontreal.ca>
* vc/log-edit.el (log-edit-goto-eoh): New function.
(log-edit--match-first-line): Use it (bug#17861).
-2014-07-01 Glenn Morris <rgm@gnu.org>
+2014-07-03 Glenn Morris <rgm@gnu.org>
* vc/log-edit.el (log-edit-hook): Add missing :version.
-2014-07-01 Fabián Ezequiel Gallina <fgallina@gnu.org>
+2014-07-03 Fabián Ezequiel Gallina <fgallina@gnu.org>
* progmodes/python.el (python-indent-post-self-insert-function):
Enhancements to electric indentation behavior inside
- parens. (Bug#17658)
+ parens. (Bug#17658)
-2014-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-07-03 Stefan Monnier <monnier@iro.umontreal.ca>
* ps-def.el (ps-generate-postscript-with-faces1): Don't mess with
buffer-invisibility-spec (bug#17867).
-2014-06-29 Andreas Schwab <schwab@linux-m68k.org>
+2014-07-03 Andreas Schwab <schwab@linux-m68k.org>
* vc/vc-git.el (vc-git-checkin): When operating on the whole tree
pass "-a".
-2014-06-29 Glenn Morris <rgm@gnu.org>
+2014-07-03 Glenn Morris <rgm@gnu.org>
* cus-edit.el (help):
* finder.el (finder-known-keywords):
* progmodes/idlwave.el (idlwave): Update url-link for custom group.
(idlwave-mode): Doc URL update.
-2014-06-27 Stephen Berman <stephen.berman@gmx.net>
+2014-07-01 Juri Linkov <juri@jurta.org>
+
+ * man.el: Display man pages immediately and use process-filter
+ to format them asynchronously.
+ (Man-width): Doc fix.
+ (man): Doc fix.
+ (Man-start-calling): Use `with-selected-window' to get
+ `frame-width' and `window-width'.
+ (Man-getpage-in-background): Call `Man-notify-when-ready'
+ immediately after creating a new buffer. Call `Man-mode' and set
+ `mode-line-process' in the created buffer. Set process-filter to
+ `Man-bgproc-filter' in start-process branch. In call-process branch
+ call either `Man-fontify-manpage' or `Man-cleanup-manpage'.
+ Use `Man-start-calling' inside `with-current-buffer'.
+ (Man-fontify-manpage): Don't print messages. Fix boundary condition.
+ (Man-cleanup-manpage): Don't print messages.
+ (Man-bgproc-filter): New function.
+ (Man-bgproc-sentinel): Add `save-excursion' to keep point when
+ user moved it during asynchronous formatting. Move calls of
+ `Man-fontify-manpage' and `Man-cleanup-manpage' to
+ `Man-bgproc-filter'. Move the call of `Man-mode' to
+ `Man-getpage-in-background'. Use `quit-restore-window'
+ instead of `kill-buffer'. Use `message' instead of `error'
+ because errors are caught by process sentinel.
+ (Man-mode): Move calls of `Man-build-page-list',
+ `Man-strip-page-headers', `Man-unindent', `Man-goto-page' to
+ `Man-bgproc-sentinel'. Doc fix. (Bug#2588, bug#5054, bug#9084, bug#17831)
+
+ * man.el (Man-bgproc-sentinel): Use `Man-page-from-arguments'
+ for the message about the man page cleaned up.
+
+2014-07-01 Mario Lang <mlang@delysid.org>
+
+ * net/gnutls.el (gnutls-negotiate): Prevent destructive modification of
+ cosutomization option `gnutls-verify-error'.
+
+2014-07-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (deactivate-mark, set-mark-command, handle-shift-selection):
+ Don't keep transient-mark-mode buffer-local when not needed (bug#6316).
+
+ * xt-mouse.el (turn-on-xterm-mouse-tracking-on-terminal)
+ (turn-off-xterm-mouse-tracking-on-terminal): Don't burp if the terminal
+ is suspended (bug#17857).
+
+2014-07-01 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
+ Prefer utf-8 coding. (Bug#17859)
+
+2014-06-30 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * emacs-lisp/subr-x.el (string-reverse): Define as obsolete alias
+ for `reverse'.
+
+2014-06-30 Glenn Morris <rgm@gnu.org>
+
+ * emacs-lisp/autoload.el (autoload-ensure-writable): New variable.
+ (autoload-ensure-default-file): Maybe make existing output writable.
+ * Makefile.in (AUTOGEN_VCS): Remove.
+ (autoloads): Use autoload-ensure-writable rather than AUTOGEN_VCS.
+
+2014-06-30 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ * emacs-lisp/subr-x.el (string-reverse): Use `reverse'.
+
+2014-06-30 Fabián Ezequiel Gallina <fgallina@gnu.org>
+
+ New if-let, when-let, thread-first and thread-last macros.
+
+ * emacs-lisp/subr-x.el
+ (internal--listify, internal--check-binding)
+ (internal--build-binding-value-form, internal--build-binding)
+ (internal--build-bindings): New functions.
+ (internal--thread-argument, thread-first, thread-last)
+ (if-let, when-let): New macros.
+
+2014-06-30 Grégoire Jadi <daimrod@gmail.com>
+
+ * net/rcirc.el (rcirc-buffer-process): Restore previous
+ behaviour. (Bug#17772)
+
+2014-06-29 Alan Mackenzie <acm@muc.de>
+
+ Don't call c-parse-state when c++-template-syntax-table is active.
+ * progmodes/cc-engine.el (c-guess-continued-construct CASE G)
+ (c-guess-basic-syntax CASE 5D.3): Rearrange so that
+ c-syntactic-skip-backwards isn't called with the pertinent syntax table.
+
+2014-06-28 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el (todo-set-top-priorities): Fix logic to
account for file-wide setting of todo-top-priorities-overrides.
Make code a bit cleaner.
-2014-06-27 Leo Liu <sdl.web@gmail.com>
-
- * calc/calc.el (math-bignum): Handle most-negative-fixnum. (Bug#17556)
-
-2014-06-27 Glenn Morris <rgm@gnu.org>
+2014-06-28 Glenn Morris <rgm@gnu.org>
* net/eww.el (eww-mode) <eww-current-title>: Make local. (Bug#17860)
-2014-06-26 Stephen Berman <stephen.berman@gmx.net>
+2014-06-28 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el (todo-prefix-overlays): If there is no
category-wide setting of todo-top-priorities-overrides, check for
a file-wide setting and fontify accordingly.
-2014-06-26 Glenn Morris <rgm@gnu.org>
+2014-06-28 Glenn Morris <rgm@gnu.org>
* subr.el (read-passwd): Warn about batch mode. (Bug#17839)
+2014-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/hideif.el: Use lexical-binding. Fix up cl-lib usage.
+
+2014-06-28 K. Handa <handa@gnu.org>
+
+ Fix Bug#17739.
+
+ * composite.el: Setup composition-function-table for dotted circle.
+ (compose-gstring-for-dotted-circle): New function.
+
+ * international/characters.el: Add category "^" to all
+ non-spacing characters.
+
+2014-06-28 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (doit): Remove force rule.
+ (custom-deps, finder-data, autoloads, update-subdirs)
+ (compile-one-process): PHONY targets do not need force rules.
+
+ * Makefile.in (compile-main, compile, compile-always):
+ No need to explicitly pass variables to ourself in recursive calls.
+
+2014-06-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * files.el (minibuffer-with-setup-hook): Evaluate the first arg eagerly.
+
+2014-06-26 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (update-authors): Update for moved authors.el.
+
+2014-06-26 Leo Liu <sdl.web@gmail.com>
+
+ * skeleton.el (skeleton-end-hook): Default to nil and move the
+ work to skeleton-insert. (Bug#17850)
+
+2014-06-26 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * calc/calc-alg.el (math-beforep):
+ * progmodes/cc-guess.el (c-guess-view-reorder-offsets-alist-in-style):
+ Simplify because string-lessp can accept symbols as args.
+
2014-06-26 Daiki Ueno <ueno@gnu.org>
* emacs-lisp/package.el (package--check-signature):
If package-check-signature is allow-unsigned, don't signal error when
we can't verify signature because of missing public key
- (backport for bug#17625).
+ (bug#17625).
2014-06-26 Glenn Morris <rgm@gnu.org>
* emacs-lisp/authors.el (authors-valid-file-names)
(authors-renamed-files-alist): Additions.
-2014-06-25 Leo Liu <sdl.web@gmail.com>
+2014-06-26 Leo Liu <sdl.web@gmail.com>
* textmodes/picture.el (picture-set-tab-stops):
* ruler-mode.el (ruler-mode-mouse-add-tab-stop)
* indent.el (indent-accumulate-tab-stops): New function.
-2014-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-26 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/package.el (package-list-unsigned): New var (bug#17625).
(package-desc-status): Obey it.
-2014-06-25 Stephen Berman <stephen.berman@gmx.net>
+2014-06-26 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el: Fix two bugs.
(todo-insert-item--basic): If user cancels item insertion to
(todo-set-item-priority): After selecting category, instead of
moving point to top, which extends an active region, restore it.
-2014-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-26 Stefan Monnier <monnier@iro.umontreal.ca>
* help-fns.el (describe-function-1): Check file-name is a string before
calling help-fns--autoloaded-p (bug#17564).
-2014-06-24 Juri Linkov <juri@jurta.org>
+2014-06-26 Juri Linkov <juri@jurta.org>
* desktop.el (desktop-auto-save-enable)
(desktop-auto-save-disable): New functions.
(desktop-read): Disable the autosave before loading the desktop,
and enable afterwards. (Bug#17351)
-2014-06-24 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-26 Stefan Monnier <monnier@iro.umontreal.ca>
Fix some indentation problem with \; and pipes (bug#17842).
* progmodes/sh-script.el (sh-mode-syntax-table): Set syntax of ;|&.
(sh-smie-rc-forward-token, sh-smie-rc-backward-token): Use them.
(sh-smie-sh-rules): Fix indentation of a pipe at BOL.
-2014-06-24 Eli Zaretskii <eliz@gnu.org>
+2014-06-26 Glenn Morris <rgm@gnu.org>
- * international/fontset.el (script-representative-chars):
- Add representative characters for scripts added in Unicode 7.0.
- (otf-script-alist): Synchronize with the latest registry of OTF
- script tags.
+ * emacs-lisp/find-func.el (find-function-C-source-directory):
+ Use file-accessible-directory-p.
+
+ * ps-samp.el: Make it slightly less awful.
+ (ps-rmail-mode-hook, ps-gnus-article-prepare-hook, ps-vm-mode-hook):
+ (ps-gnus-summary-setup, ps-info-mode-hook): Use [print] key.
+ Only set local values.
+ (ps-article-subject, ps-article-author): Use standard functions
+ like mail-fetch-field.
+ (ps-info-file, ps-info-node): Use match-string.
+ (ps-jts-ps-setup, ps-jack-setup): Remove, merging into...
+ (ps-samp-ps-setup): ... new function.
+
+ * progmodes/idlw-shell.el (idlwave-shell-make-temp-file):
+ Optimize away code unneeded on any modern Emacs.
+
+ * emacs-lisp/authors.el: Move to ../admin.
+
+ * emacs-lisp/ert.el (ert-summarize-tests-batch-and-exit): New.
+
+2014-06-26 Luke Lee <luke.yx.lee@gmail.com>
+
+ * progmodes/hideif.el (hif-string-to-number): Fix return value bug.
+ (hif-simple-token-only, hif-tokenize): Comment in detail mainly for
+ performance enhancements.
+ (hif-parse-if-exp): Rename to `hif-parse-exp'. Enhance for macro
+ expansion.
+ (hif-factor, hif-string-concatenation, intern-safe): Support string
+ concatenation and argumented macro expansion.
+ (hif-if-valid-identifier-p, hif-define-operator, hif-flatten)
+ (hif-expand-token-list, hif-get-argument-list, hif-define-macro)
+ (hif-delimit, hif-macro-supply-arguments, hif-invoke, hif-canonicalize)
+ (hif-canonicalize-tokens, hif-place-macro-invocation)
+ (hif-parse-macro-arglist): Mostly new functions for supporting
+ argumented macro expansion.
+ (hif-string-concatenation, hif-stringify, hif-token-concat)
+ (hif-token-stringification, hif-token-concatenation):
+ Stringification and concatenation.
+ (hif-find-next-relevant): Fix comments.
+ (hif-ifdef-to-endif, hif-looking-at-elif, hif-hide-line): Bug fix for
+ some cases involving #elif.
+ (hif-find-define, hif-add-new-defines): New functions for automatically
+ scanning of defined symbols.
+ (hide-ifdef-guts): Fix for defined symbol auto scanning.
+ (hide-ifdef-undef): Fix behavior to match CPP.
+
+2014-06-25 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in ($(lisp)/progmodes/cc-defs.elc)
+ ($(lisp)/progmodes/cc-fonts.elc, $(lisp)/progmodes/cc-langs.elc)
+ ($(lisp)/progmodes/cc-vars.elc): Drop hand-written deps on non-cc
+ files. They are not relevant to the original issue (bug#1004),
+ and cause unnecessary recompilation (bug#2151).
- * international/characters.el (char-script-table): Update for
- scripts added and codepoint ranges changed in Unicode 7.0.
+2014-06-25 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * play/landmark.el: Use lexical-binding and avoid `intangible'.
+ (landmark--last-pos): New var.
+ (landmark--intangible-chars): New const.
+ (landmark--intangible): New function.
+ (landmark-mode, landmark-move): Use it.
+ (landmark-mode): Remove properties.
+ (landmark-plot-square, landmark-point-square, landmark-goto-xy)
+ (landmark-cross-qtuple):
+ Don't worry about `intangible' any more.
+ (landmark-click, landmark-point-y): Same; and don't assume point-min==1.
+ (landmark-init-display): Don't set `intangible' and `point-entered'.
+ (square): Remove. Inline it instead.
+ (landmark--distance): Rename from `distance'.
+ (landmark-calc-distance-of-robot-from): Rename from
+ calc-distance-of-robot-from.
+ (landmark-calc-smell-internal): Rename from calc-smell-internal.
+
+2014-06-25 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * files.el (dir-locals-find-file, file-relative-name):
+ * info.el (Info-complete-menu-item):
+ * minibuffer.el (completion-table-subvert): Prefer string-prefix-p
+ to compare-strings to avoid out-of-range errors.
+ * subr.el (string-prefix-p): Adjust to match strict range
+ checking in compare-strings.
+
+2014-06-24 Leonard Randall <leonard.a.randall@gmail.com> (tiny change)
+
+ * textmodes/reftex-parse.el (reftex-using-biblatex-p): Make search
+ for comment lines non-greedy and stopping at newlines to fix stack
+ overflows with large files.
+
+2014-06-24 Eli Barzilay <eli@barzilay.org>
+
+ * calculator.el (calculator-last-input): Drop 'ascii-character property
+ lookup.
-2014-06-23 Leo Liu <sdl.web@gmail.com>
+2014-06-24 Leo Liu <sdl.web@gmail.com>
* align.el (align-adjust-col-for-rule): Unbreak due to defaulting
tab-stop-list to nil. (Bug#16381)
(indent-rigidly-right-to-tab-stop, tab-to-tab-stop)
(move-to-tab-stop): Change callers.
-2014-06-22 Eli Zaretskii <eliz@gnu.org>
+2014-06-24 Eli Zaretskii <eliz@gnu.org>
* skeleton.el (skeleton-insert): Yet another fix of the doc string
wrt behavior of \n as the first/last element of a skeleton.
-2014-06-22 Michael Albinus <michael.albinus@gmx.de>
+2014-06-24 Michael Albinus <michael.albinus@gmx.de>
* net/tramp-adb.el (tramp-adb-handle-process-file):
* net/tramp-sh.el (tramp-sh-handle-process-file):
* net/tramp-smb.el (tramp-smb-handle-process-file): Do not raise
the output buffer when DISPLAY is non-nil. (Bug#17815)
-2014-06-21 Glenn Morris <rgm@gnu.org>
+2014-06-24 Glenn Morris <rgm@gnu.org>
* play/landmark.el (landmark-move-down, landmark-move-up):
Fix 2007-10-20 change - preserve horizontal position.
+2014-06-23 Sam Steingold <sds@gnu.org>
+
+ * simple.el (kill-append): Remove undo boundary depending on ...
+ (kill-append-merge-undo): New user option.
+
+2014-06-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (handle-shift-selection, exchange-point-and-mark)
+ (activate-mark): Set transient-mark-mode buffer-locally (bug#6316).
+ (transient-mark-mode): Use&set the global value.
+ * mouse.el (mouse-set-region-1, mouse-drag-track): Idem.
+ * emulation/edt.el (edt-emulation-off): Save&restore the global
+ transient-mark-mode setting.
+ * obsolete/pc-select.el (pc-selection-mode): Use the
+ transient-mark-mode function.
+
+2014-06-23 Eli Zaretskii <eliz@gnu.org>
+
+ * international/fontset.el (script-representative-chars):
+ Add representative characters for scripts added in Unicode 7.0.
+ (otf-script-alist): Synchronize with the latest registry of OTF
+ script tags.
+
+ * international/characters.el (char-script-table): Update for
+ scripts added and codepoint ranges changed in Unicode 7.0.
+
+2014-06-23 Eli Barzilay <eli@barzilay.org>
+
+ * calculator.el (calculator-standard-displayer): Fix bug in use of
+ `calculator-groupize-number'.
+ (calculator-funcall): Fix broken `cl-flet' use by moving it into the
+ `eval' code, so it works in v24.3.1 too.
+ (calculator-last-input): Comment to clarify purpose.
+
+2014-06-22 Mario Lang <mlang@delysid.org>
+
+ * textmodes/rst.el (rst-comment-region): From from -> from.
+
+ * net/tramp-adb.el (tramp-adb-send-command-and-check): And and -> and.
+
+2013-06-22 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * electric.el (electric-layout-post-self-insert-function):
+ * emacs-lisp/ert.el (ert--insert-infos):
+ * obsolete/vi.el (vi-set-mark):
+ * term.el (term-handle-scroll):
+ * textmodes/bibtex.el (bibtex-fill-field, bibtex-fill-entry):
+ * wid-edit.el (widget-editable-list-value-create):
+ Prefer point-marker to copy-marker of point.
+
2014-06-21 Fabián Ezequiel Gallina <fgallina@gnu.org>
Fix completion retrieval parsing (bug#17209).
* skeleton.el (skeleton-insert): Doc fix.
-2014-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/smie.el (smie-config--guess): Fix typo.
(smie-config-guess): Use smie-config-local so the rules are obeyed
* mouse.el (mouse-drag-line): Don't re-add to unread-comment-events,
since it's already done inside the loop (bug#17819).
-2014-06-20 Martin Rudalics <rudalics@gmx.at>
+2014-06-21 Martin Rudalics <rudalics@gmx.at>
+
+ * mouse.el (mouse-drag-line): Re-remove code initially removed
+ on 2013-03-09 and inadvertently reintroduced on 2013-11-30
+ (Bug#17819).
+
+2014-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/sh-script.el (sh-smie-sh-rules): For { after &&, don't
+ align with the surrounding parent (bug#17721).
+
+2014-06-21 Eli Zaretskii <eliz@gnu.org>
+
+ * textmodes/texinfo.el (texinfo-mode): Set skeleton-end-newline
+ locally to nil.
+ (texinfo-insert-block, texinfo-insert-@end)
+ (texinfo-insert-@example, texinfo-insert-@quotation): Adjust to
+ local setting of skeleton-end-newline by adding an explicit \n to
+ the skeletons where appropriate. (Bug#17801)
+
+2014-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/smie.el (smie--hanging-eolp-function): New var.
+ (smie-indent--hanging-p): Use it.
+ * progmodes/sh-script.el (sh-set-shell): Set it (bug#17621).
+
+2014-06-21 Leo Liu <sdl.web@gmail.com>
+
+ * simple.el (read-quoted-char): Don't let help chars pop up help
+ buffer. (Bug#16617)
+
+2014-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/sh-script.el (sh-smie-sh-rules): Use same rule for && as
+ for | (bug#17621).
+
+ * xt-mouse.el (xterm-mouse--read-event-sequence-1000):
+ Drop unknown events instead of burping.
+
+2014-06-21 Eli Zaretskii <eliz@gnu.org>
+
+ * term/w32-win.el (dynamic-library-alist): Support giflib 5.1.0
+ and later. (Bug#17790)
+
+2014-06-21 Juri Linkov <juri@jurta.org>
+
+ * dired.el (dired-mark-pop-up): Let-bind display-buffer-mark-dedicated
+ to `soft'. (Bug#17554)
+
+2014-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * delsel.el (electric-newline-and-maybe-indent): Mark it as well
+ (bug#17737).
+
+2014-06-21 Dmitry Gutov <dgutov@yandex.ru>
+
+ * progmodes/ruby-mode.el (ruby-font-lock-keywords): Don't fontify
+ `!' in `!~' with `font-lock-negation-char-face'. (Bug#17732)
+
+2014-06-21 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/dbus.el (dbus-call-method): Push only non D-Bus events into
+ `unread-command-events'.
+
+2014-06-19 William Xu <william.xwl@gmail.com>
+
+ * progmodes/hideif.el (hif-string-to-number): Don't return float for
+ hex integer constants (bug#17807).
+
+2014-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * international/mule-util.el (truncate-string-ellipsis): New var.
+ (truncate-string-to-width): Use it.
+
+2014-06-19 Robert Brown <robert.brown@gmail.com> (tiny change)
+
+ * emacs-lisp/lisp-mode.el (lisp-string-after-doc-keyword-p): New fun.
+ (lisp-string-in-doc-position-p): New function, extracted from
+ lisp-font-lock-syntactic-face-function.
+ (lisp-font-lock-syntactic-face-function): Use them (bug#9130).
+
+2014-06-19 Grégoire Jadi <daimrod@gmail.com>
+
+ * net/rcirc.el (rcirc-omit-mode): Fix recenter error. (Bug#17769)
+
+2014-06-18 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * play/bubbles.el (bubbles--initialize, bubbles--show-scores)
+ (bubbles--game-over): Don't add `intangible' properties since they
+ didn't work anyway.
+
+2014-06-18 Juri Linkov <juri@jurta.org>
+
+ * vc/ediff-init.el (ediff-current-diff-Ancestor)
+ (ediff-fine-diff-Ancestor, ediff-even-diff-A, ediff-even-diff-B)
+ (ediff-even-diff-C, ediff-even-diff-Ancestor, ediff-odd-diff-A)
+ (ediff-odd-diff-B, ediff-odd-diff-C, ediff-odd-diff-Ancestor):
+ Add `min-colors 88' version with removed black/white foregrounds.
+ (Bug#10181)
+
+2014-06-18 Juri Linkov <juri@jurta.org>
+
+ * vc/diff-mode.el (diff-changed): Empty face definition to use
+ `diff-removed' and `diff-added' on tty as well. (Bug#10181)
+ (diff-context): Use darker color on light background and
+ lighter color on dark background.
+
+2014-06-18 Juri Linkov <juri@jurta.org>
+
+ * vc/diff-mode.el (diff-refine-changed): Rename from
+ `diff-refine-change' for consistency with `diff-changed'.
+ (diff-refine-change): Add obsolete face alias. (Bug#10181)
+
+ * vc/smerge-mode.el (smerge-refined-changed): Rename from
+ `smerge-refined-change'.
+ (smerge-refined-change): Add obsolete face alias.
+
+2014-06-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * rect.el (rectangle-preview): New custom.
+ (rectangle): New group.
+ (rectangle--pos-cols): Add `window' argument.
+ (rectangle--string-preview-state, rectangle--string-preview-window):
+ New vars.
+ (rectangle--string-flush-preview, rectangle--string-erase-preview)
+ (rectangle--space-to, rectangle--string-preview): New functions.
+ (string-rectangle): Use them.
+ (rectangle--inhibit-region-highlight): New var.
+ (rectangle--highlight-for-redisplay): Obey it. Make sure
+ `apply-on-region' uses the point-crutches of the right window.
+ Use :align-to rather than multiple spaces.
+
+2014-06-16 Andrea Rossetti <andrea.rossetti@gmail.com> (tiny change)
+
+ * ruler-mode.el (ruler-mode-window-col)
+ (ruler-mode-mouse-set-left-margin)
+ (ruler-mode-mouse-set-right-margin): Fix calculation of column
+ from mouse position (Bug#17768).
+
+2014-06-16 Ron Schnell <ronnie@driver-aces.com>
+
+ * play/dunnet.el (dun-doassign): Fix bug where UNIX variable assignment
+ without varname or rhs causes crash.
+ (dun-ftp): Fix bug where blank ftp password is allowed, making it
+ impossible to win endgame.
+ (dun-unix-verbs): Add ssh as alias to rlogin, because nobody knows what
+ rlogin is anymore.
+ (dun-help): Bump version number; update contact info.
+
+2014-06-15 Eli Barzilay <eli@barzilay.org>
+
+ * calculator.el (calculator-prompt, calculator-remove-zeros)
+ (calculator-mode-hook, calculator-operators, calculator-stack)
+ (calculator-mode): Tweak docstring.
+ (calculator-user-operators): Tweak docstring, fix a bug in the last
+ example.
+ (calculator-displayer): `std' case has an optional boolean.
+ (calculator-displayers): Use the new boolean to group in decimal mode.
+ (calculator-mode-map, calculator, calculator-message)
+ (calculator-op-arity, calculator-add-operators)
+ (calculator-string-to-number, calculator-displayer-prev)
+ (calculator-displayer-next, calculator-remove-zeros)
+ (calculator-eng-display, calculator-number-to-string)
+ (calculator-update-display, calculator-last-input)
+ (calculator-clear-fragile, calculator-digit, calculator-decimal)
+ (calculator-exp, calculator-saved-move, calculator-clear)
+ (calculator-copy, calculator-put-value, calculator-help)
+ (calculator-expt, calculator-truncate): Minor code improvements.
+ (calculator-need-3-lines): New function pulling out code from
+ `calculator'.
+ (calculator-get-display): Rename from `calculator-get-prompt', and
+ improved.
+ (calculator-push-curnum): Rename from `calculator-curnum-value', and
+ extended for all uses of it. All callers changed.
+ (calculator-groupize-number): New utility for splitting a number into
+ groups.
+ (calculator-standard-displayer): Improve code, new optional argument to
+ use comma-split groups, make second argument optional too to use with
+ 'left/'right inputs. All callers changed.
+ (calculator-reduce-stack-once): New utility, doing the meat of what
+ `calculator-reduce-stack' used to do, much improved (mostly using
+ `pcase' for conciseness and clarity).
+ (calculator-reduce-stack): Now doing just the reduction loop using
+ `calculator-reduce-stack-once'.
+ (calculator-funcall): Improve code, make it work in v24.3.1 too.
+ (calculator-last-input): Improve code, remove some old cruft.
+ (calculator-quit): Kill `calculator-buffer' in electric mode too.
+ (calculator-integer-p): Remove.
+ (calculator-fact): Improve code, make it work on non-integer values
+ too (using truncated numbers).
+
+2014-06-15 Michael Albinus <michael.albinus@gmx.de>
+
+ Sync with Tramp 2.2.10.
+
+ * net/tramp.el (tramp-methods): Tweak docstring.
+ (tramp-handle-file-accessible-directory-p): Check for
+ `file-readable-p' instead of `file-executable-p'.
+ (tramp-check-cached-permissions):
+ Use `tramp-compat-file-attributes'.
+ (tramp-call-process): Add new argument VEC. Adapt callees in all
+ tramp*.el files.
+
+ * net/tramp-adb.el (tramp-adb-handle-write-region): Improve messages.
+ (tramp-adb-maybe-open-connection): Don't set
+ `tramp-current-*' variables.
+
+ * net/tramp-cache.el (tramp-flush-file-function): Do not flush
+ file properties of temporary buffers.
+
+ * net/tramp-ftp.el (top): Remove special handling for URL syntax.
+
+ * net/tramp-gvfs.el (tramp-gvfs-methods) <sftp>: Add.
+ (tramp-gvfs-handle-delete-file): Flush file
+ properties, not directory properties.
+ (tramp-gvfs-handle-file-attributes): Use `string-to-number' when
+ reading "unix::mode".
+ (tramp-gvfs-handle-file-name-all-completions):
+ Use "-h" option for "gvfs-ls".
+ (tramp-gvfs-url-file-name): `user' and `localname' could be nil.
+ (tramp-gvfs-send-command): Simplify traces.
+
+ * net/tramp-sh.el (vc-handled-backends, vc-bzr-program)
+ (vc-git-program, vc-hg-program): Declare.
+ (tramp-methods) <sftp>: Remove. It has never worked satisfactorily.
+ (tramp-methods) <nc>: Add new method.
+ (tramp-methods) <telnet>: Redirect stderr to "/dev/null".
+ (tramp-methods) <plink, plinkx, pscp, psftp>: Improve
+ `tramp-login-args'.
+ (tramp-default-user-alist): Add "nc".
+ (top): Remove completion function for "sftp". Add completion
+ functions for "nc" and "psftp".
+ (tramp-do-copy-or-rename-file-out-of-band): Tweak docstring.
+ Implement support for "nc" method.
+ (tramp-sh-handle-expand-file-name, tramp-local-coding-commands)
+ (tramp-remote-coding-commands, tramp-call-local-coding-command):
+ Tweak docstring.
+ (tramp-sh-handle-write-region): Tweak error message.
+ (tramp-sh-handle-vc-registered): Remove backends when the remote
+ binary does not exist.
+ (tramp-find-inline-encoding): Do not raise an error.
+ (tramp-make-copy-program-file-name): Tweak docstring. Handle also
+ the "nc" case. Quote result also locally.
+
+ * net/tramp-smb.el (tramp-smb-handle-copy-directory)
+ (tramp-smb-handle-set-file-acl): Use `start-process'.
+ (tramp-smb-handle-insert-directory): Use progress reporter.
+ (tramp-smb-handle-rename-file): Flush also file properties of
+ FILENAME.
+
+ * net/trampver.el: Update release number.
+
+2014-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * ses.el: Miscellaneous cleanups; use lexical-binding; avoid
+ add-to-list.
+ (ses-localvars): Remove ses--local-printer-list, unused.
+ (ses--metaprogramming): New macro. Use it to defvar variables.
+ (ses-set-localvars): Simplify.
+ (ses--locprn, ses-cell): Use defstruct. Change ses-cell's
+ property-list into an alist.
+ (ses-locprn-get-compiled, ses-locprn-compiled-aset)
+ (ses-locprn-get-def, ses-locprn-def-aset, ses-locprn-get-number):
+ Remove; use defstruct accessors/setters instead.
+ (ses-cell-formula-aset, ses-cell-printer-aset)
+ (ses-cell-references-aset): Remove, use setf instead.
+ (ses--alist-get): New function.
+ (ses-cell-property): Rename from ses-cell-property-get and rewrite.
+ Use an alist instead of a plist and don't do move-to-front since the
+ list is always short.
+ (ses-cell-property-get-fun, ses-cell-property-delq-fun)
+ (ses-cell-property-set-fun, ses-cell-property-set)
+ (ses-cell-property-pop-fun, ses-cell-property-get-handle)
+ (ses-cell-property-handle-car, ses-cell-property-handle-setcar): Remove.
+ (ses--letref): New macro.
+ (ses-cell-property-pop): Rewrite.
+ (ses--cell): Rename from ses-cell and make it into a function.
+ Make `formula' fallback on `value' if nil.
+ (ses--local-printer): Rename from ses-local-printer and make it into
+ a function.
+ (ses-set-cell): Turn it into a macro so finding the accessor from the
+ field name is done at compile time.
+ (ses-repair-cell-reference-all): Test presence of `sym' rather than
+ `ref' before adding `sym' to :ses-repair-reference.
+ (ses-calculate-cell): Use ses--letref rather than
+ ses-cell-property-get-handle.
+ (ses-write-cells): Use a single prin1-to-string.
+ (ses-setter-with-undo): New function.
+ (ses-aset-with-undo, ses-set-with-undo): Rewrite using it.
+ (ses-unset-with-undo): Remove.
+ (ses-load): Prefer apply' over `eval'.
+ (ses-read-printer, ses-set-column-width): Use standard "(default
+ foo)" format.
+
+2014-06-15 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (leim, semantic): Use `make -C' rather than `cd && make'.
+
+ * progmodes/cc-langs.el: Require cl-lib. (Bug#17463)
+ Replace delete-duplicates and mapcan by cl- versions throughout.
+ And cl-macroexpand-all by macroexpand-all.
+ (delete-duplicates, mapcan, cl-macroexpand-all): No need to declare.
+
+2014-06-15 Eli Zaretskii <eliz@gnu.org>
+
+ * subr.el (posn-col-row): Doc fix. (Bug#17768)
+
+2014-06-15 Juri Linkov <juri@jurta.org>
+
+ * bindings.el: Put `ascii-character' property on keypad keys
+ mapped to characters. (Bug#17759)
+
+2014-06-15 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/smie.el (smie-next-sexp): Fix up "other-end" info when
+ bumping forward into a closing paren (bug#17761).
+
+ * term/xterm.el (xterm--version-handler): Work around for OSX
+ Terminal.app (bug#17607).
- * mouse.el (mouse-drag-line): Re-remove code initially removed
- on 2013-03-09 and inadvertently reintroduced on 2013-11-30
- (Bug#17819).
+2014-06-14 Ron Schnell <ronnie@driver-aces.com>
-2014-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
+ * play/dunnet.el (dun-describe-room, dun-mode):
+ If a lamp is in the room, you won't be eaten by a grue.
- * progmodes/sh-script.el (sh-smie-sh-rules): For { after &&, don't
- align with the surrounding parent (bug#17721).
+2014-06-13 Glenn Morris <rgm@gnu.org>
-2014-06-20 Eli Zaretskii <eliz@gnu.org>
+ * Makefile.in ($(lisp)/cus-load.el, $(lisp)/finder-inf.el)
+ (autoloads, $(lisp)/subdirs.el, compile-main, leim, semantic, compile)
+ (compile-always): GNU make automatically passes
+ command-line arguments to sub-makes.
- * textmodes/texinfo.el (texinfo-mode): Set skeleton-end-newline
- locally to nil.
- (texinfo-insert-block, texinfo-insert-@end)
- (texinfo-insert-@example, texinfo-insert-@quotation): Adjust to
- local setting of skeleton-end-newline by adding an explicit \n to
- the skeletons where appropriate. (Bug#17801)
+ * calendar/calendar.el (calendar-generate-window):
+ Remove pointless call to font-lock-fontify-buffer.
-2014-06-20 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-13 Matthias Meulien <orontee@gmail.com>
- * emacs-lisp/smie.el (smie--hanging-eolp-function): New var.
- (smie-indent--hanging-p): Use it.
- * progmodes/sh-script.el (sh-set-shell): Set it (bug#17621).
+ * simple.el (completion-list-mode-map): Navigate with tab and backtab
+ (bug#17767).
-2014-06-20 Leo Liu <sdl.web@gmail.com>
+2014-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
- * simple.el (read-quoted-char): Don't let help chars pop up help
- buffer. (Bug#16617)
+ * simple.el (set-mark-command): Simplify a bit.
-2014-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-12 Nicolas Richard <theonewiththeevillook@yahoo.fr>
- * progmodes/sh-script.el (sh-smie-sh-rules): Use same rule for && as
- for | (bug#17621).
+ * help.el (help--key-binding-keymap): New function.
+ (help--binding-locus): New function.
+ (describe-key): Mention the keymap in which the binding was
+ found. (bug#13948)
-2014-06-18 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
- * xt-mouse.el (xterm-mouse-translate-1): Fix last change (bug#17776).
- (xterm-mouse--read-event-sequence-1000): Drop unknown events instead of
- burping.
+ * hippie-exp.el (he--all-buffers): New function.
+ (try-expand-line-all-buffers, try-expand-list-all-buffers)
+ (try-expand-dabbrev-all-buffers): Use it.
-2014-06-18 Eli Zaretskii <eliz@gnu.org>
+2014-06-12 Emilio C. Lopes <eclig@gmx.net>
- * term/w32-win.el (dynamic-library-alist): Support giflib 5.1.0
- and later. (Bug#17790)
+ * hippie-exp.el (try-expand-line-all-buffers)
+ (try-expand-list-all-buffers, try-expand-dabbrev-all-buffers):
+ Read hippie-expand-only-buffers and hippie-expand-ignore-buffers in the
+ original buffer, in case they're buffer-local.
-2014-06-18 Juri Linkov <juri@jurta.org>
+2014-06-12 Vincent Belaïche <vincentb1@users.sourceforge.net>
- * dired.el (dired-mark-pop-up): Let-bind display-buffer-mark-dedicated
- to `soft'. (Bug#17554)
+ * ses.el (ses-initial-global-parameters-re): New defconst, a
+ specific regexp is needed now that ses.el can handle both
+ file-format 2 --- ie. no local printers --- and 3 --- i.e. may have
+ local printers.
+ (ses-localvars): Add local variables needed for local printer handling.
+ (ses-set-localvars): Handle hashmap initialisation.
+ (ses-paramlines-plist): Add param-line for number of local printers.
+ (ses-paramfmt-plist): New defconst, needed for code factorization
+ between functions `ses-set-parameter' and
+ `ses-file-format-extend-paramter-list'
+ (ses-make-local-printer-info): New defsubst.
+ (ses-locprn-get-compiled, ses-locprn-compiled-aset)
+ (ses-locprn-get-def, ses-locprn-def-aset, ses-locprn-get-number)
+ (ses-cell-printer-aset): New defmacro.
+ (ses-local-printer-compile): New defun.
+ (ses-local-printer): New defmacro.
+ (ses-printer-validate, ses-call-printer): Add support for local
+ printer functions.
+ (ses-file-format-extend-paramter-list): New defun.
+ (ses-set-parameter): Use const `ses-paramfmt-plist' for code
+ factorization.
+ (ses-load): Add support for local printer functions.
+ (ses-read-printer): Update docstring and add support for local printer
+ functions.
+ (ses-refresh-local-printer, ses-define-local-printer): New defun.
+ (ses-safe-printer): Add support for local printer functions.
-2014-06-17 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-12 Ivan Andrus <darthandrus@gmail.com>
- * delsel.el (electric-newline-and-maybe-indent): Mark it as well
- (bug#17737).
+ * ffap.el (ffap-lax-url): New var (bug#17723).
+ (ffap-url-at-point): Use it.
+ (ffap-file-at-point): Avoid returning just "/".
-2014-06-16 Dmitry Gutov <dgutov@yandex.ru>
+2014-06-12 Matthias Meulien <orontee@gmail.com>
- * progmodes/ruby-mode.el (ruby-font-lock-keywords): Don't fontify
- `!' in `!~' with `font-lock-negation-char-face'. (Bug#17732)
+ * progmodes/python.el (import skeleton): New skeleton (bug#17672).
+ (python-mode-map): Bind it.
-2014-06-15 Michael Albinus <michael.albinus@gmx.de>
+ * progmodes/python.el (class skeleton): Don't erase last char of class
+ name (bug#17683).
- * net/dbus.el (dbus-call-method): Push only non D-Bus events into
- `unread-command-events'.
+2014-06-12 Cameron Desautels <camdez@gmail.com> (tiny change)
-2014-06-14 Glenn Morris <rgm@gnu.org>
+ * help.el (where-is): Use `default' arg of completing-read (bug#17705).
- * progmodes/cc-langs.el: Require cl-lib. (Bug#17463)
- Replace delete-duplicates and mapcan by cl- versions throughout.
- And cl-macroexpand-all by macroexpand-all.
- (delete-duplicates, mapcan, cl-macroexpand-all): No need to declare.
+2014-06-12 Kevin Ryde <user42_kevin@yahoo.com.au>
-2014-06-14 Eli Zaretskii <eliz@gnu.org>
+ * files.el (auto-mode-alist): Map .ad files to xdefaults-mode
+ (bug#17745).
- * subr.el (posn-col-row): Doc fix. (Bug#17768)
+2014-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-06-14 Juri Linkov <juri@jurta.org>
+ * international/mule-cmds.el: Use lexical-binding.
+ (ucs-names): Simplify.
- * bindings.el: Put `ascii-character' property on keypad keys
- mapped to characters. (Bug#17759)
+2014-05-18 Eric Hanchrow <eric.hanchrow@gmail.com>
-2014-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
+ * progmodes/python.el (run-python): Use read-shell-command.
- * emacs-lisp/smie.el (smie-next-sexp): Fix up "other-end" info when
- bumping forward into a closing paren (bug#17761).
+2014-06-11 Stefan Monnier <monnier@iro.umontreal.ca>
- * term/xterm.el (xterm--version-handler): Work around for OSX
- Terminal.app (bug#17607).
+ * rect.el: Make it possible to move bounds past EOL or into TABs.
+ (operate-on-rectangle): Use apply-on-rectangle.
+ (rectangle--mark-crutches): New var.
+ (rectangle--pos-cols, rectangle--col-pos, rectangle--point-col)
+ (rectangle--crutches, rectangle--reset-crutches): New functions.
+ (apply-on-rectangle): Obey crutches. Avoid setq.
+ Fix missing final iteration if end is at EOB&BOL.
+ (rectangle-mark-mode-map): Add remap bindings for
+ exchange-point-and-mark and char/line movements.
+ (rectangle--*-char): New function.
+ (rectangle-exchange-point-and-mark, rectangle-right-char)
+ (rectangle-left-char, rectangle-forward-char)
+ (rectangle-backward-char, rectangle-next-line)
+ (rectangle-previous-line): New commands.
+ (rectangle--place-cursor): New function.
+ (rectangle--highlight-for-redisplay): Use it. Use apply-on-rectangle.
2014-06-08 Glenn Morris <rgm@gnu.org>
* bookmark.el (bookmark-load):
* uniquify.el (uniquify-buffer-name-style): Doc fixes.
-2014-06-06 Juri Linkov <juri@jurta.org>
+2014-06-08 Juri Linkov <juri@jurta.org>
* desktop.el: Activate auto-saving on window configuration changes.
(desktop-save-mode, desktop-auto-save-timeout): Add/remove
- `desktop-auto-save-set-timer' to/from `window-configuration-change-hook'.
+ `desktop-auto-save-set-timer' to/from
+ `window-configuration-change-hook'.
(desktop-auto-save-set-timer): Change REPEAT arg of
`run-with-idle-timer' from t to nil.
http://lists.gnu.org/archive/html/emacs-devel/2014-06/msg00147.html
-2014-06-06 Santiago Payà i Miralta <santiagopim@gmail.com>
+2014-06-08 Santiago Payà i Miralta <santiagopim@gmail.com>
* vc/vc-hg.el (vc-hg-working-revision): Use "hg parent" and
vc-hg-command (bug#17570).
-2014-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-08 Stefan Monnier <monnier@iro.umontreal.ca>
* international/mule-cmds.el (ucs-names): Add special entry for BEL
(bug#17702).
-2014-06-06 Glenn Morris <rgm@gnu.org>
+2014-06-08 Glenn Morris <rgm@gnu.org>
* startup.el (window-setup-hook): Doc fix.
-2014-06-05 Glenn Morris <rgm@gnu.org>
-
* emacs-lisp/package.el (package-check-signature)
(package-unsigned-archives): Doc fixes.
-2014-06-03 Martin Rudalics <rudalics@gmx.at>
+2014-06-08 Martin Rudalics <rudalics@gmx.at>
* window.el (display-buffer-use-some-window): Don't make window
used smaller than it was before (Bug#17671).
-2014-06-03 Eli Zaretskii <eliz@gnu.org>
+2014-06-08 Eli Zaretskii <eliz@gnu.org>
* menu-bar.el (menu-bar-open): Fix last change: use the PC
'redisplay' instead of '(sit-for 0)'.
-2014-06-03 Michael Albinus <michael.albinus@gmx.de>
+2014-06-08 Michael Albinus <michael.albinus@gmx.de>
- * net/tramp.el (tramp-ssh-controlmaster-options): Improve search
- regexp. (Bug#17653)
+ * net/tramp.el (tramp-ssh-controlmaster-options):
+ Improve search regexp. (Bug#17653)
-2014-06-03 Glenn Morris <rgm@gnu.org>
+2014-06-08 Glenn Morris <rgm@gnu.org>
* emacs-lisp/package.el (package-pinned-packages): Doc fix.
-2014-06-02 Eli Zaretskii <eliz@gnu.org>
+2014-06-08 Eli Zaretskii <eliz@gnu.org>
* menu-bar.el (menu-bar-open): Fix invocation via M-x.
-2014-06-01 Eli Zaretskii <eliz@gnu.org>
+2014-06-06 Santiago Payà i Miralta <santiagopim@gmail.com>
+
+ * vc/vc-hg.el (vc-hg-create-tag, vc-hg-retrieve-tag): New functions
+ (bug#17586).
+
+ * vc/vc-hg.el (vc-hg-log-graph): New var.
+ (vc-hg-print-log): Use it.
+ (vc-hg-root-log-format): Include branch name and bookmarks; ignore
+ graph output (bug#17515).
+
+2014-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * mouse.el (mouse-posn-property): Ignore buffer position info when the
+ even happened elsewhere.
+
+2014-06-06 Mario Lang <mlang@delysid.org>
+
+ * emacs-lisp/tabulated-list.el (tabulated-list-print): Only call
+ `recenter' if `current-buffer' is equal to `window-buffer'.
+
+2014-06-05 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/cl-macs.el (cl-macrolet): Avoid excessive progn's.
+
+2014-06-05 Michal Nazarewicz <mina86@mina86.com>
+
+ * textmodes/tildify.el (tildify-foreach-region-outside-env):
+ New function which calls a callback on portions of the buffer that are
+ outside of ignored environments.
+ (tildify-build-regexp): Remove function since it is now
+ incorporated in `tildify-foreach-region-outside-env' where it is
+ optimized and simplified by the use of `mapconcat'.
+ (tildify-tildify): Return number of substitutions made so that…
+ (tildify-count): …can be removed.
+ (tildify-find-env): Accept a new PAIRS argument which was
+ previously looked up in `tildify-ignored-environments-alist' each
+ time the function was called. With this change, the lookup is
+ performed only once in `tildify-foreach-region-outside-env'.
+ (tildify-region): Greatly simplify the function since now most of
+ the work is done by `tildify-foreach-region-outside-env'.
+ (tildify-mode-alist): Simplify slightly by avoiding if and setq
+ and instead using or.
+
+ * textmodes/tildify.el (tildify-ignored-environments-alist):
+ Optimize environments regexes
+
+ Each time beginning of an environment to ignore is found,
+ `tildify-find-env' needs to identify regexp for the ending
+ of the environment. This is done by trying all the opening
+ regexes on matched text in a loop, so to speed that up, this
+ loop should have fewer things to match, which can be done by
+ using alternatives in the opening regexes.
+
+ Coincidentally, this should make matching of the opening
+ regexp faster as well thanks to the use of `regexp-opt' and
+ having common prefix pulled from many regexes.
+
+ * textmodes/tildify.el (tildify-string-alist)
+ (tildify-ignored-environments-alist): Add `nxml-mode' to the list
+ of supported modes since `xml-mode' is no longer a thing but just
+ an alias to the former. Also include comments and insides of tags
+ in `tildify-ignored-environments-alist' for XML modes. Finally,
+ since XML does not define “ ”[1], use a numeric reference for
+ a no-break space (namely “ ”)
+
+ [1] XML specification defines only a handful of predefined entities.
+ The list is at <http://www.w3.org/TR/REC-xml/#sec-predefined-ent>
+ and includes only <, >, &, ' and " (meaning <,
+ >, &, ' and " respectively). This is in contrast to HTML and even
+ XHTML which defined a whole bunch of entities including “ ”.
+
+ * textmodes/tildify.el (tildify-pattern-alist)
+ (tildify-string-alist, tildify-ignored-environments-alist):
+ Improve defcustom's types by adding more tags explaining what each
+ value means and replace “sexp” used in
+ `tildify-ignored-environments-alist' with a full type declaration.
+
+ * textmodes/tildify.el (tildify-find-env): Fix matched group
+ indexes in end-regex building
+
+ When looking for a start of an ignore-environment, the regex is built
+ by concatenating regexes of all the environments configured in
+ `tildify-ignored-environments-alist'. So for example, the following
+ list could be used to match TeX's \verb and \verb* commands:
+
+ (("\\\\verb\\(.\\)" . (1))
+ ("\\\\verb\\*\\(.\\)" . (1)))
+
+ This would result in the following regex being used to find the start
+ of any of the variants of the \verb command:
+
+ \\\\verb\\(.\\)\\|\\\\verb\\*\\(.\\)
+
+ But now, if “\\\\verb\\*\\(.\\)” matches, the first capture group
+ won't match anything, and thus (match-string 1) will be nil, which
+ will cause building of the end-matching regex to fail.
+
+ Fix this by using capture groups from the time when the opening
+ regexes are matched individually.
+
+ * textmodes/tildify.el (tildify-find-env): Fix end-regex building
+ in `tildify-find-env'
+
+ The `tildify-ignored-environments-alist' allows the end-regex to
+ be provided not as a static string but mix of strings and indexes
+ of groups matched the begin-regex. For example, the “\verb!…!”
+ TeX-command (where “!” is an arbitrary character) is handled
+ using:
+
+ ("\\\\verb\\*?\\(.\\)" . (1))
+
+ In the same way, the following should be supported as well:
+
+ ("open-\\(.\\)" . ("end-" 1))
+
+ However the tildify-find-env function fails at
+
+ (concat result
+ (if (stringp (setq aux (car expression)))
+ expression ; BUG: expression is a list
+ (regexp-quote (match-string aux))))
+
+ where the string part is handled incorrectly.
+
+ The most trivial fix would be to replace `expression' in the
+ true-part of the if-statement with `aux', but instead, this commit
+ optimizes `tildify-find-env' by changing it to use `mapconcat'
+ rather than open-coded while-loop.
+
+2014-06-05 Mario Lang <mlang@delysid.org>
+
+ * woman.el (woman-mapcan): Remove.
+ (woman-parse-colon-path): Use cl-mapcan instead.
+
+2014-06-03 Rüdiger Sonderfeld <ruediger@c-plusplus.de>
+
+ * register.el: Add link to Emacs manual in Commentary.
+
+2014-06-02 Sam Steingold <sds@gnu.org>
+
+ * menu-bar.el (lookup-key-ignore-too-long): Extract from...
+ (popup-menu): ...here.
+ (menu-bar-open): Use it to avoid an error when `lookup-key'
+ returns a number.
+
+2014-06-02 Michael Albinus <michael.albinus@gmx.de>
+
+ * net/tramp.el (tramp-call-process): Add traces.
+ (tramp-handle-unhandled-file-name-directory): Return "/".
+
+2014-06-02 Wilson Snyder <wsnyder@wsnyder.org>
+
+ Sync with upstream verilog-mode revision 3cd8144.
+ * progmodes/verilog-mode.el (verilog-mode-version): Bump.
+ (verilog-auto-arg-format): New option, to support newlines in AUTOARG.
+ (verilog-type-font-keywords): Add nor.
+ (verilog-batch-execute-func): Force reading of Local Variables.
+ Fix printing "no changes to be saved" with verilog-batch.
+ (verilog-auto-arg-ports): Doc fix.
+ Add verilog-auto-arg-format to support newlines in AUTOARG.
+ (verilog-auto-arg): Doc fix.
+
+2014-06-02 Glenn Morris <rgm@gnu.org>
+
+ * emulation/crisp.el, emulation/tpu-edt.el, emulation/tpu-extras.el:
+ * emulation/tpu-mapper.el, emulation/vi.el, emulation/vip.el:
+ * emulation/ws-mode.el: Move to obsolete/.
+ * Makefile.in (AUTOGEN_VCS): Update for moved tpu-edu.el.
+
+2014-06-02 Eli Zaretskii <eliz@gnu.org>
* simple.el (keyboard-quit): Force update of mode lines, to remove
the "Def" indicator, if we were defining a macro. (Bug#17615)
-2014-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-02 Stefan Monnier <monnier@iro.umontreal.ca>
* minibuffer.el (minibuffer-force-complete-and-exit):
Obey minibuffer-default (bug#17545).
* progmodes/js.el (js-indent-line): Don't mix columns and chars
(bug#17619).
-2014-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
-
* subr.el (set-transient-map): Don't wait for some "nested"
transient-map to finish if we're only supposed to be active for
the next command (bug#17642).
-2014-05-31 Leo Liu <sdl.web@gmail.com>
+2014-06-02 Leo Liu <sdl.web@gmail.com>
* emacs-lisp/gv.el (window-buffer, window-display-table)
(window-dedicated-p, window-hscroll, window-point, window-start):
Fix gv-expander. (Bug#17630)
-2014-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-02 Stefan Monnier <monnier@iro.umontreal.ca>
* mouse.el (mouse-posn-property): Ignore posn-point for mode-line
clicks (bug#17633).
for the single comma, since ", " is *very* common in normal French text
(bug#17643).
-2014-05-30 Glenn Morris <rgm@gnu.org>
+2014-06-02 Glenn Morris <rgm@gnu.org>
* emacs-lisp/package.el (package-check-signature)
(package-unsigned-archives): Fix :version.
-2014-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-02 Stefan Monnier <monnier@iro.umontreal.ca>
* subr.el (sit-for): Don't run input-methods (bug#15614).
-2014-05-28 Glenn Morris <rgm@gnu.org>
+2014-06-02 Glenn Morris <rgm@gnu.org>
* cus-start.el: Fix some :version numbers.
-2014-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-06-02 Stefan Monnier <monnier@iro.umontreal.ca>
* simple.el (deactivate-mark): Set mark-active to nil even if
deactivation is done via setting transient-mark-mode to nil,
* emacs-lisp/byte-opt.el (byte-optimize-binary-predicate): Don't assume
there can't be more than 2 arguments (bug#17584).
-2014-05-27 Glenn Morris <rgm@gnu.org>
+2014-06-02 Glenn Morris <rgm@gnu.org>
* simple.el (filter-buffer-substring-functions)
(filter-buffer-substring-function, buffer-substring-filters)
* abbrev.el (abbrev-expand-functions, abbrev-expand-function)
(expand-abbrev, abbrev--default-expand): Doc fixes.
-2014-05-26 Paul Eggert <eggert@cs.ucla.edu>
+2014-06-02 Paul Eggert <eggert@cs.ucla.edu>
Include sources used to create macuvs.h.
* international/README: Refer to the Unicode Terms of Use rather
than copying it bodily here, as that simplifies maintenance.
-2014-05-25 Andreas Schwab <schwab@linux-m68k.org>
+2014-06-01 Glenn Morris <rgm@gnu.org>
+
+ * loadup.el (load-prefer-newer): Set non-nil when dumping. (Bug#17629)
+
+2014-05-31 Glenn Morris <rgm@gnu.org>
+
+ * files.el (locate-dominating-file): Expand file argument. (Bug#17641)
+
+2014-05-30 Glenn Morris <rgm@gnu.org>
+
+ * loadup.el: Treat `command-line-args' more flexibly.
+
+2014-05-30 Alan Mackenzie <acm@muc.de>
+
+ Guard (looking-at "\\s!") from XEmacs.
+ * progmodes/cc-engine.el (c-state-pp-to-literal): Add guard form.
+
+2014-05-30 Ken Olum <kdo@cosmos.phy.tufts.edu>
+
+ * mail/rmail.el (rmail-delete-forward, rmail-delete-backward):
+ The argument COUNT is now optional, to be more backward-compatible.
+ Doc fix. (Bug#17560)
+
+2014-05-29 Reuben Thomas <rrt@sc3d.org>
+
+ * whitespace.el (whitespace-report-region):
+ Simplify documentation.
+ (whitespace-report-region): Allow report-if-bogus to take the
+ value `never', for non-interactive use.
+ (whitespace-report): Refer to whitespace-report-region's
+ documentation.
+
+2014-05-29 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * whitespace.el: Use font-lock-flush. Minimize refontifications.
+ Side benefit: it works without jit-lock.
+ (whitespace-point--used): New buffer-local var.
+ (whitespace-color-on): Initialize it and flush it. Use font-lock-flush.
+ (whitespace-color-off): Use font-lock-flush.
+ (whitespace-point--used, whitespace-point--flush-used): New functions.
+ (whitespace-trailing-regexp, whitespace-empty-at-bob-regexp)
+ (whitespace-empty-at-eob-regexp): Use them.
+ (whitespace-post-command-hook): Rewrite.
+
+ * font-lock.el (font-lock-flush, font-lock-ensure): New functions.
+ (font-lock-fontify-buffer): Mark interactive-only.
+ (font-lock-multiline, font-lock-fontified, font-lock-set-defaults):
+ Make buffer-local.
+ (font-lock-specified-p): Remove redundant boundp check.
+ (font-lock-flush-function, font-lock-ensure-function): New vars.
+ (font-lock-turn-on-thing-lock): Set them.
+ (font-lock-default-fontify-buffer): Obey font-lock-dont-widen.
+ (font-lock-after-change-function): Make `old-len' optional.
+ (font-lock-set-defaults): Remove redundant `set' of font-lock-defaults.
+ Call font-lock-flush, just in case.
+ * progmodes/verilog-mode.el (verilog-preprocess): Disable workaround in
+ recent Emacsen.
+ * progmodes/vera-mode.el (vera-fontify-buffer): Declare obsolete.
+ (vera-mode-map, vera-mode-menu): Remove bindings to it.
+ * progmodes/idlw-help.el (idlwave-help-fontify): Use font-lock-ensure
+ and with-syntax-table.
+ * textmodes/conf-mode.el (conf-quote-normal):
+ * progmodes/sh-script.el (sh-set-shell):
+ * progmodes/prog-mode.el (prettify-symbols-mode):
+ * progmodes/f90.el (f90-font-lock-n):
+ * progmodes/cwarn.el (cwarn-mode):
+ * nxml/nxml-mode.el (nxml-toggle-char-ref-extra-display):
+ * progmodes/compile.el (compilation-setup, compilation--unsetup):
+ * hi-lock.el (hi-lock-mode, hi-lock-unface-buffer)
+ (hi-lock-set-pattern, hi-lock-set-file-patterns): Use font-lock-flush.
+ * mail/rmail.el (rmail-variables): Set font-lock-dont-widen instead of
+ font-lock-fontify-buffer-function and
+ font-lock-unfontify-buffer-function.
+ (rmail-unfontify-buffer-function, rmail-fontify-message):
+ Use with-silent-modifications.
+ * htmlfontify.el (hfy-force-fontification): Use jit-lock-fontify-now
+ and font-lock-ensure.
+ * bs.el (bs-show-in-buffer): Use font-lock-ensure.
+
+2014-05-28 Thien-Thi Nguyen <ttn@gnu.org>
+
+ * emacs-lisp/package.el (package-generate-autoloads):
+ Inhibit backup files.
+
+2014-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/hideshow.el (hs-hide-all): Call syntax-propertize
+ (bug#17608).
+
+2014-05-21 Michal Nazarewicz <mina86@mina86.com>
+
+ * textmodes/tildify.el (tildify-buffer, tildify-region):
+ Add dont-ask option.
+
+2014-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (zerop): Move from C. Add compiler-macro (bug#17475).
+ * emacs-lisp/byte-opt.el (byte-optimize-zerop): Remove.
+
+ * subr.el (internal--funcall-interactively): New.
+ (internal--call-interactively): Remove.
+ (called-interactively-p): Detect funcall-interactively instead of
+ call-interactively.
+ * simple.el (repeat-complex-command): Use funcall-interactively.
+ (repeat-complex-command--called-interactively-skip): Remove.
+
+2014-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * register.el (register-read-with-preview): Don't burp on
+ frame switches (e.g. due to the frame we just popped).
+
+ * mouse.el (mouse-set-region): Handle spurious drag events (bug#17562).
+ (mouse-drag-track): Annotate `mouse-drag-start' so we know we moved.
+
+2014-05-26 Andreas Schwab <schwab@linux-m68k.org>
* cus-face.el (custom-face-attributes): Add :distant-foreground.
-2014-05-25 Martin Rudalics <rudalics@gmx.at>
+2014-05-26 Martin Rudalics <rudalics@gmx.at>
- * window.el (window--dump-frame): Remove interactive
- specification.
+ * window.el (window--dump-frame): Remove interactive specification.
-2014-05-23 Glenn Morris <rgm@gnu.org>
+2014-05-26 Glenn Morris <rgm@gnu.org>
* hippie-exp.el (he-line-search-regexp):
Handle comint-prompt-regexp containing subgroups. (Bug#17529)
-2014-05-23 Stephen Berman <stephen.berman@gmx.net>
+2014-05-26 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el: Remove dependence on auto-mode-alist,
to avoid errors when trying to create or visit a file foo.todo
(auto-mode-alist): Remove add-to-list calls making Todo file
extensions unrestrictedly tied to Todo modes.
-2014-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-05-26 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/nadvice.el (advice--member-p): Change second arg.
(advice-function-member-p): Tell it to check both names and functions
(bug#17531).
(advice--add-function): Adjust call accordingly.
-2014-05-23 Stephen Berman <stephen.berman@gmx.net>
+2014-05-26 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el: Miscellaneous bug fixes.
(todo-delete-file): When deleting an archive but not its todo
(todo-reset-highlight-item): Also reset in filtered items files.
Fix incorrect variable reference in document string.
-2014-05-22 Glenn Morris <rgm@gnu.org>
+2014-05-26 Glenn Morris <rgm@gnu.org>
* window.el (window--dump-frame): Avoid error in --without-x builds.
-2014-05-21 Glenn Morris <rgm@gnu.org>
+2014-05-26 Glenn Morris <rgm@gnu.org>
* nxml/nxml-mode.el (xml-mode): Only define this alias once.
-2014-05-21 Eli Zaretskii <eliz@gnu.org>
+2014-05-26 Eli Zaretskii <eliz@gnu.org>
* frame.el (set-frame-font): Doc fix.
* menu-bar.el (menu-set-font): Doc fix. (Bug#17532)
-2014-05-21 Dmitry Gutov <dgutov@yandex.ru>
+2014-05-26 Dmitry Gutov <dgutov@yandex.ru>
* emacs-lisp/package.el (package--download-one-archive):
Use `write-region' instead of `save-buffer' to avoid running various
(describe-package-1): Same. Insert newline at the end of the
buffer if appropriate.
-2014-05-20 Juri Linkov <juri@jurta.org>
+2014-05-26 Juri Linkov <juri@jurta.org>
* avoid.el (mouse-avoidance-set-mouse-position): Don't raise frame.
(mouse-avoidance-ignore-p): Remove `switch-frame', add `focus-out'.
* avoid.el (mouse-avoidance-banish-position): Fix defcustom :options
to allow changing its value with `set-variable'.
-2014-05-20 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-05-26 Stefan Monnier <monnier@iro.umontreal.ca>
* progmodes/scheme.el (scheme-mode-syntax-table): Remove hack for
#; comments.
* emacs-lisp/lisp.el (end-of-defun): Ensure we move (bug#17274).
-2014-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
-
* emacs-lisp/timer.el (timer-event-handler): Don't run if canceled
(bug#17392).
-2014-05-17 Michael Albinus <michael.albinus@gmx.de>
+2014-05-26 Michael Albinus <michael.albinus@gmx.de>
* net/tramp-sh.el (tramp-find-inline-encoding): Do not match "%%t"
for a temporary file name.
-2014-05-17 Eli Zaretskii <eliz@gnu.org>
+2014-05-26 Eli Zaretskii <eliz@gnu.org>
* simple.el (line-move-ignore-invisible): Doc fix. (Bug#17511)
-2014-05-16 Michael Albinus <michael.albinus@gmx.de>
+2014-05-26 Michael Albinus <michael.albinus@gmx.de>
* net/dbus.el (dbus-init-bus, dbus-call-method)
(dbus-call-method-asynchronously, dbus-send-signal)
(dbus-method-return-internal, dbus-method-error-internal):
Check, whether Emacs has been compiled with D-Bus support. (Bug#17508)
-2014-05-14 Nicolas Richard <theonewiththeevillook@yahoo.fr>
+2014-05-26 Nicolas Richard <theonewiththeevillook@yahoo.fr>
* emacs-lisp/eieio-opt.el (eieio-help-class): Correctly deal with
methods which do not have a doc string. (Bug#17490)
+2014-05-25 Tassilo Horn <tsdh@gnu.org>
+
+ * textmodes/reftex-ref.el (reftex-format-special): Make it work
+ also for AMS Math's \eqref macro.
+
+2014-05-25 Thien-Thi Nguyen <ttn@gnu.org>
+
+ Arrange to never byte-compile the generated -pkg.el file.
+
+ * emacs-lisp/package.el (package-generate-description-file):
+ Output first-line comment to set buffer-local var `no-byte-compile'.
+ Suggested by Dmitry Gutov:
+ <http://lists.gnu.org/archive/html/emacs-devel/2014-05/msg00401.html>.
+
+2014-05-25 Thien-Thi Nguyen <ttn@gnu.org>
+
+ Fix bug: Properly quote args to generated -pkg.el `define-package'.
+
+ * emacs-lisp/package.el (package-generate-description-file):
+ Inline `package--alist-to-plist'; rewrite to selectively
+ quote alist values that are not self-quoting.
+ (package--alist-to-plist): Delete func.
+
+2014-05-25 Andreas Schwab <schwab@linux-m68k.org>
+
+ * term/xterm.el (xterm-function-map): Add mapping for shifted
+ keypad keys.
+
+2014-05-24 Daniel Colascione <dancol@dancol.org>
+
+ * progmodes/subword.el (subword-find-word-boundary): Move point to
+ correct spot before search. (Bug#17580)
+
+ * emacs-lisp/nadvice.el (defun): Write in eval-and-compile to avoid
+ breaking the build.
+
+2014-05-24 Leo Liu <sdl.web@gmail.com>
+
+ * calc/calc.el (math-bignum): Handle most-negative-fixnum. (Bug#17556)
+
+2014-05-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * minibuffer.el (completion--sreverse): Remove.
+ (completion--common-suffix): Use `reverse' instead.
+ * emacs-lisp/regexp-opt.el (regexp-opt-group): Use `reverse' on strings.
+
+2014-05-22 Glenn Morris <rgm@gnu.org>
+
+ * shell.el (shell-mode) <shell-dirstack-query>: Bypass bash aliases.
+
+2014-05-21 Daniel Colascione <dancol@dancol.org>
+
+ * files.el (interpreter-mode-alist): Add mksh.
+
+ * progmodes/sh-script.el (sh-ancestor-alist): Add mksh, a pdksh
+ derivative.
+ (sh-alias-alist): Alias /system/bin/sh (Android's system shell) to
+ mksh. Improve custom spec; allow regular expressions.
+ (sh-shell): Delegate name splitting to `sh-canonicalize-shell'.
+ (sh-after-hack-local-variables): New function.
+ (sh-mode): Use it; respect file-local `sh-shell' variable. (Bug#17333)
+ (sh-set-shell): Use `sh-canonicalize-shell' instead of open-coding
+ the normalization.
+ (sh-canonicalize-shell): Rewrite to support regexes.
+
+2014-05-21 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/cl-lib.el (cl-endp): Fix last change.
+
+2014-05-19 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/cl-lib.el (cl-endp): Conform to CL's semantics.
+
+2014-05-18 Glenn Morris <rgm@gnu.org>
+
+ * loadup.el:
+ * play/gametree.el: `track-mouse' is always defined since 2012-11-24.
+
+2014-05-14 Sam Steingold <sds@gnu.org>
+
+ * progmodes/python.el (python-shell-get-or-create-process):
+ Do not bind `current-prefix-arg' so that C-c C-z does not talk
+ back unless requested.
+
+2014-05-14 Glenn Morris <rgm@gnu.org>
+
+ * subr.el (with-file-modes): New macro.
+ * printing.el (pr-save-file-modes): Make obsolete.
+ * eshell/esh-util.el (eshell-with-file-modes): Make obsolete.
+ * emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2):
+ Add with-file-modes.
+ * doc-view.el (doc-view-make-safe-dir):
+ * epg.el (epg--start):
+ * files.el (locate-user-emacs-file, make-temp-file)
+ (backup-buffer-copy, move-file-to-trash):
+ * printing.el (pr-despool-print, pr-call-process, pr-text2ps):
+ * eshell/esh-util.el (eshell-with-private-file-modes)
+ (eshell-make-private-directory):
+ * net/browse-url.el (browse-url-mosaic):
+ * obsolete/mailpost.el (post-mail-send-it):
+ * obsolete/pgg-pgp.el (pgg-pgp-verify-region):
+ * obsolete/pgg-pgp5.el (pgg-pgp5-verify-region):
+ Use with-file-modes.
+
+ * vc/emerge.el (emerge-make-temp-file): Simplify.
+
2014-05-14 Stephen Berman <stephen.berman@gmx.net>
Stefan Monnier <monnier@iro.umontreal.ca>
Make pointless option obsolete.
(emerge-temp-file-mode): Make non-functional option obsolete.
-2014-05-13 Michael Albinus <michael.albinus@gmx.de>
+2014-05-14 Michael Albinus <michael.albinus@gmx.de>
* net/browse-url.el (browse-url):
Use `unhandled-file-name-directory' when setting `default-directory',
in order to circumvent stalled remote connections. (Bug#17425)
+2014-05-14 Glenn Morris <rgm@gnu.org>
+
+ * printing.el (subst-char-in-string, make-temp-file, pr-get-symbol):
+ Optimize on Emacs, which has the relevant functions for ages.
+
+2014-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * simple.el (undo-make-selective-list): Obey undo-no-redo.
+
+2014-05-12 Sam Steingold <sds@gnu.org>
+
+ * calendar/time-date.el (seconds-to-string): New function to
+ pretty print time delay in seconds.
+
2014-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
+ * mpc.el (mpc-format): Trim Date to the year.
+ (mpc-songs-hashcons): Shorten the Date field.
+
* emacs-lisp/nadvice.el (advice--interactive-form): Don't get fooled
into autoloading just because of a silly indirection.
* vc/vc-hg.el (vc-hg-unregister): New function. (Bug#17454)
-2014-05-11 Glenn Morris <rgm@gnu.org>
+2014-05-12 Glenn Morris <rgm@gnu.org>
* emacs-lisp/find-gc.el: Move to ../admin.
-2014-05-10 Glenn Morris <rgm@gnu.org>
-
* printing.el (pr-version):
* ps-print.el (ps-print-version): Also mention bug-gnu-emacs.
* net/browse-url.el (browse-url-mosaic):
Create /tmp/Mosaic.PID as a private file.
-2014-05-10 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-05-12 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/nadvice.el: Support adding a given function multiple times.
(advice--member-p): If name is given, only compare the name.
(advice--add-function): Pass the name, if any, to
advice--remove-function.
-2014-05-09 Philipp Rumpf <prumpf@gmail.com> (tiny change)
+2014-05-12 Philipp Rumpf <prumpf@gmail.com> (tiny change)
* electric.el (electric-indent-post-self-insert-function): Don't use
`pos' after modifying the buffer (bug#17449).
-2014-05-09 Stefan Monnier <monnier@iro.umontreal.ca>
-
- * subr.el (function-put): Add function.
-
-2014-05-09 Stephen Berman <stephen.berman@gmx.net>
+2014-05-12 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el (todo-insert-item-from-calendar):
Correct argument list to conform to todo-insert-item--basic.
-2014-05-09 Glenn Morris <rgm@gnu.org>
+2014-05-12 Glenn Morris <rgm@gnu.org>
* files.el (cd-absolute): Test if directory is accessible
rather than executable. (Bug#17330)
* progmodes/compile.el (recompile):
Handle C-u M-x recompile from a non-compilation buffer. (Bug#17444)
-2014-05-08 Juri Linkov <juri@jurta.org>
-
- * dired.el (dired-check-switches, dired-switches-recursive-p):
- New functions. (Bug#17218)
- (dired-switches-escape-p, dired-move-to-end-of-filename):
- Use `dired-check-switches'.
- (dired-insert-old-subdirs, dired-build-subdir-alist)
- (dired-sort-R-check): Use `dired-switches-recursive-p'.
-
-2014-05-08 Glenn Morris <rgm@gnu.org>
-
* net/browse-url.el (browse-url-mosaic):
Be careful when writing /tmp/Mosaic.PID. (Bug#17428)
This is CVE-2014-3423.
+2014-05-11 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * mouse.el: Use the normal toplevel loop while dragging.
+ (mouse-set-point): Handle multi-clicks.
+ (mouse-set-region): Handle multi-clicks for drags.
+ (mouse-drag-region): Update call accordingly.
+ (mouse-drag-track): Remove `do-mouse-drag-region-post-process' hack.
+ Use the normal event loop instead of a local while/read-event loop.
+ (global-map): Remove redundant bindings for double/triple-mouse-1.
+ * xt-mouse.el (xterm-mouse-translate-1): Only process one event at a time.
+ Generate synthetic down events when the protocol only sends up events.
+ (xterm-mouse-last): Remove.
+ (xterm-mouse--read-event-sequence-1000): Use xterm-mouse-last-down
+ terminal parameter instead.
+ (xterm-mouse--set-click-count): New function.
+ (xterm-mouse-event): Detect/generate double/triple clicks.
+ * reveal.el (reveal-close-old-overlays): Don't close while dragging.
+
+ * info.el (Info-quoted): New face.
+ (Info-mode-font-lock-keywords): New var.
+ (Info-mode): Use it.
+
+ * emacs-lisp/lisp-mode.el (preceding-sexp): Exclude leading "," which
+ are a hindrance for C-x C-e.
+
+2014-05-11 Leo Liu <sdl.web@gmail.com>
+
+ * net/rcirc.el (rcirc-sentinel): Fix last change.
+
+2014-05-08 Sam Steingold <sds@gnu.org>
+
+ * net/rcirc.el (rcirc-reconnect-delay): New user option.
+ (rcirc-sentinel): Auto-reconnect to the server if
+ `rcirc-reconnect-delay' is non-0 (but not more often than its
+ value in case the host is off-line).
+
+2014-05-09 Eli Zaretskii <eliz@gnu.org>
+
+ * progmodes/grep.el (lgrep): Fix a typo in last commit.
+
+2014-05-09 Glenn Morris <rgm@gnu.org>
+
+ * files.el (file-expand-wildcards):
+ * man.el (Man-support-local-filenames):
+ * printing.el (pr-i-directory, pr-interface-directory):
+ * progmodes/grep.el (lgrep, rgrep):
+ * textmodes/ispell.el (ispell-call-process)
+ (ispell-call-process-region, ispell-start-process)
+ (ispell-init-process): Use file-accessible-directory-p.
+
2014-05-08 Stefan Monnier <monnier@iro.umontreal.ca>
* xt-mouse.el: Drop spurious/oddly shaped events (bug#17378).
(xterm-mouse-event): Propagate it.
(xterm-mouse-translate-1): Handle it.
-2014-05-07 Stephen Berman <stephen.berman@gmx.net>
+2014-05-08 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el (todo-insert-item--apply-args): When all
four slots of the parameter list are filled, make sure to pass it
to the argument list of todo-insert-item--basic.
-2014-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-05-08 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/package.el (package-compute-transaction): Topological sort.
Add optional `seen' argument to detect and break infinite loops.
-2014-05-06 Eli Zaretskii <eliz@gnu.org>
+2014-05-08 Eli Zaretskii <eliz@gnu.org>
* emacs-lisp/find-gc.el (find-gc-unsafe, find-unsafe-funcs)
(trace-unsafe, trace-use-tree): Make parentheses style be
according to Emacs style.
-2014-05-06 Michael Albinus <michael.albinus@gmx.de>
+2014-05-08 Michael Albinus <michael.albinus@gmx.de>
* net/tramp-sh.el (tramp-remote-process-environment):
Remove HISTFILE and HISTSIZE; it's too late to set them here.
name. (Bug#17415)
This is CVE-2014-3424.
-2014-05-06 Glenn Morris <rgm@gnu.org>
+2014-05-08 Glenn Morris <rgm@gnu.org>
* emacs-lisp/find-gc.el (find-gc-source-directory): Give it a value.
(find-gc-source-files): Update some names.
Avoid predictable temp-file names. (http://bugs.debian.org/747100)
This is CVE-2014-3422.
-2014-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-05-08 Stefan Monnier <monnier@iro.umontreal.ca>
* minibuffer.el (completion--try-word-completion): Revert fix for
Bug#15980 (bug#17375).
Don't burp is xterm-mouse-last is not set as expected.
Never return negative indices.
-2014-05-05 Dmitry Gutov <dgutov@yandex.ru>
+2014-05-08 Dmitry Gutov <dgutov@yandex.ru>
* progmodes/ruby-mode.el (ruby-syntax-propertize-function):
Backtrack one char if the global/char-literal var matcher hits
inside a string. The next char could be the beginning of an
expression expansion.
-2014-05-05 Glenn Morris <rgm@gnu.org>
+2014-05-08 Glenn Morris <rgm@gnu.org>
* help-fns.el (describe-function-1): Test for an autoload before a
macro, since `macrop' works on autoloads. (Bug#17410)
-2014-05-05 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-05-08 Stefan Monnier <monnier@iro.umontreal.ca>
* electric.el (electric-indent-functions-without-reindent): Add yaml.
* minibuffer.el (completion-table-with-quoting) <completion--unquote>:
Make sure the new point we return is within the new string (bug#17239).
-2014-05-03 Eli Zaretskii <eliz@gnu.org>
+2014-05-05 Daniel Colascione <dancol@dancol.org>
+
+ * progmodes/compile.el (compilation-error-regexp-alist-alist):
+ Port `gnu' pattern to rx.
+
+2014-05-05 Jarek Czekalski <jarekczek@poczta.onet.pl>
+
+ Remove unneeded prompt when closing a buffer with active
+ emacsclient ("Buffer ... still has clients"), #16548.
+ * server.el (server-start): Remove the only call to:
+ (server-kill-buffer-query-function): Remove.
+
+2014-05-04 Leo Liu <sdl.web@gmail.com>
+
+ * calendar/diary-lib.el (calendar-chinese-month-name-array):
+ Defvar to pacify compiler.
+
+2014-05-04 Eli Zaretskii <eliz@gnu.org>
* mail/rmailsum.el (rmail-new-summary-1): Fix a typo in a comment.
-2014-05-03 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
* vc/ediff-diff.el (ediff-set-fine-diff-properties-in-one-buffer):
Use nil rather than `default' for the "default" appearance (bug#17388).
* vc/ediff-init.el (ediff-set-overlay-face): Don't set help-echo if the
overlay is not visible.
-2014-05-02 Stephen Berman <stephen.berman@gmx.net>
+2014-05-04 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el (todo-edit-file): Use display-warning.
(todo-menu): Uncomment and update.
-2014-05-02 Stephen Berman <stephen.berman@gmx.net>
+2014-05-04 Stephen Berman <stephen.berman@gmx.net>
* calendar/todo-mode.el: Reimplement item editing to have the same
basic user interface as item insertion, and make small UI and
(todo-key-bindings-t): Bind "e" to todo-edit-item.
Remove bindings of deleted commands.
-2014-05-02 Leo Liu <sdl.web@gmail.com>
+2014-05-04 Leo Liu <sdl.web@gmail.com>
* emacs-lisp/cl-macs.el (cl-deftype): Fix indentation.
-2014-05-01 Glenn Morris <rgm@gnu.org>
+2014-05-04 Glenn Morris <rgm@gnu.org>
* allout-widgets.el (allout-widgets-tally)
(allout-decorate-item-guides):
* textmodes/reftex-parse.el (reftex-using-biblatex-p):
Doc fixes (replace `iff').
-2014-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-05-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * mpc.el (mpc-volume-mouse-set): Don't burp at the boundaries.
+
+2014-05-04 Leo Liu <sdl.web@gmail.com>
+
+ Support Chinese diary entries in calendar and diary. (Bug#17393)
+ * calendar/cal-china.el (calendar-chinese-month-name-array): New var.
+ (calendar-chinese-from-absolute-for-diary)
+ (calendar-chinese-to-absolute-for-diary)
+ (calendar-chinese-mark-date-pattern, diary-chinese-mark-entries)
+ (diary-chinese-list-entries): New functions to list and mark
+ Chinese diary entries in the calendar window.
+ (diary-chinese-anniversary)
+ (diary-chinese-insert-anniversary-entry)
+ (diary-chinese-insert-entry, diary-chinese-insert-monthly-entry)
+ (diary-chinese-insert-yearly-entry): New commands to insert
+ Chinese diary entries.
+
+ * calendar/diary-lib.el (diary-font-lock-keywords):
+ Support font-locking Chinese dates.
+
+ * calendar/cal-menu.el (cal-menu-diary-menu): Add entries for
+ inserting Chinese diary entries.
+
+ * calendar/calendar.el (diary-chinese-entry-symbol):
+ New customizable variable.
+ (calendar-mode-map): Add bindings for inserting Chinese diary
+ entries.
+
+2014-05-03 Juri Linkov <juri@jurta.org>
+
+ * dired.el (dired-check-switches, dired-switches-recursive-p):
+ New functions. (Bug#17218)
+ (dired-switches-escape-p, dired-move-to-end-of-filename):
+ Use `dired-check-switches'.
+ (dired-insert-old-subdirs, dired-build-subdir-alist)
+ (dired-sort-R-check): Use `dired-switches-recursive-p'.
+
+2014-05-01 Barry O'Reilly <gundaetiapo@gmail.com>
+
+ * simple.el (undo-make-selective-list): New algorithm fixes
+ incorrectness of position adjustments when undoing in region.
+ (Bug#17235)
+ (undo-elt-crosses-region): Make obsolete.
+ (undo-adjust-elt, undo-adjust-beg-end, undo-adjust-pos):
+ New functions to adjust positions using undo-deltas.
+
+2014-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/lisp-mode.el (lisp--match-hidden-arg): Only highlight past
+ the last consecutive closing paren (bug#17345).
+
+2014-04-30 Reuben Thomas <rrt@sc3d.org>
- * mpc.el (mpc-volume-mouse-set): Don't burp at the boundaries.
+ * dired.el (dired-mode): make terminology for eXpunge command
+ consistent. (Bug#17276)
2014-04-30 Eli Zaretskii <eliz@gnu.org>
* dired.el (dired-initial-position-hook, dired-initial-position):
Doc string fixes.
-2014-04-29 Glenn Morris <rgm@gnu.org>
+2014-04-30 Glenn Morris <rgm@gnu.org>
* mail/rmail.el (rmail-quit): Handle killed summaries. (Bug#17283)
-2014-04-27 Matthias Dahl <matthias.dahl@binary-island.eu>
+2014-04-30 Matthias Dahl <matthias.dahl@binary-island.eu>
* faces.el (face-spec-recalc): Apply X resources only after the
defface spec has been applied. Thus, X resources are no longer
- overridden by the defface spec which also fixes issues on win32 where
+ overriden by the defface spec which also fixes issues on win32 where
the toolbar coloring was wrong because it is set through X resources
- and was (wrongfully) overridden. (Bug#16694)
+ and was (wrongfully) overriden. (Bug#16694)
-2014-04-28 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-30 Stefan Monnier <monnier@iro.umontreal.ca>
* textmodes/rst.el (electric-pair-pairs): Declare.
(rst-mode): Set it (bug#17131).
-2014-04-27 Juri Linkov <juri@jurta.org>
+2014-04-30 Juri Linkov <juri@jurta.org>
* desktop.el (desktop-value-to-string): Let-bind `print-length'
and `print-level' to nil. (Bug#17351)
-2014-04-25 Nicolas Richard <theonewiththeevillook@yahoo.fr>
+2014-04-30 Nicolas Richard <theonewiththeevillook@yahoo.fr>
* battery.el (battery-update): Handle the case where battery
status is "N/A" (bug#17319).
-2014-04-24 Eli Zaretskii <eliz@gnu.org>
+2014-04-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/ps-mode.el: Use SMIE. Move string and comment recognition
+ to syntax-propertize.
+ (ps-mode-auto-indent): Mark as obsolete.
+ (ps-mode-font-lock-keywords-1): Remove string-or-comment handling.
+ (ps-mode-font-lock-keywords-3): Use symbol regexp operators instead of
+ word regexp operators.
+ (ps-mode-map): Move initialization into declaration. Remove binding
+ for TAB, RET, >, ], and }.
+ (ps-mode-syntax-table): Move initialization into declaration.
+ Don't give word syntax to non-word chars.
+ (ps-run-mode-map): Move initialization into declaration.
+ (ps-mode-menu-main): Remove auto-indent entry.
+ (ps-mode-smie-rules): New function.
+ (ps-mode): Setup smie, syntax-propertize, and electric-indent-mode.
+ (ps-mode-looking-at-nested, ps-mode-match-string-or-comment): Remove.
+ (ps-mode--string-syntax-table): New const.
+ (ps-mode--syntax-propertize-special, ps-mode-syntax-propertize):
+ New functions.
+ (ps-mode-newline, ps-mode-tabkey, ps-mode-r-brace, ps-mode-r-angle)
+ (ps-mode-r-gt, ps-mode-r-balance): Remove functions.
+
+2014-04-27 Daniel Colascione <dancol@dancol.org>
+
+ * term/xterm.el (xterm-paste): Use large finite timeout when
+ reading event to avoid putting keys in this-command-keys.
+
+2014-04-25 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/perl-mode.el (perl--syntax-exp-intro-regexp): New var.
+ (perl-syntax-propertize-function): Use it. Extend handling of
+ here-docs to the unquoted case.
+
+2014-04-25 Eli Zaretskii <eliz@gnu.org>
* tooltip.el (tooltip-show-help-non-mode, tooltip-show-help):
Use equal-including-properties to compare help-echo strings (bug#17331).
-2014-04-24 Leo Liu <sdl.web@gmail.com>
+2014-04-25 Leo Liu <sdl.web@gmail.com>
* emacs-lisp/lisp-mode.el (emacs-lisp-mode-syntax-table):
Fix syntax for @. (Bug#17325)
-2014-04-24 Daniel Colascione <dancol@dancol.org>
+2014-04-25 Daniel Colascione <dancol@dancol.org>
* emacs-lisp/cl.el (gv): Require gv early to break eager
macro-expansion cycles.
-2014-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-25 Stefan Monnier <monnier@iro.umontreal.ca>
* simple.el (region-active-p): Check there's a mark (bug#17324).
* progmodes/perl-mode.el (perl-syntax-propertize-function): Slash after
&, |, +, - and * can't be a division (bug#17317).
-2014-04-22 Stefan Monnier <monnier@iro.umontreal.ca>
-
* term/xterm.el (xterm--version-handler): Don't use modern xterm
features on gnome-terminal (bug#16988).
+2014-04-25 Thien-Thi Nguyen <ttn@gnu.org>
+
+ Improve Scheme font-locking for (define ((foo ...) ...) ...).
+
+ * progmodes/scheme.el (scheme-font-lock-keywords-1): To find
+ the declared object, ignore zero or more parens, not zero or one.
+
+2014-04-24 Leo Liu <sdl.web@gmail.com>
+
+ * progmodes/xscheme.el (xscheme-expressions-ring)
+ (xscheme-expressions-ring-yank-pointer, xscheme-running-p)
+ (xscheme-control-g-disabled-p, xscheme-process-filter-state)
+ (xscheme-allow-output-p, xscheme-prompt)
+ (xscheme-string-accumulator, xscheme-mode-string): Use defvar-local.
+
+ * progmodes/scheme.el (would-be-symbol, next-sexp-as-string):
+ Comment out unused functions.
+
+2014-04-24 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * info.el: Use lexical-binding and cl-lib.
+ Use defvar-local and setq-local instead of make-local-variable.
+ (Info-apropos-matches): Avoid add-to-list.
+ (Info-edit-mode-map): Fix obsolescence call to Info-edit-map.
+
+2014-04-24 Daniel Colascione <dancol@dancol.org>
+
+ * progmodes/sh-script.el (sh-builtins): Add coproc to list of bash builtins.
+
+2014-04-23 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/cl-macs.el (cl--loop-let): Fix last merge.
+
2014-04-22 Michael Heerdegen <michael_heerdegen@web.de>
* dired.el (dired-insert-set-properties): Do not consider
(tramp-do-copy-or-rename-file-out-of-band): Do not quote `source'
and `target' twice.
-2014-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-22 Stefan Monnier <monnier@iro.umontreal.ca>
* dframe.el (dframe-get-focus): Remove `hook' argument (bug#17311).
* speedbar.el (speedbar-get-focus): Run the "hook" afterwards instead.
* emacs-lisp/cl-macs.el (cl--loop-let): Avoid `nil' as var name.
-2014-04-21 Michael Albinus <michael.albinus@gmx.de>
+2014-04-22 Michael Albinus <michael.albinus@gmx.de>
* net/tramp-sh.el (tramp-sh-handle-file-name-all-completions):
Set "IFS=" when using read builtin, in order to preserve spaces in
the file name. Add test messages for hunting a bug on hydra.
(tramp-get-ls-command): Undo using "-b" argument. It doesn't help.
-2014-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-22 Stefan Monnier <monnier@iro.umontreal.ca>
* progmodes/prog-mode.el (prettify-symbols--compose-symbol):
Don't prettify a word within a symbol.
-2014-04-20 Michael Albinus <michael.albinus@gmx.de>
+2014-04-22 Michael Albinus <michael.albinus@gmx.de>
* net/tramp-sh.el (tramp-get-ls-command): Use "-b" argument if
possible.
+2014-04-22 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/byte-run.el (function-put): Unbreak build: don't
+ use defun to define `function-put'.
+
+2014-04-22 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/lisp-mode.el (lisp--match-hidden-arg): New function.
+ (lisp-el-font-lock-keywords-2, lisp-cl-font-lock-keywords-2): Use it.
+ (lisp-mode-variables): Set font-lock-extra-managed-props.
+
+ * emacs-lisp/byte-run.el (function-put): New function.
+ (defun-declarations-alist): Use it. Add `pure' and `side-effect-free'.
+ * emacs-lisp/cl-macs.el (cl-defstruct, cl-struct-sequence-type)
+ (cl-struct-slot-info, cl-struct-slot-offset, cl-struct-slot-value):
+ Use them.
+
+2014-04-22 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/macroexp.el (internal-macroexpand-for-load):
+ Add `full-p' parameter; when nil, call `macroexpand' instead of
+ `macroexpand-all'.
+
+ * emacs-lisp/byte-run.el (eval-when-compile, eval-and-compile):
+ Improve docstrings.
+
+ * emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
+ Use lambda function values, not quoted lambdas.
+ (byte-compile-recurse-toplevel): Remove extraneous &optional.
+
+ * emacs-lisp/cl-macs.el
+ (cl-struct-sequence-type, cl-struct-slot-info): Declare pure.
+ (cl-struct-slot-value): Conditionally use aref or nth so that the
+ compiler produces optimal code.
+
+2014-04-22 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emacs-lisp/cl-macs.el (cl-struct-slot-offset): Mark as pure.
+ (inline): Don't inline cl--set-elt.
+ (cl-struct-slot-value): Remove explicit gv-setter and compiler-macro.
+ Define as inlinable instead.
+ (cl-struct-set-slot-value): Remove.
+
+ * emacs-lisp/cl-lib.el (cl--set-elt): Remove.
+ * emacs-lisp/cl-seq.el (cl-replace, cl-substitute, cl-nsubstitute):
+ Use setf instead.
+
+2014-04-21 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/cl-macs.el (cl--const-expr-val): We didn't need the
+ last two parameters after all.
+ (cl--expr-contains,cl--compiler-macro-typep,cl--compiler-macro-member)
+ (cl--compiler-macro-assoc,cl-struct-slot-value)
+ (cl-struct-set-slot-value): Stop using them.
+
+(2014-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * image-mode.el (image-mode-window-put): Don't assume there's a `t'
+ entry in image-mode-winprops-alist.
+
+2014-04-21 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/bytecomp.el (byte-compile-recurse-toplevel): New function.
+ (byte-compile-recurse-toplevel, byte-compile-initial-macro-environment)
+ (byte-compile-toplevel-file-form): Use it.
+
+ * emacs-lisp/cl-macs.el:
+ (cl--loop-let): Properly destructure `while' clauses.
+
+2014-04-20 Daniel Colascione <dancol@dancol.org>
+
+ * vc/vc.el (vc-root-dir): New public autoloaded function for
+ generically finding the current VC root.
+ * vc/vc-hooks.el (vc-not-supported): New error.
+ (vc-call-backend): Signal `vc-not-supported' instead of generic error.
+
+2014-04-20 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/cl-macs.el (cl-the): Make `cl-the' assert its type
+ argument.
+ (cl--const-expr-val): cl--const-expr-val should macroexpand its
+ argument in case we're inside a symbol-macrolet.
+ (cl--do-arglist, cl--compiler-macro-typep)
+ (cl--compiler-macro-member, cl--compiler-macro-assoc): Pass macro
+ environment to `cl--const-expr-val'.
+ (cl-struct-sequence-type,cl-struct-slot-info)
+ (cl-struct-slot-offset, cl-struct-slot-value)
+ (cl-struct-set-slot-value): New functions.
+
2014-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
* progmodes/sh-script.el (sh-smie--sh-keyword-p): Handle variable
* net/tramp-compat.el (tramp-unload-hook): Unload `tramp-loaddefs'.
-2014-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-17 Daniel Colascione <dancol@dancol.org>
+
+ Add support for bracketed paste mode; add infrastructure for
+ managing terminal mode enabling and disabling automatically.
+
+ * xt-mouse.el:
+ (xterm-mouse-mode): Simplify.
+ (xterm-mouse-tracking-enable-sequence)
+ (xterm-mouse-tracking-disable-sequence): New constants.
+ (turn-on-xterm-mouse-tracking-on-terminal)
+ (turn-off-xterm-mouse-tracking-on-terminal):
+ Use tty-mode-set-strings and tty-mode-reset-strings terminal
+ parameters instead of random hooks.
+ (turn-on-xterm-mouse-tracking)
+ (turn-off-xterm-mouse-tracking): Delete.
+
+ * term/xterm.el (xterm-extra-capabilities): Fix bitrotted comment.
+ (xterm-paste-ending-sequence): New constant.
+ (xterm-paste): New command used for bracketed paste support.
+
+ (xterm-modify-other-keys-terminal-list): Delete obsolete variable.
+ (terminal-init-xterm-bracketed-paste-mode): New function.
+ (terminal-init-xterm): Call it.
+ (terminal-init-xterm-modify-other-keys): Use tty-mode-set-strings
+ and tty-mode-reset-strings instead of random hooks.
+ (xterm-turn-on-modify-other-keys)
+ (xterm-turn-off-modify-other-keys)
+ (xterm-remove-modify-other-keys): Delete obsolete functions.
+
+ * term/screen.el: Rewrite to just use the xterm code.
+ Add copyright notice. Mention tmux.
+
+2014-04-17 Ian D <dunni@gnu.org> (tiny change)
+
+ * image-mode.el (image-mode-window-put): Also update the property of
+ the "default window".
+ * doc-view.el (doc-view-new-window-function): If no window
+ exists, move to the last known page.
- * nxml/nxml-mode.el (nxml-fontify-matcher): Make sure propertization
- was done (bug#17264).
- * nxml/xmltok.el (xmltok-scan-after-comment-open): Extend unclosed
- comment to EOB.
+2014-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
* progmodes/perl-mode.el (perl-calculate-indent): Don't auto-indent in
here-documents (bug#17262).
* term/pc-win.el (x-list-fonts, x-get-selection-value):
Provide doc strings, as required by snarf-documentation.
-2014-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
* ps-def.el (ps-generate-postscript-with-faces1): Use the new `sorted'
arg of overlays-at. Use `invisible-p'.
overlays-at.
(hfy-fontify-buffer): Remove unused var `orig-ovls'.
-2014-04-14 João Távora <joaotavora@gmail.com>
+2014-04-16 João Távora <joaotavora@gmail.com>
* net/shr.el (shr-expand-url): Use `expand-file-name' for relative
links. (Bug#17217).
-2014-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+2014-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
* vc/ediff-diff.el (ediff-set-fine-diff-properties-in-one-buffer):
Use mapc to loop over a vector. (Bug#17257).
-2014-04-13 Michael Albinus <michael.albinus@gmx.de>
+2014-04-16 Michael Albinus <michael.albinus@gmx.de>
* net/tramp-sh.el (tramp-sh-handle-file-truename): Revert previous
patch, there are new problems with file names containing spaces.
Get rid of backticks. (Bug#17238)
-2014-04-13 João Távora <joaotavora@gmail.com>
+2014-04-16 João Távora <joaotavora@gmail.com>
* elec-pair.el (electric-pair--syntax-ppss): Simplify and fix
possible bug.
-2014-04-13 Eli Zaretskii <eliz@gnu.org>
+2014-04-16 Eli Zaretskii <eliz@gnu.org>
* frame.el (blink-cursor-blinks, blink-cursor-blinks-done): Doc fixes.
(blink-cursor-mode): Mention customization variables and the
effect of 'blink-cursor-blinks'.
-2014-04-12 Barry O'Reilly <gundaetiapo@gmail.com>
+2014-04-16 Barry O'Reilly <gundaetiapo@gmail.com>
* simple.el (undo): Prevent insertion of identity mapping into
undo-equiv-table so as undo-only does not inf loop in the presence
of consecutive nils in undo list.
-2014-04-12 Matthias Dahl <matthias.dahl@binary-island.eu>
+2014-04-16 Matthias Dahl <matthias.dahl@binary-island.eu>
* faces.el (make-face): Deprecate optional argument as it is no
longer needed/used since the conditional X resources handling
has been pushed down to make-face-x-resource-internal itself.
(make-empty-face): Don't pass optional argument to make-face.
+2014-04-16 Karl Fogel <kfogel@red-bean.com>
+
+ * savehist.el (savehist-save): Remove workaround for a read-passwd
+ bug that was fixed before 24.3. Thanks to Juanma Barranquero for
+ noticing that the shim was still present.
+
+2014-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * doc-view.el (doc-view-set-doc-type): Ignore file name case; add .pps.
+
+2014-04-14 Juanma Barranquero <lekktu@gmail.com>
+
+ * faces.el (face-set-after-frame-default): Remove unused local variable.
+
+2014-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * progmodes/grep.el: Use lexical-binding.
+ (grep-expand-template): Pass explicit lexical env to `eval'.
+ (zrgrep): Let-bind grep-find-template explicitly.
+
+ * emacs-lisp/cl-lib.el (current-case-table): Remove setter.
+ * leim/quail/sisheng.el (sisheng-list): Use with-case-table.
+
2014-04-12 Eli Zaretskii <eliz@gnu.org>
* international/characters.el <standard-case-table>: Add entries
2014-04-12 Leo Liu <sdl.web@gmail.com>
- * progmodes/octave.el (completion-table-with-cache): Define if not
- available.
- (octave-goto-function-definition)
- (octave-sync-function-file-names)
- (octave-find-definition-default-filename): Backquote upattern for
- compatibility.
+ * progmodes/octave.el (completion-table-with-cache):
+ Define if not available.
+ (octave-goto-function-definition, octave-sync-function-file-names)
+ (octave-find-definition-default-filename):
+ Backquote upattern for compatibility.
-2014-04-11 Michael Albinus <michael.albinus@gmx.de>
+2014-04-12 Michael Albinus <michael.albinus@gmx.de>
* net/tramp-sh.el (tramp-sh-handle-file-truename): Quote the file
name twice due to backticks. (Bug#17238)
-2014-04-11 Glenn Morris <rgm@gnu.org>
+2014-04-12 Glenn Morris <rgm@gnu.org>
* term/w32-win.el (x-win-suspend-error):
* term/x-win.el (x-win-suspend-error): Sync docs.
-2014-04-10 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-12 Matthias Dahl <matthias.dahl@binary-island.eu>
+
+ * faces.el (make-face): Remove deprecated optional argument.
+ The conditional application of X resources is handled directly by
+ make-face-x-resource-internal since Emacs 24.4.
+ (make-empty-face): Don't pass optional argument to make-face.
+
+2014-04-11 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (EMACSDATA, EMACSDOC, EMACSPATH): Unexport. (Bug#16429)
+
+2014-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
Ediff's overlay priorities cause more trouble than they solve.
* vc/ediff-init.el (ediff-shadow-overlay-priority): Remove variable.
(ediff-set-fine-diff-properties-in-one-buffer): Don't mess with
overlay priorities.
-2014-04-10 Feng Li <fengli@gmail.com> (tiny change)
+2014-04-11 Feng Li <fengli@gmail.com> (tiny change)
* progmodes/pascal.el (pascal-font-lock-keywords): Fix incorrect format
entry; use symbol boundaries to avoid mis-matches.
-2014-04-10 Michael Albinus <michael.albinus@gmx.de>
+2014-04-11 Michael Albinus <michael.albinus@gmx.de>
* net/tramp.el (tramp-file-name-handler)
(tramp-completion-file-name-handler): Avoid recursive loading.
* net/tramp-sh.el (tramp-make-copy-program-file-name):
Quote result also locally.
+2014-04-11 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * emulation/cua-base.el (<toplevel>, cua--pre-command-handler-1):
+ Remove left-over code.
+
+ * newcomment.el (comment-indent-new-line): Sink code where it's used.
+ Reuse the previous comment's indentation unconditionally if it's on its
+ own line.
+
+2014-04-09 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/lisp.el (backward-up-list): Add `escape-strings',
+ `no-syntax-crossing' arguments. Forward to `up-list'.
+ (up-list): Add `escape-strings', `no-syntax-crossing' arguments.
+ Implement logic for escaping from strings. Use narrowing to deal
+ with corner cases.
+
+2014-04-09 Leo Liu <sdl.web@gmail.com>
+
+ * net/rcirc.el (rcirc-connection-info): New variable.
+ (rcirc-connect): Use it to store connection info.
+ (rcirc-buffer-process): Avoid get-buffer-process which returns nil
+ for killed process.
+ (rcirc-cmd-reconnect): New command. (Bug#17045)
+ (rcirc-mode, set-rcirc-encode-coding-system)
+ (set-rcirc-decode-coding-system, rcirc-connect): Use setq-local.
+
+2014-04-09 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/cl-indent.el: Add comment claiming
+ facility is also good for elisp.
+ (lisp-indent-find-method): New function.
+ (common-lisp-indent-function): Recognize cl-loop.
+ (common-lisp-indent-function-1): Recognize cl constructs; use
+ `lisp-indent-find-method' instead of `get' directly.
+ (if): Use else-body style for elisp.
+
2014-04-09 Dmitry Gutov <dgutov@yandex.ru>
* progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight more
Module methods. (Bug#17216)
-2014-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
* help.el (describe-bindings): Fix buffer handling (bug#17210).
(describe-bindings-internal): Mark obsolete.
+2014-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * subr.el (with-silent-modifications): Don't bind deactivate-mark,
+ buffer-file-name, and buffer-file-truename any more.
+
+2014-04-08 Leo Liu <sdl.web@gmail.com>
+
+ Use lexical-binding and require cl-lib.
+ * net/rcirc.el (rcirc, rcirc-handler-ctcp-KEEPALIVE)
+ (rcirc-handler-generic, rcirc-fill-paragraph)
+ (rcirc-format-response-string, rcirc-target-buffer)
+ (rcirc-last-line, rcirc-record-activity, rcirc-split-activity)
+ (rcirc-activity-string, rcirc-make-trees, rcirc-cmd-ctcp)
+ (rcirc-ctcp-sender-PING, rcirc-browse-url)
+ (rcirc-markup-timestamp, rcirc-markup-attributes)
+ (rcirc-markup-my-nick, rcirc-markup-urls)
+ (rcirc-markup-bright-nicks, rcirc-markup-fill)
+ (rcirc-check-auth-status, rcirc-handler-WALLOPS)
+ (rcirc-handler-JOIN, rcirc-handler-PART-or-KICK)
+ (rcirc-handler-PART, rcirc-handler-KICK, rcirc-handler-QUIT)
+ (rcirc-handler-NICK, rcirc-handler-PING, rcirc-handler-PONG)
+ (rcirc-handler-TOPIC, rcirc-handler-301, rcirc-handler-317)
+ (rcirc-handler-332, rcirc-handler-333, rcirc-handler-477)
+ (rcirc-handler-MODE, rcirc-handler-353, rcirc-handler-366)
+ (rcirc-authenticate, rcirc-handler-INVITE, rcirc-handler-ERROR)
+ (rcirc-handler-ctcp-VERSION, rcirc-handler-ctcp-TIME)
+ (rcirc-handler-CTCP-response): Fix unused arguments warnings and
+ use cl-lib.
+
2014-04-07 João Távora <joaotavora@gmail.com>
- * elec-pair.el:
- (electric-pair--syntax-ppss): When inside comments parse from
- comment beginning.
+ * elec-pair.el (electric-pair--syntax-ppss):
+ When inside comments parse from comment beginning.
(electric-pair--balance-info): Fix typo in comment.
(electric-pair--in-unterminated-string-p): Delete.
(electric-pair--unbalanced-strings-p): New function.
(electric-pair-inhibit-if-helps-balance): Decide quote pairing
according to `electric-pair--in-unterminated-string-p'
-2014-04-07 João Távora <joaotavora@gmail.com>
-
* elec-pair.el (electric-pair-inhibit-if-helps-balance):
Inhibit quote pairing if point-max is inside an unterminated string.
(electric-pair--looking-at-unterminated-string-p): Delete.
* shell.el (shell-directory-tracker):
Go back to just ignoring failures. (Bug#17159)
-2014-04-06 João Távora <joaotavora@gmail.com>
+2014-04-07 João Távora <joaotavora@gmail.com>
Fix `electric-pair-delete-adjacent-pairs' in modes binding
- backspace. (bug#16981)
+ backspace. (Bug#16981)
* elec-pair.el (electric-pair-backward-delete-char): Delete.
(electric-pair-backward-delete-char-untabify): Delete.
(electric-pair-mode-map): Bind backspace to a menu item filtering
a new `electric-pair-delete-pair' command.
(electric-pair-delete-pair): New command.
-2014-04-06 João Távora <joaotavora@gmail.com>
-
* progmodes/python.el (python-electric-pair-string-delimiter):
Fix triple-quoting electricity. (Bug#17192)
-2014-04-06 João Távora <joaotavora@gmail.com>
-
* elec-pair.el (electric-pair-post-self-insert-function):
Don't skip whitespace when `electric-pair-text-pairs' and
`electric-pair-pairs' were used. syntax to
electric-pair--skip-whitespace. (Bug#17183)
-2014-04-06 Eli Zaretskii <eliz@gnu.org>
+2014-04-07 Eli Zaretskii <eliz@gnu.org>
* leim/quail/ipa.el (ipa-x-sampa): Fix the character produced for
"<F>". (Bug#17199)
-2014-04-06 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
* mpc.el (mpc--status-timer-run): Disable timer if not displayed.
(mpc--status-idle-timer-run): Use mpc--status-timer-run.
-2014-04-05 Glenn Morris <rgm@gnu.org>
+2014-04-07 Glenn Morris <rgm@gnu.org>
* help.el (view-lossage): Doc tweak.
-2014-04-05 Matthias Dahl <matthias.dahl@binary-island.eu>
+2014-04-07 Matthias Dahl <ml_emacs-lists@binary-island.eu>
* faces.el (face-spec-recalc): Call make-face-x-resource-internal
only when inhibit-x-resources is nil, and do that earlier in the
(face-set-after-frame-default): Don't call
make-face-x-resource-internal here. (Bug#16434)
-2014-04-04 Tassilo Horn <tsdh@gnu.org>
+2014-04-07 Tassilo Horn <tsdh@gnu.org>
* doc-view.el (doc-view-bookmark-jump):
Use `bookmark-after-jump-hook' to jump to the right page after the
buffer is shown in a window. (bug#16090)
-2014-04-04 Eli Zaretskii <eliz@gnu.org>
+2014-04-07 Eli Zaretskii <eliz@gnu.org>
* international/characters.el (mirroring): Fix last change:
instead of loading uni-mirrored.el explicitly, do that implicitly
by creating the 'mirroring' uniprop table. This avoids announcing
the loading of uni-mirrored.el.
-2014-04-04 Glenn Morris <rgm@gnu.org>
+2014-04-07 Glenn Morris <rgm@gnu.org>
* files.el (buffer-stale--default-function)
(buffer-stale-function, revert-buffer--default):
* autorevert.el (auto-revert-buffers): Doc tweaks.
-2014-04-03 Eli Zaretskii <eliz@gnu.org>
+2014-04-07 Eli Zaretskii <eliz@gnu.org>
* international/characters.el: Preload uni-mirrored.el. (Bug#17169)
-2014-04-03 Glenn Morris <rgm@gnu.org>
+2014-04-07 Glenn Morris <rgm@gnu.org>
* files.el (make-backup-file-name-function)
(make-backup-file-name, make-backup-file-name--default-function)
(make-backup-file-name-function): Bump :version.
Restore nil as a valid but deprecated custom type.
-2014-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
- * progmodes/perl-mode.el (perl-syntax-propertize-function): Handle $'
- used as a variable (bug#17174).
-
-2014-04-02 Stefan Monnier <monnier@iro.umontreal.ca>
+ * progmodes/perl-mode.el (perl-syntax-propertize-function):
+ Handle $' used as a variable (bug#17174).
* progmodes/perl-mode.el (perl-indent-new-calculate):
Handle forward-sexp failure (bug#16985).
(perl-syntax-propertize-function): Add "foreach" and "for" statement
modifiers introducing expressions (bug#17116).
+2014-04-06 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * dired-aux.el (dired-file-set-difference): Use lexical-scoping.
+
+2014-04-05 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
+ Add define-compilation-mode.
+
+2014-04-04 João Távora <joaotavora@gmail.com>
+
+ * elec-pair.el (electric-pair--syntax-ppss): When inside comments
+ parse from comment beginning.
+ (electric-pair--balance-info): Fix typo in comment.
+ (electric-pair--in-unterminated-string-p): Delete.
+ (electric-pair--unbalanced-strings-p): New function.
+ (electric-pair-string-bound-function): New var.
+ (electric-pair-inhibit-if-helps-balance): Decide quote pairing
+ according to `electric-pair--in-unterminated-string-p'.
+
+2014-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * textmodes/reftex-parse.el (reftex--index-tags): Rename `index-tags'.
+ Move declaration before first use.
+ (reftex-move-to-next-arg): Silence compiler warning.
+
+2014-04-04 Joost Kremers <joostkremers@fastmail.fm> (tiny change)
+
+ * textmodes/reftex-toc.el (reftex-toc, reftex-re-enlarge):
+ Use `window-total-width' instead of `window-width'.
+
+2014-04-03 Daniel Colascione <dancol@dancol.org>
+
+ * subr.el (set-transient-map): Remove rms's workaround entirely;
+ use new `suspicious-object' subr to mark our lambda for closer
+ scrutiny during gc.
+
+2014-04-02 Richard Stallman <rms@gnu.org>
+
+ * subr.el (set-transient-map): Comment out previous change.
+
2014-04-02 Glenn Morris <rgm@gnu.org>
* menu-bar.el (menu-bar-file-menu):
* simple.el (command-execute): Respect nil disabled-command-function.
-2014-04-01 Nicolas Richard <theonewiththeevillook@yahoo.fr>
+2014-04-02 Nicolas Richard <theonewiththeevillook@yahoo.fr>
* simple.el (command-execute): Do not execute the command when it
is disabled; fixes thinko in 2013-02-20 conversion from C. (Bug#17151)
-2014-03-29 Juri Linkov <juri@jurta.org>
+2014-04-02 Juri Linkov <juri@jurta.org>
* dired-aux.el (dired-compress-file): Don't use string-match-p
because its match data is used afterwards.
-2014-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-02 Stefan Monnier <monnier@iro.umontreal.ca>
* emacs-lisp/package.el (package-built-in-p): Treat a min-version of
0 like nil.
+2014-04-02 João Távora <joaotavora@gmail.com>
+
+ * elec-pair.el (electric-pair-inhibit-if-helps-balance):
+ Inhibit quote pairing if point-max is inside an unterminated string.
+ (electric-pair--looking-at-unterminated-string-p):
+ Delete.
+ (electric-pair--in-unterminated-string-p): New function.
+
+2014-04-01 Daniel Colascione <dancol@dancol.org>
+
+ * minibuffer.el (minibuffer-complete): Prevent assertion failure
+ when trying to complete the prompt.
+
+2014-03-31 Leo Liu <sdl.web@gmail.com>
+
+ * emacs-lisp/eldoc.el (eldoc-print-current-symbol-info):
+ Refactor out eldoc-documentation-function-default.
+ (eldoc-documentation-function-default): New function.
+ (eldoc-documentation-function): Change value.
+
+2014-03-31 Glenn Morris <rgm@gnu.org>
+
+ * simple.el (cycle-spacing--context, cycle-spacing): Doc tweaks.
+
+ * progmodes/vhdl-mode.el (vhdl-speedbar-select-mra)
+ (vhdl-compose-components-package, vhdl-compose-configuration):
+ Abbreviate default-directory (missing from some previous upstream sync).
+
+2014-03-31 Reto Zimmermann <reto@gnu.org>
+
+ Sync with upstream vhdl mode v3.35.2.
+ * progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
+ (top-level): No longer require assoc.
+ (vhdl-asort, vhdl-anot-head-p, vhdl-aput, vhdl-adelete, vhdl-aget):
+ New functions. Use throughout to replace aget etc.
+ (vhdl-aput-delete-if-nil): Rename from vhdl-aput.
+ (vhdl-update-file-contents): Update for vhdl-aput-delete-if-nil rename.
+ (vhdl-template-replace-header-keywords): Fix bug for "<title string>".
+ (vhdl-compile-init): Do not initialize regexps for Emacs 22+.
+ (vhdl-error-regexp-emacs-alist): Remove regexps from all compilers
+ except `vhdl-compiler'.
+ (vhdl-error-regexp-add-emacs): Remove all other compilers,
+ when appropriate.
+
+2014-03-31 Glenn Morris <rgm@gnu.org>
+
+ * progmodes/vhdl-mode.el (vhdl-expand-abbrev, vhdl-expand-paren):
+ Revert 2014-03-26 merge goof; go back to using defalias.
+
+2014-03-30 Daniel Colascione <dancol@dancol.org>
+
+ * comint.el (comint-send-input):
+ Deactivate completion-in-region-mode before we send comint input.
+ (Bug#17139).
+
+ * simple.el (keyboard-quit): Deactivate completion-in-region-mode
+ on keyboard-quit.
+
+2014-03-29 Glenn Morris <rgm@gnu.org>
+
+ * textmodes/reftex.el: Manage most autoloads automatically.
+ * textmodes/reftex-auc.el, textmodes/reftex-cite.el:
+ * textmodes/reftex-dcr.el, textmodes/reftex-global.el:
+ * textmodes/reftex-index.el, textmodes/reftex-parse.el:
+ * textmodes/reftex-ref.el, textmodes/reftex-sel.el:
+ * textmodes/reftex-toc.el: Set generated-autoload-file,
+ and add autoload cookies for reftex.el.
+ * Makefile.in (AUTOGEN_VCS): Add textmodes/reftex.el.
+
+2014-03-28 Glenn Morris <rgm@gnu.org>
+
+ * cus-start.el (report-emacs-bug-address): Set custom properties.
+ * mail/emacsbug.el (report-emacs-bug-address):
+ Variable is now defined in emacs.c.
+
+ * mail/emacsbug.el (report-emacs-bug):
+ Include system-configuration-features.
+
+2014-03-28 Michal Nazarewicz <mina86@mina86.com>
+
+ * simple.el (cycle-spacing): Never delete spaces on first run by
+ default, but do so in a new 'fast mode and if there are already
+ N spaces (the previous behavior).
+ Compare N with its value in previous invocation so that changing
+ prefix argument restarts `cycle-spacing' sequence.
+ The idea is that with this change, binding M-SPC to
+ `cycle-spacing' should not introduce any changes in behavior of
+ the binding so long as users do not type M-SPC twice in a raw with
+ the same prefix argument or lack thereof.
+
+2014-03-28 Glenn Morris <rgm@gnu.org>
+
+ * faces.el (term-file-aliases): New variable.
+ (tty-run-terminal-initialization): Respect term-file-aliases.
+ * term/apollo.el, term/vt102.el, term/vt125.el, term/vt201.el:
+ * term/vt220.el, term/vt240.el, term/vt300.el, term/vt320.el:
+ * term/vt400.el, term/vt420.el: Remove files, replaced by aliases.
+
+2014-03-27 Glenn Morris <rgm@gnu.org>
+
+ * startup.el (inhibit-startup-hooks): Doc tweak.
+ (normal-top-level): Simplify running of hooks.
+ For window-setup-hook, respect inhibit-startup-hooks.
+ (command-line-1): Don't set window-setup-hook to nil.
+
+ Allow selective autoloading from obsolete/ directory.
+ * Makefile.in (obsolete-autoloads): New rule.
+ (autoloads): Run obsolete-autoloads.
+ * obsolete/iswitchb.el (iswitchb-mode): Use obsolete-autoload.
+ * simple.el (iswitchb-mode): Remove hand-written autoloads.
+
2014-03-27 Dmitry Gutov <dgutov@yandex.ru>
* progmodes/ruby-mode.el (ruby-font-lock-keywords):
* emacs-lisp/package-x.el (package--archive-contents-from-url):
Use url-insert-file-contents; package-handle-response no longer exists.
+2014-03-26 Daniel Colascione <dancol@dancol.org>
+
+ * simple.el (process-menu-mode-map): New variable.
+ (process-menu-delete-process): New command.
+
2014-03-26 Juanma Barranquero <lekktu@gmail.com>
* emacs-lisp/package.el: Fix bug#16733 (again).
dynamic binding of `buffer'.
(describe-package-1): Do not decode readme-string.
-2014-03-25 Barry O'Reilly <gundaetiapo@gmail.com>
-
- * simple.el (primitive-undo): Correction to 2014-03-24 change.
-
-2014-03-25 Michael Albinus <michael.albinus@gmx.de>
+2014-03-26 Michael Albinus <michael.albinus@gmx.de>
* net/tramp.el (tramp-methods, tramp-connection-timeout): Fix docstring.
(tramp-do-copy-or-rename-file-directly): In the `rename' case,
check whether source directory has set the sticky bit.
-2014-03-24 Barry O'Reilly <gundaetiapo@gmail.com>
+2014-03-26 Barry O'Reilly <gundaetiapo@gmail.com>
* simple.el (primitive-undo): Only process marker adjustments
validated against their corresponding (TEXT . POS). Issue warning
(undo-elt-in-region): Return nil when passed a marker adjustment
and explain in function doc.
-2014-03-24 Dmitry Gutov <dgutov@yandex.ru>
-
- * emacs-lisp/package.el (package--add-to-archive-contents):
- Include already installed and built-in packages in
- `package-archive-contents'.
- (package-install): Don't include already installed packages in the
- options during interactive invocation. (Bug#16762)
-
-2014-03-24 Daniel Colascione <dancol@dancol.org>
-
- * emacs-lisp/cl-macs.el (cl--do-arglist): Use `plist-member'
- instead of cl-loop search function.
-
-2014-03-24 Juanma Barranquero <lekktu@gmail.com>
-
- * frameset.el (frameset--initial-params): Fix typo in parameter name.
-
-2014-03-24 Nicolas Richard <theonewiththeevillook@yahoo.fr>
+2014-03-26 Nicolas Richard <theonewiththeevillook@yahoo.fr>
* align.el (align-region): Do not fail when end-mark is nil (bug#17088).
-2014-03-24 Dmitry Gutov <dgutov@yandex.ru>
+2014-03-26 Dmitry Gutov <dgutov@yandex.ru>
* progmodes/ruby-mode.el (ruby-expression-expansion-re):
Match special global variables without curlies, too.
variables. Don't require a non-word character after the variable.
(Bug#17057)
-2014-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
* simple.el (redisplay-highlight-region-function): Increase priority of
overlay to make sure boundaries are visible (bug#15899).
-2014-03-23 Juanma Barranquero <lekktu@gmail.com>
+2014-03-26 Juanma Barranquero <lekktu@gmail.com>
- * frameset.el (frameset-restore): Compare display strings with equal.
+ * frameset.el (frameset--initial-params): Fix typo in parameter name.
+ (frameset-restore): Compare display strings with equal.
* frame.el (make-frame): Don't quote display name in error message,
it is already a string.
-2014-03-23 Thierry Volpiatto <thierry.volpiatto@gmail.com>
+2014-03-26 Thierry Volpiatto <thierry.volpiatto@gmail.com>
* net/tramp.el (tramp-read-passwd): Suspend the timers while reading
the password.
-2014-03-23 Dmitry Gutov <dgutov@yandex.ru>
+2014-03-26 Dmitry Gutov <dgutov@yandex.ru>
+
+ * emacs-lisp/package.el (package--add-to-archive-contents):
+ Include already installed and built-in packages in
+ `package-archive-contents'.
+ (package-install): Don't include already installed packages in the
+ options during interactive invocation. (Bug#16762)
+ (package-show-package-list): If the buffer is already displayed in
+ another window, switch to that window.
+
+2014-03-26 Reto Zimmermann <reto@gnu.org>
+
+ Sync with upstream vhdl mode v3.35.1.
+ * progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
+ (vhdl-compiler-alist): Doc fix.
+ (vhdl-goto-line): Remove.
+ (vhdl-mode-abbrev-table-init): Add XEmacs compat.
+ (vhdl-mode) <paragraph-start>: Fix value.
+ (vhdl-fix-statement-region): Not `for' in wait-statement.
+ (vhdl-beautify-region): Also (un)tabify.
+ (vhdl-get-visible-signals):
+ Scan declarative part of generate statements.
+ (vhdl-template-record): Fix indentation for record type declaration.
+ (vhdl-expand-abbrev, vhdl-expand-paren):
+ Revert to using fset again rather than defalias.
+ (vhdl-scan-directory-contents): Tweak.
+ (vhdl-speedbar-find-file, vhdl-speedbar-port-copy)
+ (vhdl-compose-components-package):
+ Replace vhdl-goto-line with forward-line.
+ (top-level): Tweak speedbar frame selection.
+ (vhdl-generate-makefile-1): Support for compilers with no
+ unit-to-file name mapping (create directory with dummy files).
+
+2014-03-26 Wilson Snyder <wsnyder@wsnyder.org>
+
+ Sync with upstream verilog-mode revision 702457d.
+ * progmodes/verilog-mode.el (verilog-mode-version): Update.
+ (create-lockfiles): Declare.
+ (verilog-read-decls): Fix module header imports, bug709.
+ Reported by Victor Lau.
+ Fix parsing 'var' in AUTOs, msg1294. Reported by Dominique Chen.
+ (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
+ interface-only modules, bug721. Reported by Dean Hoyt.
+
+2014-03-26 Glenn Morris <rgm@gnu.org>
- * emacs-lisp/package.el (package-show-package-list): If the buffer
- is already displayed in another window, switch to that window.
+ * obsolete/gulp.el: Move here from emacs-lisp/.
-2014-03-21 Daniel Colascione <dancol@dancol.org>
+ * files.el (lock-buffer, unlock-buffer, file-locked-p):
+ Remove fallback aliases, since they are always defined now.
- * mail/emacsbug.el (report-emacs-bug): Include memory usage
- information in bug reports.
+2014-03-24 Daniel Colascione <dancol@dancol.org>
+
+ * emacs-lisp/cl-macs.el (cl--do-arglist): Use `plist-member'
+ instead of cl-loop search function.
+
+2014-03-23 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * calendar/parse-time.el (parse-time-iso8601-regexp)
+ (parse-iso8601-time-string): Copy from `url-dav' so that we can use
+ it more generally.
+
+2014-03-23 Lars Ingebrigtsen <larsi@gnus.org>
+
+ * net/dns.el (network-interface-list): Define for XEmacs.
+
+2014-03-23 Magnus Henoch <magnus.henoch@gmail.com>
+
+ * net/dns.el (dns-servers-up-to-date-p): New function to see whether
+ the network interfaces changed.
+ (dns-query): Use it to flush the data.
+
+2014-03-23 Juanma Barranquero <lekktu@gmail.com>
+
+ * vc/vc.el (vc-rollback): Use set-buffer-modified-p.
+
+2014-03-23 Daniel Colascione <dancol@dancol.org>
+
+ Change subword-mode to use `find-word-boundary-function-table' and
+ replace `capitalized-words-mode'. Also, convert to lexical binding.
+ * progmodes/cap-words.el: Delete now-obsolete file.
+ * progmodes/subword.el: Reimplement using
+ `find-word-boundary-function-table'.
+ (subword-mode-map): Hollow out.
+ (capitalized-words-mode): Define as obsolete alias for
+ `subword-mode'.
+ (subword-mode, superword-mode): Tweak documentation to reflect new
+ implementation; call `subword-setup-buffer'.
+ (subword-forward, subword-capitalize): Add underscore to indicate
+ unused variable.
+ (subword-find-word-boundary-function-table): New constant.
+ (subword-empty-char-table): New constant.
+ (subword-setup-buffer): New function.
+ (subword-find-word-boundary): New function.
2014-03-23 Daniel Colascione <dancol@dancol.org>
(Bug#3647) --- unfortunately, only for freshly-compiled code.
Please make bootstrap.
-2014-03-23 Richard Stallman <rms@gnu.org>
+2014-03-22 Glenn Morris <rgm@gnu.org>
- * battery.el (battery-linux-sysfs): Search for each field
- from the beginning of the buffer.
+ * dired.el (dired-read-regexp): Make obsolete.
+ (dired-mark-files-regexp, dired-mark-files-containing-regexp)
+ (dired-flag-files-regexp):
+ * dired-aux.el (dired-mark-read-regexp):
+ * dired-x.el (dired-mark-unmarked-files): Use read-regexp directly.
+
+ * startup.el (fancy-startup-text):
+ * help.el (describe-gnu-project): Visit online info about GNU project.
+
+ * help-fns.el (help-fns--interactive-only): New function.
+ (help-fns-describe-function-functions): Add the above function.
+ * simple.el (beginning-of-buffer, end-of-buffer, insert-buffer)
+ (next-line, previous-line): Remove hand-written interactive-only
+ information from doc strings, it is auto-generated now.
+ * bookmark.el (bookmark-write):
+ * epa-mail.el (epa-mail-decrypt, epa-mail-verify, epa-mail-sign)
+ (epa-mail-import-keys): Mark interactive-only,
+ and remove hand-written interactive-only information from doc strings.
+ * epa.el (epa-decrypt-armor-in-region, epa-verify-region)
+ (epa-verify-cleartext-in-region, epa-sign-region, epa-encrypt-region):
+ * files.el (not-modified):
+ * simple.el (mark-whole-buffer): Mark interactive-only.
+
+ * emacs-lisp/byte-run.el (defun-declarations-alist):
+ Add interactive-only. Doc tweak.
+ (macro-declarations-alist): Doc tweak.
+ * subr.el (declare): Doc tweak (add xref to manual).
+ * comint.el (comint-run):
+ * files.el (insert-file-literally, insert-file):
+ * replace.el (replace-string, replace-regexp):
+ * simple.el (beginning-of-buffer, end-of-buffer, delete-backward-char)
+ (delete-forward-char, goto-line, insert-buffer, next-line)
+ (previous-line): Set interactive-only via declare.
2014-03-22 Dmitry Gutov <dgutov@yandex.ru>
* w32-common-fns.el (x-selection-owner-p): Add empty docstring for the
benefit of doc.c; change parameter profile to match the X function.
+2014-03-22 Leo Liu <sdl.web@gmail.com>
+
+ * help.el (temp-buffer-setup-hook): Remove help-mode-setup.
+ (temp-buffer-show-hook): Remove help-mode-finish. (Bug#16038)
+
+2014-03-21 Richard Stallman <rms@gnu.org>
+
+ * battery.el (battery-linux-sysfs): Search for each field
+ from the beginning of the buffer.
+
+ * subr.el (set-transient-map): Clear out function and value
+ of the temporary symbol when we're done with it.
+
+ * mail/rmailsum.el (rmail-summary-delete-forward):
+ Optimize case of reaching end and handling count.
+ (rmail-summary-mark-deleted): Optimize when N is current msg.
+ Don't create new summary line.
+ (rmail-summary-undelete): Pass arg to rmail-undelete-previous-message.
+ (rmail-summary-undelete-many): Rewrite for speed.
+ (rmail-summary-msg-number): New function.
+
+ * mail/rmail.el (rmail-delete-message): Update summary.
+ (rmail-undelete-previous-message): Handle repeat count arg.
+ (rmail-delete-backward, rmail-delete-forward): Likewise.
+
+2014-03-21 Daniel Colascione <dancol@dancol.org>
+
+ * mail/emacsbug.el (report-emacs-bug): Include memory usage
+ information in bug reports.
+
2014-03-21 Michael Albinus <michael.albinus@gmx.de>
* net/tramp.el (tramp-methods): Add docstring for `tramp-login-env'
(tty-color-approximate, tty-color-by-index, tty-color-values)
(tty-color-desc): Remove superfluous backslashes.
+2014-03-21 Glenn Morris <rgm@gnu.org>
+
+ * cus-start.el (history-length): Bump :version.
+
+ * Makefile.in ($(MH_E_DIR)/mh-loaddefs.el)
+ ($(TRAMP_DIR)/tramp-loaddefs.el, $(CAL_DIR)/cal-loaddefs.el)
+ ($(CAL_DIR)/diary-loaddefs.el, $(CAL_DIR)/hol-loaddefs.el):
+ Don't set `make-backup-files'.
+
+ * info.el (info--prettify-description): New function,
+ to give info-finder descriptions consistent case, punctuation.
+ (Info-finder-find-node): Use it. Sort packages.
+ Refer to "description" rather than "commentary".
+
+2014-03-21 Juanma Barranquero <lekktu@gmail.com>
+
+ * frameset.el (frameset--print-register): New function.
+ (frameset-to-register): Use it.
+
+2014-03-20 Juanma Barranquero <lekktu@gmail.com>
+
+ * progmodes/hideif.el (hif-string-to-number): New function.
+ (hif-tokenize): Use it to understand non-decimal floats.
+
+ * emacs-lisp/cl-extra.el (cl--map-overlays): Remove obsolete code.
+
+ * skeleton.el (skeleton-autowrap): Mark as obsolete. Doc fix.
+
2014-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
* electric.el (electric-newline-and-maybe-indent): New command.
2014-03-10 Michael Albinus <michael.albinus@gmx.de>
* net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
- Do not add `nil' to the environment, when there's no remote `locale'.
+ Do not add nil to the environment, when there's no remote `locale'.
(tramp-find-inline-encoding): Check, that the remote host has
installed perl, before sending scripts.
* help-at-pt.el (help-at-pt-string, help-at-pt-maybe-display):
Also try to display local help from just before point.
-2014-02-02 Alan Mackenzie <bug-cc-mode@gnu.org>
+2014-02-02 Alan Mackenzie <acm@muc.de>
c-parse-state. Don't "append-lower-brace-pair" in certain
circumstances. Also fix an obscure bug where "\\s!" shouldn't be
COMMAND-alternatives variable, assign COMMAND as its definition
name so that `describe-variable' can relocate it.
-2014-01-14 Matthew Leach <matthew@mattleach.net> (tiny change)
+2014-01-14 Matthew Leach <matthew@mattleach.net>
* font-lock.el (font-lock-keywords): Fix typo in docstring
(bug#16307).
Add option to delete file when done. (Bug#15647)
(python-shell-send-string, python-shell-send-region): Use it.
-2013-11-23 Ivan Shmakov <ivan@siamics.net> (tiny change)
+2013-11-23 Ivan Shmakov <ivan@siamics.net>
* vc/diff-mode.el (diff-mode): Only allow diff-default-read-only
to set buffer-read-only to t, never to nil. (Bug#15938)
Change default to "# encoding: %s" to differentiate it from the
default Ruby encoding comment template.
-2013-11-20 era eriksson <era+emacsbugs@iki.fi>
+2013-11-20 Era Eriksson <era+emacsbugs@iki.fi>
* ses.el (ses-mode): Doc fix. (Bug#14748)
* rect.el (rectangle-mark-mode): Rename from rectangle-mark.
Make it into a proper minor mode.
- (rectangle--region): (implicitly) rename to rectangle-mark-mode.
+ (rectangle--region): (Implicitly) rename to rectangle-mark-mode.
(rectangle-mark-mode-map): New keymap.
(rectangle--highlight-for-redisplay): Fix some corner cases (bug#15796).
2013-10-28 Daiki Ueno <ueno@gnu.org>
- * epa-file.el
- (epa-file-cache-passphrase-for-symmetric-encryption):
+ * epa-file.el (epa-file-cache-passphrase-for-symmetric-encryption):
Document that this option has no effect with GnuPG 2.0 (bug#15552).
2013-10-27 Xue Fuqiao <xfq.free@gmail.com>
2013-06-04 Alan Mackenzie <acm@muc.de>
- Remove faulty optimisation from indentation calculation.
+ Remove faulty optimization from indentation calculation.
* progmodes/cc-engine.el (c-guess-basic-syntax): Don't calculate
search limit based on 2000 characters back from indent-point.
* textmodes/reftex-vars.el (reftex-ref-style-alist):
Add cleveref macros.
- * textmodes/reftex-parse.el
- (reftex-locate-bibliography-files): Accept options for
- bibliography commands.
+ * textmodes/reftex-parse.el (reftex-locate-bibliography-files):
+ Accept options for bibliography commands.
* textmodes/reftex-vars.el (reftex-bibliography-commands):
Add addbibresource. Basic Biblatex support.
2013-04-19 Fabián Ezequiel Gallina <fgallina@gnu.org>
New faster Imenu implementation (bug#14058).
- * progmodes/python.el:
- (python-imenu-prev-index-position):
+ * progmodes/python.el (python-imenu-prev-index-position)
(python-imenu-format-item-label-function)
(python-imenu-format-parent-item-label-function)
(python-imenu-format-parent-item-jump-label-function):
-2015-02-17 Kelvin White <kwhite@gnu.org>
+2015-03-03 Kelvin White <kwhite@gnu.org>
* erc.el: Add old version string back to file header for
package.el compatibility
- 2015-03-03 Glenn Morris <rgm@gnu.org>
-2015-02-13 Glenn Morris <rgm@gnu.org>
+2015-03-03 Glenn Morris <rgm@gnu.org>
* erc.el (erc-rename-buffers): Doc fix. Add :version.
-2015-01-14 Dima Kogan <dima@secretsauce.net>
+2015-03-03 Dima Kogan <dima@secretsauce.net>
* erc-backend.el (define-erc-response-handler): Give hook-name
default value of nil and add-to-list (bug#19363).
+2015-02-14 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * erc-spelling.el (erc-spelling-init):
+ Use flyspell-generic-check-word-predicate.
+
+2015-01-28 Dima Kogan <dima@secretsauce.net>
+
+ * erc-backend.el (define-erc-response-handler): Give hook-name
+ default value of nil and add-to-list (bug#19363).
+
+2015-01-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ Don't downcase system diagnostics' first letters
+ * erc-dcc.el (erc-dcc-server): Ignore case while comparing diagnostics.
+
+2014-11-23 Michael Albinus <michael.albinus@gmx.de>
+
+ * erc-desktop-notifications.el (erc-notifications-bus):
+ New customer option. Supports cases when Emacs hasn't been
+ invoked in the same environment where the notifications shall go to.
+ (erc-notifications-notify): Use it.
2014-11-10 Kelvin White <kwhite@gnu.org>
* erc-stamp.el (erc-timestamp-intangible): Change version tag to 24.5.
-2014-11-09 Ivan Shmakov <ivan@siamics.net>
+2014-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * erc.el (erc-send-input): Bind `str' dynamically (bug#18936).
+
+2014-10-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ Simplify use of current-time and friends.
+ * erc-backend.el (TOPIC): Omit unnecessary call to current-time.
+ * erc.el (erc-emacs-time-to-erc-time): Simplify by using float-time.
+ (erc-current-time): Simplify by using erc-emacs-time-to-erc-time.
+
+2014-10-20 Glenn Morris <rgm@gnu.org>
+
+ * Merge in all changes up to 24.4 release.
+
+2014-10-15 Ivan Shmakov <ivan@siamics.net>
* erc-track.el (erc-modified-channels-display): Update mode line
more frequently (bug#18510).
-2014-11-09 Kelvin White <kwhite@gnu.org>
+2014-10-10 Kelvin White <kwhite@gnu.org>
* erc.el (erc-initialize-log-marker): Only initialize
erc-last-saved-position if not already a marker.
-2014-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
* erc.el (erc-channel-receive-names): Silence compiler warning.
(erc-format-@nick, erc-update-modes): Idem.
-2014-11-09 Kelvin White <kwhite@gnu.org>
+2014-10-03 Kelvin White <kwhite@gnu.org>
* erc.el (erc-rename-buffers): Use defcustom instead of defvar for
buffer renaming configuration option.
-2014-11-09 Paul Eggert <eggert@cs.ucla.edu>
+2014-10-02 Paul Eggert <eggert@cs.ucla.edu>
* erc.el (erc-nick-at-point): Fix format-string typo (Bug#17755).
-2014-11-09 Kelvin White <kwhite@gnu.org>
+2014-10-02 Kelvin White <kwhite@gnu.org>
* erc.el (erc-rename-buffer-p): When set to t buffers will be
renamed to the current irc network.
* erc-ring.el (erc-input-ring-setup): Fixes Bug #18599
-2014-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-09-30 Stefan Monnier <monnier@iro.umontreal.ca>
* erc-track.el (erc-modified-channels-display): Update all mode lines
if needed (bug#18510). Remove call to erc-modified-channels-object
(erc-modified-channels-update): Don't force-mode-line-update here
any more.
-2014-11-09 Kelvin White <kwhite@gnu.org>
+2014-09-26 Kelvin White <kwhite@gnu.org>
* erc.el (erc-format-nick): Fix code regression - Bug #18551
-2014-11-09 Kelvin White <kwhite@gnu.org>
+2014-09-25 Kelvin White <kwhite@gnu.org>
* erc.el: Follow Emacs version instead of tracking it seperately.
(erc-quit/part-reason-default) : Clean up quit/part message
(erc-cmd-SV, erc-ctcp-query-VERSION, erc-version, erc-version-string):
Change version string.
-2014-11-09 Kelvin White <kwhite@gnu.org>
+2014-08-13 Kelvin White <kwhite@gnu.org>
* erc.el (erc-send-input): Disable display commands in current buffer
(erc-format-target-and/or-network): Fix cases when buffer name is set
-2014-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-08-12 Stefan Monnier <monnier@iro.umontreal.ca>
* erc-stamp.el (erc-timestamp-intangible): Disable by default because
`intangible' is evil.
-2014-11-09 Kelvin White <kwhite@gnu.org>
+2014-08-07 Kelvin White <kwhite@gnu.org>
* erc.el (erc-channel-receive-names): Fix variable names
(erc-format-target-and/or-network): Rename server-buffers to
network name if possible
-2014-11-09 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-07-08 Stefan Monnier <monnier@iro.umontreal.ca>
* erc.el (erc-channel-receive-names): Reduce redundancy.
-2014-11-09 Kelvin White <kwhite@gnu.org>
+2014-06-19 Kelvin White <kwhite@gnu.org>
* erc-backend.el: Handle user modes in relevant server responses
* erc.el: Better user mode support.
(erc-channel-receive-names): Update channel users.
(erc-nick-at-point): Return correct user info.
-2014-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-04 Stefan Monnier <monnier@iro.umontreal.ca>
- * erc.el (erc-send-input): Bind `str' dynamically (bug#18936).
-
-2014-10-20 Glenn Morris <rgm@gnu.org>
-
- * Version 24.4 released.
-
-2014-09-24 Stefan Monnier <monnier@iro.umontreal.ca>
-
- * erc-track.el (erc-modified-channels-display): Update all mode lines
- if needed (bug#18510). Remove call to erc-modified-channels-object
- where we ignored the return value.
- (erc-modified-channels-update): Don't force-mode-line-update here any more.
+ * erc.el (erc-invite-only-mode, erc-toggle-channel-mode): Simplify.
+ (erc-load-script): Tighten a regexp.
2014-02-25 Julien Danjou <julien@danjou.info>
2011-11-28 Mike Kazantsev <mk.fraggod@gmail.com> (tiny change)
- * erc-dcc.el (erc-dcc-ctcp-query-send-regexp): Updated regexp to
+ * erc-dcc.el (erc-dcc-ctcp-query-send-regexp): Update regexp to
match quoted filenames with spaces inside.
- (erc-dcc-handle-ctcp-send): Updated regexp match group numbers,
+ (erc-dcc-handle-ctcp-send): Update regexp match group numbers,
added processing of escaped quotes and backslashes if filename
itself was in quotes.
(make-obsolete-variable 'ispell-aspell-supports-utf8
'ispell-encoding8-command "23.1")
- (defvar ispell-hunspell-dictionary-equivs-alist
+ (defvar ispell-dicts-name2locale-equivs-alist
'(("american" "en_US")
("brasileiro" "pt_BR")
("british" "en_GB")
("slovenian" "sl_SI")
("svenska" "sv_SE")
("hebrew" "he_IL"))
- "Alist with matching hunspell dict names for standard dict names in
+ "Alist with known matching locales for standard dict names in
`ispell-dictionary-base-alist'.")
(defvar ispell-emacs-alpha-regexp
(defun ispell-call-process (&rest args)
"Like `call-process' but defend against bad `default-directory'."
(let ((default-directory default-directory))
- (unless (and (file-directory-p default-directory)
- (file-readable-p default-directory))
+ (unless (file-accessible-directory-p default-directory)
(setq default-directory (expand-file-name "~/")))
(apply 'call-process args)))
(defun ispell-call-process-region (&rest args)
"Like `call-process-region' but defend against bad `default-directory'."
(let ((default-directory default-directory))
- (unless (and (file-directory-p default-directory)
- (file-readable-p default-directory))
+ (unless (file-accessible-directory-p default-directory)
(setq default-directory (expand-file-name "~/")))
(apply 'call-process-region args)))
"For aspell dictionary DICT-NAME, return a list of parameters if an
associated data file is found or nil otherwise. List format is that
of `ispell-dictionary-base-alist' elements."
+
+ ;; Make sure `ispell-aspell-dict-dir' is defined
+ (or ispell-aspell-dict-dir
+ (setq ispell-aspell-dict-dir
+ (ispell-get-aspell-config-value "dict-dir")))
+
;; Make sure `ispell-aspell-data-dir' is defined
(or ispell-aspell-data-dir
(setq ispell-aspell-data-dir
(ispell-get-aspell-config-value "data-dir")))
- ;; Try finding associated datafile
- (let* ((datafile1
- (concat ispell-aspell-data-dir "/"
- ;; Strip out variant, country code, etc.
- (and (string-match "^[[:alpha:]]+" dict-name)
- (match-string 0 dict-name)) ".dat"))
- (datafile2
- (concat ispell-aspell-data-dir "/"
- ;; Strip out anything but xx_YY.
- (and (string-match "^[[:alpha:]_]+" dict-name)
- (match-string 0 dict-name)) ".dat"))
- (data-file
- (if (file-readable-p datafile1)
- datafile1
- (if (file-readable-p datafile2)
- datafile2)))
- otherchars)
+
+ ;; Try finding associated datafile. aspell will look for master .dat
+ ;; file in `dict-dir' and `data-dir'. Associated .dat files must be
+ ;; in the same directory as master file.
+ (let ((data-file
+ (catch 'datafile
+ (dolist ( tmp-path (list ispell-aspell-dict-dir
+ ispell-aspell-data-dir ))
+ ;; Try xx.dat first, strip out variant, country code, etc,
+ ;; then try xx_YY.dat (without stripping country code).
+ (dolist (tmp-regexp (list "^[[:alpha:]]+"
+ "^[[:alpha:]_]+"))
+ (let ((fullpath
+ (concat tmp-path "/"
+ (and (string-match tmp-regexp dict-name)
+ (match-string 0 dict-name)) ".dat")))
+ (if (file-readable-p fullpath)
+ (throw 'datafile fullpath)))))))
+ otherchars)
(if data-file
(with-temp-buffer
(realdict (assoc realname alist)))
(when (and realdict (not already-exists-p))
(push (cons aliasname (cdr realdict)) alist))))))
+ ;; Add entries for standard dict-names with found locale-matching entry
+ (dolist (dict-map-entry ispell-dicts-name2locale-equivs-alist)
+ (let ((name (car dict-map-entry))
+ (locale (cadr dict-map-entry)))
+ (unless (assoc name alist) ;; skip if already present
+ (if (assoc locale alist)
+ (push (cons name (cdr (assoc locale alist))) alist)))))
alist))
;; Make ispell.el work better with hunspell.
(if (cadr (assoc dict ispell-dictionary-alist))
(message "ispell-hfde: Non void entry for %s. Skipping.\n" dict)
(let ((dict-alias
- (cadr (assoc dict ispell-hunspell-dictionary-equivs-alist)))
+ (cadr (assoc dict ispell-dicts-name2locale-equivs-alist)))
(use-for-dicts (list dict))
(dict-args-cdr (cdr (ispell-parse-hunspell-affix-file dict)))
newlist)
;; Get a list of uninitialized dicts using the same affix file.
- (dolist (dict-equiv-alist-entry ispell-hunspell-dictionary-equivs-alist)
+ (dolist (dict-equiv-alist-entry ispell-dicts-name2locale-equivs-alist)
(let ((dict-equiv-key (car dict-equiv-alist-entry))
(dict-equiv-value (cadr dict-equiv-alist-entry)))
(if (or (member dict dict-equiv-alist-entry)
"Look for installed hunspell dictionaries.
Will initialize `ispell-hunspell-dictionary-alist' and
`ispell-hunspell-dictionary-alist' after values found
- and remove `ispell-hunspell-dictionary-equivs-alist'
+ and remove `ispell-dicts-name2locale-equivs-alist'
entries if a specific dict was found."
(let ((hunspell-found-dicts
(split-string
"-- ispell-fhd: Skipping entry: %s\n" dict)))))
;; Remove entry from aliases alist if explicit dict was found.
(let (newlist)
- (dolist (dict ispell-hunspell-dictionary-equivs-alist)
+ (dolist (dict ispell-dicts-name2locale-equivs-alist)
(if (assoc (car dict) ispell-hunspell-dict-paths-alist)
(ispell-print-if-debug
"-- ispell-fhd: Excluding %s alias. Standalone dict found.\n"
(car dict))
(add-to-list 'newlist dict)))
- (setq ispell-hunspell-dictionary-equivs-alist newlist))
+ (setq ispell-dicts-name2locale-equivs-alist newlist))
;; Add known hunspell aliases
- (dolist (dict-equiv ispell-hunspell-dictionary-equivs-alist)
+ (dolist (dict-equiv ispell-dicts-name2locale-equivs-alist)
(let ((dict-equiv-key (car dict-equiv))
(dict-equiv-value (cadr dict-equiv))
(exclude-aliases (list ;; Exclude TeX aliases
(let* ((dict-name (nth 0 adict))
(dict-equiv
(cadr (assoc dict-name
- ispell-hunspell-dictionary-equivs-alist)))
+ ispell-dicts-name2locale-equivs-alist)))
(ispell-args (nth 5 adict))
(ispell-args-has-d (member "-d" ispell-args))
skip-dict)
or `i' is used.
Global `ispell-quit' set to start location to continue spell session."
(let ((count ?0)
- (line ispell-choices-win-default-height)
- ;; ensure 4 context lines.
- (max-lines (- (ispell-adjusted-window-height) 4))
(choices miss)
(window-min-height (min window-min-height
ispell-choices-win-default-height))
(command-characters '( ? ?i ?a ?A ?r ?R ?? ?x ?X ?q ?l ?u ?m ))
- (dedicated (window-dedicated-p))
(skipped 0)
- char num result textwin dedicated-win)
+ char num result textwin)
;; setup the *Choices* buffer with valid data.
(with-current-buffer (get-buffer-create ispell-choices-buffer)
(boundp 'horizontal-scrollbar-visible-p)
(set-specifier horizontal-scrollbar-visible-p nil
(cons (current-buffer) nil))))
+ (ispell-with-no-warnings
+ (and (boundp 'horizontal-scroll-bar)
+ (setq horizontal-scroll-bar nil)))
(erase-buffer)
(if guess
(progn
(insert "Affix rules generate and capitalize "
"this word as shown below:\n\t")
(while guess
- (if (> (+ 4 (current-column) (length (car guess)))
- (window-width))
- (progn
- (insert "\n\t")
- (setq line (1+ line))))
+ (when (> (+ 4 (current-column) (length (car guess)))
+ (window-width))
+ (insert "\n\t"))
(insert (car guess) " ")
(setq guess (cdr guess)))
- (insert "\nUse option `i' to accept this spelling and put it in your private dictionary.\n")
- (setq line (+ line (if choices 3 2)))))
- (while (and choices
- (< (if (> (+ 7 (current-column) (length (car choices))
- (if (> count ?~) 3 0))
- (window-width))
- (progn
- (insert "\n")
- (setq line (1+ line)))
- line)
- max-lines))
+ (insert "\nUse option `i' to accept this spelling and put it in your private dictionary.\n")))
+ (while choices
+ (when (> (+ 7 (current-column)
+ (length (car choices))
+ (if (> count ?~) 3 0))
+ (window-width))
+ (insert "\n"))
;; not so good if there are over 20 or 30 options, but then, if
;; there are that many you don't want to scan them all anyway...
(while (memq count command-characters) ; skip command characters.
(if (not (pos-visible-in-window-p end))
(sit-for 0))
- ;; allow temporary split of dedicated windows...
- (if dedicated
- (progn
- (setq dedicated-win (selected-window))
- (set-window-dedicated-p dedicated-win nil)))
-
;; Display choices for misspelled word.
- (ispell-show-choices line end)
- (select-window (setq textwin (next-window)))
+ (setq textwin (selected-window))
+ (ispell-show-choices)
+ (select-window textwin)
;; highlight word, protecting current buffer status
(unwind-protect
(or ispell-complete-word-dict
ispell-alternate-dictionary))
miss (ispell-lookup-words new-word)
- choices miss
- line ispell-choices-win-default-height)
- (while (and choices ; adjust choices window.
- (< (if (> (+ 7 (current-column)
- (length (car choices))
- (if (> count ?~) 3 0))
- (window-width))
- (progn
- (insert "\n")
- (setq line (1+ line)))
- line)
- max-lines))
+ choices miss)
+ (while choices
+ (when (> (+ 7 (current-column)
+ (length (car choices))
+ (if (> count ?~) 3 0))
+ (window-width))
+ (insert "\n"))
(while (memq count command-characters)
(setq count (ispell-int-char (1+ count))
skipped (1+ skipped)))
count (ispell-int-char (1+ count))))
(setq count (ispell-int-char
(- count ?0 skipped))))
- (ispell-show-choices line end)
- (select-window (next-window)))))
+ (setq textwin (selected-window))
+ (ispell-show-choices)
+ (select-window textwin))))
(and (eq 'block ispell-highlight-p)
(ispell-highlight-spelling-error start end nil
'block))
(and ispell-highlight-p ; unhighlight
(save-window-excursion
(select-window textwin)
- (ispell-highlight-spelling-error start end)))
- (if dedicated
- (set-window-dedicated-p dedicated-win t)))))
+ (ispell-highlight-spelling-error start end))))))
-(defun ispell-show-choices (line end)
+(defun ispell-show-choices ()
"Show the choices in another buffer or frame."
(if (and ispell-use-framepop-p (fboundp 'framepop-display-buffer))
(progn
(framepop-display-buffer (get-buffer ispell-choices-buffer))
;; (get-buffer-window ispell-choices-buffer t)
(select-window (previous-window))) ; *Choices* window
- ;; standard selection by splitting a small buffer out of this window.
- (let ((choices-window (get-buffer-window ispell-choices-buffer)))
- (if choices-window
- (if (= line (ispell-adjusted-window-height choices-window))
- (select-window choices-window)
- ;; *Choices* window changed size. Adjust the choices window
- ;; without scrolling the spelled window when possible
- (let ((window-line
- (- line (ispell-adjusted-window-height choices-window)))
- (visible (progn (vertical-motion -1) (point))))
- (if (< line ispell-choices-win-default-height)
- (setq window-line (+ window-line
- (- ispell-choices-win-default-height
- line))))
- (move-to-window-line 0)
- (vertical-motion window-line)
- (set-window-start (selected-window)
- (if (> (point) visible) visible (point)))
- (goto-char end)
- (select-window choices-window)
- (enlarge-window window-line)))
- ;; Overlay *Choices* window when it isn't showing
- (ispell-overlay-window (max line ispell-choices-win-default-height)))
- (switch-to-buffer ispell-choices-buffer)
- (goto-char (point-min)))))
+ ;; Display choices above selected window.
+ (ispell-display-buffer (get-buffer-create ispell-choices-buffer))))
;;;###autoload
"Type 'x C-h f ispell-help' for more help")))
(save-window-excursion
(if ispell-help-in-bufferp
- (progn
- (ispell-overlay-window 4)
- (switch-to-buffer (get-buffer-create "*Ispell Help*"))
- (insert (concat help-1 "\n" help-2 "\n" help-3))
+ (let ((buffer (get-buffer-create "*Ispell Help*")))
+ (with-current-buffer buffer
+ (insert (concat help-1 "\n" help-2 "\n" help-3)))
+ (ispell-display-buffer buffer)
(sit-for 5)
(kill-buffer "*Ispell Help*"))
(unwind-protect
(ispell-highlight-spelling-error-overlay start end highlight))
(t (ispell-highlight-spelling-error-generic start end highlight refresh))))
-(defun ispell-adjusted-window-height (&optional window)
- "Like `window-height', adjusted to correct for the effect of tall mode-lines.
-The value returned is actually the nominal number of text-lines in the
-window plus 1. On a terminal, this is the same value returned by
-`window-height', but if the window has a mode-line is taller than a normal
-text line, the returned value may be smaller than that from
-`window-height'."
- (cond ((fboundp 'window-text-height)
- (1+ (window-text-height window)))
- ((or (and (fboundp 'display-graphic-p) (display-graphic-p))
- (and (featurep 'xemacs) window-system))
- (1- (window-height window)))
- (t
- (window-height window))))
-
-(defun ispell-overlay-window (height)
- "Create a window covering the top HEIGHT lines of the current window.
-Ensure that the line above point is still visible but otherwise avoid
-scrolling the current window. Leave the new window selected."
- (save-excursion
- (let ((oldot (save-excursion (vertical-motion -1) (point)))
- (top (save-excursion (move-to-window-line height) (point))))
- ;; If line above old point (line starting at oldot) would be
- ;; hidden by new window, scroll it to just below new win
- ;; otherwise set top line of other win so it doesn't scroll.
- (if (< oldot top) (setq top oldot))
- ;; if frame is unsplittable, temporarily disable that...
- (if (cdr (assq 'unsplittable (frame-parameters (selected-frame))))
- (let ((frame (selected-frame)))
- (modify-frame-parameters frame '((unsplittable . nil)))
- (split-window nil height)
- (modify-frame-parameters frame '((unsplittable . t))))
- (split-window nil height))
- (let ((deficit (- height (ispell-adjusted-window-height))))
- (when (> deficit 0)
- ;; Number of lines the window is still too short. We ensure that
- ;; there are at least (1- HEIGHT) lines visible in the window.
- (enlarge-window deficit)
- (goto-char top)
- (vertical-motion deficit)
- (setq top (min (point) oldot))))
- (set-window-start (next-window) top))))
-
+(defun ispell-display-buffer (buffer)
+ "Show BUFFER in new window above selected one.
+Also position fit window to BUFFER and select it."
+ (let* ((unsplittable
+ (cdr (assq 'unsplittable (frame-parameters (selected-frame)))))
+ (window
+ (or (get-buffer-window buffer)
+ (and unsplittable
+ ;; If frame is unsplittable, temporarily disable that...
+ (let ((frame (selected-frame)))
+ (modify-frame-parameters frame '((unsplittable . nil)))
+ (prog1
+ (condition-case nil
+ (split-window
+ nil (- ispell-choices-win-default-height) 'above)
+ (error nil))
+ (modify-frame-parameters frame '((unsplittable . t))))))
+ (and (not unsplittable)
+ (condition-case nil
+ (split-window
+ nil (- ispell-choices-win-default-height) 'above)
+ (error nil)))
+ (display-buffer buffer))))
+ (if (not window)
+ (error "Couldn't make window for *Choices*")
+ (select-window window)
+ (set-window-buffer window buffer)
+ (set-window-point window (point-min))
+ (fit-window-to-buffer window nil nil nil nil t))))
;; Should we add a compound word match return value?
(defun ispell-parse-output (output &optional accept-list shift)
(ispell-hunspell-fill-dictionary-entry ispell-current-dictionary)))
(let* ((default-directory
- (if (and (file-directory-p default-directory)
- (file-readable-p default-directory))
+ (if (file-accessible-directory-p default-directory)
default-directory
;; Defend against bad `default-directory'.
(expand-file-name "~/")))
(if (or ispell-really-aspell
ispell-really-hunspell
;; Protect against bad default-directory
- (not (and (file-directory-p default-directory)
- (file-readable-p default-directory)))
+ (not (file-accessible-directory-p default-directory))
;; Ispell and per-dir personal dicts available
(not (or (file-readable-p (concat default-directory
".ispell_words"))
-2015-02-28 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* search.c (find_newline): Avoid assertion violations in
CHAR_TO_BYTE when a portion of the buffer was deleted and we look
hen JIT font-lock fontifies a newly displayed portion of the
buffer.
-2015-02-23 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* w32fns.c (Fw32__menu_bar_in_use): New internal function.
(Bug#19925)
-2015-02-20 Glenn Morris <rgm@gnu.org>
+2015-03-03 Glenn Morris <rgm@gnu.org>
* fileio.c (Fmake_temp_name): Doc tweaks. (Bug#19858)
-2015-02-14 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* menu.c (Fx_popup_menu) [HAVE_X_WINDOWS]: Call
mouse_position_for_popup only for X frames. (Bug#19862)
- 2015-03-03 Eli Zaretskii <eliz@gnu.org>
-2015-02-13 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* buffer.c (syms_of_buffer): Doc fix. (Bug#19841)
- 2015-03-03 Eli Zaretskii <eliz@gnu.org>
-2015-02-08 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* xfaces.c (map_tty_color): Use assoc_no_quit instead of
assq_no_quit to fetch color definition by its string name.
(Bug#19802)
- 2015-03-03 Eli Zaretskii <eliz@gnu.org>
-2015-02-05 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (move_it_in_display_line_to): Handle the case where the
last character of a screen line is whitespace, and we are under
word-wrap with overflow-newline-into-fringe turned on.
(Bug#19769)
- 2015-03-03 Eli Zaretskii <eliz@gnu.org>
-2015-02-03 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (handle_stop, handle_single_display_spec)
(next-element_from_image): Don't reset the
after we've exhausted all the overlay strings at the current
position. (Bug#19307)
-2015-02-02 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (set_iterator_to_next): Set value of stop_charpos
according to the object we are about to resume iterating.
* xdisp.c (redisplay_window): Don't avoid redisplay of a window
whose update_mode_line flag is set. (Bug#19721)
-2015-01-30 Eli Zaretskii <eliz@gnu.org>
+2015-03-03 Eli Zaretskii <eliz@gnu.org>
* dispextern.h (FACE_FOR_CHAR): Fix the commentary.
+2015-03-03 Daniel Colascione <dancol@dancol.org>
-2015-01-29 Hans Wennborg <hwennborg@google.com> (tiny change)
+ * alloc.c (syms_of_alloc): Rename `gc-precise-p' to `gc-precise'.
- * emacs.c (decode_env_path): Add parentheses around ternary
- operator to increase readability and pacify compiler warnings.
+2015-03-03 Paul Eggert <eggert@cs.ucla.edu>
-2015-01-29 Eli Zaretskii <eliz@gnu.org>
+ * alloc.c (run_finalizers): Omit unused local.
+ Also, redo newly-added code as per usual Emacs style.
- * w32.c (sys_readdir): Map ERROR_NOT_READY (as in "device not
- ready") to ENOENT.
+2015-03-03 Martin Rudalics <rudalics@gmx.at>
-2015-01-28 Eli Zaretskii <eliz@gnu.org>
+ * frame.c (adjust_frame_size): If the pixel sizes remain
+ unchanged but the number of lines or columns of the frame
+ changes, run `window--pixel-to-total' (Bug#19972).
+ (Qwindow_pixel_to_total): DEFSYM it.
- * dired.c (directory_files_internal, file_name_completion)
- [WINDOWSNT]: Signal an error when errno is set non-zero by
- 'readdir', regardless of its value.
+2015-03-03 Daniel Colascione <dancol@dancol.org>
- * w32.c (sys_readdir): Set errno to ENOENT when the directory
- doesn't exist and to EACCES when it's not accessible to the
- current user. Set errno to zero when FindNextFile exhausts the
- directory, so that callers don't interpret that as an error and
- don't signal a file-error.
- (open_unc_volume): Set errno to ENOENT if WNetOpenEnum fails.
+ * print.c (print_object): Print whether a finalizer has
+ been called.
-2015-01-27 Eli Zaretskii <eliz@gnu.org>
+ * data.c (Ftype_of): Make `type-of' work with finalizers.
+ (syms_of_data): Register Qfinalizer.
- * dired.c (directory_files_internal) [WINDOWSNT]: If readdir
- returns NULL and errno is ENOTDIR, behave as if opendir failed to
- open the directory. (Bug#19701)
+2015-03-02 Daniel Colascione <dancol@dancol.org>
- * w32.c (sys_readdir): If FindFirstFile fails because the
- directory doesn't exist, set errno to ENOTDIR.
+ * print.c (print_object): Print finalizers.
-2015-01-24 Jan Djärv <jan.h.d@swipnet.se>
+ * alloc.c:
+ (finalizers, doomed_finalizers): New variables.
+ (init_finalizer_list, finalizer_insert, unchain_finalizer)
+ (mark_finalizer_list, queue_doomed_finalizers)
+ (run_finalizer_handler, run_finalizer_function, run_finalizers):
+ New functions.
+ (garbage_collect_1, mark_object, sweep_misc)
+ (init_alloc_once, syms_of_alloc): Support finalizers.
+ (gc-precise-p): New Lisp variable.
- * nsterm.m (drawRect:): Add block/unblock_input (Bug#19660).
+ * lisp.h (Lisp_Misc_Type): New value Lisp_Misc_Finalizer.
+ (FINALIZERP, XFINALIZER): New functions.
+ (Lisp_Finalizer): New structure.
-2015-01-21 Paul Eggert <eggert@cs.ucla.edu>
+2015-02-28 Paul Eggert <eggert@cs.ucla.edu>
- Fix coding.c subscript error
- * coding.c (CODING_ISO_INVOKED_CHARSET):
- Avoid undefined behavior if CODING_ISO_INVOCATION returns negative.
+ * character.c (alphabeticp, decimalnump): Avoid undefined behavior
+ if CATEGORY is not an integer, or is an integer out of
+ unicode_category_t range.
- Backport: correct old fix for GTK font selection
- * gtkutil.c (xg_get_font): Fix off-by-2 typo.
- Fixes: bug#3228
+2015-02-28 Martin Rudalics <rudalics@gmx.at>
-2015-01-21 Jan Djärv <jan.h.d@swipnet.se>
+ * frame.c (make_initial_frame, Fmake_terminal_frame): Set
+ can_x_set_window_size and after_make_frame (Bug#19962).
- * nsterm.m (EV_TRAILER2): Set Vinhibit_quit to Qt (Bug#19531).
+2015-02-28 Eli Zaretskii <eliz@gnu.org>
-2015-01-17 Eli Zaretskii <eliz@gnu.org>
+ * character.c (alphabeticp, decimalnump): New functions.
+ * character.h (alphabeticp, decimalnump): Add prototypes.
- * xdisp.c (produce_image_glyph): Fix display of images in R2L
- screen lines: prepend the new glyph to the ones already there
- instead of appending it.
+ * regex.c (ISALNUM, ISALPHA): Check Unicode character properties
+ for multibyte characters by calling alphabeticp and decimalnump.
+ (BIT_ALPHA, BIT_ALNUM): New bit masks.
+ (re_wctype_to_bit): Return them when the class is RECC_ALPHA or
+ RECC_ALNUM.
+ (re_match_2_internal): Call ISALPHA and ISALNUM when appropriate.
+ (Bug#19878)
-2015-01-14 Eli Zaretskii <eliz@gnu.org>
+2015-02-27 Jan Djärv <jan.h.d@swipnet.se>
- * w32fns.c (w32_set_title_bar_text): New function, including
- support for titles with non-ASCII characters outside of the
- current system codepage.
- (x_set_name, x_set_title): Use it. (Bug#19590)
+ * xterm.h (x_real_pos_and_offsets): Take outer_border as arg also.
-2015-01-10 Eli Zaretskii <eliz@gnu.org>
+ * xmenu.c (x_menu_show): Adjust for new arg to x_real_pos_and_offsets.
- * indent.c (Fvertical_motion): Return zero if we started from ZV
- and there's an overlay after-string there. (Bug#19553)
+ * xfns.c (x_real_pos_and_offsets): Take outer_border as arg also.
+ Initialize all args. Get outer_border from window attributes.
+ Fix typo for top_offset_y.
+ (x_real_positions): Adjust for new arg to x_real_pos_and_offsets.
+ (Fx_frame_geometry): Get outer_border also. Use attrs.width/height.
-2015-01-09 Eli Zaretskii <eliz@gnu.org>
+2015-02-27 Mark Laws <mdl@60hz.org>
- * emacs.c (usage_message): Fix the description of the -nl switch.
- (Bug#19542)
+ Support daemon mode on MS-Windows (bug#19688)
+ * emacs.c <w32_daemon_event> [WINDOWSNT]: New global var.
+ (main) [WINDOWSNT]: Initialize it to NULL. Create the event to
+ signal clients we are ready for connections.
+ (Fdaemon_initialized): Use DAEMON_RUNNING.
+ [WINDOWSNT]: MS-Windows specific code to signal clients we are
+ ready for connections.
-2015-01-08 Eli Zaretskii <eliz@gnu.org>
+ * lisp.h (DAEMON_RUNNING): New macro, encapsulates Posix and
+ MS-Windows conditions for running in daemon mode.
- * dispnew.c (buffer_posn_from_coords): Fix the value of the column
- returned for right-to-left screen lines. (Before the change on
- 2014-12-30, the incorrectly-computed X pixel coordinate concealed
- this bug.)
+ * minibuf.c (read_minibuf): Use DAEMON_RUNNING.
-2015-01-05 Eli Zaretskii <eliz@gnu.org>
+ * keyboard.c (kbd_buffer_get_event): Use DAEMON_RUNNING.
- * xdisp.c (move_it_to, try_cursor_movement): Don't use the window
- end information if the window_end_valid flag is unset.
- (try_window_id): If the call to display_line invalidated the
- window end information, give up the try_window_id optimization.
- (Bug#19511)
+ * dispnew.c (init_display) [WINDOWSNT]: Initialize frames/terminal
+ even in daemon mode.
-2015-01-04 Eli Zaretskii <eliz@gnu.org>
+2015-02-26 Jan Djärv <jan.h.d@swipnet.se>
- * w32fns.c (Fx_server_version, Fx_server_vendor): Doc fix.
+ * xmenu.c (create_and_show_popup_menu): Call XTranslateCoordinates,
+ dont use OUTER_TO_INNER macros.
+ (x_menu_show): Call x_real_pos_and_offsets, don't use
+ OUTER_TO_INNER macros.
- * xfns.c (Fx_server_version, Fx_server_vendor): Doc fix.
+2015-02-26 Eli Zaretskii <eliz@gnu.org>
- * emacs.c (syms_of_emacs) <system-configuration>: Doc fix.
- (Bug#19502)
+ * dispextern.h (FACE_FOR_CHAR): Fix the commentary.
-2014-12-30 Eli Zaretskii <eliz@gnu.org>
+2015-02-26 Hans Wennborg <hwennborg@google.com> (tiny change)
- * xdisp.c (pos_visible_p): Fix up the X coordinate for
- right-to-left screen lines. (Bug#19473)
+ * emacs.c (decode_env_path): Add parentheses around ternary
+ operator to increase readability and pacify compiler warnings.
-2014-12-28 Eli Zaretskii <eliz@gnu.org>
+2015-02-26 Eli Zaretskii <eliz@gnu.org>
- * w32proc.c (Fw32_get_codepage_charset): Doc fix. (Bug#19458)
+ * w32.c (sys_readdir): Map ERROR_NOT_READY (as in "device not
+ ready") to ENOENT.
-2014-12-28 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
+2015-02-26 Paul Eggert <eggert@cs.ucla.edu>
- Port memory-full checking to GnuTLS 3.3
- Instead of using gnutls_global_set_mem_functions, check every call
- to a GnuTLS function that might return an indication of memory
- exhaustion. Suggested by Dmitry Antipov in:
- http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg02056.html
- * gnutls.c (gnutls_global_set_mem_functions) [WINDOWSNT]: Remove.
- (init_gnutls_functions): Do not load gnutls_global_set_mem_functions.
- (fn_gnutls_global_set_mem_functions) [!WINDOWSNT]: Remove.
- All uses removed.
- (check_memory_full): New function.
- (emacs_gnutls_handshake, emacs_gnutls_handle_error)
- (gnutls_make_error, Fgnutls_boot): Use it.
- (emacs_gnutls_global_init): Avoid gnutls_global_set_mem_functions.
+ * xfns.c (x_real_pos_and_offsets): Fix pointer signedness.
-2014-12-25 Eli Zaretskii <eliz@gnu.org>
+2015-02-25 Jan Djärv <jan.h.d@swipnet.se>
- * xdisp.c (set_iterator_to_next) <GET_FROM_STRING>: Limit search in
- composition_compute_stop_pos to the number of characters in the
- string. (Bug#19435)
- <GET_FROM_BUFFER, GET_FROM_STRING>: Simplify code.
+ * xterm.h (struct x_output): Remove x_pixels_outer_diff,
+ y_pixels_outer_diff, FRAME_OUTER_TO_INNER_DIFF_X,
+ FRAME_OUTER_TO_INNER_DIFF_Y. Declare x_real_pos_and_offsets.
- * composite.c (composition_compute_stop_pos): If no composition
- was found in a string before ENDPOS, and ENDPOS is the string end,
- no need to back up to a safe point.
+ * xmenu.c (create_and_show_popup_menu): Use XTranslateCoordinates
+ instead of OUTER_TO_INNER_DIFF macros.
- * dispextern.h (struct it) <end_charpos>: Improve commentary.
+ * xfns.c (x_real_pos_and_offsets): New function, basically the code
+ from x_real_positions.
+ (x_real_positions): Call x_real_pos_and_offsets.
+ (x_relative_mouse_position): Use XTranslateCoordinates instead of
+ OUTER_TO_INNER_DIFF macros.
+ (Fx_frame_geometry): Get offsets with x_real_pos_and_offsets,
+ border from window attributes. Adjust tool bar and menu widths.
-2014-12-24 Jan Djärv <jan.h.d@swipnet.se>
+ * w32fns.c (x_real_positions): Remove setting of x_pixels_diff,
+ y_pixels_diff.
- * nsimage.m (allocInitFromFile:): Initialize bmRep.
- (dealloc): Release bmRep.
- (setPixmapData): Make bmRep local so class member is not
- set (Bug#19133).
- (setPixmapData): Rename local variable bmRep to avoid compiler
- warning.
+ * frame.h (struct frame): Remove x_pixels_diff, y_pixels_diff.
-2014-12-24 Jan Djärv <jan.h.d@swipnet.se>
+2015-02-25 Paul Eggert <eggert@cs.ucla.edu>
- * nsterm.h (EmacsImage): Remove imageListNext, refCount, reference,
- imageListSetNext, imageListNext.
+ Backtrace after malloc arena is corrupted
+ Without this change, if the malloc arena is corrupted and then
+ 'backtrace' is called, the backtrace can crash because 'backtrace'
+ calls 'malloc'. For more, please see:
+ https://sourceware.org/ml/libc-alpha/2015-02/msg00678.html
+ * emacs.c (main): Initialize tables used by 'backtrace'.
+ * sysdep.c (emacs_backtrace): Document the newly used part of the API.
- * nsimage.m (ImageList, imageListNext, imageListSetNext:)
- (reference): Remove.
- (allocInitFromFile:): Remove searching ImageList and calling
- reference (Bug#18918).
- (dealloc): Remove handling if ImageList.
+2015-02-22 Jan Djärv <jan.h.d@swipnet.se>
-2014-12-22 Jan Djärv <jan.h.d@swipnet.se>
+ * nsfns.m (Fx_frame_geometry): New function.
+ (syms_of_nsfns): Defsubr Sx_frame_geometry.
- * xterm.c (do_ewmh_fullscreen): Don't remove maximized_horz/vert
- when going to fullscreen (Bug#19427).
+2015-02-22 Paul Eggert <eggert@cs.ucla.edu>
-2014-12-18 Eli Zaretskii <eliz@gnu.org>
+ Spelling fixes
+ * lisp.h (DEFINE_NON_NIL_Q_SYMBOL_MACROS):
+ Rename from DEFINE_NONNIL_Q_SYMBOL_MACROS. All uses changed.
- * window.c (Fwindow_body_width): Doc fix. (Bug#19395)
+2015-02-21 Eli Zaretskii <eliz@gnu.org>
-2014-12-15 Stefan Monnier <monnier@iro.umontreal.ca>
+ * w32term.c (queue_notifications):
+ * w32inevt.c (handle_file_notifications):
+ * w32font.c (w32_enumfont_pattern_entity): Prefer 'Qfoo' to
+ 'intern ("foo")'.
- * buffer.c (syms_of_buffer) <Vafter_change_functions>: fix docstring.
+2015-02-21 Paul Eggert <eggert@cs.ucla.edu>
-2014-12-13 Eli Zaretskii <eliz@gnu.org>
+ Prefer 'Qfoo' to 'intern ("foo")'
+ * buffer.c (syms_of_buffer):
+ * bytecode.c (exec_byte_code):
+ * callint.c (Fcall_interactively):
+ * callproc.c (create_temp_file):
+ * charset.c (define_charset_internal):
+ * coding.c (syms_of_coding):
+ * editfns.c (syms_of_editfns):
+ * emacs.c (main):
+ * fns.c (syms_of_fns):
+ * frame.c (delete_frame, Fframe_parameters):
+ * keyboard.c (syms_of_keyboard):
+ * keymap.c (syms_of_keymap):
+ * minibuf.c (read_minibuf, syms_of_minibuf):
+ * nsfns.m (ns_cursor_type_to_lisp):
+ * textprop.c (syms_of_textprop):
+ * xdisp.c (Fformat_mode_line, syms_of_xdisp):
+ * xfns.c (x_create_tip_frame, Fx_select_font):
+ * xml.c (parse_region):
+ Prefer constants like 'Qfoo' to calls like 'intern ("foo")'.
+ * buffer.c (syms_of_buffer): OK to do (put 'erase-buffer 'disabled
+ t) here now ...
+ (keys_of_buffer): ... instead of here.
+ * ftfont.c (syms_of_ftfont): Move DEFSYM of Qmono from here ...
+ * xfns.c (syms_of_xfns): ... to here, since ftfont.c is more
+ optional than xfns.c.
- * gnutls.c (gnutls_init): Fix deprecation warning from GCC.
+2015-02-20 Jan Djärv <jan.h.d@swipnet.se>
-2014-12-12 Eli Zaretskii <eliz@gnu.org>
+ * emacs.c (terminate_due_to_signal): Move totally_unblock_input after
+ setting fatal_error_in_progress, so gobble_input and *read_socket are
+ not read if there are pending_signals.
- * gnutls.c (Fgnutls_available_p, syms_of_gnutls):
- Move gnutls-available-p out of the HAVE_GNUTLS conditional, and define
- them only once.
+2015-02-20 Paul Eggert <eggert@cs.ucla.edu>
-2014-12-11 Teodor Zlatanov <tzz@lifelogs.com>
+ Simplify binary I/O configuration
+ * lread.c (Fload): Prefer FOPEN_TEXT and FOPEN_BINARY to #ifdef DOS_NT.
+ * sysstdio.h: Add copyright notice. Include <fcntl.h>.
+ (FOPEN_BINARY, FOPEN_TEXT): New macros.
+ * xfaces.c (Fx_load_color_file): Use FOPEN_TEXT, since POSIX
+ doesn't guarantee that "t" will work.
- * emacs.c (main): Always include gnutls.h and run syms_of_gnutls.
+2015-02-19 Eli Zaretskii <eliz@gnu.org>
- * gnutls.h: Always declare syms_of_gnutls.
+ * keyboard.c (read_char): Make sure this_single_command_key_start
+ is in sync with this_command_key_count, around the call to
+ input-method-function. (Bug#19774)
- * gnutls.c (Fgnutls_available_p syms_of_gnutls): Move later for
- clarity. Let the availability check return Qnil when the GnuTLS
- integration is not available, instead of erroring out.
- (Bug#19346)
+2015-02-19 Fujii Hironori <fujii.hironori@gmail.com> (tiny change)
-2014-12-10 Eli Zaretskii <eliz@gnu.org>
+ * w32fns.c (w32_wnd_proc) <WM_IME_STARTCOMPOSITION>: Pass the
+ message to DefWindowProc, after positioning the IME window, to
+ trigger its display. (Bug#11732)
- * xdisp.c (move_it_in_display_line_to, display_line):
- Don't disallow overflow-newline-into-fringe when word-wrap is in
- effect. (Bug#19300)
+2015-02-18 Eli Zaretskii <eliz@gnu.org>
-2014-12-04 Lee Duhem <lee.duhem@gmail.com> (tiny change)
+ * emacs.c (Fkill_emacs): Exit with specified exit code even if
+ stdin is at EOF. (Bug#19897)
- * eval.c (Fsignal): Remove duplicate test.
- (Fautoload_do_load): Fix up docstring.
+2015-02-18 Oscar Fuentes <ofv@wanadoo.es>
-2014-12-02 Jan Djärv <jan.h.d@swipnet.se>
+ * keyboard.c (read_char): When there is an input method function,
+ do not restore the echo area if a prefix argument is being
+ introduced. (Bug#19875)
- * nsterm.m (represented_filename, represented_frame): New variables.
- (ns_set_represented_filename): New function.
- (sendEvent:): Set represented filename here to avoid flicker,
- related to Bug#18757.
+2015-02-16 Kelly Dean <kelly@prtime.org>
- * nsterm.h: Declare ns_set_represented_filename.
+ * src/keyboard.c (timer_check_2): Fix incorrect comment.
- * nsfns.m (ns_set_name_as_filename): Don't set represented filename
- at once, call ns_set_represented_filename instead.
+2015-02-14 Martin Rudalics <rudalics@gmx.at>
-2014-11-27 Eli Zaretskii <eliz@gnu.org>
+ * xterm.c (x_frame_normalize_before_maximize): Fix doc-string.
+ Suggested by Alan Mackenzie <acm@muc.de>.
- * xdisp.c (handle_single_display_spec): When ignoring a fringe
- bitmap display, reset the ignore_overlay_strings_at_pos_p flag.
- (next_element_from_buffer): When done with overlays, reset the
- ignore_overlay_strings_at_pos_p flag. (Bug#19201)
+2015-02-14 Eli Zaretskii <eliz@gnu.org>
-2014-11-25 Eli Zaretskii <eliz@gnu.org>
+ * menu.c (Fx_popup_menu) [HAVE_X_WINDOWS]: Call
+ x_relative_mouse_position only for X frames. (Bug#19862)
- * w32fns.c (Fw32_shell_execute): Convert forward slashes in
- DOCUMENT to backslashes, if DOCUMENT is a file. (Bug#19141)
+2015-02-13 Paul Eggert <eggert@cs.ucla.edu>
-2014-11-25 Ulrich Müller <ulm@gentoo.org>
+ Better support for future plugins
+ * lisp.h (DEFINE_LISP_SYMBOL): New macro, replacing and simplifying
+ DEFINE_LISP_SYMBOL_BEGIN / DEFINE_LISP_SYMBOL_END. All uses changed.
+ (DEFINE_NONNIL_Q_SYMBOL_MACROS): New macro, defaulting to true.
- * Makefile.in (temacs$(EXEEXT)): Use consistent flag settings
- for paxctl and setfattr. Fixes temacs startup failure with
- grsecurity/PaX enabled Linux kernel (bug#19067).
+2015-02-11 Martin Rudalics <rudalics@gmx.at>
-2014-11-17 Oscar Fuentes <ofv@wanadoo.es>
+ * w32term.c (w32_read_socket): In SIZE_MAXIMIZED and
+ SIZE_RESTORED cases correctly handle `maximized' value for the
+ `fullscreen' parameter. Don't use 'maximized' frame parameter
+ any more.
+ (w32fullscreen_hook): Include menu bar height when calculating
+ new text height in FULLSCREEN_BOTH case.
+ * xterm.c (do_ewmh_fullscreen): Handle transition from
+ FULLSCREEN_BOTH to FULLSCREEN_MAXIMIZED when
+ x_frame_normalize_before_maximize is set.
+
+2015-02-10 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use bool for boolean in xdisp.c
+ * dispextern.h (display_prop_intangible_p, resize_mini_window)
+ (pixel_to_glyph_coords, mark_window_display_accurate)
+ (compute_display_string_pos, handle_tool_bar_click)
+ (x_intersect_rectangles, clear_mouse_face, display_tty_menu_item):
+ * lisp.h (setup_echo_area_for_printing, message_with_string)
+ (pos_visible_p): Use bool for boolean.
+ * xdisp.c: Use bool, true, false intstead of int, 1, 0.
+ Remove unnecessary forward decls.
+ (trace_move) [DEBUG_TRACE_MOVE]: Now static.
+ (CHECK_IT, CHECK_WINDOW_END):
+ Now an inline function that is always defined.
+ (check_it) [0]:
+ (check_window_end) [oGLYPH_DEBUG && ENABLE_CHECKING]:
+ Remove; no longer needed.
+ (handle_stop): Prefer (X && !Y) to (X ? !Y : 0).
+ (get_overlay_strings): Omit unnecessary casts.
+ (forward_to_next_line_start):
+ (Ftool_bar_height):
+ Prefer !BOOL to (BOOL ? 0 : 1).
+ (next_element_function): New typedef.
+ (get_next_element): Use it. Now const.
+ (IT_POS_VALID_AFTER_MOVE_P): Prefer !X || Y==0 to (X ? Y==0 : 1).
+ (vmessage): Now ATTRIBUTE_FORMAT_PRINTF (1, 0), to pacify GCC 4.9.2
+ (display_echo_area): Prefer BOOLEXPR to BOOLEXPR ? 1 : 0.
+ (tool_bar_item_info): Simplify.
+ (invisible_prop): Rename from invisible_p, since it doesn't
+ return bool. All callers changed.
+ (x_produce_glyphs): Simplify.
+
+2015-02-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ Check for some overflows in vertical-motion
+ * indent.c (window_column_x): New function.
+ (Fvertical_motion): Use it to protect against integer overflow
+ when computing column. Prefer extract_float to doing things by hand.
+ Avoid unnecessary casts.
+
+ * xfont.c: Minor style fixes
+ (xfont_list_pattern): Reindent to 80 cols and use Emacs-style comments.
+ Redo loop so that less indentation is needed.
+
+2015-02-09 Eli Zaretskii <eliz@gnu.org>
+
+ * indent.c (Fvertical_motion): Accept an additional argument
+ CUR-COL and use it as the starting screen coordinate.
+ * window.c (window_scroll_line_based, Fmove_to_window_line): All
+ callers of vertical-motion changed.
+
+2015-02-09 Dima Kogan <dima@secretsauce.net>
+
+ * font.c (font_score): Remove unused variable assignment.
+
+2015-02-09 Dima Kogan <dima@secretsauce.net>
+
+ * xfaces.c (realize_basic_faces): Don't set Qscalable_fonts_allowed to
+ t.
+ * font.c (font_score): Try to find a font without scaling first,
+ and only accept scalable fonts if we did not get a match (Bug#19117).
+
+2015-02-09 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keyboard.c (syms_of_keyboard): Use non-nil default value.
+
+2015-02-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use C99's INFINITY and NAN macros
+ * lread.c: Include <math.h>.
+ (string_to_number): Use INFINITY and NAN rather than rolling our own.
+ This avoids some runtime diagnostics when building with
+ gcc -fsanitize=undefined.
+
+ Fix bidi_explicit_dir_char undefined behavior
+ * bidi.c (bidi_explicit_dir_char): Avoid subscript error when
+ argument is BIDI_EOB. This can happen in bidi_level_of_next_char.
+
+ Better distinguish infinite from invalid times
+ * editfns.c (check_time_validity): New function.
+ (decode_time_components): Return int, not bool.
+ Return -1 (not 0) if the time is out of range.
+ All callers changed.
+ (lisp_time_struct, lisp_seconds_argument): Distinguish better
+ between time overflow and invalid time values.
- * src/w32.c: Use MINGW_W64 instead of _W64.
+2015-02-08 Paul Eggert <eggert@cs.ucla.edu>
- * src/w32term.c: Likewise.
+ Minor tweaks to frame_size_history_add
+ * frame.c (frame_size_history_add): Don't assume length fits in 'int'.
+ Prefer XCAR and XCDR to Fcar and Fcdr when the arg is a cons.
+ (Fframe_after_make_frame): Simplify.
+ * gtkutil.c: Remove commented-out code.
+ * xfns.c (Fx_create_frame): Fix indenting.
-2014-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
+2015-02-08 Eli Zaretskii <eliz@gnu.org>
- * frame.c (Fhandle_switch_frame): Deactivate shift-region (bug#19003).
+ * frame.c (Fframe_parameter): Don't replace a non-nil value of
+ foreground-color or background-color parameters with a nil value.
+ (Bug#19802)
-2014-11-15 Jan Djärv <jan.h.d@swipnet.se>
+2015-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * data.c (Findirect_function): Like `symbol-function', don't signal an
+ error for void functions any more.
+
+2015-02-07 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.c (frame_size_history_add): New function.
+ (frame_inhibit_resize): Consider frame_inhibit_implied_resize
+ only after frame's after_make_frame slot is true.
+ Inhibit resizing fullwidth-/height frames in one direction only.
+ Update frame_size_history.
+ (adjust_frame_size): Call frame_size_history_add.
+ (make_frame): Initalize after_make_frame slot.
+ (Fmake_terminal_frame): Adjust adjust_frame_size call.
+ (Fcan_run_window_configuration_change_hook): Rename to
+ Fframe_after_make_frame. Set after_make_frame slot.
+ Return second argument.
+ (x_set_frame_parameters): Postpone handling fullscreen parameter
+ until after width and height parameters have been set.
+ Apply width and height changes only if can_x_set_window_size is true.
+ Update frame_size_history.
+ (Qadjust_frame_size_1, Qadjust_frame_size_2)
+ (Qadjust_frame_size_3, QEmacsFrameResize, Qframe_inhibit_resize)
+ (Qx_set_fullscreen, Qx_check_fullscreen, Qx_set_window_size_1)
+ (Qxg_frame_resized, Qxg_frame_set_char_size_1)
+ (Qxg_frame_set_char_size_2, Qxg_frame_set_char_size_3)
+ (Qxg_change_toolbar_position, Qx_net_wm_state)
+ (Qx_handle_net_wm_state, Qtb_size_cb, Qupdate_frame_tool_bar)
+ (Qfree_frame_tool_bar): New symbol for updating frame_size_history.
+ (Qtip_frame, Qterminal_frame): New symbols.
+ (Vframe_adjust_size_history): Rename to frame_size_history.
+ * frame.h (struct frame):
+ Rename can_run_window_configuration_change_hook slot to
+ after_make_frame.
+ (frame_size_history_add): Extern.
+ * gtkutil.c (xg_frame_resized): Call frame_size_history_add.
+ Don't set FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT here.
+ (xg_frame_set_char_size): Try to preserve the status of
+ fullwidth/-height frames. Call frame_size_history_add.
+ (tb_size_cb, update_frame_tool_bar, free_frame_tool_bar)
+ (xg_change_toolbar_position): Call frame_size_history_add.
+ * w32fns.c (x_change_tool_bar_height): Handle frame's fullscreen
+ status.
+ (Fx_create_frame): Process fullscreen parameter after frame has
+ been resized.
+ (x_create_tip_frame): Pass Qtip_frame to adjust_frame_size.
+ (Fx_frame_geometry): Don't pollute pure storage.
+ * w32term.c (w32_read_socket): For WM_WINDOWPOSCHANGED,
+ WM_ACTIVATE and WM_ACTIVATEAPP set frame's visibility before
+ calling w32fullscreen_hook. For WM_DISPLAYCHANGE call
+ w32fullscreen_hook immediately.
+ (x_fullscreen_adjust, x_check_fullscreen): Remove.
+ (w32fullscreen_hook): Call change_frame_size just as with a
+ "normal" frame resize operation. Call do_pending_window_change.
+ (x_set_window_size): Try to handle fullwidth and fullheight more
+ accurately. Don't rely on w32_enable_frame_resize_hack.
+ (w32_enable_frame_resize_hack): Remove variable.
+ * widget.c (EmacsFrameResize): Remove dead code.
+ Call frame_size_history_add
+ * window.c (run_window_configuration_change_hook):
+ Check f->after_make_frame instead of
+ f->can_run_window_configuration_change_hook.
+ * xfns.c (x_change_tool_bar_height): Handle frame's fullscreen status.
+ (Fx_create_frame): Process fullscreen parameter after frame has
+ been resized.
+ (Fx_frame_geometry): Don't pollute pure storage.
+ * xterm.c (x_net_wm_state, x_handle_net_wm_state):
+ Call frame_size_history_add.
+ (do_ewmh_fullscreen): Handle x_frame_normalize_before_maximize.
+ (x_check_fullscreen): Count in menubar when calling
+ XResizeWindow. Wait for ConfigureNotify event.
+ Call frame_size_history_add.
+ (x_set_window_size_1): Remove PIXELWISE argument. Try to handle
+ changing a fullheight frame's width or a fullwidth frame's
+ height. Call frame_size_history_add.
+ (x_set_window_size): Simplify xg_frame_set_char_size and
+ x_set_window_size_1 calls.
+ (x_frame_normalize_before_maximize): New variable.
+
+2015-02-07 Paul Eggert <eggert@cs.ucla.edu>
+
+ Remove no-longer-used cursor_in_echo_area code
+ * dispnew.c (set_window_cursor_after_update, update_frame_1):
+ Remove checks for negative cursor_in_echo_area, since this var is
+ a boolean, and has been a boolean for some time. Simplify.
+ * dispnew.c (init_display):
+ * xdisp.c (message3_nolog, vmessage): Use bool for boolean.
+
+2015-02-05 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * eval.c (Ffunction): Handle the new (:documentation ...) form.
+ (syms_of_eval): Declare `:documentation'.
+
+2015-02-05 Martin Rudalics <rudalics@gmx.at>
+
+ * xdisp.c (Fwindow_text_pixel_size): Remove optional BUFFER
+ argument added on 2015-02-01.
+
+2015-02-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ Remove no-longer-used two_byte_p calculations
+ * dispextern.h (struct glyph_string): Remove member two_byte_p.
+ All uses removed.
+ * xdisp.c (get_glyph_face_and_encoding): Remove arg two_byte_p.
+ All callers changed.
- * nsterm.m (ns_send_appdefined): Check for application defined
- event on Cocoa (Bug#18993). Backport from trunk.
+2015-02-03 Paul Eggert <eggert@cs.ucla.edu>
-2014-11-15 Eli Zaretskii <eliz@gnu.org>
+ Omit unnecessary var if GTK or NS
+ * frame.c, frame.h (frame_default_tool_bar_height) [USE_GTK||HAVE_NS]:
+ Now a constant zero on these platforms.
- * window.c (window_scroll_pixel_based): Avoid truncation/rounding
- errors in computing the number of pixels to scroll.
- Suggested by Kelly Dean <kelly@prtime.org>. (Bug#19060)
+2015-02-01 Martin Rudalics <rudalics@gmx.at>
-2014-11-15 Jan Djärv <jan.h.d@swipnet.se>
+ * xdisp.c (Fwindow_text_pixel_size): Add optional argument BUFFER.
- * nsmenu.m (update_frame_tool_bar): If tool bar changes height,
- call updateFrameSize.
+2015-01-31 Eli Zaretskii <eliz@gnu.org>
- * nsterm.m (setFrame:): Remove call to display (Bug#18757).
+ * coding.c (raw_text_coding_system_p): New function.
-2014-11-14 Jan Djärv <jan.h.d@swipnet.se>
+ * keyboard.c (read_decoded_event_from_main_queue): Use it when the
+ keyboard coding-system is 'raw-text'. (Bug#19532)
- * nsfns.m (x_set_foreground_color, x_set_background_color)
- (x_set_cursor_color, Fxw_color_values): Block/unblock input,
- use SET_FRAME_GARBAGED instead of redraw_frame (Bug#19036).
+ * coding.h (raw_text_coding_system_p): Add prototype.
-2014-11-09 Eli Zaretskii <eliz@gnu.org>
+2015-01-31 Andreas Schwab <schwab@linux-m68k.org>
- * fileio.c (Finsert_file_contents): Invalidate buffer caches also
- when the inserted text does not need decoding. (Bug#18982)
+ * Makefile.in (gl-stamp): Generate globals.h through the use of
+ move-if-change.
+ (globals.h): Replace with empty command.
- * w32heap.c (allocate_heap): Set the lower limit of heap at 8MB.
- (Bug#18995)
+2015-01-31 Eli Zaretskii <eliz@gnu.org>
-2014-11-09 Jan Djärv <jan.h.d@swipnet.se>
+ * keyboard.c (kbd_buffer_store_event_hold): Ignore FOCUS_OUT_EVENT
+ and ICONIFY_EVENT for the purposes of breaking while-no-input
+ loops. (Bug#19547)
- * nsterm.h (EmacsScroller): judge returns bool.
+ * dired.c (read_dirent): Correct the "MSDOS hacks" hack: the
+ special code for errno = ENOENT or EACCES is needed for WINDOWSNT,
+ not for MSDOS.
- * nsterm.m (ns_set_vertical_scroll_bar): Release bar.
- (ns_judge_scroll_bars): Only set removed if judge returns true.
- (judge): Returns bool == condemned. Remove self from window.
- (setPosition:portion:whole:): Remove raise SIGIO (Bug#18757).
+2015-01-31 Paul Eggert <eggert@cs.ucla.edu>
-2014-11-08 Jan Djärv <jan.h.d@swipnet.se>
+ Simplify read_dirent's MSDOS hacks
+ * dired.c (read_dirent): Simplify by removing the need for the
+ DIR_ENTRY argument. All callers changed. This separates the
+ MS-DOS idiosyncrasies better from the rest of the code.
- * nsterm.m (init): Replace OSX 10.9 check with IMPL_COCOA.
- (run): Ditto. Only use non-system event loop if OSX version is
- exactly 10.9 (Bug#18993).
- (ns_set_vertical_scroll_bar): Don't call bar setPosition: unless
- needed (Bug#18757).
+2015-01-30 Eli Zaretskii <eliz@gnu.org>
-2014-11-07 Michael Albinus <michael.albinus@gmx.de>
+ * dired.c (read_dirent): Accept an additional argument
+ FIRST_ENTRY. If readdir fails with ENOENT or EACCES the first
+ time it is called, report the error as if it happened in
+ open_directory.
+ (directory_files_internal, file_name_completion): Adjust callers
+ or read_dirent.
- * callproc.c (encode_current_directory): Support handling of file
- names prepended by "/:". (Bug#18891)
+2015-01-30 Paul Eggert <eggert@cs.ucla.edu>
-2014-11-06 Alan Mackenzie <acm@muc.de>
+ Refactor calls to opendir for simplicity
+ * dired.c (open_directory): Accept Lisp_Object, not char *, for
+ dirname. Signal an error if the open fails. All callers changed.
- * syntax.c (back_comment): Fix off-by-one error (bug#18022).
+2015-01-29 Paul Eggert <eggert@cs.ucla.edu>
-2014-11-06 Dima Kogan <dima@secretsauce.net>
+ Report readdir failures
+ Previously, on non-MS-Windows platforms the code treated most
+ readdir failures as EOF. This was incorrect, e.g., when readdir
+ fails with errno == EOVERFLOW. Signal an error instead.
+ * dired.c (read_dirent):
+ New function, which signals an error when readdir fails.
+ (directory_files_internal, file_name_completion): Use it.
- * xgselect.c (xg_select): Use g_main_context_acquire (bug#18861).
+2015-01-29 Eli Zaretskii <eliz@gnu.org>
-2014-11-05 Michael Albinus <michael.albinus@gmx.de>
+ Use bool for boolean in w32menu.c, w32font.c, w32uniscribe.c.
+ * w32uniscribe.c (uniscribe_list, uniscribe_match): Use bool where
+ appropriate.
- * dired.c (Ffile_attributes): Return Qnil, if Fexpand_file_name
- raises an error. (Bug#18891)
+ * w32font.c (struct font_callback_data, w32font_list_internal)
+ (w32font_driver, w32font_match_internal): Use bool where appropriate.
-2014-11-03 Eli Zaretskii <eliz@gnu.org>
+ * w32menu.c (x_activate_menubar, set_frame_menubar)
+ (w32_dialog_show, initialize_frame_menubar, w32_menu_show)
+ (is_simple_dialog): Use bool where appropriate.
- * xdisp.c (Fdump_glyph_matrix, Fdump_frame_glyph_matrix): Doc fix.
- (Fdump_frame_glyph_matrix): Don't segfault if invoked on a GUI
- frame; instead, print an error message.
+2015-01-28 Paul Eggert <eggert@cs.ucla.edu>
-2014-11-03 Jan Djärv <jan.h.d@swipnet.se>
+ Use bool, not int, to track face changes
+ * xfaces.c (face_change): Rename from face_change_count, and
+ change from int to bool. The var is now true (instead of nonzero)
+ if attributes have changed; this is simpler. All uses changed.
+ (Bug#19698)
- * nsfns.m (ns_set_doc_edited): Check for FRAME_NS (Bug#18925).
+2015-01-28 Eli Zaretskii <eliz@gnu.org>
-2014-10-31 Jan Djärv <jan.h.d@swipnet.se>
+ * dired.c (directory_files_internal, file_name_completion)
+ [WINDOWSNT]: Signal an error when errno is set non-zero by
+ 'readdir', regardless of its value.
- * macfont.m (macfont_glyph_extents): Turn off syntetic bold
- if force_integral_p (i.e. no antialias).
- (macfont_draw): Check ns_antialias_text, also turn off syntetic
- bold if no antialias (Bug#18876).
+ * w32.c (sys_readdir): Set errno to ENOENT when the directory
+ doesn't exist and to EACCES when it's not accessible to the
+ current user. Set errno to zero when FindNextFile exhausts the
+ directory, so that callers don't interpret that as an error and
+ don't signal a file-error.
+ (open_unc_volume): Set errno to ENOENT if WNetOpenEnum fails.
- * emacs.c (main): Don't chdir to $HOME on Cocoa if --chdir
- was given (Bug#18846).
+ * dired.c (directory_files_internal) [WINDOWSNT]: If readdir
+ returns NULL and errno is ENOTDIR, behave as if opendir failed to
+ open the directory. (Bug#19701)
-2014-10-30 Jan Djärv <jan.h.d@swipnet.se>
+ * w32.c (sys_readdir): If FindFirstFile fails because the
+ directory doesn't exist, set errno to ENOTDIR.
- * nsterm.h (ns_set_doc_edited): Declare taking no args.
+2015-01-28 Jan Djärv <jan.h.d@swipnet.se>
- * nsfns.m (ns_set_doc_edited): Do all logic (check frames) here
- instead of in xdisp.c, function now takes void. (Bug#18884).
+ * nsterm.m (drawRect:): Add block/unblock_input (Bug#19660).
- * xdisp.c (prepare_menu_bars): Remove HAVE_NS code.
- (redisplay_internal): Call ns_set_doc_edited if HAVE_NS (Bug#18884).
+2015-01-28 Paul Eggert <eggert@cs.ucla.edu>
- * nsterm.h (EmacsScroller): Replace Lisp_Object win with
- struct window* (Bug#18889).
- Remove getMouseMotionPart.
- (ns_output): Make icon_top/left int.
+ Fix coding.c subscript error
+ * coding.c (CODING_ISO_INVOKED_CHARSET):
+ Avoid undefined behavior if CODING_ISO_INVOCATION returns negative.
- * nsfns.m (x_icon): icon_top/left is int.
+2015-01-28 Eli Zaretskii <eliz@gnu.org>
- * nsterm.m (ns_mouse_position): Remove unused code.
- (initFrame:window:, dealloc): Use window instead of win.
- (getMouseMotionPart:window:x:y:): Remove, unused.
- (sendScrollEventAtLoc:fromEvent:): Make Lisp_Object win from window.
+ * xdisp.c (produce_image_glyph): Fix display of images in R2L
+ screen lines: prepend the new glyph to the ones already there
+ instead of appending it.
-2014-10-30 Samuel Bronson <naesten@gmail.com>
+ * w32fns.c (w32_set_title_bar_text): New function, including
+ support for titles with non-ASCII characters outside of the
+ current system codepage.
+ (x_set_name, x_set_title): Use it. (Bug#19590)
- * unexmacosx.c (copy_data_segment): Port to GCC 4.6+ (Bug#9927).
+ * indent.c (Fvertical_motion): Return zero if we started from ZV
+ and there's an overlay after-string there. (Bug#19553)
-2014-10-28 Eli Zaretskii <eliz@gnu.org>
+ * emacs.c (usage_message): Fix the description of the -nl switch.
+ (Bug#19542)
- * fileio.c (Fexpand_file_name): Use make_unibyte_string, not
- build_string, when importing a home directory. (Bug#18873)
+ * xdisp.c (move_it_to, try_cursor_movement): Don't use the window
+ end information if the window_end_valid flag is unset.
+ (try_window_id): If the call to display_line invalidated the
+ window end information, give up the try_window_id optimization.
+ (Bug#19511)
-2014-10-26 Eli Zaretskii <eliz@gnu.org>
+ * w32fns.c (Fx_server_version, Fx_server_vendor): Doc fix.
+ * xfns.c (Fx_server_version, Fx_server_vendor): Doc fix.
- * dispnew.c (buffer_posn_from_coords):
+ * emacs.c (syms_of_emacs) <system-configuration>: Doc fix. (Bug#19502)
+
+2015-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * lisp.mk (lisp): Add cl-preloaded.
+
+2015-01-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use bool for boolean in xfaces.c
+ * dispextern.h: Adjust to signature changes.
+ * font.c (font_at, font_range):
+ * fontset.c (Finternal_char_font):
+ * fringe.c (draw_fringe_bitmap_1):
+ * xdisp.c (handle_face_prop, face_before_or_after_it_pos)
+ (get_next_display_element, highlight_trailing_whitespace)
+ (display_string, calc_line_height_property)
+ (note_mode_line_or_margin_highlight, note_mouse_highlight):
+ * xfaces.c (tty_suppress_bold_inverse_default_colors_p)
+ (menu_face_changed_default, recompute_basic_faces)
+ (Fbitmap_spec_p, parse_rgb_list, tty_lookup_color)
+ (tty_defined_color, defined_color, face_color_gray_p)
+ (face_color_supported_p, load_color2, load_face_colors)
+ (Fx_list_fonts, LFACEP, push_named_merge_point)
+ (resolve_face_name, lface_from_face_name_no_resolve)
+ (lface_from_face_name, get_lface_attributes_no_remap)
+ (get_lface_attributes, lface_fully_specified_p)
+ (set_lface_from_font, merge_face_vectors, merge_named_face)
+ (merge_face_ref, Finternal_make_lisp_face)
+ (Finternal_lisp_face_p, Finternal_copy_lisp_face)
+ (Finternal_set_lisp_face_attribute)
+ (update_face_from_frame_parameter, set_font_frame_param)
+ (face_boolean_x_resource_value)
+ (Finternal_set_lisp_face_attribute_from_resource)
+ (x_update_menu_appearance, Finternal_get_lisp_face_attribute)
+ (Finternal_merge_in_global_face, Fface_font, face_attr_equal_p)
+ (lface_equal_p, Finternal_lisp_face_equal_p)
+ (Finternal_lisp_face_empty_p, lface_same_font_attributes_p)
+ (Fcolor_distance, lookup_named_face, lookup_basic_face)
+ (lookup_derived_face, Fface_attributes_as_vector)
+ (x_supports_face_attributes_p, tty_supports_face_attributes_p)
+ (Fdisplay_supports_face_attributes_p, realize_basic_faces)
+ (realize_default_face, realize_named_face)
+ (realize_non_ascii_face, realize_x_face, map_tty_color)
+ (realize_tty_face, compute_char_face, face_at_buffer_position)
+ (face_for_overlay_string, face_at_string_position):
+ Use bool for boolean.
+ * xfaces.c (set_lface_from_font):
+ Return void, since callers never use the result.
+
+2015-01-26 Andreas Schwab <schwab@linux-m68k.org>
+
+ * image.c (lookup_pixel_color): Reorder conditions that are
+ written backwards.
+ (x_to_xcolors): Likewise.
+ (x_detect_edges): Likewise.
+ (png_load_body): Likewise.
+ (gif_close): Likewise.
+ (gif_load): Likewise.
+
+2015-01-25 Eli Zaretskii <eliz@gnu.org>
+
+ Use bool for boolean in w32term.c
+ * w32term.c (x_update_window_begin, x_update_window_end)
+ (x_update_end, x_after_update_window_line)
+ (x_set_glyph_string_gc, x_draw_glyph_string_background)
+ (x_draw_glyph_string_foreground)
+ (x_draw_composite_glyph_string_foreground)
+ (x_draw_glyphless_glyph_string_foreground)
+ (x_draw_image_glyph_string, x_draw_glyph_string)
+ (x_draw_stretch_glyph_string, note_mouse_movement)
+ (w32_mouse_position, x_scroll_bar_report_motion)
+ (x_horizontal_scroll_bar_report_motion, w32_read_socket)
+ (w32_set_vertical_scroll_bar, w32_set_horizontal_scroll_bar)
+ (w32_draw_window_cursor, x_new_font, x_set_offset)
+ (x_set_window_size, x_make_frame_invisible, x_iconify_frame):
+ Use bool where appropriate.
+
+ Use bool for boolean in w32fns.c
+ * w32fns.c (w32_defined_color, x_decode_color)
+ (Fxw_color_defined_p, Fxw_color_values, x_set_icon_type)
+ (x_set_menu_bar_lines, x_change_tool_bar_height)
+ (x_set_internal_border_width, x_explicitly_set_name)
+ (x_implicitly_set_name, Fx_create_frame, w32_window)
+ (x_create_tip_frame, Fx_show_tip): Use bool where appropriate.
+
+2015-01-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use bool for boolean in xfns.c
+ * xfaces.c (x_update_menu_appearance):
+ * xfns.c (x_real_positions, x_defined_color, x_decode_color)
+ (xg_set_icon, xg_set_icon_from_xpm_data, x_set_cursor_color)
+ (x_set_icon_type, x_set_icon_name, x_set_menu_bar_lines)
+ (x_change_tool_bar_height, x_set_internal_border_width)
+ (x_encode_text, x_set_name_internal, x_explicitly_set_name)
+ (x_implicitly_set_name, x_default_scroll_bar_color_parameter)
+ (hack_wm_protocols, xic_create_fontsetname, xic_free_xfontset)
+ (x_window, x_icon, Fx_wm_set_size_hint, Fx_create_frame)
+ (Fxw_color_defined_p, Fxw_color_values, x_create_tip_frame)
+ (Fx_show_tip, clean_up_file_dialog, Fx_file_dialog)
+ (clean_up_dialog, syms_of_xfns):
+ * xterm.h (xg_set_icon, xg_set_icon_from_xpm_data)
+ (xic_create_fontsetname):
+ Use bool for boolean.
+ * xfns.c: Include bitmaps/gray.xbm unconditionally.
+
+ Count MANY function args more reliably
+ * alloc.c (Fgc_status, purecopy, unbind_to, garbage_collect_1):
+ * buffer.c (Fbuffer_list, Fkill_buffer):
+ * callint.c (read_file_name, Fcall_interactively):
+ * charset.c (Fset_charset_priority, syms_of_charset):
+ * chartab.c (uniprop_encode_value_numeric):
+ * coding.c (syms_of_coding):
+ * composite.c (syms_of_composite):
+ * data.c (wrong_range):
+ * dbusbind.c (syms_of_dbusbind):
+ * dired.c (file_attributes):
+ * editfns.c (Fdecode_time, update_buffer_properties, format2):
+ * eval.c (run_hook_with_args_2, apply1, call1, call2, call3)
+ (call4, call5, call6, call7):
+ * fileio.c (Finsert_file_contents, choose_write_coding_system)
+ (Fcar_less_than_car, build_annotations, auto_save_error):
+ * filelock.c (get_boot_time):
+ * fns.c (internal_equal, nconc2, Fyes_or_no_p, Fwidget_apply):
+ (maybe_resize_hash_table, secure_hash):
+ * font.c (font_style_to_value, font_open_by_name, Flist_fonts):
+ * fontset.c (fontset_add, Fset_fontset_font):
+ * ftfont.c (ftfont_lookup_cache):
+ * gtkutil.c (xg_get_font):
+ * insdel.c (signal_before_change, signal_after_change):
+ * keymap.c (append_key):
+ * lread.c (load_warn_old_style_backquotes, Fload, init_lread):
+ * minibuf.c (Fread_buffer):
+ * print.c (print_preprocess):
+ * process.c (Fformat_network_address, Fmake_network_process)
+ (server_accept_connection):
+ * sound.c (Fplay_sound_internal):
+ * term.c (Fsuspend_tty, Fresume_tty):
+ * window.c (window_list):
+ * xdisp.c (run_redisplay_end_trigger_hook, add_to_log)
+ (message_with_string):
+ * xfaces.c (Fx_list_fonts):
+ * xfont.c (syms_of_xfont):
+ * xselect.c (x_handle_selection_request)
+ (x_handle_selection_clear, x_clear_frame_selections)
+ (x_clipboard_manager_error_1):
+ Prefer CALLMANY and CALLN to counting args by hand.
+ * doc.c (reread_doc_file): Remove unused code.
+ * fns.c (concat2, concat3): Redo to avoid need for local-var vector.
+ (cmpfn_user_defined, hashfn_user_defined, Fmaphash):
+ Prefer call1 and call2 to Ffuncall.
+ * keyboard.c (safe_run_hook_funcall, safe_run_hooks):
+ Use struct literal rather than a local var, for simplicity.
+ * keymap.c (where_is_internal): Use NULL rather than a pointer
+ to unused args.
+ * lisp.h (CALLMANY, CALLN): New macros.
+ * sound.c (Fplay_sound_internal): Coalesce duplicate code.
+ Fixes: bug#19634
+
+ Use gnustep-config if available
+ * emacs.c [NS_IMPL_GNUSTEP]: Don't include <GNUstepBase/GSConfig.h>.
+ It doesn't appear to be needed, and the inclusion breaks on
+ Ubuntu 14.10 when 'configure' uses 'gnustep-config'.
+
+2015-01-22 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (init_iterator): Restore a comment lost in transition.
+
+2015-01-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use bool for boolean in xfont.c, xftfont.c, xgselect.c
+ * xfont.c (xfont_driver, xfont_chars_supported)
+ (xfont_text_extents):
+ * xftfont.c (xftfont_get_colors, xftfont_open)
+ (xftfont_prepare_face, xftfont_done_face)
+ (xftfont_cached_font_ok):
+ * xgselect.c (xg_select):
+ Use bool for boolean.
+
+ Don't downcase system diagnostics' first letters
+ * fileio.c (report_file_errno): Don't downcase, and simplify.
+ Fixes: bug#19642
+
+ Isolate NIL_IS_ZERO-assuming code better
+ Suggested by Stefan Monnier in:
+ http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg00588.html
+ * alloc.c (allocate_pseudovector):
+ Use memclear, not memsetnil, to remove a 'verify'.
+ * callint.c (Fcall_interactively):
+ * dispnew.c (realloc_glyph_pool):
+ * xdisp.c (init_iterator):
+ Use memclear, not memset, to remove a 'verify'.
+ * lisp.h (memclear): Rename from memsetnil, and take a byte
+ count rather than a word count. All callers changed.
+
+2015-01-20 Paul Eggert <eggert@cs.ucla.edu>
+
+ Undo port to hypothetical nonzero Qnil case
+ This mostly undoes the previous change in this area. See:
+ http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg00570.html
+ * alloc.c (allocate_pseudovector):
+ * callint.c (Fcall_interactively):
+ * dispnew.c (realloc_glyph_pool):
+ * fringe.c (init_fringe):
+ * lisp.h (memsetnil):
+ * xdisp.c (init_iterator):
+ Simplify by assuming that Qnil is zero, but verify the assumption.
+ * lisp.h (NIL_IS_ZERO): Revert back to this symbol, removing
+ NIL_IS_NONZERO. All uses changed.
+
+2015-01-20 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (EV_TRAILER2): Set Vinhibit_quit to Qt (Bug#19531).
+
+2015-01-20 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Prefer xlispstrdup to avoid dumb calls to strlen.
+ * nsfont.m (ns_get_family):
+ * nsterm.m (ns_term_init):
+ * w32fns.c (w32_window):
+ * xfns.c (x_window, Fx_select_font): Use xlispstrdup.
+
+2015-01-20 Paul Eggert <eggert@cs.ucla.edu>
+
+ Correct an old fix for GTK font selection
+ * gtkutil.c (xg_get_font): Fix off-by-2 typo.
+ Fixes: bug#3228
+
+ Fix minor bugs with printing null bytes
+ * minibuf.c (read_minibuf_noninteractive):
+ * xdisp.c (Ftrace_to_stderr) [GLYPH_DEBUG]:
+ Work even if the Lisp string contains a null byte.
+
+ Port to hypothetical case where Qnil is nonzero
+ * alloc.c (allocate_pseudovector):
+ * callint.c (Fcall_interactively):
+ * coding.c (syms_of_coding):
+ * dispnew.c (realloc_glyph_pool):
+ * fringe.c (init_fringe):
+ * lisp.h (memsetnil):
+ * xdisp.c (init_iterator):
+ Port to the currently-hypothetical case where Qnil is nonzero.
+ * dispnew.c (adjust_glyph_matrix): Remove unnecessary verification,
+ as there are no Lisp_Object values in the data here.
+ * lisp.h (NIL_IS_NONZERO): New symbol, replacing NIL_IS_ZERO.
+ All uses changed. Define only if not already defined, so that one
+ can debug with -DNIL_IS_NONZERO.
+ * xdisp.c (init_iterator): Remove unnecessary initializations to 0.
+
+2015-01-19 Eli Zaretskii <eliz@gnu.org>
+
+ * dispnew.c (adjust_glyph_matrix, realloc_glyph_pool): Verify that
+ Qnil is represented as zero, before using that to initialize parts
+ of the glyph structure.
+
+ * xdisp.c (init_iterator): Verify that Qnil is represented as
+ zero, before using that to initialize parts of the iterator
+ structure.
+
+2015-01-19 Paul Eggert <eggert@cs.ucla.edu>
+
+ Prefer memset to repeatedly assigning Qnil
+ * alloc.c (allocate_pseudovector): Catch more bogus values.
+ * alloc.c (allocate_pseudovector):
+ * callint.c (Fcall_interactively):
+ * coding.c (syms_of_coding):
+ * fringe.c (init_fringe):
+ Verify that Qnil == 0.
+ * callint.c (Fcall_interactively):
+ * eval.c (Fapply, Ffuncall):
+ * fns.c (mapcar1, larger_vector):
+ * font.c (font_expand_wildcards):
+ * fringe.c (init_fringe):
+ Prefer memset to assigning zeros by hand.
+ * callint.c (Fcall_interactively):
+ Remove duplicate assignment of Qnil to args[i].
+ * coding.c (syms_of_coding):
+ Prefer LISP_INITIALLY_ZERO to assigning zeros by hand.
+ * fileio.c (Ffile_selinux_context):
+ Rewrite to avoid need for Lisp_Object array.
+ * lisp.h (XLI_BUILTIN_LISPSYM): New macro.
+ (DEFINE_LISP_SYMBOL_END): Use it.
+ (NIL_IS_ZERO): New constant.
+ (memsetnil): New function.
+
+2015-01-16 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Tune pseudovector allocation assuming Qnil == 0.
+ * alloc.c (allocate_pseudovector): Use memset for both
+ Lisp_Objects and regular slots. Add zerolen arg.
+ * lisp.h (allocate_pseudovector): Adjust prototype.
+ (ALLOCATE_PSEUDOVECTOR): Adjust user.
+ (ALLOCATE_ZEROED_PSEUDOVECTOR): New macro.
+ (allocate_hash_table, allocate_window, allocate_frame)
+ (allocate_process, allocate_terminal): Remove prototypes.
+ * fns.c (allocate_hash_table): Now static here.
+ * frame.c (allocate_frame):
+ * process.c (allocate_process):
+ * terminal.c (allocate_terminal):
+ * window.c (allocate_window): Now static here.
+ Use ALLOCATE_ZEROED_PSEUDOVECTOR. Add comment.
+
+ * lisp.h (XTERMINAL): Add eassert.
+ * process.c (make_lisp_proc): Now static here.
+
+ Prefer INLINE functions in font.h to match style used in lisp.h.
+ * font.h (FONTP, FONT_SPEC_P, FONT_ENTITY_P, FONT_OBJECT_P)
+ (CHECK_FONT, CHECK_FONT_SPEC, CHECK_FONT_ENTITY, CHECK_FONT_OBJECT)
+ (XFONT_SPEC, XFONT_ENTITY, XFONT_OBJECT, CHECK_FONT_GET_OBJECT):
+ Now functions.
+ * font.c (Ffont_otf_alternates, Fquery_font, Ffont_get_glyphs):
+ * ftfont.c (ftfont_shape):
+ * macfont.m (macfont_shape):
+ * w32uniscribe.c (uniscribe_shape):
+ * xftfont.c (xftfont_shape): Adjust CHECK_FONT_GET_OBJECT users.
+
+2015-01-16 Paul Eggert <eggert@cs.ucla.edu>
+
+ Give up on -Wsuggest-attribute=const
+ * decompress.c (Fzlib_available_p):
+ * gnutls.c (Fgnutls_available_p):
+ * gtkutil.h (xg_uses_old_file_dialog):
+ * xdisp.c (Ftool_bar_height):
+ * xmenu.c (popup_activated):
+ No longer const, since it's not const on at lest some
+ configurations, and we shouldn't lie to the compiler.
+
+2015-01-15 Eli Zaretskii <eliz@gnu.org>
+
+ * fileio.c: Include binary-io.h.
+ (Fset_binary_mode): New function.
+ (syms_of_fileio): Defsubr it.
+ (syms_of_fileio) <Qstdin, Qstdout, Qstderr>: DEFSYM them.
+
+2015-01-15 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * gnutls.c (init_gnutls_functions): Import gnutls_x509_crt_check_issuer.
+ (Fgnutls_peer_status): Use it to set the :self-signed flag.
+ Rename the previous :self-signed to :unknown-ca. (Bug#19404)
+ (Fgnutls_peer_status_warning_describe): Explain :unknown-ca flag.
+
+2015-01-14 Eli Zaretskii <eliz@gnu.org>
+
+ * w32fns.c (w32_wnd_proc): Ignore MENUITEMINFO's dwItemData data
+ when FLAGS indicate the item is not highlighted. (Bug#19596)
+
+2015-01-14 Martin Rudalics <rudalics@gmx.at>
+
+ * xmenu.c (update_frame_menubar): Remove garbaged code.
+
+2015-01-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ remove_slash_colon need not be inline
+ * process.c, process.h (remove_slash_colon): No longer inline.
+ This saves text bytes without hurting runtime performance.
+
+2015-01-14 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Avoid extra multibyteness check in ENCODE_FILE users.
+ * callproc.c (encode_current_directory, Fcall_process, call_process):
+ * dired.c (directory_files_internal, file_name_completion):
+ Do not check for STRING_MULTIBYTE because encode_file_name
+ is a no-op for unibyte strings.
+
+ * process.h (remove_slash_colon): New function.
+ * callproc.c (encode_current_directory, call_process):
+ * process.c (Fstart_process): Use it.
+
+ Consistently handle time zone specification.
+ * editfns.c (decode_time_zone): New function, refactored out from ...
+ (Fencode_time): ... adjusted user.
+ (Fset_time_zone_rule): Use decode_time_zone.
+
+ * editfns.c (make_buffer_string_both): If requested range intersects
+ the gap, don't move the latter but copy in two regions, thus avoiding
+ unnecessary relocation of buffer data.
+
+2015-01-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use bool for boolean in xmenu.c, xml.c
+ * xmenu.c (x_menu_set_in_use, popup_get_selection)
+ (Fx_menu_bar_open_internal, popup_widget_loop)
+ (x_activate_menubar, xg_crazy_callback_abort)
+ (update_frame_menubar, set_frame_menubar)
+ (initialize_frame_menubar, free_frame_menubar)
+ (create_and_show_popup_menu, x_menu_show)
+ (create_and_show_dialog, x_dialog_show):
+ * xml.c (libxml2_loaded_p, init_libxml2_functions, parse_region)
+ (Flibxml_parse_html_region, Flibxml_parse_xml_region):
+ * xrdb.c (main) [TESTRM]:
+ * xsettings.c (init_gsettings):
+ * xterm.c (XFillRectangle, xg_scroll_callback)
+ (xg_end_scroll_callback):
+ * xterm.h (x_menu_set_in_use) [USE_GTK || USE_MOTIF]:
+ Use bool for boolean.
+ * xmenu.c (TRUE): Remove; no longer used.
+ (show_help_event): Remove long-unused code.
+ (set_frame_menubar): Remove "#if 1" and corresponding "#endif" lines.
+
+2015-01-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ Don't say Fnext_read_file_uses_dialog_p is const
+ It's const only if a windowing system is not used; don't say it's
+ const otherwise. See:
+ http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg00310.html
+ * fileio.c (next_read_file_uses_dialog_p): Remove.
+ Move guts back to ...
+ (Fnext_read_file_uses_dialog_p): ... here.
+ Don't declare as const, as make-docfile.c now has a special case
+ for this function. This is an ugly hack, but it's better than
+ lying to the compiler.
+
+ Remove now-unnecessary forward XTYPE decl
+ * lisp.h (XTYPE): Remove forward declaration. The recent merge
+ from emacs-24 fixed the problem in a better way, by moving XPNTR's
+ definition to after XTYPE's.
+
+2015-01-13 Eli Zaretskii <eliz@gnu.org>
+
+ Fix problems with 32-bit wide-int build exposed by MinGW.
+ * lisp.h (XPNTR): Move definition to after XTYPE, to avoid
+ compilation error in an unoptimized build when !USE_LSB_TAG.
+
+ * w32heap.c (DUMPED_HEAP_SIZE): For 32-bit wide-int build, use the
+ same larger value as for the 64-bit build.
+
+ * w32term.h (SCROLL_BAR_PACK): Cast the result to UINT_PTR to
+ avoid compiler warnings.
+
+ * w32proc.c (Fw32_get_codepage_charset, Fw32_set_keyboard_layout):
+ Avoid compiler warnings about cast from integer to pointer of
+ different size.
+
+ * w32menu.c (menubar_selection_callback, w32_menu_show): Cast to
+ UINT_PTR instead of EMACS_INT, to avoid compiler warnings about
+ casting from integer to pointer of different size.
+ (add_menu_item): Pass the help-echo string as a pointer to
+ Lisp_String, not as a Lisp_Object.
+ (w32_menu_display_help): Use make_lisp_ptr to reconstruct a Lisp
+ string object from its C pointer.
+
+ * w32fns.c (w32_msg_pump) <WM_EMACS_UNREGISTER_HOT_KEY>: Use
+ make_lisp_ptr instead of XIL, to reconstruct a Lisp_Cons from its
+ C pointer.
+ <WM_EMACS_TOGGLE_LOCK_KEY>: msg.lparam is now a C integer.
+ (Fx_create_frame): Type-cast the result of XFASTINT to avoild
+ compiler warnings about size differences.
+ (Fw32_unregister_hot_key): Pass the tail of w32_grabbed_keys as a
+ pointer to a Lisp_Cons struct, not as a disguised EMACS_INT.
+ (Fw32_toggle_lock_key): Pass the new state of the key as a C
+ integer; use -1 for nil. Doc fix.
+
+ * .gdbinit (xgetsym): New subroutine.
+ (xsymname, xsymbol): Use it.
+ (xprintsym): No need to call xgetptr.
+
+2015-01-13 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.c (adjust_frame_size): Make sure new numbers of
+ lines/columns get installed after font size change (Bug#19575).
+
+2015-01-13 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Add DEFUN attributes.
+ * callint.c (Finteractive):
+ * character.c (Fcharacterp, Fmax_char):
+ * data.c (Feq, Fnull, Fconsp, Fatom, Flistp, Fnlistp, Fsymbolp)
+ (Fstringp, Fchar_or_string_p, Fintegerp, Fnatnump, Fnumberp)
+ (Ffloatp, Fbyteorder):
+ * decompress.c (Fzlib_available_p):
+ * fns.c (Fidentity):
+ * frame.c (Fframe_windows_min_size):
+ * gnutls.c (Fgnutls_error_p, Fgnutls_available_p):
+ * window.c (Fwindow__sanitize_window_sizes):
+ * xdisp.c (Ftool_bar_height):
+ * xfaces.c (Fface_attribute_relative_p): Add const attribute.
+ * emacs.c (Fkill_emacs):
+ * eval.c (Fthrow):
+ * keyboard.c (Ftop_level, Fexit_recursive_edit)
+ (Fabor_recursive_edit): Add noreturn attribute.
+
+ * search.c (fast_string_match_internal): New function,
+ consolidated from...
+ (fast_string_match, fast_string_match_ignore_case): ...functions
+ which are...
+ * lisp.h (fast_string_match, fast_string_match_ignore_case):
+ inlined from here now.
+ (fast_string_match_internal): Add prototype.
+ * dired.c (file_name_completion): Use fast_string_match_internal.
+
+ * fileio.c (next_read_file_uses_dialog_p): New workaround ...
+ (Fnext_read_file_uses_dialog_p): ... called from here to avoid
+ ATTRIBUTE_CONST dependency from #ifdefs. For details, see
+ http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg00289.html.
+
+2015-01-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port to 32-bit MingGW --with-wide-int
+ Problem reported by Eli Zaretskii in:
+ http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg00265.html
+ * lisp.h (struct Lisp_Sub_Char_Table): Check that offset matches
+ what we think it is, rather than checking only its alignment (and
+ doing so incorrectly on MinGW).
+
+2015-01-12 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * fileio.c (Ffile_name_as_directory, Fdirectory_file_name):
+ Remove dead NILP check.
+ * image.c (Flookup_image): Use regular format for docstring.
+ * keyboard.c (apply_modifiers_uncached): Use stpcpy.
+
+2015-01-12 Martin Rudalics <rudalics@gmx.at>
+
+ * dispnew.c (change_frame_size_1): Pass Qchange_frame_size to
+ adjust_frame_size.
+ * frame.c (frame_default_tool_bar_height): New variable.
+ (adjust_frame_size): Possibly add requested adjustment to
+ Vframe_adjust_size_history.
+ (make_frame): Initialize tool_bar_redisplayed_once slot.
+ (Fset_frame_height, Fset_frame_width, Fset_frame_size): Clarify
+ doc-string. Call adjust_frame_size unconditionally (the frame's
+ text size may remain unaltered but the pixel size may change).
+ (x_figure_window_size): If frame_default_tool_bar_height was
+ set, use it instead of calculating the tool bar height from
+ DEFAULT_TOOL_BAR_IMAGE_HEIGHT. Don't set
+ Vframe_initial_frame_tool_bar_height.
+ (Qchange_frame_size, Qxg_frame_set_char_size)
+ (Qset_window_configuration, Qx_create_frame_1)
+ (Qx_create_frame_2): New symbols.
+ (Vframe_initial_frame_tool_bar_height): Remove.
+ (Vframe_adjust_size_history): New history variable for debugging
+ frame size adjustments.
+ * frame.h (struct frame): New boolean slot
+ tool_bar_redisplayed_once.
+ (frame_default_tool_bar_height): Extern.
+ * gtkutil.c (xg_frame_set_char_size): Pass Qxg_frame_set_char_size
+ to adjust_frame_size.
+ * nsfns.m (Fx_create_frame): Pass Pass Qx_create_frame_1 and
+ Qx_create_frame_2 to adjust_frame_size.
+ * w32fns.c (x_change_tool_bar_height): Call adjust_frame_size with
+ inhibit 1 when we have not redisplayed the tool bar yet.
+ (Fx_create_frame): Pass Pass Qx_create_frame_1 and
+ Qx_create_frame_2 to adjust_frame_size.
+ * w32menu.c (set_frame_menubar): Simplify adjust_frame_size
+ call.
+ * window.c (Fset_window_configuration):
+ Pass Qset_window_configuration to adjust_frame_size.
+ * xdisp.c (redisplay_tool_bar): Assign new height to
+ frame_default_tool_bar_height.
+ (redisplay_internal): If we haven't redisplayed this frame's
+ tool bar, call redisplay_tool_bar early so we can adjust the
+ frame size accordingly.
+ * xfns.c (x_change_tool_bar_height): Call adjust_frame_size with
+ inhibit 1 when we have not redisplayed the tool bar yet.
+ (Fx_create_frame): Pass Pass Qx_create_frame_1 and
+ Qx_create_frame_2 to adjust_frame_size.
+
+2015-01-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ Have 'make' output better GEN names
+ * Makefile.in (gl-stamp, globals.h): Simplify by putting the new
+ contents of globals.h into gl-stamp. This lets us use AM_V_GEN
+ more naturally so that 'make' can output more-accurate names.
+
+2015-01-11 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * buffer.c (init_buffer_once): Initialize buffer_local_flags before
+ calling reset_buffer_local_variables, and make sure we initialize
+ it completely.
+
+2015-01-11 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * coding.c (Fcoding_system_plist): Use common style for docstring.
+
+2015-01-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port to MSB hosts without optimization
+ E.g., when configuring --with-wide-int CFLAGS='-O0' on x86,
+ the inline function XTYPE needs to be declared before being used.
+ * lisp.h (XTYPE): New forward declaration.
+
+2015-01-10 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port to 32-bit --with-wide-int
+ Prefer symbol indexes to struct Lisp_Symbol * casted and then
+ widened, as the latter had trouble with GCC on Fedora 21 when
+ configured --with-wide-int and when used in static initializers.
+ * alloc.c (garbage_collect_1, which_symbols):
+ * lread.c (init_obarray):
+ Prefer builtin_lisp_symbol when it can be used.
+ * dispextern.h (struct image_type.type):
+ * font.c (font_property_table.key):
+ * frame.c (struct frame_parm_table.sym):
+ * keyboard.c (scroll_bar_parts, struct event_head):
+ * xdisp.c (struct props.name):
+ Use the index of a builtin symbol rather than its address.
+ All uses changed.
+ * lisp.h (TAG_SYMPTR, XSYMBOL_INIT): Remove, replacing with ...
+ (TAG_SYMOFFSET, SYMBOL_INDEX): ... new macros that deal with
+ symbol indexes rather than pointers, and which work better on MSB
+ hosts because they shift right before tagging. All uses changed.
+ (DEFINE_LISP_SYMBOL_BEGIN, DEFINE_LISP_SYMBOL_END):
+ No longer noops on wide-int hosts, since they work now.
+ (builtin_lisp_symbol): New function.
+
+ Port to HAVE_FREETYPE && !HAVE_XFT
+ * dispextern.h (struct face.extra) [HAVE_FREETYPE && !HAVE_XFT]:
+ * font.h (syms_of_xftfont) [HAVE_FREETYPE && !HAVE_XFT]:
+ Declare in this case too.
+
+2015-01-10 Eli Zaretskii <eliz@gnu.org>
+
+ * w32fns.c (Fw32_register_hot_key): Use XINT instead of XLI.
+
+ * w32notify.c (Fw32notify_add_watch, w32_get_watch_object):
+ Use make_pointer_integer instead of XIL.
+ (Fw32notify_rm_watch): Use XINTPTR instead of XLI.
+
+ * w32inevt.c (handle_file_notifications): Use make_pointer_integer
+ instead of XIL. Put a list of the descriptor, action, and file
+ name in event->arg, instead of spreading them between event->code
+ and event->arg.
+
+ * w32term.c (queue_notifications): Use make_pointer_integer
+ instead of XIL. Put a list of the descriptor, action, and file
+ name in event->arg, instead of spreading them between event->code
+ and event->arg.
+
+ * keyboard.c (kbd_buffer_get_event) [HAVE_W32NOTIFY]: Adjust Lisp
+ event creation to changes in w32term.c and w32inevt.c above.
+
+2015-01-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port Qnil==0 changes to 32-bit --with-wide-int
+ * lisp.h (lisp_h_XSYMBOL, XSYMBOL): Assume USE_LSB_TAG in the
+ macro-implemented version. For the non-USE_LSB_TAG case, supply
+ a new inline function that is the inverse of the new TAG_SYMPTR.
+ (lisp_h_XUNTAGBASE, XUNTAGBASE): Remove. All uses removed.
+ (TAG_SYMPTR) [!USE_LSB_TAG]: If the pointer subtraction yields a
+ negative number, don't allow sign bits to bleed into the encoded
+ value. Shift in zero bits instead.
+
+ Refactor pointer-to-integer conversion
+ * gfilenotify.c (monitor_to_lisp, lisp_to_monitor):
+ Rename and move to lisp.h. All uses changed.
+ * lisp.h (XINTPTR, make_pointer_integer): New inline functions,
+ which are renamed from gfilenotify.c's lisp_to_monitor and
+ monitor_to_lisp, and with more-generic void * signatures.
+
+2015-01-08 Eli Zaretskii <eliz@gnu.org>
+
+ * dispnew.c (buffer_posn_from_coords): Fix the value of the column
+ returned for right-to-left screen lines. (Before the change on
+ 2014-12-30, the incorrectly-computed X pixel coordinate concealed
+ this bug.)
+
+ * .gdbinit (xsymname): New subroutine.
+ (xprintsym, initial-tbreak): Use it to access the name of a symbol
+ in a way that doesn't cause GDB to barf when it tries to
+ dereference a NULL pointer.
+
+ * xdisp.c (next_element_from_c_string): Use Lisp integer zero as
+ the object.
+ (set_cursor_from_row, try_cursor_movement, dump_glyph)
+ (insert_left_trunc_glyphs, append_space_for_newline)
+ (extend_face_to_end_of_line, highlight_trailing_whitespace)
+ (find_row_edges, ROW_GLYPH_NEWLINE_P, Fmove_point_visually)
+ (Fbidi_resolved_levels, produce_special_glyphs)
+ (rows_from_pos_range, mouse_face_from_buffer_pos)
+ (note_mouse_highlight): Use nil as the object for glyphs inserted
+ by the display engine, and test with NILP instead of INTEGERP.
+ (Bug#19535)
+
+ * w32fns.c (Fx_show_tip): Use NILP to test for glyphs inserted by
+ the display engine.
+
+ * xfns.c (Fx_show_tip): Use NILP to test for glyphs inserted by
+ the display engine.
+
+ * dispextern.h (struct glyph, struct it): Update comments for the
+ OBJECT members.
+
+2015-01-08 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port new Lisp symbol init to x86 --with-wide-int
+ * lisp.h (DEFINE_LISP_SYMBOL_BEGIN, DEFINE_LISP_SYMBOL_END):
+ Define to empty on platforms where EMACS_INT_MAX != INTPTR_MAX, as
+ GCC (at least) does not allow a constant initializer to widen an
+ address constant.
+
+ * lisp.h (TAG_SYMPTR): Don't do arithmetic on NULL.
+ This is a followup to the "Port Qnil==0 XUNTAG to clang" patch.
+ Although clang doesn't need it, some other compiler might, and
+ it's easy enough to be safe.
+
+ * conf_post.h (ATTRIBUTE_ALLOC_SIZE): Port to clang 3.5.0.
+ Apparently clang removed support for the alloc_size attribute.
+
+ Port Qnil==0 XUNTAG to clang
+ clang has undefined behavior if the program subtracts an integer
+ from (char *) 0. Problem reported by YAMAMOTO Mitsuharu in:
+ http://lists.gnu.org/archive/html/emacs-devel/2015-01/msg00132.html
+ * lisp.h (lisp_h_XUNTAG) [USE_LSB_TAG]:
+ (XUNTAG) [!USE_LSB_TAG]: Port to clang 3.5.0.
+
+ Port GFileMonitor * hack to Qnil==0 platforms
+ Reported by Glenn Morris in: http://bugs.gnu.org/15880#112
+ * gfilenotify.c (monitor_to_lisp, lisp_to_monitor): New functions.
+ (dir_monitor_callback, Fgfile_add_watch, Fgfile_rm_watch): Use them.
+
+2015-01-06 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (x_set_window_size): Call updateFrameSize to get real
+ size instead of using widht/height. The frame may be constrained.
+
+2015-01-05 Paul Eggert <eggert@cs.ucla.edu>
+
+ * lisp.h (XSYMBOL): Parenthesize id in forward decl.
+ Needed when neither optimizing nor inlining.
+ Also, sort decls alphabetically.
+
+2015-01-05 Eli Zaretskii <eliz@gnu.org>
+
+ * w32proc.c, w32.h, w32fns.c, w32font.c, w32menu.c, w32notify.c:
+ * w32proc.c, w32select.c, w32term.c, w32uniscribe.c: Remove
+ declarations of Q* variables that represent symbols.
+
+2015-01-05 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use 0 for Qnil
+ Fixes Bug#15880.
+ If USE_LSB_TAG, arrange for the representation of Qnil to be zero so
+ that NILP (x) is equivalent to testing whether x is 0 at the
+ machine level. The overall effects of this and the previous patch
+ shrink the size of the text segment by 2.3% and speeds up
+ compilation of all the .elc files by about 0.5% on my platform,
+ which is Fedora 20 x86-64.
+ * lisp.h (lisp_h_XPNTR, lisp_h_XSYMBOL, lisp_h_XUNTAG)
+ (make_lisp_symbol) [USE_LSB_TAG]:
+ Symbols now tag the difference from lispsym, not the pointer.
+ (lisp_h_XUNTAGBASE, TAG_SYMPTR): New macros.
+ (Lisp_Int0, Lisp_Int1, Lisp_Symbol, Lisp_Misc, Lisp_String, Lisp_Cons):
+ Renumber so that Lisp_Symbol is 0, so that Qnil is zero.
+ (XSYMBOL): New forward decl.
+ (XUNTAGBASE): New function.
+ (XUNTAG): Use it.
+
+ Compute C decls for DEFSYMs automatically
+ Fixes Bug#15880.
+ This patch also makes Q constants (e.g., Qnil) constant addresses
+ from the C point of view.
+ * alloc.c, bidi.c, buffer.c, bytecode.c, callint.c, casefiddle.c:
+ * casetab.c, category.c, ccl.c, charset.c, chartab.c, cmds.c, coding.c:
+ * composite.c, data.c, dbusbind.c, decompress.c, dired.c, dispnew.c:
+ * doc.c, editfns.c, emacs.c, eval.c, fileio.c, fns.c, font.c, fontset.c:
+ * frame.c, fringe.c, ftfont.c, ftxfont.c, gfilenotify.c, gnutls.c:
+ * image.c, inotify.c, insdel.c, keyboard.c, keymap.c, lread.c:
+ * macfont.m, macros.c, minibuf.c, nsfns.m, nsfont.m, nsimage.m:
+ * nsmenu.m, nsselect.m, nsterm.m, print.c, process.c, profiler.c:
+ * search.c, sound.c, syntax.c, term.c, terminal.c, textprop.c, undo.c:
+ * window.c, xdisp.c, xfaces.c, xfns.c, xftfont.c, xmenu.c, xml.c:
+ * xselect.c, xsettings.c, xterm.c:
+ Remove Q vars that represent symbols (e.g., Qnil, Qt, Qemacs).
+ These names are now defined automatically by make-docfile.
+ * alloc.c (init_symbol): New function.
+ (Fmake_symbol): Use it.
+ (c_symbol_p): New function.
+ (valid_lisp_object_p, purecopy): Use it.
+ * alloc.c (marked_pinned_symbols):
+ Use make_lisp_symbol instead of make_lisp_ptr.
+ (garbage_collect_1): Mark lispsym symbols.
+ (CHECK_ALLOCATED_AND_LIVE_SYMBOL): New macro.
+ (mark_object): Use it.
+ (sweep_symbols): Sweep lispsym symbols.
+ (symbol_uses_obj): New function.
+ (which_symbols): Use it. Work for lispsym symbols, too.
+ (init_alloc_once): Initialize Vpurify_flag here; no need to wait,
+ since Qt's address is already known now.
+ (syms_of_alloc): Add lispsym count to symbols_consed.
+ * buffer.c (init_buffer_once): Compare to Qnil, not to make_number (0),
+ when testing whether storage is all bits zero.
+ * dispextern.h (struct image_type):
+ * font.c (font_property_table):
+ * frame.c (struct frame_parm_table, frame_parms):
+ * keyboard.c (scroll_bar_parts, struct event_head):
+ * xdisp.c (struct props):
+ Use XSYMBOL_INIT (Qfoo) and struct Lisp_Symbol * rather than &Qfoo and
+ Lisp_Object *, since Qfoo is no longer an object whose address can be
+ taken. All uses changed.
+ * eval.c (run_hook): New function. Most uses of Frun_hooks changed to
+ use it, so that they no longer need to take the address of a Lisp sym.
+ (syms_of_eval): Don't use DEFSYM on Vrun_hooks, as it's a variable.
+ * frame.c (syms_of_frame): Add defsyms for the frame_parms table.
+ * keyboard.c (syms_of_keyboard): Don't DEFSYM Qmenu_bar here.
+ DEFSYM Qdeactivate_mark before the corresponding var.
+ * keymap.c (syms_of_keymap): Use DEFSYM for Qmenu_bar and Qmode_line
+ instead of interning their symbols; this avoids duplicates.
+ (LISP_INITIALLY, TAG_PTR)
+ (DEFINE_LISP_SYMBOL_BEGIN, DEFINE_LISP_SYMBOL_END, XSYMBOL_INIT):
+ New macros.
+ (LISP_INITIALLY_ZERO): Use it.
+ (enum symbol_interned, enum symbol_redirect, struct Lisp_Symbol)
+ (EXFUN, DEFUN_ARGS_MANY, DEFUN_ARGS_UNEVALLED, DEFUN_ARGS_*):
+ Move decls up, to avoid forward uses. Include globals.h earlier, too.
+ (make_lisp_symbol): New function.
+ (XSETSYMBOL): Use it.
+ (DEFSYM): Now just a placeholder for make-docfile.
+ * lread.c (DEFINE_SYMBOLS): Define, for globals.h.
+ (intern_sym): New function, with body taken from old intern_driver.
+ (intern_driver): Use it. Last arg is now Lisp integer, not ptrdiff_t.
+ All uses changed.
+ (define_symbol): New function.
+ (init_obarray): Define the C symbols taken from lispsym.
+ Use plain DEFSYM for Qt and Qnil.
+ * syntax.c (init_syntax_once): No need to worry about
+ Qchar_table_extra_slots.
+
+2015-01-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ 'temacs -nw' should not call missing functions
+ Without this patch, "temacs -nw" fails with the diagnostic
+ "emacs: Symbol's function definition is void: frame-windows-min-size"
+ and messes up the tty's state.
+ * frame.c (Fframe_windows_min_size): New placeholder function.
+ (syms_of_frame): Define it.
+ * window.c (Fwindow__sanitize_window_sizes): New placeholder.
+ (syms_of_window): Define it.
+
+ Less 'make' chatter for lisp dir
+ * Makefile.in (%.elc): Adjust to compile-onefile change in
+ ../lisp/Makefile.in.
+
+ batch write-region no longer says "Wrote FOO"
+ This cuts down on 'make' chatter a bit.
+ * fileio.c (Fwrite_region):
+ Don't output "Wrote /whatever/foo.elc" if noninteractive.
+
+2015-01-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ Revert previous change to produce_composite_glyph
+ * term.c (produce_composite_glyph): Revert previous change (Bug#19496).
+
+ Pacify gcc -Wparentheses
+ * frame.c (x_set_frame_parameters): Add parens (Bug#19428).
+
+2015-01-03 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.c (x_set_frame_parameters): Call Fset_frame_size only if
+ f->can_x_set_window_size is true.
+ * xterm.c (x_set_window_size_1): Call change_frame_size with
+ text sizes instead of pixel sizes (Bug#19428).
+
+2015-01-01 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (pos_visible_p): Fix up the X coordinate for
+ right-to-left screen lines. (Bug#19473)
+
+2015-01-01 Eli Zaretskii <eliz@gnu.org>
+
+ * w32proc.c (Fw32_get_codepage_charset): Doc fix. (Bug#19458)
+
+2014-12-31 Paul Eggert <eggert@cs.ucla.edu>
+
+ Simplify setfattr use by assuming GNU make
+ * Makefile.in (PAXCTL_if_present, SETFATTR_if_present): New macros.
+ (emacs$(EXEEXT), temacs$(EXEEXT), bootstrap-emacs$(EXEEXT)): Use them.
+ Simplify by using GNU make rather than shell conditionals,
+ by using ln -f rather than rm -f followed by ln,
+ and by preferring $@ to spelling out the destination.
+
+2014-12-29 Eli Zaretskii <eliz@gnu.org>
+
+ * sysdep.c [WINDOWSNT]: Include sys/socket.h, without which this
+ file doesn't compile on MS-Windows.
+
+2014-12-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ Allow return value of system-name to vary. (Bug#19438)
+ * filelock.c (current_lock_owner):
+ * xrdb.c (get_environ_db):
+ * xterm.c (same_x_server):
+ * xterm.c (x_term_init):
+ Prefer (system-name) to system-name, and avoid naming
+ locals 'system-name'.
+ * editfns.c (cached_system_name): New static var.
+ (init_and_cache_system_name): New function.
+ (init_editfns, Fsystem_name): Use it.
+ (syms_of_editfns): Initialize it and Vsystem_name to the same value.
+ * sysdep.c [HAVE_SOCKETS]: Don't include <sys/socket.h>, <netdb.h>.
+ (h_errno) [TRY_AGAIN && !HAVE_H_ERRNO]: Remove decl.
+ (init_system_name) [HAVE_SOCKETS]: Don't canonicalize the name.
+ Don't create a new string if the current value is already correct.
+
+2014-12-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix produce_composite_width typo
+ * term.c (produce_composite_glyph):
+ Fix typo that confused number of columns for pixel width.
+
+2014-12-28 Paul Eggert <eggert@Penguin.CS.UCLA.EDU>
+
+ Wrap dll functions more simply
+ * decompress.c, gnutls.c, image.c, xml.c:
+ If WINDOWSNT, use '#define FOO fn_FOO' to wrap dll functions,
+ rather than the inverse when not WINDOWSNT. This isolates the
+ fn_* business into the WINDOWSNT-specific section of the code,
+ which makes it easier to maintain the generic code.
+ * decompress.c (DEF_ZLIB_FN, LOAD_ZLIB_FN):
+ * gnutls.c (DEF_GNUTLS_FN, LOAD_GNUTLS_FN):
+ * image.c (DEF_IMGLIB_FN, LOAD_IMGLIB_FN):
+ * xml.c (DEF_XML2_FN, LOAD_XML2_FN):
+ Remove. All uses replaced by DEF_DLL_FN.
+ * decompress.c (inflateInit2): Remove; no longer needed.
+ * w32.h (DEF_DLL_FN, LOAD_DLL_FN): New macros.
+
+ Port memory-full checking to GnuTLS 3.3
+ Instead of using gnutls_global_set_mem_functions, check every call
+ to a GnuTLS function that might return an indication of memory
+ exhaustion. Suggested by Dmitry Antipov in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-12/msg02056.html
+ * gnutls.c (gnutls_global_set_mem_functions) [WINDOWSNT]: Remove.
+ (init_gnutls_functions): Do not load gnutls_global_set_mem_functions.
+ (fn_gnutls_global_set_mem_functions) [!WINDOWSNT]: Remove.
+ All uses removed.
+ (check_memory_full): New function.
+ (emacs_gnutls_handshake, emacs_gnutls_handle_error)
+ (gnutls_make_error, gnutls_certificate_details, Fgnutls_peer_status)
+ (Fgnutls_boot): Use it.
+ (emacs_gnutls_global_init): Avoid gnutls_global_set_mem_functions.
+
+2014-12-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix parse_settings to match internal documentation
+ * xsettings.c (parse_settings): Return the number of settings seen.
+ Count the settings changes accurately.
+ (read_settings): Don't confuse number of settings changes with
+ the return code from XGetWindowProperty.
+
+2014-12-27 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (set_iterator_to_next) <GET_FROM_STRING>: Limit search in
+ composition_compute_stop_pos to the number of characters in the
+ string. (Bug#19435)
+ <GET_FROM_BUFFER, GET_FROM_STRING>: Simplify code.
+
+ * composite.c (composition_compute_stop_pos): If no composition
+ was found in a string before ENDPOS, and ENDPOS is the string end,
+ no need to back up to a safe point.
+
+ * dispextern.h (struct it) <end_charpos>: Improve commentary.
+
+2014-12-27 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsimage.m (allocInitFromFile:): Initialize bmRep.
+ (dealloc): Release bmRep.
+ (setPixmapData): Make bmRep local so class member is not
+ set (Bug#19133).
+ (setPixmapData): Rename local variable bmRep to avoid compiler
+ warning.
+
+2014-12-27 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xterm.c (do_ewmh_fullscreen): Don't remove maximized_horz/vert
+ when going to fullscreen (Bug#0x180004f).
+
+2014-12-27 Eli Zaretskii <eliz@gnu.org>
+
+ * window.c (Fwindow_body_width): Doc fix. (Bug#19395)
+
+2014-12-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * buffer.c (syms_of_buffer) <Vafter_change_functions>: fix docstring.
+
+2014-12-27 Eli Zaretskii <eliz@gnu.org>
+
+ * gnutls.c (gnutls_init): Fix deprecation warning from GCC.
+
+2014-12-26 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use bool for boolean in xselect.c, xsettings.c
+ * xselect.c (x_get_local_selection, struct selection_data)
+ (x_selection_request_lisp_error, struct prop_location)
+ (x_handle_selection_request, x_convert_selection)
+ (waiting_for_other_props_on_window, expect_property_change)
+ (wait_for_property_change, x_handle_property_notify)
+ (x_get_foreign_selection, x_get_window_property)
+ (receive_incremental_selection)
+ (x_get_window_property_as_lisp_data)
+ (lisp_data_to_selection_data, Fx_get_selection_internal)
+ (x_send_client_event):
+ * xselect.c, xterm.h (x_handle_dnd_message):
+ * xsettings.c (dpyinfo_valid, parse_settings, read_settings)
+ (apply_xft_settings, read_and_apply_settings)
+ (xft_settings_event, init_gsettings, init_xsettings)
+ (syms_of_xsettings):
+ Use bool for boolean.
+ * xselect.c (x_get_window_property): Omit last arg, which was an
+ unused boolean.
+ * xsettings.c (apply_xft_settings): Remove 2nd arg, which was
+ always true. All callers changed.
+
+2014-12-26 Eli Zaretskii <eliz@gnu.org>
+
+ * w32proc.c (sys_spawnve, get_lcid_callback): Use strcpy instead
+ of strcat.
+
+ * w32menu.c (add_menu_item): Use stpcpy instead of strcat.
+
+ * w32.c (sys_readdir, stat_worker, symlink): Use strcpy instead of
+ strcat.
+
+2014-12-26 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use bool for boolean in xsmfns.c
+ * xsmfns.c, xterm.h (x_session_have_connection):
+ * xsmfns.c (doing_interact, smc_interact_CB, Fhandle_save_session):
+ Use bool for boolean.
+ (x_session_initialize, Fhandle_save_session):
+ Prefer NILP (x) to EQ (x, Qnil).
+
+2014-12-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ * callproc.c (child_setup):
+ * dbusbind.c (xd_signature_cat):
+ * doc.c (get_doc_string, Fsnarf_documentation):
+ * editfns.c (Fuser_full_name):
+ * frame.c (xrdb_get_resource):
+ * gtkutil.c (xg_get_file_with_chooser):
+ * tparam.c (tparam1):
+ * xfns.c (xic_create_fontsetname):
+ * xrdb.c (gethomedir, get_user_db, get_environ_db):
+ * xsmfns.c (smc_save_yourself_CB):
+ Rewrite to avoid the need for strcat, typically by using stpcpy
+ and/or lispstpcpy. strcat tends to be part of O(N**2) algorithms.
+ * doc.c (sibling_etc):
+ * xrdb.c (xdefaults):
+ Now a top-level static constant.
+
+2014-12-23 Didier Verna <didier@didierverna.net> (tiny change).
+
+ * nsselect.m (Fns_selection_owner_p): Return a Lisp boolean, not a
+ C one (Bug#19396).
+
+2014-12-22 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xterm.c (x_bitmap_icon): Partly revert change from 2014-03-21 which
+ breaks icon setting for Gtk+ except for initial frame (Bug#19403).
+
+2014-12-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use bool for boolean in xterm.c
+ * frame.h, nsterm.m, w32term.c, w32term.h, xterm.c:
+ (x_set_window_size, x_bitmap_icon):
+ * nsterm.m (ns_frame_raise_lower, x_new_font):
+ * termhooks.h (struct terminal.toggle_invisible_pointer_hook)
+ (struct terminal.frame_raise_lower_hook):
+ * w32term.c (w32_frame_raise_lower):
+ * xterm.c, xterm.h (x_text_icon):
+ * xterm.c (x_update_window_begin, x_update_window_end)
+ (x_update_end, x_after_update_window_line)
+ (x_set_glyph_string_gc, x_draw_glyph_string_background)
+ (x_draw_glyph_string_foreground)
+ (x_draw_composite_glyph_string_foreground)
+ (x_alloc_lighter_color, x_draw_relief_rect)
+ (x_draw_glyph_string_box, x_draw_image_relief)
+ (x_draw_image_glyph_string, x_draw_stretch_glyph_string)
+ (x_draw_underwave, x_draw_glyph_string, x_show_hourglass)
+ (x_hide_hourglass):
+ (XFillRectangle) [HAVE_GTK3]:
+ (XTtoggle_invisible_pointer, frame_highlight, frame_unhighlight)
+ (x_focus_changed, x_find_modifier_meanings, note_mouse_movement)
+ (XTmouse_position, xt_action_hook, xt_horizontal_action_hook)
+ (x_send_scroll_bar_event, xm_scroll_callback)
+ (xg_scroll_callback, xaw_jump_callback, xaw_scroll_callback)
+ (x_create_toolkit_scroll_bar)
+ (x_create_horizontal_toolkit_scroll_bar)
+ (x_set_toolkit_horizontal_scroll_bar_thumb, x_scroll_bar_create)
+ (x_scroll_bar_set_handle, XTset_vertical_scroll_bar)
+ (XTset_horizontal_scroll_bar, x_scroll_bar_expose)
+ (x_scroll_bar_handle_click, x_scroll_bar_note_movement)
+ (x_scroll_bar_report_motion)
+ (x_horizontal_scroll_bar_report_motion, x_net_wm_state)
+ (handle_one_xevent, XTread_socket, x_draw_bar_cursor)
+ (x_draw_window_cursor, x_clear_errors)
+ (x_trace_wire, x_new_font, x_set_offset, wm_supports)
+ (set_wm_state, x_set_sticky, get_current_wm_state)
+ (do_ewmh_fullscreen, x_handle_net_wm_state)
+ (x_check_expected_move, x_sync_with_move, x_wait_for_event)
+ (x_set_window_size_1, XTframe_raise_lower)
+ (x_make_frame_visible, x_iconify_frame)
+ (x_timeout_atimer_activated_flag, same_x_server, x_display_ok)
+ (x_term_init, x_process_timeouts, x_activate_timeout_atimer)
+ (x_delete_terminal, x_initialize, syms_of_xterm):
+ Use bool for boolean.
+
+2014-12-20 Paul Eggert <eggert@cs.ucla.edu>
+
+ * composite.h (struct composition.width): Now int
+ instead of unsigned short, as we prefer signed integers.
+
+ Let charset tick grow past USHRT_MAX
+ * charset.c, charset.h (charset_ordered_list_tick):
+ Now EMACS_UINT, not unsigned short.
+ * fontset.c (reorder_font_vector): Allow the tick to grow to the
+ maximum representable Emacs integer value before wrapping it around.
+
+ Simplify unexec file mode setting
+ * unexaix.c, unexcoff.c, unexelf.c, unexmacosx.c:
+ Don't include <sys/stat.h> when no longer needed.
+ (unexec): Create file with correct mode in the first place,
+ rather than overwriting the mode later and fiddling with the
+ global umask in the mean time. Avoid bogus usage like
+ 'umask (777)', which should have been 'umask (0777)'.
+ (mark_x): Remove. All callers removed.
+
+2014-12-19 Paul Eggert <eggert@cs.ucla.edu>
+
+ Minor cleanups for Lisp objects and symbols
+ * alloc.c (next_vector, set_next_vector):
+ * lisp.h (lisp_h_INTEGERP, make_number, XFASTINT, make_natnum):
+ (lisp_h_make_number) [USE_LSB_TAG]:
+ Use Lisp_Int0 instead of the mystery constant 0.
+ * alloc.c (mark_object): Always set and use po; that's simpler.
+ (CHECK_LIVE, CHECK_ALLOCATED_AND_LIVE):
+ Properly parenthesize definientia.
+ * bidi.c (bidi_initialize):
+ * buffer.c (init_buffer_once):
+ * nsfns.m (syms_of_nsfns):
+ * nsmenu.m (syms_of_nsmenu):
+ * nsselect.m (syms_of_nsselect):
+ Prefer DEFSYM to defining by hand.
+ * buffer.c (syms_of_buffer): Omit unneeded staticpros.
+ * data.c: Fix too-long line.
+ * lisp.h (DECLARE_GDB_SYM): New macro.
+ (DEFINE_GDB_SYMBOL_BEGIN): Use it.
+ (DEFINE_GDB_SYMBOL_BEGIN, DEFINE_GDB_SYMBOL_END) [!MAIN_PROGRAM]:
+ Declare the symbol, so it's visible to everywhere lisp.h is included.
+ Move forward decls as far forward as they can go,
+ to allow future changes to use them.
+
+2014-12-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ * gnutls.c: Include gnutls.h.
+ This to check syms_of_gnutls's API even when !HAVE_GNUTLS.
+ * image.c (svg_load): Fix pointer signedness.
+
+2014-12-18 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.c (frame_windows_min_size): New argument IGNORE.
+ (adjust_frame_size): When called from change_frame_size call
+ frame_windows_min_size with IGNORE Qt so we can ignore size
+ restrictions.
+
+2014-12-18 Eli Zaretskii <eliz@gnu.org>
+
+ * font.c (Ffont_info): Add more font information to the vector
+ returned by the function, inspired by query-font. Doc fix.
+ (Bug#19395)
+
+2014-12-18 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keyboard.c (input_was_pending): New var.
+ (read_char): Use it to make sure we only skip redisplay when we can't
+ keep up with the repeat rate.
+
+2014-12-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keyboard.c (swallow_events): Don't redisplay if there's input pending.
+
+2014-12-17 Ulf Jasper <ulf.jasper@web.de>
+
+ * image.c (svg_load): Watch out for nil value of current buffer's
+ filename. Re-enable filename thing for not-a-file case.
+
+2014-12-17 Ulf Jasper <ulf.jasper@web.de>
+
+ Partially disabled previous change.
+
+ * image.c (svg_load): Temporarily disabled filename thing for
+ not-a-file case as it can cause crashs.
+
+2014-12-17 Ulf Jasper <ulf.jasper@web.de>
+
+ Fix problem with images referenced within svg files. (bug#19373)
+
+ * image.c: Additional parameter 'filename' for
+ svg_load_image. Include "buffer.h". Define library function
+ rsvg_handle_set_base_uri for WINDOWSNT.
+ (init_svg_functions): Initialize rsvg_handle_set_base_uri.
+ (fn_rsvg_handle_set_base_uri): Define fn_rsvg_handle_set_base_uri.
+ (svg_load): Pass a filename to svg_load_image: either name of
+ actual file or of current buffer's file.
+ (svg_load_image): New parameter 'filename', used for setting
+ base_uri, necessary for loading referenced images. (bug#19373)
+
+2014-12-16 Paul Eggert <eggert@cs.ucla.edu>
+
+ * lread.c (init_obarray): Declare Qt as special.
+ This fixes a typo in the 2012-05-15 patch that
+ tried to declare Qt as special.
+
+2014-12-15 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ Various fixes to use bool type and constants.
+ * dispnew.c (update_single_window): Remove arg `force_p' since it's
+ always true.
+ * xfaces.c (clear_face_cache): Use bool for the argument type.
+
+2014-12-15 Paul Eggert <eggert@cs.ucla.edu>
+
+ Correct same_at_end when restoring window points
+ * fileio.c (Finsert_file_contents): Compute same_at_end character
+ position using the old buffer size, not the new one, since
+ restore_window_points wants the old size.
+ Fixes: debbugs:19161
+
+2014-12-14 Alan Mackenzie <acm@muc.de>
+
+ New feature optionally to accelerate auto-repeated scrolling.
+
+ * xdisp.c: Remove "static" from declaration of Qfontification_functions.
+
+ * window.c (window_scroll): Bind fontification-functions to nil
+ when scrolling by whole screens and
+ fast-but-imprecise-scrolling is non-nil.
+ (syms_of_window): New DEFVAR_BOOL fast-but-imprecise-scrolling.
+
+ * lisp.h (bool): Declare Qfontification_functions extern.
+
+2014-12-14 Eli Zaretskii <eliz@gnu.org>
+
+ Load system's default trusted Certificate Authorities if available.
+ * gnutls.c (gnutls_certificate_set_x509_system_trust)
+ [GNUTLS >= 3.0.20]: Declare for WINDOWSNT.
+ (init_gnutls_functions)(gnutls_certificate_set_x509_system_trust)
+ [GNUTLS >= 3.0.20]: Load from shared library for WINDOWSNT.
+ (fn_gnutls_certificate_set_x509_system_trust) [!WINDOWSNT]:
+ Define new macro.
+ (Fgnutls_boot) [GNUTLS >= 3.0.20]:
+ Call gnutls_certificate_set_x509_system_trust. Log an error message if
+ it fails.
+
+2014-12-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ * regex.c (analyze_first): Rename from analyze_first.
+
+2014-12-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ * alloc.c (XMALLOC_BASE_ALIGNMENT): Use max_align_t instead of
+ a hack involving a union.
+
+2014-12-13 Eli Zaretskii <eliz@gnu.org>
+
+ * gnutls.c (Fgnutls_available_p, syms_of_gnutls):
+ Move gnutls-available-p out of the HAVE_GNUTLS conditional, and define
+ them only once.
+
+2014-12-13 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * emacs.c (main): Always include gnutls.h and run syms_of_gnutls.
+
+ * gnutls.h: Always declare syms_of_gnutls.
+
+ * gnutls.c (Fgnutls_available_p syms_of_gnutls): Move later for
+ clarity. Let the availability check return Qnil when the GnuTLS
+ integration is not available, instead of erroring out.
+ (Bug#19346)
+
+2014-12-13 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (move_it_in_display_line_to, display_line):
+ Don't disallow overflow-newline-into-fringe when word-wrap is in
+ effect. (Bug#19300)
+
+2014-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * fileio.c: Better preserve window-points during revert (bug#19161).
+ (Qget_buffer_window_list): New var.
+ (get_window_points_and_markers, restore_window_points): New functions.
+ (Finsert_file_contents): Use them to save and restore window-points.
+
+2014-12-11 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * xterm.c (x_delete_terminal): Call emacs_close for X connection
+ descriptor if called from x_connection_closed and always delete
+ this descriptor from keyboard waiting set (Bug#19147).
+
+2014-12-10 Eli Zaretskii <eliz@gnu.org>
+
+ * bidi.c (BIDI_CACHE_MAX_ELTS_PER_SLOT): New macro.
+ (bidi_cache_max_elts): New global variable.
+ (bidi_shelve_header_size): Add the sizeof bidi_cache_max_elts.
+ (bidi_cache_shrink, bidi_initialize): Reset bidi_cache_max_elts to
+ its initial value.
+ (bidi_cache_search): Handle overflown cache. Improve commentary.
+ (bidi_cache_ensure_space): Limit allocations to the current value
+ of bidi_cache_max_elts. Force xpalloc not to over-allocate.
+ If less than a full BIDI_CACHE_CHUNK is left to the limit, decrease
+ the increment to not exceed the limit.
+ (bidi_cache_iterator_state): Now returns non-zero if succeeded to
+ cache, zero otherwise (meaning the cache overflowed). In the
+ latter case, set bidi_cache_last_idx to -1.
+ (bidi_peek_at_next_level): Handle overflown cache.
+ (bidi_push_it): Increase the cache limit for iterating the new object.
+ (bidi_pop_it): Decrease the cache limit back to previous value.
+ (bidi_shelve_cache): Shelve the current value of the cache limit.
+ (bidi_unshelve_cache): Restore the value of cache limit.
+ (bidi_find_bracket_pairs): If the cache overflows while looking
+ for the paired bracket, give up and let bidi_resolve_neutrals
+ process the bracket as a simple neutral. (Bug#19322)
+ (bidi_find_other_level_edge): If the cache overflows, fall back on
+ Plan B, which effectively stops the reordering and restarts it on
+ the next character (after resetting the cache).
+ (bidi_move_to_visually_next): When the cache overflows, reset it
+ after processing the last cached character.
+
+2014-12-10 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix glitches in gnutls.c, mostly memory-related
+ * gnutls.c: Sort macro definitions by name.
+ (fn_gnutls_transport_set_errno): Omit unreachable definition.
+ (fn_gnutls_x509_crt_get_signature): Omit unused symbol.
+ (gnutls_hex_string): Arg is now unsigned char *, to avoid a cast.
+ Prefer ptrdiff_t for sizes. Check for arithmetic overflow when
+ calculating string length. Use make_uninit_string, to avoid
+ copying the string. Cast the char, not the pointer.
+ (gnutls_certificate_details): Use xmalloc and xfree, not malloc
+ and free. Work even for dates past the year 9999. Use void *
+ for buffers, to avoid casts.
+
+2014-12-09 Andy Moreton <andrewjmoreton@gmail.com> (tiny change)
+
+ * gnutls.c (gnutls_protocol_get_name): Fix a copy/paste typo.
+
+2014-12-08 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnutls.c (Fgnutls_peer_status): Return the key exchange, cipher
+ and MAC algorithms.
+
+2014-12-08 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * process.c: Whitespace and line-break nitpicks.
+
+2014-12-08 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnutls.c (gnutls_certificate_details): The :signature isn't
+ that useful, so remove it.
+ (gnutls_certificate_details): Clean up whitespace slightly.
+ (Fgnutls_peer_status): Return the Diffie-Hellman prime bits for
+ the connection.
+ (gnutls_certificate_details): Put :signature-algorithm back again,
+ which was removed by mistake.
+ (emacs_gnutls_handle_error): Fatal errors should be on level 1, so
+ that they are not messaged by default (bug#16253).
+ (Fgnutls_error_fatalp): Doc fix (bug#18210).
+
+ * gnutls.c: Add Windows specs for gnutls_dh_get_prime_bits.
+
+2014-12-07 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsimage.m (setPixmapData): Make bmRep local so class member is not
+ set (Bug#19133).
+
+2014-12-05 Lee Duhem <lee.duhem@gmail.com> (tiny change)
+
+ * eval.c (Fsignal): Remove duplicate test.
+ (Fautoload_do_load): Fix up docstring.
+
+2014-12-05 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (represented_filename, represented_frame): New variables.
+ (ns_set_represented_filename): New function.
+ (sendEvent:): Set represented filename here to avoid flicker,
+ related to Bug#18757.
+
+ * nsterm.h: Declare ns_set_represented_filename.
+
+ * nsfns.m (ns_set_name_as_filename): Don't set represented filename
+ at once, call ns_set_represented_filename instead.
+
+2014-12-05 Eli Zaretskii <eliz@gnu.org>
+
+ * dispextern.h (enum bidi_dir_t): Force NEUTRAL_DIR to be zero.
+ (struct bidi_stack): Reduce size by using bit fields and by
+ packing sos, override, and isolate_status into a single 8-bit
+ byte called 'flags'.
+
+ * bidi.c (ISOLATE_STATUS, OVERRIDE): New macros.
+ (bidi_push_embedding_level): Construct flags from individual
+ bits. Adapt to changes in prev_for_neutral and next_for_neutral
+ members.
+ (bidi_pop_embedding_level): Use ISOLATE_STATUS. Extract 'sos'
+ from flags. Adapt to changes in prev_for_neutral,
+ next_for_neutral, and last_strong members.
+ (bidi_line_init): Initialize flags to zero.
+ (bidi_resolve_explicit, bidi_resolve_weak, bidi_resolve_brackets)
+ (bidi_resolve_neutral): Use ISOLATE_STATUS and OVERRIDE.
+
+2014-12-04 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * eval.c (backtrace_eval_unrewind): Rewind also the excursions.
+ (Fapply): Try and simplify the control flow.
+
+2014-12-03 Chris Zheng <chriszheng99@gmail.com> (tiny change)
+
+ * gnutls.c (init_gnutls_functions, gnutls_certificate_details):
+ Use gnutls_sign_get_name directly because
+ gnutls_sign_algorithm_get_name is a macro on MinGW (bug#19231).
+ (init_gnutls_functions): Load missing gnutls_server_name_set.
+
+2014-12-02 Eli Zaretskii <eliz@gnu.org>
+
+ * bidi.c (bidi_find_first_overridden): New function.
+
+ * xdisp.c (Fbidi_find_overridden_directionality): New function.
+ (syms_of_xdisp): Defsubr it.
+
+ * dispextern.h (bidi_find_first_overridden): Add prototype.
+
+2014-12-02 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsimage.m (initFromSkipXBM:width:height:flip:length:): Set bmRep
+ to nil after release (Bug#9133).
+
+2014-11-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port better to AddressSanitizer.
+ These changes suffice for temacs on x86-64 with GCC 4.9.2 and
+ -fsanitize=address.
+ * alloc.c (valid_pointer_p) [ADDRESS_SANITIZER]:
+ Return -1 or 0, as the pipe trick doesn't work.
+ * alloc.c (relocatable_string_data_p, mark_object, sweep_symbols):
+ * data.c (Ffset):
+ * print.c (print_object):
+ When a pointer-check primitive returns -1, do not assume this
+ means the pointer is valid or that the underlying system has failed.
+ It could just be that addresses are being sanitized so Emacs can't
+ test for pointer validity.
+ * lisp.h (defined_GC_CHECK_STRING_BYTES): New constant.
+ (USE_STACK_STRING) [GC_CHECK_STRING_BYTES]: Now false, since the
+ string validity checker doesn't work on stack-based strings.
+
+2014-11-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ Improve clarity of USE_LSB_TAG definition.
+ Reported by Lee Duhem. Suggested by Andreas Schwab in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-11/msg02222.html
+ * lisp.h (USE_LSB_TAG): Define in terms of the (simpler)
+ VAL_MAX / 2 rather than in terms of the (more complicated)
+ EMACS_INT_MAX >> GCTYPEBITS, and adjust commentary to match.
+
+2014-11-29 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (handle_single_display_spec): When ignoring a fringe
+ bitmap display, reset the ignore_overlay_strings_at_pos_p flag.
+ (next_element_from_buffer): When done with overlays, reset the
+ ignore_overlay_strings_at_pos_p flag. (Bug#19201)
+
+2014-11-29 Eli Zaretskii <eliz@gnu.org>
+
+ * w32fns.c (Fw32_shell_execute): Convert forward slashes in
+ DOCUMENT to backslashes, if DOCUMENT is a file. (Bug#19141)
+
+2014-11-29 Ulrich Müller <ulm@gentoo.org>
+
+ * Makefile.in (temacs$(EXEEXT)): Use consistent flag settings
+ for paxctl and setfattr. Fixes temacs startup failure with
+ grsecurity/PaX enabled Linux kernel (bug#19067).
+
+2014-11-27 Oscar Fuentes <ofv@wanadoo.es>
+
+ * w32.c, w32heap.c, w32term.c:
+ Use MINGW_W64 instead of _W64.
+
+2014-11-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * frame.c (Fhandle_switch_frame): Deactivate shift-region (bug#19003).
+
+2014-11-26 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnutls.c (gnutls_ip_address_p): New function.
+ (Fgnutls_boot): Only send SNI if the host name is not an IP address.
+
+2014-11-26 Toke Høiland-Jørgensen <toke@toke.dk> (tiny change)
+
+ * gnutls.c (Fgnutls_boot): Send the server name over (bug#18208).
+
+2014-11-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix gnutls problems caught by static checking.
+ * gnutls.c (Fgnutls_boot): Remove unused local.
+ (Fgnutls_boot): Fix pointer signedness.
+
+2014-11-25 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnutls.c (gnutls_certificate_details): Don't include certain
+ certificate details on older gnutls versions (bug#19168).
+ (syms_of_gnutls): Export gnutls_peer_status_warning_describe.
+ (gnutls_certificate_details): Reversed check in last checkin.
+
+2014-11-25 Teodor Zlatanov <tzz@lifelogs.com>
+
+ * gnutls.c (Fgnutls_peer_status): Check GNUTLS_INITSTAGE, not gnutls_p.
+ (Fgnutls_peer_status_warning_describe): Add function to describe a
+ peer verification warning symbol.
+ (Fgnutls_peer_status): Use it.
+ (Fgnutls_boot): Use it. Minor logging fixes.
+
+2014-11-24 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnutls.c: Fix compilation warnings given fix --enable-gcc-warnings.
+
+2014-11-24 Glenn Morris <rgm@gnu.org>
+
+ * emacs.c (main) <--version>: Make use of PACKAGE_NAME.
+
+ * Makefile.in (emacs.res): Use ../nt rule, rather than duplicating it.
+ (ntsource, WINDRES, EMACS_MANIFEST): Remove, now unused.
+
+2014-11-23 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * gnutls.c: Fix Windows function definition of
+ gnutls_x509_crt_get_fingerprint.
+
+ * gnutls.c: Fix Windows return value for gnutls_pk_algorithm_get_name.
+
+ * gnutls.c (Fgnutls_boot): Save certificate for later inspection.
+
+ * process.h: Added more fields to Lisp_Process to track
+ certificate details.
+
+ * gnutls.c (gnutls_hex_string, gnutls_certificate_details)
+ (Fgnutls_peer_status): New functions to export TLS certificate
+ details to Emacs Lisp.
+
+2014-11-23 Jan Djärv <jan.h.d@swipnet.se>
+
+ * gtkutil.c (gtk_adjustment_configure): Define for Gtk+ < 2.14.
+ (xg_set_toolkit_horizontal_scroll_bar_thumb): Remove wrong version
+ check for gtk_adjustment_configure (Bug#19149).
+ (gtk_adjustment_configure): Don't use 2.14 functions (Bug#19149).
+
+2014-11-22 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in (emacs.res): Add dependency on icons/hand.cur. Use $<.
+
+2014-11-22 Martin Rudalics <rudalics@gmx.at>
+
+ Don't shrink frame when using desktop-save-mode (Bug#19048).
+ * w32fns.c (x_set_tool_bar_lines): Always call
+ x_change_tool_bar_height (Bug#19048).
+ (x_change_tool_bar_height): Mark frame as garbaged since
+ adjust_frame_size might not have done that.
+ * xfns.c (x_set_tool_bar_lines): Always call
+ x_change_tool_bar_height (Bug#19048).
+ (x_change_tool_bar_height): Mark frame as garbaged since
+ adjust_frame_size might not have done that.
+
+2014-11-21 Ulf Jasper <ulf.jasper@web.de>
+
+ * xml.c (parse_region): Take care of new optional parameter
+ 'discard-comments' of 'libxml-parse(html|xml)-region'.
+ (Flibxml_parse_html_region, Flibxml_parse_xml_region):
+ New optional parameter 'discard-comments'.
+
+2014-11-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ Improve time stamp handling, and be more consistent about it.
+ * editfns.c (invalid_time): New function.
+ Use it instead of 'error ("Invalid time specification")'.
+ (time_add, time_subtract, time_arith, Ftime_add, Ftime_less_p)
+ (decode_float_time, lisp_to_timespec, lisp_time_struct):
+ New functions.
+ (make_time_tail, make_time): Remove. All uses changed to use
+ new functions or plain list4i.
+ (disassemble_lisp_time): Return effective length if successful.
+ Check that LOW is an integer, if it's combined with other components.
+ (decode_time_components): Decode into struct lisp_time, not
+ struct timespec, so that we can support a wide set of times
+ regardless of whether time_t is signed. Decode plain numbers
+ as seconds since the Epoch, and nil as the current time.
+ (lisp_time_argument, lisp_seconds_argument, Ffloat_time):
+ Reimplement in terms of new functions.
+ (Fencode_time): Just use list2i.
+ (syms_of_editfns): Add time-add, time-subtract, time-less-p.
+ * keyboard.c (decode_timer): Don't allow the new formats (floating
+ point or nil) in timers.
+ * systime.h (LO_TIME_BITS): New constant. Use it everywhere in
+ place of the magic number '16'.
+ (struct lisp_time): New type.
+ (decode_time_components): Use it.
+ (lisp_to_timespec): New decl.
+
+2014-11-16 Lars Magne Ingebrigtsen <larsi@gnus.org>
+
+ * intervals.h (INTERVAL_WRITABLE_P): Check the `inhibit-read-only'
+ text property.
+
+ * callint.c (Fcall_interactively): Pass in nil as argument to
+ Fbarf_if_buffer_read_only.
+
+ * fileio.c (Finsert_file_contents): Ditto.
+
+ * insdel.c (prepare_to_modify_buffer_1): Pass start region in.
+
+ * textprop.c (verify_interval_modification): Check buffer
+ readedness after the last interval.
+
+ * buffer.c (Fbarf_if_buffer_read_only): Don't raise an error if
+ the text at POSITION (new optional argument) has the
+ `inhibit-read-only' text property set.
+
+2014-11-16 Eli Zaretskii <eliz@gnu.org>
+
+ * window.c (window_scroll_pixel_based): Avoid truncation/rounding
+ errors in computing the number of pixels to scroll.
+ Suggested by Kelly Dean <kelly@prtime.org>. (Bug#19060)
+
+2014-11-16 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsmenu.m (update_frame_tool_bar): If tool bar changes height,
+ call updateFrameSize.
+
+ * nsterm.m (setFrame:): Remove call to display (Bug#18757).
+
+2014-11-16 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsfns.m (x_set_foreground_color, x_set_background_color)
+ (x_set_cursor_color, Fxw_color_values): Block/unblock input,
+ use SET_FRAME_GARBAGED instead of redraw_frame (Bug#19036).
+
+2014-11-15 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (ns_send_appdefined): Check for application defined
+ event on Cocoa (Bug#18993).
+ (run): Restore code before the previous 18993 fix.
+
+2014-11-14 David Reitter <david.reitter@gmail.com>
+
+ * nsterm.m (run): Set timeout for event loop to prevent hang.
+ (Bug#18993)
+
+2014-11-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ * .gitignore: Add emacs-[1-9]*, to ignore files like emacs-25.0.50.1.
+
+2014-11-14 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * xfont.c (xfont_list_pattern): Do not allocate font entity object
+ for each candidate font but attempt to reuse it from previous improper
+ candidate, if any.
+
+2014-11-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ Avoid undefined behavior in color table hashing.
+ * image.c (CT_HASH_RGB) [COLOR_TABLE_SUPPORT]: Remove, replacing with ...
+ (ct_hash_rgb) [COLOR_TABLE_SUPPORT]: New function. All uses changed.
+ This function avoids undefined behavior with signed shift overflow.
+
+2014-11-10 Eli Zaretskii <eliz@gnu.org>
+
+ * fileio.c (Finsert_file_contents): Invalidate buffer caches also
+ when the inserted text does not need decoding. (Bug#18982)
+
+2014-11-10 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.h (EmacsScroller): judge returns bool.
+
+ * nsterm.m (ns_set_vertical_scroll_bar): Release bar.
+ (ns_judge_scroll_bars): Only set removed if judge returns true.
+ (judge): Returns bool == condemned. Remove self from window.
+ (setPosition:portion:whole:): Remove raise SIGIO (Bug#18757).
+
+2014-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keyboard.c (command_loop_1): Record this-command in recent-keys.
+ (Frecent_keys): Rewrite. and add optional `include-cmds' arg.
+
+2014-11-09 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (ns_set_vertical_scroll_bar)
+ (ns_set_horizontal_scroll_bar): Cleanup merge error.
+
+2014-11-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ * xgselect.c (xg_select): Don't assume n_gfds is nonnegative
+ merely because tmo_in_millisec is nonnegative. The 1st call
+ to g_main_context_query could succeed while the 2nd one fails.
+
+ * frame.c (Fcan_run_window_configuration_change_hook): Return a value.
+
+2014-11-08 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (run): Only use non-system event loop if OSX version is
+ exactly 10.9 (Bug#18993).
+ (ns_set_vertical_scroll_bar): Don't call bar setPosition: unless
+ needed (Bug#18757).
+
+2014-11-08 Michael Albinus <michael.albinus@gmx.de>
+
+ * callproc.c (encode_current_directory): Support handling of file
+ names prepended by "/:". (Bug#18891)
+
+2014-11-08 Alan Mackenzie <acm@muc.de>
+
+ * syntax.c (back_comment): Fix off-by-one error (bug#18022).
+
+2014-11-08 Dima Kogan <dima@secretsauce.net>
+
+ * xgselect.c (xg_select): Use g_main_context_acquire (bug#18861).
+
+2014-11-08 Michael Albinus <michael.albinus@gmx.de>
+
+ * dired.c (Ffile_attributes): Return Qnil, if Fexpand_file_name
+ raises an error. (Bug#18891)
+
+2014-11-08 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.c (adjust_frame_size): Call x_set_window_size only if
+ f->can_x_set_window_size is set.
+ (make_frame): Initialize f->can_x_set_window_size and
+ f->can_run_window_configuration_change_hook.
+ (Fcan_run_window_configuration_change_hook): New function.
+ * frame.h (frame): Split `official' into `can_x_set_window_size'
+ and `can_run_window_configuration_change_hook'.
+ * nsfns.m (Fx_create_frame): Set f->can_x_set_window_size.
+ * w32fns.c (Fx_create_frame, x_create_tip_frame):
+ Set f->can_x_set_window_size.
+ * window.c (run_window_configuration_change_hook):
+ Return immediately if either f->can_x_set_window_size or
+ f->can_run_window_configuration_change_hook are false.
+ (Fset_window_configuration): Instead of f->official set
+ f->can_x_set_window_size.
+ * xfns.c (Fx_create_frame, x_create_tip_frame):
+ Set f->can_x_set_window_size.
+
+2014-11-08 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (EmacsScroller.dealloc): Reinstate, removed at merge
+ cleanup from 2014-11-01 (Bug#18972).
+
+2014-11-07 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keyboard.c: Call gui-set-selection instead of x-set-selection.
+ * xdisp.c (window-scroll-functions): Improve docstring.
+
+2014-11-07 Paul Eggert <eggert@cs.ucla.edu>
+
+ Uniquify the 'size' symbol.
+ * frame.c (Qsize):
+ * w32notify.c (Qsize): Remove.
+ * lisp.h (Qsize): New decl.
+ * lread.c (Qsize): Now extern.
+ * w32notify.c (syms_of_w32notify): No need to defsym.
+
+2014-11-07 Martin Rudalics <rudalics@gmx.at>
+
+ * dispnew.c (change_frame_size_1): Fix call of
+ adjust_frame_size.
+ * frame.c (Qsize, Qframe_position, Qframe_outer_size)
+ (Qframe_inner_size, Qexternal_border_size, Qtitle_height)
+ (Qmenu_bar_external, Qmenu_bar_size, Qtool_bar_external)
+ (Qtool_bar_size): New constants.
+ (frame_inhibit_resize, adjust_frame_size): New argument to
+ handle case where frame_inhibit_implied_resize is a list.
+ (Fmake_terminal_frame, Fset_frame_height, Fset_frame_width)
+ (Fset_frame_size, x_set_left_fringe, x_set_right_fringe)
+ (x_set_right_divider_width, x_set_bottom_divider_width)
+ (x_set_vertical_scroll_bars, x_set_horizontal_scroll_bars)
+ (x_set_scroll_bar_width, x_set_scroll_bar_height):
+ Update callers.
+ (frame-inhibit-implied-resize): Rewrite doc-string.
+ * frame.h (frame_inhibit_resize, adjust_frame_size):
+ Fix external declarations.
+ (Qframe_position, Qframe_outer_size)
+ (Qframe_inner_size, Qexternal_border_size, Qtitle_height)
+ (Qmenu_bar_external, Qmenu_bar_size, Qtool_bar_external)
+ (Qtool_bar_size): Extern them.
+ * gtkutil.c (FRAME_TOTAL_PIXEL_HEIGHT, FRAME_TOTAL_PIXEL_WIDTH)
+ (xg_height_or_width_changed): Remove.
+ (xg_frame_set_char_size): Adjust adjust_frame_size calls.
+ (menubar_map_cb, xg_update_frame_menubar, free_frame_menubar)
+ (tb_size_cb, update_frame_tool_bar, free_frame_tool_bar)
+ (xg_change_toolbar_position): Call adjust_frame_size directly.
+ * nsfns.m (x_set_internal_border_width, Fx_create_frame):
+ Fix calls of adjust_frame_size.
+ * w32fns.c (x_set_internal_border_width, x_set_menu_bar_lines)
+ (Fx_create_frame, x_create_tip_frame): Adjust adjust_frame_size calls.
+ (x_set_tool_bar_lines, x_change_tool_bar_height): Make sure that
+ frame can get resized when tool-bar-lines parameter changes from
+ or to zero.
+ (Fw32_frame_menu_bar_size): Return fourth value.
+ (Fw32_frame_rect): Block input around system calls
+ (Fx_frame_geometry): New function.
+ * w32menu.c (set_frame_menubar): Adjust adjust_frame_size call.
+ * w32term.c (x_new_font): Adjust adjust_frame_size call.
+ * widget.c (EmacsFrameSetCharSize): Adjust frame_inhibit_resize call.
+ * window.c (Fset_window_configuration): Adjust adjust_frame_size call.
+ * xfns.c (x_set_menu_bar_lines, x_set_internal_border_width)
+ (Fx_create_frame): Adjust adjust_frame_size calls.
+ (x_set_tool_bar_lines, x_change_tool_bar_height): Make sure that
+ frame can get resized when tool-bar-lines parameter changes from
+ or to zero.
+ (Fx_frame_geometry): New function.
+ * xmenu.c (update_frame_menubar): On Lucid call
+ adjust_frame_size with one pixel less height to avoid that
+ repeatedly adding/removing the menu bar grows the frame.
+ (free_frame_menubar): On Motif arrange to optionally preserve
+ the old frame height when removing the menu bar.
+ * xterm.c (x_new_font): Adjust adjust_frame_size call.
+
+2014-11-03 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (Fdump_glyph_matrix, Fdump_frame_glyph_matrix): Doc fix.
+ (Fdump_frame_glyph_matrix): Don't segfault if invoked on a GUI
+ frame; instead, print an error message.
+
+2014-11-03 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsfns.m (ns_set_doc_edited): Check for FRAME_NS (Bug#18925).
+
+2014-11-02 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsimage.m (allocInitFromFile:): Initialize bmRep.
+ (dealloc): Release bmRep.
+
+ * nsterm.h (EmacsImage): Remove imageListNext, refCount, reference,
+ imageListSetNext, imageListNext.
+
+ * nsimage.m (ImageList, imageListNext, imageListSetNext:)
+ (reference): Remove.
+ (allocInitFromFile:): Remove searching ImageList and calling
+ reference (Bug#18918).
+ (dealloc): Remove handling if ImageList.
+
+2014-11-02 Andreas Schwab <schwab@linux-m68k.org>
+
+ * process.c (catch_child_signal): Fix incorrect assertion.
+
+2014-11-01 Jan Djärv <jan.h.d@swipnet.se>
+
+ * macfont.m (macfont_draw):
+ * nsterm.m (ns_mouse_position, judge): Clean up merge conflict.
+
+ * macfont.m (macfont_glyph_extents): Turn off synthetic bold
+ if force_integral_p (i.e. no antialias).
+ (macfont_draw): Check ns_antialias_text, also turn off synthetic
+ bold if no antialias (Bug#18876).
+
+ * emacs.c (main): Don't chdir to $HOME on Cocoa if --chdir
+ was given (Bug#18846).
+
+ * nsterm.h (ns_set_doc_edited): Declare taking no args.
+
+ * nsfns.m (ns_set_doc_edited): Do all logic (check frames) here
+ instead of in xdisp.c, function now takes void. (Bug#18884).
+
+ * xdisp.c (prepare_menu_bars): Remove HAVE_NS code.
+ (redisplay_internal): Call ns_set_doc_edited if HAVE_NS (Bug#18884).
+
+ * nsterm.h (EmacsScroller): Replace Lisp_Object win with
+ struct window* (Bug#18889).
+ Remove getMouseMotionPart.
+ (ns_output): Make icon_top/left int.
+
+ * nsfns.m (x_icon): icon_top/left is int.
+
+ * nsterm.m (ns_mouse_position): Remove unused code.
+ (initFrame:window:, dealloc): Use window instead of win.
+ (getMouseMotionPart:window:x:y:): Remove, unused.
+ (sendScrollEventAtLoc:fromEvent:): Make Lisp_Object win from window.
+
+2014-11-01 Eli Zaretskii <eliz@gnu.org>
+
+ * keyboard.c (readable_events): When FLAGS include
+ READABLE_EVENTS_FILTER_EVENTS, ignore BUFFER_SWITCH_EVENT events.
+ This avoids returning non-nil from input-pending-p when only such
+ events are in the queue. (Bug#18856)
+
+2014-11-01 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsselect.m (QCLIPBOARD, QSECONDARY, QTEXT, QFILE_NAME)
+ (NXPrimaryPboard, NXSecondaryPboard): Declare static.
+ (Qforeign_selection): Remove.
+ (ns_get_local_selection): Identation fix.
+ (syms_of_nsselect): Remove Qforeign_selection, ns-lost-selection-hooks
+
+ * nsselect.m (ns_get_local_selection): Remove calling of
+ functions in Vselection_converter_alist (Bug#18911).
+ (syms_of_nsselect): Remove Vselection_converter_alist.
+
+2014-10-31 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * font.c (copy_font_spec): Redesign to avoid Fcopy_alist
+ and unnecessary initialization. Adjust comments.
+
+2014-10-30 Eli Zaretskii <eliz@gnu.org>
+
+ * bidi.c (bidi_cache_reset_to): Invalidate bidi_cache_last_idx by
+ setting it to -1.
+ (bidi_find_bracket_pairs): Pass to bidi_cache_reset_to a relative
+ index, not an absolute one, as that's what the function expects.
+
+2014-10-30 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * xfaces.c (Finternal_set_lisp_face_attribute): Don't try to realize
+ font on an initial frame when running as a daemon (Bug#18869).
+
+ * fontset.c (toplevel): Adjust comment to match 2014-06-19 change.
+
+2014-10-30 Eli Zaretskii <eliz@gnu.org>
+
+ * fileio.c (Fexpand_file_name): Use make_unibyte_string, not
+ build_string, when importing a home directory. (Bug#18873)
+
+2014-12-27 Eli Zaretskii <eliz@gnu.org>
+
+ * dispnew.c (buffer_posn_from_coords):
Use WINDOW_WANTS_HEADER_LINE_P, not WINDOW_WANTS_MODELINE_P, to
account for the header-line height. (Bug#18839)
-2014-10-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+2014-10-28 Ulf Jasper <ulf.jasper@web.de>
+
+ * xml.c (parse_region): Do not forget the first document child.
+
+2014-10-25 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsselect.m: pasteboard_changecount is new.
+ (ns_store_pb_change_count, ns_get_pb_change_count)
+ (ns_get_our_change_count_for): New functions.
+ (ns_string_to_pasteboard_internal): Correct comment.
+ type => gtype in eassert, Call ns_store_pb_change_count.
+ (Fns_own_selection_internal): Remove data, use value (Bug#18799).
+ (Fns_disown_selection_internal, Fns_selection_owner_p):
+ Replace Vselection_alist check, with change count check.
+ (Fns_get_selection): Initialize val to Qnil. Only get local
+ selection if change counts match (Bug#18799).
+ (nxatoms_of_nsselect): Initialize pasteboard_changecount.
+
+2014-10-25 Noam Postavsky <npostavs@users.sourceforget.net>
+
+ * w32proc.c (create_child): If calling a quoted batch file,
+ pass NULL for exe. (Bug#18745)
+
+2014-10-24 Eli Zaretskii <eliz@gnu.org>
+
+ * bidi.c (bidi_resolve_explicit, bidi_find_bracket_pairs)
+ (bidi_resolve_brackets): Use end of string position rather than ZV
+ when iterating over a string. (Bug#18815)
+
+2014-10-24 Martin Rudalics <rudalics@gmx.at>
+
+ * keyboard.c (make_lispy_position): Return coordinates also when
+ on scroll bars, fringes, margins or not in a window.
+ * xdisp.c (show_mouse_face): Don't change cursor face during
+ mouse tracking.
+
+2014-10-23 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.c (Fset_frame_height, Fset_frame_width, Fset_frame_size)
+ (frame_resize_pixelwise, frame_inhibit_implied_resize):
+ Fix doc-strings (Bug#18789).
+
+2014-10-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ * Makefile.in (ACLOCAL_INPUTS): Omit unnecessary use of 'wildcard'.
+
+2014-10-22 Eli Zaretskii <eliz@gnu.org>
+
+ Optimize redisplay of simple bracketed text.
+ * bidi.c (bidi_cache_reset_to): New function.
+ (bidi_cache_reset): Call it.
+ (bidi_init_it, bidi_line_init): Initialize the bracket_pairing_pos
+ member to -1.
+ (bidi_resolve_explicit): Reset bracket_pairing_pos and
+ bracket_enclosed_type only if bracket_pairing_pos's value is not
+ ZV.
+ (MAX_BPA_STACK): Make sure the value is signed.
+ (PUSH_BPA_STACK): If the BPA stack overflows, don't bail out, but
+ stop pushing values onto the stack.
+ (bidi_find_bracket_pairs): If the bracketed text is only on the
+ base embedding level, remove all the states cached by this
+ function from the cache, and return zero, so that the brackets in
+ this segment of text are processed as normal neutrals.
+ (bidi_resolve_brackets): Detect the brackets that are to be
+ processed as neutrals, and don't call bidi_find_bracket_pairs on
+ them. (Bug#18778)
+
+2014-10-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * w32select.c (Fw32_selection_exists_p): Rename from
+ Fx_selection_exists_p.
+ (syms_of_w32select): Adjust accordingly.
+
+ * w16select.c (Fw16_selection_exists_p): Rename from
+ Fx_selection_exists_p.
+ (syms_of_win16select): Adjust accordingly.
+
+ * nsselect.m (ns_get_local_selection): Signal error rather than `quit'.
+ (Fns_own_selection_internal): Tighten scoping.
+ (Fns_selection_exists_p): Rename from Fx_selection_exists_p.
+ (Fns_get_selection): Rename from Fx_get_selection_internal.
+ (Fns_get_selection_internal, Fns_store_selection_internal):
+ Remove functions.
+ (syms_of_nsselect): Adjust accordingly.
+
+2014-10-21 Martin Rudalics <rudalics@gmx.at>
+
+ * w32fns.c (Fw32_frame_menu_bar_size): New function.
+ * w32term.c (x_set_window_size): Account for wrapped menu bar
+ lines when setting up frame height (Bug#15174 and Bug#18720).
+ (w32_add_wrapped_menu_bar_lines): New variable.
+
+2014-10-21 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * xdisp.c (redisplay_window): Re-run pre-redisplay-function after we
+ move point.
+
+2014-10-20 Glenn Morris <rgm@gnu.org>
+
+ * Merge in all changes up to 24.4 release.
+
+2014-10-19 Jan Djärv <jan.h.d@swipnet.se>
+
+ * gtkutil.c (xg_update_menubar, xg_update_menu_item): Only call
+ g_object_notify for label if Gtk+ >= 2.16 (Bug#16522).
+
+ * xterm.h (x_output): Remove net_wm_state_hidden_seen.
+
+ * xterm.c (handle_one_xevent): Check return value from
+ x_handle_net_wm_state, remove net_wm_state_hidden_seen (Bug#18722).
+ (get_current_wm_state): Remove net_wm_state_hidden_seen setting.
+
+ * gtkutil.c (create_dialog): Don't use gtk_dialog_get_action_area on
+ Gt+ >= 3.12, or gtk_misc_set_alignment on Gtk+ >= 3.14 (Bug#18674).
+ (make_widget_for_menu_item): Don't use gtk_misc_set_alignment on
+ Gtk+ >= 3.14 (Bug#18674).
+ (update_frame_tool_bar): Don't use gtk_misc_set_padding on
+ Gtk+ >= 3.14 (Bug#18674).
+
+2014-10-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ * gtkutil.c: Remove no-longer-used code.
+ (xg_update_menubar): Remove unused local and unnecessary call to
+ gtk_menu_item_get_submenu.
+ (XG_TOOL_BAR_PROXY_BUTTON, xg_tool_bar_proxy_callback)
+ (xg_get_tool_bar_widgets, xg_tool_bar_proxy_help_callback)
+ (TOOLBAR_TOP_WIDGET): Remove; no longer used.
+
+2014-10-18 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xfns.c (syms_of_xfns): Remove x-gtk-whole-detached-tool-bar.
+
+ * xterm.h (handlebox_widget): Remove.
+
+ * xmenu.c (set_frame_menubar): Remove GTK block that calls
+ xg_have_tear_offs.
+
+ * gtkutil.h (xg_have_tear_offs): Remove declaration.
+
+ * gtkutil.c (XG_TEXT_CANCEL, XG_TEXT_OPEN, XG_TEXT_OK): New defines
+ to handle Gtk versions.
+ (xg_get_file_with_chooser): Use them.
+ (xg_have_tear_offs, tearoff_remove, tearoff_activate):
+ Remove (create_menus): Remove teroff argument and code.
+ Remove call to gtk_menu_set_title.
+ (xg_update_menubar, xg_update_submenu): Remove tearoff code.
+ Adjust args to create_menus.
+ (xg_tool_bar_menu_proxy, xg_tool_bar_detach_callback)
+ (xg_tool_bar_attach_callback, TOOLBAR_TOP_WIDGET): Remove.
+ (xg_pack_tool_bar): Replace TOOLBAR_TOP_WIDGET, remove detach code.
+ (xg_make_tool_item): Remove detach code.
+ (xg_update_tool_bar_sizes): Replace TOOLBAR_TOP_WIDGET.
+ (find_icon_from_name): New function.
+ (update_frame_tool_bar): Remove GtkStockItem code, move to
+ find_icon_from_name. Let stock be a list of icon names to try.
+ Only use gtk_image_new_from_stock on Gtk+ < 3.10.
+ Replace TOOLBAR_TOP_WIDGET.
+ (free_frame_tool_bar, xg_change_toolbar_position ):
+ Replace TOOLBAR_TOP_WIDGET.
+ (xg_initialize): Remove tearoff code.
+
+2014-10-18 Eli Zaretskii <eliz@gnu.org>
+
+ * xterm.c (x_draw_bar_cursor, x_draw_hollow_cursor): Subtract 1
+ pixel from the window's cursor glyph width, since X renders hollow
+ blocks 1 pixel wider than the 'width' parameter.
+
+ * xdisp.c (get_phys_cursor_geometry): Don't subtract 1 pixel from
+ glyph->pixel_width; this is now done in xterm.c.
+
+ Fix reordering of bracket characters in isolates.
+ * bidi.c (bidi_cache_find): Rename the argument NEUTRALS_OK to
+ RESOLVED_ONLY; when non-zero, return from the cache only fully
+ resolved states. All callers changed.
+ (CANONICAL_EQU): New macro.
+ (PUSH_BPA_STACK): Use it to push onto the BPA stack the canonical
+ equivalent of the paired closing bracket character.
+ (bidi_find_bracket_pairs): Set the bracket_pairing_pos member to
+ the default non-negative value, to be checked later in
+ bidi_resolve_brackets. Use CANONICAL_EQU to test candidate
+ characters against those pushed onto the BPA stack.
+ (bidi_record_type_for_neutral): New function.
+ (bidi_resolve_brackets): Record next_for_neutral and
+ prev_for_neutral when embedding level gets pushed. Force
+ resolution of bracket pairs when entering a level run that was not
+ yet BPA-resolved.
+ (bidi_resolve_neutral): Add assertions before calling
+ bidi_resolve_neutral_1.
+ (bidi_level_of_next_char): Remove the code that attempted to
+ resolve unresolved neutrals; that is now done by
+ bidi_resolve_neutral.
+
+ * w32select.c (owner_callback): Mark with ALIGN_STACK attribute.
+
+2014-10-17 Eli Zaretskii <eliz@gnu.org>
+
+ * xterm.c (x_draw_hollow_cursor): Fix display of hollow cursor on
+ 1-pixel R2L characters.
+ Reported by Dmitry Antipov <dmantipov@yandex.ru>, see
+ http://lists.gnu.org/archive/html/emacs-devel/2014-10/msg00518.html.
+
+2014-10-16 Eli Zaretskii <eliz@gnu.org>
+
+ * bidi.c (bidi_find_bracket_pairs): Avoid a loop that does nothing
+ useful.
+
+2014-10-15 Paul Eggert <eggert@cs.ucla.edu>
+
+ * bidi.c (bidi_find_bracket_pairs): Initialize local var.
+ This pacifies GCC 4.9.1 with --enable-gcc-warnings.
+ It's not clear to me whether the initialization is needed,
+ but it can't hurt so I played it safe.
+
+2014-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * lisp.mk (lisp): Add emacs-lisp/eldoc.elc.
+
+2014-10-15 Eli Zaretskii <eliz@gnu.org>
+
+ Update the bidirectional reordering engine for Unicode 6.3 and 7.0.
+ * bidi.c (bidi_ignore_explicit_marks_for_paragraph_level):
+ Remove variable.
+ (bidi_get_type): Return the isolate initiators and terminator types.
+ (bidi_isolate_fmt_char, bidi_paired_bracket_type)
+ (bidi_fetch_char_skip_isolates, find_first_strong_char)
+ (bidi_find_bracket_pairs, bidi_resolve_brackets): New functions.
+ (bidi_set_sos_type): Rename from bidi_set_sor_type and updated
+ for the new features.
+ (bidi_push_embedding_level, bidi_pop_embedding_level): Update to
+ push and pop correctly for isolates.
+ (bidi_remember_char): Modify to accept an additional argument
+ and record the bidi type according to its value.
+ (bidi_cache_iterator_state): Accept an additional argument to only
+ update an existing state. Handle the new members of struct bidi_it.
+ (bidi_cache_find): Arguments changed: no longer accepts a level,
+ instead accepts a flag telling it whether it is okay to return
+ unresolved neutrals.
+ (bidi_initialize): Initiate and staticpro the bracket-type uniprop
+ table. Initialize new isolate-related members.
+ (bidi_paragraph_init): Some code factored out into
+ find_first_strong_char.
+ (bidi_resolve_explicit_1): Function deleted, its code incorporated
+ into bidi_resolve_explicit.
+ (bidi_resolve_explicit): Support the isolate initiators and
+ terminator. Fix handling of embeddings and overrides according to
+ new UBA requirements. Record information about previously seen
+ characters here (moved from bidi_level_of_next_char).
+ (bidi_resolve_weak): Adapt to changes in struct members.
+ (FLAG_EMBEDDING_INSIDE, FLAG_OPPOSITE_INSIDE, MAX_BPA_STACK)
+ (STORE_BRACKET_CHARPOS, PUSH_BPA_STACK): New macros.
+ (bidi_resolve_neutral): Call bidi_resolve_brackets to handle the
+ paired bracket resolution. Handle isolate initiators and
+ terminator.
+ (bidi_type_of_next_char): Remove unneeded code for BN limit.
+ (bidi_level_of_next_char): Move the code that records information
+ about previous characters to bidi_resolve_explicit. Fix logic of
+ resolving neutrals and make sure their cache entries are updated.
+ Remove now unneeded special handling of PDF level.
+
+ * dispextern.h (struct glyph): Enlarge the width of resolved_level.
+ (BIDI_MAXDEPTH): New macro, renamed from BIDI_MAXLEVEL and
+ enlarged per Unicode 6.3.
+ (enum bidi_bracket_type_t): New data type.
+ (struct bidi_saved_info): Leave only 2 type members out of 4.
+ Remove bytepos.
+ (struct bidi_stack): Add members necessary to support isolating
+ sequences.
+ (struct bidi_it): Add new members necessary to support isolating
+ sequences and bracket pair resolution.
+
+ * xdisp.c (Fbidi_resolved_levels): New function.
+ (syms_of_xdisp): Defsubr it.
+ (append_glyph, append_composite_glyph, produce_image_glyph)
+ (append_stretch_glyph, append_glyphless_glyph): Convert aborts to
+ assertions.
+ (syms_of_xdisp) <inhibit-bidi-mirroring>: New variable.
+
+ * term.c (append_glyph, append_composite_glyph)
+ (append_glyphless_glyph): Convert aborts to assertions.
+
+ * .gdbinit (pgx): Display the character codepoint, resolved level,
+ and bidi type also for glyphless glyphs.
+
+2014-10-15 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Avoid unwanted point motion in Fline_beginning_position.
+ * lisp.h (scan_newline_from_point): Add prototype.
+ * search.c (scan_newline_from_point): New function, refactored from...
+ * cmds.c (Fforward_line): ...adjusted user.
+ * editfns.c (Fline_beginning_position): Use scan_newline_from_point
+ and simplify the former since the latter doesn't move point.
+
+2014-10-14 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Cleanup terminal handling code.
+ * dispextern.h (get_named_tty): Remove prototype but...
+ * termhooks.h (get_named_terminal): ...resurrect it under
+ more meaningful name.
+ (get_terminal): Likewise, but with...
+ (decode_live_terminal): ...this name.
+ (decode_tty_terminal): Add prototype.
+ * term.c (get_tty_terminal): Remove.
+ (get_named_tty): Remove.
+ (Ftty_display_color_p, Ftty_display_color_cells, Ftty_type)
+ (Fcontrolling_tty_p, Fsuspend_tty, Fresume_tty):
+ Use decode_tty_terminal.
+ (Ftty_no_underline, Ftty_top_frame): Use decode_live_terminal.
+ * terminal.c (get_terminal): Refactor to...
+ (decode_terminal, decode_live_terminal): ...new functions.
+ (decode_tty_terminal): Replacement for get_tty_terminal.
+ (get_named_terminal): Likewise for get_named_tty.
+ * coding.c (Fset_terminal_coding_system_internal)
+ (Fterminal_coding_system, Fset_keyboard_coding_system_internal):
+ (Fkeyboard_coding_system):
+ * composite.c (Fcomposition_get_gstring):
+ * dispnew.c (Fsend_string_to_terminal):
+ * frame.c (Fmake_terminal_frame):
+ * nsfns.m (check_ns_display_info):
+ * w32fns.c, xfns.c (check_x_display_info):
+ * xselect.c (frame_for_x_selection): Use decode_live_terminal.
+ * keyboard.c (handle_interrupt_signal, handle_interrupt)
+ (Fset_quit_char): Use get_named_terminal.
+ (Fset_output_flow_control, Fset_input_meta_mode):
+ Use decode_tty_terminal.
+
+2014-10-13 Eli Zaretskii <eliz@gnu.org>
+
+ * w32term.h (ALIGN_STACK): Use _WIN64, not _W64, to distinguish
+ between 32-bit and 64-bit MinGW builds. (Bug#18699)
+
+2014-10-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix port to Debian GNU/kFreeBSD 7 (wheezy) (Bug#18666).
+ * process.c (accept4) [!HAVE_ACCEPT4]: New macro.
+
+2014-10-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * frame.c (Fmouse_pixel_position): Call Vmouse_position_function
+ (bug#18638).
+
+2014-10-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ * editfns.c (dump_tz_string): No longer const.
+ It might be modified.
+
+ * nsmenu.m (clear): Assume OS X 10.6 or later.
+
+2014-10-12 Jan Djärv <jan.h.d@swipnet.se>
+
+ * unexmacosx.c: Remove include ppc/reloc.h.
+ (unrelocate, copy_dysymtab): Remove PPC code.
+ (rebase_reloc_address): Remove, only used for PPC:
+
+ * nsterm.m: Always include macfont.h on COCOA.
+ (ns_update_auto_hide_menu_bar, ns_draw_fringe_bitmap)
+ (ns_dumpglyphs_image, ns_check_menu_open)
+ (applicationDidFinishLaunching)
+ (antialiasThresholdDidChange:)
+ (keyDown:, toggleFullScreen:, setPosition:portion:whole:):
+ Remove checks for OSX <= 10.5/10.6.
+ (changeFont:): Use macfont on COCOA, nsfont on GNUSTEP.
+ (syms_of_nsterm): Call syms_of_macfont on COCOA, syms_of_nsfont on
+ GNUSTEP.
+
+ * nsterm.h (MAC_OS_X_VERSION_10_4, MAC_OS_X_VERSION_10_5): Remove.
+ (NS_HAVE_NSINTEGER): Remove block.
+ Remove >= OSX 10.6 tests.
+
+ * nsmenu.m (NSMenuDidBeginTrackingNotification): Remove.
+ (x_activate_menubar, trackingNotification:): Remove check for
+ OSX >= 10.5.
+ (menuNeedsUpdate:): Remove check for OSX < 10.5.
+
+ * nsimage.m (allocInitFromFile:): Remove code for OSX < 10.6.
+
+ * nsfns.m: Always include macfont.h on COCOA.
+ (ns_filename_from_panel, ns_directory_from_panel)
+ (Fx_create_frame, Fns_popup_font_panel, ns_run_file_dialog)
+ (Fns_read_file_name, Fns_list_services): Remove code for OSX < 10.6
+
+ * macfont.m: Remove >= 1050 check.
+ (macfont_create_family_with_symbol)
+ (macfont_get_glyph_for_character)
+ (mac_font_get_glyphs_for_variants)
+ (mac_ctfont_create_available_families, syms_of_macfont):
+ Remove code for OSX < 10.6.
+ (mac_font_family_group, mac_font_family_compare): Remove, only used
+ for OSX < 10.6.
+
+ * macfont.h (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_FORMAT_BITMAP)
+ (mac_font_copy_non_synthetic_table): Remove versions for OSX < 10.6
+
+ * Makefile.in: Replace nsfont.o macfont.o with ns_fontfile in
+ comment.
+
+2014-10-12 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix putenv race conditions with undefined behavior (Bug#8705).
+ Do all putenv calls before Emacs creates any threads.
+ Use a safer way to modify the TZ environment variable in the
+ presence of multiple threads. For further thread-safety,
+ prefer localtime_r and gmtime_r to localtime and gmtime,
+ and prefer struct tm's tm_gmtoff (if available) to calling
+ both localtime_r and gmtime_r.
+ * dbusbind.c (Fdbus__init_bus): Move xputenv call from here ...
+ (init_dbusbind): ... to this new function.
+ * emacs.c (main) [HAVE_DBUS]: Call it before creating threads.
+ * xterm.c (x_term_init): Move xputenv call from here ...
+ (init_xterm): ... to this new function.
+ * emacs.c (main) [USE_GTK]: Call it before creating threads.
+ * editfns.c (HAVE_TM_GMTOFF): Default to false.
+ (dump_tz_string): New constant.
+ (init_editfns): Use it. This centralizes the dump_tz stuff.
+ Call set_time_zone_rule here, so that its xputenv is done
+ before Emacs goes multithreaded.
+ (mktime_z) [!HAVE_TZALLOC]: New function, which is typically
+ thread-safe enough for Emacs.
+ (format_time_string, Fdecode_time, Fcurrent_time_string)
+ (Fcurrent_time_zone):
+ Prefer localtime_r and gmtime_r, which are more thread-safe, to
+ localtime and gmtime. Remove now-unnecessary calls to block_input.
+ (tm_gmtoff): New static function.
+ (Fdecode_time, Fcurrent_time_zone): Use it.
+ (Fencode_time): Use mktime_z, for better thread-safety.
+ (set_time_zone_rule): Now static. Rewrite to be mostly thread-safe,
+ i.e., not quite thread-safe but good enough for Emacs typical usage.
+ Do not reclaim storage that is in the environment; let it leak.
+ Always call tzset, since localtime_r does not.
+ * emacs.c (dump_tz, Fdump_emacs) [HAVE_TZSET]: Remove dump_tz stuff.
+ This is now done in init_editfns.
+ * systime.h (mktime_z, timezone_t, tzalloc, tzfree) [!HAVE_TZALLOC]:
+ New macros and declarations, for platforms lacking tzalloc & friends.
+
+2014-10-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ * lisp.h (USE_STACK_STRING): Now true only if USE_STACK CONS.
+ On x86 platforms this works around GCC bug 63495
+ <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63495>,
+ and more generally should fix a portability problem in Emacs.
+ Reported by Stefan Monnier in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-10/msg00261.html
+
+2014-10-08 Leo Liu <sdl.web@gmail.com>
+
+ Enhance terpri to allow conditionally output a newline. (Bug#18652)
+ * keymap.c (describe_vector_princ):
+ * keyboard.c (Fcommand_error_default_function): Adapt to change to
+ Fterpri.
+
+ * print.c (printchar_stdout_last): Declare.
+ (printchar): Record the last char written to stdout.
+ (Fterpri): Add optional argument ENSURE.
+
+2014-10-08 Eli Zaretskii <eliz@gnu.org>
+
+ * w32inevt.c (maybe_generate_resize_event): Pass non-zero as the
+ DELAY argument to change_frame_size, so that the frame size
+ changes, if any are needed, are delayed until the next redisplay.
+ This is to avoid a too early QUIT inside change_frame_size, when
+ it calls Lisp in frame_windows_min_size, in case one of the events
+ we've read sets the quit-flag. (Bug#18649)
+
+ * w32fns.c (check_x_display_info): Accept terminal objects as
+ argument, to follow what xfns.c does.
+
+2014-10-07 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in ($(srcdir)/macuvs.h)
+ ($(lispsource)/international/charprop.el): Add explicit FORCE.
+
+2014-10-07 Eli Zaretskii <eliz@gnu.org>
+
+ * decompress.c (init_zlib_functions): Move the message about zlib
+ being unavailable from here...
+ (Fzlib_decompress_region): ...to here. (Bug#18650)
+
+2014-10-07 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * font.c (Ffont_get_glyphs): Use validate_subarray and fix
+ the case where an optional string is used. Adjust docstring.
+
+2014-10-06 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * lisp.mk (lisp): Remove w32-common-fns.elc.
+
+2014-10-05 Paul Eggert <eggert@cs.ucla.edu>
+
+ * keyboard.c (Qleft, Qright): Remove duplicate definitions (Bug#9927).
+ These were already defined in buffer.c, and the duplicate
+ definitions cause problems on platforms like 'gcc -fno-common'.
+ Reported by Peter Dyballa in: http://bugs.gnu.org/9927#137
+
+2014-10-05 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (updateFrameSize:): Only call update_frame_tool_bar
+ if toolbar is visible.
+
+ * nsfont.m (nsfont_draw): Use CGFloat for GNUstep newer than
+ 0.23 (Bug#18030).
+
+ * nsterm.m (syms_of_nsterm): ns-use-fullscreen-animation is new.
+ (toggleFullScreen:): Use ns-use-fullscreen-animation for animate.
+ (ns_select, ns_read_socket): Use unwind_protect to decrease
+ apploopnr (Bug#18345).
+ (ns_draw_window_cursor): Adjust y for hbar cursor only if smaller than
+ line height (Bug#17977).
+
+ * macfont.m: Fix indentation and import changes from macport 24.3.94.
+ (macfont_closest_traits_index): New function.
+ (macfont_closest_traits_index_p): Rename from
+ macfont_closest_traits_index.
+ (macfont_list): Use macfont_closest_traits_index_p.
+
+2014-10-05 K. Handa <handa@gnu.org>
+
+ * coding.c (detect_coding_iso_2022): Set coding->rejected
+ correctly when an invalid escape sequence is found (Bug#18610).
+
+2014-10-04 Jan Djärv <jan.h.d@swipnet.se>
+
+ * gtkutil.c (create_menus): Only add tearoffs to empty menus.
+ (xg_update_submenu): Remove has_tearoff_p, pass 1 to create_menus
+ for add_tearoff_p.
+
+2014-10-04 Martin Rudalics <rudalics@gmx.at>
+
+ * buffer.c (scroll_bar_width, scroll_bar_height):
+ Fix doc-strings.
+ * window.c (Fset_window_scroll_bars): Fix doc-string.
+ (Fwindow_scroll_bars): Have it return what the doc-string says.
+
+2014-10-03 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (move_it_by_lines): Call reseat_1 after moving the
+ iterator backwards, to resync the bidi iterator. (Bug#18584)
+
+2014-10-03 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Consistently use min and max macros from lisp.h.
+ * coding.c (min, max):
+ * font.c (MAX):
+ * unexhp9k800.c (min):
+ * unexw32.c (min, max): Use definitions from lisp.h.
+ * regex.c (MAX, MIN) [!emacs]: Define own max and min as such.
+ Adjust users.
+ * gmalloc.c (min): Tiny style change.
+
+ * fileio.c (emacs_readlinkat, Finsert_file_contents):
+ * w32fns.c, xfns.c (x_create_tip_frame): Use AUTO_STRING.
+
+2014-10-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix x-focus-frame bug with "Not an in-range integer" (Bug#18586).
+ * xselect.c (X_SHRT_MAX, X_SHRT_MIN, X_LONG_MAX, X_LONG_MIN)
+ (X_ULONG_MAX): Move these macros to xterm.h.
+ (x_fill_property_data): Be more generous about allowing either
+ signed or unsigned data of the appropriate width.
+ * xterm.h (x_display_set_last_user_time): New function.
+ All setters of last_user_time changd to use this function.
+ If ENABLE_CHECKING, check that the times are in range.
+
+2014-10-02 Eli Zaretskii <eliz@gnu.org>
+
+ * dispnew.c (adjust_decode_mode_spec_buffer): Use 'int' instead of
+ 'ssize_t'. Suggested by Paul Eggert <eggert@cs.ucla.edu>.
+
+2014-10-02 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xfaces.c (Finternal_set_lisp_face_attribute): Don't try to
+ make a font_object from a tty frame (Bug#18573).
+ (Finternal_set_lisp_face_attribute): Add FIXME comment.
+
+2014-10-02 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * alloc.c (mark_overlay): Assume that overlay boundaries are
+ always markers. Add comment.
+ * lread.c (read_internal_start): Use convenient validate_subarray.
+ Adjust docstring.
+ (Fread_from_string): Adjust docstring.
+
+2014-10-02 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * lisp.h: Fix up compilation for USE_STACK_LISP_OBJECTS=false.
+
+ * nsselect.m (ns-own-selection-internal, ns-disown-selection-internal):
+ Rename from the "x-" prefix.
+
+2014-10-01 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * xselect.c (selection-converter-alist): Fix docstring.
+
+2014-10-01 Eli Zaretskii <eliz@gnu.org>
+
+ * w32proc.c (sys_spawnve): Avoid modification of the CMDNAME
+ argument passed by the caller, when we mirror all slashes into
+ backslashes.
+
+2014-10-01 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * gtkutil.c (xg_set_toolkit_horizontal_scroll_bar_thumb):
+ Resurrect old code and fix compilation with GTK < 2.13.6.
+
+2014-10-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use AUTO_CONS instead of SCOPED_CONS, etc.
+ * frame.h (AUTO_FRAME_ARG): Rename from FRAME_PARAMETER.
+ * lisp.h (AUTO_CONS): Rename from scoped_cons.
+ (AUTO_LIST1): Rename from scoped_list1.
+ (AUTO_LIST2): Rename from scoped_list2.
+ (AUTO_LIST3): Rename from scoped_list3.
+ (AUTO_LIST4): Rename from scoped_list4.
+ (AUTO_STRING): Rename from SCOPED_STRING.
+ * frame.h (AUTO_FRAME_ARG):
+ * lisp.h (AUTO_CONS, AUTO_LIST1, AUTO_LIST2, AUTO_LIST3)
+ (AUTO_LIST4, AUTO_STRING):
+ Prepend a new argument 'name'.
+ Declare a variable instead of yielding a value.
+ All uses changed.
+ * lisp.h (STACK_CONS, AUTO_CONS_EXPR): New internal macros.
+
+2014-09-30 Eli Zaretskii <eliz@gnu.org>
+
+ * w32fns.c (w32_createwindow): Accept an additional argument, an
+ array of 2 values specifying the coordinates of the frame's
+ top-left corner. Use these values instead of calling x_get_arg,
+ which can cons Lisp objects, and therefore cannot be called except
+ from the main thread. Remove redundant tests for the default
+ values.
+ (my_create_window): Move the calculation of the coordinates of the
+ frame's top-left edge here. Pass them to the input thread via the
+ second parameter of the WM_EMACS_CREATEWINDOW message.
+ See http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00892.html
+ for the details.
+
+2014-09-30 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (cursor_row_fully_visible_p): Update commentary.
+ (redisplay_window): Treat the frame's frozen_window_starts flag
+ the same way as the optional_new_start flag for the window: only
+ obey it if the glyph row showing point will be fully visible.
+ Likewise when the window start is in a continuation line. If,
+ after trying everything under the 'force_start' label, point is
+ still not fully visible, give up and scroll the window.
+ Add debugging traces. (Bug#18545)
+
+ * window.c (Frecenter): Set the window's redisplay flag.
+
+2014-09-30 Eli Zaretskii <eliz@gnu.org>
+
+ * w32term.c (w32_read_socket): Don't use frame dimensions for
+ resizing if GetClientRect returned an empty (0, 0, 0, 0)
+ rectangle. Check the return value of GetClientRect, and don't use
+ the results if it didn't succeed.
+
+ * dispnew.c (change_frame_size_1): Recompute the frame dimensions
+ in columns and lines after correcting the pixel dimensions in
+ check_frame_size.
+ (adjust_decode_mode_spec_buffer): Add assertion to avoid passing
+ negative values to xrealloc. (Bug#18528)
+
+2014-09-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ * alloc.c: Remove now-unnecessary check.
+ Suggested by Dmitry Antipov in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00891.html
+
+ * xterm.c (x_term_init): Allocate temps on stack, not on heap.
+
+ * frame.c (x_set_frame_parameters): Port --enable-gcc-warnings
+ to Ubuntu 14.04.1 x86-64.
+
+ Simplify stack-allocated Lisp objects, and make them more portable.
+ The build_local_string macro was used in two ways: (1) string
+ literals for which scoped allocation suffices, and (2) file name
+ components, where it's not safe in general to assume bounded-size
+ ASCII data. Simplify by defining a new macro SCOPED_STRING that
+ allocates a block-scope string, and by using SCOPED_STRING for (1)
+ and build_string for (2). Furthermore, actually use stack
+ allocation only for objects known to have sufficient alignment.
+ This simpler implementation means Emacs can make
+ USE_STACK_LISP_OBJECTS the default unless GC_MARK_STACK !=
+ GC_MAKE_GCPROS_NOOPS.
+ * lisp.h (GCALIGNED): Align even if !USE_STACK_LISP_OBJECTS,
+ for fewer differences among implementations.
+ (struct Lisp_String): Now GCALIGNED.
+ (USE_STACK_LISP_OBJECTS): Default to true, since the
+ implementation no longer insists on a nonempty GCALIGNED.
+ But make it false if GC_MARK_STACK != GC_MAKE_GCPROS_NOOPS.
+ (SCOPED_CONS_INITIALIZER): Remove, since it's no longer needed
+ separately. Move definiens to scoped_cons. The old definition
+ was incorrect when GCALIGNED was defined to be empty.
+ (union Aligned_String): New type.
+ (USE_STACK_CONS, USE_STACK_STRING): New constants, so that the
+ implementation ports to compilers that don't align strictly enough.
+ Don't worry about the union sizes; it's not worth bothering about.
+ (scoped_cons, scoped_list1, scoped_list3, scoped_list4):
+ Rewrite using USE_STACK_CONS.
+ (scoped_cons): Assume the use of union Aligned_Cons.
+ (lisp_string_size, make_local_string, build_local_string): Remove.
+ Unless otherwise specified, all callers of build_local_string
+ changed to use SCOPED_STRING.
+ (SCOPED_STRING): New macro.
+ * data.c (wrong_choice):
+ * menu.c (single_menu_item):
+ * process.c (Fformat_network_address):
+ Hoist use of SCOPED_STRING out of a scope, so that its returned
+ object lives long enough.
+ * fileio.c (Fexpand_file_name): Use build_string, not SCOPED_STRING,
+ as the string might be long or might not be ASCII.
+
+2014-09-29 Eli Zaretskii <eliz@gnu.org>
+
+ * msdos.c (internal_terminal_init): Bump version to 25.
+
+2014-09-29 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Keep stack-allocated Lisp objects fast rather than versatile.
+ * lisp.h (union Aligned_Cons) [!GCALIGNED]: Define as such.
+ (SCOPED_CONS_INITIALIZER): New macro.
+ (scoped_cons) [USE_STACK_LISP_OBJECTS]: Use it.
+ (USE_LOCAL_ALLOCA): Remove.
+ (local_cons, local_list1, local_list2, local_list3, local_list4):
+ Remove. Stack overflow checking makes them too slow.
+ (make_local_vector): Likewise. Also we just don't have enough
+ users for it.
+ (enum LISP_STRING_OVERHEAD): Remove.
+ (local_string_init, local_vector_init): Remove prototypes.
+ (make_local_string, build_local_string): Redesign to target short
+ compile-time string constants, fall back to regular string allocation
+ where appropriate.
+ (lisp_string_size): New function.
+ (verify_ascii) [ENABLE_CHECKING]: Add prototype.
+ * alloc.c (local_string_init, local_vector_init): Remove.
+ (verify_ascii) [ENABLE_CHECKING]: New function.
+ * buffer.c, charset.c, chartab.c, data.c, editfns.c, emacs.c, fileio.c:
+ * fns.c, font.c, fontset.c, frame.c, keyboard.c, keymap.c, lread.c:
+ * menu.c, minibuf.c, process.c, textprop.c, xdisp.c, xfns.c, xfont.c:
+ * xselect.c, xterm.c: All related users changed.
+
+2014-09-28 Ken Brown <kbrown@cornell.edu>
+
+ * sheap.c (bss_sbrk_buffer_beg): Remove redundant variable.
+ * gmalloc.c [CYGWIN]: Adapt to change in sheap.c.
+
+2014-09-27 Ken Brown <kbrown@cornell.edu>
+
+ Fix implementation of HYBRID_MALLOC on Cygwin.
+ * sheap.c (bss_sbrk_buffer_end): Cast to void *.
+ (bss_sbrk_buffer_beg): New variable. Use it...
+ * gmalloc.c (ALLOCATED_BEFORE_DUMPING) [CYGWIN]: ...here, to fix
+ incorrect definition.
+
+2014-09-27 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keyboard.c (track-mouse): Rename to internal--track-mouse.
+ Make it into a function and change arg to be a function.
+
+ * lisp.mk (lisp): Add elisp-mode.elc.
+
+2014-09-26 Paul Eggert <eggert@cs.ucla.edu>
+
+ * xfns.c (x_default_scroll_bar_color_parameter):
+ Use USE_LOCAL_ALLOCA only if USE_TOOLKIT_SCROLL_BARS,
+ to pacify --enable-gcc-warnings in non-scrollbar builds.
+
+2014-09-26 Ken Brown <kbrown@cornell.edu>
+
+ * w32term.h (ALIGN_STACK): Fix the cpp condition.
+
+2014-09-25 Eli Zaretskii <eliz@gnu.org>
+
+ * lisp.h (USE_STACK_LISP_OBJECTS): Default to false for 32-bit
+ MinGW builds that use GCC before 4.2.
+
+ Default to stack objects on DOS_NT platforms as well.
+ * w32term.h (ALIGN_STACK) [__GNUC__]: Define to
+ __attribute__((force_align_arg_pointer)) for GCC 4.2 and later.
+
+ * lisp.h (USE_STACK_LISP_OBJECTS): Remove the !DOS_NT condition.
+
+ * w32proc.c (enum_locale_fn, enum_codepage_fn): Add the
+ ALIGN_STACK attribute.
+
+ * w32fns.c (w32_monitor_enum): Add the ALIGN_STACK attribute.
+
+ * w32uniscribe.c (add_opentype_font_name_to_list): Add the
+ ALIGN_STACK attribute.
+
+ * w32font.c (add_font_name_to_list, add_font_entity_to_list)
+ (add_one_font_entity_to_list): Add the ALIGN_STACK attribute.
+
+2014-09-25 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.c (frame_inhibit_resize):
+ * widget.c (EmacsFrameResize):
+ * window.c (resize_frame_windows, Fset_window_configuration):
+ * xdisp.c (expose_frame):
+ * xfns.c (x_change_tool_bar_height):
+ * xmenu.c (update_frame_menubar):
+ * xterm.c (handle_one_xevent, x_new_font, x_set_window_size_1):
+ Remove code left dead after 2014-07-27 changes.
+
+2014-09-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix local_cons etc. to not exhaust the stack when in a loop.
+ Problem reported in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00696.html
+ * buffer.c (Fother_buffer, other_buffer_safely, init_buffer):
+ * charset.c (load_charset_map_from_file, Ffind_charset_region)
+ (Ffind_charset_string):
+ * chartab.c (uniprop_encode_value_numeric, uniprop_table):
+ * data.c (wrong_range):
+ * editfns.c (Fpropertize, format2):
+ * emacs.c (init_cmdargs, decode_env_path):
+ * fileio.c (auto_save_error):
+ * fns.c (Fyes_or_no_p):
+ * font.c (font_style_to_value, font_parse_xlfd)
+ (font_parse_family_registry, font_delete_unmatched)
+ (font_add_log):
+ * fontset.c (Fset_fontset_font):
+ * frame.c (x_get_arg):
+ * keyboard.c (echo_dash, safe_run_hooks_error, parse_menu_item)
+ (read_char_minibuf_menu_prompt):
+ * keymap.c (silly_event_symbol_error, describe_vector):
+ * lread.c (load_warn_old_style_backquotes):
+ * menu.c (single_menu_item):
+ * minibuf.c (Fread_buffer):
+ * process.c (status_message, Fformat_network_address)
+ (server_accept_connection):
+ * textprop.c (copy_text_properties):
+ * xdisp.c (Fcurrent_bidi_paragraph_direction):
+ * xfns.c (x_default_scroll_bar_color_parameter):
+ * xfont.c (xfont_open):
+ * xselect.c (x_clipboard_manager_error_1):
+ * xterm.c (x_term_init):
+ Put USE_LOCAL_ALLOCA at the start of the function.
+ * fns.c (maybe_resize_hash_table): Use build_string instead of
+ build_local_string, since we'd otherwise need a conditional
+ USE_LOCAL_ALLOCA here, but this is just debugging output and is
+ not worth the bother of optimization.
+ * font.c (font_delete_unmatched): Remove by-hand code that
+ observed MAX_ALLOCA limit, since it's now done automatically.
+ * keymap.c (Fsingle_key_description): Put USE_SAFE_ALLOCA at top,
+ since build_local_string needs its sa_alloc.
+ * lisp.h (lisp_word_count): New function.
+ (SAFE_ALLOCA_LISP): Use it.
+ (USE_LOCAL_ALLOCA): New macro.
+ (local_cons, make_local_vector, make_local_string):
+ Observe the MAX_ALLOCA limit.
+ (LISP_STRING_OVERHEAD): New constant.
+ (make_local_string): Use it.
+
+2014-09-24 Paul Eggert <eggert@cs.ucla.edu>
+
+ Default to stack objects on non-GNU/Linux, non-DOS_NT platforms.
+ * lisp.h (USE_STACK_LISP_OBJECTS): Also default to true
+ if !defined DOS_NT && !defined GNU_LINUX. I've tested this on AIX
+ and Solaris and it's likely to work on similar platforms.
+
+ Avoid signed integer overflow when converting Time to ptrdiff_t.
+ * keyboard.c (INPUT_EVENT_POS_MAX, INPUT_EVENT_POS_MIN):
+ New macros.
+ (position_to_Time, Time_to_position): New functions.
+ (gen_help_event, kbd_buffer_get_event): Use them.
+ * systime.h (Time) [emacs && !HAVE_X_WINDOWS]:
+ Go back to plain 'unsigned long', so that 'Time' is the same
+ for both X and non-X builds; this is less likely to cause surprise.
+ * termhooks.h: Remove compile-time check that Time and ptrdiff_t
+ are the same size; this is no longer required.
+
+ * keyboard.c (make_lispy_event): Avoid unnecessary tests
+ of bit 28 and of whether an unsigned value is negative.
+ This simplifies the code a bit, and pacifies clang 3.4.
+
+2014-09-24 Eli Zaretskii <eliz@gnu.org>
+
+ * systime.h (Time): Define as size_t, to be consistent with 64-bit
+ Windows builds, where 'long' is a 32-bit type.
+
+ * w32inevt.h (w32_console_mouse_position): Update the argument
+ types to use 'Time'.
+
+ * w32term.c (w32_mouse_position)
+ (x_horizontal_scroll_bar_report_motion)
+ (x_scroll_bar_report_motion): Update the argument types to use
+ 'Time'.
+
+2014-09-24 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * termhooks.h (enum scroll_bar_part): Begin from 0 to allow...
+ (struct input_event): ...unsigned bitfields. Likewise for
+ `event_kind' member. Prefer unsigned for `code' and 'modifiers'.
+ Use `timestamp' for HELP_EVENT position. Add compile-time assert.
+ * keyboard.c (gen_help_event, kbd_buffer_store_help_event)
+ (kbd_buffer_get_event): Adjust users.
+ (scroll_bar_parts): Add Qnil to match scroll_bar_nowhere.
+ (make_scroll_bar_position): New function, refactored out of...
+ (make_lispy_event): ...adjusted user.
+ * nsterm.h (EmacsScroller): Use enum for `last_hit_part' member.
+ * nsterm.m (ns_mouse_position, mouseUp):
+ * term.c (term_mouse_position):
+ * w32inevt.c (w32_console_mouse_position):
+ * w32term.c (w32_mouse_position):
+ * xterm.c (XTmouse_position): Use scroll_bar_above_handle.
+ (x_send_scroll_bar_event, xm_scroll_callback, xg_scroll_callback):
+ Prefer enum and explicit enum members to integers and numeric values.
+
+ * chartab.c (uniprop_encode_value_numeric):
+ * font.c (font_style_to_value): Use make_local_vector.
+ (font_delete_unmatched): Use local_cons but respect MAX_ALLOCA.
+ * keymap.c (append_key): Use scoped_list1.
+
+ * lisp.h (USE_STACK_LISP_OBJECTS): Enable by default if GNU_LINUX
+ && __GNUC__ && !__clang__. Mention known problems. Adjust comment.
+
+2014-09-24 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix some slow uses and misuses of strcat.
+ * doc.c (get_doc_string):
+ * gtkutil.c (get_utf8_string):
+ * xsmfns.c (x_session_initialize):
+ Avoid recomputation of string length.
+ * ftfont.c (ftfont_spec_pattern):
+ * xfns.c (xic_create_fontsetname):
+ Don't assume output buffer is initially zero.
+
+2014-09-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ * lisp.h (lispstpcpy): Rename from lispstrcpy, and act like stpcpy.
+ All callers changed.
+ * xterm.c (x_term_init): Use new functionality to avoid two needs
+ to compute a string length.
+
+ * dispextern.h, xdisp.c (window_box_right_offset): Now static.
+
+2014-09-23 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Use known length of a Lisp string to copy it faster.
+ * lisp.h (lispstrcpy): New function. Add comment.
+ * callproc.c (child_setup):
+ * dbusbind.c (xd_append_arg):
+ * doc.c (get_doc_string):
+ * font.c (Ffont_xlfd_name):
+ * frame.c (xrdb_get_resource):
+ * process.c (Fmake_network_process, network_interface_info):
+ * w32fns.c (Fx_open_connection):
+ * w32proc.c (sys_spawnve):
+ * xfns.c (select_visual):
+ * xfont.c (xfont_list):
+ * xsmfns.c (x_session_initialize):
+ * xterm.c (x_term_init): Use it.
+
+2014-09-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix SAFE_ALLOCA to not exhaust the stack when in a loop.
+ Reported by Dmitry Antipov in thread leading to:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00713.html
+ This patch fixes only SAFE_ALLOCA, SAFE_NALLOCA, and SAFE_ALLOCA_LISP;
+ the experimental local_* macros enabled by USE_LOCAL_ALLOCATORS
+ remain unfixed.
+ * callproc.c (call_process): Save and restore sa_avail.
+ * lisp.h (USE_SAFE_ALLOCA): Define sa_avail.
+ (AVAIL_ALLOCA): New macro.
+ (SAFE_ALLOCA, SAFE_NALLOCA, SAFE_ALLOCA_LISP):
+ Use it, and check against sa_avail rather than MAX_ALLOCA.
+
+2014-09-22 Dmitry Antipov <dmantipov@yandex.ru>
+
+ On OSX, do not free font-specific data more than once (Bug#18501).
+ * macfont.m (macfont_close): Release and free font-specific data
+ only if it wasn't previously freed.
+
+2014-09-22 David Caldwell <david@porkrind.org> (tiny change)
+
+ * unexmacosx.c (dump_it): Improve error message.
+
+2014-09-22 Juri Linkov <juri@jurta.org>
+
+ * image.c (imagemagick_load_image): Add delay to imagemagick metadata.
+ (Bug#10747, bug#18334)
+
+2014-09-22 Eli Zaretskii <eliz@gnu.org>
+
+ * frame.c (Fmouse_position, Fset_mouse_position): Clarify the
+ units in which the position is measured. (Bug#18493)
+
+ * xdisp.c (redisplay_internal): Force redisplay of all windows
+ that show a buffer whose narrowing has changed. (Bug#18490)
+
+2014-09-22 Eli Zaretskii <eliz@gnu.org>
+
+ * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor):
+ * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor): In R2L
+ lines, draw the hollow-box and hbar cursors on the right side of
+ cursor-glyph. Thanks to martin rudalics <rudalics@gmx.at> for
+ testing on X.
+
+ * xterm.c (x_draw_stretch_glyph_string):
+ * w32term.c (x_draw_stretch_glyph_string): Fix a thinko that
+ caused the block cursor to disappear on a TAB in R2L lines in
+ every window except the leftmost one. Reported by Martin Rudalics
+ <rudalics@gmx.at>.
+
+2014-09-22 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Always use matched specpdl entry to record call arguments (Bug#18473).
+ * lisp.h (record_in_backtrace): Adjust prototype.
+ * eval.c (record_in_backtrace): Return current specpdl level.
+ (set_backtrace_args, set_backtrace_nargs): Merge. Adjust all users.
+ (eval_sub, Ffuncall): Record call arguments in matched specpdl
+ entry and use that entry in call to backtrace_debug_on_exit.
+ (apply_lambda): Likewise. Get current specpdl level as 3rd arg.
+ (do_debug_on_call): Get current specpdl level as 2nd arg.
+
+ Prefer ptrdiff_t to int and avoid integer overflows.
+ * fileio.c (make_temp_name):
+ * font.c (font_parse_family_registry): Avoid integer
+ overflow on string size calculation.
+ * data.c (Faset): Likewise for byte index.
+
+2014-09-22 Eli Zaretskii <eliz@gnu.org>
+
+ Fix display of R2L lines in partial-width windows.
+ * xdisp.c (init_iterator): Don't use it->bidi_p before it is
+ assigned the correct value.
+ (extend_face_to_end_of_line): Account for truncation and
+ continuation glyphs in R2L rows when one of the fringes is not
+ displayed.
+ (display_line): Don't assign negative X offset to a row if we are
+ going to produce a truncation glyph for it. When handling
+ truncated R2L rows, consider the width of the left fringe instead
+ of the right one.
+ (produce_special_glyphs): Fix bogus assignments.
+
+2014-09-22 Eli Zaretskii <eliz@gnu.org>
+
+ * fileio.c (Fexpand_file_name) [DOS_NT]: Make sure newdirlim is
+ always set to a valid value. Make sure the size passed to alloca
+ is always positive. (Bug#18516)
+
+2014-09-22 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Avoid extra call to oblookup when interning symbols.
+ * lisp.h (intern_driver): Add prototype.
+ * lread.c (intern_driver): New function.
+ (intern1, intern_c_string_1, Fintern):
+ * font.c (font_intern_prop):
+ * w32font.c (intern_font_name): Use it.
+
+2014-09-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ Minor improvements to new stack-allocated Lisp objects.
+ * frame.h (FRAME_PARAMETER):
+ Prefer scoped_list1 to local_list1 where either would do.
+ * lisp.h (scoped_list4): New macro.
+ (local_cons, local_list1, local_list2, local_list3, local_list4)
+ (make_local_vector, make_local_string, build_local_string):
+ Prefer functions to macros where either would do.
+ * xdisp.c (build_desired_tool_bar_string):
+ Prefer scoped_list4 to local_list4 where either would do.
+
+2014-09-18 Dmitry Antipov <dmantipov@yandex.ru>
+
+ More and more stack-allocated Lisp objects if USE_LOCAL_ALLOCATORS.
+ * lisp.h (local_list4) [USE_LOCAL_ALLOCATORS]: New macro.
+ [!USE_LOCAL_ALLOCATORS]: Fall back to regular list4.
+ * frame.h (FRAME_PARAMETER): New macro.
+ * dispnew.c (init_display):
+ * fontset.c (Fset_fontset_font):
+ * frame.c (x_default_parameter):
+ * xfaces.c (set_font_frame_param, Finternal_merge_in_global_face):
+ * xfns.c (x_default_scroll_bar_color_parameter)
+ (x_default_font_parameter, x_create_tip_frame): Use it.
+ * editfns.c (Fpropertize): Use local_cons.
+ * process.c (status_message): Use build_local_string.
+ * xfont.c (xfont_open): Use make_local_string.
+ * xdisp.c (build_desired_tool_bar_string): Use local_list4.
+
+2014-09-18 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port USE_LOCAL_ALLOCATORS code to clang 3.4 x86-64.
+ * lisp.h (USE_LOCAL_ALLOCATORS): Define only if __GNUC__ &&
+ !__clang__. This works with GCC and with clang and is safer for
+ compilers we don't know about.
+ (local_cons): Rename parameter to make capture less likely.
+
+2014-09-17 Samuel Bronson <naesten@gmail.com>
+
+ * unexmacosx.c (copy_data_segment): Port to GCC 4.6+ (Bug#9927).
+
+2014-09-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix minor problems found by static checking.
+ * alloc.c, lisp.h (SAVE_TYPE_INT_OBJ, make_save_int_obj):
+ Remove; now unused.
+ * buffer.h (decode_buffer): Doc and indentation fixes.
+ * fns.c (Qstring_collate_lessp, Qstring_collate_equalp): Now static.
+
+2014-09-17 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Avoid clang-specific warnings.
+ * buffer.c (init_buffer): Shut up -Wself-assign.
+ * process.c (server_accept_connection): Shut up -Wunsequenced.
+
+2014-09-16 Daniel Colascione <dancol@dancol.org>
+
+ * fns.c (sxhash): For symbols, use address as hash code.
+
+2014-09-16 Dmitry Antipov <dmantipov@yandex.ru>
+
+ If USE_LOCAL_ALLOCATORS, allocate even more Lisp objects on stack.
+ * charset.c (load_charset_map_from_file): Use scoped_list2
+ and build_local_string.
+ * buffer.c (Fother_buffer, other_buffer_safely, init_buffer):
+ * emacs.c (init_cmdargs, decode_env_path):
+ * fileio.c (Fexpand_file_name):
+ * fns.c (maybe_resize_hash_table) [ENABLE_CHECKING]:
+ * frame.c (x_get_arg):
+ * keyboard.c (safe_run_hooks_error):
+ * lread.c (load_warn_old_style_backquotes):
+ * xdisp.c (Fcurrent_bidi_paragraph_direction):
+ * xfns.c (x_default_scroll_bar_color_parameter, select_visual):
+ * xselect.c (x_clipboard_manager_error_1)
+ (x_clipboard_manager_save_all):
+ * xterm.c (x_term_init): Use build_local_string.
+
+ Avoid more integer overflows on string size calculations.
+ * category.c (Fmake_category_set):
+ * xdisp.c (get_overlay_arrow_glyph_row):
+ * w32font.c (intern_font_name): Prefer ptrdiff_t to int.
+
+2014-09-15 Eli Zaretskii <eliz@gnu.org>
+
+ * sound.c [WINDOWSNT]: Include w32common.h and mbstring.h.
+ (SOUND_WARNING) [WINDOWSNT]: Include in do..while and improve the
+ error message format. Use message_with_string to have non-ASCII
+ file names properly displayed.
+ (do_play_sound) [WINDOWSNT]: Use Unicode APIs to play sound files
+ when w32-unicode-filenames is non-nil, but not on Windows 9X,
+ where these APIs are not available even in UNICOWS.DLL.
+ Improve the format of error messages and include the file name in them
+ where appropriate.
+ (Fplay_sound_internal) [WINDOWSNT]: Make the MS-Windows branch
+ call play-sound-functions, per documentation.
+
+ * w32.c (w32_get_long_filename, w32_get_short_filename):
+ Constify the input file name arguments.
+
+ * w32.h (w32_get_long_filename, w32_get_short_filename):
+ Update prototypes.
+
+2014-09-15 Dmitry Antipov <dmantipov@yandex.ru>
+
+ If USE_LOCAL_ALLOCATORS, allocate some Lisp objects on stack.
+ * lisp.h (local_cons, local_list1, local_list2, local_list3)
+ [USE_LOCAL_ALLOCATORS]: New macros.
+ [!USE_LOCAL_ALLOCATORS]: Fall back to regular functions.
+ (build_local_string): Avoid argument name expansion clash with
+ make_local_string.
+ * alloc.c (toplevel)
+ [USE_LOCAL_ALLOCATORS && GC_MARK_STACK != GC_MAKE_GCPROS_NOOPS]:
+ Preprocessor guard to avoid impossible configuration.
+ * charset.c (Ffind_charset_region, Ffind_charset_string):
+ Use make_local_vector.
+ * lread.c (read1, substitute_object_recurse): Use scoped_cons.
+ * textprop.c (Fput_text_property, Fadd_face_text_property):
+ Use scoped_list2.
+ (copy_text_properties): Use local_cons and local_list3.
+ * chartab.c (uniprop_table):
+ * data.c (wrong_choice, wrong_range):
+ * doc.c (get_doc_string):
+ * editfns.c (format2):
+ * fileio.c (Fexpand_file_name, auto_save_error):
+ * fns.c (Fyes_or_no_p):
+ * font.c (font_parse_xlfd, font_parse_family_registry, font_add_log):
+ * fontset.c (Fset_fontset_font):
+ * keyboard.c (echo_add_key, echo_dash, parse_menu_item)
+ (read_char_minibuf_menu_prompt):
+ * keymap.c (silly_event_symbol_error, describe_vector):
+ * menu.c (single_menu_item):
+ * minibuf.c (Fread_buffer):
+ * process.c (status_message, Fformat_network_address)
+ (server_accept_connection): Use make_local_string and
+ build_local_string. Prefer compound literals where appropriate.
+
+2014-09-15 Daniel Colascione <dancol@dancol.org>
+
+ * fns.c (Fsort): Tweak sort docstring.
+
+2014-09-15 Eli Zaretskii <eliz@gnu.org>
+
+ * w32.c (fcntl): Support O_NONBLOCK fcntl on the write side of pipes.
+ (sys_write): When a write to a non-blocking pipe returns ENOSPC,
+ set errno to EAGAIN instead, to allow the caller to retry the
+ write after some waiting. Fixes deadlocks when Emacs exchanges a
+ lot of data through the pipe. (Bug#18420)
+
+ * sound.c (Fplay_sound_internal): Encode the sound file name in
+ the ANSI codepage. Expand it against data-directory, as per docs,
+ not against the current directory. No need to make a local copy
+ of the file name; pass the encoded file name directly to
+ do_play_sound. (Bug#18463)
+
+ * w32.c (ansi_encode_filename): If w32_get_short_filename returns
+ NULL, and the file name is not encodable in ANSI codepage, return
+ the string with "?" replacement characters, which will fail the
+ caller. This avoids returning a random value in that case.
+
+2014-09-15 Martin Rudalics <rudalics@gmx.at>
+
+ * window.c (Fresize_mini_window_internal): Set w->total_lines
+ from w->pixel_height (Bug#18422).
+
+2014-09-15 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (updateFrameSize:, initFrameFromEmacs:)
+ (toggleFullScreen:): Take frame_resize_pixelwise into account when
+ setting resize increments (Bug#18435).
+
+2014-09-15 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (pos_visible_p): Properly save and restore the iterator
+ state around the call to line_bottom, since it can move the
+ iterator to another screen line. This fixes off-by-one errors in
+ the reported row in some rare cases.
+
+2014-09-14 Jan Djärv <jan.h.d@swipnet.se>
+
+ * callproc.c (init_callproc): Fix bug introduced at
+ 2014-09-07 (Bug#18474).
+
+2014-09-13 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Prefer ptrdiff_t to int and avoid integer overflows.
+ * fileio.c (make_temp_name):
+ * font.c (font_parse_family_registry): Avoid integer
+ overflow on string size calculation.
+ * data.c (Faset): Likewise for byte index.
+
+2014-09-12 Detlev Zundel <dzu@member.fsf.org>
+
+ * buffer.c (syms_of_buffer): DEFSYM Qchoice (Bug#18337).
+
+2014-09-11 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * lisp.h (make_local_string): Nitpick indent.
+ * print.c (Fprin1_to_string): Remove unused GCPROs.
+
+ More debugging aids around GCPROs.
+ * lisp.h (struct gcpro) [DEBUG_GCPRO]: Add extra members.
+ (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6, GCPRO7):
+ Minor restyle. If DEBUG_GCPRO, initialize extra fields.
+
+ * lread.c (readevalloop_eager_expand_eval): Add GCPRO and fix
+ bootstrap broken if GC_MARK_STACK == GC_USE_GCPROS_AS_BEFORE.
+
+ Remove redundant GCPROs around Ffuncall and Fapply calls.
+ This is safe because Ffuncall protects all of its arguments by itself.
+ * charset.c (map_charset_for_dump): Remove redundant GCPRO.
+ * eval.c (Fapply, apply1, call0, call1, call2, call3, call4, call5)
+ (call6, call7): Likewise. Use compound literals where applicable.
+ (run_hook_with_args_2): Use compound literal.
+
+2014-09-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ Pacify --enable-gcc-warnings when no window system is used.
+ These warnings found that subscript error, so they seem worthwhile.
+ * composite.c (char_composable_p): Simplify a bit.
+ * frame.c (x_set_frame_parameters): Add an IF_LINT.
+ * frame.c (x_set_horizontal_scroll_bars, x_set_scroll_bar_height):
+ * frame.h (FRAME_HAS_HORIZONTAL_SCROLL_BARS):
+ * window.c (set_window_scroll_bars):
+ Use USE_HORIZONTAL_SCROLL_BARS for simplicity.
+ * frame.h [! USE_HORIZONTAL_SCROLL_BARS]:
+ Ignore -Wsuggest-attribute=const.
+ * window.h (USE_HORIZONTAL_SCROLL_BARS): New macro.
+ (WINDOW_HAS_HORIZONTAL_SCROLL_BAR): Use it.
+
+2014-09-10 Paul Eggert <eggert@penguin.cs.ucla.edu>
+
+ * charset.c (Fget_unused_iso_final_char): Fix subscript error.
+ Use check_iso_charset_parameter instead of doing the checks by hand.
+ (check_iso_charset_parameter): Move up. Check parameters a bit
+ more carefully, and return true for 96-char sets. All callers changed.
+
+2014-09-10 Paul Eggert <eggert@cs.ucla.edu>
+
+ Simplify lisp.h by removing the __COUNTER__ business.
+ Reported by Dmitry Antipov in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00220.html
+ * lisp.h (make_local_vector, make_local_string)
+ (build_local_string): Simplify by not bothering with __COUNTER__.
+ The __COUNTER__ business wasn't working properly, and was needed
+ only for hypothetical future expansion anyway.
+
+2014-09-10 Alp Aker <alp.tekin.aker@gmail.com>
+
+ * nsterm.m (ns_draw_fringe_bitmap): Use the same logic as other
+ terms to determine bitmap color. (Bug#18437)
+
+2014-09-10 Eli Zaretskii <eliz@gnu.org>
+
+ * w32.c (sys_write): Use SAFE_NALLOCA for the NL -> CRLF
+ translation buffer.
+
+2014-09-10 Paul Eggert <eggert@cs.ucla.edu>
+
+ * xterm.c (handle_one_xevent): Add braces to pacify gcc -Wall.
+
+2014-09-10 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xterm.c (handle_one_xevent): Detect iconified by looking at
+ _NET_WM_STATE_HIDDEN.
+
+2014-09-10 Paul Eggert <eggert@cs.ucla.edu>
+
+ * lisp.h (DEFINE_GDB_SYMBOL_ENUM): Remove.
+ These can generate a constant with the correct value but the wrong
+ width, which doesn't work as a printf argument. All uses removed.
+ Reported by Dmitry Antipov in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00213.html
+ (ENUMABLE): Remove; no longer needed.
+ (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
+ Remove; no longer needed because of the above change.
+ Each definiens moved to the only use.
+
+ Improve the experimental local and scoped allocation.
+ * alloc.c (local_string_init, local_vector_init):
+ New functions, defined if USE_LOCAL_ALLOCATORS.
+ Mostly, these are moved here from lisp.h, as it's not
+ clear it's worth making them inline.
+ * lisp.h (USE_STACK_LISP_OBJECTS): Default to false.
+ (GCALIGNED): Depend on HAVE_STRUCT_ATTRIBUTE_ALIGNED and
+ USE_STACK_LISP_OBJECTS, not on a laundry list.
+ (local_string_init, local_vector_init): New decls.
+ (union Aligned_Cons): New type.
+ (scoped_cons): Use it. Give up on the char trick, as it's a too
+ much of a maintenance hassle; if someone wants this speedup
+ they'll just need to convince their compiler to align properly.
+ Conversely, use the speedup if struct Lisp_Cons happens to
+ be aligned even without a directive. Better yet, help it along
+ by using union Aligned_Cons rather than struct Lisp_Cons.
+ (pointer_valid_for_lisp_object): Remove. This check is not
+ necessary, since make_lisp_ptr is already doing it. All uses removed.
+ (local_vector_init, local_string_init): Move to alloc.c.
+ (build_local_vector): Remove this awkward macro, replacing with ...
+ (make_local_vector): New macro, which acts more like a function.
+ Use statement expressions and use __COUNTER__ to avoid macro
+ capture. Fall back on functions if these features are not supported.
+ (build_local_string, make_local_string): Likewise.
+
+2014-09-09 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * xterm.c (x_term_init): Consolidate duplicated code.
+ [USE_LUCID]: Revert 2014-04-02 change (Bug#18403). Add comment.
+ (x_delete_terminal): Do not close X connection fd (Bug#18403).
+ Add eassert and mark dpyinfo as dead only if it was alive.
+
+ Add macros to allocate temporary Lisp objects with alloca.
+ Respect MAX_ALLOCA and fall back to regular GC for large objects.
+ * character.h (parse_str_as_multibyte): Move prototype to ...
+ * lisp.h (parse_str_as_multibyte): ... here.
+ (struct Lisp_Cons): Add GCALIGNED attribute if supported.
+ (scoped_cons, scoped_list2, build_local_vector, build_local_string):
+ New macros.
+ (scoped_cons_init, pointer_valid_for_lisp_object, local_vector_init)
+ (local_string_init): New functions.
+ * alloc.c (verify_alloca) [ENABLE_CHECKING]: New function.
+ (init_alloc_once): Call it.
+
+ Cleanup last change and make all new stuff conditional.
+ * lisp.h (build_local_string): Rename to ...
+ (make_local_string): ... this macro.
+ (build_local_string, scoped_list1, scoped_list3): New macros.
+ (toplevel) [USE_STACK_LISP_OBJECTS]: Define all new macros
+ and functions as such, use regular fallbacks otherwise.
+ * alloc.c (verify_alloca) [USE_STACK_LISP_OBJECTS]: Define
+ conditionally.
+
+2014-09-08 Eli Zaretskii <eliz@gnu.org>
+
+ * dispnew.c (prepare_desired_row): When MODE_LINE_P is zero,
+ always make sure the marginal areas of the row are in sync with
+ what the window wants. (Bug#18419)
+
+ * data.c (set_internal): Use assq_no_quit, not Fassq, to find an
+ existing binding of a variable, to avoid silently aborting
+ commands that use specbind. (Bug#18331)
+
+2014-09-07 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix bug uncovered by changing alloca to auto buffer (Bug#18410).
+ * coding.c (growable_destination): New function.
+ (produce_chars): Use it for sanity checks. Do not fiddle with
+ dst_end if the source and destination are both nil, as it's
+ the caller's responsibility to avoid overlap.
+ * keyboard.c (read_decoded_event_from_main_queue):
+ The destination must be MAX_MULTIBYTE_LENGTH times the max source
+ length, not 4 times, to prevent decode_coding_c_string from trying
+ to reallocate a destination. This removes the need for the FIXME.
+
+ * callproc.c (exec_failed) [DOS_NT]: Define a dummy.
+ All callers simplified. Add a comment about exec_failed, vfork,
+ and alloca.
+
+ Adjust drag-and-drop fix when window is above top (Bug#18303).
+ * xselect.c (x_fill_property_data): Don't let sign bit of negative
+ XCDR bleed into XCAR's encoded value. Improve checks for
+ out-of-range data while we're at it.
+
+2014-09-07 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xselect.c (x_fill_property_data): Handle negative XCDR when data
+ is CONSP (Bug#18303).
+
+2014-09-07 Eli Zaretskii <eliz@gnu.org>
+
+ * callproc.c (child_setup) [WINDOWSNT]: Don't call exec_failed if
+ 'alloca' gets passed arguments larger than MAX_ALLOCA.
+
+ * font.c (MAX): Define if not defined elsewhere.
+
+2014-09-07 Paul Eggert <eggert@cs.ucla.edu>
+
+ * keyboard.c (read_decoded_event_from_main_queue): Reinstitute alloca
+ here for destination buffer, to work around what appears to be a
+ bug in decode_coding_c_string when the source and destination are
+ both C strings.
+
+ Use SAFE_ALLOCA etc. to avoid unbounded stack allocation (Bug#18410).
+ This follows up on the recent thread in emacs-devel on alloca; see:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00042.html
+ This patch also cleans up alloca-related glitches noted while
+ examining the code looking for unbounded alloca.
+ * alloc.c (listn):
+ * callproc.c (init_callproc):
+ Rewrite to avoid need for alloca.
+ * buffer.c (mouse_face_overlay_overlaps)
+ (report_overlay_modification):
+ * buffer.h (GET_OVERLAYS_AT):
+ * coding.c (make_subsidiaries):
+ * doc.c (Fsnarf_documentation):
+ * editfns.c (Fuser_full_name):
+ * fileio.c (Ffile_name_directory, Fexpand_file_name)
+ (search_embedded_absfilename, Fsubstitute_in_file_name):
+ * fns.c (Fmake_hash_table):
+ * font.c (font_vconcat_entity_vectors, font_update_drivers):
+ * fontset.c (fontset_pattern_regexp, Ffontset_info):
+ * frame.c (Fmake_terminal_frame, x_set_frame_parameters)
+ (xrdb_get_resource, x_get_resource_string):
+ * ftfont.c (ftfont_get_charset, ftfont_check_otf, ftfont_drive_otf):
+ * ftxfont.c (ftxfont_draw):
+ * image.c (xbm_load, xpm_load, jpeg_load_body):
+ * keyboard.c (echo_add_key, menu_bar_items, tool_bar_items)
+
+ * keymap.c (Fdescribe_buffer_bindings, describe_map):
+ * lread.c (openp):
+ * menu.c (digest_single_submenu, find_and_call_menu_selection)
+ (find_and_return_menu_selection):
+ * print.c (PRINTFINISH):
+ * process.c (Fformat_network_address):
+ * scroll.c (do_scrolling, do_direct_scrolling, scrolling_1):
+ * search.c (search_buffer, Fmatch_data, Fregexp_quote):
+ * sound.c (wav_play, au_play):
+ * syntax.c (skip_chars):
+ * term.c (tty_menu_activate, tty_menu_show):
+ * textprop.c (get_char_property_and_overlay):
+ * window.c (Fset_window_configuration):
+ * xdisp.c (safe__call, next_overlay_change, vmessage)
+ (compute_overhangs_and_x, draw_glyphs, note_mouse_highlight):
+ * xfaces.c (face_at_buffer_position):
+ * xmenu.c (x_menu_show):
+ Use SAFE_ALLOCA etc. instead of plain alloca, since the
+ allocation size isn't bounded.
+ * callint.c (Fcall_interactively): Redo memory_full check
+ so that it can be done at compile-time on some platforms.
+ * coding.c (MAX_LOOKUP_MAX): New constant.
+ (get_translation_table): Use it.
+ * callproc.c (call_process): Use SAFE_NALLOCA instead of
+ SAFE_ALLOCA, to catch integer overflows on size calculation.
+ (exec_failed) [!DOS_NT]: New function.
+ (child_setup) [!DOS_NT]: Use it.
+ * editfns.c (Ftranspose_regions):
+ Hoist USE_SAFE_ALLOC + SAFE_FREE out of 'if'.
+ * editfns.c (check_translation):
+ Allocate larger buffers on the heap.
+ * eval.c (internal_lisp_condition_case):
+ Check for MAX_ALLOCA overflow.
+ * fns.c (sort_vector): Use SAFE_ALLOCA_LISP rather than Fmake_vector.
+ (Fbase64_encode_region, Fbase64_decode_region):
+ Avoid unnecessary calls to SAFE_FREE before 'error'.
+ * buffer.c (mouse_face_overlay_overlaps):
+ * editfns.c (Fget_pos_property, check_translation):
+ * eval.c (Ffuncall):
+ * font.c (font_unparse_xlfd, font_find_for_lface):
+ * ftfont.c (ftfont_drive_otf):
+ * keyboard.c (echo_add_key, read_decoded_event_from_main_queue)
+ (menu_bar_items, tool_bar_items):
+ * sound.c (Fplay_sound_internal):
+ * xdisp.c (load_overlay_strings, dump_glyph_row):
+ Use an ordinary auto buffer rather than alloca, since the
+ allocation size is fixed and small.
+ * ftfont.c: Include <c-strcase.h>.
+ (matching_prefix): New function.
+ (get_adstyle_property): Use it, to avoid need for alloca.
+ * keyboard.c (echo_add_key):
+ * keymap.c (describe_map): Use ptrdiff_t, not int.
+ * keyboard.c (echo_add_key): Prefer sizeof to strlen.
+ * keymap.c (Fdescribe_buffer_bindings): Use SBYTES, not SCHARS,
+ when counting bytes.
+ * lisp.h (xlispstrdupa): Remove, replacing with ...
+ (SAFE_ALLOCA_STRING): ... new macro with different API.
+ This fixes a portability problem, namely, alloca result
+ passed to another function. All uses changed.
+ (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Check for MAX_ALLOCA,
+ not MAX_ALLOCA - 1.
+ * regex.c (REGEX_USE_SAFE_ALLOCA, REGEX_SAFE_FREE)
+ (REGEX_ALLOCATE): New macros.
+ (REGEX_REALLOCATE, REGEX_ALLOCATE_STACK, REGEX_REALLOCATE_STACK)
+ (REGEX_FREE_STACK, FREE_VARIABLES, re_match_2_internal):
+ Use them.
+ * xdisp.c (message3): Use SAFE_ALLOCA_STRING rather than doing it
+ by hand.
+ (decode_mode_spec_coding): Store directly into buf rather than
+ into an alloca temporary and copying the temporary to the buf.
+
+2014-09-06 Eli Zaretskii <eliz@gnu.org>
+
+ * Makefile.in (EMACS_HEAPSIZE): Remove, no longer used. (Bug#18416)
+
+2014-09-04 Jan D <jan.h.d@swipnet.se>
+
+ * xterm.c (x_term_init): Don't call x_session_initialize if running
+ as a daemon (Bug#18375).
+
+ * xsmfns.c: Initialize ice_fd.
+
+2014-09-04 Paul Eggert <eggert@cs.ucla.edu>
+
+ Less chatter in 'make' output.
+ * Makefile.in (AM_V_GEN, am__v_GEN_, am__v_GEN_0, am__v_GEN_1, AM_V_at)
+ (am__v_at_, am__v_at_0, am__v_at_1): New macros, taken from Automake.
+ ($(etc)/DOC, buildobj.h, gl-stamp): Use them.
+
+2014-09-03 Martin Rudalics <rudalics@gmx.at>
+
+ * buffer.c (scroll-bar-height): Fix typo in doc-string.
+ * frame.c (Vdefault_frame_horizontal_scroll_bars):
+ Remove variable.
+ * nsfns.m (Fx_create_frame):
+ * w32fns.c (Fx_create_frame):
+ * xfns.c (Fx_create_frame): Default horizontal scroll bars to
+ nil.
+
+2014-09-03 Eli Zaretskii <eliz@gnu.org>
+
+ * dispnew.c (buffer_posn_from_coords): Fix an off-by-one error in
+ the reported row in the case of a window with a header line, by
+ improving on the fix committed in 2011-10-08T10:58:50Z!eliz@gnu.org
+ eliz@gnu.org-20111008105850-ht4tvsayohvr1kjc. (Bug#18384)
+
+2014-09-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ * eval.c (internal_lisp_condition_case): Don't overrun the stack
+ when configured --with-wide-int on typical 32-bit platforms.
+
+2014-09-03 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (display_and_set_cursor): Call erase_phys_cursor also
+ when HPOS is negative, for the benefit of R2L glyph rows whose
+ newline overflows into the fringe.
+
+2014-09-03 Ken Brown <kbrown@cornell.edu>
+
+ * conf_post.h (strnicmp) [CYGWIN && HAVE_NTGUI]: Define. (Bug#18366)
+
+2014-09-02 Paul Eggert <eggert@cs.ucla.edu>
+
+ Minor cleanup of recent strlen-avoiding patch.
+ * fileio.c (CHECK_LENGTH): Remove.
+ Rewrite callers so that they don't need it.
+ (Fexpand_file_name) [DOS_NT]: Fix a case where directory length
+ variable wasn't set.
+
+2014-09-02 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * fileio.c (CHECK_LENGTH): New macro.
+ (Fexpand_file_name): Use it and get rid of a few more calls
+ to strlen and strcat.
+ * callproc.c (egetenv_internal): Add arg and rename from egetenv ...
+ * lisp.h (egetenv): ... because of a new inline function used to
+ avoid calls to strlen for a compile-time constants.
+
+ * buffer.h (decode_buffer): New function.
+ * buffer.c (Fbuffer_name, Fbuffer_file_name, Fbuffer_base_buffer)
+ (Fbuffer_local_variables, Fbuffer_modified_p, Fbuffer_modified_tick)
+ (Fbuffer_chars_modified_tick, Fdelete_all_overlays):
+ * data.c (Flocal_variables_p):
+ * fileio.c (Fverify_visited_file_modtime):
+ * marker.c (live_buffer): Use it.
+
+2014-09-01 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Avoid extra calls to strlen in filesystem I/O routines.
+ * fileio.c (Fexpand_file_name): Avoid calls to strlen if
+ the length of 'newdir' is known or may be precalculated.
+ (file_accessible_directory_p): Prefer to pass Lisp_Object,
+ not 'char *', and so use precalculated length.
+ (Ffile_accessible_directory_p):
+ * callproc.c (encode_current_directory, init_callproc):
+ * charset.c (init_charset):
+ * lread.c (load_path_check, load_path_default): Adjust users.
+ * lisp.h (file_accessible_directory_p): Tweak prototype.
+
+2014-09-01 Eli Zaretskii <eliz@gnu.org>
+
+ * w32proc.c (w32_compare_strings): Support "C" and "POSIX"
+ locales.
+
+2014-09-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ --enable-silent-rules now suppresses more chatter.
+ * Makefile.in (AM_DEFAULT_VERBOSITY, AM_V_CC, am__v_CC_)
+ (am__v_CC_0, am__v_CC_1, AM_V_CCLD, am__v_CCLD_, am__v_CCLD_0)
+ (am__v_CCLD_1): New macros, taken from Automake.
+ (.c.o, .m.o, temacs$(EXEEXT)): Use them.
+
+ Clean up extern decls a bit.
+ * bytecode.c: Include blockinput.h and keyboard.h rather
+ than rolling their APIs by hand.
+ * emacs.c: Include regex.h and rely on its and lisp.h's API
+ rather than rolling them by hand.
+ * lastfile.c: Include lisp.h, to check this file's API.
+ * lisp.h (lisp_eval_depth, my_edata, my_endbss, my_endbss_static):
+ New decls.
+ * regex.h (re_max_failures): New decl.
+ * unexcw.c, unexmacosx.c, unexw32.c:
+ Rely on lisp.h's API rather than rolling it by hand.
+ * vm-limit.c (__after_morecore_hook, __morecore, real_morecore):
+ Declare at top level, to pacify GCC -Wnested-externs.
+
+2014-08-31 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (get_glyph_string_clip_rects): Don't let the width of a
+ clipping rectangle become negative (i.e. large positive, since
+ it's an unsigned data type). This can happen in R2L hscrolled
+ glyph rows, and caused us to draw the cursor glyph on the fringe.
+ For the details, see
+ http://lists.gnu.org/archive/html/emacs-devel/2014-08/msg00543.html.
+
+2014-08-31 Ken Brown <kbrown@cornell.edu>
+
+ * gmalloc.c: Don't include <stdlib.h>. Declare system malloc and
+ friends before defining hybrid_malloc and friends if HYBRID_MALLOC
+ is defined. (Bug#18368)
+
+2014-08-30 Paul Eggert <eggert@cs.ucla.edu>
+
+ Vector-sorting fixes (Bug#18361).
+ It's not safe to call qsort or qsort_r, since they have undefined
+ behavior if the user-specified predicate is not a total order.
+ Also, watch out for garbage-collection while sorting vectors.
+ * fns.c: Include <vla.h>.
+ (sort_vector_predicate) [!HAVE_QSORT_R]: Remove.
+ (sort_vector_compare): Remove, replacing with ....
+ (inorder, merge_vectors, sort_vector_inplace, sort_vector_copy):
+ ... these new functions.
+ (sort_vector): Rewrite to use the new functions.
+ GCPRO locals, since the predicate can invoke the GC.
+ Since it's in-place return void; caller changed.
+ (merge): Use 'inorder', for clarity.
+
+ * sysdep.c (str_collate): Clear errno just before wcscoll(_l).
+ One can't hoist this out of the 'if', because intervening calls to
+ newlocale, twolower, etc. can change errno.
+
+2014-08-30 Eli Zaretskii <eliz@gnu.org>
+
+ * sysdep.c (str_collate) [__STDC_ISO_10646__]: Improve the
+ wording of the error messages.
+ (str_collate) [WINDOWSNT]: Signal an error if w32_compare_strings
+ sets errno.
+
+ * w32proc.c (get_lcid_callback): Accept locale specifications
+ without the country part, as in "enu" vs "enu_USA".
+ (w32_compare_strings): Signal an error if a locale was specified,
+ but couldn't be translated into a valid LCID.
+
+2014-08-29 Michael Albinus <michael.albinus@gmx.de>
+
+ * sysdep.c (str_collate) [__STDC_ISO_10646__]: Move up setting errno.
+
+2014-08-29 Paul Eggert <eggert@cs.ucla.edu>
+
+ * sysdep.c (str_collate) [__STDC_ISO_10646__]: Do not look at
+ errno after towlower_l. errno's value is not specified after
+ towlower_l. Instead, assume that towlower_l returns its argument
+ on failure, which is portable in practice.
+
+2014-08-29 Eli Zaretskii <eliz@gnu.org>
+
+ * fns.c (Fstring_collate_lessp, Fstring_collate_equalp): Doc fix.
+
+ * w32proc.c (w32_compare_strings): Accept additional argument
+ IGNORE_CASE. Set up the flags for CompareStringW to ignore case
+ if requested. If w32-collate-ignore-punctuation is non-nil, add
+ NORM_IGNORESYMBOLS to the flags.
+ (LINGUISTIC_IGNORECASE): Define if not already defined.
+ (syms_of_ntproc) <Vw32_collate_ignore_punctuation>: New variable.
+
+ * sysdep.c (str_collate) [WINDOWSNT]: Adapt to the interface
+ change.
+
+2014-08-29 Michael Albinus <michael.albinus@gmx.de>
+
+ * sysdep.c (LC_CTYPE, LC_CTYPE_MASK, towlower_l):
+ Define substitutes for platforms that lack them.
+ (str_collate): Add arguments locale and ignore_case.
+
+ * fns.c (Fstring_collate_lessp, Fstring_collate_equalp):
+ Add optional arguments LOCALE and IGNORE-CASE.
+
+ * lisp.h (str_collate): Adapt argument list.
+
+2014-08-29 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Add vectors support to Fsort.
+ * fns.c (sort_vector, sort_vector_compare): New functions.
+ (sort_list): Likewise, refactored out of ...
+ (Fsort): ... adjusted user. Mention vectors in docstring.
+ (sort_vector_predicate) [!HAVE_QSORT_R]: New variable.
+ * alloc.c (make_save_int_obj): New function.
+ * lisp.h (enum Lisp_Save_Type): New member SAVE_TYPE_INT_OBJ.
+ (make_save_int_obj): Add prototype.
+
+ Fix last change to support Darwin/OSX and FreeBSD (Bug#18354).
+ * sysdep.c (sort_vector_compare) [DARWIN_OS || __FreeBSD__]:
+ Conditionally define to match system's qsort_r signature.
+ (sort_vector) [DARWIN_OS || __FreeBSD__]: Likewise in call to qsort_r.
+
+2014-08-28 Ken Brown <kbrown@cornell.edu>
+
+ Add support for HYBRID_MALLOC, allowing the use of gmalloc before
+ dumping and the system malloc after dumping. (Bug#18222)
+
+ * conf_post.h (malloc, realloc, calloc, free) [HYBRID_MALLOC]:
+ Define as macros, expanding to hybrid_malloc, etc.
+ (HYBRID_GET_CURRENT_DIR_NAME): New macro.
+ (get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]: Define as
+ macro.
+ * gmalloc.c: Set up the infrastructure for HYBRID_MALLOC, with a
+ full implementation on Cygwin. Remove Cygwin-specific code that
+ is no longer needed.
+ (malloc, realloc, calloc, free, aligned_alloc) [HYBRID_MALLOC]:
+ Redefine as macros expanding to gmalloc, grealloc, etc.
+ (DUMPED, ALLOCATED_BEFORE_DUMPING) [CYGWIN]: New macros.
+ (get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]: Undefine.
+ (USE_PTHREAD, posix_memalign) [HYBRID_MALLOC]: Don't define.
+ (hybrid_malloc, hybrid_calloc, hybrid_free, hybrid_realloc)
+ [HYBRID_MALLOC]:
+ (hybrid_get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]:
+ (hybrid_aligned_alloc) [HYBRID_MALLOC && (HAVE_ALIGNED_ALLOC ||
+ HAVE_POSIX_MEMALIGN)]: New functions.
+ * alloc.c (aligned_alloc) [HYBRID_MALLOC && (ALIGNED_ALLOC ||
+ HAVE_POSIX_MEMALIGN)]: Define as macro expanding to
+ hybrid_aligned_alloc; declare.
+ (USE_ALIGNED_ALLOC) [HYBRID_MALLOC && (ALIGNED_ALLOC ||
+ HAVE_POSIX_MEMALIGN)]: Define.
+ (refill_memory_reserve) [HYBRID_MALLOC]: Do nothing.
+ * sysdep.c (get_current_dir_name) [HYBRID_GET_CURRENT_DIR_NAME]:
+ Define as macro, expanding to gget_current_dir_name, and define
+ the latter.
+ * emacs.c (main) [HYBRID_MALLOC]: Don't call memory_warnings() or
+ malloc_enable_thread(). Don't initialize malloc.
+ * lisp.h (NONPOINTER_BITS) [CYGWIN]: Define (because GNU_MALLOC is
+ no longer defined on Cygwin).
+ (refill_memory_reserve) [HYBRID_MALLOC]: Don't declare.
+ * sheap.c (bss_sbrk_buffer_end): New variable.
+ * unexcw.c (__malloc_initialized): Remove variable.
+ * ralloc.c: Throughout, treat HYBRID_MALLOC the same as
+ SYSTEM_MALLOC.
+ * xdisp.c (decode_mode_spec) [HYBRID_MALLOC]: Don't check
+ Vmemory_full.
+
+2014-08-28 Martin Rudalics <rudalics@gmx.at>
+
+ * w32term.c (w32_horizontal_scroll_bar_handle_click):
+ In `event->y' return entire range (the size of the scroll bar minus
+ that of the thumb).
+ * xterm.c (xm_scroll_callback, xaw_jump_callback): In `whole'
+ return entire range (the scaled size of the scroll bar minus
+ that of the slider). In `portion' return the scaled position of
+ the slider.
+ (xaw_jump_callback): Restore part of code for vertical scroll
+ bar broken in change from 2014-07-27.
+ (xaw_scroll_callback): Provide incremental scrolling with
+ horizontal scroll bars.
+
+2014-08-28 Eli Zaretskii <eliz@gnu.org>
+
+ * conf_post.h (_GL_EXECINFO_INLINE) [MSDOS]: Don't define.
+
+ * indent.c (Fvertical_motion): Fix vertical motion up through a
+ display property after a newline. (Bug#18276)
+
+ * xdisp.c (display_line): Don't assume that the call to
+ reseat_at_next_visible_line_start ends up at a character
+ immediately following the newline on the previous line.
+ Avoids setting the ends_at_zv_p flag on screen lines that are not at or
+ beyond ZV, which causes infloop in redisplay. For the details, see
+ http://lists.gnu.org/archive/html/emacs-devel/2014-08/msg00368.html.
+
+ * dispnew.c (buffer_posn_from_coords): Fix mirroring of X
+ coordinate for hscrolled R2L screen lines. (Bug#18277)
+
+2014-08-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ * sysdep.c (LC_COLLATE, LC_COLLATE_MASK): Give individual defaults
+ (Bug#18051).
+
+2014-08-27 Eli Zaretskii <eliz@gnu.org>
+
+ * syntax.c (scan_lists): Don't examine positions before BEGV.
+ (Bug#18339)
+
+2014-08-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ Improve robustness of new string-collation code (Bug#18051).
+ * sysdep.c (LC_COLLATE, LC_COLLATE_MASK, freelocale, locale_t)
+ (newlocale, wcscoll_l): Define substitutes for platforms that
+ lack them, so as to simplify the mainline code.
+ (str_collate): Simplify the code by assuming the above definitions.
+ Use wcscoll_l, not uselocale, as uselocale is too fragile.
+ For example, the old version left the Emacs in the wrong locale if
+ wcscoll reported an error. Use 'int', not ptrdiff_t, for the int
+ result. Report an error if newlocale fails.
+
+2014-08-27 Michael Albinus <michael.albinus@gmx.de>
+
+ * lisp.h (str_collate):
+ * sysdep.c (str_collate): Return int.
+ (str_collate) [__STDC_ISO_10646__]: Propagate error of wcscoll.
+
+2014-08-27 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Fix some glitches in previous change.
+ * sysdep.c (stack_direction): Replace stack_grows_down
+ to simplify calculation of stack boundaries.
+ (handle_sigsegv): Check whether we really crash somewhere near
+ to stack boundary, and handle fatal signal as usual if not.
+ (init_sigsegv): Adjust accordingly.
+ * keyboard.c (Vtop_level_message): Rename to
+ Vinternal__top_level_message, as suggested by Stefan Monnier in
+ http://lists.gnu.org/archive/html/emacs-devel/2014-08/msg00493.html
+ All related users changed.
+
+2014-08-26 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Handle C stack overflow caused by too nested Lisp evaluation.
+ * lisp.h (toplevel) [HAVE_STACK_OVERFLOW_HANDLING]: Declare
+ siglongjmp point to transfer control from SIGSEGV handler.
+ * keyboard.c (return_to_command_loop, recover_top_level_message)
+ [HAVE_STACK_OVERFLOW_HANDLING]: New variables.
+ (regular_top_level_message): New variable.
+ (command_loop) [HAVE_STACK_OVERFLOW_HANDLING]: Handle non-local
+ exit from SIGSEGV handler and adjust message displayed by Vtop_level
+ if appropriate.
+ (syms_of_keyboard): DEFVAR Vtop_level_message and initialize
+ new variables described above.
+ * sysdep.c [HAVE_SYS_RESOURCE_H]: Include sys/resource.h as such.
+ (stack_grows_down, sigsegv_stack, handle_sigsegv)
+ [HAVE_STACK_OVERFLOW_HANDLING]: New variables and function.
+ (init_sigsegv): New function.
+ (init_signals): Use it.
+
+2014-08-25 Ken Brown <kbrown@cornell.edu>
+
+ * emacs.c (main): Remove use of obsolete macro
+ G_SLICE_ALWAYS_MALLOC.
+
+2014-08-25 Eli Zaretskii <eliz@gnu.org>
+
+ Implement locale-sensitive string collation for MS-Windows.
+ * w32proc.c (get_lcid_callback, get_lcid, w32_compare_strings):
+ New functions. (Bug#18051)
+
+ * w32.h (w32_compare_strings): Add prototype.
+
+ * w32.c <g_b_init_compare_string_w>: New global flag.
+ (globals_of_w32): Initialize it.
+
+ * sysdep.c (str_collate) [WINDOWSNT]: Implementation for MS-Windows.
+
+ * fns.c (Fstring_collate_lessp, Fstring_collate_equalp)
+ [WINDOWSNT]: Call str_collate on MS-Windows.
+
+2014-08-25 Dmitry Antipov <dmantipov@yandex.ru>
+
+ One more minor cleanup of font subsystem.
+ * font.h (struct font_driver): Convert text_extents to
+ return void because returned value is never actually used.
+ * macfont.m (macfont_text_extents):
+ * w32font.c (w32font_text_extents):
+ * xftfont.c (xftfont_text_extents): Adjust to return void
+ and assume that 'metrics' argument is always non-NULL.
+ * ftfont.c (ftfont_text_extents):
+ * xfont.c (xfont_text_extents): Likewise. Avoid redundant memset.
+
+2014-08-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ Minor cleanups of str_collate fix (Bug#18051).
+ * fns.c (str_collate): Move decl from here ...
+ * lisp.h (str_collate): ... to here.
+ * sysdep.c (str_collate): Prune away some of the forest of ifdefs.
+ Remove unnecessary casts. Use SAFE_NALLOCA to avoid
+ potential problems with integer overflow. Don't assume
+ setlocale succeeds. Remove unnecessary test before restoring
+ locale via setlocale, and free the copied setlocale string
+ when done with it.
+
+2014-08-24 Michael Albinus <michael.albinus@gmx.de>
+
+ * fns.c (Fstring_collate_lessp, Fstring_collate_equalp): New DEFUNs.
+
+ * sysdep.c (str_collate): New function. (Bug#18051)
+
+2014-08-23 Karol Ostrovsky <karol.ostrovsky@gmail.com> (tiny change)
+
+ * Makefile.in (emacs$(EXEEXT)): Retry deletion of bootstrap-emacs
+ if the initial "rm -f" fails. This is for MinGW builds, where
+ MS-Windows will not allow deleting the executable file of a
+ running program.
+
+2014-08-20 Eli Zaretskii <eliz@gnu.org>
+
+ * w32term.c (w32_scroll_bar_handle_click)
+ (w32_horizontal_scroll_bar_handle_click)
+ (x_scroll_bar_report_motion)
+ (x_horizontal_scroll_bar_report_motion): For SB_THUMBPOSITION and
+ SB_THUMBTRACK, use the 32-bit position information returned by
+ GetScrollInfo, not the 16-bit information returned in the Windows
+ message sent to us.
+
+2014-08-19 Eli Zaretskii <eliz@gnu.org>
+
+ * w32term.c (w32_horizontal_scroll_bar_handle_click): Fix the
+ second coordinate ('y') reported for dragging the horizontal
+ scroll bar thumb.
+
+2014-08-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+
+ * xdisp.c (erase_phys_cursor): Fix confusion between window-relative
+ and text area-relative x-coordinates.
+
+2014-08-17 Eli Zaretskii <eliz@gnu.org>
+
+ Avoid overwriting the reversed_p flags in the glyph matrices when
+ init_iterator or start_display are called.
+ * xdisp.c (init_iterator): Don't initialize the reversed_p flag of
+ the glyph row here.
+ (tool_bar_height, redisplay_tool_bar, try_window)
+ (try_window_reusing_current_matrix, try_window_id)
+ (get_overlay_arrow_glyph_row, display_menu_bar): Initialize the
+ reversed_p flag of the iterator's glyph row where the glyph row
+ is going to be redrawn.
+
+2014-08-16 Paul Eggert <eggert@cs.ucla.edu>
+
+ * xdisp.c (set_horizontal_scroll_bar): Don't use uninitialized local.
+
+2014-08-16 Martin Rudalics <rudalics@gmx.at>
+
+ * w32term.c (w32_horizontal_scroll_bar_handle_click): In y part
+ of emacs_event return length from si.nPage to si.nMax.
+ * xdisp.c (set_horizontal_scroll_bar): For right-to-left text
+ interchange start and end of thumb.
+
+2014-08-15 Ken Brown <kbrown@cornell.edu>
+
+ * gmalloc.c (_malloc_mutex, _aligned_blocks_mutex) [CYGWIN]: Use
+ ERRORCHECK mutexes. (Bug#18222)
+
+2014-08-12 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.c (set_menu_bar_lines_1): Remove.
+ (set_menu_bar_lines): Call change_frame_size instead of
+ set_menu_bar_lines_1.
+
+2014-08-11 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsfns.m (Fx_create_frame): Call adjust_frame_size,
+ set f->official.
+
+2014-08-11 Glenn Morris <rgm@gnu.org>
+
+ * fileio.c: Revert 2013-01-31 change, which chose coding system for
+ writing before backing up, since it causes a more serious problem
+ than the one it solves. (Closes Bug#18141, reopens Bug#13522.)
+ (choose_write_coding_system): No longer callable from Lisp.
+ Move last piece back here from Fwrite_region.
+ (Fwrite_region, syms_of_fileio): Update for above changes.
+
+2014-08-11 Martin Rudalics <rudalics@gmx.at>
+
+ * window.c (Fwindow_valid_p): Fix doc-string (Bug#18194).
+ (Fwindow_new_total, Fwindow_normal_size, Fwindow_new_normal)
+ (Fwindow_new_pixel, Fset_window_new_pixel)
+ (Fset_window_new_total, Fset_window_new_normal)
+ (Fwindow_resize_apply): Fix doc-strings (see Bug#18112).
+ See also:
+ http://lists.gnu.org/archive/html/bug-gnu-emacs/2014-08/msg00287.html
+
+2014-08-11 Eli Zaretskii <eliz@gnu.org>
+
+ * fontset.c (Finternal_char_font): Recompute basic faces if the
+ frame's face cache was cleared. (Bug#18162)
+
+2014-08-11 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Fix bug with uninitialized undo list of an indirect buffer (Bug#18180).
+ * buffer.c (Fmake_indirect_buffer): Initialize undo list with the
+ base buffer's undo list.
+
+2014-08-10 Reuben Thomas <rrt@sc3d.org>
+
+ Fix a couple of recent inadvertent breaks of the MSDOS port.
+ * msdos.c: include required menu.h
+ * term.c: set correct menu_show_hook on MSDOS.
+
+2014-08-10 Martin Rudalics <rudalics@gmx.at>
+
+ Fix handling of menu bar line on TTY frames (Bug#18136)
+ (Bug#18196).
+ * dispnew.c (handle_window_change_signal):
+ * keyboard.c (Fsuspend_emacs): Call change_frame_size with
+ frame's menu bar lines subtracted from height.
+ * frame.c (frame_inhibit_resize): Inhibit resizing of TTY
+ frames.
+ (adjust_frame_size): Count in menu bar when setting FrameRows.
+ (make_terminal_frame): When setting up the frame's lines and
+ text height don't count in the menu bar.
+ (Fmake_terminal_frame): Call adjust_frame_size with menu bar
+ lines subtracted from height.
+ (do_switch_frame): Set tty's FrameRows to number of total lines
+ of frame.
+ (Fframe_pixel_height, Fframe_pixel_width): If no window system
+ is used, return total number of lines and columns.
+ * menu.c (emulate_dialog_with_menu): Use FRAME_TOTAL_LINES instead
+ of FRAME_LINES.
+ * term.c (OUTPUT, tty_set_terminal_modes)
+ (tty_set_terminal_window, tty_set_scroll_region)
+ (tty_clear_to_end, tty_write_glyphs, tty_write_glyphs_with_face)
+ (tty_ins_del_lines, tty_menu_display, tty_menu_activate):
+ Use FRAME_TOTAL_LINES instead of FRAME_LINES.
+ (Fresume_tty): Use FRAME_TOTAL_LINES instead of FRAME_LINES.
+ Call change_frame_size with frame's menu bar lines subtracted
+ from height.
+ * w32console.c (w32con_clear_to_end, w32con_clear_frame)
+ (w32con_ins_del_lines): Use FRAME_TOTAL_LINES instead of
+ FRAME_LINES.
+
+2014-08-09 Reuben Thomas <rrt@sc3d.org>
+
+ * alloc.c (Fmemory_info): Remove a stray brace.
+
+ * process.c: Fix a comment typo.
+
+ * msdos.c, dosfns.c (init_dosfns): Remove support for DJGPP < 2.02.
+
+2014-08-09 Jan Djärv <jan.h.d@swipnet.se>
+
+ * widgetprv.h (EmacsFramePart): Remove font.
+
+ * widget.c (DEFAULT_FACE_FONT, EmacsFrameSetValues, setup_frame_gcs)
+ (resources, setup_frame_cursor_bits): Remove unused variables and
+ functions, esp. wrt. font (Bug#18227).
+
+2014-08-07 Paul Eggert <eggert@cs.ucla.edu>
+
+ * xterm.c (x_delete_terminal): Plug file descriptor leak (Bug#17691).
+
+2014-08-07 Reuben Thomas <rrt@sc3d.org>
+
+ Refer to MS-DOS using the same name everywhere.
+
+ * editfns.c: Fix a couple of ``MS-DOG''s missed in the previous
+ commit.
+ * xfaces.c: ditto.
+
+2014-08-05 Martin Rudalics <rudalics@gmx.at>
+
+ * w32term.c (w32_redeem_scroll_bar):
+ * xterm.c (XTredeem_scroll_bar): Revert part of last change by
+ not redeeming scroll bars that have been turned off.
+
+2014-08-05 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * keyboard.c (safe_run_hooks): Follow the convenient style to bind
+ inhibit-quit to t and pass 2 args to safe_run_hook_funcall. See
+ <http://lists.gnu.org/archive/html/emacs-devel/2014-08/msg00077.html>.
+ (safe_run_hook_funcall): Adjust accordingly.
+
+2014-08-04 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.h (FRAME_HAS_HORIZONTAL_SCROLL_BARS):
+ Condition correctly according to toolkit used.
+ * frame.c (make_initial_frame, make_terminal_frame)
+ (x_set_horizontal_scroll_bars, x_set_scroll_bar_height)
+ (Vdefault_frame_horizontal_scroll_bars): Correctly condition
+ assignments according to presence of toolkit scrollbars.
+ * window.h (WINDOW_HAS_HORIZONTAL_SCROLL_BAR):
+ Condition correctly according to toolkit used.
+ * window.c (set_window_scroll_bars): Set horizontal scroll bar
+ only if toolkit supports it.
+ * w32term.c (w32_redeem_scroll_bar): Always redeem scroll bar if
+ present.
+ * xterm.c (x_scroll_bar_create): Initialize horizontal slot for
+ non-toolkit builds.
+ (XTredeem_scroll_bar): Always redeem scroll bar if present.
+
+2014-08-04 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * keyboard.c (safe_run_hook_funcall): Avoid consing around
+ Vinhibit_quit and prefer internal_condition_case_n to pass args.
+ (safe_run_hooks_error, safe_run_hooks_1): Adjust accordingly.
+ (safe_run_hooks): Remove comment which is not relevant any more.
+
+2014-08-03 Paul Eggert <eggert@cs.ucla.edu>
+
+ Don't let big frames overrun the stack.
+ * dispnew.c (mirrored_line_dance, mirror_line_dance, scrolling):
+ Use SAFE_NALLOCA, not alloca.
+
+ Fix bug with clang + directory_files_internal + GC (Bug#16986).
+ * dired.c (directory_files_internal): Use a volatile variable
+ to prevent the compiler from optimizing away all copies of a local.
+ I wonder how many other GC-related bugs like this lurk elsewhere?
+
+ Avoid 100% CPU utilization on ssh session exit (Bug#17691).
+ * xterm.h (struct x_display_info): New member 'connection'.
+ * xterm.c (x_term_init, x_delete_terminal): Set and use it,
+ so that x_delete_terminal has a file descriptor to pass to
+ delete_keyboard_wait_descriptor.
+
+ Don't mishandle year-9999 dates (Bug#18176).
+ * editfns.c (decode_time_components): Store an invalid timespec
+ on overflow, instead of returning false, so that the caller can
+ distinguish overflow from other errors.
+ (lisp_time_argument, lisp_seconds_argument): If the time is out
+ of range, signal a time overflow instead of an invalid time spec.
+ * keyboard.c (decode_timer): Treat time overflow like other
+ timespec errors.
+
+ Avoid undefined behavior with signed left shift.
+ Caught by 'gcc -fsanitize=undefined'.
+ * dispextern.h, scroll.c (scrolling_max_lines_saved, scrolling_1):
+ * dispnew.c (line_hash_code, scrolling):
+ * scroll.c (calculate_scrolling, calculate_direct_scrolling):
+ Use 'unsigned', not 'int', for line hashes.
+ (scrolling_max_lines_saved): Avoid mystery constants for hash sizes.
+
+2014-08-02 Paul Eggert <eggert@cs.ucla.edu>
+
+ Make compare-strings more compatible with old behavior (Bug#17903).
+ * fns.c (Fcompare_strings): Silently bring too-large ends into range.
+
+2014-08-02 Jan Djärv <jan.h.d@swipnet.se>
+
+ * gtkutil.c (create_dialog): Force min spacing 10 between buttons.
+ Don't add label between left and right buttons (Bug#18129).
+
+2014-08-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ Make functions static that no longer need to be extern.
+ * frame.c, frame.h (set_menu_bar_lines):
+ * keyboard.c (Qleftmost, Qrightmost):
+ * xfns.c, frame.h, menu.h (x_set_menu_bar_lines, x_set_tool_bar_lines)
+ (x_set_internal_border_width):
+ Now static.
+
+2014-08-01 Eli Zaretskii <eliz@gnu.org>
+
+ Fix display of R2L lines when the last character fits only partially.
+ See http://lists.gnu.org/archive/html/emacs-devel/2014-07/msg00476.html
+ for the details.
+ * xdisp.c (extend_face_to_end_of_line): If the last glyph of an
+ R2L row is visible only partially, give the row a negative x
+ offset.
+ (display_line): Fix the calculation of the glyph whose pixel width
+ is used to decide whether the last produced glyph fits on the
+ line. When the last glyph fits only partially, give the row a
+ negative x offset.
+
+ Fix hscroll of R2L lines that begin with a TAB or another wide glyph.
+ * xdisp.c (append_stretch_glyph): In a R2L glyph row, decrease the
+ pixel width of the first glyph that is hscrolled from display.
+ (display_line): In R2L glyph rows, don't give a negative offset to
+ row->x when the first glyph begins before first_visible_x.
+
+ * xdisp.c (display_line): If called with iterator set up to write
+ to a marginal area, delay the call to handle_line_prefix until we
+ switch back to the text area. (Bug#18035)
+
+ * .gdbinit (xwindow): The members total_cols, total_lines,
+ left_col, and top_line are C integers (and has been so for the
+ last 1.5 years).
+
+2014-08-01 Andreas Schwab <schwab@suse.de>
+
+ * macros.c (Fstart_kbd_macro): Initialize kbd_macro_ptr and
+ kbd_macro_end together with kbd_macro_buffer. (Bug#18140)
+
+2014-08-01 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * atimer.c (toplevel) [HAVE_TIMERFD]: Include errno.h.
+ (timerfd_callback): Ignore weird events with no data. Add tight
+ assertions and comments.
+ (init_atimer) [HAVE_TIMERFD]: Add environment variable to optionally
+ disable timerfd-based timer. Use TFD_NONBLOCK for timer descriptor.
+
+2014-08-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ * frame.c (x_set_frame_parameters): Fix typo in previous patch.
+ I had confused && with ||.
+
+2014-07-31 Paul Eggert <eggert@cs.ucla.edu>
+
+ Simplify timerfd configuration and fix some minor glitches.
+ * atimer.c (TIMERFD_CREATE_FLAGS): Remove; we now assume TFD_CLOEXEC.
+ (alarm_timer, alarm_timer_ok, set_alarm, init_atimer):
+ Fall back on timer_create if timerfd_create fails at runtime.
+ (resolution) [HAVE_CLOCK_GETRES]: Remove; we now rely on the
+ kernel primitives to do resolution. All uses removed.
+ (timerfd) [!HAVE_TIMERFD]: Define to be -1, for convenience.
+ (turn_on_atimers): Clear timer_create-based timers too,
+ for consistency.
+
+ * frame.c (x_set_frame_parameters): Don't use uninitialized locals.
+ Without this change, the code can access the local variable 'width'
+ even when it has not been initialized, and likewise for 'height';
+ in either case this leads to undefined behavior.
+
+2014-07-30 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * xrdb.c (x_load_resources) [USE_MOTIF]: Although not strictly
+ necessary, put horizontal scroll bar resources as well. See
+ <http://lists.gnu.org/archive/html/emacs-devel/2014-07/msg00430.html>.
+ * xterm.c (x_sync_with_move): Really wait 0.5s, not 0.0005s.
+
+2014-07-29 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * xrdb.c (x_load_resources) [!USE_MOTIF]: Put horizontal scroll bar
+ background value to match the resource of its vertical counterpart.
+
+2014-07-29 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.c (adjust_frame_size): Use FRAME_WINDOW_P instead of
+ FRAME_X_WINDOW when calling x_set_window_size (Bug#18138).
+
+2014-07-28 Martin Rudalics <rudalics@gmx.at>
+
+ * frame.c (x_set_frame_parameters): Revert part of 2014-07-24
+ change that added the top margin height to the requested height
+ and revert (undocumented) part of 2014-07-28 change that changed
+ the logic of whether a size change occurred.
+
+2014-07-28 Eli Zaretskii <eliz@gnu.org>
+
+ * .gdbinit (xwindow): The members total_cols, total_lines,
+ left_col, and top_line are C integers (and has been so for the
+ last 1.5 years).
+
+ * .gdbinit (xsubchartable): The members 'depth' and 'min_char' are
+ now C integers.
+
+2014-07-28 Dmitry Antipov <dmantipov@yandex.ru>
+
+ On GNU/Linux, use timerfd for asynchronous timers.
+ * atimer.c (toplevel) [HAVE_TIMERFD]: Include sys/timerfd.h.
+ (toplevel): Rename alarm_timer_ok to special_timer_available.
+ [HAVE_TIMERFD]: Declare timerfd.
+ [HAVE_CLOCK_GETRES]: Declare resolution.
+ (start_atimer) [HAVE_CLOCK_GETRES]: Round up timestamp to
+ system timer resolution.
+ (set_alarm) [HAVE_TIMERFD]: Use timerfd_settime.
+ (timerfd_callback) [HAVE_TIMERFD]: New function.
+ (atimer_result, debug_timer_callback, Fdebug_timer_check)
+ [ENABLE_CHECKING]: New function for the sake of automated tests.
+ (init_atimer) [HAVE_TIMERFD]: Setup timerfd.
+ [HAVE_CLOCK_GETRES]: Likewise for system timer resolution.
+ [ENABLE_CHECKING]: Defsubr test function.
+ * atimer.h (timerfd_callback) [HAVE_TIMERFD]: Add prototype.
+ * lisp.h (add_timer_wait_descriptor) [HAVE_TIMERFD]: Likewise.
+ * process.c (add_timer_wait_descriptor) [HAVE_TIMERFD]: New function.
+
+ Fix --without-x build and pacify --enable-gcc-warnings.
+ Problems reported in Bug#18122 and Bug#18124.
+ * frame.c (get_frame_param): Define even if !HAVE_WINDOW_SYSTEM.
+ (frame_windows_min_size): Now static.
+ * frame.h (FRAME_HAS_HORIZONTAL_SCROLL_BARS) [!HAVE_WINDOW_SYSTEM]:
+ Define as no-op.
+ (adjust_frame_size): Always declare prototype.
+
+ Fix Gnus-related issues reported by David Kastrup <dak@gnu.org> in
+ <http://lists.gnu.org/archive/html/emacs-devel/2014-07/msg00370.html>.
+ * atimer.c (timerfd_callback): Always read expiration data.
+ Add comment.
+ (turn_on_atimers) [HAVE_TIMERFD]: Disarm timerfd timer.
+ * process.c (add_timer_wait_descriptor): Add timer descriptor
+ to input_wait_mask and non_process_wait_mask as well.
+
+2014-07-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ * frame.c (x_set_frame_parameters): Don't use uninitialized locals.
+
+2014-07-27 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (applicationDidFinishLaunching antialiasThresholdDidChange):
+ Reinstate code removed by the prevoius commit to this file.
+
+2014-07-27 Martin Rudalics <rudalics@gmx.at>
+
+ * buffer.h (struct buffer): New fields scroll_bar_height and
+ horizontal_scroll_bar_type.
+ * buffer.c (bset_scroll_bar_height)
+ (bset_horizontal_scroll_bar_type): New functions.
+ (Fbuffer_swap_text): Handle old_pointm field.
+ (init_buffer_once): Set defaults for scroll_bar_height and
+ horizontal_scroll_bar_type.
+ (syms_of_buffer): New variables scroll_bar_height and
+ horizontal_scroll_bar_type.
+ * dispextern.h (window_part): Rename ON_SCROLL_BAR to
+ ON_VERTICAL_SCROLL_BAR. Add ON_HORIZONTAL_SCROLL_BAR.
+ (set_vertical_scroll_bar): Remove prototype.
+ (x_change_tool_bar_height): Add prototype.
+ * dispnew.c (adjust_frame_glyphs_for_frame_redisplay)
+ (window_to_frame_vpos, update_frame_1, scrolling, init_display):
+ Use FRAME_TOTAL_COLS and FRAME_TOTAL_LINES instead of FRAME_COLS
+ and FRAME_LINES.
+ (adjust_frame_glyphs_for_window_redisplay): Rearrange lines.
+ (update_window): Start mode_line_row->y after horizontal scroll
+ bar.
+ (change_frame_size_1): Call adjust_frame_size.
+ (init_display): When changing the size of a tty frame do not
+ pass height of menu bar.
+ (Qframe_windows_min_size): New symbol.
+ * frame.h (struct frame): List tool bar fields after menu bar
+ fields. Add official, total_lines, horizontal_scroll_bars,
+ config_scroll_bar_height and config_scroll_bar_lines fields.
+ (FRAME_HAS_HORIZONTAL_SCROLL_BARS)
+ (FRAME_CONFIG_SCROLL_BAR_HEIGHT, FRAME_CONFIG_SCROLL_BAR_LINES)
+ (FRAME_SCROLL_BAR_AREA_HEIGHT, FRAME_SCROLL_BAR_COLS)
+ (FRAME_SCROLL_BAR_LINES, FRAME_TOTAL_LINES, SET_FRAME_LINES)
+ (FRAME_WINDOWS_HEIGHT): New macros.
+ (SET_FRAME_HEIGHT, FRAME_TEXT_LINES_TO_PIXEL_HEIGHT)
+ (FRAME_PIXEL_Y_TO_LINE, FRAME_PIXEL_HEIGHT_TO_TEXT_LINES)
+ (FRAME_TEXT_TO_PIXEL_HEIGHT): Separately count top margin and
+ horizontal scroll bar.
+ (frame_inhibit_resize, adjust_frame_size)
+ (frame_windows_min_size): Add declarations.
+ (Qscroll_bar_height, Qhorizontal_scroll_bars)
+ (x_set_scroll_bar_default_height, x_set_left_fringe)
+ (x_set_right_fringe, x_set_vertical_scroll_bars)
+ (x_set_horizontal_scroll_bars, x_set_scroll_bar_width)
+ (x_set_scroll_bar_height): Add external declarations.
+ * frame.c: (frame_inhibit_resize, frame_windows_min_size)
+ (adjust_frame_size): New functions.
+ (make_frame): Initial horizontal_scroll_bars field.
+ Use SET_FRAME_LINES. Don't allow horizontal scroll bar in
+ minibuffer window.
+ (make_initial_frame, make_terminal_frame): No horizontal scroll
+ bar in initial and terminal frames. Use adjust_frame_size.
+ (Fframe_total_cols): Fix doc-string.
+ (Fframe_total_lines, Fscroll_bar_height): New Lisp functions.
+ (Fset_frame_height, Fset_frame_width, Fset_frame_size):
+ Rewrite using adjust_frame_size.
+ (Qscroll_bar_height, Qhorizontal_scroll_bars)
+ (Qframe_windows_min_size): New symbols.
+ (x_set_frame_parameters): Remove call of check_frame_size.
+ (x_report_frame_params): Return scroll_bar_height value.
+ (x_set_left_fringe, x_set_right_fringe): New functions.
+ (adjust_frame_height, x_set_internal_border_width)
+ (x_set_fringe_width): Remove.
+ (x_set_internal_border_width, x_set_vertical_scroll_bars)
+ (x_set_scroll_bar_width, x_set_right_divider_width)
+ (x_set_bottom_divider_width): Rewrite using adjust_frame_size.
+ (x_set_horizontal_scroll_bars, x_set_scroll_bar_height):
+ New functions.
+ (x_figure_window_size): Rewrite to make frame display the
+ expected number of lines.
+ (Vdefault_frame_scroll_bars): Rewrite doc-string.
+ (Vdefault_frame_horizontal_scroll_bars)
+ (Vframe_initial_frame_tool_bar_height)
+ (frame_inhibit_implied_resize): New variables.
+ * fringe.c (compute_fringe_widths): Remove.
+ * gtkutil.h (YG_SB_MIN, YG_SB_MAX, YG_SB_RANGE): Define.
+ (xg_create_horizontal_scroll_bar)
+ (xg_update_horizontal_scrollbar_pos)
+ (xg_set_toolkit_horizontal_scroll_bar_thumb)
+ (xg_get_default_scrollbar_height)
+ (xg_clear_under_internal_border): Extern.
+ * gtkutil.c (xg_frame_resized): Don't call
+ do_pending_window_change.
+ (xg_frame_set_char_size): Use adjust_frame_size.
+ (style_changed_cb): Call update_theme_scrollbar_height and
+ x_set_scroll_bar_default_height.
+ (x_wm_set_size_hint): Don't call check_frame_size.
+ (update_theme_scrollbar_height)
+ (xg_get_default_scrollbar_height)
+ (xg_create_horizontal_scroll_bar)
+ (xg_update_horizontal_scrollbar_pos)
+ (xg_set_toolkit_horizontal_scroll_bar_thumb): New functions.
+ (xg_create_scroll_bar): Set horizontal slot of bar.
+ (xg_initialize): Call update_theme_scrollbar_height.
+ (xg_clear_under_internal_border): No more static.
+ * insdel.c (adjust_suspend_auto_hscroll): New function.
+ (adjust_markers_for_delete, adjust_markers_for_insert)
+ (adjust_markers_for_replace): Call adjust_suspend_auto_hscroll.
+ * keyboard.c (readable_events, discard_mouse_events)
+ (make_lispy_event): Handle horizontal scroll bar click events.
+ (Fsuspend_emacs): When changing the size of a tty frame do not
+ pass height of menu bar.
+ (Qbefore_handle, Qhorizontal_handle, Qafter_handle, Qleft)
+ (Qright, Qleftmost, Qrightmost): New symbols.
+ * menu.c (Fx_popup_dialog): Use FRAME_TOTAL_LINES instead of
+ FRAME_LINES.
+ * minibuf.c (read_minibuf): Initialize suspend_auto_hscroll.
+ * nsfns.m (x_set_internal_border_width): New function.
+ * nsterm.m (ns_draw_fringe_bitmap, ns_set_vertical_scroll_bar):
+ Remove extended fringe code.
+ (x_set_window_size, x_new_font): Don't call
+ compute_fringe_widths.
+ * term.c (Fresume_tty): When changing the size of a tty frame do
+ not pass height of menu bar.
+ (clear_tty_hooks, set_tty_hooks):
+ Clear horizontal_scroll_bar_hook.
+ (init_tty): Frame has no horizontal scroll bars.
+ * termhooks.h (enum scroll_bar_part): Add scroll_bar_move_ratio,
+ scroll_bar_before_handle, scroll_bar_horizontal_handle,
+ scroll_bar_after_handle, scroll_bar_left_arrow,
+ scroll_bar_right_arrow, scroll_bar_to_leftmost and
+ scroll_bar_to_rightmost entries.
+ (enum event_kind): Add HORIZONTAL_SCROLL_BAR_CLICK_EVENT
+ (struct terminal): Add set_horizontal_scroll_bar_hook.
+ * w32console.c (initialize_w32_display):
+ Clear horizontal_scroll_bar_hook.
+ * w32fns.c (x_set_mouse_color): Use FRAME_W32_DISPLAY instead of
+ FRAME_X_DISPLAY.
+ (x_clear_under_internal_border, x_set_internal_border_width):
+ New functions.
+ (x_set_menu_bar_lines): Rewrite using frame_inhibit_resize.
+ Set windows_or_buffers_changed when adding the menu bar.
+ (x_set_tool_bar_lines): Rewrite using adjust_frame_size.
+ (x_change_tool_bar_height, x_set_scroll_bar_default_height)
+ (w32_createhscrollbar): New functions.
+ (w32_createscrollbar): Rename to w32_createvscrollbar.
+ (w32_createwindow): Init WND_HSCROLLBAR_INDEX.
+ (w32_name_of_message): Replace WM_EMACS_CREATESCROLLBAR by
+ WM_EMACS_CREATEVSCROLLBAR and WM_EMACS_CREATEHSCROLLBAR.
+ Add WM_EMACS_SHOWCURSOR.
+ (w32_wnd_proc): Handle WM_HSCROLL case. In WM_WINDOWPOSCHANGING
+ case do not artificially impose WM size hints.
+ Handle WM_EMACS_SHOWCURSOR case. Replace WM_EMACS_CREATESCROLLBAR case
+ by WM_EMACS_CREATEVSCROLLBAR and WM_EMACS_CREATEHSCROLLBAR
+ cases.
+ (my_create_tip_window): Replace WND_SCROLLBAR_INDEX by
+ WND_VSCROLLBAR_INDEX and WND_HSCROLLBAR_INDEX.
+ (unwind_create_frame_1): Remove.
+ (Fx_create_frame): Make both scrollbars the system standard
+ width and height. Use official field of frame structure to
+ inhibit running window-configuration-change-hook.
+ (x_create_tip_frame): Call SET_FRAME_LINES and change_frame_size
+ pixelwise. Handle frame's official field.
+ (w32_frame_parm_handlers): Remove x_set_fringe_width
+ entries. Add x_set_scroll_bar_height,
+ x_set_horizontal_scroll_bars, x_set_left_fringe and
+ x_set_right_fringe.
+ * w32inevt.c (resize_event, maybe_generate_resize_event): Do not
+ pass height of menu bar to change_frame_size.
+ * w32menu.c (set_frame_menubar): Rewrite using
+ frame_inhibit_resize.
+ * w32term.h (struct w32_display_info):
+ Add horizontal_scroll_bar_cursor and cursor_display_counter.
+ (struct scroll_bar): Add horizontal.
+ (HORIZONTAL_SCROLL_BAR_INSIDE_HEIGHT)
+ (HORIZONTAL_SCROLL_BAR_LEFT_RANGE)
+ (HORIZONTAL_SCROLL_BAR_INSIDE_WIDTH)
+ (HORIZONTAL_SCROLL_BAR_LEFT_BORDER)
+ (HORIZONTAL_SCROLL_BAR_RIGHT_BORDER)
+ (HORIZONTAL_SCROLL_BAR_TOP_BORDER)
+ (HORIZONTAL_SCROLL_BAR_BOTTOM_BORDER)
+ (HORIZONTAL_SCROLL_BAR_MIN_HANDLE): New macros.
+ (WM_EMACS_CREATEVSCROLLBAR, WM_EMACS_CREATEHSCROLLBAR):
+ Define instead of WM_EMACS_CREATESCROLLBAR.
+ (WND_VSCROLLBAR_INDEX, WND_HSCROLLBAR_INDEX): Define instead of
+ WND_SCROLLBAR_INDEX.
+ * w32term.c (horizontal_scroll_bar_min_handle)
+ (horizontal_scroll_bar_left_border)
+ (horizontal_scroll_bar_right_border): New integers.
+ (x_set_frame_alpha): Replace x_highlight_frame by
+ w32_focus_frame.
+ (x_window_to_scroll_bar): New argument "type". Update callers
+ accordingly.
+ (w32_set_horizontal_scroll_bar_thumb)
+ (x_horizontal_scroll_bar_report_motion)
+ (w32_set_horizontal_scroll_bar)
+ (w32_horizontal_scroll_bar_handle_click)
+ (x_horizontal_scroll_bar_report_motion): New functions.
+ (w32_mouse_position): Discriminate horizontal and vertical
+ scrollbar cases.
+ (my_create_scrollbar): Replace with two new functions
+ my_create_vscrollbar and my_create_hscrollbar.
+ (x_scroll_bar_create): New argument "horizontal".
+ Update callers accordingly.
+ (x_scroll_bar_remove, w32_condemn_scroll_bars)
+ (w32_redeem_scroll_bar, x_scroll_bar_clear): Handle horizontal
+ scroll bar case.
+ (w32_read_socket): Handle WM_HSCROLL cae.
+ (x_new_font): Don't recompute fringe widths.
+ Use frame_inhibit_resize. Calculate new menu bar height iff we
+ build without toolkit. Always clear under internal border.
+ (x_set_window_size): Don't check frame size or recompute
+ fringes. Reset fullscreen status before applying sizes.
+ Always resize as requested by pixelwise argument. Don't call
+ do_pending_window_change.
+ (x_wm_set_size_hint): Add call for FRAME_SCROLL_BAR_AREA_HEIGHT.
+ (w32_initialize_display_info): Initialize dpyinfo's
+ horizontal_scroll_bar_cursor entry.
+ (w32_create_terminal): Add set_horizontal_scroll_bar_hook.
+ (w32_initialize): Init horizontal_scroll_bar_min_handle and
+ horizontal_scroll_bar_left_border.
+ (w32fullscreen_hook): Intermittently resize window to normal
+ when switching from fullscreen to maximized state.
+ (run_window_configuration_change_hook): Don't run it if frame is
+ not official yet.
+ (unwind_change_frame): Remove.
+ (Fset_window_configuration): Rewrite using frame's official field.
+ * widget.c (set_frame_size): Don't call compute_fringe_widths.
+ (EmacsFrameSetCharSize): Obey frame_inhibit_resize.
+ * window.h (struct window): New fields old_pointm,
+ horizontal_scroll_bar, horizontal_scroll_bar_type, hscroll_whole,
+ scroll_bar_height and suspend_auto_hscroll.
+ (wset_horizontal_scroll_bar, wset_horizontal_scroll_bar_type):
+ New functions.
+ (sanitize_window_sizes): Extern.
+ (MINI_NON_ONLY_WINDOW_P, MINI_ONLY_WINDOW_P, WINDOW_PSEUDO_P)
+ (WINDOW_TOPMOST_P, WINDOW_HAS_HORIZONTAL_SCROLL_BAR)
+ (WINDOW_CONFIG_SCROLL_BAR_HEIGHT)
+ (WINDOW_CONFIG_SCROLL_BAR_LINES)
+ (WINDOW_SCROLL_BAR_LINES, WINDOW_SCROLL_BAR_AREA_HEIGHT):
+ New macros.
+ (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
+ (WINDOW_FRINGE_COLS, WINDOW_FRINGE_EXTENDED_P): Remove macros.
+ (WINDOW_VERTICAL_SCROLL_BAR_TYPE)
+ (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
+ (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
+ (WINDOW_HAS_VERTICAL_SCROLL_BAR): Minor rewrite.
+ (WINDOW_BOX_HEIGHT_NO_MODE_LINE, WINDOW_BOX_TEXT_HEIGHT)
+ (WINDOW_SCROLL_BAR_AREA_Y): Count in scroll bar height.
+ * window.c (wset_old_pointm, Fwindow_scroll_bar_height)
+ (Fwindow_old_point, sanitize_window_sizes): New functions.
+ (Qwindow_sanitize_window_sizes): New symbol.
+ (window_body_height): Count in horizontal scroll bar.
+ (set_window_hscroll, Fscroll_left, Fscroll_right):
+ Set suspend_auto_hscroll slot.
+ (Fwindow_inside_edges): Count fringes pixelwise.
+ (coordinates_in_window, Fcoordinates_in_window_p):
+ Consider horizontal scroll bar.
+ (check_frame_size, adjust_window_margins): Remove functions and
+ corresponding calls.
+ (set_window_buffer): Initialize old_pointm and horizontal scroll bars.
+ (temp_output_buffer_show): Reset hscroll related fields.
+ Initialize old_pointm.
+ (make_parent_window): Initialize old_pointm.
+ (make_window): Initialize old_pointm, horizontal scroll bar type,
+ and scroll bar height.
+ (resize_frame_windows): Don't count top margin in new sizes.
+ Don't use safe sizes when shrinking a frame; let the window
+ manager do the clipping.
+ (Fsplit_window_internal): Inherit horizontal scroll bar type and
+ height.
+ (Fdelete_window_internal): Unchain old_pointm marker.
+ (window_scroll_pixel_based, Fscroll_other_window):
+ Adjust old_pointm.
+ (Fwindow_text_width, Fwindow_text_height): New argument
+ "pixelwise".
+ (struct saved_window): New fields, old_pointm, hscroll_whole,
+ suspend_auto_hscroll, scroll_bar_height and
+ horizontal_scroll_bar_type.
+ (Fset_window_configuration, save_window_save): Set new fields of
+ saved_window.
+ (apply_window_adjustment): Don't call adjust_window_margins.
+ (set_window_margins): Don't change margins if new sizes don't
+ fit into window.
+ (set_window_scroll_bars): New argument "horizontal_type".
+ Handle horizontal scroll bars. Don't change scroll bars if they
+ don't fit into window.
+ (Fset_window_scroll_bars): New argument "horizontal_type".
+ (Fwindow_scroll_bars): Return values for horizontal scroll bars.
+ (compare_window_configurations): Compare horizontal scroll bar
+ settings.
+ * xdisp.c (window_text_bottom_y, window_box_height): Count in
+ horizontal scroll bar height.
+ (pixel_to_glyph_coords, init_xdisp): Use FRAME_TOTAL_LINES
+ instead of FRAME_LINES.
+ (remember_mouse_glyph): Case ON_SCROLL_BAR changed to
+ ON_VERTICAL_SCROLL_BAR.
+ (with_echo_area_buffer): Initialize old_pointm.
+ (with_echo_area_buffer_unwind_data): Store old_pointm values in
+ vector.
+ (unwind_with_echo_area_buffer): Handle old_pointm.
+ (update_tool_bar): Set do_update when the tool bar window has at
+ least one line (since this is what the user sets).
+ (MAX_FRAME_TOOL_BAR_HEIGHT): Remove macro.
+ (redisplay_tool_bar): Return early when toolbar has zero lines.
+ Call x_change_tool_bar_height. Don't use max_tool_bar_height.
+ (hscroll_window_tree): Handle suspension of auto_hscroll and
+ old_pointm.
+ (set_horizontal_scroll_bar): New function.
+ (redisplay_window): Set ignore_mouse_drag_p when tool bar has
+ more than one line. Handle horizontal scroll bars.
+ (note_mouse_highlight): Handle horizontal scrol bars.
+ (expose_frame): Set dimensions of XRectangle from frame's text
+ sizes.
+ (Vvoid_text_area_pointer): Update doc-string.
+ * xfns.c (x_set_menu_bar_lines): Use adjust_frame_size.
+ (x_change_tool_bar_height, x_set_scroll_bar_default_height)
+ (x_set_internal_border_width): New functions.
+ (x_set_tool_bar_lines): Call x_change_tool_bar_height.
+ (unwind_create_frame_1): Remove.
+ (Fx_create_frame): Handle horizontal scroll bars. Use official
+ field of frame structure to inhibit running
+ window-configuration-change-hook.
+ (x_create_tip_frame): Call SET_FRAME_LINES and change_frame_size
+ pixelwise. Handle frame's official field.
+ (x_frame_parm_handlers): Add x_set_scroll_bar_height,
+ x_set_horizontal_scroll_bars, x_set_left_fringe,
+ x_set_right_fringe.
+ * xmenu.c (update_frame_menubar, free_frame_menubar):
+ Use adjust_frame_size.
+ * xterm.h (struct x_display_info):
+ Add horizontal_scroll_bar_cursor and Xatom_Horizontal_Scrollbar
+ slots.
+ (struct scroll_bar): Add horizontal slot.
+ (HORIZONTAL_SCROLL_BAR_INSIDE_HEIGHT)
+ (HORIZONTAL_SCROLL_BAR_LEFT_RANGE)
+ (HORIZONTAL_SCROLL_BAR_INSIDE_WIDTH): New macros.
+ (HORIZONTAL_SCROLL_BAR_LEFT_BORDER)
+ (HORIZONTAL_SCROLL_BAR_RIGHT_BORDER)
+ (HORIZONTAL_SCROLL_BAR_TOP_BORDER)
+ (HORIZONTAL_SCROLL_BAR_BOTTOM_BORDER)
+ (HORIZONTAL_SCROLL_BAR_MIN_HANDLE): Define.
+ (x_clear_under_internal_border): Remove.
+ * xterm.c (XTmouse_position): Handle horizontal scroll bars.
+ (x_window_to_scroll_bar): New argument TYPE. Update callers.
+ (x_send_scroll_bar_event, x_scroll_bar_create): New arguments
+ HORIZONTAL. Update callers.
+ (horizontal_action_hook_id): New action hook id.
+ (x_horizontal_scroll_bar_to_input_event)
+ (x_create_horizontal_toolkit_scroll_bar)
+ (xt_horizontal_action_hook)
+ (x_set_toolkit_horizontal_scroll_bar_thumb)
+ (XTset_horizontal_scroll_bar, x_net_wm_state)
+ (x_horizontal_scroll_bar_report_motion): New functions.
+ (xg_scroll_callback, x_scroll_bar_handle_click):
+ Handle horizontal scroll bars.
+ (SCROLL_BAR_HORIZONTAL_NAME): Define.
+ (XTset_vertical_scroll_bar): Attempt to clear areas not covered
+ by scroll bar.
+ (XTcondemn_scroll_bars, XTredeem_scroll_bar): Rewrite.
+ Handle horizontal scroll bars.
+ (handle_one_xevent): Handle horizontal scroll bar events.
+ Call x_net_wm_state.
+ (x_set_window_size_1, x_wm_set_size_hint): Don't call
+ check_frame_size.
+ (x_set_window_size): Don't call check_frame_size and
+ do_pending_window_change.
+ (x_term_init): Init horizontal_scroll_bar_cursor display info.
+ (x_create_terminal): Add set_horizontal_scroll_bar_hook.
+ (x_scroll_bar_set_handle): Add some checks when calling
+ x_clear_area.
+
+2014-07-26 Paul Eggert <eggert@cs.ucla.edu>
+
+ Revert previous change.
+ There is certainly nothing wrong with writing code like 'lo <= i
+ && i <= hi', even if LO happens to a constant. There isn't even
+ anything wrong in general with writing 'a <= b' if A happens to
+ be a constant. At any rate stylistic changes shouldn't
+ be done like this without discussion.
+
+2014-07-26 Andreas Schwab <schwab@linux-m68k.org>
+
+ * alloc.c (xnmalloc, xnrealloc, xpalloc, make_save_value)
+ (Fgarbage_collect): Reorder conditions that are written backwards.
+ * data.c (cons_to_unsigned): Likewise.
+ * dispnew.c (update_frame_1, sit_for): Likewise.
+ * fileio.c (file_offset): Likewise.
+ * filelock.c (read_lock_data, lock_file): Likewise.
+ * fns.c (larger_vector, make_hash_table, Fmake_hash_table):
+ Likewise.
+ * font.c (font_intern_prop, font_style_symbolic): Likewise.
+ * lisp.h (FIXNUM_OVERFLOW_P): Likewise.
+ * lread.c (read1): Likewise.
+ * minibuf.c (read_minibuf_noninteractive): Likewise.
+ * nsterm.m (x_set_frame_alpha): Likewise.
+ * process.c (wait_reading_process_output): Likewise.
+ * region-cache.c (delete_cache_boundaries): Likewise.
+ * xterm.c (x_set_frame_alpha): Likewise.
+
+2014-07-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ * dispextern.h, xdisp.c (hourglass_shown_p, hourglass_atimer):
+ Now static.
+
+2014-07-26 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * atimer.c (set_alarm) [HAVE_ITIMERSPEC]: Use TIMER_ABSTIME
+ because atimer expiration is absolute rather than relative.
+
+2014-07-25 Eli Zaretskii <eliz@gnu.org>
+
+ * w32term.h (current_popup_menu, menubar_in_use):
+ Move declarations from w32term.c.
+
+2014-07-25 Martin Rudalics <rudalics@gmx.at>
+
+ * w32fns.c (menubar_in_use): No more static.
+ * w32term.c (current_popup_menu, menubar_in_use): Declare.
+
+2014-07-25 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Move hourglass machinery to RIF.
+ * dispextern.h (struct redisplay_interface): New members
+ show_hourglass and hide_hourglass. Indent comments.
+ (show_hourglass, hide_hourglass): Remove prototypes.
+ * nsterm.m (show_hourgass, hide_hourglass): Refactor to ...
+ (ns_show_hourglass, ns_hide_hourglass): ... new no-ops.
+ (ns_redisplay_interface): Add them.
+ * w32fns.c (show_hourglass, hide_hourglass): Refactor to ...
+ * w32term.c (w32_show_hourglass, w32_hide_hourglass): ... these.
+ (w32_arrow_cursor): New function to hack around non-GUI frames.
+ (w32_redisplay_interface): Add new functions.
+ * w32term.h (w32_arror_cursor): Add prototype.
+ * xdisp.c (show_hourglass): New function, refactored out from
+ platform-dependent code.
+ (cancel_hourglass): Now call to RIF function.
+ * xfns.c (show_hourglass, hide_hourglass): Refactor to ...
+ * xterm.c (x_show_hourglass, x_hide_hourglass): ... these.
+ (x_redisplay_interface): Add new functions.
+
+2014-07-24 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Fix error reported by Angelo Graziosi <angelo.graziosi@alice.it> in
+ <http://lists.gnu.org/archive/html/emacs-devel/2014-07/msg00274.html>
+ and complete previous change.
+ * frame.c (adjust_frame_height): New function.
+ (Fset_frame_height, Fset_frame_size): Use it.
+ (x_set_frame_parameters): Take frame top margin into account.
+
+2014-07-23 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * frame.c (Fset_frame_height): Take frame top margin into account.
+ Incorrect behavior was reported by Martin Rudalics <rudalics@gmx.at> in
+ <http://lists.gnu.org/archive/html/emacs-devel/2014-07/msg00258.html>
+
+2014-07-22 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * xterm.h (struct x_output) [USE_X_TOOLKIT || USE_GTK]: Define
+ menubar_height as such. Tweak comment.
+ [USE_LUCID && USE_TOOLKIT_SCROLL_BARS]: Likewise for
+ scroll_bar_top_shadow_pixel and scroll_bar_bottom_shadow_pixel.
+ All related users changed.
+ (FRAME_MENUBAR_HEIGHT) [!USE_X_TOOLKIT && !USE_GTK]: No-op.
+ * xterm.c (handle_one_xevent):
+ * gtkutil.c (xg_event_is_for_menubar):
+ * xfns.c (x_window) [USE_X_TOOLKIT]:
+ * xmenu.c (set_frame_menubar, free_frame_menubar):
+ Prefer to use FRAME_MENUBAR_HEIGHT.
+
+2014-07-21 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * frame.c (Fframe_parameters): Always report frame height without
+ menu and tool bar lines.
+
+2014-07-21 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (applicationDidFinishLaunching:): Call
+ antialiasThresholdDidChange, register for antialias changes (Bug#17534).
+ (antialiasThresholdDidChange:): New method for EmacsApp.
+
+ * nsterm.h (EmacsApp): Add antialiasThresholdDidChange.
+
+ * macfont.m (macfont_update_antialias_threshold): Remove static.
+
+ * macfont.h (macfont_update_antialias_threshold): Declare.
+
+2014-07-21 Eli Zaretskii <eliz@gnu.org>
+
+ * w32select.c (setup_windows_coding_system):
+ Apply CODING_ANNOTATION_MASK to the common_flags member of struct
+ coding_system. Reported by martin rudalics <rudalics@gmx.at>.
+
+ * w16select.c (Fw16_get_clipboard_data):
+ Apply CODING_ANNOTATION_MASK to the common_flags member of struct
+ coding_system.
+
+ * xdisp.c (init_iterator): Initialize it->stop_charpos to the
+ buffer position where we are to start the iteration.
+ (handle_invisible_prop): Record in it->stop_charpos the position
+ where the invisible text ends. (Bug#18035)
+ (hscroll_window_tree): Don't try hscrolling windows whose cursor
+ row has zero buffer position as their start position.
+ Reported by martin rudalics <rudalics@gmx.at>.
+
+ * xdisp.c (move_it_vertically_backward, move_it_by_lines): Prevent
+ infinite looping in redisplay when display lines don't have enough
+ space to display even a single character. (Bug#18036)
+
+2014-07-20 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * frame.h (struct frame) [USE_X_TOOLKIT]: New member shell_position.
+ * xfns.c (x_window): Use it to allow xfree later.
+ (x_encode_text): Drop 3rd arg; unused. Tweak comment and adjust users
+ where appropriate. Use bool for booleans and remove redundant checks.
+ (Fx_backspace_delete_keys_p): Use XkbFreeKeyboard; explain why.
+ * xterm.c (x_free_frame_resources): Free shell_position.
+
+2014-07-19 K. Handa <handa@gnu.org>
+
+ * xfaces.c (realize_x_face): Call font_load_for_lface with no
+ mandatory font spec (Bug#17973).
+
+2014-07-19 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * font.c (font_score): Return the worst score if the size of
+ ENTITY is wrong by more than a factor 2 (Bug#17973).
+
+2014-07-18 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * frame.c (frame_unspecified_color): New function
+ refactored out from ...
+ (Fframe_parameters, Fframe_parameter): ... adjusted users.
+ (x_fullscreen_adjust, set_frame_param): Move Windows-specific
+ function to ...
+ * w32term.c (x_fullscreen_adjust, set_frame_param): ... static here.
+ * frame.h (x_fullscreen_adjust) [HAVE_NTGUI]:
+ * lisp.h (set_frame_param): Remove prototype.
+ * xterm.c (x_display_pixel_width, x_display_pixel_height): Now ...
+ * xterm.h (x_display_pixel_width, x_display_pixel_height): ...
+ inlined from here.
+
+ Prefer 'x_display_info *' to 'Display *' in X selection code.
+ This helps to avoid unneeded calls to x_display_info_for_display.
+ * xterm.h (struct selection_input_event): Record 'x_display_info *'
+ instead of 'Display *'.
+ (SELECTION_EVENT_DPYINFO): New macro.
+ (SELECTION_EVENT_DISPLAY): Now inline function to prohibit using
+ it as an lvalue. Mention this in comment.
+ * xterm.c (handle_one_xevent): Use SELECTION_EVENT_DPYINFO.
+ * xselect.c (x_get_window_property_as_lisp_data, x_atom_to_symbol)
+ (selection_data_to_lisp_data, receive_incremental_selection):
+ Convert to use 'x_display_info *'. Adjust users where appropriate.
+ (lisp_data_to_selection_data): Likewise. Also pass 'struct
+ selection data *' as last arg to not return values in args.
+ (unexpect_property_change): Use common removal technique.
+
+2014-07-17 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * print.c (print_preprocess): Adjust to match changed
+ sub char-table structure and avoid crash (Bug#18038).
+
+ * data.c (wrong_choice): Not static any more.
+ * lisp.h (wrong_choice): Add prototype.
+ * frame.h (struct frame) [USE_X_TOOLKIT || HAVE_NTGUI]:
+ Declare namebuf as such. Tweak comment.
+ [USE_GTK]: Likewise for tool_bar_position.
+ (fset_tool_bar_position) [USE_GTK]: Ditto.
+ (FRAME_TOOL_BAR_POSITION): New macro.
+ * frame.c (x_report_frame_params):
+ * gtkutil.c (update_frame_tool_bar):
+ * xfns.c (Fx_create_frame): Use it.
+ (x_set_tool_bar_position): Add meaningful diagnostic messages.
+
+2014-07-16 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (decode_mode_spec): Call file-remote-p on the current
+ buffer's default-directory only if it is a string. (Bug#17986)
+
+2014-07-16 Dmitry Antipov <dmantipov@yandex.ru>
+
+ More precise control over values of some buffer-local variables.
+ * keyboard.c (Qvertical_scroll_bar):
+ * frame.c (Qleft, Qright): Move to ...
+ * buffer.c (Qleft, Qright, Qvertical_scroll_bar): ... here.
+ * buffer.c (Qchoice, Qrange, Qoverwrite_mode, Qfraction): New symbols.
+ (syms_of_buffer): DEFSYM all of the above, attach special properties.
+ Use special symbols to DEFVAR_PER_BUFFER overwrite-mode,
+ vertical-scroll-bar, scroll-up-aggressively
+ and scroll-down-aggressively.
+ * buffer.h (Qchoice, Qrange, Qleft, Qright, Qvertical_scroll_bar):
+ Add declarations.
+ * nsfns.m, frame.h (Qleft, Qright):
+ * nsterm.m (Qleft): Remove declarations.
+ * gtkutil.c (toplevel): Include buffer.h.
+ * data.c (wrong_choice, wrong_range): New functions.
+ (store_symval_forwarding): Handle special properties of buffer-local
+ variables and use functions from the above to signal error, if any.
+
+ * frame.h (enum fullscreen_type) [HAVE_WINDOW_SYSTEM]: Use more natural
+ values. Add comment.
+ (struct frame): Re-arrange layout to avoid extra padding and use bit
+ fields for output_method, want_fullscreen and vertical_scroll_bar_type.
+ (FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS)
+ (FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT)
+ (FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT) [!HAVE_WINDOW_SYSTEM]:
+ Define as no-ops because there are no scroll bars anyway.
+ * frame.c (make_frame, make_terminal_frame, make_initial_frame):
+ Adjust users.
+
+ * font.c (fset_font_data) [HAVE_XFT || HAVE_FREETYPE]:
+ Add convenient setter.
+ (font_put_frame_data, font_get_frame_data): Use it.
+
+2014-07-15 Daiki Ueno <ueno@gnu.org>
+
+ * nsgui.h (XCHAR2B_BYTE1): Add missing parentheses around
+ pointer argument, before dereferencing.
+ (XCHAR2B_BYTE2): Likewise.
+
+2014-07-15 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * xmenu.c (toplevel): Use LWLIB_ID for next_menubar_widget_id.
+ (pop_down_menu) [USE_X_TOOLKIT]: Accept integer arg.
+ (create_and_show_popup_menu, create_and_show_dialog) [USE_X_TOOLKIT]:
+ Use record_unwind_protect_int and avoid consing.
+ (syms_of_xmenu) [USE_X_TOOLKIT]: Declare WIDGET_ID_TICK_START.
+
+ * regex.c (re_search_2): Use ssize_t to avoid integer overflow.
+
+2014-07-14 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use binary-io module, O_BINARY, and "b" flag (Bug#18006).
+ * callproc.c (create_temp_file): Use mkostemp's O_BINARY flag.
+ * emacs.c [MSDOS]:
+ * emacs.c (main) [DOS_NT]: Don't mess with _fmode.
+ (main) [MSDOS]: Use SET_BINARY instead of setmode.
+ * minibuf.c: Include binary-io.h instead of fcntl.h.
+ (read_minibuf_noninteractive):
+ Use set_binary_mode instead of handcrafted code.
+ Don't call emacs_set_tty if emacs_get_tty failed.
+ * sysdep.c, systty.h (emacs_get_tty): Return int, not void.
+ * sysdep.c (emacs_open, emacs_pipe): Use O_BINARY.
+ * w32.c (pipe2): Adjust eassert to include O_BINARY.
+
+ * macros.c (Fstart_kbd_macro): Avoid need for overflow check.
+ This works around a GCC compiler bug when Emacs is configured with
+ --enable-gcc-warnings.
+
+2014-07-14 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * lisp.h (CHECK_VECTOR_OR_STRING): Return number of elements
+ or characters in string, respectively. Add comment.
+ * fringe.c (Fdefine_fringe_bitmap):
+ * fns.c (Fsubstring, substring_both): Use it.
+ * keymap.c (Fdefine_key, Flookup_key):
+ * macros.c (Fstart_kbd_macro): Likewise. Avoid call to Flength.
+
+ * term.c (tty_menu_add_pane, tty_menu_add_selection):
+ Use menu_item_width.
+ (tty_menu_show): Simplify because tty_menu_create never return NULL.
+
+2014-07-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ Improve behavior of 'bzr up; cd src; make -k'.
+ * Makefile.in (top_srcdir): New var.
+ (ntsource, lispsource, ALL_CFLAGS, gl-stamp, emacs.res):
+ Use '$(top_srcdir)' instead of '$(srcdir)/..';
+ its expansion is a bit shorter.
+ (../config.status): Actually build config.status instead of
+ just complaining.
+ (ACLOCAL_INPUTS, AUTOCONF_INPUTS):
+ New macros, copied and relocated from ../Makefile.in.
+ ($(top_srcdir)/aclocal.m4, $(top_srcdir)/configure, config.in)
+ (../config.status, Makefile): New dependencies and rules,
+ copied with relocation from ../Makefile.in. This should be more
+ likely to rebuild the build machinery properly if you do a 'make'
+ in the src directory.
+
+2014-07-12 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (display_line): Don't call FETCH_BYTE with argument less
+ than 1. (Bug#17962)
+
+ * w32fns.c (Fx_file_dialog): Mention in the doc string the
+ behavior on Windows 7 and later when the function is repeatedly
+ invoked with the same value of DIR. (Bug#17950)
+
+ * xfns.c (Fx_file_dialog) [USE_MOTIF, USE_GTK]: Update the doc
+ string to match the one in w32fns.c.
+
+ * minibuf.c (read_minibuf_noninteractive) [WINDOWSNT]: Switch
+ stdin to binary mode only if it is connected to a terminal.
+
+2014-07-11 Paul Eggert <eggert@cs.ucla.edu>
+
+ Coalesce extern decls.
+ * minibuf.c (emacs_get_tty, emacs_set_tty, suppress_echo_on_tty):
+ * sysdep.c (emacs_get_tty, emacs_set_tty):
+ Move duplicate extern decls from here ...
+ * systty.h: ... to here, so that there's just one copy.
+
+2014-07-11 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (changeFont:): Add ifdef NS_IMPL_COCOA.
+
+ * nsfns.m (Fns_popup_font_panel): Ditto.
+
+2014-07-11 Eli Zaretskii <eliz@gnu.org>
+
+ * minibuf.c (read_minibuf_noninteractive): Finish reading on '\r',
+ not only on '\n'.
+ [WINDOWSNT]: Switch stdin to binary mode when not echoing input.
+
+ * sysdep.c (emacs_get_tty, emacs_set_tty, suppress_echo_on_tty)
+ [DOS_NT]: Implement for WINDOWSNT.
+
+ * systty.h (struct emacs_tty) [DOS_NT]: The struct member is now
+ unsigned.
+
+2014-07-11 Michael Albinus <michael.albinus@gmx.de>
+
+ * sysdep.c (suppress_echo_on_tty): New function.
+ * minibuf.c (read_minibuf_noninteractive): Use it.
+
+2014-07-11 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * alloc.c (Fmemory_info) [HAVE_LINUX_SYSINFO]: Return nil if
+ sysinfo failed. Adjust docstring.
+
+2014-07-11 Eli Zaretskii <eliz@gnu.org>
+
+ Implement memory-info for MS-DOS.
+ * dosfns.c (dos_memory_info): New function.
+ * dosfns.h (dos_memory_info): Add prototype.
+ * alloc.c (Fmemory_info) [MSDOS]: Call dos_memory_info.
+ * vm-limit.c (get_lim_data) [MSDOS]: Call dos_memory_info, instead
+ of doing some of its job.
+
+ * minibuf.c (read_minibuf_noninteractive) [WINDOWSNT]: Don't
+ reference termios structure members.
+
+2014-07-11 Michael Albinus <michael.albinus@gmx.de>
+
+ * sysdep.c (emacs_get_tty, emacs_set_tty): Make them externally visible.
+
+ * minibuf.c (top): Include systty.h. Declare external
+ emacs_get_tty and emacs_set_tty.
+ (Vread_hide_char): New lisp variable.
+ (read_minibuf_noninteractive): Hide characters with
+ Vread_hide_char if it is a character. (Bug#17839)
+
+2014-07-10 Eli Zaretskii <eliz@gnu.org>
+
+ Implement memory-info for MS-Windows.
+ * w32.c (w32_memory_info): New function.
+ * w32.h (w32_memory_info): Prototype it.
+ * alloc.c (Fmemory_info) [WINDOWSNT]: Call it.
+
+2014-07-10 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * coding.h (struct coding_system): Remove 'error_positions' (unused)
+ and 'errors' (set but unused) fields. Use bitfields for 'eol_seen',
+ 'mode', 'common_flags' and 'result' fields, adjust layout to avoid
+ extra padding and shrink struct coding_system by 56 bytes (x86_64).
+ * coding.c (decode_coding_utf_8, decode_coding_utf_16)
+ (decode_coding_emacs_mule, decode_coding_iso_2022, decode_coding_sjis)
+ (decode_coding_big5, decode_coding_charset, decode_coding)
+ (encode_coding): Adjust users.
+
+ * alloc.c (Fmemory_info): New function.
+
+2014-07-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ * syntax.c (back_comment): Use more-natural location for label.
+
+ * font.c, font.h (font_unparse_fcname): Now static.
+ Define only if HAVE_XFT || HAVE_FREETYPE || HAVE_NS.
+
+2014-07-09 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Next minor cleanup of font subsystem.
+ * font.h (enum font_property_index): Remove FONT_ENTITY_INDEX (no
+ users) and FONT_FORMAT_INDEX (set by a few font drivers but never
+ really used).
+ (FONT_ENTITY_NOT_LOADABLE, FONT_ENTITY_SET_NOT_LOADABLE): Remove;
+ unused.
+ * ftfont.h (ftfont_font_format): Remove prototype.
+ * ftfont.c (ftfont_font_format): Remove; now unused.
+ (ftfont_open):
+ * nsfont.m (nsfont_open):
+ * w32font.c (w32font_open_internal):
+ * w32uniscribe.c (uniscribe_open):
+ * xfont.c (xfont_open):
+ * xftfont.c (xftfont_open): All users changed.
+
+ * coding.c (ALLOC_CONVERSION_WORK_AREA): Prefer ptrdiff_t to int and
+ so avoid integer overflow if decoded gap size exceeds INT_MAX bytes.
+
+2014-07-09 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (move_it_to): Adjust calculation of line_start_x to what
+ x_produce_glyphs does when it generates a stretch glyph that
+ represents a TAB. (Bug#17969)
+
+ * xdisp.c (pos_visible_p): If CHARPOS is at beginning of window,
+ and there is a display property at that position, don't call
+ move_it_to to move to a position before window start. (Bug#17942)
+ Fix condition for finding CHARPOS by the first call to move_it_to.
+ (Bug#17944)
+
+2014-07-09 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * syntax.c (find_defun_start): Try the cache even
+ if !open_paren_in_column_0_is_defun_start.
+ (back_comment): If find_defun_start was pessimistic, use the
+ scan_sexps_forward result to improve the cache (bug#16526).
+
+2014-07-09 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (redisplay_window): If redisplay of a window ends up
+ with point in a partially visible line at end of the window, make
+ sure the amended position of point actually has smaller Y
+ coordinate; if not, give up and scroll the display. (Bug#17905)
- * xdisp.c (draw_glyphs): Set clipping to highlight boundaries.
- [Backport]
- (erase_phys_cursor): Fix confusion between window-relative and
- text area-relative x-coordinates. [Backport]
+ * window.c (window_scroll_pixel_based): When point ends up at the
+ last fully visible line, don't let move_it_to stop at the left
+ edge of the line and dupe us into thinking point is inside the
+ scroll margin.
-2014-10-20 Glenn Morris <rgm@gnu.org>
+ * w32.c (network_interface_info): Make sure the argument is a
+ Lisp string.
- * minibuf.c (history-length): Increase default from 30 to 100.
- [Backport]
+2014-07-08 Paul Eggert <eggert@cs.ucla.edu>
-2014-10-20 Stefan Monnier <monnier@iro.umontreal.ca>
+ * process.c (read_and_dispose_of_process_output): Fix typo
+ in previous patch: we want nonnegative fds, not nonzero fds.
- * xdisp.c (redisplay_window): Re-run pre-redisplay-function after we
- move point.
+2014-07-08 Dmitry Antipov <dmantipov@yandex.ru>
-2014-10-20 Glenn Morris <rgm@gnu.org>
+ * chartab.c (char_table_translate): Move to...
+ * character.h (char_table_translate): ... inline function here.
+ Avoid Faref and assume that args are always valid. This helps to
+ speedup search, which is especially important for a huge buffers.
+ * lisp.h (char_table_translate): Remove prototype.
- * Version 24.4 released.
+ * nsfont.m (nsfont_close): Free glyphs and metrics arrays as well.
+ * font.c (font_build_object) [HAVE_XFT || HAVE_FREETYPE || HAVE_NS]:
+ New function, with an intention to avoid code duplication between
+ a few font drivers.
+ * font.h (font_build_object) [HAVE_XFT || HAVE_FREETYPE || HAVE_NS]:
+ Add prototype.
+ * ftfont.c (ftfont_open):
+ * macfont.m (macfont_open):
+ * xftfont.c (xftfont_open): Use it.
+
+2014-07-08 Paul Eggert <eggert@cs.ucla.edu>
+
+ * process.c: Add sanity checks for file descriptors (Bug#17844).
+ (wait_reading_process_output, Fprocess_filter_multibyte_p):
+ Check that infd is nonnegative before using it as an fd.
+ (read_and_dispose_of_process_output, Fprocess_send_eof):
+ Likewise, for outfd.
+ (wait_reading_process_output): Omit unnecessary check of infd.
+
+2014-07-07 Paul Eggert <eggert@cs.ucla.edu>
+
+ Minor fixups related to usage of the 'long' type.
+ * gnutls.c (emacs_gnutls_handshake):
+ * xfaces.c (dump_realized_face):
+ Work even if 'long' is narrower than 'void *'.
+ * termcap.c (scan_file):
+ * xselect.c (x_decline_selection_request)
+ (x_reply_selection_request, x_get_window_property):
+ * xterm.c (x_set_frame_alpha):
+ Remove unnecessary 'L' suffixes of integer constants.
+ * xfns.c (hack_wm_protocols):
+ * xselect.c (x_fill_property_data):
+ * xterm.c (x_set_offset, x_set_window_size_1, x_make_frame_invisible):
+ Remove unnecessary casts to 'long'.
+ (set_machine_and_pid_properties): Don't assume pid_t fits in 32 bits.
+
+ Minor ImageMagick safety fixes.
+ * image.c (imagemagick_compute_animated_image):
+ Remove useless assignment to local. Avoid problems if dest_width is 0.
+ (imagemagick_load_image): Use int for pixel counts that can't
+ exceed INT_MAX. Avoid problem if PixelGetNextIteratorRow returns
+ a row width greater than the image width (or greater than LONG_MAX!).
+
+2014-07-04 K. Handa <handa@gnu.org>
+
+ * coding.c (MIN_CHARBUF_SIZE): Delete it.
+ (MAX_CHARBUF_EXTRA_SIZE): New macro.
+ (ALLOC_CONVERSION_WORK_AREA): Use MAX_CHARBUF_EXTRA_SIZE.
+
+2014-07-04 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * font.h (struct font_driver): Remove get_outline and free_outline;
+ not used by any font driver.
+ * ftfont.c (ftfont_driver):
+ * macfont.m (macfont_driver):
+ * nsfont.m (nsfont_driver):
+ * w32font.c (w32font_driver):
+ * w32uniscribe.c (uniscribe_font_driver):
+ * xfont.c (xfont_driver): Related users changed.
+ * xselect.c (x_get_window_property): Use convenient xmalloc.
+ Call to xfree only if some data was really allocated.
+
+2014-07-03 Dmitry Antipov <dmantipov@yandex.ru>
+
+ On MS-Windows, display busy cursor on all GUI frames.
+ This is similar to what we have on X. Quickly tested by Dani Moncayo.
+ * w32fns.c (toplevel): Remove hourglass_hwnd; no longer used.
+ (w32_show_hourglass, w32_hide_hourglass, w32_note_current_window):
+ Likewise.
+ (hide_hourglass, show_hourglass): Redesign to match X counterparts.
+ * xdisp.c (start_hourglass): Remove Windows-specific bits.
+
+2014-07-03 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Use convenient alists to manage per-frame font driver-specific data.
+ * frame.h (struct frame): Rename font_data_list to...
+ [HAVE_XFT || HAVE_FREETYPE]: ... font_data, which is a Lisp_Object now.
+ * font.h (struct font_data_list): Remove; no longer need a special
+ data type.
+ (font_put_frame_data, font_get_frame_data) [HAVE_XFT || HAVE_FREETYPE]:
+ Adjust prototypes.
+ * font.c (font_put_frame_data, font_get_frame_data)
+ [HAVE_XFT || HAVE_FREETYPE]: Prefer alist functions to ad-hoc list
+ management.
+ * xftfont.c (xftfont_get_xft_draw, xftfont_end_for_frame):
+ Related users changed.
+ * ftxfont.c (ftxfont_get_gcs, ftxfont_end_for_frame): Likewise.
+ Prefer convenient xmalloc and xfree.
-2014-10-17 Eli Zaretskii <eliz@gnu.org>
+2014-07-03 Eli Zaretskii <eliz@gnu.org>
- * xterm.c (x_draw_hollow_cursor): Fix display of hollow cursor on
- 1-pixel R2L characters.
- Reported by Dmitry Antipov <dmantipov@yandex.ru>, see
- http://lists.gnu.org/archive/html/emacs-devel/2014-10/msg00518.html.
+ * dispnew.c (prepare_desired_row): Accept 2 additional arguments:
+ the window whose glyph row is being prepared and a flag whether it
+ is for mode/header line. Make sure the glyph row's marginal areas
+ are in sync with what the window wants.
+ (Bug#17892)
-2014-10-10 Paul Eggert <eggert@cs.ucla.edu>
+ * xdisp.c (display_line, display_mode_line):
+ Call prepare_desired_row with additional arguments, as appropriate.
- Fix port to Debian GNU/kFreeBSD 7 (wheezy) (Bug#18666).
- * process.c (accept4) [!HAVE_ACCEPT4]: New macro.
+ * dispextern.h (prepare_desired_row): Adjust prototype.
-2014-10-09 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-07-03 Dmitry Antipov <dmantipov@yandex.ru>
- * frame.c (Fmouse_pixel_position): Call Vmouse_position_function
- (bug#18638).
+ * xfaces.c (init_frame_faces): Always realize basic faces (Bug#17889).
+ * menu.c (Fx_popup_dialog): Set Vmenu_updating_frame to avoid crash
+ caused by xw_popup_dialog in daemon mode (Bug#17891).
-2014-10-08 K. Handa <handa@gnu.org>
+2014-07-03 Eli Zaretskii <eliz@gnu.org>
- * coding.c (detect_coding_iso_2022): Set coding->rejected
- correctly when an invalid escape sequence is found (Bug#18610).
+ * frame.c (do_switch_frame): When switching to another TTY frame,
+ make sure FrameCols and FrameRows are in sync with the new frame's
+ data. (Bug#17875)
-2014-10-03 Dmitry Antipov <dmantipov@yandex.ru>
+2014-07-02 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Shrink Lisp_Sub_Char_Table by preferring C integers to Lisp_Objects.
+ * lisp.h (struct Lisp_Sub_Char_Table): Use C integers for depth and
+ min_char slots. Adjust comment.
+ (enum char_table_specials): Rename from CHAR_TABLE_STANDARD_SLOTS.
+ Add SUB_CHAR_TABLE_OFFSET member.
+ (make_uninit_sub_char_table): New function.
+ (toplevel): Add compile-time assert to verify suitable member layout
+ in Lisp_Sub_Char_Table.
+ * alloc.c (mark_char_table): Add extra argument to denote char table
+ subtype. Adjust to match new layout of sub char-table.
+ (mark_object): Always mark sub char-tables with mark_char_table.
+ * chartab.c (make_sub_char_table, copy_sub_char_table)
+ (sub_char_table_ref, sub_char_table_ref_and_range, sub_char_table_set)
+ (sub_char_table_set_range, optimize_sub_char_table, map_sub_char_table)
+ (map_sub_char_table_for_charset, uniprop_table_uncompress):
+ All related users changed.
+ * lread.c (read1): Adjust to match new layout of sub char-table.
+ * print.c (print_object): Likewise (Bug#17898).
- * font.c (font_list_entities): Do not add empty vector to font cache.
- (font_matching_entity): Likewise. If matching entity is found, insert
- 1-item vector with this entity instead of an entity itself (Bug#17125).
+2014-07-02 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-10-02 Eli Zaretskii <eliz@gnu.org>
+ * keymap.c (get_keyelt): Simplify.
+ (copy_keymap_item): Remove left-over code for when we had
+ key-shortcut caches.
- * xdisp.c (move_it_by_lines): Call reseat_1 after moving the
- iterator backwards, to resync the bidi iterator. (Bug#18584)
+2014-06-30 Jan Djärv <jan.h.d@swipnet.se>
-2014-10-01 Jan Djärv <jan.h.d@swipnet.se>
+ * nsterm.m (judge): EmacsScroller: Move dealloc code here.
+ (dealloc): Remove for EmacsScroller.
- * xfaces.c (Finternal_set_lisp_face_attribute): Don't try to
- make a font_object from a tty frame (Bug#18573).
- (Finternal_set_lisp_face_attribute): Add FIXME comment.
+ * nsterm.h (EmacsScroller): Remove dealloc.
-2014-09-30 Eli Zaretskii <eliz@gnu.org>
+2014-06-30 Eli Zaretskii <eliz@gnu.org>
- * w32fns.c (w32_createwindow): Accept an additional argument, an
- array of 2 values specifying the coordinates of the frame's
- top-left corner. Use these values instead of calling x_get_arg,
- which can cons Lisp objects, and therefore cannot be called except
- from the main thread. Remove redundant tests for the default values.
- (my_create_window): Move the calculation of the coordinates of the
- frame's top-left edge here. Pass them to the input thread via the
- second parameter of the WM_EMACS_CREATEWINDOW message.
- See http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00892.html
- for the details.
+ * coding.c (MIN_CHARBUF_SIZE): Enlarge to 32. (Bug#17881)
-2014-09-29 Eli Zaretskii <eliz@gnu.org>
+2014-06-30 Jan Djärv <jan.h.d@swipnet.se>
- * xdisp.c (cursor_row_fully_visible_p): Update commentary.
- (redisplay_window): Treat the frame's frozen_window_starts flag
- the same way as the optional_new_start flag for the window: only
- obey it if the glyph row showing point will be fully visible.
- Likewise when the window start is in a continuation line. If,
- after trying everything under the 'force_start' label, point is
- still not fully visible, give up and scroll the window.
- Add debugging traces. (Bug#18545)
+ * nsmenu.m (update_frame_tool_bar): Set wait_for_tool_bar to NO
+ when setNeedsDisplay is called so we don't trigger redisplay for every
+ tool bar update.
- * window.c (Frecenter): Set the window's redisplay flag.
+ * nsterm.m (any_help_event_p): New variable.
+ (mouseMoved:): Set any_help_event_p to YES if help event is
+ generated. Remove else with empty help event that triggered redisplay
+ for every mouse move.
+ (windowDidResignKey:): If any_help_event_p, generate empty help event.
-2014-09-24 Eli Zaretskii <eliz@gnu.org>
+2014-06-29 Dmitry Antipov <dmantipov@yandex.ru>
- * w32term.c (w32_read_socket): Don't use frame dimensions for
- resizing if GetClientRect returned an empty (0, 0, 0, 0)
- rectangle. Check the return value of GetClientRect, and don't use
- the results if it didn't succeed.
+ * xfns.c (Qsuppress_icon): Remove; no real users.
+ (syms_of_xfns): Don't DEFSYM it. Remove ancient comments.
+ * w32fns.c (Qsuppress_icon): Remove, for the same reason.
+ (syms_of_w32fns): Don't DEFSYM it.
- * dispnew.c (change_frame_size_1): Recompute the frame dimensions
- in columns and lines after correcting the pixel dimensions in
- check_frame_size.
- (adjust_decode_mode_spec_buffer): Add assertion to avoid passing
- negative values to xrealloc. (Bug#18528)
+2014-06-29 Glenn Morris <rgm@gnu.org>
-2014-09-22 Dmitry Antipov <dmantipov@yandex.ru>
+ * Makefile.in (ns-app): Mark as PHONY.
- On OSX, do not free font-specific data more than once (Bug#18501).
- * macfont.m (macfont_close): Release and free font-specific data
- only if it wasn't previously freed.
+2014-06-28 Glenn Morris <rgm@gnu.org>
-2014-09-21 David Caldwell <david@porkrind.org> (tiny change)
+ * Makefile.in (mostlyclean): There are no libXMenu11.a,
+ liblw.a in this directory.
- * unexmacosx.c (dump_it): Improve error message.
+2014-06-28 Andreas Schwab <schwab@linux-m68k.org>
-2014-09-18 Juri Linkov <juri@jurta.org>
+ * coding.c (encode_coding_utf_8): Correctly count produced_chars
+ also in unibyte case. (Bug#17865)
- * image.c (imagemagick_load_image): Add delay to imagemagick metadata.
- (Bug#10747, bug#18334)
+2014-06-28 K. Handa <handa@gnu.org>
-2014-09-18 Eli Zaretskii <eliz@gnu.org>
+ * coding.c (MAX_CHARBUF_SIZE): Rename from CHARBUF_SIZE.
+ (MIN_CHARBUF_SIZE): New macro.
+ (ALLOC_CONVERSION_WORK_AREA): New arg SIZE. Callers changed.
- * frame.c (Fmouse_position, Fset_mouse_position): Clarify the
- units in which the position is measured. (Bug#18493)
+2014-06-27 Glenn Morris <rgm@gnu.org>
- * xdisp.c (redisplay_internal): Force redisplay of all windows
- that show a buffer whose narrowing has changed. (Bug#18490)
+ * Makefile.in: Replace BOOTSTRAPEMACS sleight-of-hand
+ with an order-only dependence on bootstrap-emacs. (Bug#2151)
+ (.el.elc): Replace suffix rule with pattern rule.
+ (%.elc): New pattern rule, with order-only prerequisite.
+ ($(lisp)): No more need to depend on BOOTSTRAPEMACS.
+ ($(lispsource)/loaddefs.el): Use an order-only prerequisite
+ in place of BOOTSTRAPEMACS.
-2014-09-16 Eli Zaretskii <eliz@gnu.org>
+2014-06-26 Dmitry Antipov <dmantipov@yandex.ru>
- * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor):
- * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor): In R2L
- lines, draw the hollow-box and hbar cursors on the right side of
- cursor-glyph. Thanks to martin rudalics <rudalics@gmx.at> for
- testing on X.
+ * fns.c (Fcompare_strings): Use FETCH_STRING_CHAR_AS_MULTIBYTE_ADVANCE.
- * xterm.c (x_draw_stretch_glyph_string):
- * w32term.c (x_draw_stretch_glyph_string): Fix a thinko that
- caused the block cursor to disappear on a TAB in R2L lines in
- every window except the leftmost one. Reported by Martin Rudalics
- <rudalics@gmx.at>.
+2014-06-25 Dmitry Antipov <dmantipov@yandex.ru>
-2014-09-16 Dmitry Antipov <dmantipov@yandex.ru>
+ Consistently use validate_subarray to verify substring.
+ * fns.c (validate_substring): Not static any more. Adjust to
+ use ptrdiff_t, not EMACS_INT, because string and vector limits
+ can't exceed ptrdiff_t even if EMACS_INT is wider.
+ (Fcompare_strings, Fsubstring, Fsubstring_no_properties)
+ (secure_hash): Adjust user.
+ * lisp.h (validate_subarray): Add prototype.
+ * coding.c (Fundecodable_char_position):
+ * composite.c (Fcomposition_get_gstring, Fcompose_string_internal):
+ Use validate_subarray. Adjust comment to mention substring.
- Always use matched specpdl entry to record call arguments (Bug#18473).
- * lisp.h (record_in_backtrace): Adjust prototype.
- * eval.c (record_in_backtrace): Return current specpdl level.
- (set_backtrace_args, set_backtrace_nargs): Merge. Adjust all users.
- (eval_sub, Ffuncall): Record call arguments in matched specpdl
- entry and use that entry in call to backtrace_debug_on_exit.
- (apply_lambda): Likewise. Get current specpdl level as 3rd arg.
- (do_debug_on_call): Get current specpdl level as 2nd arg.
+2014-06-25 Dmitry Antipov <dmantipov@yandex.ru>
- Prefer ptrdiff_t to int and avoid integer overflows.
- * fileio.c (make_temp_name):
- * font.c (font_parse_family_registry): Avoid integer
- overflow on string size calculation.
- * data.c (Faset): Likewise for byte index.
+ Do not allow out-of-range character position in Fcompare_strings.
+ * fns.c (validate_subarray): Add prototype.
+ (Fcompare_substring): Use validate_subarray to check ranges.
+ Adjust comment to mention that the semantics was changed. Also see
+ http://lists.gnu.org/archive/html/emacs-devel/2014-06/msg00447.html.
-2014-09-15 Eli Zaretskii <eliz@gnu.org>
+2014-06-24 Paul Eggert <eggert@cs.ucla.edu>
- Fix display of R2L lines in partial-width windows.
- * xdisp.c (init_iterator): Don't use it->bidi_p before it is
- assigned the correct value.
- (extend_face_to_end_of_line): Account for truncation and
- continuation glyphs in R2L rows when one of the fringes is not
- displayed.
- (display_line): Don't assign negative X offset to a row if we are
- going to produce a truncation glyph for it. When handling
- truncated R2L rows, consider the width of the left fringe instead
- of the right one.
- (produce_special_glyphs): Fix bogus assignments.
+ Be more consistent about the 'Qfoo' naming convention.
+ * image.c (Fimagemagick_types):
+ * lisp.h (lisp_h_CHECK_TYPE, CHECK_TYPE, CHECK_ARRAY):
+ * process.c (Fmake_network_process):
+ Rename C local identifier 'Qfoo to avoid giving the false
+ impression that it stands for the symbol 'foo'.
-2014-09-14 Eli Zaretskii <eliz@gnu.org>
+2014-06-23 Dmitry Antipov <dmantipov@yandex.ru>
- * w32.c (fcntl): Support O_NONBLOCK fcntl on the write side of
- pipes.
- (sys_write): When a write to a non-blocking pipe returns ENOSPC,
- set errno to EAGAIN instead, to allow the caller to retry the
- write after some waiting. Fixes deadlocks when Emacs exchanges a
- lot of data through the pipe. (Bug#18420)
+ Simplify and cleanup character conversion stuff.
+ * lisp.h (multibyte_char_to_unibyte, multibyte_char_to_unibyte_safe):
+ Remove prototypes.
+ * character.c (multibyte_char_to_unibyte)
+ (multibyte_char_to_unibyte_safe): Remove; no longer used.
+ * character.h (make_char): Remove; unused.
+ (CHAR_TO_BYTE8, CHAR_TO_BYTE_SAFE): Simplify.
+ (ASCII_BYTE_P): Remove; ASCII_CHAR_P does the same thing.
+ * buffer.c, charset.c, charset.h, cmds.c, coding.c, editfns.c:
+ * fileio.c, indent.c, insdel.c, keyboard.c, lread.c, print.c:
+ * search.c, term.c, xdisp.c, xterm.c: Related users changed.
+
+2014-06-22 Mario Lang <mlang@delysid.org>
+
+ * w32fns.c (Fw32_shell_execute): The the -> the.
+
+2014-06-22 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * xmenu.c (mouse_position_for_popup):
+ * xselect.c (mouse_position_for_drop): Do not duplicate ...
+ * xfns.c (x_relative_mouse_position): ... and prefer this function.
+ * menu.c (Fx_popup_menu):
+ * xselect.c (x_handle_dnd_message): Adjust users.
+ * menu.h (mouse_position_for_popup): Remove prototype.
+ * xterm.h (x_relative_mouse_position): Add prototype.
+ * xterm.c (x_find_topmost_parent): Break from the loop and do not
+ call XFree if XQueryTree returns zero.
-2014-09-13 Eli Zaretskii <eliz@gnu.org>
+2014-06-21 Eli Zaretskii <eliz@gnu.org>
- * sound.c (Fplay_sound_internal): Encode the sound file name in
- the ANSI codepage. Expand it against data-directory, as per docs,
- not against the current directory. No need to make a local copy
- of the file name; pass the encoded file name directly to
- do_play_sound. (Bug#18463)
+ * indent.c (Fvertical_motion): Doc fix.
+ Move to the goal column, if any, with a single call to
+ move_it_in_display_line, not in two calls. Doing this with two
+ calls causes move_it_in_display_line apply the line-prefix
+ handling twice instead of just once. (Bug#17823)
- * w32.c (ansi_encode_filename): If w32_get_short_filename returns
- NULL, and the file name is not encodable in ANSI codepage, return
- the string with "?" replacement characters, which will fail the
- caller. This avoids returning a random value in that case.
+2014-06-21 Paul Eggert <eggert@cs.ucla.edu>
-2014-09-11 Martin Rudalics <rudalics@gmx.at>
+ Port to OS X ACLs (Bug#17810).
+ * fileio.c (Ffile_acl): Port to OS X, where acl_get_file (...,
+ ACL_TYPE_ACCESS) doesn't work.
- * window.c (Fresize_mini_window_internal): Set w->total_lines
- from w->pixel_height (Bug#18422).
+2014-06-21 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-09-09 Jan Djärv <jan.h.d@swipnet.se>
+ * keyboard.c (read_key_sequence): Don't invoke Vprefix_help_command
+ before checking key-translation-map (bug#17659).
- * nsterm.m (updateFrameSize:, initFrameFromEmacs:)
- (toggleFullScreen:): Take frame_resize_pixelwise into account when
- setting resize increments (Bug#18435).
+2014-06-21 Dmitry Antipov <dmantipov@yandex.ru>
-2014-09-09 Eli Zaretskii <eliz@gnu.org>
+ * font.c (font_make_object): Avoid dangling pointer which may
+ crash GC (Bug#17771).
- * xdisp.c (pos_visible_p): Properly save and restore the iterator
- state around the call to line_bottom, since it can move the
- iterator to another screen line. This fixes off-by-one errors in
- the reported row in some rare cases.
+2014-06-21 Eli Zaretskii <eliz@gnu.org>
-2014-09-07 Eli Zaretskii <eliz@gnu.org>
+ * image.c [5 < GIFLIB_MAJOR + (1 <= GIFLIB_MINOR)]: Declare the
+ prototype of DGifCloseFile as appropriate for older and newer
+ versions of giflib.
+ (gif_close): New function, encapsulates the differences in the
+ calling sequence of DGifCloseFile before v5.1.0 and after it.
+ (gif_load): Call gif_close instead of DGifCloseFile. Divulge the
+ error string where appropriate. (Bug#17790)
- * dispnew.c (prepare_desired_row): When MODE_LINE_P is zero,
- always make sure the marginal areas of the row are in sync with
- what the window wants. (Bug#18419)
+ * xdisp.c (Fmove_point_visually): Instead of testing for keyboard
+ macro execution, make sure point didn't move since last complete
+ redisplay, as the condition for using the glyph matrix
+ information. (Bug#17777)
-2014-09-04 Eli Zaretskii <eliz@gnu.org>
+2014-06-19 Dmitry Antipov <dmantipov@yandex.ru>
- * data.c (set_internal): Use assq_no_quit, not Fassq, to find an
- existing binding of a variable, to avoid silently aborting
- commands that use specbind. (Bug#18331)
+ Minor cleanup of fonset code.
+ * fontset.c (FONTSET_ID, set_fontset_id, FONTSET_NAME)
+ (set_fontset_name, FONTSET_ASCII, set_fontset_ascii)
+ (FONTSET_BASE, set_fontset_base, FONTSET_FRAME)
+ (set_fontset_frame, FONTSET_NOFONT_FACE, set_fontset_nofont_face)
+ (FONTSET_DEFAULT, set_fontset_default, FONTSET_FALLBACK)
+ (set_fontset_fallback): Reorder extra slots and avoid unused slots.
+ (free_realized_fontset): Remove because a no-op since 2008.
+ (free_face_fontset): Adjust user.
+ (syms_of_fontset): Shrink fontset by one extra slot.
+
+2014-06-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ Omit redundant extern decls.
+ Most of this patch is from Dmitry Antipov, in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-06/msg00263.html
+ * commands.h (update_mode_lines):
+ * frame.h (Qbackground_color, Qforeground_color)
+ (x_set_menu_bar_lines):
+ * ftfont.c (ftfont_font_format):
+ * intervals.h (Qkeymap, Qfont):
+ * keyboard.c (timer_check, safe_run_hooks, Qregion_extract_function):
+ * lisp.h (Ffboundp, Qnil, Qt, Qlambda, Qintegerp, Qwholenump)
+ (Qsymbolp, Qlisp, Qconsp, Qstringp, Qarrayp, Qbufferp, Qmarkerp)
+ (Qvectorp, Qbuffer_or_string_p, Qchar_table_p, Qvector_or_char_table_p)
+ (Qfloatp, Qnumberp, Qfont_spec, Qfont_entity, Qfont_object)
+ (Fbyteorder, wrong_type_argument, Fmax_char, syms_of_composite)
+ (Fidentity, extract_float, init_display, syms_of_display, Qdisplay):
+ (Qimage, Qbox, redisplay_preserve_echo_area, char_table_ref)
+ (char_table_set, char_table_translate, Qautoload, Qbottom, Qtop)
+ (Qvisible, Qfont, Qfront_sticky, Qrear_nonsticky, init_sigio)
+ (Qtool_bar, Qheader_line):
+ * macros.c (Fexecute_kbd_macro):
+ * xdisp.c (Ftool_bar_height, Ftool_bar_height):
+ * xterm.c (x_delete_terminal, XSetIMValues):
+ * xterm.h (x_set_window_size, x_query_color, x_get_focus_frame)
+ (x_implicitly_set_name, popup_activated)
+ (widget_store_internal_border):
+ Remove redundant decls.
+ * frame.c [USE_X_TOOLKIT]: Include widget.h.
+ * keyboard.c (Fexit_recursive_edit, Fabort_recursive_edit):
+ Remove _Noreturn, as make-docfile now does that for us.
+ * lisp.h (DEFUN): Don't declare fnname here; rely on make-docfile.
+ (Qregion_extract_function): New decl.
+ * window.c, xfns.c: Include menu.h.
+
+2014-06-17 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * callint.c (Fcall_interactively): Fix up last change (bug#17701).
+
+2014-06-17 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * fileio.c (Fread_file_name): Do not pass redundant args and ...
+ * callint.c (read_file_name): ... convert to static here.
+ * lisp.h (Fread_file_name): Do not EXFUN it.
+ (STRING_COPYIN): Remove; unused.
+ * composite.c (CHAR_COMPOSABLE_P): Replace unsafe macro with ...
+ (char_composable_p): ... static function. All users changed.
+ * eval.c (toplevel): Remove redundant #include directives.
+ * xterm.c (x_initialize): Add static to match prototype.
+ * ccl.c (Fccl_execute_on_string):
+ * font.c (fon_intern_prop): Use make_specified_string.
-2014-09-02 Eli Zaretskii <eliz@gnu.org>
+2014-06-16 Paul Eggert <eggert@cs.ucla.edu>
- * dispnew.c (buffer_posn_from_coords): Fix an off-by-one error in
- the reported row in the case of a window with a header line, by
- improving on the fix committed in 2011-10-08T10:58:50Z!eliz@gnu.org
- eliz@gnu.org-20111008105850-ht4tvsayohvr1kjc. (Bug#18384)
+ * Makefile.in (ns-app): Fix typo that broke build on OS X.
+ Reported by David Caldwell in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-06/msg00251.html
-2014-09-02 Paul Eggert <eggert@cs.ucla.edu>
+2014-06-16 Dmitry Antipov <dmantipov@yandex.ru>
- * eval.c (internal_lisp_condition_case): Don't overrun the stack
- when configured --with-wide-int on typical 32-bit platforms.
+ Do not ask for XRender extension each time XFT font is opened.
+ * xftfont.c (xftfont_open): Move call to XRenderQueryExtension ...
+ * xterm.c (x_term_init) [HAVE_XFT]: ... to here. Adjust comment.
-2014-08-31 Eli Zaretskii <eliz@gnu.org>
+2014-06-15 Glenn Morris <rgm@gnu.org>
- * xdisp.c (display_and_set_cursor): Call erase_phys_cursor also
- when HPOS is negative, for the benefit of R2L glyph rows whose
- newline overflows into the fringe.
+ * Makefile.in: Use `make -C' rather than `cd && make' throughout.
+
+2014-06-15 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (Fmove_point_visually): Don't use the glyph matrix
+ information if we are in the middle of executing a keyboard macro,
+ since redisplay doesn't update the screen until the macro is
+ finished. (Bug#17777)
+
+ * alloc.c (cleanup_vector): Don't dereference a font driver
+ pointer if it is NULL. (Bug#17771)
+
+2014-06-13 Glenn Morris <rgm@gnu.org>
+
+ * Makefile.in ($(leimdir)/leim-list.el, $(srcdir)/macuvs.h)
+ ($(lispsource)/international/charprop.el)
+ ($(libsrc)/make-docfile$(EXEEXT), $(lwlibdir)/liblw.a)
+ ($(oldXMenudir)/libXMenu11.a, ns-app, .el.elc)
+ ($(lispsource)/loaddefs.el, bootstrap-emacs$(EXEEXT)):
+ GNU make automatically passes command-line arguments to sub-makes.
+
+2014-06-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ Avoid hangs in accept-process-output (Bug#17647).
+ * lisp.h, process.c (wait_reading_process_input):
+ Return int, not bool. All uses changed.
+ * process.c (SELECT_CANT_DO_WRITE_MASK):
+ Remove macro, replacing with ...
+ (SELECT_CAN_DO_WRITE_MASK): ... new constant, with inverted sense.
+ All uses changed.
+ (status_notify): New arg WAIT_PROC. Return int, not void.
+ All uses changed.
+
+2014-06-13 Eli Zaretskii <eliz@gnu.org>
+
+ * menu.c (Fx_popup_menu): Don't call the frame's menu_show_hook if
+ the frame is the initial frame, because the hook is not set up
+ then, and Emacs crashes.
+ Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
+
+2014-06-12 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keymap.c (silly_event_symbol_error): Don't recommend the use
+ of strings.
+
+2014-06-11 Eli Zaretskii <eliz@gnu.org>
+
+ * xdisp.c (set_cursor_from_row): Fix an off-by-one error when
+ matching overlay strings with 'cursor' property against buffer
+ positions traversed in the glyph row. (Bug#17744)
+
+2014-06-11 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.h (EmacsApp): Always compile in shouldKeepRunning, isFirst
+ on Cocoa.
+
+ * nsterm.m (run): Always compile for Cocoa. Use runtime check to
+ determine 10.9 (Bug#17751).
+
+ * macfont.m (macfont_draw): Positions were not freed.
+
+2014-06-10 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * dispextern.h (PREPARE_FACE_FOR_DISPLAY): Remove as a duplicate of ...
+ * xfaces.c (prepare_face_for_display) [HAVE_WINDOW_SYSTEM]: ... this
+ function. Also adjust comment.
+ * fringe.c, w32term.c, xdisp.c, xterm.c: All users changed.
+
+ * dispextern.h (struct face) [HAVE_XFT]: Ifdef 'extra' member.
+ * font.c (font_done_for_face):
+ * xfaces.c (realize_non_ascii_face): Adjust user.
+ * font.h (struct font_driver): Convert 'prepare_face' to return
+ void because its return value is never used anyway.
+ * xfont.c (xfont_prepare_face): Return void.
+ * xftfont.c (xftfont_prepare_face): Likewise. Use xmalloc.
+ (xftfont_done_face): Use xfree.
+
+ * dispextern.h (last_tool_bar_item): Remove declaration.
+ * frame.h (struct frame): New member last_tool_bar_item.
+ * frame.c (make_frame): Initialize it.
+ * xdisp.c (toplevel): Remove last_tool_bar_item.
+ (handle_tool_bar_click, note_tool_bar_highlight):
+ * w32term.c (w32_read_socket, w32_initialize):
+ * xterm.c (handle_one_xevent, x_initialize): Adjust users.
+
+ * frame.h (window_system_available) [!HAVE_WINDOW_SYSTEM]: Always false.
+ * frame.c (window_system_available) [HAVE_WINDOW_SYSTEM]: Now here.
+
+2014-06-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ Say (accept-process-output P)'s result pertains to P if P is non-nil.
+ * process.c (Faccept_process_output)
+ (wait_reading_process_output): Mention that if PROCESS is non-nil,
+ the return value is about PROCESS, not about other processes.
+
+2014-06-09 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Further adjustments to mark_object and friends.
+ Now the mark_object's stack is just 32 bytes on a 64-bit
+ system, which means extra 20% off the stack usage.
+ * alloc.c (mark_save_value): As before, refactored out from ...
+ (mark_object): ... adjusted user. Also add comment.
+
+2014-06-09 Paul Eggert <eggert@cs.ucla.edu>
+
+ Fix core dump after a dropped X connection (Bug#17704).
+ * sysdep.c (stuff_char): Don't abort merely because the selected frame
+ is dead, as we may be shutting down.
+
+2014-06-08 Glenn Morris <rgm@gnu.org>
+
+ * fileio.c (write-region-inhibit-fsync): Doc tweak.
+
+ * data.c (Flss, Fgtr, Fleq, Fgeq): Doc tweaks.
+
+2014-06-08 Paul Eggert <eggert@cs.ucla.edu>
+
+ If a C name must be extern on some platforms, make it extern on all.
+ * dispextern.h (set_vertical_scroll_bar, erase_phys_cursor)
+ (load_color):
+ * font.h (ftxfont_driver) [HAVE_XFT]:
+ * keyboard.h (menu_items_inuse, ignore_mouse_drag_p, make_ctrl_char):
+ * lisp.h (get_frame_param):
+ * menu.h (tty_menu_show):
+ * process.h (conv_sockaddr_to_lisp, catch_child_signal):
+ * termhooks.h (encode_terminal_code):
+ * xterm.h (x_menu_wait_for_event):
+ Always declare.
+ * frame.c (get_frame_param):
+ * fringe.c (max_used_fringe_bitmap):
+ * ftxfont.c (ftxfont_driver):
+ * keyboard.c (ignore_mouse_drag_p, make_ctrl_char):
+ * menu.c (menu_items_inuse):
+ * process.c (conv_sockaddr_to_lisp, catch_child_signal):
+ * term.c (encode_terminal_code, tty_menu_show):
+ * xdisp.c (set_vertical_scroll_bar, erase_phys_cursor):
+ * xfaces.c (load_color):
+ * xmenu.c (x_menu_wait_for_event):
+ Now always extern.
+
+2014-06-08 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Change object marking routines to minimize stack usage.
+ This change moves a few cold paths from mark_object to NO_INLINE
+ functions and adjusts symbol marking loop. According to GCC 4.8.2
+ -Wstack-usage, this reduces mark_object's stack usage from 80 to
+ 48 bytes on a 64-bit system. For a long byte-force-recompile runs,
+ stack usage at the mark phase is reduced up to 28%. Surprisingly,
+ it also gains up to 3% in speed (with default '-O2 -g3' flags).
+ * alloc.c (mark_compiled, mark_localized_symbol): New functions,
+ refactored out from ...
+ (mark_object): ... adjusted user. Also mark symbols in a tight
+ inner loop.
+ (mark_face_cache): Add NO_INLINE.
+
+2014-06-08 Eli Zaretskii <eliz@gnu.org>
+
+ * sysdep.c (reset_sys_modes): Use cursorX, not curX, as the latter
+ contains garbage on WINDOWSNT (which could potentially infloop at
+ exit).
-2014-08-30 Ken Brown <kbrown@cornell.edu>
+ Minimize cursor motion during TTY menu updates.
+ * term.c (tty_menu_display): Don't position cursor here.
+ Instead, pass the cursor coordinates to update_frame_with_menu.
+ (tty_menu_activate): Send the hide cursor command only once in an
+ iteration through the outer 'while' loop.
- * conf_post.h (strnicmp) [CYGWIN && HAVE_NTGUI]: Define.
- (Bug#18366)
+ * dispnew.c (update_frame_1): Accept an additional argument
+ SET_CURSOR_P, and position the cursor at the end of the frame
+ update only if that argument is non-zero. All callers changed to
+ provide the additional argument as non-zero, except for
+ update_frame_with_menu.
+ (update_frame_with_menu): Accept 2 additional arguments ROW and
+ COL; if they are non-negative, instruct update_frame_1 not to
+ position the cursor, and instead position it according to ROW and COL.
-2014-08-28 Eli Zaretskii <eliz@gnu.org>
+ * dispextern.h (update_frame_with_menu): Update prototype.
- * syntax.c (scan_lists): Don't examine positions before BEGV.
- (Bug#18339)
+2014-06-08 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-08-25 Eli Zaretskii <eliz@gnu.org>
+ * callproc.c (call_process): Don't check read-only if we don't insert
+ anything (bug#17666).
- * conf_post.h (_GL_EXECINFO_INLINE) [MSDOS]: Don't define.
+2014-06-08 Eli Zaretskii <eliz@gnu.org>
-2014-08-18 Eli Zaretskii <eliz@gnu.org>
+ * dispnew.c (update_frame_with_menu): Set display_completed.
- * xdisp.c (handle_stop): Improve commentary.
+2014-06-07 Eli Zaretskii <eliz@gnu.org>
- * indent.c (Fvertical_motion): Fix vertical motion up through a
- display property after a newline. (Bug#18276)
+ * term.c (tty_menu_show) [WINDOWSNT]: Make tty_menu_show extern
+ only for WINDOWSNT.
+ * menu.h (tty_menu_show) [WINDOWSNT]: Declare extern only for WINDOWSNT.
-2014-08-17 Eli Zaretskii <eliz@gnu.org>
+2014-06-06 Paul Eggert <eggert@cs.ucla.edu>
- * xdisp.c (display_line): Don't assume that the call to
- reseat_at_next_visible_line_start ends up at a character
- immediately following the newline on the previous line.
- Avoids setting the ends_at_zv_p flag on screen lines that are not at or
- beyond ZV, which causes infloop in redisplay. For the details, see
- http://lists.gnu.org/archive/html/emacs-devel/2014-08/msg00368.html.
+ * term.c (tty_menu_show) [!HAVE_NTGUI]: Now static.
+ * menu.h (tty_menu_show) [!HAVE_NTGUI]: Omit extern decl.
- * dispnew.c (buffer_posn_from_coords): Fix mirroring of X
- coordinate for hscrolled R2L screen lines. (Bug#18277)
+2014-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-08-11 Ken Brown <kbrown@cornell.edu>
+ * window.c (Frecenter): Signal an error if window-buffer is not
+ current-buffer.
- * gmalloc.c (_malloc_mutex, _aligned_blocks_mutex) [CYGWIN]: Use
- ERRORCHECK mutexes. (Bug#18222)
+ * keyboard.c (make_lispy_position): Don't include a buffer position in
+ mode/header-line mouse events.
-2014-08-11 Glenn Morris <rgm@gnu.org>
+ * keyboard.c (read_char): Handle (t . <event>) in the second use of
+ Vunread_command_events (bug#17650).
- * fileio.c: Revert 2013-01-31 change, which chose coding system for
- writing before backing up, since it causes a more serious problem
- than the one it solves. (Closes Bug#18141, reopens Bug#13522.)
- (choose_write_coding_system): No longer callable from Lisp.
- Move last piece back here from Fwrite_region.
- (Fwrite_region, syms_of_fileio): Update for above changes.
+2014-06-06 Dmitry Antipov <dmantipov@yandex.ru>
-2014-08-09 Martin Rudalics <rudalics@gmx.at>
+ * xterm.c (x_setup_pointer_blanking):
+ Conditionally probe Xfixes until this stuff is stabilized (Bug#17609).
- * window.c (Fwindow_new_total, Fwindow_new_normal)
- (Fwindow_new_pixel, Fset_window_new_pixel)
- (Fset_window_new_total, Fset_window_new_normal): Second attempt
- to fix the doc-strings of these functions. See:
- http://lists.gnu.org/archive/html/bug-gnu-emacs/2014-08/msg00287.html
+2014-06-05 Dmitry Antipov <dmantipov@yandex.ru>
-2014-08-08 Martin Rudalics <rudalics@gmx.at>
+ * keyboard.c, process.c: Do not define POLL_FOR_INPUT here
+ because it will be defined in generated config.h if needed.
- * window.c (Fwindow_valid_p): Fix doc-string (Bug#18194).
- (Fwindow_new_total, Fwindow_normal_size, Fwindow_new_normal)
- (Fwindow_new_pixel, Fset_window_new_pixel)
- (Fset_window_new_total, Fset_window_new_normal)
- (Fwindow_resize_apply): Fix doc-strings (see Bug#18112).
+2014-06-04 Dmitry Antipov <dmantipov@yandex.ru>
-2014-08-07 Eli Zaretskii <eliz@gnu.org>
+ Use terminal-specific hooks to display popup dialogs.
+ * termhooks.h (struct terminal): New field popup_dialog_hook.
+ * menu.c (emulate_dialog_with_menu): New function, refactored from ...
+ (Fx_popup_dialog): ... adjusted user. Also remove old #if 0
+ code and use popup_dialog_hook.
+ * nsmenu.m (ns_popup_dialog): Make hook-compatible.
+ * nsterm.h (ns_popup_dialog): Adjust prototype.
+ * nsterm.m (ns_create_terminal):
+ * w32term.c (w32_create_terminal):
+ * xterm.c (x_create_terminal) [USE_X_TOOLKIT || USE_GTK]:
+ Setup popup_dialog_hook.
- * fontset.c (Finternal_char_font): Recompute basic faces if the
- frame's face cache was cleared. (Bug#18162)
+2014-06-04 Eli Zaretskii <eliz@gnu.org>
-2014-08-05 Dmitry Antipov <dmantipov@yandex.ru>
+ * w32heap.c (report_temacs_memory_usage): Improve the report by
+ reporting the large blocks that are actually occupied at dump time.
- Fix bug with uninitialized undo list of an indirect buffer (Bug#18180).
- * buffer.c (Fmake_indirect_buffer): Initialize undo list with the
- base buffer's undo list.
+ * w32console.c (initialize_w32_display): Set the console
+ menu_show_hook, otherwise TTY menus are broken on w32.
-2014-08-03 Dmitry Antipov <dmantipov@yandex.ru>
+2014-06-04 Dmitry Antipov <dmantipov@yandex.ru>
- Fix bug with an attempt to select uninitialized frame (Bug#18161).
- * xfns.c (Fx_create_frame): Move call to change_frame_size to
- a section where Lisp evaluation is disabled. This way a pointer
- to uninitialized frame is not accessible from Lisp, which becomes
- critical if following call to x_figure_window_size throws an error.
+ Use terminal-specific hooks to display menus.
+ * termhooks.h (struct terminal): New field menu_show_hook.
+ * menu.h (<anonymous enum>): Bit flags for menu hooks.
+ (x_menu_show, w32_menu_show, ns_menu_show, tty_menu_show):
+ Adjust prototypes.
+ * menu.c (Fx_popup_menu): Use bit flags and menu_show_hook.
+ * nsmenu.m (ns_menu_show):
+ * w32menu.c (w32_menu_show):
+ * xmenu.c (x_menu_show):
+ * term.c (tty_menu_show): Adjust to use bit flags.
+ (set_tty_hooks): Set menu_show_hook.
+ * xterm.c (x_create_terminal):
+ * nsterm.m (ns_create_terminal):
+ * msdos.c (initialize_msdos_display):
+ * w32term.c (w32_create_terminal): Likewise.
-2014-08-02 Paul Eggert <eggert@cs.ucla.edu>
+2014-06-03 Juanma Barranquero <lekktu@gmail.com>
- Fix bug with clang + directory_files_internal + GC (Bug#16986).
- * dired.c (directory_files_internal): Use a volatile variable
- to prevent the compiler from optimizing away all copies of a local.
- I wonder how many other GC-related bugs like this lurk elsewhere?
+ * w32heap.c (DUMPED_HEAP_SIZE) [!_WIN64]: Reduce to 11 MB.
- Avoid 100% CPU utilization on ssh session exit (Bug#17691).
- * xterm.h (struct x_display_info): New member 'connection'.
- * xterm.c (x_term_init, x_delete_terminal): Set and use it,
- so that x_delete_terminal has a file descriptor to pass to
- delete_keyboard_wait_descriptor.
+2014-06-03 Eli Zaretskii <eliz@gnu.org>
-2014-08-01 Eli Zaretskii <eliz@gnu.org>
+ * sysselect.h (fd_CLR, fd_ISSET, fd_SET, FD_CLR, FD_ISSET)
+ (FD_SET): Don't define on WINDOWSNT.
- Fix display of R2L lines when the last character fits only partially.
- See http://lists.gnu.org/archive/html/emacs-devel/2014-07/msg00476.html
- for the details.
- * xdisp.c (extend_face_to_end_of_line): If the last glyph of an
- R2L row is visible only partially, give the row a negative x
- offset.
- (display_line): Fix the calculation of the glyph whose pixel width
- is used to decide whether the last produced glyph fits on the
- line. When the last glyph fits only partially, give the row a
- negative x offset.
+2014-06-03 Paul Eggert <eggert@cs.ucla.edu>
-2014-07-29 Eli Zaretskii <eliz@gnu.org>
+ * emacs.c: Include "sysselect.h", to define its inline functions.
+ Reported by Glenn Morris in:
+ http://lists.gnu.org/archive/html/emacs-devel/2014-06/msg00077.html
- Fix hscroll of R2L lines that begin with a TAB or another wide glyph.
- * xdisp.c (append_stretch_glyph): In a R2L glyph row, decrease the
- pixel width of the first glyph that is hscrolled from display.
- (display_line): In R2L glyph rows, don't give a negative offset to
- row->x when the first glyph begins before first_visible_x.
+ Do not require libXt-devel when building with gtk.
+ * gtkutil.h, menu.h: Include lwlib-widget.h, not lwlib-h, to avoid
+ dependency on libXt-devel.
+ * menu.h [HAVE_NTGUI]: Include lwlib-widget.h in this case too.
+ (enum button_type, widget_value) [HAVE_NTGUI]: Remove, as
+ lwlib-widget.h now does this.
+ * nsmenu.m (ns_menu_show): "enabled" -> "enable" to fix typo.
-2014-07-29 Andreas Schwab <schwab@suse.de>
+2014-06-03 Paul Eggert <eggert@penguin.cs.ucla.edu>
- * macros.c (Fstart_kbd_macro): Initialize kbd_macro_ptr and
- kbd_macro_end together with kbd_macro_buffer. (Bug#18140)
+ If ENABLE_CHECKING, range-check args of FD_CLR, FD_ISSET, FD_SET.
+ * process.c (add_read_fd, delete_read_fd, add_write_fd)
+ (delete_write_fd, wait_reading_process_output):
+ Remove now-redundant easserts.
+ * sysselect.h (SYSSELECT_H): New macro, to avoid double-inclusion woes.
+ Use INLINE_HEADER_BEGIN, INLINE_HEADER_END.
+ (fd_CLR, fd_ISSET, fd_SET): New inline functions.
+ (FD_CLR, FD_ISSET, FD_SET): Redefine in terms of these functions.
-2014-07-28 Eli Zaretskii <eliz@gnu.org>
+2014-06-03 Eli Zaretskii <eliz@gnu.org>
- * xdisp.c (display_line): If called with iterator set up to write
- to a marginal area, delay the call to handle_line_prefix until we
- switch back to the text area. (Bug#18035)
+ * w32heap.c (DUMPED_HEAP_SIZE): Move from w32heap.h. Don't use
+ HEAPSIZE; instead, define separate values for the 32- and 64-bit builds.
+ (calloc): Don't undef, it is never defined.
+ (HEAP_ENTRY_SHIFT): Remove unused macro.
- * .gdbinit (xwindow): The members total_cols, total_lines,
- left_col, and top_line are C integers (and has been so for the
- last 1.5 years).
+ * Makefile.in (C_HEAP_SWITCH): Remove.
+ (ALL_CFLAGS): Don't use $(C_HEAP_SWITCH).
-2014-07-20 Jan Djärv <jan.h.d@swipnet.se>
+ Fix MS-Windows build broken by menu changes on 2014-06-02.
+ * w32menu.c (w32_menu_show): Fix a typo that broke compilation.
- * nsterm.m (applicationDidFinishLaunching:): Call
- antialiasThresholdDidChange, register for antialias changes (Bug#17534).
- (antialiasThresholdDidChange:): New method for EmacsApp.
+ * menu.h (enum button_type, struct _widget_value) [HAVE_NTGUI]:
+ Define instead of including ../lwlib/lwlib.h, which causes
+ compilation errors due to missing X11 headers.
- * nsterm.h (EmacsApp): Add antialiasThresholdDidChange.
+2014-06-03 Paul Eggert <eggert@cs.ucla.edu>
- * macfont.m (macfont_update_antialias_threshold): Remove static.
+ * process.c (wait_reading_process_output): Omit incorrect test of
+ p->infd against zero. Add easserts for infd having a plausible value.
- * macfont.h (macfont_update_antialias_threshold): Declare.
+2014-06-02 Dmitry Antipov <dmantipov@yandex.ru>
-2014-07-17 Eli Zaretskii <eliz@gnu.org>
+ Adjust to match recent lwlib changes.
+ * menu.h (xmalloc_widget_value): Replace by ...
+ (make_widget_value): ... new prototype.
+ * menu.c (xmalloc_widget_value): Replace by ...
+ (make_widget_value): ... new function.
+ (free_menubar_widget_value_tree, digest_single_submenu): Adjust users.
+ * gtkutil.c (malloc_widget_value, free_widget_value):
+ (widget_value_free_list, malloc_cpt): Remove old lwlib-compatible code.
+ * keyboard.h (enum button_type, struct _widget_value):
+ * gtkutil.h, nsgui.h, w32gui.h (malloc_widget_value, free_widget_value):
+ Likewise.
+ * nsmenu.m (ns_update_menubar, ns_menu_show):
+ * w32menu.c (set_frame_menubar, w32_menu_show, w32_dialog_show):
+ * xmenu.c (set_frame_menubar, xmenu_show, x_dialog_show): Adjust users.
+ * xterm.h (XtParent) [USE_GTK]: Remove unused macro.
- * w32select.c (setup_windows_coding_system):
- Apply CODING_ANNOTATION_MASK to the common_flags member of struct
- coding_system. Reported by martin rudalics <rudalics@gmx.at>.
+2014-06-02 Dmitry Antipov <dmantipov@yandex.ru>
- * w16select.c (Fw16_get_clipboard_data):
- Apply CODING_ANNOTATION_MASK to the common_flags member of struct
- coding_system.
+ * image.c (x_query_frame_background_color)
+ [HAVE_PNG || HAVE_NS || HAVE_IMAGEMAGICK || HAVE_RSVG]:
+ Fix --enable-gcc-warnings compilation without image libraries.
- * xdisp.c (init_iterator): Initialize it->stop_charpos to the
- buffer position where we are to start the iteration.
- (handle_invisible_prop): Record in it->stop_charpos the position
- where the invisible text ends. (Bug#18035)
- (hscroll_window_tree): Don't try hscrolling windows whose cursor
- row has zero buffer position as their start position.
- Reported by martin rudalics <rudalics@gmx.at>.
+2014-06-02 Eli Zaretskii <eliz@gnu.org>
-2014-07-16 Eli Zaretskii <eliz@gnu.org>
+ * w32heap.c (malloc_after_dump, realloc_after_dump): Update the
+ emulated break value only if it goes up.
+ (sbrk): Add assertion that the INCREMENT argument is strictly
+ zero. Improve and correct the commentary.
- * xdisp.c (move_it_vertically_backward, move_it_by_lines): Prevent
- infinite looping in redisplay when display lines don't have enough
- space to display even a single character. (Bug#18036)
+2014-06-02 Paul Eggert <eggert@cs.ucla.edu>
-2014-07-13 Eli Zaretskii <eliz@gnu.org>
+ Improve AIX-related merge from emacs-24.
+ * conf_post.h (FLEXIBLE_ARRAY_MEMBER): Fix comment.
+ * lisp.h (ENUMABLE) [!_AIX]: Don't define to 0 merely because we're
+ not on AIX; since we're on the trunk we can use enums more broadly.
- * xdisp.c (decode_mode_spec): Call file-remote-p on the current
- buffer's default-directory only if it is a string. (Bug#17986)
+ * frame.c (x_set_frame_parameters): Don't read uninitialized storage.
-2014-07-12 Eli Zaretskii <eliz@gnu.org>
+2014-06-02 Jan Djärv <jan.h.d@swipnet.se>
- * xdisp.c (display_line): Don't call FETCH_BYTE with argument less
- than 1. (Bug#17962)
+ * xterm.c (xg_scroll_callback): Remove position, for jump set portion
+ to min(value, whole).
- * w32fns.c (Fx_file_dialog): Mention in the doc string the
- behavior on Windows 7 and later when the function is repeatedly
- invoked with the same value of DIR. (Bug#17950)
+2014-06-02 Paul Eggert <eggert@cs.ucla.edu>
- * xfns.c (Fx_file_dialog) [USE_MOTIF, USE_GTK]: Update the doc
- string to match the one in w32fns.c.
+ Bring back the changes to GDB-visible symbols, but only on AIX.
+ And only if it's not pre-4.2 GCC.
+ * lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): New macros.
+ (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Use them.
+ (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
+ New macros.
-2014-07-08 Eli Zaretskii <eliz@gnu.org>
+2014-06-02 Eli Zaretskii <eliz@gnu.org>
- * xdisp.c (move_it_to): Adjust calculation of line_start_x to what
- x_produce_glyphs does when it generates a stretch glyph that
- represents a TAB. (Bug#17969)
+ * fileio.c (Finsert_file_contents): Call prepare_to_modify_buffer
+ with PT, not GPT. (Bug#16433)
-2014-07-05 Eli Zaretskii <eliz@gnu.org>
+ Revert last changes to GDB-visible symbols.
+ * lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): Delete macros.
+ (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Don't use them.
+ (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
+ Delete macros.
- * xdisp.c (pos_visible_p): If CHARPOS is at beginning of window,
- and there is a display property at that position, don't call
- move_it_to to move to a position before window start. (Bug#17942)
- Fix condition for finding CHARPOS by the first call to move_it_to.
- (Bug#17944)
+2014-06-02 Glenn Morris <rgm@gnu.org>
-2014-07-05 Stefan Monnier <monnier@iro.umontreal.ca>
+ * cmds.c (Fself_insert_command): Allow zero repeat count. (Bug#17649)
- * syntax.c (find_defun_start): Try the cache even
- if !open_paren_in_column_0_is_defun_start.
- (back_comment): If find_defun_start was pessimistic, use the
- scan_sexps_forward result to improve the cache (bug#16526).
+2014-06-02 Paul Eggert <eggert@cs.ucla.edu>
-2014-07-04 Daniel Colascione <dancol@dancol.org>
+ Fix port to 32-bit AIX with xlc (Bug#17598).
+ * alloc.c (gdb_make_enums_visible): Remove FLOAT_TO_STRING_BUFSIZE.
+ * conf_post.h (FLEXIBLE_ARRAY_MEMBER) [__IBMC__]: Don't define to empty.
+ * lisp.h (FLOAT_TO_STRING_BUFSIZE): Make it a macro, instead of an enum,
+ to work around a compiler bug in IBM xlc 12.1.
- Backport from trunk.
- * xfns.c (create_frame_xic): Pass XNStatusAttributes to XCreateIC
- only if xic_style calls for it. This change allows Emacs to work
- with ibus. Also, don't leak resources if create_frame_xic fails,
- and stop caching xic_style across different displays (Bug#17928).
- (supported_xim_styles): Make const.
- (best_xim_style): Remove first parameter: it's always just
- supported_xim_styles. Change to look at supported_xim_styles directly.
+2014-06-02 Eli Zaretskii <eliz@gnu.org>
-2014-07-04 Eli Zaretskii <eliz@gnu.org>
+ * xterm.c (x_update_window_end): Don't invalidate the entire
+ mouse-highlight info, just signal frame_up_to_date_hook that mouse
+ highlight needs to be redisplayed. (Bug#17588)
- * xdisp.c (redisplay_window): If redisplay of a window ends up
- with point in a partially visible line at end of the window, make
- sure the amended position of point actually has smaller Y
- coordinate; if not, give up and scroll the display. (Bug#17905)
+2014-06-02 Paul Eggert <eggert@cs.ucla.edu>
- * window.c (window_scroll_pixel_based): When point ends up at the
- last fully visible line, don't let move_it_to stop at the left
- edge of the line and dupe us into thinking point is inside the
- scroll margin.
+ Port the GDB-visible symbols to AIX.
+ Without them, GDB doesn't work to debug Emacs, since the AIX linker
+ optimizes away the relevant external symbols. Use enums instead;
+ this suffices for the AIX port, which is 32-bit-only anyway.
+ * lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): New macros.
+ (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Use them.
+ (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
+ New macros.
- * w32.c (network_interface_info): Make sure the argument is a
- Lisp string.
+ Include sources used to create macuvs.h.
+ * Makefile.in ($(srcdir)/macuvs.h): New rule.
+ * macuvs.h: Use automatically-generated header.
-2014-07-01 Eli Zaretskii <eliz@gnu.org>
+2014-06-01 Paul Eggert <eggert@cs.ucla.edu>
- * dispnew.c (prepare_desired_row): Accept 2 additional arguments:
- the window whose glyph row is being prepared and a flag whether it
- is for mode/header line. Make sure the glyph row's marginal areas
- are in sync with what the window wants.
- (Bug#17892)
+ Port signal-handling to DragonFly BSD (Bug#17646).
+ * callproc.c, sysdep.c (block_child_signal, unblock_child_signal):
+ Move implementations from callproc.c to sysdep.c.
+ * process.h, syssignal.h (block_child_signal, unblock_child_signal):
+ Move declarations from process.h to syssignal.h.
- * xdisp.c (display_line, display_mode_line):
- Call prepare_desired_row with additional arguments, as appropriate.
+2014-06-01 Juanma Barranquero <lekktu@gmail.com>
- * dispextern.h (prepare_desired_row): Adjust prototype.
+ * callint.c (Ffuncall_interactively): Add usage.
-2014-07-01 Dmitry Antipov <dmantipov@yandex.ru>
+2014-06-01 Jan Djärv <jan.h.d@swipnet.se>
- * xfaces.c (init_frame_faces): Always realize basic faces (Bug#17889).
- * menu.c (Fx_popup_dialog): Set Vmenu_updating_frame to avoid crash
- caused by xw_popup_dialog in daemon mode (Bug#17891).
+ * nsfns.m (ns_appkit_version_str): Add os version for Cocoa.
-2014-06-30 Eli Zaretskii <eliz@gnu.org>
+2014-05-30 Eli Zaretskii <eliz@gnu.org>
- * frame.c (do_switch_frame): When switching to another TTY frame,
- make sure FrameCols and FrameRows are in sync with the new frame's
- data. (Bug#17875)
+ * w32heap.c (malloc_before_dump, malloc_after_dump)
+ (malloc_before_dump, realloc_after_dump, realloc_before_dump)
+ (mmap_alloc, mmap_realloc): Check for errors more thoroughly and
+ set errno where appropriate to emulate CRT functions.
-2014-06-28 Andreas Schwab <schwab@linux-m68k.org>
+2014-05-30 Dmitry Antipov <dmantipov@yandex.ru>
- * coding.c (encode_coding_utf_8): Correctly count produced_chars
- also in unibyte case. (Bug#17865)
+ Debugging facility to check whether 'const char *' points to
+ relocatable data of non-pure Lisp string.
+ * alloc.c (maybe_lisp_pointer): New function, refactored out of ...
+ (mark_maybe_pointer): ... adjusted user.
+ (relocatable_string_data_p): New function.
+ * lisp.h (relocatable_string_data_p): Add prototype.
+ * xdisp.c (message_with_string): If ENABLE_CHECKING, make sure
+ the pointer to relocatable Lisp data is not used.
-2014-06-25 Glenn Morris <rgm@gnu.org>
+2014-05-30 Paul Eggert <eggert@cs.ucla.edu>
- * puresize.h (BASE_PURESIZE): Increase a bit. (Bug#17846)
+ Don't let SIGINT handling block SIGCHLD indefinitely (Bug#17561).
+ * atimer.c (block_atimers):
+ * callproc.c (block_child_signal): Block SIGINT too;
+ otherwise, its handler might now unblock signals that it shouldn't.
+ * keyboard.c (read_char): Clear signal mask, since we may
+ be in a SIGINT handler, and many signals may be masked.
+ * keyboard.c (handle_interrupt):
+ * sysdep.c (handle_arith_signal):
+ Clear signal mask instead of just unblocking the signal that
+ was received, since several signals may be blocked at this point.
-2014-06-21 Eli Zaretskii <eliz@gnu.org>
+2014-05-29 Eli Zaretskii <eliz@gnu.org>
- * indent.c (Fvertical_motion): Doc fix.
- Move to the goal column, if any, with a single call to
- move_it_in_display_line, not in two calls. Doing this with two
- calls causes move_it_in_display_line apply the line-prefix
- handling twice instead of just once. (Bug#17823)
+ * Makefile.in (TEMACS_POST_LINK): Remove target.
+ (emacs$(EXEEXT)): Remove $(ADDSECTION) from prerequisites.
+ (temacs$(EXEEXT)): Remove $(TEMACS_POST_LINK) from the recipe.
-2014-06-21 Paul Eggert <eggert@cs.ucla.edu>
+2014-05-29 Dmitry Antipov <dmantipov@yandex.ru>
- Port to OS X ACLs (Bug#17810).
- * fileio.c (Ffile_acl): Port to OS X, where acl_get_file (...,
- ACL_TYPE_ACCESS) doesn't work.
+ * xmenu.c (xdialog_show): Remove prototype, rename to
+ x_dialog_show, remove 2nd arg because it's always zero
+ and simplify accordingly.
+ (xw_popup_dialog): Adjust user.
+ * w32menu.c (w32_dialog_show): Adjust prototype, remove
+ 2nd arg because it's always zero and simplify accordingly.
+ (w32_popup_dialog): Adjust user.
-2014-06-19 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-05-29 Eli Zaretskii <eliz@gnu.org>
- * keyboard.c (read_key_sequence): Don't invoke Vprefix_help_command
- before checking key-translation-map (bug#17659).
+ * w32heap.c (report_temacs_memory_usage): New function.
-2014-06-19 Dmitry Antipov <dmantipov@yandex.ru>
+ * unexw32.c (unexec) [ENABLE_CHECKING]:
+ Call report_temacs_memory_usage.
- * font.c (font_make_object): Avoid dangling pointer which may
- crash GC (Bug#17771).
+ * w32heap.h (report_temacs_memory_usage): Add prototype.
-2014-06-18 Eli Zaretskii <eliz@gnu.org>
+2014-05-29 Paul Eggert <eggert@cs.ucla.edu>
- * image.c [5 < GIFLIB_MAJOR + (1 <= GIFLIB_MINOR)]: Declare the
- prototype of DGifCloseFile as appropriate for older and newer
- versions of giflib.
- (gif_close): New function, encapsulates the differences in the
- calling sequence of DGifCloseFile before v5.1.0 and after it.
- (gif_load): Call gif_close instead of DGifCloseFile. Divulge the
- error string where appropriate. (Bug#17790)
+ Don't substitute sigprocmask for pthread_sigmask (Bug#17561).
+ * Makefile.in (LIB_PTHREAD_SIGMASK): Remove; all uses removed.
-2014-06-16 Eli Zaretskii <eliz@gnu.org>
+2014-05-29 Eli Zaretskii <eliz@gnu.org>
- * xdisp.c (Fmove_point_visually): Instead of testing for keyboard
- macro execution, make sure point didn't move since last complete
- redisplay, as the condition for using the glyph matrix
- information. (Bug#17777)
+ * buffer.c (init_buffer): Accept an argument 'initialized'.
+ [USE_MMAP_FOR_BUFFERS]: If 'initialized' is non-zero, reset
+ mmap_regions and mmap_fd, to avoid referencing stale data from the
+ dump phase. Add an assertion for buffer text of buffers created
+ in temacs before this function is called. (Bug#17622)
+ (mmap_regions_1, mmap_fd_1): Remove unused variables.
-2014-06-14 Eli Zaretskii <eliz@gnu.org>
+ * lisp.h (init_buffer): Update prototype.
- * xdisp.c (Fmove_point_visually): Don't use the glyph matrix
- information if we are in the middle of executing a keyboard macro,
- since redisplay doesn't update the screen until the macro is
- finished. (Bug#17777)
+ * emacs.c (main): Pass 'initialized' as the argument to init_buffer.
-2014-06-13 Eli Zaretskii <eliz@gnu.org>
+2014-05-29 Dmitry Antipov <dmantipov@yandex.ru>
- * alloc.c (cleanup_vector): Don't dereference a font driver
- pointer if it is NULL. (Bug#17771)
+ * alloc.c (Fgarbage_collect): Fix compilation with
+ GC_MARK_STACK == GC_USE_GCPROS_AS_BEFORE.
-2014-06-11 Eli Zaretskii <eliz@gnu.org>
+2014-05-29 Paul Eggert <eggert@cs.ucla.edu>
- * xdisp.c (set_cursor_from_row): Fix an off-by-one error when
- matching overlay strings with 'cursor' property against buffer
- positions traversed in the glyph row. (Bug#17744)
+ * frame.c, frame.h (frame_char_to_pixel_position)
+ (frame_set_mouse_position): Now static, and made private in
+ frame.c rather than public in frame.h.
-2014-06-08 Glenn Morris <rgm@gnu.org>
+2014-05-28 Dmitry Antipov <dmantipov@yandex.ru>
- * fileio.c (write-region-inhibit-fsync): Doc tweak.
+ Refactor mouse positioning stuff to avoid code duplication.
+ * frame.h (frame_char_to_pixel_position): New function.
+ (x_set_mouse_position): Rename to...
+ (frame_set_mouse_position): ...new function.
+ (frame_set_mouse_pixel_position): Add prototype.
+ * nsterm.m, w32term.c, xterm.c (x_set_mouse_pixel_position):
+ Rename to frame_set_mouse_pixel_position.
+ * frame.c (Fset_mouse_pixel_position, Fset_mouse_position):
+ Adjust users.
+ * xterm.h, w32term.h ( x_set_mouse_position)
+ (x_set_mouse_pixel_position): Remove prototypes.
- * data.c (Flss, Fgtr, Fleq, Fgeq): Doc tweaks.
+2014-05-28 Dmitry Antipov <dmantipov@yandex.ru>
-2014-06-04 Eli Zaretskii <eliz@gnu.org>
+ On X, always make pointer visible when deleting frame (Bug#17609).
+ * frame.c (frame_make_pointer_visible, frame_make_pointer_invisible):
+ Pass frame as arg.
+ * frame.h (frame_make_pointer_visible, frame_make_pointer_invisible):
+ Adjust prototypes.
+ * cmds.c (Fself_insert_command): Use SELECTED_FRAME.
+ * keyboard.c (gobble_input): If there is no terminal input error,
+ make sure the pointer is visible for all frames on this terminal.
+ * xterm.c (x_free_frame_resources): Enable pointer visibility if
+ it was previously disabled.
- * sysdep.c (reset_sys_modes): Use cursorX, not curX, as the latter
- contains garbage on WINDOWSNT (which could potentially infloop at
- exit).
+2014-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
- Minimize cursor motion during TTY menu updates.
- * term.c (tty_menu_display): Don't position cursor here. Instead,
- pass the cursor coordinates to update_frame_with_menu.
- (tty_menu_activate): Send the hide cursor command only once in an
- iteration through the outer 'while' loop.
+ * data.c (Fzerop): Move to Elisp.
+ (syms_of_data): Don't defsubr it.
+ * keyboard.c (echo_keystrokes_p): New function.
+ (read_char, record_menu_key, read_key_sequence): Use it.
- * dispnew.c (update_frame_1): Accept an additional argument
- SET_CURSOR_P, and position the cursor at the end of the frame
- update only if that argument is non-zero. All callers changed to
- provide the additional argument as non-zero, except for
- update_frame_with_menu.
- (update_frame_with_menu): Accept 2 additional arguments ROW and
- COL; if they are non-negative, instruct update_frame_1 not to
- position the cursor, and instead position it according to ROW and
- COL.
+ * callint.c (Qfuncall_interactively): New var.
+ (Qcall_interactively): Remove.
+ (Ffuncall_interactively): New function.
+ (Fcall_interactively): Use it.
+ (syms_of_callint): Defsubr it.
- * dispextern.h (update_frame_with_menu): Update prototype.
+2014-05-27 Stefan Monnier <monnier@iro.umontreal.ca>
-2014-06-02 Stefan Monnier <monnier@iro.umontreal.ca>
+ * bytecode.c (FETCH) [BYTE_CODE_SAFE]: Check the bytecode wasn't
+ relocated from under us.
- * callproc.c (call_process): Don't check read-only if we don't insert
- anything (bug#17666).
+2014-05-27 Fabrice Popineau <fabrice.popineau@gmail.com>
-2014-06-02 Eli Zaretskii <eliz@gnu.org>
+ Use mmap(2) emulation for allocating buffer text on MS-Windows.
+ * Makefile.in (C_HEAP_SWITCH): Get the predefined heap size from
+ configure, not from HEAPSIZE.
+ (ADDSECTION, MINGW_TEMACS_POST_LINK): Remove, no longer used.
- * dispnew.c (update_frame_with_menu): Set display_completed.
+ * lisp.h (NONPOINTER_BITS): Modify the condition to define to zero
+ for MinGW, since it no longer uses gmalloc.
-2014-06-01 Paul Eggert <eggert@cs.ucla.edu>
+ * buffer.c: Do not define mmap allocations functions for Windows.
+ Remove mmap_find which is unused. Remove mmap_set_vars which does
+ nothing useful.
+ [WINDOWSNT]: Include w32heap.h.
+ (init_buffer): Always allocate new memory for buffers.
- * frame.c (x_set_frame_parameters): Don't read uninitialized storage.
+ * emacs.c: Remove mmap_set_vars calls.
-2014-06-01 Jan Djärv <jan.h.d@swipnet.se>
+ * image.c (free_image): Undef free for Windows because it is
+ redirected to our private version.
- * xterm.c (xg_scroll_callback): Remove position, for jump set portion
- to min(value, whole).
+ * unexw32.c (COPY_PROC_CHUNK): Use %p format for 64bits compatibility.
+ (copy_executable_and_dump_data): Remove dumping the heap section.
+ (unexec): Restore using_dynamic_heap after dumping.
-2014-06-01 Paul Eggert <eggert@cs.ucla.edu>
+ * w32heap.c (dumped_data_commit, malloc_after_dump)
+ (malloc_before_dump, realloc_after_dump, realloc_before_dump)
+ (free_after_dump, free_before_dump, mmap_alloc, mmap_realloc)
+ (mmap_free): New functions.
- Bring back the changes to GDB-visible symbols, but only on AIX.
- And only if it's not pre-4.2 GCC.
- * lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): New macros.
- (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Use them.
- (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
- New macros.
+ * w32heap.h: Declare dumped_data and mmap_* function prototypes.
-2014-05-31 Eli Zaretskii <eliz@gnu.org>
+2014-05-27 Paul Eggert <eggert@cs.ucla.edu>
- * fileio.c (Finsert_file_contents): Call prepare_to_modify_buffer
- with PT, not GPT. (Bug#16433)
+ * image.c (imagemagick_load_image): Use MagickRealType for local
+ 'color_scale', instead of double, to avoid a GCC warning about
+ double promotion.
- Revert last changes to GDB-visible symbols.
- * lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): Delete macros.
- (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Don't use them.
- (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
- Delete macros.
+ * xfns.c (Fx_window_property): Remove unused local.
-2014-05-31 Glenn Morris <rgm@gnu.org>
+ Don't kill already-reaped process (Bug#17561).
+ * process.c (process_send_signal): Fix race condition where a
+ subprocess was reaped by a signal handler between the check for
+ liveness and calling 'kill', which meant that Emacs could in
+ theory kill an innocent bystander process. Do the fix by blocking
+ SIGCHLD in a critical section that checks liveness before killing.
- * cmds.c (Fself_insert_command): Allow zero repeat count. (Bug#17649)
+2014-05-26 Eli Zaretskii <eliz@gnu.org>
-2014-05-30 Paul Eggert <eggert@cs.ucla.edu>
+ * w32.c (_ANONYMOUS_UNION, _ANONYMOUS_STRUCT): Define only if undefined.
- Fix port to 32-bit AIX with xlc (Bug#17598).
- * alloc.c (gdb_make_enums_visible): Remove FLOAT_TO_STRING_BUFSIZE.
- * conf_post.h (FLEXIBLE_ARRAY_MEMBER) [__IBMC__]: Don't define to empty.
- * lisp.h (FLOAT_TO_STRING_BUFSIZE): Make it a macro, instead of an enum,
- to work around a compiler bug in IBM xlc 12.1.
+2014-05-26 Ken Brown <kbrown@cornell.edu>
-2014-05-29 Eli Zaretskii <eliz@gnu.org>
+ * w32term.c (x_delete_display): Don't free dpyinfo->w32_id_name,
+ even if !CYGWIN (see bug#17510).
- * xterm.c (x_update_window_end): Don't invalidate the entire
- mouse-highlight info, just signal frame_up_to_date_hook that mouse
- highlight needs to be redisplayed. (Bug#17588)
+2014-05-26 Jan Djärv <jan.h.d@swipnet.se>
-2014-05-29 Paul Eggert <eggert@cs.ucla.edu>
+ * nsfns.m (Fns_do_applescript): Surround NSApp run
+ with calls to ns_init_events, ns_finish_events (Bug#17424).
- Port the GDB-visible symbols to AIX.
- Without them, GDB doesn't work to debug Emacs, since the AIX linker
- optimizes away the relevant external symbols. Use enums instead;
- this suffices for the AIX port, which is 32-bit-only anyway.
- * lisp.h (ENUMABLE, DEFINE_GDB_SYMBOL_ENUM): New macros.
- (ARRAY_MARK_FLAG, PSEUDOVECTOR_FLAG, VALMASK): Use them.
- (ARRAY_MARK_FLAG_val, PSEUDOVECTOR_FLAG_val, VALMASK_val):
- New macros.
+ * nsterm.h (ns_init_events, ns_finish_events): Declare.
-2014-05-26 Paul Eggert <eggert@cs.ucla.edu>
+ * nsterm.m (ns_init_events, ns_finish_events): New functions.
+ (ns_read_socket, ns_select): Call ns_init_events, ns_finish_events.
- Include sources used to create macuvs.h.
- * Makefile.in ($(srcdir)/macuvs.h): New rule.
- * macuvs.h: Use automatically-generated header.
+ * nsfns.m (ns_do_applescript): Surround executeAndReturnError
+ with calls to ns_init_events, ns_finish_events (Bug#17424).
-2014-05-25 Eli Zaretskii <eliz@gnu.org>
+2014-05-26 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (move_it_in_display_line_to): Don't record wrap position
if we are iterating over an object that generates glyphs for
marginal areas. (Bug#17585)
-2014-05-24 Paul Eggert <eggert@cs.ucla.edu>
+2014-05-26 Paul Eggert <eggert@cs.ucla.edu>
* xdisp.c (safe__call1, safe__eval): Now static.
-2014-05-24 Eli Zaretskii <eliz@gnu.org>
+2014-05-26 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (safe__call): Accept va_list argument instead of '...'.
(safe_call, safe__call1): Construct a va_list argument for safe_call.
(safe_call1): Call safe_call instead of safe__call directly.
-2014-05-24 Ken Brown <kbrown@cornell.edu>
+2014-05-26 Ken Brown <kbrown@cornell.edu>
* w32term.c (x_delete_display) [CYGWIN]: Don't free
dpyinfo->w32_id_name, to make sure it doesn't get freed more than
once. (Bug#17510)
-2014-05-24 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-05-26 Stefan Monnier <monnier@iro.umontreal.ca>
* xdisp.c: Bind inhibit-quit during pre-redisplay-function.
(safe__call, safe__call1, safe__eval): New functions.
(prepare_menu_bars): Use it for pre-redisplay-function (bug#17577).
(display_mode_element): Same for `:eval'.
-2014-05-22 Paul Eggert <eggert@cs.ucla.edu>
+2014-05-26 Paul Eggert <eggert@cs.ucla.edu>
Fix port to 32-bit AIX (Bug#17540).
* unexaix.c (copy_text_and_data): Don't add text_scnptr to ptr
twice. _text already includes this offset.
(unrelocate_symbols): Don't cast 64-bit integer to pointer.
-2014-05-21 Eli Zaretskii <eliz@gnu.org>
+2014-05-26 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (move_it_in_display_line_to): Avoid infinite recursion:
when closest_pos is identical to to_charpos, don't recurse, since
we already tried that, and failed. (Bug#17539)
-2014-05-20 Eli Zaretskii <eliz@gnu.org>
-
* w32fns.c (unwind_create_frame) [GLYPH_DEBUG]: If we are
unwinding when frame's faces were not initialized yet, increment
the frame's image-cache reference count before calling
x_free_frame_resources. Don't dereference
dpyinfo->terminal->image_cache if it is NULL. (Bug#17524)
-2014-05-11 Glenn Morris <rgm@gnu.org>
+2014-05-25 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsfont.m (nsfont_draw): Simplify as arguments are adjusted in
+ nsterm.m now.
+
+ * nsterm.m (ns_draw_glyph_string): Move isComposite and end from
+ macfont.m, call draw with adjusted arguments so font drivers
+ don't need to do that.
+
+ * macfont.m (macfont_draw): Merge changes from Macport.
+
+2014-05-24 Eli Zaretskii <eliz@gnu.org>
+
+ * alloc.c (garbage_collect_1): New function, with all of the guts
+ of Fgarbage_collect.
+ (mark_stack): Accept an argument END and don't mark Lisp objects
+ on the stack beyond the address given by END. Calculation of END
+ was moved to Fgarbage_collect.
+ (Fgarbage_collect): Calculate the end address of the stack portion
+ that needs to be examined by mark_stack, and pass that address to
+ garbage_collect_1, which will pass it to mark_stack.
+ See http://lists.gnu.org/archive/html/emacs-devel/2014-05/msg00270.html
+ for more details about the underlying problems. In particular,
+ this avoids dumping Emacs with the large hash-table whose value is
+ held in purify-flag for most of the time loadup.el runs.
+
+2014-05-24 Jan Djärv <jan.h.d@swipnet.se>
+
+ * xfns.c (x_window_property_intern): New function (code from
+ x_window_property).
+ (Fx_window_property): Call x_window_property_intern. If property
+ not found and NILP (source) and outer window != inner window,
+ check outer window for property (Bug#17537).
+
+2014-05-22 Paul Eggert <eggert@cs.ucla.edu>
+
+ Supply malloc and alloc_size attributes for extern allocators.
+ This documents the C API, and helps GCC generate a bit better code.
+ * conf_post.h (ATTRIBUTE_MALLOC, ATTRIBUTE_ALLOC_SIZE)
+ (ATTRIBUTE_MALLOC_SIZE): New macros.
+ * gmalloc.c (malloc, realloc, calloc):
+ * gtkutil.h (malloc_widget_value):
+ * lisp.h (ralloc, r_re_alloc, xmalloc, xzalloc, xrealloc, xnmalloc)
+ (xnrealloc, xstrdup, xlispstrdup, record_xmalloc):
+ Use them.
+
+2014-05-21 Paul Eggert <eggert@cs.ucla.edu>
+
+ Don't assume that ImageMagick uses a 16-bit quantum (Bug#17519).
+ * image.c (imagemagick_load_image): Port to hosts that do not use
+ a 16-bit quantum, i.e., QuantumRange does not equal 65535.
+
+2014-05-21 Leo Liu <sdl.web@gmail.com>
+
+ * fns.c (Fnreverse): Accept strings for SEQ and update doc-string.
+
+2014-05-20 Michael Albinus <michael.albinus@gmx.de>
+
+ * dbusbind.c (xd_signature): Revert last 2 patches.
+
+2014-05-19 Paul Eggert <eggert@cs.ucla.edu>
+
+ Allow any non-nil value to count as true in bool-vector.
+ Likewise for xd_signature in dbusbind.c.
+ This is more consistent with the usual practice in Emacs, which is
+ that any non-nil value counts as true.
+ * alloc.c (Fbool_vector): Don't require args to be t or nil.
+ * dbusbind.c (xd_signature): Likewise, for booleans.
+ * data.c, lisp.h (Qbooleanp):
+ * lisp.h (CHECK_BOOLEAN): Remove. All uses removed.
+
+2014-05-19 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * lisp.h (CHECK_BOOLEAN): New function.
+ * alloc.c (Fbool_vector): New function.
+ (syms_of_alloc): Defsubr it.
+ * data.c (Qbooleanp): New symbol.
+ (syms_of_data): DEFSYM it.
+ * dbusbind.c (xd_signature): Use CHECK_BOOLEAN.
+
+ * font.c (font_matching_entity): Extract font-entity object
+ from the vector of matching entities (Bug#17486).
+
+2014-05-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ Assume C99 or later (Bug#17487).
+ * bytecode.c (B__dummy__): Remove.
+ * conf_post.h (bool_bf) [!NS_IMPL_GNUSTEP]: Use bool.
+ (FLEXIBLE_ARRAY_MEMBER): Now always empty.
+ * dbusbind.c (XD_DEBUG_MESSAGE) [!DBUS_DEBUG]:
+ * regex.c (DEBUG_PRINT): Assume varargs macros.
+ * lisp.h (DEFUN_FUNCTION_INIT): Remove. All uses now assume C99.
+
+2014-05-17 Fabrice Popineau <fabrice.popineau@gmail.com>
+
+ * buffer.c (init_buffer) [USE_MMAP_FOR_BUFFERS]: Always map new
+ memory for every buffer that was dumped.
+
+2014-05-15 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * fns.c (Freverse): Allow vectors, bool vectors and strings.
+ (Fnreverse): Allow vectors and bool vectors.
+
+2014-05-14 Dmitry Antipov <dmantipov@yandex.ru>
+
+ Minor cleanup for terminal setup.
+ * termhooks.h (create_terminal): Adjust prototype.
+ * terminal.c (create_terminal): Pass output method and RIF as args.
+ (init_initial_terminal):
+ * nsterm.m (ns_create_terminal):
+ * term.c (init_tty):
+ * w32term.c (w32_create_terminal):
+ * xterm.c (x_create_terminal): Adjust users.
+ Avoid redundant NULL initializers and add comments.
+
+2014-05-13 Paul Eggert <eggert@cs.ucla.edu>
+
+ * keyboard.c (Qdeactivate_mark): Now static.
+
+2014-05-13 Dmitry Antipov <dmantipov@yandex.ru>
+
+ If available, use Xfixes extension to do pointer blanking.
+ * Makefile.in (XFIXES_CFLAGS, XFIXES_LIBS): New var.
+ * xfns.c (x_set_mouse_color): Do not call make_invisible_cursor here.
+ (make_invisible_cursor): Move to...
+ * xterm.c (make_invisible_cursor): ...here.
+ (x_probe_xfixes_extension, xfixes_toggle_visible_pointer)
+ (x_toggle_visible_pointer, x_setup_pointer_blanking): New functions.
+ (x_term_init): Call to x_setup_pointer_blanking.
+ (XTtoggle_invisible_pointer): Use blanking specific to this display.
+ * xterm.h (struct x_display_info): New member toggle_visible_pointer.
+
+2014-05-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+
+ * xdisp.c (draw_glyphs): Set clipping to highlight boundaries.
+
+2014-05-12 Glenn Morris <rgm@gnu.org>
* fileio.c (Ffile_executable_p): Doc tweak.
-2014-05-10 Jan Djärv <jan.h.d@swipnet.se>
+2014-05-12 Jan Djärv <jan.h.d@swipnet.se>
* xsettings.c (init_gsettings): Use g_settings_schema_source_lookup
instead of deprecated g_settings_list_schemas if possible (Bug#17434).
-2014-05-07 Paul Eggert <eggert@cs.ucla.edu>
+2014-05-08 Paul Eggert <eggert@cs.ucla.edu>
* minibuf.c (read_minibuf): Avoid C99ism in previous patch (Bug#17430).
-2014-05-07 Jarek Czekalski <jarekczek@poczta.onet.pl>
+2014-05-08 Jarek Czekalski <jarekczek@poczta.onet.pl>
Fix initialization of minibuffer history variable (Bug#17430).
* minibuf.c (read_minibuf): Initialize histval to Qnil if unbound.
Move the initialization up to prevent any "value void" message.
-2014-05-06 Samuel Bronson <naesten@gmail.com>
+2014-05-08 Samuel Bronson <naesten@gmail.com>
* keyboard.c (Frecursive_edit): Ensure inc&dec of command_loop_level
are matched (bug#17413).
-2014-05-06 Jarek Czekalski <jarekczek@poczta.onet.pl>
+2014-05-08 Jarek Czekalski <jarekczek@poczta.onet.pl>
Stop tooltips pulling Emacs window to front (Bug#17408).
* w32fns.c (Fx_show_tip): Add SWP_NOOWNERZORDER flag to
SetWindowPos invocations.
-2014-05-05 Jan Djärv <jan.h.d@swipnet.se>
+2014-05-08 Jan Djärv <jan.h.d@swipnet.se>
* nsselect.m (Fx_selection_exists_p): Just return Qnil if window system
not initialized (Bug#17398).
+2014-05-07 Paul Eggert <eggert@cs.ucla.edu>
+
+ * image.c: Include <png.h> before <setjmp.h> (Bug#17429).
+
+2014-05-06 Paul Eggert <eggert@cs.ucla.edu>
+
+ * image.c: Do not use libpng if HAVE_NS, as NS does its own thing.
+ [HAVE_NS]: Do not include png.h.
+ (x_query_frame_background_color): New function.
+ (png_load_body, imagemagick_load_image, svg_load_image): Use it.
+ (png_load_body): Coalesce duplicate code.
+
2014-05-04 Paul Eggert <eggert@cs.ucla.edu>
- Revert recent libpng changes (Bug#17339).
- * Makefile.in (PNG_CFLAGS): Remove; all uses removed.
- * image.c [HAVE_LIBPNG_PNG_H]: Include <libpng/png.h>, not <png.h>.
+ Consult libpng-config more consistently (Bug#17339).
+ * Makefile.in (PNG_CFLAGS): New var.
+ (ALL_CFLAGS): Use it.
+ * image.c [HAVE_PNG]: Don't worry about <libpng/png.h>, as
+ CFLAGS now handles this.
2014-05-03 Paul Eggert <eggert@cs.ucla.edu>
* buffer.c (overlay_strings): Fix the wording of the commentary.
-2014-05-02 Paul Eggert <eggert@cs.ucla.edu>
-
- Consult libpng-config more consistently (Bug#17339).
- * Makefile.in (PNG_CFLAGS): New var.
- (ALL_CFLAGS): Use it.
- * image.c [HAVE_PNG]: Don't worry about <libpng/png.h>, as
- CFLAGS now handles this.
-
2014-05-01 Glenn Morris <rgm@gnu.org>
* floatfns.c (Fisnan):
GCC 4.9.0 warned about this, and I couldn't easily prove to my own
satisfaction that they would always be initialized.
-2014-04-29 Eli Zaretskii <eliz@gnu.org>
+2014-04-30 Eli Zaretskii <eliz@gnu.org>
* term.c (tty_menu_display): Move the cursor to the active menu item.
(tty_menu_activate): Return the cursor to the active menu item
for the details of why this is needed by screen readers and
Braille displays.
-2014-04-29 Glenn Morris <rgm@gnu.org>
+2014-04-30 Glenn Morris <rgm@gnu.org>
* process.c (handle_child_signal):
Handle systems without WCONTINUED. (Bug#15110, 17339)
-2014-04-23 Eli Zaretskii <eliz@gnu.org>
+2014-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * window.c (struct saved_window): Remove mark.
+ (Fset_window_configuration, save_window_save)
+ (compare_window_configurations): Don't touch marks any more.
+
+2014-04-28 Paul Eggert <eggert@cs.ucla.edu>
+
+ Use bits_word for gcmarkbits.
+ * alloc.c (struct cons_block, struct float_block): On 64-bit hosts,
+ bits_word is typically a tad more efficient for mark bits than
+ unsigned is, so use bits_word. All uses changed.
+ * lisp.h (BITS_PER_INT): Remove; no longer used.
+
+ Avoid undefined behavior in signed left shift.
+ This ports to GCC 4.9.0 with -fsanitize=undefined.
+ * alloc.c (bool_vector_fill, SETMARKBIT, UNSETMARKBIT):
+ * data.c (Fash):
+ * regex.c (extract_number):
+ * lisp.h (make_number, XINT):
+ Do not shift a 1 bit left into a sign bit.
+ * alloc.c (struct cons_block, struct float_block): Use unsigned,
+ not int, for gcmarkbits. All uses changed.
+
+2014-04-25 Eli Zaretskii <eliz@gnu.org>
* search.c (Fnewline_cache_check): Don't try to count newlines
outside the buffer's restriction, as find_newline doesn't support that.
+2014-04-24 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * window.c (Fset_window_configuration): Deactivate the mark before
+ unsetting the mark.
+ (set_window_buffer): Ignore window_initialized.
+ (window_initialized): Remove.
+ * keyboard.c (Qdeactivate_mark): Not static any more.
+ * buffer.c (buffer_local_value): Rename from buffer_local_value_1.
+ Update all callers.
+
+2014-04-23 Paul Eggert <eggert@cs.ucla.edu>
+
+ * conf_post.h (ADDRESS_SANITIZER_WORKAROUND): Port to GCC 4.9.0
+ and to clang 3.4, which have fixed the bug. This should let us
+ run a bit faster on these platforms when address sanitization is
+ in effect.
+
2014-04-22 Paul Eggert <eggert@cs.ucla.edu>
Port to GCC 4.9.0 with --enable-gcc-warnings.
(Fnewline_cache_check): New function.
(syms_of_search): Defsubr it.
-2014-04-21 Jarek Czekalski <jarekczek@poczta.onet.pl>
+2014-04-22 Jarek Czekalski <jarekczek@poczta.onet.pl>
Fix freezing with scroll bars of GTK3 Toolkit (bug#15801).
* keyboard.c (unblock_input): Add comment.
* xgselect.c (xg_select): Prevent Glib main loop recursion.
+2014-04-22 Daniel Colascione <dancol@dancol.org>
+
+ * lread.c (readevalloop_eager_expand_eval): New function
+ that can recurse into toplevel forms.
+ (readevalloop): Call it.
+ * lisp.h: Declare Qprogn.
+ * callint.c (Qprogn): No longer static.
+
2014-04-19 Stefan Monnier <monnier@iro.umontreal.ca>
* intervals.c (rotate_right, rotate_left): Fix up length computation.
Also change identifiers to match the comments, and add more assertions
(bug#16234).
-2014-04-18 Eli Zaretskii <eliz@gnu.org>
-
- * xdisp.c (insert_left_trunc_glyphs): Ensure the left truncation
- glyph is written to TEXT_AREA of the temporary glyph_row.
- (Bug#17288)
-
2014-04-18 Paul Eggert <eggert@cs.ucla.edu>
* emacs.c (close_output_streams): Don't clear and restore errno.
-2014-04-17 Jan Djärv <jan.h.d@swipnet.se>
+2014-04-18 Jan Djärv <jan.h.d@swipnet.se>
* xterm.c (x_make_frame_visible): Prevent endless loop when frame
never becomes visible, i.e. using XMonad (Bug#17237).
-2014-04-17 Eli Zaretskii <eliz@gnu.org>
+2014-04-18 Eli Zaretskii <eliz@gnu.org>
- * xdisp.c (Fline_pixel_height): Don't assume that the current
- buffer and the selected window's buffer are one and the same.
- (Bug#17281)
+ * xdisp.c (insert_left_trunc_glyphs): Ensure the left truncation
+ glyph is written to TEXT_AREA of the temporary glyph_row. (Bug#17288)
+ (Fline_pixel_height): Don't assume that the current buffer and the
+ selected window's buffer are one and the same. (Bug#17281)
* insdel.c (invalidate_buffer_caches): Invalidate the bidi
paragraph-start cache before the newline cache. (Bug#17269)
+2014-04-17 Paul Eggert <eggert@cs.ucla.edu>
+
+ * term.c (tty_send_additional_strings): No need to fflush here,
+ as callers fflush.
+ (tty_set_terminal_modes): fflush after sending additional strings,
+ not before.
+
+2014-04-17 Daniel Colascione <dancol@dancol.org>
+
+ * term.c (Qtty_mode_set_strings, Qtty_mode_reset_strings):
+ New symbols.
+ (tty_send_additional_strings): New function.
+ (tty_set_terminal_modes, tty_reset_terminal_modes): Use it.
+ (syms_of_term): Intern tty-mode-set-strings and
+ tty-mode-reset-strings.
+
2014-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
* window.c (save_window_save): Lookup window_point_insertion_type in
Move vfork-related portions under #ifndef MSDOS.
(syms_of_callproc): Unify templates of MSDOS and WINDOWSNT.
-2014-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
* buffer.c (Foverlays_at): Add argument `sorted'.
-2014-04-14 Eli Zaretskii <eliz@gnu.org>
+2014-04-16 Eli Zaretskii <eliz@gnu.org>
* insdel.c (invalidate_buffer_caches): When deleting or replacing
text, invalidate the bidi_paragraph_cache upto and including the
preceding newline.
-2014-04-13 Paul Eggert <eggert@cs.ucla.edu>
+2014-04-16 Paul Eggert <eggert@cs.ucla.edu>
Port to IRIX 6.5 (Bug#9684).
- * alloc.c (TAGGABLE_NULL): New constant,
- for porting to hosts with nontrivial DATA_SEG_BITS settings.
- (next_vector, set_next_vector): Use it.
* conf_post.h (INET6) [IRIX6_5]: Define.
(HAVE_GETADDRINFO) [IRIX6_5]: Undef.
* data.c (BITS_PER_ULL): Don't assume ULLONG_MAX is defined.
- * lisp.h (lisp_h_XPNTR): Don't OR in bits that aren't masked out,
- for consistency with how TAGGABLE_NULL is computed.
-2014-04-13 Eli Zaretskii <eliz@gnu.org>
+2014-04-16 Eli Zaretskii <eliz@gnu.org>
* keyboard.c (Fopen_dribble_file): Encode the dribble file-name
before passing it to system APIs.
- * puresize.h (BASE_PURESIZE): Bump by 1K. (Bug#17255)
-
-2014-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-04-16 Stefan Monnier <monnier@iro.umontreal.ca>
* bytecode.c (exec_byte_code): Rework the volatiles. Most importantly,
make sure stack.byte_string_start is not de-adjusted by pushhandler.
-2014-04-12 Paul Eggert <eggert@cs.ucla.edu>
+2014-04-16 Paul Eggert <eggert@cs.ucla.edu>
* keyboard.c (Fopen_dribble_file): Avoid some races. (Bug#17187)
+2014-04-15 Paul Eggert <eggert@cs.ucla.edu>
+
+ Remove DATA_SEG_BITS.
+ The DATA_SEG_BITS hack was needed for older 32 bit platforms.
+ As a result of this change, Emacs won't work on IRIX 6.5 with IRIX
+ cc, but that platform is so old that SGI itself stopped supporting
+ it in December 2013. If you still need Emacs on IRIX, please
+ either compile with GCC and port the undumping code, or run
+ './configure --with-wide-int'.
+ * alloc.c (gdb_make_enums_visible): Update to match lisp.h.
+ * lisp.h (GCTYPEBITS): Move definition up, and switch to the
+ DEFINE_GDB_SYMBOL_START way to define it.
+ (NONPOINTER_BITS): New macro.
+ (EMACS_INT): Use it.
+ [!USE_LSB_TAG && !WIDE_EMACS_INT]: Fail, and suggest reporting
+ the problem and/or configuring --with-wide-int.
+ (USE_LSB_TAG): Simplify, based on above changes.
+ (gdb_DATA_SEG_BITS): Remove. All uses removed.
+ * vm-limit.c (exceeds_lisp_ptr): Remove. All uses removed.
+
2014-04-12 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (move_it_by_lines): If a large portion of buffer text is
* indent.c (Fvertical_motion): Handle correctly the case when the
display string is preceded by an empty line.
-2014-04-11 Eli Zaretskii <eliz@gnu.org>
-
* w32.c (sys_umask) <WRITE_USER>: Remove redundant constant, and
use S_IWRITE instead.
* keyboard.c (Fopen_dribble_file): Make file private. (Bug#17187)
-2014-04-09 Ken Brown <kbrown@cornell.edu>
+2014-04-11 Ken Brown <kbrown@cornell.edu>
* Makefile.in (EMACS_MANIFEST): Revert last change.
+2014-04-10 Daniel Colascione <dancol@dancol.org>
+
+ * puresize.h (BASE_PURESIZE): Increase.
+
+2014-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * keyboard.c (syms_of_keyboard): Make deactivate-mark buffer-local.
+
+ * insdel.c (prepare_to_modify_buffer_1): Cancel lock-file checks and
+ region handling (and don't call signal_before_change) if
+ inhibit_modification_hooks is set.
+ (signal_before_change): Don't check inhibit_modification_hooks any more.
+
+2014-04-08 Daniel Colascione <dancol@dancol.org>
+
+ * alloc.c (sweep_symbols, mark_object): Assert that symbol
+ function cells contain valid lisp objects. (Modified version of
+ patch from Dmitry).
+
+ * alloc.c (detect_suspicious_free): Split actual stack capturing
+ out into new function for easier breakpoint setting.
+ (note_suspicious_free): New function.
+
2014-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
* lisp.h (struct Lisp_Symbol): New bitfield `pinned'.
(Fgarbage_collect): Use it.
(gc_sweep): Remove hack made unnecessary.
-2014-04-05 Glenn Morris <rgm@gnu.org>
+2014-04-07 Glenn Morris <rgm@gnu.org>
* keyboard.c (Fopen_dribble_file): Doc tweak.
-2014-04-04 Jan Djärv <jan.h.d@swipnet.se>
+2014-04-07 Ken Brown <kbrown@cornell.edu>
- Backport from trunk.
- * nsterm.m (updateFrameSize:): If waiting for the tool bar and tool
- bar is zero height, just return (Bug#16976).
- (initFrameFromEmacs:): Initialize wait_for_tool_bar.
- * nsterm.h (EmacsView): Add wait_for_tool_bar.
- * nsmenu.m (update_frame_tool_bar): Return early if view or toolbar
- is nil. If waiting for toolbar to complete, force a redraw.
- (free_frame_tool_bar): Set wait_for_tool_bar = NO (Bug#16976).
+ * Makefile.in (EMACS_MANIFEST): Update comment. (Bug#17176)
-2014-04-03 Ken Brown <kbrown@cornell.edu>
+2014-04-07 Paul Eggert <eggert@cs.ucla.edu>
- * Makefile.in (EMACS_MANIFEST): Update comment. (Bug#17176)
+ * alloc.c: Simplify by removing use of HAVE_EXECINFO_H.
+ We have a substitute execinfo.h on hosts that lack it.
+ (suspicious_free_history): Make it EXTERNALLY_VISIBLE so it
+ isn't optimized away.
+
+2014-04-05 Paul Eggert <eggert@cs.ucla.edu>
+
+ Prefer 'ARRAYELTS (x)' to 'sizeof x / sizeof *x'.
+ * alloc.c (memory_full):
+ * charset.c (syms_of_charset):
+ * doc.c (Fsnarf_documentation):
+ * emacs.c (main):
+ * font.c (BUILD_STYLE_TABLE):
+ * keyboard.c (make_lispy_event):
+ * profiler.c (setup_cpu_timer):
+ * xgselect.c (xg_select):
+ * xterm.c (record_event, STORE_KEYSYM_FOR_DEBUG):
+ Use ARRAYELTS.
+ * font.c (FONT_PROPERTY_TABLE_SIZE): Remove.
+ Replace the only use with ARRAYELTS (font_property_table).
+ * xfaces.c (DIM): Remove. All uses replaced by ARRAYELTS.
+
+2014-04-03 Daniel Colascione <dancol@dancol.org>
+
+ * xterm.c (x_term_init):
+ * xfns.c (best_xim_style):
+ * xfaces.c (Fdump_colors):
+ * w32fns.c (w32_default_color_map):
+ * w32.c (init_environment, N_ENV_VARS):
+ * unexcw.c (read_exe_header):
+ * term.c (term_get_fkeys_1):
+ * sysdep.c (init_baud_rate):
+ * nsterm.m (ns_convert_key):
+ * nsfns.m (get_geometry_from_preferences):
+ * msdos.c (dos_set_window_size, init_environment):
+ * macfont.m (mac_font_get_glyph_for_cid)
+ (macfont_store_descriptor_attributes)
+ (macfont_create_attributes_with_spec, mac_ctfont_get_glyph_for_cid):
+ * keyboard.c (command_loop_1, read_menu_command, make_lispy_event)
+ (NUM_MOD_NAMES, read_key_sequence_vs, Fcurrent_input_mode)
+ (syms_of_keyboard):
+ * image.c (xpm_str_to_color_key):
+ * fringe.c (MAX_STANDARD_FRINGE_BITMAPS):
+ * frame.c (x_set_frame_parameters):
+ * fileio.c (Ffile_selinux_context):
+ * emacs.c (sort_args):
+ * dosfns.c (msdos_stdcolor_name):
+ * dired.c (file_attributes):
+ * chartab.c (uniprop_decoder_count, uniprop_encode_count):
+ Change expressions of the form sizeof(arr) / sizeof(arr[0])
+ to ARRAYELTS (arr).
+
+2014-04-02 Daniel Colascione <dancol@dancol.org>
+
+ * data.c (Ffset): Abort if we're trying to set a function call to
+ a dead lisp object.
+
+ * lisp.h (ARRAYELTS): New macro.
+
+ * alloc.c: Include execinfo.h if available.
+ (SUSPICIOUS_OBJECT_CHECKING): New macro; define unconditionally.
+ (suspicious_free_record): New structure.
+ (suspicious_objects, suspicious_object_index)
+ (suspicious_free_history, suspicious_free_history_index):
+ New variables.
+ (find_suspicious_object_in_range, detect_suspicious_free)
+ (Fsuspicious_object): New functions.
+ (cleanup_vector): Call find_suspicious_object_in_range.
2014-04-02 Martin Rudalics <rudalics@gmx.at>
* xterm.c (x_new_font): Don't calculate non-toolkit scrollbar
width from font width (Bug#17163).
-2014-03-30 Martin Rudalics <rudalics@gmx.at>
-
* frame.c (x_set_frame_parameters): Calculate default values of
new frame sizes only after all other frame parameters have been
processed (Bug#17142).
-2014-03-28 Ken Brown <kbrown@cornell.edu>
+2014-04-02 Ken Brown <kbrown@cornell.edu>
* conf_post.h (SYSTEM_PURESIZE_EXTRA) [CYGWIN]: Set to 10000.
(Bug#17112)
-2014-03-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
+2014-04-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
* xterm.c (x_draw_image_glyph_string): Adjust image background
width accordingly when its x position is adjusted. (Bug#17115)
+2014-04-02 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * font.c (font_list_entities): Do not add empty vector to font cache.
+ (font_matching_entity): Likewise. If matching entity is found, insert
+ 1-item vector with this entity instead of entity itself (Bug#17125).
+
+ * xterm.c (x_term_init) [USE_LUCID]: Fix minor memory leak.
+
+2014-04-01 Paul Eggert <eggert@cs.ucla.edu>
+
+ * fns.c (validate_subarray): Rename from validate_substring,
+ since it works for vectors too. New arg ARRAY. Optimize for the
+ non-nil case. Instead of returning bool, throw an error if out of
+ range, so that the caller needn't do that. All uses changed.
+ Report original values if out of range.
+ (Fsubstring, Fsubstring_no_properties, secure_hash):
+ Also optimize the case where FROM is 0 or TO is the size.
+
+2014-03-31 Dmitry Antipov <dmantipov@yandex.ru>
+
+ * search.c (Freplace_match): Use make_specified_string.
+ * xterm.c, w32term.c (x_set_glyph_string_gc): Use emacs_abort
+ to catch bogus override face of glyph strings.
+ * fns.c (Fsubstring, Fsubstring_no_properties, secure_hash):
+ Move common substring range checking code to...
+ (validate_substring): ...this function.
+
+2014-03-31 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsmenu.m (free_frame_tool_bar): Set wait_for_tool_bar = NO (Bug#16976)
+
+2014-03-30 Jan Djärv <jan.h.d@swipnet.se>
+
+ * nsterm.m (updateFrameSize:): If waiting for the tool bar and tool
+ bar is zero height, just return (Bug#16976).
+ (initFrameFromEmacs:): Initialize wait_for_tool_bar.
+
+ * nsterm.h (EmacsView): Add wait_for_tool_bar.
+
+ * nsmenu.m (update_frame_tool_bar): Return early if view or toolbar
+ is nil. If waiting for toolbar to complete, force a redraw.
+
+2014-03-28 Glenn Morris <rgm@gnu.org>
+
+ * emacs.c (emacs_version): Use PACKAGE_VERSION rather than VERSION.
+ (emacs_bugreport): New variable.
+ (usage_message): Use PACKAGE_BUGREPORT.
+ (syms_of_emacs) <report-emacs-bug-address>: New variable.
+
+ * emacs.c (syms_of_emacs) <system-configuration-features>: New var.
+
+2014-03-27 Paul Eggert <eggert@cs.ucla.edu>
+
+ Port recent signal-related changes to FreeBSD.
+ Reported by Herbert J. Skuhra.
+ * lisp.h (block_tty_out_signal, unblock_tty_out_signal):
+ Move decls from here ...
+ * syssignal.h: ... to here, so that lisp.h doesn't depend on signal.h.
+
2014-03-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
* w32term.c (x_draw_image_glyph_string): Fix computation of height
and width of image background when it is displayed with a 'box'
face. (Bug#17115)
-2014-03-26 Paul Eggert <eggert@penguin.cs.ucla.edu>
+2014-03-27 Paul Eggert <eggert@penguin.cs.ucla.edu>
More backward-compatible fix to char-equal core dump (Bug#17011).
* editfns.c (Fchar_equal): In unibyte buffers, assume values in
range 128-255 are raw bytes. Suggested by Eli Zaretskii.
+2014-03-27 Juanma Barranquero <lekktu@gmail.com>
+
+ * image.c (init_svg_functions): When loading SVG-related libraries,
+ free already loaded libraries if the initialization fails.
+ (rsvg_handle_set_size_callback): Remove declaration, unused.
+
+2014-03-26 Paul Eggert <eggert@cs.ucla.edu>
+
Fix core dump in char-equal (Bug#17011).
* editfns.c (Fchar_equal): Do not use MAKE_CHAR_MULTIBYTE in
unibyte buffers, as we can't tell whether the characters are
* insdel.c (adjust_markers_for_delete): Remove unused local.
-2014-03-24 Barry O'Reilly <gundaetiapo@gmail.com>
+2014-03-26 Barry O'Reilly <gundaetiapo@gmail.com>
Have (MARKER . ADJUSTMENT) undo records always be immediately
after their corresponding (TEXT . POS) record in undo list.
(record_point): at_boundary calculation no longer needs to account
for marker adjustments.
-2014-03-24 Martin Rudalics <rudalics@gmx.at>
+2014-03-26 Martin Rudalics <rudalics@gmx.at>
* w32term.c (x_set_window_size): Refine fix from 2014-03-14
(Bug#17077).
-2014-03-23 Glenn Morris <rgm@gnu.org>
+2014-03-26 Glenn Morris <rgm@gnu.org>
* fileio.c (Ffile_symlink_p): Doc fix. (Bug#17073)
-2014-03-23 Stefan Monnier <monnier@iro.umontreal.ca>
+2014-03-26 Stefan Monnier <monnier@iro.umontreal.ca>
* buffer.c (struct sortvec): Add field `spriority'.
(compare_overlays): Use it.
(sort_overlays): Set it.
-2014-03-23 Eli Zaretskii <eliz@gnu.org>
+2014-03-26 Eli Zaretskii <eliz@gnu.org>
* xdisp.c (redisplay_window): If all previous attempts to find the
cursor row failed, try a few alternatives before falling back to
the top-most row of the window. Use row_containing_pos. (Bug#17047)
-2014-03-22 Daniel Colascione <dancol@dancol.org>
+2014-03-26 Juanma Barranquero <lekktu@gmail.com>
- * process.c (conv_sockaddr_to_lisp): When extracting the string
- names of AF_LOCAL sockets, stop before reading uninitialized
- memory.
+ * image.c (x_bitmap_height, x_bitmap_width) [HAVE_X_WINDOWS]:
+ * sysdep.c (reset_sigio) [!DOS_NT]: Declare conditionally.
+
+ * keyboard.c (read_decoded_event_from_main_queue): #ifdef out
+ variables on Windows.
+
+ * w32fns.c (Ffile_system_info): Use parenthesis in and/or expression.
+
+ * w32.c (unsetenv): Remove unused var `retval'.
+ (emacs_gnutls_pull): Remove unused vars `fdset' and `timeout'.
+
+ * w32notify.c (watch_worker): Remove unnecesary var sleep_result.
+ (start_watching): Remove unused var `thr'.
+
+ * w32proc.c (sys_spawnve): Comment out unused vars `first', `last'.
+ (find_child_console): Remove unnecesary var `thread_id'.
+
+ * w32term.c (w32_read_socket): Comment out unused vars `row', `columns'.
+ (x_focus_frame): #ifdef 0 unused variable `dpyinfo'.
+
+2014-03-26 Glenn Morris <rgm@gnu.org>
+
+ * filelock.c (Flock_buffer): Doc tweak.
+
+ * buffer.c (Frestore_buffer_modified_p, Fkill_buffer):
+ * emacs.c (shut_down_emacs):
+ * fileio.c (Finsert_file_contents, write_region):
+ * filelock.c (top-level, syms_of_filelock):
+ * insdel.c (prepare_to_modify_buffer_1):
+ CLASH_DETECTION is always defined now.
+
+2014-03-25 Eli Zaretskii <eliz@gnu.org>
+
+ * w32.c (w32_delayed_load): Call DisableThreadLibraryCalls on the
+ DLL handle, to speed up thread startup.
+
+2014-03-25 Paul Eggert <eggert@cs.ucla.edu>
+
+ Handle sigmask better with nested signal handlers (Bug#15561).
+ * atimer.c (sigmask_atimers): Remove.
+ Remaining use rewritten to use body of this function.
+ * atimer.c (block_atimers, unblock_atimers):
+ * callproc.c (block_child_signal, unblock_child_signal):
+ * sysdep.c (block_tty_out_signal, unblock_tty_out_signal):
+ New arg OLDSET. All callers changed.
+ * atimer.c (block_atimers, unblock_atimers):
+ * callproc.c (block_child_signal, unblock_child_signal):
+ * keyboard.c (handle_interrupt):
+ * sound.c (vox_configure, vox_close):
+ Restore the old signal mask rather than unilaterally clearing bits
+ from the mask, in case a handler is running within another
+ handler. All callers changed.
+ * lisp.h, process.c, process.h, term.c:
+ Adjust decls and callers to match new API.
+ * sysdep.c (emacs_sigaction_init): Don't worry about masking SIGFPE;
+ signal handlers aren't supposed to use floating point anyway.
+ (handle_arith_signal): Unblock just SIGFPE rather than clearing mask.
+
+2014-03-23 Daniel Colascione <dancol@dancol.org>
+
+ Split gc_sweep into discrete functions for legibility and better
+ stack traces.
+
+ * alloc.c (sweep_strings, sweep_vectors): Add NO_INLINE
+ (sweep_vectors): Fix typo in comment.
+ (sweep_conses, sweep_floats, sweep_intervals)
+ (sweep_symbols, sweep_misc, sweep_buffers): New functions.
+ (gc_sweep): Call new functions, to which existing functionality is
+ moved.
+ * fns.c (sweep_weak_hash_tables): Add NO_INLINE.
+
+2014-03-23 Juanma Barranquero <lekktu@gmail.com>
+
+ * w32fns.c (Fw32_shell_execute): Declare `result' only on Cygwin.
+
+2014-03-23 Daniel Colascione <dancol@dancol.org>
+
+ * xfns.c (create_frame_xic): Pass XNStatusAttributes to XCreateIC
+ only if xic_style calls for it. This change allows Emacs to work
+ with ibus. Also, don't leak resources if create_frame_xic fails,
+ and stop caching xic_style across different displays.
+ (supported_xim_styles): Make const.
+ (best_xim_style): Remove first parameter: it's always just
+ supported_xim_styles. Change to look at supported_xim_styles
+ directly.
+
+2014-03-23 Daniel Colascione <dancol@dancol.org>
+
+ * term.c (init_tty): Rearrange condition for clarity; print
+ appropriate diagnostic.
2014-03-23 Daniel Colascione <dancol@dancol.org>
* process.c (DATAGRAM_CONN_P): Don't underflow datagram_address
array. (ASAN caught.)
+2014-03-22 Glenn Morris <rgm@gnu.org>
+
+ * callproc.c (init_callproc): In etc, look for NEWS rather than GNU.
+
+2014-03-22 Daniel Colascione <dancol@dancol.org>
+
+ * process.c (conv_sockaddr_to_lisp): When extracting the string
+ names of AF_LOCAL sockets, stop before reading uninitialized memory.
+
2014-03-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
Fix regression introduced by patch for Bug#10500.
constrain frame size in SW_SHOWMAXIMIZED case so we can truly
maximize a frame for odd default fonts.
+2014-03-21 Glenn Morris <rgm@gnu.org>
+
+ * minibuf.c (history-length): Increase default from 30 to 100.
+
+2014-03-21 Daniel Colascione <dancol@dancol.org>
+
+ * xterm.c (x_bitmap_icon): Stop reading the icon bitmap from disk
+ every time we switch to minibuffer.
+
+ * alloc.c (lisp_align_malloc, allocate_string_data)
+ (allocate_vectorlike): Allow mmap allocation of lisp objects.
+ (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): New functions.
+
+2014-03-21 Eli Zaretskii <eliz@gnu.org>
+
+ * w32fns.c (Fw32_shell_execute) [!CYGWIN]: Use ShellExecuteEx, to
+ support more "verbs".
+
+2014-03-21 Daniel Colascione <dancol@dancol.org>
+
+ Always prohibit dumping a dumped Emacs.
+
+ * emacs.c (might_dump): New variable.
+ (Fdump_emacs): Always prohibit dumping of dumped Emacs.
+ * lisp.h (might_dump): Declare.
+ * unexcw.c (unexec): Remove now-redundant multiple-dump detection code.
+
2014-03-20 Paul Eggert <eggert@cs.ucla.edu>
* doc.c (store_function_docstring): Fix pointer signedness mismatch.
* doc.c (store_function_docstring): Warn when we don't know where to
put a docstring.
(Fsubstitute_command_keys): Don't advertise the fact that
- text-properties are dropped, since we think it's a bug that we'll fix
- in 24.5.
+ text-properties are dropped, since we think it's a bug that we'll fix.
* frame.h (SET_FRAME_VISIBLE): Keep frame_garbaged up to date.
* xterm.c (handle_one_xevent) <MapNotify>: Don't garbage the frame.
2014-01-20 Paul Eggert <eggert@cs.ucla.edu>
Avoid undefined behavior by initializing buffer redisplay bit.
- Problem reported by Dmitry Antipov in
+ Reported by Dmitry Antipov in
<http://lists.gnu.org/archive/html/emacs-devel/2014-01/msg01756.html>.
* buffer.c (Fget_buffer_create): Initialize redisplay bit.
2013-11-21 Paul Eggert <eggert@cs.ucla.edu>
Fix some dependency problems that cause unnecessary recompiles.
- Problem reported by RMS in
+ Reported by RMS in
<http://lists.gnu.org/archive/html/emacs-devel/2013-11/msg00421.html>.
* Makefile.in (OLDXMENU_TARGET, OLDXMENU, OLDXMENU_DEPS)
(really-lwlib, really-oldXMenu, stamp-oldxmenu)
2013-10-23 Paul Eggert <eggert@cs.ucla.edu>
- Port to Solaris 10 and its bundled GCC.
- Problem reported by Timothy C. Burt.
+ Port to Solaris 10 and its bundled GCC. Reported by Timothy C. Burt.
* floatfns.c (isfinite, isnan): Redefine unconditionally.
2013-10-21 Dmitry Antipov <dmantipov@yandex.ru>
so it shouldn't be used all the time. Perhaps we need two
flavors of 'eassert', one for where 'assume' is far more likely
to help or to hurt; but that can be done later.
- Problem reported by Dmitry Antipov in
+ Reported by Dmitry Antipov in
<http://lists.gnu.org/archive/html/emacs-devel/2013-10/msg00276.html>.
Also, don't include <verify.h>; no longer needed.
(imagemagick_get_animation_cache): Fix a double-free error.
(imagemagick_load_image): Remove the ping_wand code, which only
apparently saved time on invalid animated images, and slowed down
- everything else. Optimise for the common case.
+ everything else. Optimize for the common case.
2013-08-16 Xue Fuqiao <xfq.free@gmail.com>
2013-07-07 Paul Eggert <eggert@cs.ucla.edu>
- Port to Ubuntu 10 (Bug#14803).
- Problem reported by T.V. Raman.
+ Port to Ubuntu 10 (Bug#14803). Reported by T.V. Raman.
* process.c (close_on_exec, accept4, process_socket):
Define these if !HAVE_ACCEPT4, not if !SOCK_CLOEXEC.
* emacs.c (malloc_enable_thread): Hoist extern decl to top level.
(main) [HAVE_PTHREAD && !SYSTEM_MALLOC && !DOUG_LEA_MALLOC]:
Invoke malloc_enable_thread even when not interactive.
- Problem reported by Ken Brown in <http://bugs.gnu.org/14569#275>.
+ Reported by Ken Brown in <http://bugs.gnu.org/14569#275>.
* process.c (init_process_emacs) [CYGWIN]: Tickle glib even
in this case, since the underlying bug has now been fixed.
* unexelf.c: Don't assume ElfW (Half) fits in int.
(entry_address, find_section, unexec): Use ptrdiff_t, not int,
when dealing with ElfW (Half) values, since they can exceed 2**31
- on 64-bit OpenBSD hosts. Problem reported privately by Han Boetes.
+ on 64-bit OpenBSD hosts. Reported by Han Boetes (privately).
(entry_address): Omit unused NUM arg. All uses changed.
2013-05-07 Juri Linkov <juri@jurta.org>