* admin/authors.el: Additions.
[emacs.git] / ChangeLog.2
blob305f0658120149ec9f42724ba9bd9d2612fecf5b
1 2016-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
3         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all): Fix (bug#19704)
5         Don't rewrite (funcall 'f ...) to (f ...).
7 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
9         Restore initial undo boundary with viper
11         * lisp/emulation/viper-cmd.el (viper-adjust-undo): Add back last undo
12           boundary if it has been removed.
14         Addresses Bug#22295.
16 2016-06-11  Phillip Lord  <phillip.lord@russet.org.uk>
18         Revert "Fix viper undo breakage from undo-boundary changes"
20         This reverts commit c0139e32f1f3bb287b04e02a69a7848d6a040003.
22 2016-06-11  Ken Brown  <kbrown@cornell.edu>
24         Fix dbus crash on 32-bit Cygwin
26         * src/dbusbind.c (Fdbus__init_bus): Use make_save_pointer to store
27         connection address.  (Bug#23741)
28         (xd_lisp_dbus_to_dbus): Use XSAVE_POINTER to retrieve connection
29         address.
31 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
33         Bump version to 25.0.95
35         * README:
36         * configure.ac:
37         * lisp/ldefs-boot.el:
38         * msdos/sed2v2.inp: Bump Emacs version to 25.0.95.
40 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
42         * etc/AUTHORS: Update the AUTHORS file
44 2016-06-10  Nicolas Petton  <nicolas@petton.fr>
46         add entries to authors.el
48         * admin/authors.el (authors-renamed-files-alist): Add char-fold files.
50 2016-06-10  Jules Tamagnan  <jtamagnan@gmail.com>
52         Fix eldoc-related freezes in python mode
54         * lisp/progmodes/python.el (python-eldoc-get-doc): New defvar.
55         (python-eldoc-function-timeout)
56         (python-eldoc-function-timeout-permanent): New defcustoms.
57         (python-eldoc-function): If python-eldoc--get-doc-at-point times
58         out, effectively turn off ElDoc in current buffer.  (Bug#23609)
60 2016-06-09  Martin Rudalics  <rudalics@gmx.at>
62         Handle mouse leaving initial window in `mouse-set-region' (Bug#23707)
64         * lisp/mouse.el (mouse-set-region): If the mouse ends up in
65         another window or on the menu bar, use `window-point' of
66         selected window instead of `posn-point' of the event end
67         (Bug#23707).
69 2016-06-08  Marco Wahl  <marcowahlsoft@gmail.com>
71         org.el: Fix bindings of < and > for calendar scrolling
73         [This patch taken from upstream Org repo with 8b63dc9 dated
74         2014-10-20 (Bug#23725).]
75         * lisp/org/org.el (org-read-date-minibuffer-local-map):
76         Switch to the current calendar API for scrolling the calendar.
78 2016-06-08  Phillip Lord  <phillip.lord@russet.org.uk>
80         Fix undo boundary in recursive edit (Bug#23632)
82          * src/keyboard.c (recursive_edit_1): specbind
83            undo-auto--undoably-changed-buffers.
84          * lisp/simple.el (undo-auto--undoably-changed-buffers):
85            fix docstring.
87 2016-06-07  Glenn Morris  <rgm@gnu.org>
89         Doc fixes re alist-get.  (Bug#23548)
91         * lisp/subr.el (alist-get): Doc fix.
92         * doc/lispref/lists.texi (Association Lists): Improve alist-get.
94 2016-06-07  Glenn Morris  <rgm@gnu.org>
96         * lisp/progmodes/python.el (inferior-python-mode):
97         Avoid tabs.  (Bug#23616)
99         * src/syntax.c (syms_of_syntax) <comment-end-can-be-escaped>: Doc fix.
101 2016-06-07  Tino Calancha  <f92capac@gmail.com>
103         * lisp/help-fns.el (describe-function-1):
104         Fix handling of file name for aliases.  (Bug#21950)
106         * lisp/emacs-lisp/cl-macs.el (cl-loop): Doc fix re "by".
108         * doc/misc/cl.texi (Mapping over Sequences): Fix cl-notevery.
110 2016-06-07  Paul Eggert  <eggert@cs.ucla.edu>
112         Fix crash in syntax.c after GC
114         Problem reported by Vincent Belaïche (Bug#23704).
115         * src/syntax.c (skip_chars): Recompute pointers into the
116         buffer after every call to update_syntax_table_forward,
117         as it can GC.
119 2016-06-06  Dmitry Gutov  <dgutov@yandex.ru>
121         Improve squiggly heredoc support in non-SMIE Ruby mode
123         * lisp/progmodes/ruby-mode.el (ruby-parse-partial): Support
124         squiggly heredocs here, too (port from upstream).
126 2016-06-06  Stephen Berman  <stephen.berman@gmx.net>
128         Fix doc string quoting
130         * lisp/files.el (shell-quote-wildcard-pattern):
131         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
132         * lisp/subr.el (replace-regexp-in-string):
133         * lisp/view.el (view-mode):
134         * src/nsfns.m (syms_of_nsfns):
135         * src/syntax.c (Fbackward_prefix_chars):
136         Fix quoting problems in doc strings (Bug#23696).
138 2016-06-05  Martin Rudalics  <rudalics@gmx.at>
140         Fix mouse dragging of vertical dividers with scroll bars on left (Bug#23690)
142         * lisp/mouse.el (mouse-drag-line): With scroll bars on the left
143         adjust trailing edge of window on the left when dragging the
144         vertical divider of the mode line.  (Bug#23690)
146 2016-06-04  Eli Zaretskii  <eliz@gnu.org>
148         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
150         (Bug#23641)
152 2016-05-31  Glenn Morris  <rgm@gnu.org>
154         * test/automated/viper-tests.el (viper-test-undo-kmacro):
155         Delete temp-file at end.
157         * lisp/mail/footnote.el (footnote-mode): Fix doc typo.
159         * doc/misc/smtpmail.texi (Encryption): Fix 2012-12-22 typo.
161         * lisp/emacs-lisp/lisp-mode.el (lisp--mode-syntax-table):
162         Fix typo.  (Bug#23654)
164 2016-05-30  Stefan Monnier  <monnier@iro.umontreal.ca>
166         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
168 2016-05-30  Bill Wohler  <wohler@newt.com>
170         Correct cl-flet usage (Bug#22317)
172         * mh-compat.el: Rename mh-cl-flet to mh-flet and convert alias to
173         macro using patch from Katsumi Yamaoka <yamaoka@jpl.org>.
174         * mh-thread.el (mh-thread-set-tables):
175         * mh-show.el (mh-gnus-article-highlight-citation):
176         * mh-mime.el (mh-display-with-external-viewer):
177         (mh-mime-display, mh-press-button, mh-push-button):
178         (mh-display-emphasis): Call mh-flet instead of mh-cl-flet.
180 2016-05-30  Bill Wohler  <wohler@newt.com>
182         Release MH-E manual version 8.6
184         * doc/misc/mh-e.texi (VERSION, EDITION, UPDATED, UPDATE-MONTH):
185         Update for release 8.6.
187 2016-05-30  Mike Kupfer  <m.kupfer@acm.org>
189         Update MH-E's documentation about HTML renderers
191         * doc/misc/mh-e.texi (HTML): Remove the footnote with the minimum Gnus
192         version (we are no longer trying to support multiple Emacs
193         releases). Sort the table of HTML renderers by name (the previous
194         ordering was based on a 10-year-old survey). Add shr and gnus-w3m to
195         the table. Remove the entry for w3 (no longer available).  Update
196         existing entries so that they are more consistent about what features
197         are discussed, and to reflect recent testing (Debian 8). Small tweaks
198         to existing text.
200 2016-05-30  Dmitry Gutov  <dgutov@yandex.ru>
202         Fx the we->the typo
204         * doc/emacs/trouble.texi (Sending Patches):
205         Fix the typo (bug#23657).
207 2016-05-30  Paul Eggert  <eggert@cs.ucla.edu>
209         Restore frames into the current display by default
211         * lisp/desktop.el (desktop-restore-in-current-display):
212         Default to t, not nil (Bug#23604).
213         * etc/NEWS: Mention the change.
215 2016-05-29  Stefan Monnier  <monnier@iro.umontreal.ca>
217         * lisp/recentf.el (recentf-open-files-item): Quick fix for (bug#22434).
219         etc/TODO: Remove out-of-place issue
221 2016-05-29  Eli Zaretskii  <eliz@gnu.org>
223         Clarify doc string of 'file-name-sans-extension'
225         * lisp/files.el (file-name-sans-extension, file-name-extension):
226         Clarify in the doc strings what is the extension, and which
227         leading period doesn't count.  (Bug#23643)
229 2016-05-28  Eli Zaretskii  <eliz@gnu.org>
231         Fix the MSDOS build
233         * msdos/sed1v2.inp (PAXCTL_dumped, PAXCTL_notdumped): Define to
234         empty, and remove the lines which use them in recipes, as that
235         causes weird error message from Make and breaks the MSDOS build.
237 2016-05-28  Andreas Schwab  <schwab@linux-m68k.org>
239         * lisp/progmodes/elisp-mode.el (elisp-function-argstring): Call
240         substitute-command-keys to undo help--docstring-quote. (Bug#23634)
242 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
244         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
246 2016-05-27  Eli Zaretskii  <eliz@gnu.org>
248         Fix infloop in 'number-sequence'
250         * lisp/subr.el (number-sequence): Avoid overflow leading to an
251         infloop.  (Bug#23627)
253         * test/automated/subr-tests.el (number-sequence-test): New test.
255 2016-05-26  Glenn Morris  <rgm@gnu.org>
257         * lisp/emacs-lisp/find-func.el (find-function-library):
259         Update for symbol-function no longer erroring.  (Bug#23626)
261 2016-05-26  Glenn Morris  <rgm@gnu.org>
263         * lisp/w32-fns.el (set-message-beep, w32-get-locale-info)
264         (w32-get-valid-locale-ids): Improve declarations.
266 2016-05-26  Vincent Belaïche  <vincentb1@users.sourceforge.net>
268         Correct old cell name unbinding when renaming cell.
270         Bug is to unbind old cell names when renaming a cell with
271         'makunbound'. when the old cell name is of A1 type, then
272         'kill-local-variable' must be used instead, so that only the current
273         spreadsheet is affected. When the old cell name is a renamed cell,
274         then 'ses--unbind-cell-name' must be used in order to remove the old
275         name from the name hashmap.
277         * ses.el (ses-rename-cell): check consistency of cell symbol from
278         text-property and from array object. Instead of 'makunbound', use
279         either 'ses--unbind-cell-name' or 'kill-local-variable' depending on
280         whether the cell old name is a named cell or an A1 type cell
282 2016-05-25  Vincent Belaïche  <vincentb1@users.sourceforge.net>
284         Document problem: slow screen refresh on missing font.
286         See discussion of bug#22519 for more on this.
288 2016-05-25  Glenn Morris  <rgm@gnu.org>
290         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
292 2016-05-25  Glenn Morris  <rgm@gnu.org>
294         * build-aux/gitlog-to-emacslog: Handle empty generated ChangeLog.
296         This is relevant for M-x add-release-logs right after M-x authors.
298 2016-05-25  Glenn Morris  <rgm@gnu.org>
300         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
302 2016-05-25  Paul Eggert  <eggert@cs.ucla.edu>
304         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
306 2016-05-25  Glenn Morris  <rgm@gnu.org>
308         * admin/authors.el (authors): First update the ChangeLog.
310         * admin/make-tarball.txt: Related updates.
312 2016-05-24  Dmitry Gutov  <dgutov@yandex.ru>
314         Rename vc-stay-local back to vc-cvs-stay-local
316         * lisp/vc/vc-cvs.el (vc-cvs-stay-local): Rename back from
317         vc-stay-local (bug#19548).  Improve the docstring.
318         (vc-cvs-stay-local-p): Update accordingly.
320 2016-05-24  Glenn Morris  <rgm@gnu.org>
322         * doc/emacs/files.texi (Comparing Files):
323         * doc/emacs/trouble.texi (Sending Patches): Fix external xrefs.
325         * doc/misc/eww.texi (Advanced): Fix xref.
327 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
329         Fix cross-references between manuals
331         * doc/misc/viper.texi (Viper Specials):
332         * doc/misc/url.texi (Tramp):
333         * doc/misc/sem-user.texi (Smart Jump):
334         * doc/lispintro/emacs-lisp-intro.texi (Finding More):
335         * doc/misc/efaq.texi (Replacing text across multiple files): Fix
336         cross-references between manuals.  (Bug#23612)
337         * doc/lispintro/emacs-lisp-intro.texi (etags): Node deleted: no
338         longer relevant to Emacs Lisp programming.
340 2016-05-24  Glenn Morris  <rgm@gnu.org>
342         * doc/misc/vhdl-mode.texi (Sample Init File): Rename node to avoid ".".
344         * admin/admin.el (add-release-logs): Also update etc/HISTORY.
346 2016-05-24  Eli Zaretskii  <eliz@gnu.org>
348         Avoid aborting due to errors in arguments of 'set-face-attribute'
350         * src/xfaces.c (Finternal_set_lisp_face_attribute): Check the
351         FRAME argument before using it.  This avoids gratuitous aborts in
352         Emacs built with --enable-checking when the luser was unlucky
353         enough to get the argument list in wrong order.
355 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
357         Add automated test for viper-tests.el
359 2016-05-23  Phillip Lord  <phillip.lord@russet.org.uk>
361         Fix viper undo breakage from undo-boundary changes
363         * lisp/simple.el (undo-auto-disable-boundaries): New variable
364         * lisp/emulation/viper-init.el (viper-undo-in-complex-command,
365           viper-undo-needs-adjustment): Rename
366           variable to reflect new purpose,
367           (viper-buffer-undo-list-mark): Remove
368         * lisp/emulation/viper-cmd.el (viper-set-complex-command-for-undo):
369           Add undo using `undo-boundary', disable default undo-boundary
370           addition.
371         * lisp/emulation/viper-cmd.el
372           (viper-complete-complex-command-for-undo,viper-adjust-undo):
373           Change function name, remove old undo list manipulation.
374         * lisp/emulation/viper-cmd.el (viper-undo,viper-repeat,
375           viper-change-state-to-vi,viper-change-state):
376           Update for function name change.
378         Addresses Bug #22295
380 2016-05-22  Kaushal Modi  <kaushal.modi@gmail.com>
382         Fix reference to obsolete fn ps-eval-switch
384         lpr-eval-switch is functionally the same as ps-eval-switch,
385         which was obsoleted in 2cdeb903c57126d3ad5f0cbd72e182584b76ee29.
386         So use that instead (Bug#19717).
387         * lisp/printing.el (pr-switches): Use lpr-eval-switch instead of
388         ps-eval-switch.
390 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
392         Do not trash symlinks to init file
394         If the user’s init file is a symbolic link, do not break the link
395         when initializing the package system.  Problem reported by Jackson
396         Hamilton (Bug#23050).
397         * lisp/emacs-lisp/package.el (package--ensure-init-file):
398         Bind find-file-visit-truename when visiting the init file, and
399         save and restore the buffer name the way cus-edit does in a
400         similar situation (Bug#454).
402 2016-05-22  Alan Mackenzie  <acm@muc.de>
404         Don't print the "decomposition" line for control chars in what-cursor-position
406         This is a temporary workaround for bug #23594, where the decomposition line
407         for linefeed corrupted the display on a Linux virtual terminal.
409         * lisp/descr-text.el (describe-char): Remove `decomposition' from the list of
410         character code properties printed for control characters.
412 2016-05-22  Paul Eggert  <eggert@cs.ucla.edu>
414         Bring back xterm pasting with middle mouse
416         Problem reported by Jan Synáček.
417         Solution suggested by Stefan Monnier (Bug#23519).
418         * lisp/isearch.el (isearch-mode-map): Add a binding for xterm-paste.
419         (xterm--pasted-text): New decl.
420         (isearch-xterm-paste): New function.
421         * lisp/term/xterm.el (xterm--pasted-text): New function,
422         taken from xterm-paste internals.
423         (xterm-paste): Use it.
425 2016-05-22  Eli Zaretskii  <eliz@gnu.org>
427         Provide workaround for xftfont rendering problem
429         * src/xftfont.c (syms_of_xftfont) <xft-font-ascent-descent-override>:
430         New variable.
431         (xftfont_open): Use it to work around problems with rendering some
432         fonts.  (Bug#23360)
434 2016-05-21  Jun Hao  <jun_hao@aol.com>
436         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
438         (Bug#17693)
440 2016-05-21  Eli Zaretskii  <eliz@gnu.org>
442         Mention GTK+ problems in etc/PROBLEMS
444         * etc/PROBLEMS (GDK_SCALE, GDK_DPI_SCALE): Mention the possible
445         problems this could create and the workaround.  (Bug#23587)
447 2016-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
449         * lisp/emacs-lisp/package.el (package-refresh-contents):
451         Don't change the value of `package-check-signature'.
452         (package-check-signature): Use `epg-find-configuration'
453         instead of `executable-find'.
455 2016-05-20  Daiki Ueno  <ueno@gnu.org>
457         Revert "epg: Add a way to detect gpg1 executable for tests"
459         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
461 2016-05-19  Eli Zaretskii  <eliz@gnu.org>
463         Avoid errors with Czech and Slovak input methods
465         * lisp/leim/quail/slovak.el (slovak, slovak-prog-1, slovak-prog-2)
466         (slovak-prog-3): Remove the kp-* key bindings, they are not needed
467         and cause errors in "C-u C-x =".
468         * lisp/leim/quail/czech.el (czech, czech-qwerty, czech-prog-1)
469         (czech-prog-2, czech-prog-3): Remove the kp-* key bindings.
470         (Bug#23559)
472 2016-05-19  Daiki Ueno  <ueno@gnu.org>
474         epg: Add a way to detect gpg1 executable for tests
476         Fixes bug#23561.
478         * test/automated/epg-tests.el
479         (epg-tests-program-alist-for-passphrase-callback): New
480         constant.
481         (epg-tests-find-usable-gpg-configuration): New function,
482         renamed from `epg-tests-gpg-usable'.  All callers changed.
483         (epg-tests-gpg-usable): Remove.
485         * lisp/epg-config.el (epg-config--program-alist): Factor out
486         constructor element to...
487         (epg-config--configuration-constructor-alist): ...here.
488         (epg-find-configuration): Rename FORCE argument to NO-CACHE,
489         and add PROGRAM-ALIST argument.
491 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
493         * lisp/emacs-lisp/package.el: Fix free variable warnings.
495         (package--with-response-buffer): Replace two usages of
496         `macroexp-let2*' with `let'.
498 2016-05-18  Artur Malabarba  <bruce.connor.am@gmail.com>
500         * lisp/emacs-lisp/package.el (package--with-response-buffer):
502         Fix some macro locals leaking into body.  (Bug#22440)
504         * test/automated/package-test.el (package-test-signed):
505         Manually check all possible values of `package-check-signature'.
507 2016-05-18  Eli Zaretskii  <eliz@gnu.org>
509         Improve documentation of 'server-name'
511         * doc/emacs/misc.texi (Emacs Server): Fix example of setting
512         'server-name'.  Mention how to do that with daemon sessions.
513         (Bug#23576)
515 2016-05-18  Paul Eggert  <eggert@cs.ucla.edu>
517         Modernize ASLR advice in etc/PROBLEMS
519         * etc/PROBLEMS (Segfault during 'make'): Modernize advice for
520         seccomp, Docker, and NetBSD (Bug#23529).
522 2016-05-17  Juri Linkov  <juri@linkov.net>
524         * lisp/char-fold.el: Rename from character-fold.el.
526         * lisp/replace.el (replace-char-fold): Rename from replace-character-fold.
527         * test/automated/char-fold-tests.el: Rename from character-fold-tests.el.
528         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00529.html
530 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
532         Bump version to 25.0.94
534         * README:
535         * configure.ac:
536         * msdos/sed2v2.inp: Bump Emacs version to 25.0.94.
538 2016-05-17  Nicolas Petton  <nicolas@petton.fr>
540         etc/AUTHORS: Update the AUTHORS file
542 2016-05-16  Alan Third  <alan@idiocy.org>
544         Fix bug#23462: Crash when iconifying frame on OS X.
546         * src/nsterm.m (x_iconify_frame): Block input while miniaturize is
547         running.
549 2016-05-16  Paul Eggert  <eggert@cs.ucla.edu>
551         Avoid shrinking windows with Gtk+ 3.20.3
553         Problem reported by Matthias Clasen (Bug#23144).
554         This was fixed in a different way in master.
555         Do not merge to master.
556         * src/xterm.c (handle_one_xevent) [GTK_CHECK_VERSION (3, 20, 3)]:
557         Do not call xg_frame_resized in the MapNotify case.
559 2016-05-16  Eli Zaretskii  <eliz@gnu.org>
561         Fix bug in default setting of 'ps-paper-type'
563         * lisp/international/mule-cmds.el (set-locale-environment): Don't
564         inherit the value of locale from previous examination of different
565         environment variables, which didn't look at LC_PAPER, and so using
566         that value would effectively ignore the setting of LC_PAPER.
567         (Bug#23544)
569 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>  (tiny change)
571         Properly reject malformed or empty package sigs
573         Problem report and fix by Lizzie Dixon (Bug#23513).
574         * lisp/emacs-lisp/package.el (package--check-signature-content):
575         Report an error if no good signatures OR if a fatal error.  Not AND.
577 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
579         Remove buggy non-native image scrolling
581         This never worked, and could cause infinite recursion.
582         Problem reported by Glenn Morris (Bug#22465).
583         * lisp/xwidget.el (xwidget-webkit-scroll-behavior): Remove.
584         All uses removed.
586 2016-05-13  Paul Eggert  <eggert@cs.ucla.edu>
588         * doc/misc/texinfo.tex: Sync from gnulib.
590 2016-05-12  Glenn Morris  <rgm@gnu.org>
592         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
593         (find-alias-regexp): Fix :version.
595 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
597         Do not mistake colon at the end of regexp for slash symbol
599         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
600         Check the parse state in the "Symbols with special characters"
601         rule (bug#23515).
603 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
605         Make package-install-from-buffer not move point
607         * lisp/emacs-lisp/package.el (package-install-from-buffer):
608         Use save-excursion here (bug#22616).
610 2016-05-11  Dmitry Gutov  <dgutov@yandex.ru>
612         Redo the fix for bug#21839
614         * lisp/help.el (help-add-fundoc-usage): Undo the previous change.
615         (help--make-usage-docstring): Escape newlines when printing.
617         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
618         Ditto (bug#21839).
620 2016-05-10  Dmitry Gutov  <dgutov@yandex.ru>
622         Don't treat JS spread as contination method call
624         * lisp/progmodes/js.el (js--indent-operator-re):
625         Allow only one dot (bug#23492).
627         * test/indent/js.js (default): Add a corresponding example.
629 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
631         Allow newlines inside cl function arglists
633         * lisp/help.el (help-add-fundoc-usage): Allow newlines inside
634         ARGLIST (bug#21839).
636 2016-05-09  Dmitry Gutov  <dgutov@yandex.ru>
638         Publicize cl--generic-all-functions
640         * lisp/emacs-lisp/cl-generic.el (cl-generic-all-functions):
641         Rename from cl--generic-all-functions.  Update both callers.
643         * lisp/cedet/semantic/db-el.el
644         (semanticdb-find-tags-external-children-of-type-method):
645         And use it here (bug#23042).
647 2016-05-09  Alan Mackenzie  <acm@muc.de>
649         Add some "safe-local-variable" declarations for compatibility with master.
651         These enable C files from the master repository to be visited in Emacs 25
652         without generating irritating questions about configuration variable safety.
654         * lisp/progmodes/cc-vars.el: (c-string-list-p, c-string-or-string-list-p): New
655         functions.
656         (c-noise-macro-names, c-noise-macro-with-parens-names): give the
657         safe-local-variable property c-string-list-p.
658         (c-macro-names-with-semicolon): give the safe-local-variable property
659         c-string-or-string-list-p.
661 2016-05-09  Lars Ingebrigtsen  <larsi@gnus.org>
663         Fix doc string in `insert'
665         * src/editfns.c (Finsert_and_inherit): The before-insertion
666         markers do not move.
667         (Finsert): Ditto.
669 2016-05-08  Paul Eggert  <eggert@cs.ucla.edu>
671         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
673 2016-05-07  Dmitry Gutov  <dgutov@yandex.ru>
675         Say 'All results processed' at the end
677         * lisp/progmodes/xref.el (xref--query-replace-1):
678         Say 'All results processed' at the end if the user hadn't
679         cancelled the process (bug#23284).
681 2016-05-07  Eli Zaretskii  <eliz@gnu.org>
683         Document automatic adjustment of process' logical window dimensions
685         * doc/lispref/processes.texi (Process Buffers): Document
686         'set-process-window-size' and
687         'window-adjust-process-window-size-function'.
689         * etc/NEWS: Mention the new functionality and variable.
691         * src/process.c (Fset_process_window_size): Improve the doc string.
693 2016-05-06  Michael Albinus  <michael.albinus@gmx.de>
695         tramp-sh.el: Work around a stat bug (backport from master)
697         * lisp/net/tramp-sh.el (tramp-get-remote-stat): Do not use
698         stat versions which produce shell quoted output.  See also
699         coreutils Bug#23422.
701         (cherry picked from commit 6aad36ace9953b9672b13be68416d205532d5e59)
703 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
705         Doc fixes for fclist and grep
707         A newline is needed between two fc-list calls.
708         egrep and fgrep have been withdrawn from POSIX,
709         so document grep -E and grep -F instead.
711 2016-05-05  Paul Eggert  <eggert@cs.ucla.edu>
713         Minor doc fixes for quoting
715         * doc/lispref/control.texi (Signaling Errors):
716         * doc/lispref/display.texi (Displaying Messages):
717         Don’t say that formats “generate”.  Try to word more clearly.
718         * etc/NEWS: Coalesce near-duplicate entries.
720 2016-05-05  Dmitry Gutov  <dgutov@yandex.ru>
722         `nreverse' the marker pairs list
724         * lisp/progmodes/xref.el (xref--buf-pairs-iterator): `nreverse'
725         the marker pairs list for each buffer before returning.
727 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
729         Use save-excursion in xref-location-marker more
731         * lisp/progmodes/elisp-mode.el (xref-location-marker): Use
732         save-excursion, in order not to alter the value of point if the
733         buffer is currently open in the background (problem reported by
734         Robert Weiner).
736         * lisp/progmodes/etags.el (xref-location-marker): Same.
738 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
740         shell-quote-argument DIR when appropriate
742         * lisp/progmodes/project.el (project-file-completion-table):
743         `shell-quote-argument' DIR as well.
745         * lisp/progmodes/xref.el (xref--rgrep-command): Pass DIR through
746         `shell-quote-argument' (bug#23453).  Thanks for Kaushal Modi for
747         pointing out the problem.  Assert that DIR doesn't start with `~'.
749 2016-05-04  Dmitry Gutov  <dgutov@yandex.ru>
751         Rework xref-query-replace-in-results
753         * lisp/progmodes/xref.el (xref-query-replace-in-results): Collect
754         all xrefs from the buffer first, then delegate most of the
755         processing to the value returned by xref--buf-pairs-iterator.
756         (xref--buf-pairs-iterator): New function.  Return an "iterator"
757         which partitions returned markers into buffers, and only processes
758         markers from one buffer at a time.  When an xref is out of date,
759         skip it with a message instead of signaling error (bug#23284).
760         (xref--outdated-p): Extract from xref--buf-pairs-iterator.  Trim
761         CR from both strings before comparing.
762         (xref--query-replace-1): Remove the variable current-buf, no need
763         to track it anymore.  Simplify the filter-predicate and search
764         functions accordingly.  Iterate over buffer-markers pairs returned
765         by the iterator, and call `perform-replace' for each of them.  Use
766         multi-query-replace-map (bug#23284).  Use `switch-to-buffer' every
767         time after the first, in order not to jump between windows.
769         * test/automated/xref-tests.el
770         (xref--buf-pairs-iterator-groups-markers-by-buffers-1)
771         (xref--buf-pairs-iterator-groups-markers-by-buffers-2)
772         (xref--buf-pairs-iterator-cleans-up-markers): New tests.
774 2016-05-04  Juri Linkov  <juri@linkov.net>
776         * lisp/replace.el (query-replace-read-from): Use minibuffer-with-setup-hook
778         to set minibuffer-local value of text-property-default-nonsticky.
779         (Bug#23418, bug#23127)
781 2016-05-04  Stephen Berman  <stephen.berman@gmx.net>
783         Fix todo-mode bug involving archived items (bug#23447)
785         * lisp/calendar/todo-mode.el (todo-jump-to-category): When jumping
786         from Todo Categories mode to a category with only archived items
787         and todo-skip-archived-categories is non-nil, make sure the
788         archive file buffer is in Todo Archive mode to prevent
789         todo-category-select from raising an error, and don't set
790         todo-current-todo-file, since that makes todo-show display the
791         archived category.  Remove a no-op call to kill-buffer, which is
792         already called in todo-insert-category-line.
794 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
796         Handle "empty line" regexp in xref searches
798         * lisp/progmodes/xref.el (xref--collect-matches-1): Stop after one
799         match if re-search-forward doesn't move point (bug#23426).
801         * test/automated/xref-tests.el
802         (xref-collect-matches-finds-an-empty-line-regexp-match):
803         Uncomment test.
805 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
807         Add tests for xref-collect-matches
809         * test/automated/xref-tests.el: New file.  Add tests for
810         xref-collect-matches.
812 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
814         Use grep-find-ignored-directories instead of vc-directory-exclusion-list
816         * lisp/dired-aux.el (dired-do-find-regexp):
817         Use grep-find-ignored-directories instead of
818         vc-directory-exclusion-list.  The result should be functionally
819         similar (the former uses the latter as the default value), but it
820         should be more consistent and appropriate WRT user
821         customizations.
822         (dired-do-find-regexp-and-replace): Update the docstring.
824         * lisp/dired.el: Update the corresponding autoloads.
826         * doc/emacs/dired.texi (Operating on Files): Update the
827         documentation accordingly.
829 2016-05-03  Dmitry Gutov  <dgutov@yandex.ru>
831         Clear buffer-undo-list when showing xrefs
833         * lisp/progmodes/xref.el (xref--show-xref-buffer): Clear
834         buffer-undo-list and temporarily bind it to t while rendering the
835         buffer contents.
837 2016-05-03  Alan Mackenzie  <acm@muc.de>
839         Note the quote translation in `message' in section "incompatible changes".
841         * etc/NEWS: Note that `message' translates quotes, that the translation
842         cannot be disabled, and that `format' can be used to get the old
843         behavior back.
845 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
847         * etc/NEWS: Mention (message "%s" (format ...)).
849 2016-05-03  Lars Ingebrigtsen  <larsi@gnus.org>
851         (Common Keywords): Correct what missing :group means
853         * doc/lispref/customize.texi (Common Keywords): Correct what
854         missing :group means.
856 2016-05-03  Eli Zaretskii  <eliz@gnu.org>
858         Improve documentation of Dired's 'A' and 'Q' commands
860         * lisp/dired-aux.el (dired-do-find-regexp)
861         (dired-do-find-regexp-and-replace): Mention
862         'grep-find-ignored-files' and 'vc-directory-exclusion-list', and
863         also the fact that REGEXP should be palatable by Grep.  (Bug#23426)
864         * lisp/dired.el: Update the corresponding autoload forms.
866         * doc/emacs/dired.texi (Operating on Files): Mention
867         'grep-find-ignored-files' and 'vc-directory-exclusion-list'.
868         (Bug#23429)
870 2016-05-03  Paul Eggert  <eggert@cs.ucla.edu>
872         Doc fixes for quoting
874         * doc/emacs/text.texi, doc/lispintro/emacs-lisp-intro.texi:
875         * doc/lispref/control.texi, doc/lispref/display.texi:
876         * doc/lispref/help.texi, doc/lispref/strings.texi, lisp/subr.el:
877         * src/callint.c, src/doprnt.c, src/editfns.c:
878         Document quoting a bit more systematically.
879         Problem reported by Alan Mackenzie (Bug#23425).
881 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
883         posnp doc clarification
885         * lisp/subr.el (posnp): Mention that a posn object is returned
886         from `event-start' (bug#18211).
888 2016-05-02  Lars Ingebrigtsen  <larsi@gnus.org>
890         Mention what a missing :group does
892         * doc/lispref/customize.texi (Common Keywords): Document that
893         a missing :group reuses the group from the preceding item (bug#21601).
895 2016-05-02  Eli Zaretskii  <eliz@gnu.org>
897         Fix documentation of dired-aux search/replace commands
899         * lisp/dired-aux.el (dired-do-find-regexp)
900         (dired-do-find-regexp-and-replace): Doc fixes.  (Bug#23429)
901         * lisp/dired.el: Update the corresponding autoload forms.
903 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
905         Fix quoting problem in cc-engine debug message
907         * lisp/progmodes/cc-engine.el (c-replay-parse-state-state):
908         Use "%s" format to pass through ‘'’ unscathed (Bug#23425), and
909         likewise for ‘`’, and ‘%’.
911 2016-05-02  Philipp Stephani  <phst@google.com>
913         Add electric-quote-string unit test
915         * test/automated/electric-tests.el (electric-quote-string): New test.
917 2016-05-02  Paul Eggert  <eggert@cs.ucla.edu>
919         Don’t electrically quote ‘'’ in Python
921         Problem reported by Philipp Stephani (Bug#23387).
922         * lisp/electric.el (electric-quote-post-self-insert-function):
923         Do not requote a string starter or ender.
925 2016-05-02  Dmitry Gutov  <dgutov@yandex.ru>
927         `nreverse' Grep hits before passing them to xref--convert-hits
929         * lisp/progmodes/xref.el (xref-collect-matches): `nreverse' hits
930         before passing them to xref--convert-hits.  Fixes a regression
931         from cc0b7132.
933 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
935         * doc/misc/texinfo.tex: Sync from gnulib.
937 2016-05-01  Juri Linkov  <juri@linkov.net>
939         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
941         (Bug#23410)
943 2016-05-01  Michael Albinus  <michael.albinus@gmx.de>
945         tramp.texi: Revert last change due to backward compatibility
947         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
949 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
951         cua-prefix-override-inhibit-delay doc fix
953         * lisp/emulation/cua-base.el
954         (cua-prefix-override-inhibit-delay): Typo fix in doc string
955         (bug#23401).
957         (cherry picked from commit 2b4c099822811ede787fc6e575bfbb17b3cc0681)
959 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
961         global-eldoc-mode doc fix
963         * lisp/emacs-lisp/eldoc.el (global-eldoc-mode): Be more
964         specific about what "applicable" means (bug#23071).
966         (cherry picked from commit 25e95b5dd8cd92e03788e589bf99a4b399f03114)
968 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
970         normal-top-level-add-subdirs-to-load-path doc fix
972         * lisp/startup.el (normal-top-level-add-subdirs-to-load-path):
973         Doc fix (bug#21962).
975         (cherry picked from commit 28aaa6d20586e3330a23b017a65e56dd6461c003)
977 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
979         isearch-search-fun-function doc tweak
981         * lisp/isearch.el (isearch-search-fun-function): Mention what
982         the STRING parameter is (bug#21552).
984         (cherry picked from commit cafc2a5940cdc523cfea6dcf1cf540f48367c62a)
986 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
988         Fill some imenu--index-alist doc lines
990         * lisp/imenu.el (imenu--index-alist): Fill some doc lines (bug#21269).
992         (cherry picked from commit 4b7bb8f596550628eaa83b82c0f7eabe59a84964)
994 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
996         Fmarker_position doc string clarification
998         * src/marker.c (Fmarker_position): Clarify the doc string
999         (bug#21231).
1001         (cherry picked from commit eeac7c57273cec3f9408b18392dd2bafe3be4450)
1003 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1005         Further define-obsolete-* doc fixups
1007         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1008         Fix up last change.
1009         (define-obsolete-variable-alias): Ditto.
1011         (cherry picked from commit 28e9f4390d8391c2c36be4ef515cf3a2c679a5a5)
1013 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1015         Describe WHEN in all the define-obsolete- macros
1017         * lisp/emacs-lisp/byte-run.el (define-obsolete-face-alias):
1018         Say more verbosely what WHEN is (bug#21225).
1019         (define-obsolete-function-alias): Describe the WHEN parameter.
1020         (define-obsolete-variable-alias): Ditto.
1022         (cherry picked from commit 247c388f160581d207e41ca5926990bbf69d4a0f)
1024 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1026         Mention with-silent-modifications in the lispref manual
1028         * doc/lispref/text.texi (Changing Properties): Document
1029         with-silent-modifications (bug#21171).
1031         (cherry picked from commit fcd0d854eef6e439d51e8f07cf734d5e34e502b3)
1033 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1035         with-silent-modifications doc clarification
1037         * lisp/subr.el (with-silent-modifications): Rearrange the doc
1038         string a bit so that the most pertinent information is at the
1039         top (bug#21171).
1041         (cherry picked from commit e0e70f030e69d9696a963a86f5f7caaff4df06eb)
1043 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1045         clear-visited-file-modtime doc string fix
1047         * lisp/files.el (clear-visited-file-modtime): Fix possibly
1048         confusing doc string wording (bug#21169).
1050         (cherry picked from commit 1aaeaf1450756a71c9254a2a5b174c72084ca67a)
1052 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1054         Document mode mode line variables
1056         * doc/lispref/modes.texi (Mode Line Variables): Document
1057         `mode-line-front-space, `mode-line-misc-info',
1058         `mode-line-end-spaces' (bug#21014).
1060         (cherry picked from commit bf7a630b0a5d3900f2afb0e7a881ce62e2b9f935)
1062 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1064         Add a cross ref to Optional Mode Line
1066         * doc/lispref/modes.texi (Mode Line Variables): Add a cross
1067         reference to the Emacs mode line node that explains things
1068         like `display-time-string' (bug#21002).
1070         (cherry picked from commit a3151a28789f413af73b14fbba557b2a587fca53)
1072 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1074         Add a doc string to display-time-string
1076         * lisp/time.el: Add a doc string to `display-time-string',
1077         because it's referred to in the manual, and is too mysterious
1078         otherwise (bug#21002).
1080         (cherry picked from commit 45559c584e5a4ddeed1539b028b50b95baa372f8)
1082 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1084         custom-buffer-style doc fix
1086         * lisp/cus-edit.el (custom-buffer-style): Document the `tree'
1087         value (bug#20724).
1089         (cherry picked from commit bcf0291d0cd02095b0809b1eb91f1e5c5c2ac5e3)
1091 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1093         Rearrange the doc of query-replace slightly
1095         * lisp/replace.el (query-replace): Move the mention of the
1096         interactive prefix arg earlier so that users can find it
1097         (bug#20654).
1099         (cherry picked from commit bcc10761c3b968fa4534718116a0a601ed7da389)
1101 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1103         apropos-print doc fix
1105         * lisp/apropos.el (apropos-print): Document the undocumented
1106         parameters (bug#20520).
1108         (cherry picked from commit 0714d7387812a151f59993ac77c7321724ef79b1)
1110 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1112         completion-table-with-predicate doc string fix
1114         * lisp/minibuffer.el (completion-table-with-predicate): t ->
1115         non-nil in the doc string (bug#20460).
1117         (cherry picked from commit b6a4d162208f239bc7804696d611ae52c686f138)
1119 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1121         Fill the completion-table-with-predicate doc string
1123         * lisp/minibuffer.el (completion-table-with-predicate): Fill
1124         the doc string (bug#20460).
1126         (cherry picked from commit 207a31432c1ed8b548003a3e4af32c49aa3441e9)
1128 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1130         replace-match-maybe-edit doc clarification
1132         * lisp/replace.el (replace-match-maybe-edit): Say what
1133         MATCH-DATA is (bug#20304).
1135         (cherry picked from commit 139874ba53c2e2de9868f8e5234d6ea2bcb97af8)
1137 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1139         add-timeout doc fix
1141         * lisp/emacs-lisp/timer.el (add-timeout): Mention the return
1142         value (bug#20181).
1144         (cherry picked from commit 921b40476f597c84d7c34aa289cd43caeb389c4a)
1146 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1148         Extremely minor doc fix in Choosing Window
1150         * doc/lispref/windows.texi (Choosing Window): There's only one
1151         action alist, I think (bug#20158).
1153         (cherry picked from commit 6c7e7f421d02d9290d6d1d85320737371160aef7)
1155 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1157         Transform mentions of `eval-after-load' to `with-eval-after-load'
1159         * doc/lispref/loading.texi (Hooks for Loading): Update text to
1160         not mention `eval-after-load' (bug#20038).
1162         (cherry picked from commit 9392193be56eebdfac702a0bbb5e954088371c7a)
1164 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1166         cursor-type doc fix
1168         * src/buffer.c (syms_of_buffer): Mention that cursor-type's
1169         WIDHT/HEIGHT can't exceed the frame char size (bug#19215).
1171         (cherry picked from commit 77c5f4554ebb3b7c7d49bc881e45a550f6c93987)
1173 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1175         Add a link from Tool Bar to Images
1177         * doc/lispref/keymaps.texi (Tool Bar): Add a link to the
1178         Images node (bug#19722).
1180         (cherry picked from commit da5d0786163a91400eced4fddba4a92b652458d1)
1182 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1184         (default-mode-line-format): More explicit obsolete info
1186         * lisp/subr.el (default-mode-line-format): Be more explicit in
1187         how default values are now handled (bug#19424).
1189         (cherry picked from commit 9dc5f6d830e72420dc4d41c8f6ca1ca6b28609c0)
1191 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1193         Fcompare_buffer_substrings doc string clarification
1195         * src/editfns.c (Fcompare_buffer_substrings): Extremely minor
1196         doc string clarification (bug#19255).
1198         (cherry picked from commit aa692acbb598a1cc8219ed7a87dde25fd7626ba5)
1200 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1202         insert-file-contents-literally doc fix
1204         * lisp/files.el (insert-file-contents-literally): Say that the
1205         parameters are explained in the other function (bug#18317).
1207         (cherry picked from commit b6481b19bc9592492b1f70dfecb4de6256f537fe)
1209 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1211         Fix custom types for cursor-in-non-selected-windows
1213         * lisp/cus-start.el (standard): Use the same custom types for
1214         cursor-in-non-selected-windows as for cursor-type (bug#19214).
1216         (cherry picked from commit b66bc0cced786e0320e1c3b0758bd3c434d4e8b5)
1218 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1220         Doc clarification to mwheel-scroll
1222         * lisp/mwheel.el (mwheel-scroll): Mention that the restriction
1223         does not apply to Windows (bug#19209).
1225         (cherry picked from commit 696052b5fdfbc5c25dff3c6b081aebe70f6d06c7)
1227 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1229         Clarify the doc of eval-expression-print-format
1231         * lisp/simple.el (eval-expression-print-format): Doc
1232         clarification (bug#19114).
1234         (cherry picked from commit cd193a871f5a8e1c81ba86fc398ac382fa814383)
1236 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1238         Explictly explain that package-initialize loads the packages
1240         * lisp/emacs-lisp/package.el (package-initialize): Be explicit
1241         in saying that `package-initialize' obviates adjusting the
1242         path or requiring the packages, as this is a question that
1243         apparently comes up now and then (bug#18829).
1245         (cherry picked from commit 619e0aedb2f3dbfe6821ac34e2d25b4e5c181117)
1247 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1249         Have the doc strings of `load-path' and `require' mention each other
1251         * src/fns.c (Frequire): Mention `load-path' and fill the doc
1252         string (bug#18829).
1254         * src/lread.c (syms_of_lread): Mention that `require' uses
1255         `load-path'.
1257         (cherry picked from commit 3eca9a03816f95da0030665223c0b5262f223ba7)
1259 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1261         Doc fix for insert-pair-alist
1263         * lisp/emacs-lisp/lisp.el (insert-pair-alist): Say what
1264         COMMAND-CHAR is (bug#18809).
1266         (cherry picked from commit 2824c587e9749a8f350f1d3dddd65176b4561dcb)
1268 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1270         Move doc of backup-directory-alist to the Backup node
1272         * doc/emacs/files.texi (Backup): Move the documentation of
1273         `backup-directory-alist' here from the "Single or Numbered
1274         Backups" node, because it doesn't seem to have much to do with
1275         numbering (bug#18692).
1277         (cherry picked from commit e77b8d84b4161f2cf8720dec2bf44a3e50134398)
1279 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1281         Tiny doc clarification for create-fontset-from-fontset-spec
1283         * lisp/international/fontset.el (create-fontset-from-fontset-spec):
1284         Clarify what the optional part is (bug#18686).
1286         (cherry picked from commit c05d186455ce9907eeb6b21ea4227e453996c681)
1288 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1290         Fill the doc string of font-lock-keywords
1292         * lisp/font-lock.el (font-lock-keywords): Fill the lines and
1293         reorganise some explanations (bug#21427).
1295         (cherry picked from commit c05716d3a26ea7518b89eacfccaf70c9d0731df7)
1297 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1299         Doc fix for font-lock-remove-keywords
1301         * lisp/font-lock.el (font-lock-remove-keywords): Add a link to
1302         `font-lock-add-keywords' to describe KEYWORDS (bug#18634).
1304         (cherry picked from commit bc00dcf12983cd399127d0eea39647f29778eb02)
1306 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1308         Clarify whitespace-style doc string
1310         * lisp/whitespace.el (whitespace-style): Doc clarification
1311         (bug#18296).
1313         (cherry picked from commit d96c720d0cca7c9ffbb4c712ad315bb707d6625c)
1315 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1317         Doc fixed for next-error-buffer-p
1319         * lisp/simple.el (next-error-buffer-p): Clarify doc string
1320         (bug#18202).
1322         (cherry picked from commit a10eb168cc96db9f0dab2d75550cbd8f08be2363)
1324 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1326         Tiny doc fix
1328         * src/fileio.c (Ffile_accessible_directory_p): Tiny doc fix
1329         (and fill) (bug#18201).
1331         (cherry picked from commit 2ef0040e2363a669d9b93df935d31c98fa130132)
1333 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1335         Doc fix
1337         * src/keymap.c (Fdefine_prefix_command): Clarify doc string
1338         slightly (bug#18092).
1340         (cherry picked from commit 6b769c81d024f7eeb90b167e7df6f87d859614d4)
1342 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1344         delsel doc touch ups
1346         * lisp/delsel.el (delete-selection-helper): Use non-nil
1347         instead of t and clarify function return values (bug#18089).
1349         (cherry picked from commit d7a5b5be9a5869bcd233434ec3103dd1976d7df7)
1351 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1353         Doc fixes for menu-bar.el
1355         * lisp/menu-bar.el (clipboard-kill-ring-save): Describe the
1356         REGION parameter (bug#18028).
1357         (clipboard-kill-region): Ditto.
1359         (cherry picked from commit 33d2c67bff0992ecbc0fe38556683242b9d1a4ae)
1361 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1363         Doc fix
1365         * lisp/rect.el (delete-whitespace-rectangle): Doc fix (bug#18026).
1367         (cherry picked from commit 6baca4911ec901579749dbf7596011d90fea3781)
1369 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1371         Minor doc clarification
1373         * lisp/subr.el (y-or-n-p): Document the return value from "n"
1374         (bug#18024).
1376         (cherry picked from commit 5d1f3192d484edee92caa46cd7d699da3e920259)
1378 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1380         Fill font-lock-mode doc string
1382         * lisp/font-core.el (font-lock-mode): Fill the text to make it
1383         narrower (bug#18008).
1385         (cherry picked from commit 27abf372836532c57be2e9e3ed23413729cc07fc)
1387 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1389         Wrap the auto-generated doc string
1391         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode): Wrap a
1392         string to make it less likely that we get overlong lines
1393         (bug#17999).
1395         (cherry picked from commit 323b69664914d687fd4b48593479cea223dfbcb4)
1397 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1399         Clarify hi-lock-find-patterns
1401         * lisp/hi-lock.el (hi-lock-find-patterns): Doc clarification
1402         (bug#17989).
1404         (cherry picked from commit 552e90ce7dff3a7107243fdf71c4de3af443e13a)
1406 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1408         Add a doc string to `winner-mode'
1410         * lisp/winner.el (winner-mode): Add a doc string based on the
1411         comments in the file (bug#17716).
1413         (cherry picked from commit 2c3ab9b6e39a3d600e7d82deacc24effaec051bb)
1415 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1417         Doc fix for align-newline-and-indent
1419         * lisp/align.el (align-newline-and-indent): Mention that
1420         alignment is done by `align' (bug#17707).
1422         (cherry picked from commit 340a224ec3e01706112a07164da9a9f3f369a5aa)
1424 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1426         Doc fix for `kbd'
1428         * lisp/subr.el (kbd): Describe more fully the format of the
1429         parameter (bug#17039).
1431         (cherry picked from commit 3a33afe25d8518f194fa4706eaccdb2a786a0348)
1433 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1435         Doc tweak
1437         * lisp/simple.el (use-empty-active-region): Doc tweak.
1438         There's only one region (bug#16513).
1440         (cherry picked from commit 35fb7897f161d5e5a87e039dc1e427094640b0c8)
1442 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1444         Link from (emacs)Exiting to (lisp)Killing Emacs
1446         * doc/emacs/entering.texi (Exiting): Link to the lispref
1447         manual for further customisations (bug#15445).
1449         (cherry picked from commit bc5f27aa099cdde02ca66e71501b89300685ab28)
1451 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1453         find-lisp doc touchups
1455         * lisp/find-lisp.el (find-lisp-format): Copy over the doc
1456         string (bug#15047).
1457         (find-lisp-find-files): Clarify doc.
1459         (cherry picked from commit e4c7657b0d1a31d64ca24bc64b5480cd7687e332)
1461 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1463         Don't have the manual claim that it lists all CL incompatibilities
1465         * doc/misc/cl.texi (Common Lisp Compatibility): The list of
1466         incompatibilities isn't exhaustive, so don't say that it is
1467         (bug#15171).
1469         (cherry picked from commit fb685bc91a72508c97ce7e30f970d4157677f371)
1471 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1473         Change all occurrences of "Mouse-[0-9]" to "mouse-[0-9]"
1475         * doc/emacs/*.texi: Change all occurrences of "Mouse-[0-9]" to
1476         "mouse-[0-9]".  These are case sensitive, and the keys are lower case
1477         (bug#14554).
1479         (cherry picked from commit e4c26271f2c2fe08f8490e25c63a436ab2a804ca)
1481 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1483         Doc string change to enable-recursive-minibuffers
1485         * src/minibuf.c (syms_of_minibuf): Mention
1486         minibuffer-depth-indicator-mode in the doc string to
1487         enable-recursive-minibuffers (bug#14147).
1489         (cherry picked from commit 23ba488a5e8290c4de91e0ff4161641efa364c0d)
1491 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1493         Clarify the `interactive' doc string slightly
1495         * src/callint.c (Finteractive): Clarify the doc string slightly
1496           (bug#14577).
1498         (cherry picked from commit cd993be60da2d12db0d390001373d486c1091c47)
1500 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1502         Clarify some doc strings
1504         * lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
1505         Clarify doc string (bug#8693).
1506         (syntax-propertize): Clarify doc string.
1508         (cherry picked from commit ad3ef417f3c40f086de9c547d6272e5685595e42)
1510 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1512         Add some concept index entries for custom types
1514         * doc/lispref/customize.texi (Composite Types): Add concept
1515         index entries for restricted-sexp, radio and choice (bug#7385).
1517         (cherry picked from commit 388bb723fa078158d3148de05e942f9c01e95dd8)
1519 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1521         Mention `lisp-indent-function' in the lispref manual
1523         * doc/lispref/macros.texi (Indenting Macros): Mention
1524         `lisp-indent-function' (bug#3393).
1526         (cherry picked from commit a1627691a896b2afaa264f93534178bc763564c9)
1528 2016-05-01  Lars Ingebrigtsen  <larsi@gnus.org>
1530         Clarify doc string of internal compilation function
1532         * lisp/progmodes/compile.el (compilation-get-file-structure):
1533         Clarify doc string (bug#3137).
1535         (cherry picked from commit 123191decb7428db3b32a6c01631fa755088393a)
1537 2016-05-01  Paul Eggert  <eggert@cs.ucla.edu>
1539         Use ‘T *restrict’ proto, not ‘T[restrict]’
1541         * src/fns.c (sort_vector_copy): Use a different way to attempt to
1542         work around GCC 3.0-and-earlier incompatibility with C99, one that
1543         does not have problems with modern non-GCC compilers.
1545 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
1547         Fix documentation of 'url-retrieve-synchronously'
1549         * doc/misc/url.texi (Retrieving URLs): Update argument list of
1550         'url-retrieve-synchronously'.  (Bug#23411)
1552 2016-05-01  Eli Zaretskii  <eliz@gnu.org>
1554         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
1556 2016-04-30  Leo Liu  <sdl.web@gmail.com>
1558         Fix last change to isearch-update (bug#23406)
1560         * lisp/isearch.el (isearch-update): Remove (setq cursor-sensor-inhibit
1561           nil) ie remove the original (unless (boundp 'cursor-sensor-inhibit)
1562           ...) form.
1564 2016-04-30  Leo Liu  <sdl.web@gmail.com>
1566         Autoload cursor-sensor-inhibit (bug#23406)
1568         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-inhibit): Autoload.
1569         * lisp/isearch.el (isearch-update): Remove boundp check.
1571 2016-04-30  Phillip Lord  <phillip.lord@newcastle.ac.uk>
1573         org-map-entries: Fix org-agenda-prepare-buffers call
1575         * lisp/org.el (org-map-entries): Check that buffer-file-name is non-nil
1576           before passing to org-agenda-prepare-buffers.
1578         This is a backport of commit 44c8cd7136e3fcd1e6bfa08895cac437b7a691fa
1579         from upstream org-mode. Addresses bug #23365.
1581 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
1583         Followup for last commit in the user manual
1585         * doc/emacs/basic.texi (Moving Point): Clarify that
1586         set-goal-column has buffer-local effect.  (Bug#23405)
1588 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
1590         Improve doc string of 'set-goal-column'
1592         * lisp/simple.el (set-goal-column): Doc fix.  (Bug#23405)
1594 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
1596         Fix the MSDOS build
1598         * config.bat:
1599         * msdos/sedlisp.inp:
1600         * msdos/sedlibmk.inp:
1601         * msdos/sedleim.inp:
1602         * msdos/sedadmin.inp:
1603         * msdos/sed6.inp:
1604         * msdos/sed3v2.inp:
1605         * msdos/sed2v2.inp:
1606         * msdos/sed1v2.inp: Adapt to Emacs 25.
1608         * src/process.c (remove_slash_colon): Move out of "#ifdef
1609         subprocesses" block, as it its called unconditionally.  Move
1610         ADD_SUBFEATURE calls into "#ifdef subprocesses" block, as they
1611         reference variables only defined in that block.
1612         * src/msdos.h: Provide prototypes for IT_set_frame_parameters,
1613         faccessat, msdos_fatal_signal, syms_of_msdos, pthread_sigmask,
1614         dos_keysns, dos_keyread, run_msdos_command, and
1615         syms_of_win16select, to avoid compiler warnings.
1616         * src/msdos.c (SYS_ENVIRON): Define to either '_environ' or
1617         'environ', depending on the DJGPP version.
1618         Remove declarations of externally-visible Lisp objects, like
1619         Qbackground_color and Qreverse.
1620         (run_msdos_command): First argument is not signed, not unsigned.
1621         Use SYS_ENVIRON.
1622         (sys_select): Use 'timespec_cmp' instead of 'timespec_sign', as
1623         the latter doesn't work when 'time_t' is an unsigned data type.
1624         This caused idle timers to behave incorrectly: they only fired
1625         after a keyboard input event.
1626         * src/frame.c (adjust_frame_size) [MSDOS]: Account for
1627         FRAME_TOP_MARGIN that isn't counted in the frame's number of
1628         lines, but dos_set_window_size needs it to be added.
1629         * src/lread.c (INFINITY, NAN) [DJGPP < 2.05]: Provide definitions.
1630         * src/fns.c (sort_vector_copy) [__GNUC__ < 4]: Provide a prototype
1631         that works around compilation errors with older GCC versions.
1632         * src/w16select.c: Don't declare QCLIPBOARD and QPRIMARY as Lisp
1633         Objects.
1634         * src/filelock.c [MSDOS]: Ifdef away most of the code.  Provide
1635         no-op implementations for 'lock_file' and 'unlock_file'.
1636         (Ffile_locked_p) [MSDOS]: Always return nil.  This avoids multiple
1637         ifdefs in all users of filelock.c functionality.
1638         * src/conf_post.h (EOVERFLOW, SIZE_MAX) [DJGPP < 2.04]: Define.
1639         * src/emacs.c [MSDOS]: Include dosfns.h, to avoid compiler
1640         warnings.
1641         * src/dosfns.h: Provide prototypes for dos_cleanup,
1642         syms_of_dosfns, and init_dosfns.
1643         * src/deps.mk (atimer.o): Depend on msdos.h.
1644         (emacs.o): Depend on dosfns.h.
1645         * src/atimer.c [MSDOS]: Include msdos.h, to avoid compiler
1646         warnings.
1648         * lisp/window.el (window--adjust-process-windows): Skip the body
1649         if 'process-list' is not available.  This avoids failure to start
1650         up on MS-DOS.
1651         * lisp/vc/diff.el (diff-no-select): Test 'make-process', not
1652         'start-process', as the latter is now available on all platforms.
1653         * lisp/textmodes/ispell.el (ispell-async-processp): Replace
1654         'start-process' with 'make-process' in a comment.
1655         * lisp/term/internal.el (IT-unicode-translations): Modify and add
1656         a few translations to display Info files with Unicode markup.  Fix
1657         an ancient off-by-one mismatch error with Unicode codepoints.
1658         * lisp/progmodes/compile.el (compilation-start): Test
1659         'make-process', not 'start-process', as the latter is now
1660         available on all platforms.
1661         * lisp/man.el (Man-build-man-command, Man-getpage-in-background):
1662         Test 'make-process', not 'start-process', as the latter is now
1663         available on all platforms.
1664         * lisp/international/mule-cmds.el (set-coding-system-map): Test
1665         'make-process', not 'start-process', as the latter is now
1666         available on all platforms.
1667         * lisp/eshell/esh-cmd.el (eshell-do-pipelines-synchronously): Doc
1668         fix.
1669         (eshell-execute-pipeline): Test 'make-process', not
1670         'start-process', as the latter is now available on all platforms.
1672 2016-04-30  Andreas Schwab  <schwab@linux-m68k.org>
1674         Remove \= from format string (bug#18190)
1676         * lisp/emacs-lisp/eieio.el (defclass): Remove \= from format
1677         string.
1679 2016-04-30  Eli Zaretskii  <eliz@gnu.org>
1681         Fix variable-pitch font on MS-Windows
1683         * lisp/faces.el (variable-pitch) [w32]: Name a variable-pitch font
1684         explicitly, to avoid Emacs picking up a bold-italic variant on
1685         some MS-Windows systems.  See this thread for details:
1686         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00746.html.
1688 2016-04-29  Alan Mackenzie  <acm@muc.de>
1690         Restore follow-scroll-up/down to scrolling by the combined size of all windows
1692         Also rename the current follow-scroll-up/down functions to
1693         follow-scroll-up-window and follow-scroll-down-window.  These scroll by the
1694         height of the current window.
1696         This fixes bug #23347.
1698         * lisp/follow.el (follow-mode): Tweak the doc string.
1699         (follow-scroll-up-arg, follow-scroll-down-arg): new functions, extracted from
1700         follow-scroll-up/down.
1701         (follow-scroll-up-window, follow-scroll-down-window): Functions renamed from
1702         follow-scroll-up/down.
1703         (follow-scroll-up, follow-scroll-down): Restore the historic functionality.
1705 2016-04-29  Alan Mackenzie  <acm@muc.de>
1707         Revert unneeded change which harms syntactic parsing.  This fixes bug #23308.
1709         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache): User
1710         c-state-old-cpp-end as an argument to c-with-all-but-one-cpps-commented-out
1711         regardless of the value of `here'.
1713 2016-04-29  Alan Mackenzie  <acm@muc.de>
1715         Correct indentation of ids in a C++ enum after a protection keyword.
1717         Also correct the misfontification of the last enum identifier.
1719         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): setq
1720         c-last-identifier-range to nil to ensure that only types recognized by this
1721         macro are set for fontification as types.
1722         (c-backward-typed-enum-colon): Function renamed from
1723         c-backward-colon-prefixed-type.  On finding a colon in the backward search,
1724         check it is preceded by an identifier rather than a keyword.
1726 2016-04-27  Glenn Morris  <rgm@gnu.org>
1728         * lisp/window.el (window--process-window-list): No-op if no processes.
1730         This avoids an issue with save-selected-window (from walk-windows)
1731         failing if frame.el is not loaded, eg if the terminal is resized
1732         during startup of a -nw CANNOT_DUMP build.  (Bug#23369).
1734 2016-04-27  Paul Eggert  <eggert@penguin.cs.ucla.edu>
1736         Port dumping to NetBSD with PaX
1738         Problem reported by Thomas Klausner (Bug#23371).
1739         * configure.ac (PAXCTL_dumped, PAXCTL_notdumped): New vars.
1740         Set them to setfattr and/or paxctl commands appropriate for
1741         GNU/Linux and/or NetBSD; the latter prefers paxctl +a.  Search
1742         for paxctl only if setfattr is not found.
1743         * src/Makefile.in (PAXCTL_dumped, PAXCTL_notdumped):
1744         New vars, replacing PAXCTL_if_present and SETFATTR_if_present.
1745         All uses changed.
1747 2016-04-27  Dmitry Gutov  <dgutov@yandex.ru>
1749         Don't mistake `for' inside a function for a part of array comprehension
1751         * lisp/progmodes/js.el (js--indent-in-array-comp): Also check the
1752         depth in parens between the bracket and `for' (bug#23391).
1754         * test/indent/js.js: Add a corresponding example.
1756 2016-04-27  Anders Lindgren  <andlind@gmail.com>
1758         Fix bug#22891: wrong terminal width when a fringe width is zero.
1760         When either fringe width is zero, Emacs reserved one column for a
1761         continuation glyph. Terminal windows does not take this into
1762         account when the frame is resized.
1764         * lisp/window.el (window-adjust-process-window-size): Use
1765         `window-max-chars-per-line' instead of `window-body-width'.
1766         * lisp/term.el (term-window-width): Remove function. (It does the
1767         same as `window-max-chars-per-line' but without recent bug fixes.)
1768         (term-mode): Use `window-max-chars-per-line' instead of
1769         `term-window-width'.
1771         Backport
1773         (cherry picked from commit 5b5403289888efe8783ae6a405845b925f544ec1)
1775 2016-04-27  Leo Liu  <sdl.web@gmail.com>
1777         Improve last change to vc-git-mode-line-string
1779         * lisp/vc/vc-git.el (vc-git-mode-line-string): Better fix that caches
1780           the result.
1782 2016-04-27  Stephen Berman  <stephen.berman@gmx.net>
1784         Todo mode doc bug fix
1786         * lisp/calendar/todo-mode.el (todo-show): Correct obsolete and no
1787         longer correct information in doc string.
1789 2016-04-27  Leo Liu  <sdl.web@gmail.com>
1791         Fix revision calculation in vc-git-mode-line-string
1793         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use
1794           vc-git-working-revision because vc-working-revision needs to decide
1795           the backend and may return nil.
1797 2016-04-26  Jorgen Schaefer  <contact@jorgenschaefer.de>
1799         Add Python 3.5 keyword "await"
1801         * lisp/progmodes/python.el (python-font-lock-keywords): Add await as
1802         keyword.
1804 2016-04-26  Lele Gaifax  <lele@metapensiero.it>
1806         Add new keywords of Python 3.5
1808         Python 3.5, released in mid September 2015, introduced a few new
1809         keywords to better support asynchronous code, "async" and "await"
1810         in particular. See https://www.python.org/dev/peps/pep-0492/ for
1811         details. (Bug#21783)
1812         * lisp/progmodes/python.el (python-rx-constituents): Add async
1813         def/for/with as block-start and async def as defun.
1814         * lisp/progmodes/python.el (python-font-lock-keywords): Add async
1815         def/for/with as keyword.
1816         * test/automated/python-tests.el (python-indent-after-async-block-1,
1817         python-indent-after-async-block-2, python-indent-after-async-block-3,
1818         python-nav-beginning-of-defun-3): New tests to test indentation and
1819         navigation for the async keyword.
1821 2016-04-26  Mark Oteiza  <mvoteiza@udel.edu>
1823         Partially revert previous change.
1825         This commit partially reverts 0f332848cdb2ed6d46771914a911cbca194cd51a.
1826         * lisp/rect.el (rectangle--highlight-for-redisplay): Use region face.
1827         This function is for rectangle-mark-mode, not string-rectangle.
1829 2016-04-25  Paul Eggert  <eggert@penguin.cs.ucla.edu>
1831         Say why text-quoting-style is not a user option
1833         * doc/lispref/help.texi (Keys in Documentation):
1834         * etc/NEWS: Document why text-quoting-style is not a
1835         customizable variable (Bug#23372).
1837 2016-04-25  Glenn Morris  <rgm@gnu.org>
1839         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
1840         Future-proof against non-time-values.
1842 2016-04-25  Eli Zaretskii  <eliz@gnu.org>
1844         Don't mention ~/.emacs.bmk literally in doc strings
1846         * lisp/bookmark.el (bookmark-save-flag, bookmark-load): Don't
1847         mention "~/.emacs.bmk" explicitly as the default bookmark file in
1848         the doc strings.  (Bug#23350)
1850 2016-04-25  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1852         * etc/NEWS: Explain why multicolor font display is disabled on OS X Cocoa.
1854 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
1856         Port to Ubuntu 16.04 --enable-gcc-warnings
1858         * src/image.c (gif_load) [HAVE_GIF]: Fix pointer signedness problem.
1860 2016-04-24  Paul Eggert  <eggert@cs.ucla.edu>
1862         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
1864 2016-04-24  Tino Calancha  <f92capac@gmail.com>
1866         Don't kill ~/ if it's the top level directory
1868         * lisp/dired-aux.el (dired-kill-subdir): Don't kill ~/ if it's
1869         the top level directory (bug#23017).
1871 2016-04-23  Tino Calancha  <f92capac@gmail.com>  (tiny change)
1873         describe-char: fix insert char documentation
1875         * lisp/descr-text.el (describe-char):
1876         Only 'ucs-names' entries can be inserted by unicode name (Bug#23325).
1878 2016-04-23  Dmitry Gutov  <dgutov@yandex.ru>
1880         (vc-git-mode-line-string): Don't use `replace-regexp-in-string'
1882         * lisp/vc/vc-git.el (vc-git-mode-line-string): Use `substring'
1883         instead of `replace-regexp-in-string', because REV can be nil
1884         (e.g. when FILE is a directory, bug#23344), and we actually know
1885         we only need the first 4 characters.
1887 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
1889         Bump version to 25.0.93
1891         * README:
1892         * configure.ac:
1893         * msdos/sed2v2.inp: Bump Emacs version to 25.0.93.
1895 2016-04-22  Nicolas Petton  <nicolas@petton.fr>
1897         * etc/AUTHORS: Update the AUTHORS file
1899         * admin/update_autogen: Use #!/usr/bin/env bash
1901         * admin/authors.el (authors-ignored-files): Additions.
1903 2016-04-22  Martin Rudalics  <rudalics@gmx.at>
1905         In x_set_window_size restore do_pending_window_change calls
1907         * src/xterm.c (x_set_window_size):
1908         * src/w32term.c (x_set_window_size): Restore
1909         do_pending_window_change calls after their stupid removal on
1910         2015-08-31.
1912 2016-04-21  Ilya Zakharevich  <ilya@math.berkeley.edu>
1914         Fix Alt-modified keys on some European MS-Windows keyboards
1916         * src/w32fns.c (deliver_wm_chars): If the reported character is
1917         ASCII, AND Meta modifier is a candidate, behave as if Meta is
1918         present, i.e. fall back to the legacy code.  (Bug#23251)
1920 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
1922         Document 'help-go-forward'
1924         * doc/emacs/help.texi (Help Mode): Document and index
1925         'help-go-forward'.  (Bug#23323)
1927 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
1929         Revert "Allow to customize names of executables used by grep.el"
1931         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
1933 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
1935         Revert "Don't use 'find-program'"
1937         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
1939 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
1941         Revert "Use 'grep-find-program' in check-declare.el"
1943         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
1945 2016-04-20  Eli Zaretskii  <eliz@gnu.org>
1947         Clarify documentation of 'dired-mark-files-containing-regexp'
1949         * doc/emacs/dired.texi (Marks vs Flags): Clarify that for files
1950         visited in buffers, 'dired-mark-files-containing-regexp' searches
1951         the buffer rather than the file on disk.  (Bug#22694)
1953         * lisp/dired.el (dired-mark-files-containing-regexp): Clarify that
1954         for files visited in buffers, 'dired-mark-files-containing-regexp'
1955         searches the buffer rather than the file on disk.  (Bug#22694)
1957 2016-04-19  Eli Zaretskii  <eliz@gnu.org>
1959         Make tmm-menubar work in correct order again
1961         * lisp/tmm.el (tmm-prompt): Don't reverse 'tmm-km-list' right at the
1962         beginning; instead, pass a reversed copy to 'tmm--completion-table'.
1963         (Bug#23309)
1964         (tmm-menubar): Fix an off-by-one error in determining the menu
1965         item when the function is called with a non-nil 'x-position'
1966         argument.
1968 2016-04-18  Dmitry Gutov  <dgutov@yandex.ru>
1970         Remove the Meta-CVS VC backend
1972         * lisp/obsolete/vc-mcvs.el: Remove the file (bug#20475).
1974         * lisp/vc/log-view.el (log-view-extract-comment): Remove the MCVS
1975         reference.
1977         * doc/misc/efaq-w32.texi (Version control): Same.
1979 2016-04-18  Michael Albinus  <michael.albinus@gmx.de>
1981         Fix Bug#23276
1983         * lisp/autorevert.el (auto-revert-handler): Ignore errors
1984         coming from `revert-buffer'.  (Bug#23276)
1986 2016-04-17  Reto Zimmermann  <reto@gnu.org>
1988         Sync with upstream vhdl mode v3.38.1.
1990         * lisp/progmodes/vhdl-mode.el (vhdl-version, vhdl-time-stamp): Update.
1991         (vhdl-mode): No longer set comment-padding.
1992         (vhdl-begin-p): Handle missing space between keyword and parenthesis.
1993         (vhdl-beginning-of-statement-1): Fix indentation for "else generate".
1994         (vhdl-template-else, vhdl-template-elsif): Support generate statement.
1995         (vhdl-re-search-forward, vhdl-re-search-backward): Save match data.
1997 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
1999         Tweak configure.ac syntax in recent module patch
2001         * configure.ac: Use proper Autoconf parenthesization in
2002         recent HAVE_MODULES patch.  Although this doesn’t fix any bugs,
2003         the previous syntax was confusing.
2005 2016-04-16  Paul Eggert  <eggert@cs.ucla.edu>
2007         Port to GCC 5.3.1 20160406 (Red Hat 5.3.1-6)
2009         * src/indent.c (Fvertical_motion): Pacify --enable-gcc-warnings
2010         when using the April 6 Fedora patch to GCC.
2012 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
2014         Make sh-electric-here-document-mode accessible in sh-mode-hook. (Bug#3226)
2016         * lisp/progmodes/sh-script.el (sh-mode-hook): Add
2017         sh-electric-here-document-mode as an option and the default value.
2018         (sh-mode): Mention sh-mode-hook in docstring.
2019         (sh-mode): Remove sh-electric-here-document-mode invocation.
2021 2016-04-16  Glenn Morris  <rgm@gnu.org>
2023         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
2025 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
2027         Make use of rectangle-preview custom variable.
2029         lisp/rect.el (rectangle--string-preview): Only create a preview if
2030         rectangle-preview is non-nil (Bug#23248).
2032 2016-04-16  Mark Oteiza  <mvoteiza@udel.edu>
2034         Make use of rectangle-preview face.
2036         * lisp/rect.el (rectangle--string-preview):
2037         (rectangle--highlight-for-redisplay): Replace 'region with
2038         'rectangle-preview (Bug#23248).
2040 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2042         Use 'grep-find-program' in check-declare.el
2044         * lisp/emacs-lisp/check-declare.el (check-declare-directory): Use
2045         'grep-find-program', not 'find-program'.
2047 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2049         Improve "C-h S" for cl-lib symbols
2051         * lisp/info-look.el: Add cl.info lookup to emacs-lisp-mode related
2052         manuals.  (Bug#23289)
2054 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2056         Fix minor issues with removing left or right fringes
2058         * lisp/window.el (window-max-chars-per-line): Account for
2059         'left-fringe-width' and 'right-fringe-width' variables.
2061         * doc/lispref/windows.texi (Window Sizes): Document the effect on
2062         window text width when setting the width of one or both fringes to
2063         zero.
2064         * doc/emacs/display.texi (Fringes): Document the effect on window
2065         text width when setting the width of one or both fringes to zero.
2066         (Bug#22891)
2068 2016-04-16  Eli Zaretskii  <eliz@gnu.org>
2070         Speed up redisplay in ansi-term mode
2072         * lisp/term.el (ansi-term): Force L2R 'bidi-paragraph-direction'.
2073         (Bug#20611)
2075 2016-04-16  Philipp Stephani  <phst@google.com>
2077         Simplify 8-bit character handling by terminal for 'raw-text'
2079         * lisp/international/mule.el (set-keyboard-coding-system): Treat
2080         'raw-text' as another coding type that requires 8-bit characters.
2081         * lisp/xt-mouse.el (xterm-mouse--read-coordinate): Use 'no-conversion'
2082         instead of 'latin-1'.
2084 2016-04-15  Glenn Morris  <rgm@gnu.org>
2086         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
2088 2016-04-15  Eli Zaretskii  <eliz@gnu.org>
2090         Fix w32 memory-management problem when extending buffer text
2092         * src/w32heap.c (mmap_realloc): Only attempt extending a region if
2093         the following region has the same allocation base.  Also, use the
2094         original allocation base and enlarged size to commit reserved
2095         memory, to ensure that the allocation base stays at its original
2096         value.  This fixes several hard-to-debug problems whereby part of
2097         buffer text was overwritten with binary nulls, because
2098         mmap_realloc copied only part of buffer text when extending it.
2099         See
2100         http://lists.gnu.org/archive/html/emacs-devel/2016-04/msg00325.html
2101         and http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#55 for two
2102         examples of the related problems.
2104 2016-04-14  Michael Albinus  <michael.albinus@gmx.de>
2106         Fix Bug#20637.  Do not merge to master
2108         * lisp/vc/vc-hooks.el (vc-state, vc-working-revision):
2109         Use `vc-backend' instead of `vc-responsible-backend'.  (Bug#20637)
2111         * test/automated/vc-tests.el (vc-test--state)
2112         (vc-test--working-revision): Deactivate now failing checks.
2114 2016-04-14  Paul Eggert  <eggert@cs.ucla.edu>
2116         substitute-command-keys keeps quotes’ text props
2118         Problem reported by Clément Pit--Claudel (Bug#23254).
2119         * src/doc.c: Include intervals.h.
2120         (Fsubstitute_command_keys): If the only substitutions are for
2121         quotes, copy the source string’s text properties too, since no
2122         substring lengths have changed.
2124 2016-04-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2126         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
2128 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
2130         Add semantic-symref-filepattern-alist entry for lisp-interaction-mode
2132         * lisp/cedet/semantic/symref/grep.el
2133         (semantic-symref-filepattern-alist):
2134         Add entry for lisp-interaction-mode
2135         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=23223#47)
2137 2016-04-12  Dmitry Gutov  <dgutov@yandex.ru>
2139         Perform xref searches without visiting unopened files
2141         * lisp/progmodes/xref.el (xref-collect-references): Instead of
2142         calling `semantic-symref-find-references-by-name', use
2143         `semantic-symref-instantiate' and `semantic-symref-perform-search'
2144         directly.  Ask for `line-and-text' results (bug#23223).
2145         (xref-collect-matches): Include the line text in the "hit"
2146         structure.
2147         (xref--convert-hits): New function, split off from
2148         `xref-collect-references' and `xref-collect-matches', to convert
2149         "hits" to xref instance list.  Create a temporary buffer here, to
2150         use it for post-processing all hit lines.
2151         (xref--collect-matches): Use a different approach for non-visited
2152         files.  Insert the line text into the temp buffer, apply the
2153         file's major mode the best we can without reading its whole
2154         contents, syntax-propertize, and search in the result.
2155         (xref--collect-matches-1): Extract, to handle the common logic
2156         between two cases.
2157         (xref--find-buffer-visiting): New function, a wrapper around
2158         `find-buffer-visiting' to amortize its cost.
2160         * lisp/cedet/semantic/symref/idutils.el
2161         (semantic-symref-idutils--line-re): New constant.
2162         (semantic-symref-parse-tool-output-one-line): Support result type
2163         `line-and-text'.
2165         * lisp/cedet/semantic/symref/grep.el
2166         (semantic-symref-grep--line-re)
2167         (semantic-symref-parse-tool-output-one-line): Same.
2169         * lisp/cedet/semantic/symref/cscope.el
2170         (semantic-symref-cscope--line-re)
2171         (semantic-symref-parse-tool-output-one-line): Same.
2173         * lisp/cedet/semantic/symref/global.el
2174         (semantic-symref-global--line-re)
2175         (semantic-symref-parse-tool-output-one-line): Same.
2177 2016-04-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
2179         Revert "Prevent bootstrap autoload backup files"
2181         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
2183 2016-04-12  Paul Eggert  <eggert@cs.ucla.edu>
2185         Improve time zone documentation
2187         * doc/lispref/os.texi (Time Zone Rules):
2188         New section, mostly with material moved here from other sections.
2189         * doc/emacs/cmdargs.texi (General Variables):
2190         * doc/lispref/os.texi (Time Conversion, Time Parsing):
2191         Xref new section.
2192         * etc/NEWS, etc/PROBLEMS:
2193         * lisp/org/org.el (org-timestamp-format):
2194         * src/editfns.c (Fformat_time_string, Fdecode_time)
2195         (Fencode_time, Fcurrent_time_string, Fcurrent_time_zone)
2196         (Fset_time_zone_rule):
2197         When documenting time zone rule strings, mention the TZ
2198         environment variable in preference to mentioning the
2199         sort-of-internal function set-time-zone-rule.
2201 2016-04-12  Phillip Lord  <phillip.lord@russet.org.uk>
2203         Prevent bootstrap autoload backup files
2205          * lisp/emacs-lisp/autoload (autoload-find-generated-file): Suppress
2206            backups in newly created file.
2208           (autoload-ensure-default-file): Function split into two.
2209           (autoload-ensure-file-writeable): New function from split.
2211           (Bug#23203)
2213 2016-04-11  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2215         Disable multicolor fonts on OS X since they are not supported on free systems
2217         * src/macfont.m (macfont_list): Don't use color bitmap fonts.
2219 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
2221         Capitalize “Universal Time” in documentation
2223         It’s a proper noun.
2224         * lisp/vc/add-log.el (add-log-time-zone-rule): Also, fix typo by
2225         mentioning ‘format-time-string’ instead of ‘set-time-zone-rule’.
2227 2016-04-11  Eli Zaretskii  <eliz@gnu.org>
2229         Don't use 'find-program'
2231         * lisp/progmodes/project.el (project-file-completion-table): Use
2232         'grep-find-program', rather than the obsolete 'find-program'.
2234 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
2236         Sync with gnulib
2238         This is for picky compilers whose stdint.h fails our C11 tests.
2239         Problem reported for clang by Philipp Stephani (Bug#23261).
2240         This incorporates:
2241         2016-04-11 stdint: port to strict C11 left shift
2242         * doc/misc/texinfo.tex, lib/stdint.in.h: Copy from gnulib.
2244 2016-04-11  Leo Liu  <sdl.web@gmail.com>
2246         Fix last change on 2016-01-02
2248         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Move
2249           `cl-errs-re' before `lisp--el-match-keyword'; don't use `prepend'
2250           which highlights `cl-errs-re' even in comments or strings.
2252 2016-04-11  Paul Eggert  <eggert@cs.ucla.edu>
2254         Port run-prolog EMACS to SWI-Prolog 7.2.3
2256         * lisp/progmodes/prolog.el (prolog-ensure-process):
2257         Work around incompatibility of SWI-Prolog 7.2.3 and earlier
2258         with the new way of dealing with the EMACS and INSIDE_EMACS
2259         environment variables.
2261 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
2263         Avoid crashes due to unreasonably large or small text scaling
2265         * lisp/face-remap.el (text-scale-min-amount)
2266         (text-scale-max-amount): New functions.
2267         (text-scale-set, text-scale-increase): Use them to limit the text
2268         scaling to a reasonable range of values.  (Bug#23259)
2270 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
2272         Improve documentation of 'with-eval-after-load'
2274         * lisp/subr.el (with-eval-after-load): Doc fix.  (Bug#23258)
2276 2016-04-10  Eli Zaretskii  <eliz@gnu.org>
2278         Improve handling of non-ASCII characters in Git log messages
2280         * lisp/vc/vc-git.el (vc-git-commits-coding-system): Now a defcustom.
2281         (vc-git-log-output-coding-system): New defcustom.
2282         (vc-git-print-log, vc-git-command, vc-git--call): Use
2283         'vc-git-log-output-coding-system' for reading stuff from Git.
2284         Don't override values of 'coding-system-for-read/write' if they
2285         are bound by caller -- this allows the user to force an encoding
2286         via "C-x RET c".
2287         (vc-git-checkin): On MS-Windows, pass the log message via a
2288         temporary file, to work around the limitations on passing
2289         non-ASCII characters via command-line arguments.  Force using the
2290         'locale-coding-system' for Git command-line arguments.  This fixes
2291         problems with non-ASCII commit log messages on MS-Windows.
2292         (Bug#23076)
2294         * etc/NEWS: Mention the new vc-git related defcustoms.
2296 2016-04-09  Philipp Stephani  <phst@google.com>
2298         Remove undefined behavior in OS X dumper.
2300         Found by Address Sanitizer.
2302         * src/unexmacosx.c (unexec_write): Use Mach virtual memory API to
2303         avoid undefined behavior when reading arbitrary memory.
2305 2016-04-09  Joakim Verona  <joakim@verona.se>
2307         Fix clipping of xwidgets
2309         * src/xwidget.c (x_draw_xwidget_glyph_string): Use window_box
2310         instead of calculating the clipping borders manually.  Suggested
2311         by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
2313 2016-04-09  Eli Zaretskii  <eliz@gnu.org>
2315         Improve Lisp-level documentation of tooltips
2317         * doc/lispref/display.texi (Tooltips): New section.  (Bug#23246)
2318         (Display): Update the chapter menu.
2319         * doc/lispref/text.texi (Special Properties): Make the "tooltip"
2320         index entry more concrete.  Change the cross-reference to point to
2321         "Tooltips" in the ELisp manual.
2322         * doc/lispref/elisp.texi (Top): Update the master menu.
2323         * doc/emacs/frames.texi (Tooltips): Include more customization
2324         variables.  Add a cross-reference to the ELisp manual.
2326 2016-04-08  Glenn Morris  <rgm@gnu.org>
2328         Faces names should not end in "-face".
2330         * lisp/rect.el (rectangle-preview): Rename from rectangle-preview-face.
2331         * lisp/vc/vc-hooks.el (vc-state-base): Rename from vc-state-base-face.
2333 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
2335         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
2337 2016-04-08  Paul Eggert  <eggert@cs.ucla.edu>
2339         Comint and compile no longer set EMACS
2341         This mostly restores the change that I reverted on March 23,
2342         fixing most of Bug#20202.  The only part of the change that is
2343         still reverted is the change to M-x term, where compatibility with
2344         current Bash constrains us from moving too quickly (Bug#20484).
2345         Problem reported by Phillip Lord in: http://bugs.gnu.org/20484#108
2346         * etc/NEWS: Document this.
2347         * lisp/comint.el (comint-exec-1):
2348         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
2349         * lisp/progmodes/compile.el (compilation-start):
2350         Don’t set EMACS=t in the subsidiary process.
2352 2016-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
2354         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
2356 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
2358         Allow to customize names of executables used by grep.el
2360         * lisp/progmodes/grep.el (grep-find-program): Renamed from
2361         'find-program', which was a variable.  All uses changed.
2362         (grep-xargs-program): Renamed from 'xargs-program', which was a
2363         variable.  All uses changed.
2364         (grep-program): Now a defcustom rather than a simple variable.
2365         (Bug#23219)
2367 2016-04-08  Alan Third  <alan@idiocy.org>
2369         Set locale encoding to UTF-8 when run from OS X GUI.
2371         * src/nsterm.m (ns_init_locale): Append .UTF-8 when setting LANG.
2373 2016-04-08  Eli Zaretskii  <eliz@gnu.org>
2375         Avoid signaling errors in 'M-n' at the 'C-x C-f' prompt
2377         * lisp/ffap.el (ffap-guess-file-name-at-point): Ignore errors
2378         while 'ffap-guesser' runs.  (Bug#23218)
2380 2016-04-08  Marcin Borkowski  <mbork@mbork.pl>
2382         Avoid infinite loop in 'studlify-word'
2384         * lisp/play/studly.el (studlify-region): Call
2385         'forward-word-strictly' and 'backward-word-strictly' instead of
2386         'forward-word' and 'backward-word'.  (Bug#19940)
2388 2016-04-07  Paul Eggert  <eggert@cs.ucla.edu>
2390         Don’t recommend obsolete EMACS env var
2392         * doc/misc/efaq.texi (Escape sequences in shell output):
2393         Remove long-obsolete (and now-confusing) notes about
2394         the EMACS environment variable in Emacs 21.1 and earlier.
2395         * doc/misc/efaq.texi (^M in the shell buffer):
2396         * etc/PROBLEMS:
2397         Remove obsolescent recommendation to consult the EMACS environment
2398         variable.
2400 2016-04-07  Glenn Morris  <rgm@gnu.org>
2402         * lisp/emacs-lisp/package.el: Change from a few days ago needs seq.
2404         * lisp/emacs-lisp/seq.el: Load cl-lib, not cl-extra.
2406 2016-04-07  Leo Liu  <sdl.web@gmail.com>
2408         Fix "Beginning of buffer" error in forward-page
2410         * lisp/textmodes/page.el (forward-page): Check before move to prevent
2411           "Beginning of buffer" error.
2413 2016-04-06  Dmitry Gutov  <dgutov@yandex.ru>
2415         Add a `transient' project type
2417         * lisp/progmodes/project.el (project-roots): Implement for the
2418         `transient' project type (bug#23224).
2419         (project-current): Instead of signaling an error, return a
2420         transient project instance rooted in the chosen directory.
2422 2016-04-06  Lars Magne Ingebrigtsen  <larsi@gnus.org>
2424         Revert "Backport HTTPS proxy fix"
2426         This reverts commit 2d1a6054b161bd1055d4feb11c8c5ac95543f5db.
2428         It's too late in the Emacs 25 release cycle to add things like this to
2429         Emacs 25.1.  It's border line new feature.
2431 2016-04-06  Tao Fang  <fangtao0901@gmail.com>
2433         Backport HTTPS proxy fix
2435         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
2437         Backport:
2439 2016-04-06  Paul Eggert  <eggert@cs.ucla.edu>
2441         Fix stability confusion in sort-tests
2443         Problem reported by Philipp Stephani (Bug#23205).
2444         * test/automated/sort-tests.el:
2445         (sort-tests--insert-words-sort-and-compare):
2446         Don’t assume that reversing a sorted list is the same
2447         as sorting with the reverse predicate.  This is not true
2448         for stable sorts when items compare equal.
2450 2016-04-05  Paul Eggert  <eggert@cs.ucla.edu>
2452         Avoid describe-key error with lambdas
2454         Problem reported by Sho Takemori (Bug#22716).
2455         * lisp/cedet/mode-local.el (describe-mode-local-overload)
2456         (xref-mode-local-overload): Use function-overload-p instead
2457         of assuming the argument is a symbol.
2459 2016-04-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2461         * lisp/emacs-lisp/package.el (package-install-selected-packages):
2463         Skip unavailable packages.
2465 2016-04-04  Paul Eggert  <eggert@cs.ucla.edu>
2467         Sync with gnulib
2469         This incorporates:
2470         2016-04-03 stdint: detect good enough pre-C++11 stdint.h in C++ mode
2471         2016-04-01 stddef: support configuring with g++
2472         * doc/misc/texinfo.tex, lib/stddef.in.h, m4/stdint.m4:
2473         Copy from gnulib.
2475 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
2477         Fix doc for Universal Time
2479         * doc/lispref/os.texi (Time of Day, Time Conversion):
2480         Be more careful about distinguishing UTC (which is not valid for
2481         pre-1961 time stamps) and UT (which is).
2482         (Time Parsing): Remove stray obsolete paragraph about a
2483         UNIVERSAL argument for ‘format-time-string’.
2485 2016-04-03  Michael Albinus  <michael.albinus@gmx.de>
2487         Handle Bug#23186
2489         * lisp/net/tramp.el (tramp-encoding-command-switch)
2490         (tramp-encoding-command-interactive):
2491         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
2492         `tramp-encoding-shell' could be nil.  (Bug#23186)
2494 2016-04-03  Paul Eggert  <eggert@cs.ucla.edu>
2496         More format-time-string change fixups
2498         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-times):
2499         * lisp/org/org.el (org-timestamp-format):
2500         Fix doc to match new format-time-string behavior.
2501         * lisp/org/ox-icalendar.el (org-icalendar-convert-timestamp):
2502         Use (not (not X)) to treat non-nil values of utc arg as UTC.
2504 2016-04-02  Paul Eggert  <eggert@cs.ucla.edu>
2506         make-xwidget unused arg cleanup
2508         * doc/lispref/display.texi (Xwidgets): Remove stray refs.
2509         * src/xwidget.c (syms_of_xwidget): Qwebkit, not Qwebkit_osr.
2511 2016-04-02  Joakim Verona  <joakim@verona.se>
2513         Remove unused arguments from make-xwidget
2515         The arguments BEG and END were unused, and are now removed.
2517         * display.texi (Xwidgets): Document the change
2518         * xwidget.el (make-xwidget, xwidget-insert)
2519         (xwidget-webkit-new-session): Reflect changed arguments
2520         * xwidget.c (Fmake_xwidget, syms_of_xwidget): Reflect changed arguments
2522 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
2524         Document incompatible changes in 'format-time-string'
2526         * etc/NEWS: Mention the incompatible change in the interpretation
2527         of the 3rd argument to 'format-time-string'.  (Bug#21943)
2529 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
2531         Improve documentation of byte-code objects
2533         * doc/lispref/compile.texi (Byte-Code Objects): Document the
2534         integer format of the argument descriptor.  (Bug#23061)
2536 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
2538         Adapt calls to 'format-time-string' to changes in Emacs 25
2540         * lisp/vc/pcvs-info.el (cvs-fileinfo-from-entries): Use t as the
2541         last argument to format-time-string.  (Bug#23128)
2542         * lisp/gnus/gmm-utils.el (gmm-format-time-string): Use t as the
2543         last argument to format-time-string, when the TZ argument is not a
2544         number, per the doc string.
2546 2016-04-02  Eli Zaretskii  <eliz@gnu.org>
2548         Improve vc-diff with Git backend
2550         * lisp/vc/vc-git.el (vc-git-command): Don't override
2551         coding-system-for-read/write if they are already bound.
2552         Suggested by joaotavora@gmail.com (João Távora).  (Bug#20892)
2553         (vc-git-print-log): Don't override coding-system-for-read if it's
2554         already bound.
2556 2016-04-01  Dmitry Gutov  <dgutov@yandex.ru>
2558         (js--continued-expression-p): Special-case unary plus and minus
2560         * lisp/progmodes/js.el (js--continued-expression-p): Make an
2561         effort to recognize unary plus and minus, in the contexts where
2562         they make sense (https://github.com/mooz/js2-mode/issues/322).
2564 2016-04-01  Alan Mackenzie  <acm@muc.de>
2566         Prevent C++ Mode wrongly fontifying some identifiers near templates as types
2568         This fixes debbugs #7917.
2570         * lisp/progmodes/cc-engine.el (c-forward-keyword-prefixed-id): Accept 'maybe
2571         (from c-forward-type) as sufficient to record an id.  Record type id as well
2572         as ref ids.
2573         (c-forward-name): Bind c-last-identifier-range around the call to
2574         c-forward-<>-arglist to prevent it getting corrupted.  Don't automatically
2575         assume an identifier is a type when a template ">" is followed by a "(".
2576         (c-forward-type): Don't automatically assume an identifier is a type when a
2577         template ">" is followed by a "(".
2579         * lisp/progmodes/cc-fonts.el (c-font-lock-<>-arglists): Don't fontify an
2580         identifier as a type when its associated ">" is followed by a "(".
2582 2016-04-01  Eli Zaretskii  <eliz@gnu.org>
2584         Avoid crashes due to insanely large columns in tabulated-list-format
2586         * src/xdisp.c (append_stretch_glyph, produce_xwidget_glyph)
2587         (produce_image_glyph): Limit the pixel width of the produced glyph
2588         to SHRT_MAX.  (Bug#23178)
2589         (append_composite_glyph, append_glyph, append_glyphless_glyph):
2590         Add assertions to verify that the pixel width of the glyph will
2591         never overflow a 'short'.
2592         * src/term.c (append_composite_glyph): Add assertion to verify
2593         that the pixel width of the glyph will never overflow a 'short'.
2595 2016-03-31  Mark Oteiza  <mvoteiza@udel.edu>
2597         Teach M-x disassemble a default argument.
2599         Adopts default argument in the same way as `describe-function'.
2600         * lisp/emacs-lisp/disass.el (disassemble): Default to function at point,
2601         if any.
2603 2016-03-31  Eli Zaretskii  <eliz@gnu.org>
2605         Fix EOL decoding in vc-annotate with SVN back-end on MS-Windows
2607         * lisp/vc/vc-annotate.el (vc-annotate): Force DOS EOL decoding on
2608         MS-Windows and MS-DOS, when processing the output of "svn annotate".
2610 2016-03-31  Michael Albinus  <michael.albinus@gmx.de>
2612         Fix OS X specific settings in tramp-tests
2614         * lisp/net/tramp-sh.el (tramp-maybe-open-connection): Use it.
2616         * lisp/net/tramp.el (tramp-get-local-locale): New defun.
2618         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
2619         (tramp--test-utf8): Improve settings of coding systems.
2620         Do not use `tramp--test-darwin-p' anymore.  (Bug#22145)
2622 2016-03-30  Alan Mackenzie  <acm@muc.de>
2624         Finish fixing a cacheing bug in CC Mode (see 2016-03-09)
2626         * lisp/progmodes/cc-cmds.el: (c-beginning-of-defun, c-end-of-defun): Remove
2627         superfluous invocations of c-self-bind-state-cache.
2629         * lisp/progmodes/cc-defs.el: (c-self-bind-state-cache): Copy and terminate
2630         markers correctly.
2632         * lisp/progmodes/cc-engine.el (c-record-parse-state-state): Terminate stale
2633         markers.
2635 2016-03-30  Alan Mackenzie  <acm@muc.de>
2637         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
2639 2016-03-29  Xue Fuqiao  <xfq.free@gmail.com>
2641         * doc/lispref/text.texi (Columns): Remove a nonexistent reference.
2643         The example was removed by Chong Yidong on Mar 5, 2012.
2645 2016-03-29  Paul Eggert  <eggert@cs.ucla.edu>
2647         * doc/man/emacsclient.1: Document +line:column option.
2649 2016-03-29  Eli Zaretskii  <eliz@gnu.org>
2651         Fix rare problems with echo-area display and multiple frames
2653         * src/xdisp.c (redisplay_window): Bind inhibit-redisplay non-nil
2654         around the call to x_consider_frame_title, to prevent
2655         resize_mini_window from undoing echo-area display.  (Bug#23124)
2657 2016-03-29  Alan Mackenzie  <acm@muc.de>
2659         In M-%, avoid making buffer-local binding of text-property-default-nonsticky
2661         This would happen when that variable already has a buffer local binding.  Such
2662         a binding would not be seen by read-from-minibuffer.  This fixes bug #23127.
2664         * lisp/replace.el (query-replace-read-from): Move the binding of
2665         text-property-default-nonsticky to inside of a new with-current-buffer buffer
2666         form with the minibuffer as argument.
2668 2016-03-27  Dmitry Gutov  <dgutov@yandex.ru>
2670         Remove prog-indentation-context
2672         * lisp/progmodes/prog-mode.el: (prog-indentation-context)
2673         (prog-first-column, prog-widen): Remove, as discussed in
2674         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg01425.html.
2676         * doc/lispref/text.texi (Mode-Specific Indent): Remove references
2677         to them.
2679         * etc/NEWS: Ditto.
2681         * lisp/progmodes/python.el: (prog-widen, prog-first-column):
2682         Remove the compatibility aliases and all uses.
2684         Do not merge to master.
2686 2016-03-27  Paul Eggert  <eggert@cs.ucla.edu>
2688         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
2690 2016-03-27  Eli Zaretskii  <eliz@gnu.org>
2692         Don't start the 'midnight' timer twice
2694         * lisp/midnight.el (midnight-mode): Avoid starting the midnight
2695         timer twice when activating the mode the first time.  (Bug#23123)
2697 2016-03-27  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2699         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
2701 2016-03-26  Stephen Berman  <stephen.berman@gmx.net>
2703         Fix todo-mode category movement
2705         * lisp/calendar/todo-mode.el (todo-move-category): Use moved
2706         category's existing categories sexp instead of invoking
2707         todo-update-categories-sexp in file moved to, in order to take
2708         archived items into account.  If the moved category has archived
2709         items, handle the source archive buffer properly.  Remove
2710         superfluous code.
2712 2016-03-26  Glenn Morris  <rgm@gnu.org>
2714         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
2716 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
2718         Ignore non-nil. non-cons values of unread-command-events
2720         * src/keyboard.c (requeued_events_pending_p, read_char)
2721         (Finput_pending_p): Use CONSP instead of !NILP to see if there are
2722         unread command events to be processed.  (Bug#22976)
2724 2016-03-26  Eli Zaretskii  <eliz@gnu.org>
2726         Improve documentatuon of 'truncate-partial-width-windows'
2728         * src/xdisp.c (syms_of_xdisp) <truncate-partial-width-windows>:
2729         Clarify in the doc string how the width of partial-width windows
2730         is computed for the purposes of truncation decision.  (Bug#4338)
2732         * doc/emacs/windows.texi (Split Window): Clarify how the width of
2733         windows is calculated for the purposes of truncation decision.
2734         * doc/emacs/display.texi (Line Truncation): Remove a redundant
2735         index entry.
2737 2016-03-25  Paul Eggert  <eggert@cs.ucla.edu>
2739         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
2741 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
2743         Fix 'dired-goto-file' in Dired buffers produced by find-dired
2745         * lisp/dired.el (dired-goto-file): Try looking for the file as a
2746         relative name with leading sub-directories, before looking for the
2747         basename alone.  (Bug#23089)
2749 2016-03-25  Nicolas Petton  <nicolas@petton.fr>
2751         Fix map-put and map-delete for alists (Bug#23105)
2753         * lisp/emacs-lisp/map.el (map-put): Do not bind the evaluated place
2754         expression to a new symbol.
2755         * test/lisp/emacs-lisp/map-tests.el: Add a regression test.
2757 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
2759         Minor copyedits of documentation for temporary displays
2761         * doc/emacs/windows.texi (Temporary Displays): Improve indexing.
2762         Minor changes in wording.
2763         (Window Choice, Displaying Buffers, Pop Up Window): Disambiguate
2764         index entries for 'display-buffer'.
2766         * etc/NEWS: Minor rewording of the entry about temporary displays.
2768 2016-03-25  Philipp Stephani  <phst@google.com>
2770         Add customization option for using UTF-8 coordinates in xt-mouse
2772         * lisp/xt-mouse.el (xterm-mouse-utf-8): New customization option.
2773         (xterm-mouse--read-coordinate): New function to replace
2774         `xterm-mouse--read-utf8-char'; uses UTF-8 only if enabled.
2775         (xterm-mouse--read-number-from-terminal): Adapt to new name.
2776         (xterm-mouse-tracking-enable-sequence)
2777         (xterm-mouse-tracking-disable-sequence): Replace constants with
2778         functions, mark constants as obsolete.
2779         (xterm-mouse--tracking-sequence): New helper function.
2780         (turn-on-xterm-mouse-tracking-on-terminal): Use new functions;
2781         enable UTF-8 only if customization option says so; store UTF-8
2782         flag in terminal parameter.  (Bug#23009)
2784         * test/automated/xt-mouse-tests.el: Add tests for xt-mouse.el.
2786 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
2788         Minor doc string fixes in replace.el
2790         * lisp/replace.el (query-replace, query-replace-regexp)
2791         (query-replace-regexp-eval, map-query-replace-regexp)
2792         (replace-string, replace-regexp): Clarify in doc strings that
2793         these commands operate from point to the end of the buffer's
2794         accessible portion.  (Bug#23067)
2796 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
2798         Fix scrolling upwards with 'xwidget-webkit-browse-url'
2800         * src/xwidget.c (Fxwidget_set_adjustment): Use CHECK_NUMBER instead
2801         of CHECK_NATNUM.  Suggested by Shayan Pirani <shayanpirani@gmail.com>.
2802         (Bug#22918)
2804 2016-03-25  K. Handa  <handa@gnu.org>
2806         Fix display of Indic scripts
2808         * ftfont.c (ftfont_shape_by_flt): For combining characters out
2809         of the range U+300...U+36F, use the "combining" FLT only with
2810         non-OTF fonts.
2812 2016-03-25  Eli Zaretskii  <eliz@gnu.org>
2814         Fix splash screen display at startup
2816         * src/frame.c (DEFAULT_ROWS): Enlarge to 36, so that the initial
2817         window displayed by "emacs -q" has enough space to show the whole
2818         text even if it includes 2 lines talking about recovering crashes
2819         sessions.  (Bug#23074)
2821         * lisp/startup.el (use-fancy-splash-screens-p): Fix off-by-one
2822         error when computing the window-height from frame-height.
2824         * etc/NEWS: Mention the change.
2826 2016-03-25  Martin Rudalics  <rudalics@gmx.at>
2828         Describe temporary displays in Emacs manual
2830         * doc/emacs/emacs.texi (Temporary Displays): New subsubsection.
2831         * doc/emacs/windows.texi (Window Choice): Minor fixes.
2832         (Temporary Displays): New subsubsection describing display of
2833         temporary buffers and `temp-buffer-resize-mode'.
2835 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
2837         Avoid stray As next to IDLW icons
2839         * lisp/progmodes/idlw-toolbar.el (idlwave-toolbar-add-everywhere):
2840         Use "" for empty labels, not "a", as the latter now displays stray
2841         "A"s (Bug#18997).
2843 2016-03-24  Paul Eggert  <eggert@cs.ucla.edu>
2845         Avoid GTK 3 crash with icons and masks
2847         Problem reported by Mosè Giordano (Bug#18997).
2848         * src/gtkutil.c (xg_get_pixbuf_from_pixmap): Remove.
2849         (xg_get_pixbuf_from_pix_and_mask): Do not use
2850         xg_get_pixbuf_from_pixmap, as it is poorly documented.  Instead,
2851         invoke XGetPixel directly.  This is slow but speed is not
2852         important here.  Also, fail for unusual situations (not TrueColor,
2853         or images that are not 8 bits per sample) instead of displaying
2854         junk or crashing.
2856 2016-03-24  Juri Linkov  <juri@linkov.net>
2858         * lisp/minibuffer.el (minibuffer-completion-help): Use fit-window-to-buffer
2860         instead of shrink-window-if-larger-than-buffer.  (Bug#23092)
2862 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
2864         Define make_save_ptr_ptr unconditionally
2866         * src/alloc.c (make_save_ptr_ptr): Remove the !(defined
2867         USE_X_TOOLKIT || defined USE_GTK) conditional.  Reported by
2868         Philipp Stephani <phst@google.com>.  (Bug#23101)
2870 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
2872         Preserve current buffer when popping up TTY menus
2874         * src/term.c (tty_menu_show): Be sure to save and restore the
2875         current buffer around TTY menu pop-ups.  (Bug#23101)
2877 2016-03-24  Eli Zaretskii  <eliz@gnu.org>
2879         Improve font selection by family on MS-Windows
2881         * src/w32font.c (w32font_list_internal): Allow 'ascii-0' charset,
2882         in addition to 'iso10646-1', 'unicode-bmp', and 'unicode-sip'.
2883         This avoids rejecting many font families whose members are shown
2884         by 'font-family-list', in particular 'courier' requested by
2885         info.el.  Without this change, many values of ':family' attribute
2886         of a face have no effect on MS-Windows, because they are rejected
2887         due to bogus mismatch of the charset.
2889 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2891         Comint, term, and compile now set EMACS
2893         This fixes directory tracking in ansi-term, at the expense of
2894         breaking some usages of 'configure'.  Setting EMACS is meant to be
2895         a somewhat temporary measure, until Bash 4.4 comes out and is
2896         common.  (Bug#20484).
2897         * etc/NEWS: Document this.
2898         * lisp/comint.el (comint-exec-1):
2899         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
2900         * lisp/progmodes/compile.el (compilation-start):
2901         * lisp/term.el (term-exec-1):
2902         Go back to setting the EMACS environment variable, for backward
2903         compatibility to Bash 4.3 and earlier.
2905 2016-03-23  Paul Eggert  <eggert@penguin.cs.ucla.edu>
2907         Ignore more merges when generating ChangeLog
2909         * build-aux/gitlog-to-emacslog: Ignore all merges from gnu.org,
2910         not merely those from master and emacs-NN.  The ChangeLog entries
2911         they generate are not that useful.
2913 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
2915         Sync with gnulib
2917         This incorporates:
2918         2016-03-22 gitlog-to-changelog: suppress ignored chatter
2919         2016-03-21 sys_select: port to new Cygwin
2920         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
2921         * lib/sys_select.in.h: Copy from gnulib.
2923 2016-03-23  Paul Eggert  <eggert@cs.ucla.edu>
2925         Resurrect GNUS-NEWS autogeneration
2927         * doc/misc/gnus-coding.texi (Gnus Maintenance Guide): Update
2928         GNUS-NEWS section to match current file locations and procedure.
2929         * etc/GNUS-NEWS: Regenerate by using new procedure.
2930         * lisp/Makefile.in (update-gnus-news): New rule, containing a
2931         procedure for building GNUS-NEWS.  The old procedure got lost
2932         somehow when Gnus was merged into Emacs.
2934 2016-03-22  Anders Lindgren  <andlind@gmail.com>
2936         Make `toggle-frame-maximized' respect the dock on OS X (bug#22988).
2938         * src/nsterm.m (ns_screen_margins): New function.
2939         (ns_screen_margins_ignoring_hidden_dock): New function.
2940         (ns_menu_bar_height): Reimplement in terms of `ns_screen_margins'.
2941         ([EmacsWindow zoom:]): Take all screen margins (except those
2942         originating from a hidden dock) into account.
2944 2016-03-22  Eli Zaretskii  <eliz@gnu.org>
2946         Fix bug in displaying header line with a box face
2948         * src/xdisp.c (get_next_display_element): Handle the case when a
2949         display string acquires the box face from an underlying string,
2950         not from the buffer.  (Bug#23091)
2952 2016-03-21  Kaushal Modi  <kaushal.modi@gmail.com>
2954         Fix an Isearch var to be a string (Bug#23038)
2956         * isearch.el (isearch--describe-regexp-mode): The `description' var
2957           needs to always be a string.  Add the missing default case for the
2958           cond form that ensures that.
2960         Before this bug fix, for the events when `regexp-function' and
2961         `search-default-mode' both were nil, `description' also stayed nil.  So
2962         when `space-before' was non-nil, the "non-string" `description'
2963         (with a value of nil) got passed as an argument to
2964         `replace-regexp-in-string' (where a string was expected).  That caused
2965         the error described in Bug#23038.
2967 2016-03-21  Leo Liu  <sdl.web@gmail.com>
2969         Fix (args-out-of-range 1) error in cursor-sensor--detect
2971         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
2972           hard-code (point-min) as 1 which fails in narrowed buffers.
2974 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
2976         Render empty <ul><li><ul> correctly
2978         * lisp/net/shr.el (shr-tag-ul): Render empty <ul><li><ul>
2979         correctly (bug#22964).
2980         (cherry picked from commit 4f6ea3988b66cf132c67fd0cc26d12eb9a300ba1)
2982         Backport:
2984 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
2986         Ignore invalid base64 encoded embedded images
2988         * lisp/net/shr.el (shr-image-from-data): Ignore invalid base64
2989         encoded embedded images (bug#22928).
2990         (cherry picked from commit f2da80d0e1ccd121c4891e869a45aeb9c6b1795d)
2992         Backport:
2994 2016-03-20  Lars Magne Ingebrigtsen  <larsi@gnus.org>
2996         Fix <p> and <div> newlines with or without <li> in shr
2998         * lisp/net/shr.el (shr-ensure-newline): Respect that we're in
2999         a <li>, if we are, and don't insert newlines there.
3000         (shr-ensure-paragraph): When mixing newlines and paragraph
3001         ensurements, don't insert too many blank lines.
3002         (shr-tag-div): A <div> shouldn't introduce a paragraph, but a
3003         new line.
3004         (cherry picked from commit 292921facaff2f02ac4e8602c1f7ecbdcfe7ef45)
3006         Backport:
3008 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
3010         Avoid errors in 'newline'
3012         * lisp/simple.el (newline): Don't barf if invoked with
3013         non-positive argument in the middle of a line.  (Bug#22490)
3015 2016-03-19  Michael Albinus  <michael.albinus@gmx.de>
3017         Fix Bug#23032
3019         * doc/misc/eshell.texi (Arguments): Mention the pipe symbol in
3020         remote file names.  (Bug#23032)
3022 2016-03-19  Eli Zaretskii  <eliz@gnu.org>
3024         Adjudicate review comments in abbrevs.texi
3026         * doc/lispref/abbrevs.texi (Abbrev Files, Abbrev Expansion):
3027         * doc/emacs/abbrevs.texi (Dabbrev Customization): State the
3028         default values of variables.  Suggested by Steve Byrne
3029         <sbb@penguinis.org>.  (Bug#23016)
3031         * admin/release-process (Check manuals): Mark files reviewed by
3032         Steve Byrne.
3034 2016-03-18  Dmitry Gutov  <dgutov@yandex.ru>
3036         Fixup the "normal" matcher; highlight global var symbols, too
3038         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Highlight
3039         operator name symbols with the "normal" matcher (it actually
3040         needed updating).  Highlight global variable symbols, too.
3042 2016-03-18  Marcin Borkowski  <mbork@mbork.pl>
3044         Honor prefix arg in doc-view-next-line-or-next-page
3046         * lisp/doc-view.el (doc-view-next-line-or-next-page): Take the
3047         prefix argument into consideration when continuous scrolling is
3048         not in effect (i.e., by default) (bug#19559).
3050 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
3052         Port to strict C99 offsetof
3054         * src/bidi.c (bidi_copy_it):
3055         * src/lisp.h (CHAR_TABLE_EXTRA_SLOTS):
3056         Use only a single identifier as the second argument of offsetof.
3057         Found by using clang -pedantic.
3059 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
3061         Port to GTK with strict C11 compiler
3063         * src/gtkutil.c (xg_create_frame_widgets, xg_toggle_notify_cb):
3064         Cast from function type to void * where the C standard requires this.
3065         This works around a problem in the prototypes for
3066         g_signal_handler_find and g_signal_handlers_block_by_func, which
3067         use gpointer instead of GCallback.  Found by using gcc -pedantic.
3069 2016-03-18  Paul Eggert  <eggert@cs.ucla.edu>
3071         Port to GTK with strict C99 compiler
3073         * src/emacsgtkfixed.c: Use workaround for GNOME bug 683906 only
3074         in glib 2.35.6 and earlier, since the bug is fixed in 2.35.7.
3075         * src/emacsgtkfixed.c (EmacsFixedPrivate):
3076         * src/emacsgtkfixed.h (EmacsFixedClass):
3077         Remove duplicate typedef, which strict C99 does not allow (Bug#23003).
3079 2016-03-17  Anders Lindgren  <andlind@gmail.com>
3081         Avoid screen artifacts with new OS X visible bell after scrolling
3083         * src/nsterm.m (EmacsBell): Save NSView when displaying the
3084         visible bell and set `needsDisplay' when removed.
3085         (hide_bell): Trace.
3086         (ns_copy_bits): Trace.
3088 2016-03-17  Michael Albinus  <michael.albinus@gmx.de>
3090         Suppress some Tramp tests for OSX, do not merge with master
3092         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
3093         (tramp--test-utf8): Use it.  (Bug#22145)
3095 2016-03-17  Glenn Morris  <rgm@gnu.org>
3097         * lisp/progmodes/xref.el (xref-buffer-name, xref--window):
3098         Move definitions before use.
3100         * lisp/gnus/mm-decode.el (gnus-format-message): Autoload it.
3102         * lisp/mail/rmail.el (rmail-mime-entity-truncated): Declare.
3104 2016-03-17  Glenn Morris  <rgm@gnu.org>
3106         Address compilation warnings due to 2016-01-03 mml refactoring.
3108         * lisp/gnus/mml-sec.el (password-cache, mm-encode): Require.
3109         (message-options-get): Autoload.
3110         (message-options-set): Declare.
3111         (mml-secure-cache-passphrase, mml-secure-passphrase-cache-expiry):
3112         Simplify default value.
3113         * lisp/gnus/mml-smime.el (message-options-set): Remove declaration.
3114         * lisp/gnus/mml1991.el, lisp/gnus/mml2015.el:
3115         No longer a need for password-cache.
3117 2016-03-16  Stefan Monnier  <monnier@iro.umontreal.ca>
3119         * lisp/emacs-lisp/smie.el (smie-indent-keyword): Don't burp in strings
3121         (bug#22960).
3123 2016-03-16  Glenn Morris  <rgm@gnu.org>
3125         * lisp/dired-x.el (dired-omit-here-always): Correct error message
3126         for 2016-01-25 change.
3128         * lisp/dired-x.el (dired-omit-here-always): Replace undefined function
3129         removed 2016-01-30.
3131         * lisp/xml.el (xml-parse-tag-1): Replace undefined function.
3133 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
3135         Avoid segfaults due to frame image cache being absent
3137         * src/image.c (cache_image): If the frame doesn't have an image
3138         cache, create it.  (Bug#23028)
3140 2016-03-16  Eli Zaretskii  <eliz@gnu.org>
3142         Improve documentation of glyphless-character display
3144         * doc/emacs/display.texi (Text Display): Document and index the
3145         'glyphless-char' face.
3147 2016-03-16  Dmitry Gutov  <dgutov@yandex.ru>
3149         Support safe navigation operator in non-SMIE indentation code
3151         * lisp/progmodes/ruby-mode.el (ruby-calculate-indent):
3152         Support safe navigation operator in non-SMIE indentation code.
3153         Cherry-picked from
3154         https://github.com/ruby/ruby/commit/68e16ddd7961b86e5013e62ae2954e88638de058.
3156 2016-03-16  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3158         Move xsd:base64Binary decoding fix to debbugs.el 0.9.1
3160         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Do not
3161         assume xsd:base64Binary values are UTF-8 strings.
3162         (soap-decode-xs-basic-type): Likewise.
3163         (soap-invoke): Document xsd:base64Binary handling.
3165 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
3167         Fix Ruby's operator precedence
3169         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
3170         Rearrange the smie-precs->prec2 form.
3172 2016-03-15  Dmitry Gutov  <dgutov@yandex.ru>
3174         (ruby-interpolation-inside-another-interpolation): New failing test
3176         * test/automated/ruby-mode-tests.el
3177         (ruby-interpolation-inside-another-interpolation):
3178         New failing test.
3180 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
3182         Port to clang 3.7.0 on x86-64
3184         * configure.ac: Use AS_IF so that gl_WARN_ADD’s prerequisites are
3185         not done conditionally.  This helps clang, which needs
3186         -Wunknown-warning-option later when configured with warnings.
3187         * src/editfns.c (invalid_time): Now _Noreturn, since clang isn’t
3188         smart enough to figure this out on its own if warnings are enabled.
3189         (lisp_time_struct): Redo for clarity, and to pacify clang.
3190         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Don’t use
3191         uninitialized locals.  This avoids undefined behavior and pacifies
3192         clang.
3194 2016-03-15  Glenn Morris  <rgm@gnu.org>
3196         * test/automated/package-test.el (package-test-signed): Tweak skip
3197         condition, for hydra.
3199 2016-03-15  Paul Eggert  <eggert@cs.ucla.edu>
3201         Sync with gnulib
3203         This incorporates:
3204         2016-03-15 time_rz: port to clang -Wunused-const-variable
3205         2016-03-15 select: port more to Intel 2016.1.150 compiler
3206         * lib/sys_select.in.h, lib/time_rz.c: Copy from gnulib.
3208 2016-03-15  Eli Zaretskii  <eliz@gnu.org>
3210         Fix startup of "emacs -nw" on systems that CANNOT_DUMP
3212         * src/xdisp.c (syms_of_xdisp) <resize-mini-windows>: Initialize to
3213         nil.
3215         * lisp/loadup.el <resize-mini-windows>: Set to 'grow-only' after
3216         loading window.el.  (Bug#22975)
3218 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
3220         Do not tokenize a comment before continuation as ';'
3222         * lisp/progmodes/ruby-mode.el (ruby-smie--implicit-semi-p):
3223         Account for a comment right after point.
3225 2016-03-14  Dmitry Gutov  <dgutov@yandex.ru>
3227         Don't misindent arguments of a method call inside continuation
3229         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
3230         Use smie-indent-virtual instead of smie-rule-parent (bug#23015).
3231         Simplify the traversal loop.
3233 2016-03-14  Stefan Monnier  <monnier@iro.umontreal.ca>
3235         * src/keyboard.c (echo_keystrokes_p): Don't test cursor_in_echo_area
3237         (read_key_sequence): Test it here, as before.
3238         (bug#22825).
3240 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
3242         ASCII-only etc/NEWS etc.
3244         * etc/NEWS, nextstep/README: Revert the recently-added curved
3245         quotes, and stick to ASCII.  This typically involves replacing
3246         curved with straight quotes.  Since etc/NEWS is viewed so often by
3247         UTF-8-ignorant tools, rewrite its non-ASCII text to spell out
3248         Unicode, e.g., replace ‘‒’ with ‘U+2012 (FIGURE DASH)’.
3250 2016-03-14  Alan Mackenzie  <acm@muc.de>
3252         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
3254         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
3256         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
3257         rather than just using the cache variable c-state-cache.
3258         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
3259         to c-parse-state from other uses of the parse state cache.
3261         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
3262         c-self-bind-state-cache around the processing, replacing flawed bindings of
3263         c-state-cache.
3265 2016-03-14  Alan Mackenzie  <acm@muc.de>
3267         Fix a cacheing bug, which led to inordinately slow c-beginning-of-defun.
3269         * lisp/progmodes/cc-defs.el (c-self-bind-state-cache): New macro.
3271         * lisp/progmodes/cc-engine.el (c-ssb-lit-begin): Always call c-parse-state
3272         rather than just using the cache variable c-state-cache.
3273         (c-syntactic-skip-backward): Invoke c-self-bind-state-cache to isolate calls
3274         to c-parse-state from other uses of the parse state cache.
3276         * lisp/progmodes/cc-cmds.el (c-beginning-of-defun, c-end-of-defun): Invoke
3277         c-self-bind-state-cache around the processing, replacing flawed bindings of
3278         c-state-cache.
3280 2016-03-14  Kaushal Modi  <kaushal.modi@gmail.com>
3282         Fix Isearch prompt when invoked with an argument
3284         * lisp/isearch.el (isearch--describe-regexp-mode): With
3285         `search-default-mode' set to nil, if user does C-u C-s, the minibuffer
3286         now displays "Regexp I-search: " again.  But if the user has set
3287         `search-default-mode' to t, and then does C-s, the minibuffer now
3288         displays "I-search: " because the default search mode is now regexp
3289         mode.  Comments have been added to explain the priority of conditions
3290         in the `cond' form.  (Bug#22991)
3292 2016-03-14  Cesar Quiroz  <cesar.quiroz@gmail.com>  (tiny change)
3294         Fix a typo in the Emacs manual
3296         * doc/emacs/maintaining.texi (VC Directory Commands): Fix a typo
3297         in a command name.
3299 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
3301         Curved quotes in etc/NEWS etc.
3303         * etc/NEWS, nextstep/README: Prefer curved quotes in the
3304         recently-changed text documentation.  See:
3305         http://lists.gnu.org/archive/html/emacs-devel/2016-03/msg00860.html
3307 2016-03-14  Paul Eggert  <eggert@cs.ucla.edu>
3309         Fix some single quotes in documentation
3311         * doc/emacs/anti.texi (Antinews): Avoid confusion in info and PDF
3312         when documenting quoting styles.
3313         * etc/NEWS, nextstep/README: In these plain text files, quote
3314         'like this' consistently, rather than also (sometimes) ‘like this’
3315         or (more often) `like this'.
3317 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
3319         Make lisp-completion-at-point's argument optional
3321         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point): Make
3322         the argument optional, like it was before the rename.
3324 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
3326         Tweak the left precedence of '=>'
3328         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar): Tweak the left
3329         precedence of '=>', to improve indentation and sexp navigation.
3331 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
3333         Indent '.' relative to the first sibling expression
3335         * lisp/progmodes/ruby-mode.el (ruby-smie-rules):
3336         Indent '.' relative to the first sibling expression, instead of the
3337         parent token (bug#17213).
3339 2016-03-13  Dmitry Gutov  <dgutov@yandex.ru>
3341         Make '.' associative, for easier sexp navigation
3343         * lisp/progmodes/ruby-mode.el (ruby-smie-grammar):
3344         Make '.' associative, for easier sexp navigation.
3346 2016-03-13  Phillip Lord  <phillip.lord@russet.org.uk>
3348         Revert "Simplify "Visit New File" to "New File""
3350         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
3352 2016-03-12  Phillip Lord  <phillip.lord@russet.org.uk>
3354         Simplify "Visit New File" to "New File"
3356         * doc/emacs/files.texi,lisp/menu-bar.el (menu-bar-file-menu),
3357           lisp/startup.el(normal-mouse-start-screen,
3358           normal-no-mouse-startup-screen): Change label "Visit New File" to "New
3359           File".
3361 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
3363         Update Unicode notes for importing a new Unicode version
3365         * admin/notes/unicode: Mention the need to update otf-script-alist
3366         in fontset.el when importing data files from a new Unicode
3367         version.
3369 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
3371         Import new data files from Unicode 9.0.0beta
3373         * admin/unidata/UnicodeData.txt:
3374         * admin/unidata/Blocks.txt:
3375         * admin/unidata/BidiMirroring.txt:
3376         * admin/unidata/BidiBrackets.txt: Update from Unicode 9.0.0beta.
3377         * admin/unidata/unidata-gen.el (unidata-gen-files): Bind
3378         'coding-system-for-read' to 'utf-8, as various Unicode data files
3379         now actually use non-ASCII characters.
3380         (unidata-setup-list, unidata-get-name): Support the new Tangut
3381         Ideographs block.
3383         * lisp/international/characters.el (standard-case-table): Add new
3384         characters from Unicode 9.0.0.
3385         (standard-category-table): Add Arabic block u+08A0..u+08FF.  Add
3386         Cyrillic Extended-C block.
3387         (char-width-table): Update ranges per Unicode 9.0.0.
3388         * lisp/international/fontset.el (script-representative-chars): Add
3389         new scripts defined by Unicode 9.0.0.
3390         (otf-script-alist): Add new OTF script tags.
3391         * lisp/international/mule-cmds.el (ucs-names): Update ranges per
3392         Unicode 9.0.0 additions.
3394 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
3396         Avoid errors in forms-mode when default major mode is text
3398         * lisp/forms.el (forms-mode): Bind
3399         change-major-mode-with-file-name to nil when calling
3400         set-visited-file-name.  (Bug#22982)
3402 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
3404         Avoid crashes at startup on systems that CANNOT_DUMP
3406         * src/xdisp.c (syms_of_xdisp) <redisplay--inhibit-bidi>: New
3407         boolean variable.
3408         (init_iterator, reseat_to_string)
3409         (Fcurrent_bidi_paragraph_direction)
3410         (Fbidi_find_overridden_directionality): Use
3411         redisplay--inhibit-bidi instead of purify-flag, to determine when
3412         it's safe to reorder bidirectional text.
3414         * lisp/loadup.el (redisplay--inhibit-bidi): Set to t at the
3415         beginning of the file.  Reset to nil when charprop.el is
3416         successfully loaded, or when we are going to dump, whichever
3417         happens last.  (Bug#22975)
3419 2016-03-12  Eli Zaretskii  <eliz@gnu.org>
3421         Fix documentation of seq.el functions
3423         * doc/lispref/sequences.texi (Sequence Functions): Fix typos.  Add
3424         cross-references.  Fix formatting.  (Bug#22992)
3426 2016-03-11  Dmitry Gutov  <dgutov@yandex.ru>
3428         Support Ruby 2.3.0's safe navigation operator
3430         * lisp/progmodes/ruby-mode.el (ruby-smie--forward-token)
3431         (ruby-smie--backward-token): Tokenize '&.' as '.'.
3432         (ruby-smie--implicit-semi-p): Check for possible '&' before '.'.
3434         * test/indent/ruby.rb: Add an example using safe navigation
3435         operator.  Fix a syntax error in existing example.
3437 2016-03-11  John Wiegley  <johnw@newartisans.com>
3439         Update Emacs manual section related to character folding
3441         * search.texi: Character folding is not on by default.
3443 2016-03-11  Eli Zaretskii  <eliz@gnu.org>
3445         Update admin/notes/unicode
3447         * admin/notes/unicode: Update the list of files from the UCD we
3448         are using.  Mention the possible need to change 'ucs-names' when
3449         importing a new version of the Unicode Standard.
3451 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
3453         Add symref-filepattern entries for c?perl-mode
3455         * lisp/cedet/semantic/symref/grep.el
3456         (semantic-symref-filepattern-alist): Add entries for perl-mode and
3457         cperl-mode.
3459 2016-03-10  Ken Raeburn  <raeburn@raeburn.org>
3461         Don't use XRANDR 1.3 extensions if the server doesn't support them.
3463         * src/xterm.h (struct x_display_info): Add fields to save XRANDR
3464         version number.
3465         * src/xfns.c (x_get_monitor_attributes): Save the version numbers
3466         after querying the X server.
3467         (x_get_monitor_attributes_xrandr): Don't use XRRGetOutputPrimary or
3468         XRRGetScreenResourcesCurrent if the server doesn't support at least
3469         RANDR version 1.3.  Conditionalize the code blocks on compiling
3470         against library version 1.3 or better, rather than feature tests for
3471         each function.
3472         * configure.ac: Stop testing for those two functions.
3474 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
3476         Sync with gnulib
3478         This incorporates:
3479         2016-03-08 intprops: make .h file license match module
3480         2016-03-08 acl: fix missing return on Cygwin
3481         2016-03-05 extern-inline: port to PGI CC
3482         * doc/misc/texinfo.tex, lib/intprops.h, lib/set-permissions.c:
3483         * m4/extern-inline.m4:
3484         Copy from gnulib.
3486 2016-03-10  Paul Eggert  <eggert@cs.ucla.edu>
3488         Rework C source files to avoid ^(
3490         Work around Bug#22884 by rewording comments and strings to avoid ‘(’
3491         at the start of a line unless it starts a function.  This change
3492         is a short-term hack; in the longer run we plan to fix cc-mode’s
3493         performance for C files that have ‘(’ at the start of a line in a
3494         comment or string.
3496 2016-03-10  Eli Zaretskii  <eliz@gnu.org>
3498         By default, etags produces unqualified Perl tag names
3500         * lib-src/etags.c (Perl_functions): Produce unqualified names,
3501         unless -Q was specified.
3502         (print_help): Update the description of -Q.
3504         * doc/man/etags.1: Update the documentation of -Q.
3506         * test/etags/ETAGS.good_1:
3507         * test/etags/ETAGS.good_2:
3508         * test/etags/ETAGS.good_3:
3509         * test/etags/ETAGS.good_4:
3510         * test/etags/ETAGS.good_5:
3511         * test/etags/CTAGS.good: Adapt the expected test results to the
3512         changed Perl functionality.
3514 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
3516         Indent methods with keyword names correctly
3518         * lisp/progmodes/ruby-mode.el (ruby-smie--at-dot-call):
3519         Rename to ruby-smie--before-method-name.  Now also check if we're
3520         after a 'def' keyword.  Update both callers.
3522 2016-03-10  Dmitry Gutov  <dgutov@yandex.ru>
3524         Propertize character literals and special global variables differently
3526         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Propertize
3527         character literals and global variables with special names with
3528         prefix and symbol syntax classes, for SMIE to tokenize them
3529         together automatically.
3530         (ruby-font-lock-keywords): Fix an old regression in highlighting
3531         character literals.
3533 2016-03-09  John Wiegley  <johnw@newartisans.com>
3535         Change how /etc/NEWS presents character folding
3537         * NEWS: Note that character folding is no longer the default.
3539 2016-03-09  John Wiegley  <johnw@newartisans.com>
3541         Revert "Revert "Backport: * lisp/isearch.el: Turn char-folding off by default""
3543         This reverts commit a91b4b51ddf2575d821adb8b84fdf32cff83886e.
3545 2016-03-09  Andreas Schwab  <schwab@linux-m68k.org>
3547         Properly handle lambda as read function (bug 22961)
3549         * src/lread.c (readchar): Be more strict about checking for
3550         string in cons for read_vector.
3551         (unreadchar): Likewise.
3553 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
3555         Propertize operator symbol names with symbol syntax class
3557         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
3558         Do it here.
3559         (ruby-font-lock-keywords): Instead of handling them here.  Leave
3560         highlighting them to the "normal" matcher, because now we can.
3561         (ruby-smie--forward-token, ruby-smie--backward-token):
3562         Likewise, don't special-case operator symbols anymore.
3563         (ruby-smie--args-separator-p): Simplify the regexp, match operator
3564         names with \s_.
3565         (ruby-smie--implicit-semi-p): Handle the special cases of ? and =
3566         at EOL the same way: check if the character has been assigned the
3567         symbol syntax class by syntax-propertize.
3569 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
3571         Stop recognizing :#{} as symbol in ruby-mode
3573         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords): Remove
3574         the weird part that recognized colon followed by interpolation
3575         construct without quotes (e.g. ':#{abc}') as symbol, which is just a
3576         syntax error in any modern version of Ruby.  Fix nearby bug reference.
3578 2016-03-09  Dmitry Gutov  <dgutov@yandex.ru>
3580         Allow using the left shift operator without spaces on both sides
3582         * lisp/progmodes/ruby-mode.el (ruby-singleton-class-p): Rename to
3583         ruby-verify-heredoc, reverse the meaning of the return value, and
3584         short-circuit if preceded by a symbol not separated by whitespace.
3586         * test/automated/ruby-mode-tests.el (ruby-no-heredoc-left-shift)
3587         (ruby-no-heredoc-class-self): New tests.
3589 2016-03-08  Andreas Schwab  <schwab@linux-m68k.org>
3591         Properly handle unquoting in wdired (bug 22938)
3593         The recorded old names are not quoted, don't unquote them.
3595         * lisp/wdired.el (wdired-normalize-filename): Add argument
3596         unquotep, only unquote if non-nil.
3597         (wdired-get-filename): Don't unquote the old file name.
3598         (wdired-get-previous-link): Always unquote.
3600 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
3602         Allow splat operator before percent literal
3604         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
3605         Allow splat operator before percent literal.
3607 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
3609         Don't apply the return value of goto-char as syntax class
3611         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize): Don't
3612         apply the return value of goto-char as syntax class.
3614 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
3616         Guard against nested percent literals
3618         * lisp/progmodes/ruby-mode.el
3619         (ruby-syntax-propertize-percent-literal):
3620         Don't check the syntax status.
3621         (ruby-syntax-propertize): Check it here.  And also guard against
3622         being in a larger percent literal.
3624         * test/automated/ruby-mode-tests.el
3625         (ruby-no-nested-percent-literals): New test.
3627 2016-03-06  Dmitry Gutov  <dgutov@yandex.ru>
3629         Recognize iuwu-mod after an escaped newline
3631         * lisp/progmodes/ruby-mode.el (ruby-smie--bosp): Check if the
3632         newline is escaped.
3633         (ruby-smie-rules): Indent iuwu-mod after an escaped newline
3634         correctly.
3636 2016-03-06  Andreas Schwab  <schwab@linux-m68k.org>
3638         Fix symbolic mode string conversion for s and t
3640         * lisp/files.el (file-modes-char-to-right): Fix values for ?s and
3641         ?t.
3642         (file-modes-symbolic-to-number): Default to a for ts permissions.
3644 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
3646         Update 'ucs-names' database
3648         * lisp/international/mule-cmds.el (ucs-names): Update used and
3649         unused ranges from the latest UnicodeData.txt.
3651 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
3653         Improve doc string of 'shell-command'
3655         * lisp/simple.el (shell-command): Mention that COMMAND is prompted
3656         for.  (Bug#22926)
3658 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
3660         Make the code in movemail_strftime more general
3662         * lib-src/movemail.c (movemail_strftime): Transform the format
3663         string passed by the caller instead of using a separate format
3664         string.
3666 2016-03-06  Eli Zaretskii  <eliz@gnu.org>
3668         Speed up redisplay of binary files with long series of nulls
3670         * src/bidi.c (bidi_resolve_weak): Avoid entering a loop searching
3671         for a character needed for resolving the type of a series of BN
3672         and ET characters, as required by rule W5 of UAX#9, if the results
3673         of the resolution are known in advance, because we are at level
3674         zero, and the previous strong character was L.
3675         (bidi_resolve_neutral): Partially resurrect the optimization for a
3676         long series of control characters in an otherwise strictly L2R
3677         text.
3678         (bidi_level_of_next_char): Don't enter the loop that searches for
3679         a paragraph separator if the current character is already at base
3680         embedding level.  (Bug#22739)
3682 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
3684         Remove the highlighting support for quoting 'like this' inside Lisp docstrings
3686         Remove the highlighting support for quoting 'like this' inside
3687         Lisp docstrings.  This part of
3688         c4151ebe15479de4c2e511b068cdf9af6a4576cf seems to have been
3689         unintentional, considering substitute-command-keys gives wrong
3690         output for such usage.
3691         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
3692         (lisp-cl-font-lock-keywords-2): Do not highlight text between two
3693         straight quotes as symbol.
3695 2016-03-05  Paul Eggert  <eggert@cs.ucla.edu>
3697         Restore leading space in movemail pop output
3699         * lib-src/movemail.c (movemail_strftime) [WINDOWSNT]: New function.
3700         (strftime) [WINDOWSNT]: New macro.
3701         (mbx_delimit_begin): Go back to previous version of this code,
3702         now that there’s a special-purpose WINDOWSNT implementation
3703         that should do the right thing.  That way, the output continues
3704         to use leading space rather than leading zero for day of month.
3706 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
3708         Fix bidi-paragraph-direction in Rmail view buffer
3710         * lisp/mail/rmail.el (rmail-show-message-1): Reset
3711         bidi-paragraph-direction to nil before formatting the message for
3712         display.
3714 2016-03-05  Dmitry Gutov  <dgutov@yandex.ru>
3716         Don't misindent computed property generator methods
3718         * lisp/progmodes/js.el (js--looking-at-operator-p):
3719         Don't misindent computed property generator methods
3720         (https://github.com/mooz/js2-mode/issues/317).
3722 2016-03-05  Eli Zaretskii  <eliz@gnu.org>
3724         Fix mbox files produced by movemail on MS-Windows
3726         * lib-src/movemail.c (mbx_delimit_begin): Use portable strftime
3727         format specifiers, as at least the MS-Windows version of strftime
3728         doesn't support %e and %T.
3730 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
3732         doc string file descriptor exhaustion fix
3734         * src/doc.c (get_doc_string): Move newly-added check to a better
3735         location (Bug#22814).
3737 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
3739         Fix Bug#22814
3741         * src/doc.c (get_doc_string): Raise an error in case too many
3742         files are open.  (Bug#22814)
3744 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
3746         Fix insertion of edited servers in the dribble file
3748         * lisp/gnus/gnus-srvr.el (gnus-server-update-server): Don't
3749         insert explicit newlines, because they're quoted (bug#22903).
3751         Backport:
3753         (cherry picked from commit ca4e30058eba0531f38fff75f14734acffab84ea)
3755 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
3757         Fix previous fix of enlarge-/shrink-window
3759         * lisp/window.el (enlarge-window, shrink-window): Consistently
3760         signal user-error instead of error.  Resize minibuffer window by
3761         delta lines instead of pixels.  When a window cannot be resized,
3762         signal an error only when this function was invoked by a command
3763         in the enlarge-/shrink-window group (this restores the behavior
3764         before the fix of bug#22723 for the non-interactive case).
3766 2016-03-03  Artur Malabarba  <bruce.connor.am@gmail.com>
3768         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
3770 2016-03-03  Mark Oteiza  <mvoteiza@udel.edu>
3772         Complete temperature units in calc-convert-temperature
3774         * lisp/calc/calc-units.el (calc-convert-temperature): Complete with
3775         temperature units in math-standard-units.
3777 2016-03-02  Dmitry Gutov  <dgutov@yandex.ru>
3779         Make sure to use case-sensitive search
3781         * lisp/progmodes/xref.el (xref-collect-references): Make sure to
3782         use case-sensitive search.
3784 2016-03-02  Ulf Jasper  <ulf.jasper@web.de>
3786         Prevent infinite loop on not-well-formed xml. (Bug#16344)
3788         * lisp/xml.el (xml-parse-tag-1): Prevent inifinite loop. (Bug#16344)
3789         * test/automated/xml-parse-tests.el (xml-parse-tests--bad-data): Add
3790           test cases for Bug#16344.
3792 2016-03-02  Alan Third  <alan@idiocy.org>
3794         Add the missing test case for the previous patch
3796         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
3797         any processing.
3798         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
3799         DABBREV--SUBSTITUTE-EXPANSION.
3800         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
3802 2016-03-02  Alan Third  <alan@idiocy.org>
3804         Use the correct dabbrev expansion
3806         lisp/dabbrev.el (dabbrev--substitute-expansion): Return EXPANSION after
3807         any processing.
3808         lisp/dabbrev.el (dabbrev-expand): Set EXPANSION to the return value of
3809         DABBREV--SUBSTITUTE-EXPANSION.
3810         test/automated/dabbrev-tests.el (dabbrev-expand-test): Test for bug#1948.
3812 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
3814         Bump version to 25.0.92
3816         * README:
3817         * configure.ac:
3818         * msdos/sed2v2.inp: Bump version to 25.0.92.
3820 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
3822         * etc/AUTHORS: Update the AUTHORS file
3824 2016-03-02  Nicolas Petton  <nicolas@petton.fr>
3826         authors.el updates
3828         * admin/authors.el (authors-ignored-files): Addition.
3830 2016-03-02  Michael Albinus  <michael.albinus@gmx.de>
3832         Fix Bug#22859
3834         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
3835         event in case of kqueue and file1 is nil.  (Bug#22859)
3837 2016-03-01  Eli Zaretskii  <eliz@gnu.org>
3839         Fix reordering of bidi text in an isolate inside an override
3841         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
3842         of FSI with either LRI or RLI, as determined by the first strong
3843         directional character in the isolate.  This prevents failure to
3844         isolate when the FSI...PDI text is inside a directional override.
3845         (Bug#22786)
3847 2016-03-01  Alan Mackenzie  <acm@muc.de>
3849         Document c-guess-basic-syntax in the CC Mode manual.
3851         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
3852         pxrefs to Custom Line-Up and Other Indentation.
3853         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
3854         Syntactic Analysis.
3856 2016-03-01  Michael Albinus  <michael.albinus@gmx.de>
3858         Fix targets in test/automated/Makefile.in
3860         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
3861         empty target and target all.
3863 2016-03-01  Leo Liu  <sdl.web@gmail.com>
3865         Comment on last change to define-derived-mode
3867         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
3869 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
3871         Allow binding `url-mime-accept-string'
3873         * lisp/url/url-http.el (url-http): Allow binding
3874         `url-mime-accept-string' (bug#22855).
3876         Backport:
3878         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
3880 2016-03-01  Lars Ingebrigtsen  <larsi@gnus.org>
3882         Also allow setting the paragraph direction to nil
3884         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
3885         setting the paragraph direction to nil ("auto").
3887 2016-02-29  Anders Lindgren  <andlind@gmail.com>
3889         Made the new OS X visible bell more visible.
3891         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
3892           "caution" image five times, as the image in its original size
3893           was hard to see.
3895 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
3897         Use the correct background color when filling nested <divs>
3899         * lisp/net/shr.el (shr-face-background): Return the first
3900         background, because that's the one that's visible (bug#22680).
3902         Backport:
3904         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
3906 2016-02-29  Lars Ingebrigtsen  <larsi@gnus.org>
3908         Make <div> in <li> not insert extra newlines
3910         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
3911         extra newlines (bug#19587).
3913         Backport:
3915         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
3917 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
3919         Uncomment the next-error-function integration in xref
3921         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
3922         Uncomment the next-error-function integration
3923         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
3925 2016-02-29  Dmitry Gutov  <dgutov@yandex.ru>
3927         Remove the word "valid", to avoid ambiguity
3929         * doc/emacs/maintaining.texi (Identifier Search)
3930         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
3932 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
3934         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
3936 2016-02-28  Michael Albinus  <michael.albinus@gmx.de>
3938         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
3940         * etc/NEWS:
3941         * etc/PROBLEMS: Mention this.
3943         * lisp/autorevert.el (global-auto-revert-mode): Set
3944         `auto-revert-use-notify' to nil.  (Bug#22814)
3946 2016-02-28  Paul Eggert  <eggert@cs.ucla.edu>
3948         * etc/TODO: Minor quoting and grammar fixes.
3950 2016-02-28  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
3952         Fix ModelSim error parsing
3954         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
3955         ModelSim error parsing (bug#5768).
3957 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
3959         Make parse-time-string-chars faster
3961         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
3962         up the code (backport:).
3964 2016-02-28  Lars Ingebrigtsen  <larsi@gnus.org>
3966         Add a eww command to toggle paragraph direction
3968         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
3969         command and keystroke.
3971         * doc/misc/eww.texi (Advanced): Mention the `D' command.
3973 2016-02-27  Glenn Morris  <rgm@gnu.org>
3975         * nextstep/WISHLIST: Merge into etc/TODO and remove.
3977         * etc/TODO: Merge in items from nextstep/WISHLIST.
3978         * nextstep/README: Update for this change.
3980 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
3982         Fix char signedness issue in bidi code
3984         * src/dispextern.h (struct bidi_t): Change type of resolved_level
3985         and isolate_level to signed char.  (Bug#22830)
3987 2016-02-27  Andreas Schwab  <schwab@linux-m68k.org>
3989         * lib-src/pop.c (socket_connection): Fix format string.
3991 2016-02-27  Eli Zaretskii  <eliz@gnu.org>
3993         Avoid inflooping in thing-at-point-looking-at
3995         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
3996         with regular expressions whose matching doesn't move point.
3997         (Bug#22756)
3998         Describe the argument DISTANCE in the doc string.
4000 2016-02-27  Leo Liu  <sdl.web@gmail.com>
4002         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
4004 2016-02-26  Michael Albinus  <michael.albinus@gmx.de>
4006         etc/PROBLEMS: Mention problems with using file descriptors
4008         * etc/PROBLEMS: Mention problems with using file descriptors
4009         of kqueue file notification library.
4011 2016-02-26  Kaushal Modi  <kaushal.modi@gmail.com>
4013         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
4015 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
4017         Remove unneeded workaround in xftfont.c
4019         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
4020         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
4021         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
4023 2016-02-25  Stefan Monnier  <monnier@iro.umontreal.ca>
4025         * lisp/saveplace.el (save-place-local-mode): New minor mode
4027         (toggle-save-place): Define as obsolete alias.
4028         (save-place--setup-hooks): New function.
4029         (save-place-mode): Use it.
4031 2016-02-25  Eli Zaretskii  <eliz@gnu.org>
4033         Fix redisplay on a TTY after 'make-frame'
4035         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
4036         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
4038 2016-02-25  Alan Mackenzie  <acm@muc.de>
4040         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
4042         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
4043         `syntax-after' to ensure syntax-table text properties are respected.
4045 2016-02-25  Magnus Henoch  <magnus.henoch@gmail.com>
4047         Input method polish-slash should not use keyboard translation
4049         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
4050         polish-slash should not use keyboard translation (bug#19081).
4052 2016-02-25  Chris Feng  <chris.w.feng@gmail.com>
4054         Fix an assertion
4056         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
4057         implies start == 0) separately.
4059 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
4061         Fix 'toggle-save-place'
4063         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
4064         support save-place in the buffer.  Autoload the command.
4066 2016-02-24  Stefan Monnier  <monnier@iro.umontreal.ca>
4068         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
4070         * src/keyboard.c (read_key_sequence): Don't inadvertently set
4071         immediate_echo when we don't want any echo-keystrokes.
4072         (echo_keystrokes_p): Move earlier.
4074 2016-02-24  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
4076         Minor fixes in calculator.el
4078         * lisp/calculator.el (calculator-mode-map): Bind `E' for
4079         `calculator-exp'.
4080         (calculator-last-input): Fix a bug with pressing F1.
4081         (Bug#20764)
4083 2016-02-24  Anders Lindgren  <andlind@gmail.com>
4085         Update HISTORY section in readme for the NextStep interface.
4087         * nextstep/README: Update HISTORY after suggestion
4088         from former maintainer Adrian Robert.
4090 2016-02-24  Eli Zaretskii  <eliz@gnu.org>
4092         Improve documentation of 'save-place-mode'
4094         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
4095         turning on 'save-place-mode' globally.
4097         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
4098         on the mode in all buffers.
4100 2016-02-24  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
4102         Allocate glyph matrices for the initial frame
4104         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
4106         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
4108 2016-02-24  Lars Ingebrigtsen  <larsi@gnus.org>
4110         Fix white space in last checkin
4112 2016-02-24  Dima Kogan  <gnuplot@dima.secretsauce.net>
4114         Make `insert-pair' always leave the cursor where documented
4116         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
4117         insert-pair states that after insertion, the point ends up
4118         after the opening character. This was not true if the pair was
4119         inserted to surround a region (bug#16949).
4121 2016-02-24  Kaushal Modi  <kaushal.modi@gmail.com>
4123         etc/NEWS: Mention the new second parameter to `package-install'
4125         * etc/NEWS: Mention the new second parameter to
4126         `package-install' (bug#22784).
4128 2016-02-24  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
4130         Highlight assignments in Makefiles more correctly
4132         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
4133         Highlight assignments preceded by a TAB character correctly
4134         (bug#20787).
4137         Backport:
4139         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
4141 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
4143         Improve documentation of focus-related hooks
4145         * doc/lispref/commands.texi (Focus Events): Mention focus-related
4146         hooks.  (Bug#21728)
4148 2016-02-23  Eli Zaretskii  <eliz@gnu.org>
4150         Further improve doc string of 'disable-point-adjustment'
4152         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
4153         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
4155 2016-02-23  Michael Albinus  <michael.albinus@gmx.de>
4157         Further adaptions in file-notify-tests.el for w32notify
4159         * test/automated/file-notify-tests.el
4160         (file-notify--test-read-event-timeout, file-notify--test-timeout):
4161         Decrease values.
4162         (file-notify-test03-autorevert)
4163         (file-notify-test04-file-validity)
4164         (file-notify-test05-dir-validity): Run tests also for w32notify.
4165         (file-notify-test08-watched-file-in-watched-dir):
4166         Adapt expected events for w32notify.
4168 2016-02-23  Jan Tatarik  <jan.tatarik@gmail.com>
4170         Don't bug out on localised dates in gnus-icalendar
4172         * lisp/gnus/gnus-icalendar.el
4173         (gnus-icalendar-event:org-timestamp): Don't bug out on
4174         localised dates.
4176 2016-02-23  Drew Adams  <drew.adams@oracle.com>
4178         (ls-lisp-insert-directory): Make -B work
4180         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
4181         (bug#20776).
4183         Backport:
4185         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
4187 2016-02-23  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
4189         Make buttons in header lines work
4191         * lisp/help-mode.el (help-button-action): `help-xref-button' in
4192         header line doesn't work (bug#21024).
4194         Backport:
4196         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
4198 2016-02-23  Christopher Wellons  <wellons@nullprogram.com>
4200         Make setf for frame-height/width work again
4202         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
4203         frame-height/width work again (bug#21979).
4205 2016-02-23  Łukasz Stelmach  <stlman@poczta.fm>
4207         Encode header strings before printing
4209         * lisp/ps-print.el (ps-generate-header-line): Encode the
4210         header strings to avoid problems with non-ASCII headers
4211         (bug#22611).
4213         Backport:
4215         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
4217 2016-02-23  Nicolas Richard  <youngfrog@members.fsf.org>
4219         (cl-union): Do not ignore :test argument when lists are equal.
4221         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
4223         * test/automated/cl-seq-tests.el: New file (bug#22729).
4225 2016-02-23  Lars Ingebrigtsen  <larsi@gnus.org>
4227         Add `isearch' to `basic-faces'
4229         * doc/lispref/display.texi (Basic Faces): Mention the isearch
4230         and lazy-highlight faces.
4232         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
4233         group, too (bug#22760).
4235 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
4237         Make $, : and @ "prefix characters" in ruby-mode
4239         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
4240         syntax classes of $, : and @ to "prefix character"
4241         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
4242         (ruby-syntax-propertize): Undo that specifically for colons
4243         followed by an opening paren or bracket.
4244         (ruby-font-lock-keyword-beg-re): Include colon character.
4245         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
4246         not being a symbol constituent anymore.
4248 2016-02-23  Dmitry Gutov  <dgutov@yandex.ru>
4250         Make find-tag-default-bounds more strict
4252         * lisp/subr.el (find-tag-default-bounds): Delegate to
4253         bounds-of-thing-at-point (bug#22692).
4255 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
4257         Minor fixes in filenotify.el
4259         * lisp/filenotify.el (top): Require 'cl-lib.
4260         (file-notify--rm-descriptor)
4261         (file-notify--event-watched-file): Use cl-caadr.
4262         (file-notify-callback): Handle also `ignore' events from inotify.
4264 2016-02-22  Michael Albinus  <michael.albinus@gmx.de>
4266         Additional fixes for file notification
4268         * lisp/filenotify.el (top): Require 'cl when compiling.
4269         (file-notify--event-watched-file): New defun.
4270         (file-notify--rm-descriptor, file-notify-callback):
4271         Handle case of several monitors running in parallel.
4273         * test/automated/file-notify-tests.el
4274         (file-notify--test-event-test): Simplify test.
4275         (file-notify--test-with-events): Get rid of outer definition.
4276         Check also results of tests performed in callbacks.
4277         (file-notify-test02-events): No wrapping when calling
4278         `file-notify-rm-watch'.  No special checking for callback tests.
4279         (file-notify-test07-backup): Adapt expected events for gfilenotify.
4280         (file-notify-test08-watched-file-in-watched-dir): Improve.
4282 2016-02-22  Eli Zaretskii  <eliz@gnu.org>
4284         Fix documentation of 'global-disable-point-adjustment'
4286         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
4287         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
4289 2016-02-22  Daiki Ueno  <ueno@gnu.org>
4291         Set file modes of pinentry socket for extra safety
4293         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
4294         (pinentry-start): Change the file modes of the socket file to 0700.
4295         This is just for extra safety since the parent directory is already
4296         protected with `server-ensure-safe-dir'.
4298 2016-02-22  Daiki Ueno  <ueno@gnu.org>
4300         Clarify GnuPG version compatibility chapter
4302         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
4303         description a bit clearer.
4305 2016-02-22  Daiki Ueno  <ueno@gnu.org>
4307         Revert "Change the default socket location for pinentry"
4309         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
4310         It turned out that the address is fixed in Pinentry itself.
4312 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
4314         Kill off xref--display-history
4316         Now that the core workflow keeps the xref window visible, there's
4317         less value in storing this history.  And it never was
4318         comprehensive enough to undo scrolling changes.
4319         * lisp/progmodes/xref.el (xref--display-history)
4320         (xref--save-to-history, xref-quit): Remove.
4321         (xref--show-pos-in-buf): Update accordingly.
4322         (xref--xref-buffer-mode-map): Remove xref-quit binding.
4324 2016-02-21  Dmitry Gutov  <dgutov@yandex.ru>
4326         Keep the xref buffer visible until the user quits it explicitly
4328         * lisp/progmodes/xref.el (xref--pop-to-location):
4329         Rename WINDOW argument to ACTION.
4330         (xref--with-dedicated-window): New macro.
4331         (xref--show-pos-in-buf): Rename from `xref--display-position'.
4332         Add and handle new argument, SELECTED.  Use the above macro.
4333         (xref--show-location): Add SELECTED argument.
4334         (xref-show-location-at-point): Make an effort to avoid the
4335         original window when showing the location.
4336         (xref-goto-xref): Don't quit the xref window (bug#20487 and
4337         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
4338         (xref--query-replace-1): Use xref--with-dedicated-window as well.
4339         (xref--next-error-function): Call xref--show-location instead of
4340         xref--pop-to-location.
4341         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
4342         Only pass that value to xref--pop-to-location.  Pass the current
4343         selected window to xref-show-xrefs-function as the `window'
4344         property.
4345         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
4346         to DISPLAY-ACTION as well.
4348 2016-02-21  Daiki Ueno  <ueno@gnu.org>
4350         Change the default socket location for pinentry
4352         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
4353         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
4354         ~/.emacs.d/pinentry.
4355         (pinentry-start): Change the file modes of the socket file to 0700.
4356         This is just for extra safety since the parent directory is already
4357         protected with `server-ensure-safe-dir'.
4359 2016-02-21  Daiki Ueno  <ueno@gnu.org>
4361         Mention how to enable pinentry feature
4363         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
4364         * lisp/net/pinentry.el: Likewise.
4366 2016-02-21  Paul Eggert  <eggert@cs.ucla.edu>
4368         Sync with gnulib
4370         This incorporates:
4371         2016-02-10 stdalign: port to older HP and IBM cc
4372         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
4374 2016-02-21  David Engster  <deng@randomsample.de>
4376         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
4378         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
4379           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
4380           not an idle hook, so it's not appropriate to call it there. It will
4381           already be called in the `semantic-idle-work-core-handler', which
4382           runs when Emacs is actually idle.
4384 2016-02-21  David Engster  <deng@randomsample.de>
4386         Restore point when writing semantic table to disk
4388         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
4389           `semantic-fetch-tags' in `save-excursion', since it might move point
4390           in current buffer. (Bug #22287)
4392 2016-02-21  Daiki Ueno  <ueno@gnu.org>
4394         Mention pinentry.el in epa manual
4396         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
4397         describing the differences between three GnuPG branches, and how
4398         to enable pinentry.el.
4399         (Caching Passphrases): Add xref to the compatibility chapter.
4401 2016-02-21  Michael Albinus  <michael.albinus@gmx.de>
4403         Fix Bug#22736
4405         * lisp/filenotify.el (file-notify-callback): Use the proper
4406         descriptor when calling the callback.  (Bug#22736)
4408         * test/automated/file-notify-tests.el
4409         (file-notify--test-event-handler): Deactivate trace.
4410         (file-notify-test08-watched-file-in-watched-dir): Bind
4411         `file-notify--test-tmpfile' temporarily in `dir-callback'.
4413 2016-02-21  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
4415         Grammar fix in doc string
4417         * lisp/custom.el (defgroup): Grammar fix in doc string.
4419 2016-02-20  Daiki Ueno  <ueno@gnu.org>
4421         Naming fix for consistency
4423         * lisp/epg-config.el (epg-find-configuration): Rename from
4424         `epg-configuration-find' to be consistent with other epg-* functions.
4425         Change all callers.
4427 2016-02-20  Daiki Ueno  <ueno@gnu.org>
4429         Prefer customized value for GnuPG executable
4431         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
4432         configuration if it is already set with custom.  (Bug#22747)
4434 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
4436         Fix memory reservation on MS-Windows
4438         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
4439         units.  This avoids leaving gaps in reserved memory regions that
4440         no one can use, since memory reservation must produce 64KB-aligned
4441         addresses.  (Bug#22526)
4443 2016-02-20  Anders Lindgren  <andlind@gmail.com>
4445         Update NextStep readme and add wish list.
4447         * nextstep/README: Rewritten from scratch. New sections on
4448         "History", "Overview of Cocoa and Objective-C", "Guidelines",
4449         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
4450         * nextstep/WISHLIST: New file containing list of issues and ideas
4451         associated with the NS port of Emacs.
4453 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
4455         Report also result in `file-notify--test-event-handler'
4457 2016-02-20  Michael Albinus  <michael.albinus@gmx.de>
4459         Improve file-notify-test08-watched-file-in-watched-dir
4461         * test/automated/file-notify-tests.el (file-notify--test-desc2):
4462         New variable.
4463         (file-notify--test-cleanup): Use it.
4464         (file-notify--test-event-handler): Enable trace.
4465         (file-notify-test08-watched-file-in-watched-dir): Tag it as
4466         :expensive-test.  Rewrite callbacks to use
4467         `file-notify--test-event-handler'.  Read events in loop.  Check
4468         `file-notify--test-results'.
4469         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
4471 2016-02-20  Stephen Berman  <stephen.berman@gmx.net>
4473         Fix todo-mode item date editing bugs
4475         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
4476         range error by making sure the value of the numerical month date
4477         component cannot be nil.  Prevent wrong type error on trying to edit
4478         day number in February by making sure numerical instead of string
4479         value of the year component is passed to todo-read-date.
4480         (todo-read-date): When using the numerical month date component make
4481         sure to use `*' for an arbitrary month instead of its numerical value.
4483 2016-02-20  Eli Zaretskii  <eliz@gnu.org>
4485         Fix "[:upper:]" for non-ASCII characters
4487         * src/regex.c (re_match_2_internal): Support [:upper:] and
4488         [:lower:] for non-ASCII characters.  (Bug#18150)
4490 2016-02-20  Lars Ingebrigtsen  <larsi@gnus.org>
4492         Allow customising the article mode cursor behavior
4494         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
4496         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
4497         (gnus-article-mode): Use it.
4499 2016-02-20  Ari Roponen  <ari.roponen@gmail.com>
4501         Use pop-to-buffer-same-window in woman.el
4503         * lisp/woman.el (woman-really-find-file): Work around going to
4504         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
4505         (WoMan-find-buffer): Ditto.
4507 2016-02-20  Tassilo Horn  <tsdh@gnu.org>
4509         New filenotify test for bug#22736
4511         * test/automated/file-notify-tests.el
4512         (file-notify-test08-watched-file-in-watched-dir):
4513         (file-notify--test-desc1): New filenotify test for bug#22736
4515 2016-02-20  Marcin Borkowski  <mbork@mbork.pl>
4517         Report critical battery errors
4519         * lisp/battery.el (battery-pmset): Report critical battery
4520         errors (bug#18157).
4522 2016-02-19  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
4524         Make eww message toggling message clearer
4526         * lisp/net/eww.el (eww-toggle-fonts): Make the message
4527         clearer.
4529 2016-02-19  Mark Oteiza  <mvoteiza@udel.edu>
4531         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
4533 2016-02-18  Martin Rudalics  <rudalics@gmx.at>
4535         Fix bugs in window resizing code
4537         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
4538         parenthesis.
4539         (shrink-window, enlarge-window): Fix bug#22723 where windows
4540         with preserved size would not get resized.  Also now signal an
4541         error when the window cannot be shrunk or enlarged as requested.
4543 2016-02-17  Eli Zaretskii  <eliz@gnu.org>
4545         Fix decoding DOS EOL in a unibyte buffer
4547         * src/coding.c (decode_eol): Loop over bytes, not characters.
4548         (Bug#5251)
4550 2016-02-17  Alan Mackenzie  <acm@muc.de>
4552         Correct c-parse-state cache manipulation error.
4554         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
4555         comparison bound.  Amend comments.
4557 2016-02-17  Daiki Ueno  <ueno@gnu.org>
4559         Take advantage of new GnuPG version check function
4561         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
4562         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
4563         is usable.
4565 2016-02-17  Daiki Ueno  <ueno@gnu.org>
4567         Make GnuPG version check robuster
4569         We changed the default gpg program to "gpg2" from "gpg" in the commit
4570         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
4571         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
4572         series.  Check the actual version of "gpg2" at run time, and properly
4573         divert to "gpg" if necessary.
4574         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
4575         (epg-config--program-alist): New variable.
4576         (epg--configurations): New variable.
4577         (epg-configuration-find): New function.
4578         (epg-config--make-gpg-configuration): New function.
4579         (epg-config--make-gpgsm-configuration): New function.
4580         (epg-configuration): Mark as obsolete.
4581         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
4583 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
4585         Fix x-load-color-file pointer signedness
4587         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
4588         For sscanf and int *, use %d, not %u.
4589         Problem found on Ubuntu 15.10 x32, which lacks X support.
4591 2016-02-17  Paul Eggert  <eggert@cs.ucla.edu>
4593         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
4595 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
4597         Follow convention for greek letter constants.
4599         * lisp/calc/calc-units.el (math-standard-units):
4600         Add "sigma" and alias σ to it.
4602 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
4604         Add Stefan-Boltzmann constant to calc units table.
4606         * lisp/calc/calc-units.el (math-standard-units):
4607         Add Stefan-Boltzmann constant.
4609 2016-02-16  Mark Oteiza  <mvoteiza@udel.edu>
4611         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
4613 2016-02-16  Glenn Morris  <rgm@gnu.org>
4615         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
4617         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
4618         Prefill with relevant elements for term/xterm.
4620 2016-02-16  Tassilo Horn  <tsdh@gnu.org>
4622         Fix soffice UserInstallation-URL for Windows
4624         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
4625         UserInstallation-URL when calling soffice on Windows.
4627 2016-02-16  Lars Ingebrigtsen  <larsi@gnus.org>
4629         Fix display of <pre> elements
4631         * lisp/net/eww.el (eww-display-html): Remove CRLF before
4632         parsing so that <pre> elements don't render with ^M at the end
4633         of the lines.
4635 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
4637         Minor fixes in global-auto-composition-mode
4639         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
4640         Produce prettier names of globalized minor modes.
4641         * lisp/composite.el (global-auto-composition-mode): Make it a
4642         globalized mode.  (Bug#22682)
4644 2016-02-15  Alan Mackenzie  <acm@muc.de>
4646         Allow arithmetic operators inside C++ template constructs.
4648         Fixes debbugs #22486.  This corrects the previous patch with this message
4649         which was empty.
4651         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
4652         variable.
4653         (c-<>-notable-chars-re): New language variable.
4655         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
4656         c-<>-notable-chars-re in place of the former fixed string in searching for
4657         places to stop and examine.
4658         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
4659         multichar operator in place of the former c->-op-without->-cont-regexp.
4660         Add code to skip forwards over a balanced parenthesized expression.
4662 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
4664         Avoid crashes in semi-malformed 'condition-case'
4666         * src/eval.c (internal_lisp_condition_case): Treat a handler
4667         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
4669 2016-02-15  Alan Mackenzie  <acm@muc.de>
4671         Allow arithmetic operators inside C++ template constructs.
4673         Fixes debbugs #22486.
4675         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
4676         variable.
4677         (c-<>-notable-chars-re): New language variable.
4679         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
4680         c-<>-notable-chars-re in place of the former fixed string in searching for
4681         places to stop and examine.
4682         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
4683         multichar operator in place of the former c->-op-without->-cont-regexp.
4684         Add code to skip forwards over a balanced parenthesized expression.
4686 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
4688         Fix regression with 'recent-keys' and keyboard macros
4690         * src/keyboard.c (record_char): Don't record in 'recent_keys'
4691         events that come from executing keyboard macros.  (Bug#22674)
4693 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
4695         Fix wording in a doc-view.el comment
4697         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
4698         "illegal" for something that is not against the law.
4700 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
4702         CONTRIBUTE cleanups and updates
4704         * CONTRIBUTE: Mention URLs and info nodes more consistently,
4705         avoiding possibly-confusing punctuation adjacent to a URL, and
4706         giving full shell commands for 'info'.  Start with a brief but
4707         complete how-to, for people who want to get started right away.
4708         Then briefly discuss how to join the development process in the
4709         typical order.  Omit needless words.  Update some of the
4710         now-obsolete file names, info node names, and quoting styles.
4711         Better document emacs-NN branches and how they are merged.
4712         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
4713         and trunk to master.  This file still needs work.
4715 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
4717         Port USE_STACK_LISP_OBJECTS fix to Clang
4719         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
4720         Recent versions of Clang claim to be GCC 4.2.1 but do not have
4721         the GCC bug.
4723 2016-02-14  Paul Eggert  <eggert@cs.ucla.edu>
4725         Port to x86 GCC 4.3.1 and earlier
4727         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
4728         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
4729         for GCC 4.3.1 and earlier.
4731 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
4733         Fix point movement under 'scroll-conservatively'
4735         * src/xdisp.c (redisplay_window): Correct a typo in computing the
4736         effective number of text lines in a window.  (Bug#22637)
4738 2016-02-14  Thomas Plass  <thomas.plass@arcor.de>
4740         Replace colon in file name (not legal on Windows)
4742         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
4743         name (not legal on Windows). [tiny change]
4745 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
4747         Fix a typo in edt.texi
4749         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
4750         "Herbert J. Skuhra" <herbert@mailbox.org>.
4752 2016-02-14  Eli Zaretskii  <eliz@gnu.org>
4754         Make 'mmap_realloc' on MS-Windows more reliable
4756         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
4757         committing fails, return NULL.  Don't call GetLastError twice for
4758         the same API error.
4759         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
4760         before calling VirtualQuery, to avoid using garbled values if the
4761         call fails.  If committing more pages from the same block fails,
4762         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
4763         if the call to VirtualAlloc to commit more pages fails.
4764         (Bug#22526)
4766 2016-02-14  Oscar Fuentes  <ofv@wanadoo.es>
4768         Grep alias `all' shall not match parent directory
4770         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
4771           directory for `all'. Fixes bug#22577
4773 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
4775         Bump version to 25.0.91
4777         * README:
4778         * configure.ac:
4779         * msdos/sed2v2.inp: Bump version to 25.0.91.
4781 2016-02-13  Nicolas Petton  <nicolas@petton.fr>
4783         * etc/AUTHORS: Update the AUTHORS file
4785 2016-02-13  Glenn Morris  <rgm@gnu.org>
4787         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
4789 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
4791         Index tilde characters in names of backup files
4793         * doc/emacs/files.texi (Backup Names): Improve indexing.
4794         (Bug#22625)
4796 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
4798         Document deprecation of hi-lock-mode's 'C-x w' bindings
4800         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
4801         "C-x w" bindings of hi-lock-mode.
4803         * etc/NEWS: Mark the deprecation entry as documented.
4805 2016-02-13  Stefan Monnier  <monnier@iro.umontreal.ca>
4807         Announce that the `C-x w' bindings are deprecated
4809 2016-02-13  Paul Eggert  <eggert@cs.ucla.edu>
4811         Suppress GNUstep hardening
4813         Fedora 23 normally hardens GNUstep applications, which causes
4814         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
4815         Fix this by eliding the hardening options (Bug#22518).
4816         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
4817         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
4818         (GNU_OBJC_CFLAGS): Omit options like
4819         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
4821 2016-02-12  Eli Zaretskii  <eliz@gnu.org>
4823         Fix redisplay after a large insertion
4825         * src/xdisp.c (redisplay_internal): Don't accept the results of
4826         "optimization 3" if the cursor ends up in a partially visible
4827         glyph row.  (Bug22637)
4829 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
4831         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
4833         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
4835                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
4836                 change.  (Bug#22634)
4838 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
4840         * lib-src/make-docfile.c: Include stdarg.h.
4842 2016-02-11  Alan Mackenzie  <acm@muc.de>
4844         Extend gpm-mouse-mode's doc string and doc to point out limitations.
4846         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
4847         inability to transfer text between Emacs and other programs which use GPM.
4849         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
4850         between Emacs and other progrmas which use GPM.
4852 2016-02-11  Eli Zaretskii  <eliz@gnu.org>
4854         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
4856         * lisp/isearch.el: Turn char-folding back oon by default.
4858         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
4860 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
4862         Revert "Support integer image rotation and respect EXIF rotations"
4864         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
4866         This change does not work on Fedora.
4868 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
4870         Revert "Document EXIF image rotation"
4872         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
4874         This change does not work on Fedora, for instance.
4876 2016-02-11  Paul Eggert  <eggert@cs.ucla.edu>
4878         Document OS X LANG default
4880         * doc/emacs/cmdargs.texi (General Variables):
4881         Document OS X Language and Region system preference.
4882         Suggested by Alan Third.
4884 2016-02-11  Alan Third  <alan@idiocy.org>
4886         Set locale when run from OS X GUI
4888         * src/emacs.c (main): Call ns_init_locale.
4889         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
4890         * src/nsterm.h: Include ns_init_locale.
4892 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
4894         make-docfile cleanup for I/O, etc.
4896         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
4897         (num_globals_allocated, globals): Now static.
4898         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
4899         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
4900         Use bool for boolean.
4901         (verror): New function.
4902         (fatal, error): Use it.  API is now like printf.  All callers changed.
4903         (main): Remove err_count local that was always 0.
4904         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
4905         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
4906         Return void, not 0.
4907         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
4908         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
4909         (close_emacs_globals): Use ptrdiff_t for index, not int.
4910         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
4911         opened, rather than diagnosing but exiting with status 0.
4912         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
4913         portable now.
4915 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
4917         Memory-management cleanup in make-docfile
4919         I compiled it with -fsanitize=address and fixed the leaks it detected.
4920         Also, I changed it to prefer signed to unsigned integer types,
4921         and to check for integer overflow.
4922         * lib-src/make-docfile.c:
4923         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
4924         (memory_exhausted): New function.
4925         (xmalloc, xrealloc): Use it.
4926         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
4927         (uncompiled, scan_lisp_file):
4928         Prefer signed integer types to unsigned.
4929         (xstrdup): Remove.  All uses removed.
4930         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
4931         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
4932         (add_global): Use const to pacify --enable-gcc-warnings.
4933         Make a copy here, rather than relying on strdup calls later.
4934         (add_global, write_globals, scan_c_stream):
4935         Avoid integer overflow when calculating sizes.
4936         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
4937         (scan_c_stream): Check for add_global failure.
4939 2016-02-10  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
4941         Kevin Gallagher has new email address
4943         * lisp/emulation/edt.el:
4944         * lisp/emulation/edt-lk201.el:
4945         * lisp/emulation/edt-mapper.el:
4946         * lisp/emulation/edt-pc.el:
4947         * lisp/emulation/edt-vt100.el:
4948         * etc/edt-user.el:
4949         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
4951 2016-02-10  Eli Zaretskii  <eliz@gnu.org>
4953         Improve doc strings of 'forward/backward-word-strictly'
4955         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
4956         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
4957         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
4958         Mention 'subword-mode' in the doc strings.
4960         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
4961         in the doc string.  (Bug#22560)
4963 2016-02-10  Michael Albinus  <michael.albinus@gmx.de>
4965         Describe Makefile test targets in test/README
4967         * CONTRIBUTE: Move Makefile test targets to test/README.
4969         * Makefile.in:
4970         * test/README: Describe Makefile test targets.
4972 2016-02-10  Artur Malabarba  <bruce.connor.am@gmail.com>
4974         Backport: * lisp/isearch.el: Turn char-folding off by default
4976         (search-default-mode): Set default value to nil.
4978 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
4980         Document EXIF image rotation
4982         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
4984 2016-02-10  Dima Kogan  <dima@secretsauce.net>
4986         Support integer image rotation and respect EXIF rotations
4988         * src/image.c (imagemagick_load_image): Allow integer rotations in
4989         addition to floating point rotations (bug#22591).
4990         * src/image.c (imagemagick_load_image): Images that have an
4991         orientation given in EXIF and have no explicit :rotation tag are now
4992         pre-rotated.  All information such as width/height is reported for the
4993         rotated image.
4995 2016-02-10  Matthew Carter  <m@ahungry.com>
4997         Quote table names for postgres listings (sql-mode)
4999         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
5000           unquoted table names to the completion list.
5002 2016-02-10  Juri Linkov  <juri@linkov.net>
5004         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
5006         Doc fix.
5007         (replace-search, replace-highlight): Make arg `backward' optional.
5008         (Bug#18388)
5010 2016-02-10  Juri Linkov  <juri@linkov.net>
5012         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
5014         (previous-line-or-history-element): Reset temporary-goal-column.
5015         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
5017 2016-02-10  Paul Eggert  <eggert@cs.ucla.edu>
5019         Suppress ACL ops if configured with --disable-acl
5021         Without this patch, some ACL operations were suppressed, but not all.
5022         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
5023         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
5025 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5027         Mention web bugs
5029         * doc/misc/emacs-mime.texi (Display Customization):
5030         Mention web bugs in the mm-html-blocked-images section.
5032 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5034         Make mm-html-blocked-images default to "" again
5036         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
5037         Default to "" that blocks all external images.
5039         * doc/misc/emacs-mime.texi (Display Customization):
5040         Mention that mm-html-blocked-images defaults to "".
5042 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5044         Minor alignas cleanup
5046         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
5047         over from the old way of doing things, before Bug#20862 was fixed.
5049 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5051         Add lmalloc commentary and tweak laligned
5053         * src/alloc.c (laligned): Help compiler in a tiny way by putting
5054         the more-commonly-failing disjunct first.
5056 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
5058         Clarify documentation of key binding conventions
5060         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
5061         "punctuation characters" are reserved after "C-c".  (Bug#22604)
5063 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
5065         * etc/NEWS: mention the `vc-faces' customization group
5067 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5069         Sync with gnulib
5071         This incorporates:
5072         2016-02-09 stdalign: port to clang 3.7.0
5073         2016-02-06 misc: port better to gcc -fsanitize=address
5074         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
5075         Copy from gnulib.
5077 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
5079         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
5081 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5083         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
5085         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
5086         (mm-html-blocked-images): Default to nil.
5088         * doc/misc/emacs-mime.texi (Display Customization): Mention that
5089         mm-html-inhibit-images and mm-html-blocked-images default to nil.
5091         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
5092         mm-html-blocked-images.
5094 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
5096         Increase success rate of fallback lmalloc
5098         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
5099         larger and larger sizes, to increase the probability that
5100         the allocator will return a Lisp-aligned pointer.
5102 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
5104         Make backgrounds extend to the end of the lines in shr
5106         * lisp/net/shr.el (shr-face-background): Faces can also be on
5107         the form `(:background "#fff)' (bug#22547).
5109 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
5111         Make the `R' command get the correct relative <img>s
5113         * lisp/net/eww.el (eww-readable): Preserve the base URL so
5114         that image expansions are fetched from the right place (bug#22605).
5116         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
5118         Backport:
5120 2016-02-09  Mike Kupfer  <m.kupfer@acm.org>
5122         Fix typos in emacs-mime.texi and gnus.texi
5124         * doc/misc/emacs-mime.texi (Display Customization):
5125         * doc/misc/gnus.texi (HTML): Fix typo.
5127 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
5129         * doc/misc/emacs-mime.texi (Display Customization):
5130         Doc fix for mm-html-inhibit-images.
5132 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
5134         Fix message-cross-post-followup-to group names
5136         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
5137         insert group names like "nntp+foo:zot", because those aren't valid.
5139 2016-02-09  David Edmondson  <dme@dme.org>
5141         Compare recipient and keys case-insensitively
5143         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
5144         recipient address with that from a key, do so in a case insensitive
5145         manner (bug#22603).
5147 2016-02-08  Glenn Morris  <rgm@gnu.org>
5149         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
5151 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
5153         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
5155         * doc/misc/emacs-mime.texi (Display Customization):
5156         Remove mm-inline-text-html-with-images; add documentations for
5157         mm-html-inhibit-images and mm-html-blocked-images.
5159         * lisp/gnus/gnus-art.el (gnus-article-show-images):
5160         No need to bind mm-inline-text-html-with-images.
5161         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
5162         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
5163         bind mm-html-inhibit-images and mm-html-blocked-images.
5164         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
5165         (gnus-mm-display-part, gnus-mime-display-single)
5166         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
5168         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
5169         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
5170         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
5171         mm-html-inhibit-images and mm-html-blocked-images respectively
5172         instead of gnus-inhibit-images and gnus-blocked-images.
5174         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
5175         instead of mm-inline-text-html-with-images.
5177 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
5179         Port to FreeBSD 11-CURRENT i386
5181         Problem reported by Herbert J. Skuhra in:
5182         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
5183         Instead of trying
5184         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
5185         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
5186         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
5187         (MALLOC_IS_GC_ALIGNED): New macro.
5188         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
5189         No longer needed now that alloc.c uses lmalloc and lrealloc.
5191 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
5193         Some fixes in file-notify-tests.el
5195         * test/automated/file-notify-tests.el
5196         (file-notify--test-with-events-check)
5197         (file-notify--test-with-events-explainer): New defuns.
5198         (file-notify--test-with-events): Use it.
5199         (file-notify-test07-backup): Fix docstring.  Some of the
5200         backends fire two `changed' events.  Backup by rename doesn't
5201         work for kqueue.
5203 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
5205         Fix Bug#22557
5207         * lisp/filenotify.el (file-notify-callback): Do not send a
5208         `stopped' event in case of backup by renaming.  (Bug#22557)
5210         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
5211         all targets but check and check-maybe.
5213         * test/automated/file-notify-tests.el
5214         (file-notify--test-read-event-timeout): New defconst.
5215         (file-notify--deftest-remote, file-notify--wait-for-events)
5216         (file-notify-test02-events)
5217         (file-notify-test04-file-validity)
5218         (file-notify-test06-many-events): Use it.
5219         (file-notify--test-cleanup): Make it more robust.  Delete also
5220         backup file.
5221         (file-notify-test07-backup): New test.
5223 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
5225         Fix test for dladdr
5227         Problem reported by Andreas Schwab in:
5228         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
5229         * configure.ac (dladdr): Link with LIBMODULES when checking for
5230         this function.
5232 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
5234         Fix gnus-group-get-new-news-this-group on group with closed server
5236         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
5237         method and pass to nnimap-open-server.
5239 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5241         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
5243         While tabs in code are mostly fine because the Emacs sources have a
5244         .dir-locals file specifying tab-width, the same is not true of tabs in
5245         code examples inside docstrings.  The docstring is printed on a *Help*
5246         buffer, which can be created on any directory and won't necessarily have
5247         the same tab-width set.
5249 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
5251         Don't inloop gnus-uu-mark-thread on the last thread
5253         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
5254         final thread in the summary buffer (bug#16666).
5256 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
5258         Display non-ASCII group names better in prompts
5260         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
5261         group name, we have to do that before we remove the prefix.
5263 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
5265         Default to gpg2 instead of gpg
5267         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
5268         it exists.  This fixes many problems with using the GPG
5269         authentication agent.
5271 2016-02-06  David Edmondson  <dme@dme.org>
5273         src/process.c Correctly convert AF_INET6 addresses
5275         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
5276         converted to a list of 16 bit quantities by
5277         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
5278         same scheme rather than expecting a (longer) list of 8 bit
5279         quantities.
5281         Backport:
5283         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
5285 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5287         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
5289 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5291         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
5293         (menu-bar-search-options-menu): New variable
5295 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5297         * lisp/isearch.el (search-default-mode)
5299         (isearch-regexp-function): Improve docstrings.
5301 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5303         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
5305         (search-default-mode): New variable.
5306         (isearch-mode, isearch-define-mode-toggle)
5307         (isearch--describe-regexp-mode): Update accordingly.
5308         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
5309         * etc/NEWS: Update accordingly.
5310         * doc/emacs/search.texi: Update accordingly.
5312 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
5314         Use monitor's resolution for positioning tooltips
5316         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
5317           the mouse pointer is to avoid placing the tooltip over the border of
5318           the monitor on multi-head displays. Fixes bug#22549.
5320 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
5322         Fix file-notify-test on MS-Windows
5324         * test/automated/file-notify-tests.el (file-notify--test-timeout):
5325         Reduce w32notify timeout to 10 sec.
5326         (file-notify-test06-many-events): Call read-event after each
5327         rename, to keep the w32notify backend happy in batch mode.
5328         (Bug#22534)
5330 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
5332         Fix issues found by auditing w32notify code
5334         * src/w32inevt.c (handle_file_notifications): Count the number of
5335         events to be returned.
5336         * src/w32notify.c (send_notifications): Don't copy to the file
5337         notification buffer more than it can hold.  (Bug#22534)
5339 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
5341         Extend etags Ruby support for accessors
5343         * lib-src/etags.c (Ruby_functions): Support accessors defined with
5344         parentheses.  (Bug#22563)
5346         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
5347         defined with parentheses.
5348         * test/etags/ETAGS.good_1:
5349         * test/etags/ETAGS.good_2:
5350         * test/etags/ETAGS.good_3:
5351         * test/etags/ETAGS.good_4:
5352         * test/etags/ETAGS.good_5:
5353         * test/etags/ETAGS.good_6:
5354         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
5356 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
5358         Update publicsuffix.txt.
5360         * etc/publicsuffix.txt: Updated from
5361         https://publicsuffix.org/list/public_suffix_list.dat.
5363 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
5365         Ensure that Gnus dribble handling allows removing entries
5367         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
5368         entry is on a single line.
5370 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
5372         Be consistent when using encoded strings in nnimap data
5374         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
5375         (nnimap-request-list): Use it.
5376         (nnimap-request-newgroups): Ditto.
5378 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
5380         Display the decoded Gnus group name
5382         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
5383         decoded group name in the message.
5385 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
5387         Use completion-ignore-case instead of defining command
5389         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
5390         that we get case-insensitive completion.
5391         (erc-completion-at-point): Remove.
5393 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
5395         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
5397 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
5399         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
5401         Reduce the number of iterations to 250 in case of w32notify.
5403 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
5405         Fix problems caused by new implementation of sub-word mode
5407         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
5408         New functions.
5409         (word-move-empty-char-table): New variable.
5411         * etc/NEWS: Mention 'forward-word-strictly' and
5412         'backward-word-strictly'.
5414         * doc/lispref/positions.texi (Word Motion): Document
5415         'find-word-boundary-function-table', 'forward-word-strictly', and
5416         'backward-word-strictly'.  (Bug#22560)
5418         * src/syntax.c (syms_of_syntax)
5419         <find-word-boundary-function-table>: Doc fix.
5421         * lisp/wdired.el (wdired-xcase-word):
5422         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
5423         (texinfo-copy-section-title, texinfo-start-menu-description)
5424         (texinfo-copy-menu-title, texinfo-specific-section-type)
5425         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
5426         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
5427         (texinfo-insert-@end):
5428         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
5429         (texinfo-anchor, texinfo-multitable-widths)
5430         (texinfo-multitable-item):
5431         * lisp/textmodes/tex-mode.el (latex-env-before-change):
5432         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
5433         * lisp/skeleton.el (skeleton-insert):
5434         * lisp/simple.el (count-words):
5435         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
5436         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
5437         (vhdl-update-sensitivity-list, vhdl-template-block)
5438         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
5439         (vhdl-template-default-indent, vhdl-template-for-loop)
5440         (vhdl-template-if-then-use, vhdl-template-bare-loop)
5441         (vhdl-template-nature, vhdl-template-procedural)
5442         (vhdl-template-process, vhdl-template-selected-signal-asst)
5443         (vhdl-template-type, vhdl-template-variable)
5444         (vhdl-template-while-loop, vhdl-beginning-of-block)
5445         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
5446         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
5447         (verilog-forward-sexp, verilog-beg-of-statement)
5448         (verilog-set-auto-endcomments, verilog-backward-token)
5449         (verilog-do-indent):
5450         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
5451         (vera-indent-block-closing):
5452         * lisp/progmodes/simula.el (simula-context)
5453         (simula-backward-up-level, simula-forward-down-level)
5454         (simula-previous-statement, simula-next-statement)
5455         (simula-skip-comment-backward, simula-calculate-indent)
5456         (simula-find-if, simula-electric-keyword):
5457         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
5458         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
5459         (ruby-smie--forward-token, ruby-smie--backward-token)
5460         (ruby-singleton-class-p, ruby-calculate-indent)
5461         (ruby-forward-sexp, ruby-backward-sexp):
5462         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
5463         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
5464         (perl-syntax-propertize-special-constructs)
5465         (perl-backward-to-start-of-continued-exp):
5466         * lisp/progmodes/pascal.el (pascal-indent-declaration):
5467         * lisp/progmodes/octave.el (octave-function-file-p):
5468         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
5469         * lisp/progmodes/js.el (js--forward-function-decl):
5470         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
5471         (idlwave-beginning-of-block, idlwave-end-of-block)
5472         (idlwave-block-jump-out, idlwave-determine-class):
5473         * lisp/progmodes/icon.el (icon-is-continuation-line)
5474         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
5475         * lisp/progmodes/hideif.el (hide-ifdef-define):
5476         * lisp/progmodes/f90.el (f90-change-keywords):
5477         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
5478         (cperl-linefeed, cperl-electric-terminator)
5479         (cperl-find-pods-heres, cperl-fix-line-spacing)
5480         (cperl-invert-if-unless):
5481         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
5482         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
5483         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
5484         (ada-adjust-case-skeleton, ada-create-case-exception)
5485         (ada-create-case-exception-substring)
5486         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
5487         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
5488         (ada-get-indent-if, ada-get-indent-block-start)
5489         (ada-get-indent-loop, ada-get-indent-type)
5490         (ada-search-prev-end-stmt, ada-check-defun-name)
5491         (ada-goto-decl-start, ada-goto-matching-start)
5492         (ada-goto-matching-end, ada-looking-at-semi-or)
5493         (ada-looking-at-semi-private, ada-in-paramlist-p)
5494         (ada-search-ignore-complex-boolean, ada-move-to-start)
5495         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
5496         * lisp/net/quickurl.el (quickurl-grab-url):
5497         * lisp/mail/sendmail.el (mail-do-fcc):
5498         * lisp/mail/rmail.el (rmail-resend):
5499         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
5500         * lisp/mail/mail-extr.el (mail-extract-address-components):
5501         * lisp/json.el (json-read-keyword):
5502         * lisp/files.el (insert-directory):
5503         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
5504         * lisp/completion.el (symbol-under-point, symbol-before-point)
5505         (symbol-before-point-for-complete, next-cdabbrev)
5506         (add-completions-from-c-buffer):
5507         * lisp/cedet/semantic/texi.el (semantic-up-context)
5508         (semantic-beginning-of-context):
5509         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
5510         use 'forward-word-strictly' and 'backward-word-strictly' instead
5511         of 'forward-word' and 'backward-word'.
5513 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
5515         Fix doc string of tls-program
5517         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
5519 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
5521         Restore window conf in nsm
5523         * lisp/net/nsm.el (nsm-query-user): Restore the window configuration.
5525         Backport:
5527 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
5529         * etc/NEWS: Document new mpc.el features
5531 2016-02-04  Leo Liu  <sdl.web@gmail.com>
5533         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
5535 2016-02-04  Alan Mackenzie  <acm@muc.de>
5537         Correctly fontify C++ initializations which "look like" functions.
5539         Fixes bug#7579.
5541         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
5542         parameter to enable handling of "anonymous" declarators in declarations.
5544         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
5545         whether a "(" opens a parameter list of a function, or an initialization of a
5546         variable.
5548 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
5550         Improve newsticker-treeview-selection-face
5552         * lisp/net/newst-treeview.el (newsticker-treeview-selection-face): Improve
5553         readability for dark background.
5555 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
5557         Minor fix in tagging Ruby accessors by etags
5559         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
5560         names are not literal symbols.  (Bug#22241)
5562 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
5564         Spelling fixes
5566 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
5568         Remove 'def X' from the example
5570         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
5571         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
5572         * test/etags/CTAGS.good:
5573         * test/etags/ETAGS.good_1:
5574         * test/etags/ETAGS.good_2:
5575         * test/etags/ETAGS.good_3:
5576         * test/etags/ETAGS.good_4:
5577         * test/etags/ETAGS.good_5:
5578         * test/etags/ETAGS.good_6: Adjust accordingly.
5580 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
5582         Allow sending empty hidden values in eww
5584         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
5585         values (bug#22388).
5587         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
5589         Backport:
5591 2016-02-04  David Edmondson  <dme@dme.org>
5593         Make erc work better when encountering unknown prefix chars
5595         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
5596         instead of erroring out on unknown prefix chars (bug#22380).
5598 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
5600         Make erc completion case-insensitive again
5602         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
5603         case-insensitive again (bug#11360).
5605 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
5607         Make complection in erc use consistent casing
5609         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
5610         case in the complection consistent (bug#18509).
5612 2016-02-04  Francis Litterio  <flitterio@gmail.com>
5614         Make /QUIT in erc more robust
5616         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
5617         issuing /QUIT to disconnected servers (bug#22099).
5619 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
5621         Make tracking faces in Emacs work more reliably
5623         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
5624         faces to avoid later ambiguity (bug#22424).
5626 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
5628         Make shr not bug out on images on non-graphical displays
5630         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
5631         images on non-graphical displays (bug#22327).
5633 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
5635         Fix bookmark display widths
5637         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
5638         preparing it so that the widths are computed correctly (bug#22328).
5640 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
5642         Fix typo in eww-make-unique-file-name
5644         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
5645         actually work.
5647 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
5649         Make it possible to TAB to input fields
5651         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
5652         input fields (bug#22540).
5654 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
5656         Insert complete alt texts when images are disabled
5658         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
5659         the complete alt/title string (bug#22293).
5661 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
5663         Allow eww text fields to grow
5665         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
5666         grow when typing in stuff that's longer than the original width.
5668 2016-02-03  Dima Kogan  <dima@secretsauce.net>
5670         Make erc work when subword-mode is switched on
5672         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
5673         (erc-bounds-of-word-at-point): New functions to do word-based
5674         things when subword-mode is switched on.
5676         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
5677         (bug#17558).
5679 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
5681         Fix IMAP doc example
5683         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
5685 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
5687         Quoting fixes in doc strings and diagnostics
5689         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
5690         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
5691         (mml-smime-get-ldap-cert):
5692         Follow user style preference when quoting diagnostics.
5694 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
5696         Fix warning message in hack-local-variables
5698         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
5699         the original buffer name in the warning message.  (Bug#21681)
5701 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
5703         Etags: yet another improvement in Ruby tags
5705         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
5706         Ruby accessor definitions.  (Bug#22241)
5708         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
5709         accessors and multiline definitions.
5710         * test/etags/ETAGS.good_1:
5711         * test/etags/ETAGS.good_2:
5712         * test/etags/ETAGS.good_3:
5713         * test/etags/ETAGS.good_4:
5714         * test/etags/ETAGS.good_5:
5715         * test/etags/ETAGS.good_6:
5716         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
5718 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
5720         Fix x-popup-menu on TTYs without a mouse
5722         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
5723         for the TTY case without a mouse.  (Bug#22538)
5725 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
5727         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
5729 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
5731         Use pop-to-buffer-same-window in eww
5733         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
5734         switch-to-buffer (bug#22244).
5736 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
5738         * autogen.sh: Revert all recent changes.
5740 2016-02-02  Glenn Morris  <rgm@gnu.org>
5742         * make-dist: Updates related to nt/.
5744         * make-dist: Add modules/.
5746         * make-dist: Update for super-special file that can't live in etc/.
5748 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
5750         Fix failure to compile ns-win.el in parallel builds
5752         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
5753         dependency on $(lispsource)/international/charprop.el.
5754         (Bug#22501)
5756 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
5758         Fix names of tags generated for Ruby accessors
5760         * lib-src/etags.c (Ruby_functions): Don't include the leading
5761         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
5763         * test/etags/ETAGS.good_1:
5764         * test/etags/ETAGS.good_2:
5765         * test/etags/ETAGS.good_3:
5766         * test/etags/ETAGS.good_4:
5767         * test/etags/ETAGS.good_5:
5768         * test/etags/ETAGS.good_6:
5769         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
5771 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
5773         Fix file-name recognition in 'etags'
5775         * lib-src/etags.c (get_language_from_filename): If FILE includes a
5776         leading directory, compare only its basename to the known file
5777         names in lang_names[].
5779         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
5780         renaming.
5781         * test/etags/ETAGS.good_1:
5782         * test/etags/ETAGS.good_2:
5783         * test/etags/ETAGS.good_3:
5784         * test/etags/ETAGS.good_4:
5785         * test/etags/ETAGS.good_5:
5786         * test/etags/ETAGS.good_6:
5787         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
5788         to the results in Makefile due to the above etags.c fix.
5790 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
5792         Change Ruby file names and extensions recognized by 'etags'
5794         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
5795         of Ruby files.
5796         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
5797         <lang_names>: Add Ruby_filenames to the Ruby entry.
5798         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
5799         (Bug#22241)
5801 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
5803         More improvements for Ruby support in 'etags'
5805         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
5806         alias_method.  Identify constants even if the assignment is not
5807         followed by whitespace.  (Bug#22241)
5809         * test/etags/ruby-src/test1.ru: Add tests for constants,
5810         accessors, and alias_method.
5811         * test/etags/ETAGS.good_1:
5812         * test/etags/ETAGS.good_2:
5813         * test/etags/ETAGS.good_3:
5814         * test/etags/ETAGS.good_4:
5815         * test/etags/ETAGS.good_5:
5816         * test/etags/ETAGS.good_6:
5817         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
5819 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
5821         Add --git-config option to autogen.sh
5823         * autogen.sh: New options --git-config, --help.
5824         (git_config): New shell var.  Alter function to respect this var.
5826 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
5828         Fix editing undo changes in eww fields
5830         * eww.el (eww-tag-form): Don't overwrite initial form data in text
5831         fields.
5832         (eww-process-text-input): Make `M-t' at the end of text fields work
5833         better (bug#19085).
5835 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
5837         Allow the user more control of popping up the eww window
5839         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
5840         Michael Heerdegen) (bug#22244).
5842 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
5844         Make eww-browse-url with new-window parameter work again
5846         * eww.el (eww-browse-url): Stay in the same buffer if we're
5847         already in a eww mode buffer so that eww-browse-url with a
5848         new-window parameter works (bug#22244).
5850 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
5852         Clean up eww code slightly
5854         * eww.el (eww-browse-url): Clean up code slightly.
5856 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
5858         Don't insert nil faces in shr
5860         * shr.el (shr-insert-table): Don't add nil faces, because that
5861         will show up in *Messages* as "Invalid face reference: nil [32
5862         times]".
5864 2016-02-01  Glenn Morris  <rgm@gnu.org>
5866         Improve the custom type of some user options.
5868         * lisp/autoinsert.el (auto-insert-alist):
5869         * lisp/replace.el (query-replace-from-to-separator):
5870         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
5871         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
5872         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
5873         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
5874         (prolog-mode-specificators, prolog-determinism-specificators)
5875         (prolog-directives, prolog-program-name, prolog-program-switches)
5876         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
5877         (prolog-prompt-regexp): Improve custom type.
5879 2016-02-01  Glenn Morris  <rgm@gnu.org>
5881         Mark some risky calendar variables.
5883         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
5884         Remove risky setting for deleted obsolete alias.
5885         (calendar-chinese-standard-time-zone-name)
5886         (calendar-chinese-daylight-saving-start)
5887         (calendar-chinese-daylight-saving-end):
5888         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
5889         (calendar-european-date-display-form)
5890         (calendar-american-date-display-form, calendar-date-display-form):
5891         * lisp/calendar/diary-lib.el (diary-remind-message)
5892         (diary-header-line-format):
5893         * lisp/calendar/solar.el (calendar-time-display-form)
5894         (calendar-location-name): Mark as risky.
5896 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
5898         Highlight two additional SCSS keywords
5900         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
5901         identifiers on the form !foo.
5902         (scss-bang-ids): New defconst holding SCSS identifiers on the form
5903         !foo.
5904         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
5905         `font-lock-builtin-face'.
5907         * test/indent/css-mode.css: Add bang rule test case.
5909         * test/indent/scss-mode.scss: Add test cases for the introduced bang
5910         rules.
5912 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
5914         Recommend enabling integrity-checking in git
5916         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
5918         This is related to the autogen.sh changes made by Paul Eggert in
5919         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
5920         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
5921         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
5922         "Recommend these .gitconfig settings for git integrity." at
5923         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
5925 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
5927         Some corrections in Elisp manual
5929         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
5930         argument POSITION.
5931         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
5932         is an option.
5933         * doc/lispref/display.texi (Refresh Screen): Describe optional
5934         argument FRAME of `redraw-frame'.
5935         (Attribute Functions): Describe optional argument CHARACTER of
5936         `face-font'.
5937         (Defining Images): `image-load-path' is an option.
5938         (Beeping): `ring-bell-function' is an option.
5939         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
5940         argument of `set-frame-size' is optional.
5941         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
5942         is optional.
5943         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
5944         `set-transient-map'.
5945         * doc/lispref/minibuf.texi (Text from Minibuffer):
5946         `read-regexp-defaults-function' is an option.
5947         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
5948         * doc/lispref/modes.texi (Mode Line Variables):
5949         `mode-line-position' and `mode-line-modes' are variables, not
5950         options.
5951         * doc/lispref/strings.texi (Creating Strings): The START argument
5952         of `substring' is optional.
5953         * doc/lispref/text.texi (Buffer Contents): Describe optional
5954         argument NO-PROPERTIES of `thing-at-point'.
5955         (User-Level Deletion): Both arguments of
5956         `delete-trailing-whitespace' are optional.
5957         (Margins): Use @key{RET} instead of @kbd{RET}.
5958         * doc/lispref/windows.texi (Display Action Functions): Write
5959         non-@code{nil} instead of non-nil.
5960         (Choosing Window Options): The WINDOW arg of
5961         `split-window-sensibly' is optional.
5962         (Choosing Window Options): Write non-@code{nil} instead of
5963         non-nil.
5964         (Window Start and End): Both args of `window-group-end' are
5965         optional.
5967         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
5968         to POSITION to keep consisteny with doc-string.
5970 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
5972         Chatter when autogen.sh changes Git configuration
5974         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
5976 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
5978         * lisp/org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
5980 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
5982         Omit unnecessary history from Lisp intro
5984         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
5985         (Conclusion): Reword so as not to talk about earlier versions
5986         of Emacs in what should be an intro.
5988 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
5990         * etc/HISTORY: Add some more history, plus git tags.
5992 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
5994         Improve elisp “Security Considerations” doc
5996         * doc/lispref/os.texi (Security Considerations):
5997         Mention call-process and rename-file as opposed to shell commands.
5998         Add some more cross-references.
6000 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6002         autogen.sh now arranges for git to check hashes
6004         Suggested by Karl Fogel in:
6005         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
6006         * autogen.sh: Do "git config transfer.fsckObjects true".
6008 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
6010         Fix (c & 040) typo in emergency escapes
6012         * src/keyboard.c (handle_interrupt): Fix recently-introduced
6013         typo (040 should have been ~040) that silently suppressed
6014         auto-saves after emergency escapes.  Redo comparison to avoid
6015         similar problems.
6017 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
6019         Fix display of overlay strings with 'display' and 'box' property
6021         * src/xdisp.c (get_next_display_element): Take the box face from
6022         display stack level that comes from a buffer, not an overlay
6023         string.  (Bug#22499)
6025 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
6027         Fix imap-starttls-open
6029         * lisp/net/imap.el (imap-starttls-open): Log imap process
6030         output.  Call imap-parse-greeting.  (Bug#22500)
6032 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
6034         Fix return value of imap-starttls-open
6036         * lisp/net/imap.el (imap-starttls-open): Fix return value.
6038 2016-01-31  John Wiegley  <johnw@newartisans.com>
6040         Correct reference to DARWIN_OS preprocessor symbol
6042         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
6043           not be defined.
6045 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
6047         Spelling fix
6049         Spelling fixes
6051 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
6053         Pacify GCC on C library without glibc API
6055         Without this change, with --enable-gcc-warnings GCC would complain
6056         “error: redundant redeclaration of ‘aligned_alloc’”.
6057         * configure.ac: Simplify aligned_alloc testing.
6058         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
6059         since the simplified configure.ac no longer checks for that.
6060         Don’t declare if HAVE_ALIGNED_ALLOC.
6061         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
6063 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
6065         Backport: * lisp/files.el: Remove support for extra .dir-locals file
6067         (dir-locals-file-2, dir-locals--all-files): Remove.
6068         (dir-locals-collect-variables, dir-locals-file, dir-locals-find-file)
6069         (dir-locals-read-from-file, hack-dir-local-variables): Revert changes.
6071         * lisp/files-x.el (modify-dir-local-variable): Revert changes.
6073         * lisp/help-fns.el (describe-variable): Revert changes.
6075         * doc/emacs/custom.texi (Directory Variables): Revert changes.
6077         * etc/NEWS: Revert changes.
6079 2016-01-30  Glenn Morris  <rgm@gnu.org>
6081         * lisp/net/browse-url.el (browse-url-default-browser):
6082         Lower priority of non-free Chrome.
6084 2016-01-30  Glenn Morris  <rgm@gnu.org>
6086         Improve the custom type of some user options.
6088         * lisp/desktop.el (desktop-minor-mode-table):
6089         * lisp/man.el (Man-frame-parameters):
6090         * lisp/midnight.el (midnight-delay):
6091         * lisp/speedbar.el (speedbar-select-frame-method):
6092         * lisp/tooltip.el (tooltip-frame-parameters):
6093         * lisp/tree-widget.el (tree-widget-space-width):
6094         * lisp/type-break.el (type-break-keystroke-threshold):
6095         * lisp/woman.el (woman-imenu-generic-expression):
6096         * lisp/cedet/ede.el (ede-debug-program-function):
6097         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
6098         * lisp/emulation/viper-keym.el (viper-toggle-key):
6099         * lisp/erc/erc-networks.el (erc-server-alist):
6100         * lisp/gnus/message.el (message-deletable-headers, message-signature):
6101         * lisp/mail/mailalias.el (mail-directory-stream):
6102         * lisp/play/tetris.el (tetris-x-colors):
6103         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
6105 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
6107         Highlight CSS variables with variable name face
6109         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
6110         (css--font-lock-keywords): Highlight variables in
6111         `font-lock-variable-name-face'.
6113 2016-01-30  Glenn Morris  <rgm@gnu.org>
6115         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
6117 2016-01-30  Glenn Morris  <rgm@gnu.org>
6119         Mark some user options that can get evalled as risky.
6121         * lisp/allout.el (allout-title):
6122         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
6123         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
6124         * lisp/progmodes/gud.el (gud-tooltip-display):
6125         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
6126         Mark as risky.
6128 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6130         Disable DebPrint in sys_read on MS-Windows
6132         * src/w32.c (sys_read): Disable a debugging print that is normal
6133         when non-blocking reads are retried.
6135 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
6137         ;Fix ChangeLog entry
6139 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6141         Fix typos in Introduction to Emacs Lisp manual
6143         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
6144         (kill-new function, Digression into C)
6145         (Complete forward-sentence, Divide and Conquer, Find a File)
6146         (lengths-list-many-files, Columns of a graph, defcustom)
6147         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
6148         <dbastos@toledo.com>.
6150 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6152         Bump version to 25.0.90
6154         * README:
6155         * configure.ac:
6156         * msdos/sed2v2.inp: Bump version to 25.0.90.
6158 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6160         * etc/AUTHORS: Update the AUTHORS file
6162 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6164         Bump version to 25.0.90
6166         * README:
6167         * configure.ac:
6168         * msdos/sed2v2.inp: Bump version to 25.0.90.
6170 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6172         * etc/AUTHORS: Update the AUTHORS file
6174 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6176         authors.el updates
6178         * admin/authors.el (authors-renamed-files-alist): Additions.
6180 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6182         Make it possible to run make change-history on emacs-25
6184         * Makefile.in: Check if the current branch is emacs-25 instead of
6185           master.
6187 2016-01-30  lu4nx  <lx@shellcodes.org>
6189         Support Go language in 'etags'
6191         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
6192         <Go_help>: New help.
6193         <Go_suffixes>: New variable.
6194         (Go_functions): New function.
6195         <lang_names>: Add entry for Go.  (Bug#22370)
6197         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
6198         * doc/man/etags.1: Mention Go support.
6200         * etc/NEWS: Mention Go support.
6202         * test/etags/go-src/test.go:
6203         * test/etags/go-src/test1.go: New test files.
6204         * test/etags/Makefile (GOSRC): New variable.
6205         (SRCS): Add $(GOSRC).
6206         * test/etags/ETAGS.good_1:
6207         * test/etags/ETAGS.good_2:
6208         * test/etags/ETAGS.good_3:
6209         * test/etags/ETAGS.good_4:
6210         * test/etags/ETAGS.good_5:
6211         * test/etags/ETAGS.good_6:
6212         * test/etags/CTAGS.good: Adapt to addition of Go tests.
6214 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6216         Improve Ruby support in 'etags'
6218         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
6219         singleton classes.  Remove class qualifiers from tags generated
6220         for method and constant names.  (Bug#22241)
6222         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
6223         are tagged by etags in Ruby.
6225         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
6227         * test/etags/ruby-src/test1.ru: Add more tests.
6228         * test/etags/ETAGS.good_1:
6229         * test/etags/ETAGS.good_2:
6230         * test/etags/ETAGS.good_3:
6231         * test/etags/ETAGS.good_4:
6232         * test/etags/ETAGS.good_5:
6233         * test/etags/ETAGS.good_6:
6234         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
6235         tests.
6237 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6239         Adjust etags test results to changes in copyright years
6241         * test/etags/CTAGS.good:
6242         * test/etags/ETAGS.good_1:
6243         * test/etags/ETAGS.good_2:
6244         * test/etags/ETAGS.good_3:
6245         * test/etags/ETAGS.good_4:
6246         * test/etags/ETAGS.good_5:
6247         * test/etags/ETAGS.good_6: Adjust to shift in characters and
6248         in line numbers.
6250 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
6252         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
6254         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
6256 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
6258         Make it possible to run make change-history on emacs-25
6260         * Makefile.in: Check if the current branch is emacs-25 instead of
6261           master.
6263 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
6265         Don't fiddle with DEFAULT
6267         * lisp/progmodes/project.el (project--completing-read-strict):
6268         Don't change DEFAULT, whether is has any matches in
6269         COLLECTION, or not.
6271 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
6273         Document xwidget commands and functions
6275         * doc/lispref/display.texi (Xwidgets): New section, describes some
6276         of the xwidget primitives.
6277         * doc/lispref/display.texi (Display): Update the chapter menu.
6278         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
6279         * doc/emacs/emacs.texi (Top): Update the master menu to include
6280         the xwidget node.
6282 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
6284         Build fix for shr.el
6286         * shr.el (seq): Require.
6288 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
6290         Improve project-find-file yet again!
6292         * lisp/progmodes/project.el (project--completing-read-strict):
6293         New function.
6294         (project-find-file-in): Use it.
6295         (project-file-completion-table): Move the default
6296         implementation inside the cl-defgeneric form.
6297         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
6299 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
6301         Don't pass DIR to 'hg status'
6303         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
6304         Don't pass DIR to 'hg status' (bug#22481).
6306 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
6308         Fix typo in previous commits
6310         * lisp/progmodes/project.el (project-find-file-in):
6311         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
6312         commit.
6314 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
6316         Improve project-find-file
6318         * lisp/progmodes/project.el (project-file-completion-table): New.
6319         (project-find-file, project-or-external-find-file): Default to filename
6320         at point.
6321         (project-file-completion-table): New, split out from
6322         project--find-file-in.
6323         (project-find-file-in): Renamed from project--find-file-in, use
6324         project-file-completion-table.
6326         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
6327         (xref--find-ignores-arguments): Add doc string.
6329 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
6331         Implement vc-mtn-find-ignore-file, fix some doc strings
6333         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
6335         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
6337         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
6339         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
6341 2016-01-29  Vincent Belaïche  <vincentb1@users.sourceforge.net>
6343         Correct a whole bunch of bugs coming with renamed cell relocation.
6345         This is the same change as commit on master branch. See
6346         http://git.savannah.gnu.org/cgit/emacs.git/commit/?id=badcd38aa86ed7973f2be2743c405710973a0bdd
6348         * lisp/ses.el (ses-localvars): rename variable
6349         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
6350         and adjust the comment about it.
6351         (ses-plist-delq): new defun.
6352         (ses--ses-buffer-list): new defvar.
6353         (ses--unbind-cell-name): new defun.
6354         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
6355         (ses-relocate-formula): Undo change of
6356         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
6357         preventing relocation for named cell --- now doing this is delegated
6358         to function `ses-relocate-symbol'.
6359         (ses-relocate-range): In docstring, undo change of
6360         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
6361         lower case as it is not a variable.
6362         (ses-relocate-all): Cell name relocation : 1) check that cell is a
6363         renamed cell by testing `ses-cell' property to :ses-named, rather than
6364         comparing name to corresponding standard name. Set rowcol of renamed
6365         cell into the hashmap --- `ses-cell' property must not be used for
6366         that as the same name can be used for different locations in different
6367         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
6368         `local-variable-p' to check if cell name is already in use in this
6369         sheet or needs initialization.
6370         (ses-relocate-all): Cell value relocation : 1) like for name
6371         relocation use the `ses-cell' property rather than comparing actual
6372         name to corresponding standard name. 2) Correct bug introduced in
6373         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
6374         made the other way round than the intention --- ie value relocation
6375         was disabled for standard cell, not for renamed cell as was the
6376         intention.
6377         (ses-relocate-all): Add loop for unbinding deleted renamed cells
6378         names.
6379         (ses-killbuffer-hook): new defun.
6380         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
6381         kill buffer hook, plus pushing current buffer if new in list.
6382         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
6383         into `ses--in-killing-named-cell-list'.
6384         (ses-rename-cell): Remove update of variable
6385         `ses--renamed-cell-symb-list', this variable is renamed to
6386         `ses--in-killing-named-cell-list', and its setting is done in
6387         functions `ses-delete-row' and , `ses-delete-column' now.
6388         (ses-rename-cell): Make cell new name a buffer local variable.
6389         (ses-rename-cell): Change correction of
6390         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
6391         computation of the range over which `cursor-intangible' property was
6392         to be updated. This correction was ok for non spilling cells, but not
6393         for cells spilling over following blank cells. Simply use
6394         `next-single-property-change' rather than computing the end column
6395         from column widths.
6397 2016-01-29  Andreas Schwab  <schwab@linux-m68k.org>
6399         Re-enable checks in member, memql, delete to complain about non-lists
6401         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
6403 2016-01-29  Martin Rudalics  <rudalics@gmx.at>
6405         Minor doc(-string) tweaks
6407         * lisp/window.el (window-in-direction): Fix doc-string typo.
6408         * doc/lispref/frames.texi (Frame Font): Mention canonical
6409         character width/height.
6410         * doc/lispref/windows.texi (Windows and Frames): Clarify
6411         handling of minibuffer window for `window-in-direction'.
6412         (Window Sizes): Minor tweaks in descriptions of
6413         `window-max-chars-per-line', `window-min-width' and
6414         `window-min-size'.
6415         (Deleting Windows): Minor tweak in `delete-window' description.
6416         (Selecting Windows): Clarify window use time description.
6417         (Cyclic Window Ordering): Minor tweak.
6418         (Switching Buffers): Clarify description of
6419         `switch-to-buffer-in-dedicated-window'.
6421 2016-01-29  Eli Zaretskii  <eliz@gnu.org>
6423         Minor improvements to 'pcase' documentation
6425         * doc/lispref/control.texi (Pattern matching case statement):
6426         Improve the documentation of 'pcase' per comments.  See two
6427         discussion threads on emacs-devel@gnu.org for the details:
6428         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01335.html
6429         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01336.html.
6431 2016-01-29  Glenn Morris  <rgm@gnu.org>
6433         Don't use eval to quieten prolog.el compilation.
6435         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
6436         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
6438 2016-01-29  Glenn Morris  <rgm@gnu.org>
6440         Mark some risky prolog variables.
6442         * lisp/progmodes/prolog.el (prolog-system-version)
6443         (prolog-keywords, prolog-types, prolog-mode-specificators)
6444         (prolog-determinism-specificators, prolog-directives)
6445         (prolog-program-name, prolog-program-switches)
6446         (prolog-consult-string, prolog-compile-string)
6447         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
6448         Mark anything processed by prolog-find-value-by-system as risky.
6450 2016-01-28  Glenn Morris  <rgm@gnu.org>
6452         * lisp/custom.el (defcustom): Doc fix.
6454         * doc/lispref/customize.texi (Variable Definitions):
6455         Defcustom should always have a type.
6457 2016-01-28  Glenn Morris  <rgm@gnu.org>
6459         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
6460         Fix :type.
6462         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
6464 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
6466         Fix Bug#22452
6468         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
6469         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
6470         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
6471         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
6472         Mark it as connected.
6474         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
6475         connection property "connected" is set.  (Bug#22452)
6477 2016-01-27  Glenn Morris  <rgm@gnu.org>
6479         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
6481         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
6482         if not compiled with xwidgets.
6484 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
6486         C-u C-x = example doc fix
6488         * doc/emacs/mule.texi (International Chars):
6489         Adjust example to match current behavior of C-u C-x =.
6491 2016-01-27  Paul Eggert  <eggert@cs.ucla.edu>
6493         malloc.h hygiene
6495         This attempts to future-proof Emacs a bit against possible glibc
6496         changes, by having Emacs use <malloc.h> declarations rather than
6497         coding them up by hand.  Problem noted by Florian Weimer in:
6498         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
6499         Implement this mainly by moving malloc.h-related functions from
6500         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
6501         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
6502         New function.
6503         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
6504         (alloc_unexec_pre, alloc_unexec_post): New functions.
6505         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
6506         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
6507         (__malloc_initialize_hook): Use it.
6508         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
6509         Move here from ...
6510         * src/emacs.c: ... here.
6511         (malloc_get_state, malloc_set_state): Remove extern decls.
6512         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
6513         All uses changed to similarly-named new function.
6514         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
6515         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
6516         New decls.
6518 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
6520         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
6522 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
6524         Remove never-set var handle_user_signal_hook
6526         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
6527         Remove never-set var.  All uses removed.
6529 2016-01-26  K. Handa  <handa@gnu.org>
6531         Backport:fix previous change of src/ftfont.c (ftfont_shape_by_flt)
6533         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
6534         second glyph only when there are enough glyphs.
6536         (cherry picked from commit 9835757013569673854b692ccbb58bfb3c3ed1f7)
6538 2016-01-26  K. Handa  <handa@gnu.org>
6540         support rendering of wider range of combinging characters by ftfont backend
6542         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
6543         supports rendering of combining characters, call
6544         font-shape-gstring.
6546         * src/font.c (Ffont_get): Handle `combining-capability' property.
6547         (syms_of_font): New symbol ":combining-capability'.
6549         * src/font.h (struct font_driver): New member combining_capability.
6551         * src/ftfont.c: Include "category.h".
6552         (ftfont_driver): Initialize combining_capability to
6553         ftfont_combining_capability.
6554         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
6555         FLT in advance.
6556         (ftfont_combining_capability): New function.
6558         (cherry picked from commit 536f48e9a2251b9e654ea974bd90ff2f40218753)
6560 2016-01-26  Anders Lindgren  <andlind@gmail.com>
6562         Fixed NextStep fullscreen issue (bug#22468)
6564         When in fullscreen mode, `[screen visibleFrame]' sometimes
6565         includes, sometimes excludes the menu bar. This could cause
6566         a frame to be placed too low when in fullscreen mode.
6568         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
6569         (constrain_frame_rect): New parameter, isFullscreen, when true don't
6570         query the height of the menu bar.
6571         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
6572         `constrain_frame_rect'.
6573         ([EmacsView initFrameFromEmacs:]): Trace.
6574         ([EmacsView isFullscreen]): Trace.
6575         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
6576         state to `constrain_frame_rect'.
6578 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
6580         * lisp/files.el: Use a fixed file name for the second dir-locals file
6582         (dir-locals-file): Revert to its original fixed value.
6583         (dir-locals-file-2): New const.
6584         (dir-locals--all-files): Don't use `file-name-all-completions'.
6585         Instead, just check for the 2 dir-locals files and return a list
6586         of the ones that exit (if any).
6588         * etc/NEWS: Document the change.
6590         * doc/emacs/custom.texi (Directory Variables): Document the change.
6592         * doc/lispref/variables.texi (Directory Local Variables): Update
6593         accordingly.
6595 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
6597         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
6599         Change a variable name to be more meaningful, and reorder some of
6600         the code with no change in behaviour.
6602 2016-01-26  Artur Malabarba  <bruce.connor.am@gmail.com>
6604         * lisp/files.el (dir-locals-find-file): Refactor return values
6606         Returning a cache remains unchanged, but the case of returning a
6607         file (or pattern) is now changed to return the contaning
6608         directory.
6610         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
6611         and make obsolete.
6612         (dir-locals-read-from-dir): Simplify accordingly.
6613         (hack-dir-local-variables): Simplify accordingly and rename a
6614         variable.
6616 2016-01-26  Glenn Morris  <rgm@gnu.org>
6618         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
6619         Declare.
6621         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
6623         * configure.ac (--with-cairo): Say it's experimental.
6625         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
6626         Rename using American spelling.  Update all uses.
6628 2016-01-26  Glenn Morris  <rgm@gnu.org>
6630         Yet more xwidget doc fixes.
6632         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
6633         (xwidget-insert, xwidget-webkit-browse-url)
6634         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
6635         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
6636         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
6637         (xwidget-webkit-show-id-element)
6638         (xwidget-webkit-show-id-or-named-element)
6639         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
6640         (xwidget-webkit-execute-script-rv)
6641         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
6642         (xwidget-put):  Doc fixes.
6643         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
6644         (xwidget-webkit-show-id-element)
6645         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
6647 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
6649         * lisp/gnus/gnus-art.el (gnus-blocked-images):
6650         Add explicit nil choice and tags.
6652 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
6654         Spelling fixes
6656 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
6658         (font-lock-ensure-function): Fix bug#22399
6660         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
6661         font-lock-mode is not enabled (bug#22399).
6663 2016-01-25  Alan Mackenzie  <acm@muc.de>
6665         Expunge "allow" + infinitive from source and doc, part 2.
6667         Do the same for "permit", "enable", "prevent", and (where appropriate)
6668         "require".
6670         doc/misc/reftex.texi:
6671         doc/misc/url.texi:
6672         lib/get-permissions.c:
6673         lib/strftime.c:
6674         lisp/org/org-element.el:
6675         lisp/org/org-mobile.el:
6676         lisp/textmodes/reftex-vars.el:
6677         src/bidi.c:
6678         src/emacs.c:
6679         src/xdisp.c:
6680         test/etags/c-src/emacs/src/lisp.h:
6682         Expunge the likes of "This allows to do something" from the above files.
6684 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
6686         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
6688         `special-mode' is already read-only.
6690 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
6692         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
6694 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
6696         Port "$@" to OpenIndiana ksh93
6698         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
6699         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
6700         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
6701         bug in long-dead shells, so remove the workaround.
6702         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
6703         Use plain "$@" rather than ${1+"$@"}.
6705 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
6707         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
6709 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
6711         Improve wording for SMB support
6713         * doc/misc/tramp.texi (External methods): Improve and modernize
6714         wording for discussion of smbclient.  There is no longer any
6715         need to mention the laundry list of old MS Windows implementations
6716         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
6718 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
6720         Merge from gnulib
6722         This incorporates:
6723         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
6724         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
6725         2016-01-15 detect utimes() correctly on OS/2 kLIBC
6726         2016-01-15 openat_proc_name: port to OS/2 kLIBC
6727         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
6728         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
6729         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
6730         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
6731         2016-01-14 sig2str: list all signals on FreeBSD >= 7
6732         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
6733         2016-01-12 mktime: rename macro to avoid glibc clash
6734         2016-01-12 Port "$@" to OpenIndiana ksh93
6735         2016-01-12 Port Universal Time settings to strict POSIX
6736         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
6737         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
6738         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
6739         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
6740         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
6741         * m4/fcntl.m4, m4/utimes.m4:
6742         Copy from gnulib.
6743         * m4/gnulib-comp.m4: Regenerate.
6745 2016-01-24  Alan Mackenzie  <acm@muc.de>
6747         Expunge "allow" + infinitive without direct object from source and doc.
6749         Do the same for "permit", "enable", and "prevent".
6751         * doc/emacs/mule.texi:
6752         * doc/lispref/control.texi:
6753         * doc/lispref/display.texi:
6754         * doc/lispref/frames.texi:
6755         * doc/lispref/functions.texi:
6756         * doc/lispref/nonascii.texi:
6757         * doc/lispref/streams.texi:
6758         * doc/lispref/windows.texi:
6759         * doc/misc/dbus.texi:
6760         * doc/misc/eww.texi:
6761         * doc/misc/flymake.texi:
6762         * doc/misc/octave-mode.texi:
6763         * doc/misc/org.texi:
6764         * doc/misc/reftex.texi:
6765         * doc/misc/tramp.texi:
6766         * doc/misc/wisent.texi:
6767         * etc/NEWS:
6768         * lisp/autorevert.el:
6769         * lisp/cedet/mode-local.el:
6770         * lisp/cedet/semantic/senator.el:
6771         * lisp/cedet/semantic/wisent.el:
6772         * lisp/dos-fns.el:
6773         * lisp/frameset.el:
6774         * lisp/gnus/gnus-agent.el:
6775         * lisp/gnus/mm-util.el:
6776         * lisp/international/characters.el:
6777         * lisp/ldefs-boot.el:
6778         * lisp/mail/mailclient.el:
6779         * lisp/man.el:
6780         * lisp/mh-e/mh-search.el:
6781         * lisp/net/tramp-cmds.el:
6782         * lisp/net/tramp-gvfs.el:
6783         * lisp/org/org-crypt.el:
6784         * lisp/org/org-element.el:
6785         * lisp/org/org-feed.el:
6786         * lisp/org/org.el:
6787         * lisp/org/ox-ascii.el:
6788         * lisp/org/ox-icalendar.el:
6789         * lisp/org/ox-publish.el:
6790         * lisp/org/ox.el:
6791         * lisp/play/gamegrid.el:
6792         * lisp/play/gomoku.el:
6793         * lisp/progmodes/antlr-mode.el:
6794         * lisp/progmodes/python.el:
6795         * lisp/progmodes/vhdl-mode.el:
6796         * lisp/strokes.el:
6797         * lisp/textmodes/ispell.el:
6798         * lisp/tree-widget.el:
6799         * lisp/vc/pcvs.el:
6800         * lisp/window.el:
6801         * src/lisp.h:
6802         * src/w32.c:
6803         * src/w32heap.c:
6804         * src/w32term.c:
6805         * src/window.c:
6806         * src/xfaces.c:
6808         Replace solecisms like "This allow to do something" with a correct
6809         alternative, such as "This allow you to do something", "This allows
6810         something to be done" or "This allows the doing of something".
6812 2016-01-24  l3thal  <kwhite@gnu.org>
6814         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
6816 2016-01-24  Kelvin White  <kwhite@gnu.org>
6818         Add NEWS entry for asynchronous reconnect in ERC
6820 2016-01-24  l3thal  <kwhite@gnu.org>
6822         Add NEWS entry for asynchronous reconnect in ERC
6824 2016-01-24  Kelvin White  <kwhite@gnu.org>
6826         browse-url.el: Add 'google-chrome' to supported browsers.
6828 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
6830         Port Tramp manual to latest Texinfo
6832         Otherwise, 'make pdf' did not work (Bug#22416).
6833         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
6834         (trampfn): Specialize to the case where METHOD is nonempty.
6835         The 2nd argument is now user@host, not 2nd user and 3rd host args.
6836         All uses changed.
6837         (trampf): New macro.
6839 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
6841         * eww.el (eww-render): Protect against empty content-types.
6843 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
6845         authors.el updates
6847         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
6848           Additions.
6850 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
6852         Rename xref-query-replace to xref-query-replace-in-results
6854         * lisp/progmodes/xref.el(xref-query-replace):
6855         Rename to xref-query-replace-in-results.
6856         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
6858         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
6859         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
6860         * doc/emacs/dired.texi (Operating on Files):
6861         * doc/emacs/maintaining.texi (Xref Commands)
6862         (Identifier Search, Identifier Search): Update accordingly.
6864 2016-01-24  Dmitry Gutov  <dgutov@yandex.ru>
6866         Update cl-defgeneric and cl-defmethod docstrings
6868         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
6869         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
6870         (cl-defmethod): Mention that multiple dispatch arguments are
6871         allowed.  Document supported types.  (Bug#22336)
6873 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
6875         Comment out next-error-function integration in xref
6877         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
6878         Comment out next-error-function integration
6879         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
6881 2016-01-23  John Wiegley  <johnw@newartisans.com>
6883         Correct a use of "which" in intro.texi
6885 2016-01-23  Alan Mackenzie  <acm@muc.de>
6887         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
6889         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
6890         context of case labels (including "default") more rigorously.
6891         (c-guess-basic-syntax CASE 15): Consequential amendment.
6893         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
6895 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
6897         Don't operate on menu bar of nonexistent frame
6899         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
6900         is valid before redisplaying its menu. Fixes bug#22438.
6902 2016-01-23  Anders Lindgren  <andlind@gmail.com>
6904         Unbreak the GNUstep build.
6906         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
6907         predefined "caution" image. Add trace.
6908         (x_set_window_size): Remove unused variables `cols' and `rows'.
6909         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
6910         GNUstep is used.
6911         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
6912         ([EmacsWindow zoom:]): Remove unused variable `f'.
6914 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
6915             John Wiegley  <johnw@gnu.org>
6916             Michael Heerdegen  <michael_heerdegen@web.de>
6918         Improve documentation of 'pcase'
6920         * doc/lispref/control.texi (Pattern matching case statement):
6921         Reorganize, expand, and improve wording.
6923         * etc/NEWS: Mention that 'pcase' changes are documented.
6925 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
6927         * etc/NEWS: Say that Cairo is experimental.
6929 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
6931         Report error for PNG under Cairo
6933         * src/image.c (lookup_rgb_color): Signal a file error instead
6934         of dumping core when mishandling an image.
6936 2016-01-23  Arash Esbati  <esbati@gmx.de>
6938         Delete a spurious backquote (tiny change)
6940         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
6941         spurious backquote which raises an error with emacs 25.
6943 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
6945         Pacify --enable-gcc-warnings --with-cairo
6947         Problem reported by Alexander Kuleshov in:
6948         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
6949         * src/gtkutil.c (xg_get_page_setup):
6950         Use switch rather than if-then-else.
6951         * src/image.c (COLOR_TABLE_SUPPORT):
6952         Define directly rather than via #define and optional later #undef.
6953         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
6954         Crash when the pixel is undefined, as there is a genuine bug
6955         here (Bug#22442).
6956         * src/image.c (tiff_load, gif_load, svg_load_image)
6957         (x_kill_gs_process) [USE_CAIRO]:
6958         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
6959         Omit unused locals, or move them to where they’re needed.
6960         (x_clear_area1): Now ATTRIBUTE_UNUSED.
6962 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
6964         Update documentation for Dired search and replace
6966         * doc/emacs/dired.texi (Operating on Files): Update descriptions
6967         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
6968         'dired-do-find-regexp-and-replace'.
6970         * etc/NEWS: Mention xref-related changes in Dired.
6972 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
6974         Port recent xdisp.c fix to picky C compilers
6976         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
6977         putting #if inside the arguments to a standard function, which
6978         the C standard says has undefined behavior.
6980 2016-01-22  Alan Mackenzie  <acm@muc.de>
6982         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
6984         * lisp/progmodes/cc-engine.el (c-forward-declarator): New function.
6985         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
6986         contained in the preceding arg list.
6988         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Use the new function
6989         `c-forward-declarator' in place of inline code.
6991 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
6993         Fix the build with --enable-checking=glyphs
6995         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
6996         build without xwidget support.
6998 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
7000         Document cl-generic.el
7002         * doc/lispref/functions.texi (Generic Functions): New section.
7003         (Bug#22336)
7004         (Functions): Update the chapter menu.
7005         * doc/lispref/elisp.texi: Update the master menu.
7007 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
7009         xwidgets style cleanup
7011         Adjust the newly-added Xwidgets code so that it uses a more-typical
7012         Emacs style.  This should not affect behavior, except that in
7013         a few places it adds runtime checks that Lisp arguments are of
7014         the proper type, and in one place it uses more-precise arithmetic.
7015         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
7016         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
7017         Include xwidget.h unconditionally.
7018         * src/buffer.c (Fkill_buffer):
7019         * src/dispnew.c (update_window):
7020         * src/emacs.c (main):
7021         * src/print.c (print_object):
7022         * src/window.c (Fdelete_window_internal):
7023         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
7024         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
7025         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
7026         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
7027         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
7028         Call xwidget functions and macros without worrying about
7029         HAVE_XWIDGETS when the code is a no-op on non-xwidget
7030         platforms.
7031         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
7032         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
7033         (struct it.xwidget):
7034         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
7035         Always define.
7036         * src/emacsgtkfixed.h: Omit unnecessary comment.
7037         * src/keyboard.c: Fix spacing.
7038         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
7039         Define to be a no-op if not HAVE_XWIDGETS.
7040         * src/xwidget.c: Include xwidget.h first (after config.h)
7041         to make sure that it can stand by itself.
7042         (Fmake_xwidget, Fxwidget_webkit_execute_script):
7043         Fix typo in doc string.
7044         (Fmake_xwidget): Check type of args.
7045         (Fmake_xwidget, offscreen_damage_event)
7046         (webkit_document_load_finished_cb, webkit_download_cb)
7047         (webkit_new_window_policy_decision_requested_cb)
7048         (webkit_navigation_policy_decision_requested_cb)
7049         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
7050         (xwidget_osr_event_set_embedder, xwidget_init_view):
7051         Omit unnecessary casts.
7052         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
7053         (xwidget_show_view, xwidget_hide_view)
7054         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
7055         (xwidget_touched):
7056         * src/xwidget.h (struct xwidget.kill_without_query)
7057         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
7058         Use bool for boolean.
7059         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
7060         Simplify by using list functions.
7061         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
7062         (Fxwidget_resize): Check type of integer args
7063         before doing any work.  Check that they are nonnegative.
7064         (Fxwidget_set_adjustment): Check type of integer arg.
7065         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
7066         Simplify.  Use double, not float.
7067         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
7068         (valid_xwidget_spec_p): Simplify.
7069         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
7070         * src/xwidget.h: Include lisp.h first, so that includers do
7071         not need to worry about doing that before including this file.
7072         Make this .h file safe to include even on non-HAVE_XWIDGETS
7073         configurations, to simplify the includers.
7074         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
7075         (xwidget_end_redisplay, lookup_xwidget)
7076         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
7077         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
7078         (struct glyph_matrix, struct glyph_string, struct xwidget)
7079         (struct xwidget_view, struct window):
7080         New forward or incomplete decls, so that includers need not
7081         assume the corresponding .h files are already included, or that
7082         HAVE_XWIDGETS is defined.
7083         (struct xwidget_type, xwidget_from_id): Remove; unused.
7085 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
7087         Backport kqueue integration from master
7089         * configure.ac (--with-file-notification): Add kqueue.
7090         (top): Remove special test for "${HAVE_NS}" and
7091         ${with_file_notification}, this is handled inside gfilenotify
7092         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
7093         instead of library specific variables.  Add error message for
7094         gfile on Nextstep.
7096         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
7097         Fix some glitches in the example.
7099         * etc/NEWS: Mention kqueue.
7101         * lisp/filenotify.el (file-notify--library)
7102         (file-notify-descriptors, file-notify-callback)
7103         (file-notify-add-watch, file-notify-rm-watch)
7104         (file-notify-valid-p): Add kqueue support.
7105         (file-notify--rm-descriptor): Remove WHAT arg.
7107         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
7109         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
7111         * src/inotify.c (inotifyevent_to_event): Extract file name from
7112         watch_object if the event doesn't provide it.
7113         (Finotify_add_watch): Add file name to watch_object.
7115         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
7117         * src/kqueue.c: New file.
7119         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
7121         * test/automated/file-notify-tests.el
7122         (file-notify--test-expected-events): Remove.
7123         (file-notify--test-cleanup): Do not set that variable.
7124         (file-notify--test-timeout) Use different timeouts for
7125         different libraries.
7126         (file-notify--test-library): New defun.
7127         (file-notify--test-event-test): Make stronger checks.
7128         (file-notify--test-with-events): EVENTS can also be a list of
7129         lists.  Flush outstanding events before running the body.
7130         Make timeout heuristically depend on the number of events.
7131         (file-notify-test01-add-watch, file-notify-test02-events)
7132         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
7133         Rewrite in order to call file monitors but directory monitors.
7134         (file-notify-test02-events, file-notify-test04-file-validity): Do
7135         not skip cygwin tests.  Add additional test for file creation.
7136         Adapt expected result for different backends.
7137         (file-notify-test03-autorevert): Some of the tests don't work for
7138         w32notify.
7139         (file-notify-test06-many-events): New test.
7141 2016-01-22  John Wiegley  <johnw@newartisans.com>
7143         Further corrections to the pcase docstring
7145 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
7147         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
7149 2016-01-22  Stephen Leake  <stephen_leake@stephe-leake.org>
7151         In xref-collect-references, force backends to respect the 'dir' arg
7153         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
7154         to use `default-directory'.
7156 2016-01-22  John Wiegley  <johnw@newartisans.com>
7158         Minor correction to pcase docstring
7160 2016-01-22  John Wiegley  <johnw@newartisans.com>
7162         Write a new docstring for the pcase macro
7164         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
7166 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
7168         Avoid byte-compiler warning in todo-mode (bug#21953)
7170         * lisp/calendar/todo-mode.el (todo-convert-legacy-files): Add limit argument
7171         to looking-back to comply with advertised-calling-convention.
7173 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
7175         Fix desktop support in todo-mode and doc-view (bug#22377)
7177         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
7178         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
7180         * lisp/calendar/todo-mode.el (todo-modes-set-2):
7181         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
7183 2016-01-21  Paul Eggert  <eggert@cs.ucla.edu>
7185         No need to configure gobject-introspection
7187         It wasn’t needed for the recently-installed xwidget_mvp code; see:
7188         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
7189         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
7190         (HAVE_GIR):
7191         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
7192         Remove.  All uses removed.
7193         * configure.ac (emacs_config_features): Don’t worry about GIR.
7195 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
7197         Don’t export C symbols not used elsewhere
7199         These were recently added, mostly as part of xwidget code.
7200         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
7201         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
7202         Now static functions here, not macros in emacsgtkfixed.h.
7203         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
7204         Remove.  All uses replaced by definiens.
7205         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
7206         Remove; these are now static functions in emacsgtkfixed.c.
7207         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
7208         Remove; unused.
7209         (emacs_fixed_get_type): Remove decl; no longer extern.
7210         * src/xwidget.c (offscreen_damage_event)
7211         (webkit_mime_type_policy_typedecision_requested_cb)
7212         (webkit_new_window_policy_decision_requested_cb)
7213         (webkit_navigation_policy_decision_requested_cb)
7214         (xwidget_spec_value, xwidget_view_lookup)
7215         (xwidget_start_redisplay, xwidget_touch):
7216         Now static.
7217         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
7218         Remove decls.
7220 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
7222         Support squiggly heredocs in ruby-mode
7224         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
7225         Support squiggly heredocs added in Ruby 2.3.
7227         * test/indent/ruby.rb: Add squiggly example.
7229 2016-01-20  Glenn Morris  <rgm@gnu.org>
7231         * configure.ac (emacs_config_features): Remove WEBKIT.
7233 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
7235         Port to platforms with gtk3 but not webkitgtk3
7237         I ran into this problem on my Fedora 23 installation;
7238         Emacs configured but did not build when --with-xwidgets was specified.
7239         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
7240         (DOES_XWIDGETS_USE_GIR): New var.
7241         If --with-xwidgets is specified, report an error if not
7242         doable, to be consistent with the other --with options.
7243         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
7244         not work at all without webkitgtk3.  Simplify use of
7245         EMACS_CHECK_MODULES.  Output message about gobject
7246         introspection only if xwidgets are used.
7247         * etc/NEWS: Users need webkitgtk3, not merely webkit.
7248         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
7249         since this file is no longer compiled if webkitgtk3 is not available.
7251 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
7253         Fix doc string of 'isearch-search-fun-function'
7255         * lisp/isearch.el (isearch-search-fun-function)
7256         (isearch-search-string): Doc fixes.  (Bug#22411)
7258 2016-01-20  Stefan Monnier  <monnier@iro.umontreal.ca>
7260         * lisp/xwidget.el: Nitpicks
7262         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
7263         Use with-current-buffer rather than save-excursion + set-buffer.
7265 2016-01-20  Glenn Morris  <rgm@gnu.org>
7267         Don't hard-code 1 as point-min.
7269         * lisp/image-mode.el (image-display-size):
7270         * lisp/xwidget.el (xwidget-webkit-last-session)
7271         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
7273 2016-01-20  Glenn Morris  <rgm@gnu.org>
7275         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
7277 2016-01-20  Glenn Morris  <rgm@gnu.org>
7279         Trivial doc copyedits.
7281         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
7282         (Fxwidget_webkit_get_title, Fxwidget_resize)
7283         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
7284         (Fxwidget_info, Fxwidget_view_lookup)
7285         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
7287 2016-01-20  Glenn Morris  <rgm@gnu.org>
7289         Avoid advising image-display-size for xwidgets.
7291         * lisp/xwidget.el (xwidget-image-display-size): Remove.
7292         (image-display-size): Remove advice.
7293         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
7294         (image-display-size): Incorporate xwidget code directly.
7296 2016-01-20  Glenn Morris  <rgm@gnu.org>
7298         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
7300         * lisp/xwidget.el (window-configuration-change-hook)
7301         (kill-buffer-query-functions): Only modify these hooks if
7302         compiled with xwidget support.
7304 2016-01-20  Glenn Morris  <rgm@gnu.org>
7306         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
7308 2016-01-19  Glenn Morris  <rgm@gnu.org>
7310         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
7312         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
7314         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
7316 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
7318         * lisp/gnus/nnir.el (nnir-request-update-mark):
7319         Default to the original mark.
7320         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
7321         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
7323 2016-01-19  Glenn Morris  <rgm@gnu.org>
7325         * lisp/xwidget.el (report-xwidget-bug): Remove.
7327         (top-level): No longer require reporter.
7329 2016-01-19  Joakim Verona  <joakim@verona.se>
7330             Grégoire Jadi  <daimrod@gmail.com>
7332         Support for the new Xwidget feature.
7334         * configure.ac:
7335         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
7336         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
7337         * src/xdisp.c:
7338         (handle_display_spec, handle_single_display_spec, push_it)
7339         (pop_it, set_iterator_to_next, dump_glyph)
7340         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
7341         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
7342         (produce_xwidget_glyph, x_produce_glyphs)
7343         (get_window_cursor_type):
7344         * src/window.c (Fdelete_window_internal):
7345         * src/termhooks.h (e):
7346         * src/print.c (print_object):
7347         * src/lisp.h (ptrdiff_t):
7348         * src/keyboard.c (kbd_buffer_get_event, make_lispy_event)
7349         (syms_of_keyboard):
7350         * src/emacs.c (main):
7351         * src/dispnew.c (update_window, scrolling_window):
7352         * src/dispextern.h (g, i):
7353         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
7354         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
7355         * src/keyboard.c (kbd_buffer_get_event):
7356         * src/emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
7357         (emacs_fixed_class_init): Add case for an xwidget view.
7359         * src/xwidget.c, src/xwidget.h, lisp/xwidget.el: New files for xwidgets
7362         Various improvements to the Xwidget feature.
7363         * src/xwidget.c:
7364         * src/emacsgtkfixed.c:
7365         * lisp/xwidget.el:
7367 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
7369         Improve documentation of 'alist-get'
7371         * doc/lispref/variables.texi (Setting Generalized Variables): Add
7372         'alist-get' to the list of functions that can appear in PLACE
7373         argument of 'setf'.
7375 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
7377         Minor copyedits of doc/emacs/maintaining.texi
7379         * doc/emacs/maintaining.texi (List Identifiers): More accurate
7380         description of "C-M-i" wrt tags tables.
7381         (Tags Tables): Move the definition of "tag" to a footnote.
7383 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
7385         Unbreak the Cygwin-w32 build
7387         * src/w32fns.c (globals_of_w32fns): Move the initialization of
7388         resetstkoflw into a part that isn't compiled on Cygwin.
7389         (Bug#22403)
7391 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
7393         * shr.el (shr-table-body): Allow tables to have text children.
7395 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
7397         Cope with multiple overlapping faces.
7399         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
7400           left.
7401           (hfy-face-resolve-face): Handle font specification as well as font
7402           name. Documentation update. (Bug#21990)
7404 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
7406         Fix spurious escapes in describe-input-method
7408         Problem reported by Vincent Belaïche (Bug#22309).
7409         * lisp/international/mule-cmds.el (describe-language-environment):
7410         * lisp/international/quail.el (quail-help):
7411         Apply substitute-command-keys to doc strings before displaying them.
7413 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
7415         Minor improvements to (random t) documentation
7417         * doc/lispref/numbers.texi (Random Numbers):
7418         * src/fns.c (Frandom):
7419         Omit unnecessary details about randomness fallback.
7420         Say that it is a fallback.
7422 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
7424         Rename methods in Ruby etags example file
7426         * test/etags/ruby-src/test.rb: Rename the example methods to
7427         correspond to the common terminology used in Ruby.
7428         * test/etags/CTAGS.good:
7429         * test/etags/ETAGS.good_1:
7430         * test/etags/ETAGS.good_2:
7431         * test/etags/ETAGS.good_3:
7432         * test/etags/ETAGS.good_4:
7433         * test/etags/ETAGS.good_5:
7434         * test/etags/ETAGS.good_6: Adjust accordingly.
7436 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
7438         Propertize backtick in 'def `(abc)' as symbol constituent
7440         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
7441         Propertize backtick in 'def `(abc)' as symbol constituent.
7442         (ruby-syntax-propertize-function):
7443         Rename to ruby-syntax-propertize.
7445 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
7447         Fix scrolling under scroll-preserve-screen-position on TTY
7449         * src/window.c (window_scroll_line_based): When setting point to
7450         preserve screen coordinates, don't let cursor enter either of the
7451         two scroll margins.  (Bug#22395)
7453 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
7455         Fix shr table rendering of nested tables
7457         * shr.el (shr-table-body): Don't include all tbodies in nested
7458         tables in the levels above.
7460 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
7462         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
7464 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
7466         Add xref-based replacements for Dired search commands
7468         * lisp/dired-aux.el (dired-do-find-regexp)
7469         (dired-do-find-regexp-and-replace): New commands.
7470         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
7472         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
7473         `Q' to the new commands.
7475         * lisp/progmodes/xref.el (xref-query-replace)
7476         (xref-collect-matches): Add progress reporters.
7477         (xref--find-ignores-arguments): Return nil for zero ignores.
7478         (xref--show-xrefs): Add an optional argument.
7479         (xref-collect-matches): Drop the assert.  'find' accepts a
7480         regular file in place of directory argument, too.
7482 2016-01-18  Alan Mackenzie  <acm@muc.de>
7484         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
7486 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
7488         Improve user documentation of Xref
7490         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
7491         (Looking Up Identifiers, Identifier Search, List Identifiers):
7492         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
7493         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
7494         for the details.
7496 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
7498         Fix scrolling under scroll-preserve-screen-position and margins
7500         * src/window.c (window_scroll_pixel_based): When setting point to
7501         preserve screen coordinates, don't let cursor enter either of the
7502         two scroll margins.  Fix incorrect usage of
7503         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
7504         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
7506 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
7508         Unbreak the MS-Windows build
7510         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
7511         WINDOWSNT, to avoid link failure.  (Bug#22202)
7513 2016-01-18  Alan Mackenzie  <acm@muc.de>
7515         Desktop: protect users against inadvertant upgrading of desktop file.
7517         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
7519         * etc/NEWS: Add an entry about upgrading a desktop file.
7521         * lisp/desktop.el (desktop-file-version): Amend doc string.
7522         (desktop-native-file-version, desktop-io-file-version): new variables.
7523         (desktop-clear): Set desktop-io-file-version to nil.
7524         (desktop-buffer-info): make the presence of the last item on the list
7525         conditional on (>= desktop-io-file-version 208).
7526         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
7527         Amend the doc string.  Add code to determine the output file version.
7528         (desktop-create-buffer): Set desktop-io-file-version to the input file's
7529         version.
7531 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
7533         Initialize GnuTLS before calling gnutls_rnd
7535         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
7536         Don’t set gnutls_global_initialized if gnutls_global_init fails.
7537         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
7538         if 2.12 or later, which has gnutls_rnd.
7539         (emacs_gnutls_global_init, gnutls_rnd): New fallback
7540         placeholder macros if before 2.12.
7541         (init_random): Initialize gnutls globals before trying to
7542         use gnutls_rnd.
7544 2016-01-18  Andreas Schwab  <schwab@linux-m68k.org>
7546         Don't use GnuTLS before it is initialized
7548                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
7550 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
7552         Port cleanup attribute to OpenBSD
7554         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
7555         sprintf, and this messes up 'configure' when it tests for the cleanup
7556         attribute.  Work around the problem by using __has_attribute directly.
7557         Problem reported by Joakim Jalap (Bug#22385).
7558         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
7559         * m4/ax_gcc_var_attribute.m4: Remove.
7560         * src/conf_post.h (__has_attribute): Provide a substitute, for
7561         non-GCC or older GCC compilers.  All uses changed to assume
7562         the substitute.  Check for the cleanup attribute.
7563         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
7565 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
7567         Prefer GnuTLS when acquiring random seed
7569         This attempts to improve on the fix for Bug#22202.
7570         * configure.ac (HAVE_DEV_URANDOM): Remove.
7571         Check /dev/urandom existence at run time, not at build time,
7572         since the device could exist in the former but not the latter.
7573         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
7574         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
7575         (random_seed): New typedef.
7576         (set_random_seed): New static function.
7577         (seed_random): Use them.
7578         (init_random): Use random_seed instead of uintmax_t, so as to
7579         not consume more entropy than needed.  Prefer gnutls_rnd if it
7580         works; this avoids a redundant open of /dev/urandom on
7581         GNU/Linux with modern GnuTLS.
7583 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7585         Improve documentation of dynamic modules
7587         * doc/lispref/loading.texi (How Programs Do Loading): Update the
7588         description of searching for files in 'load' when Emacs was built
7589         with support for dynamic modules.
7591 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7593         * INSTALL: Document --with-modules.
7595 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7597         Document 'function-put'
7599         * doc/lispref/symbols.texi (Symbol Plists): Document
7600         'function-put'.  Update documentation of 'function-get'.
7602 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7604         Document 'funcall-interactively'
7606         * doc/lispref/commands.texi (Interactive Call): Document
7607         'funcall-interactively'.
7608         * doc/lispref/functions.texi (Calling Functions): Mention
7609         'funcall-interactively' and provide a cross-reference.
7611 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7613         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
7615         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
7617 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7619         Document renaming of selection-related functions
7621         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
7622         functions into the corresponding "gui-*" functions.  Make the
7623         description slightly less X-centric.
7625 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7627         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
7629 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7631         Document 'define-inline'
7633         * doc/lispref/functions.texi (Defining Functions): Document
7634         'define-inline' and related macros.
7636         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
7638 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
7640         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
7642         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
7644 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
7646         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
7648         instead of manually writing a dir-locals file.
7650 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
7652         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
7654         (dir-locals-file)
7655         * lisp/files-x.el (modify-dir-local-variable)
7656         * lisp/dos-fns.el (dosified-file-name)
7657         * lisp/help-fns.el (describe-variable): Change accordingly.
7659 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
7661         Fix incompatbilities with MS-Windows 2000 and older
7663         * src/w32.c <multiByteToWideCharFlags>: New global variable.
7664         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
7665         Use it instead of the literal MB_ERR_INVALID_CHARS.
7666         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
7667         appropriate for the underlying OS version.  For details, see
7668         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
7669         * src/w32.h: Declare multiByteToWideCharFlags.
7670         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
7671         (add_tray_notification): Use multiByteToWideCharFlags instead of
7672         the literal MB_ERR_INVALID_CHARS.
7673         (_resetstkoflw_proc): New typedef.
7674         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
7675         pointer, as this function is absent in msvcrt.dll shipped with W2K
7676         and older systems.
7678 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7680         Mention in PROBLEMS an issue with MS-Windows NT4
7682         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
7683         on Windows NT4.  For the details, see
7684         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
7686 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
7688         Ensure 8-byte aligned memory allocation on MS-Windows 9X
7690         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
7691         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
7692         (malloc_after_dump_9x, realloc_after_dump_9x)
7693         (free_after_dump_9x): New functions.  (Bug#22379)  See also
7694         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
7695         for more details about the original problem.
7697         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
7698         (free_after_dump_9x): Add prototypes.
7700 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7702         Fix tests for active region in hideif.el
7704         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
7705         'use-region-p' to test whether to operate on region, instead of
7706         testing 'mark-active'.
7708 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
7710         Fix interactive specs in some hideif.el commands
7712         * lisp/progmodes/hideif.el (hif-evaluate-macro)
7713         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
7714         in commands that should only act on the region if it's active.
7716 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
7718         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
7720 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
7722         Enable test selector from command line
7724         * test/automated/Makefile.in: Change variable manipulation to avoid
7725           over-writing selector.
7727 2016-01-15  Alan Mackenzie  <acm@muc.de>
7729         Don't confuse "::" with ":" when trying to parse member initializers.
7731         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
7732         more robustly for ":" token when searching backwards for it.
7734         * lisp/progmodes/cc-langs.el (c-:$-multichar-token-regexp): New language
7735         variable.
7737 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
7739         Ensure positive number of glyphs for margins of positive width
7741         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
7742         positive value when a non-zero width of the marginal area was
7743         requested.  (Bug#22356)
7745 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
7747         Fix crashes when mini-window has non-zero margins
7749         * src/window.c (resize_frame_windows): Use 'new_size' to set
7750         minibuffer window's 'total_cols' value, as 'size' might be in
7751         pixels.  (Bug#22356)
7753 2016-01-15  Alan Mackenzie  <acm@muc.de>
7755         In comment-dwim with style `extra-line', respect indent-tabs-mode.
7757         This fixes bug #22369.
7759         * lisp/newcomment.el (comment-make-bol-ws): New function.
7760         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
7762 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
7764         Make 'random' seeds cryptographically secure if possible
7766         * configure.ac: Check for "/dev/urandom".
7768         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
7769         for the seed from "/dev/urandom".
7770         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
7771         * src/fns.c (Frandom): Update the doc string to indicate that
7772         system entropy is used when available.
7773         * src/w32.c: Include wincrypt.h.
7774         (w32_init_crypt_random, w32_init_random): New functions, use the
7775         CryptGenRandom API.
7776         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
7777         * src/w32.h (w32_init_random): Add prototype.
7779         * doc/lispref/numbers.texi (Random Numbers): Document more details
7780         about 't' as the argument to 'random'.
7782         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
7783         strong seed if possible.
7785         (Bug#22202)
7787 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
7789         Unhide the --no-line-directive option to 'etags'
7791         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
7792         option.  (Bug#22306)
7794         * doc/man/etags.1: Document the --no-line-directive option.
7796 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
7798         Fix picture-mode wrt double-width characters
7800         * lisp/textmodes/picture.el (picture-insert): Check the width of
7801         the character being replaced, not just that of the replacement.
7802         (Bug#1808)
7804 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
7806         Honor docstring of gnus-group-get-new-news
7808         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
7809         but non-numeric, unconditionally consider all groups to need updating.
7811 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
7813         Disallow parenthesis in non-pseudo CSS selectors
7815         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
7816         parenthesis in selectors except for in the function notation that
7817         might appear right after a pseudo-class.
7818         * test/indent/scss-mode.scss: Add a test for it.
7820 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
7822         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
7824 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
7826         check-maybe shall run only default tests
7828         * test/automated/Makefile.in (check, check-expensive): Depend on
7829         mostlyclean.
7830         (check-maybe): Re-run only default tests.
7831         (check-doit): Use code of check-maybe.
7832         (mostlyclean): Move *.log files away.
7834 2016-01-14  Mark Oteiza  <mvoteiza@udel.edu>
7836         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
7838 2016-01-14  Dmitry Gutov  <dgutov@yandex.ru>
7840         Un-obsolete tags-loop-continue
7842         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
7843         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
7845 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
7847         Document obsoletion of 'intangible' and 'point-entered/left'
7849         * doc/lispref/text.texi (Special Properties): Document the new
7850         properties 'cursor-intangible' and 'cursor-sensor-functions'.
7851         Document the obsolete status of 'intangible', 'pointer-left',
7852         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
7853         * doc/lispref/display.texi (Overlay Properties): Document that
7854         'intangible' overlay property is obsolete.
7856         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
7858 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
7860         Updater documentation of 'looking-back'
7862         * doc/lispref/searching.texi (Regexp Search): Update documentation
7863         of 'looking-back'.  Fix markup.
7865 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
7867         Document 'pre-redisplay-functions'
7869         * doc/lispref/hooks.texi (Standard Hooks):
7870         * doc/lispref/display.texi (Forcing Redisplay): Document
7871         'pre-redisplay-functions'.
7873 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
7875         Document the new deafault value of 'load-read-function'
7877         * doc/lispref/loading.texi (How Programs Do Loading): Document the
7878         change in the default value of 'load-read-function'.
7880 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
7882         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
7884         * doc/lispref/nonascii.texi (Text Representations): Document
7885         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
7887 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
7889         Document the new prefix-command hooks
7891         * doc/lispref/hooks.texi (Standard Hooks): Document
7892         `prefix-command-echo-keystrokes-functions' and
7893         `prefix-command-preserve-state-hook'.
7895 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
7897         Fix one more misuse of time-stamp-time-zone
7899         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
7900         than the unportable "GMT" for time zone.
7902 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
7904         Fix NNTP NEWGROUPS off-by-a-few-hours bug
7906         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
7907         in Universal Time, since we’re telling the server “GMT”.
7909 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
7911         Update publicsuffix.txt from upstream
7913         * etc/publicsuffix.txt: Update from
7914         https://publicsuffix.org/list/effective_tld_names.dat
7915         dated 2016-01-12 11:52:01 UTC.
7917 2016-01-13  Glenn Morris  <rgm@gnu.org>
7919         Fix some declarations.
7921         * lisp/descr-text.el (internal-char-font):
7922         * lisp/cedet/mode-local.el (xref-item-location):
7923         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
7924         (epg-sub-key-capability, epg-sub-key-validity):
7925         * lisp/international/mule-util.el (internal-char-font):
7926         Fix declarations.
7928 2016-01-13  Glenn Morris  <rgm@gnu.org>
7930         Fix some custom types.
7932         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
7933         * lisp/gnus/gnus.el (gnus-valid-select-methods):
7934         * lisp/mail/rmail.el (rmail-get-coding-function):
7935         * lisp/net/newst-treeview.el (newsticker-groups-filename):
7936         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
7937         * lisp/textmodes/tildify.el (tildify-space-predicates):
7938         * lisp/url/url-tramp.el (url-tramp-protocols):
7939         Fix custom types.
7941 2016-01-13  Glenn Morris  <rgm@gnu.org>
7943         Add some missing version tags.
7945         * lisp/electric.el (electric-quote-comment)
7946         (electric-quote-string, electric-quote-paragraph):
7947         * lisp/epg-config.el (epg-gpgconf-program):
7948         * lisp/rect.el (rectangle-preview):
7949         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
7950         * lisp/emacs-lisp/package.el (package-selected-packages)
7951         (package-hidden-regexps):
7952         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
7953         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
7954         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
7955         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
7956         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
7957         (mml-smime-sign-with-sender, mml2015-always-trust)
7958         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
7959         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
7960         (browse-url-conkeror-arguments):
7961         * lisp/net/newst-reader.el (newsticker-download-logos):
7962         * lisp/progmodes/gud.el (gud-guiler-command-name):
7963         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
7964         * lisp/progmodes/project.el (project-vc):
7965         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
7966         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
7967         (python-shell-completion-native-disabled-interpreters)
7968         (python-shell-completion-native-enable)
7969         (python-shell-completion-native-output-timeout)
7970         (python-shell-completion-native-try-output-timeout):
7971         * lisp/progmodes/xref.el (xref):
7972         * lisp/term/screen.el (xterm-screen-extra-capabilities):
7973         * lisp/term/xterm.el (xterm-max-cut-length):
7974         Add missing version tags.
7976 2016-01-13  Glenn Morris  <rgm@gnu.org>
7978         * test/automated/core-elisp-tests.el
7979         (core-elisp-tests-1-defvar-in-let): Add a custom type.
7981 2016-01-13  Glenn Morris  <rgm@gnu.org>
7983         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
7985         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
7987 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
7989         Merge from gnulib
7991         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
7992         It also updates to the latest version of texinfo.tex.
7993         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
7994         * build-aux/update-copyright, doc/misc/texinfo.tex:
7995         Update from gnulib.
7997 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
7999         Update documentation of 'process-running-child-p'
8001         * doc/lispref/processes.texi (Input to Processes): Document the
8002         changes in return value of 'process-running-child-p'.
8004 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8006         Update documentation of 'deactivate-mark'.
8008         * doc/lispref/markers.texi (The Mark): Document that
8009         'deactivate-mark' is now buffer-local when set.
8011 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8013         Update documentation of 'completion-table-dynamic'
8015         * doc/lispref/minibuf.texi (Programmed Completion): Document the
8016         new optional argument to 'completion-table-dynamic'.
8018 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8020         Document changes in 'read-buffer' and 'read-buffer-function'
8022         * doc/lispref/minibuf.texi (High-Level Completion): Document the
8023         4th argument to 'read-buffer' and 'read-buffer-function'.
8025 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
8027         Fix time-stamp-time-zone bugs introduced in July
8029         This fixes a bug introduced when the July changes to
8030         format-time-string installed, as the changes were not
8031         correctly handled in this module (Bug#22302).
8032         Also, document time stamp time zones.
8033         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
8034         (time-stamp--format): New private function.
8035         (time-stamp-string, time-stamp-string-preprocess)
8036         (time-stamp-do-number): Use it.
8037         * doc/emacs/files.texi (Time Stamps): Mention time zones.
8038         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
8040 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
8042         Make piping to subprocesses more robust on MS-Windows
8044         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
8045         buffer can hold.  Don't return -1 if something has been written to
8046         the pipe.  Zero out 'errno' before calling '_write', to avoid
8047         returning a stale value.  (Bug#22344)
8048         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
8049         * src/w32.c (pipe2): Use it to request a user-defined size for the
8050         pipe being created.
8052         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
8054         * doc/emacs/msdos.texi (Windows Processes): Document
8055         'w32-pipe-buffer-size'.
8057 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
8059         test/automated/vc-hg.el: Support out-of-tree build
8061         * test/automated/vc-hg.el
8062         (vc-hg-annotate-extract-revision-at-line-with-filename)
8063         (vc-hg-annotate-extract-revision-at-line-with-both):
8064         Don't refer to source-directory.
8065         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
8067 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
8069         Minor change in tramp-tests.el
8071         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
8072         Use `dired-uncache' instead of a Tramp internal function.
8074 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
8076         * etc/HELLO: Add Armenian and Mongolian greetings.
8078         (Bug#22346)
8080 2016-01-11  Alan Mackenzie  <acm@muc.de>
8082         Java Mode: Fontify identifiers in the presence of annotations.
8084         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
8085         Don't move point when the defun fails.
8086         (c-forward-decl-or-cast-1): Correct a usage of match data.
8088         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
8089         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
8090         removed variable.
8092         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
8094 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
8096         Avoid an infloop when we run out of memory
8098         * src/alloc.c (garbage_collect_1): Don't bother saving and
8099         restoring the echo-area message if we are GC'ing after running out
8100         of memory.  This avoids an infloop due to repeated attempts to
8101         allocate memory for the cons cell needed to save the message,
8102         which signals the memory-full error, which attempts to save the
8103         echo-area message, which signals memory-full again, etc.
8105 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
8107         Avoid unnecessary failures of auto-saving after fatal error
8109         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
8110         the benefit of FAT volumes if we are called as part of shutting
8111         down due to a fatal error, which probably means we are trying to
8112         auto-save the session.
8113         * src/lread.c (check_obarray): Don't bother making the obarray
8114         valid if we are shutting down due to a fatal error.  This avoids
8115         interfering with auto-saving the crashed session.
8117 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
8119         Simplify HAVE_MODULES use in mark_maybe_pointer
8121         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
8122         so that later code can use 'if' rather than '#ifdef'.
8123         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
8124         always working.
8126 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
8128         Revert attempt to use 'noexcept' in typedef
8130         This use of 'noexcept' runs afoul of the C++11 standard.
8131         Problem reported by Philipp Stephani in:
8132         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
8133         * src/emacs-module.c (emacs_finalizer_function):
8134         Move this typedef here ...
8135         * src/emacs-module.h: ... from here, and use only the C
8136         version of the typedef.  The typedef is now private since it
8137         is never used in the .h file now and anyway it seemed to be
8138         causing more confusion than it cured.
8139         (make_user_ptr, get_user_finalizer, set_user_finalizer):
8140         Open-code the type instead.
8142 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
8144         Update documentation of 'indirect-function'
8146         * doc/lispref/eval.texi (Function Indirection): Update the
8147         documentation of 'indirect-function'.
8149 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
8151         Update documentation for obsoleting 'syntax-begin-function'
8153         * doc/lispref/syntax.texi (Position Parse): Undocument
8154         'syntax-begin-function' that is now obsolete.
8156 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
8158         Document new features if Eshell
8160         * doc/misc/eshell.texi (Input/Output): Document the new
8161         '#<bufname>' syntax.
8162         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
8163         Disable "Key Index" generation, as there are no @kindex entries in
8164         this manual.
8166 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
8168         Handle too long commands in Tramp
8170         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
8171         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
8172         order to not exceed shell command line limit.
8174         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
8175         (tramp--test-utf8): Include Arabic file name, again.
8177 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
8179         * .gitattributes: *.cur and *.pif are binary files too.
8181 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
8183         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
8185 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
8187         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
8189         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
8190         within $(...).
8191         * test/indent/shell.sh: Add corresponding test.
8193 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
8195         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
8197         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
8198         cast to Lisp_Object.
8200 2016-01-10  Dmitry Gutov  <dgutov@yandex.ru>
8202         Use short date for 'hg annotate', and output the author
8204         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
8205         Change '-d' to '-dq'.  (Bug#21805)
8206         (vc-hg-annotate-switches): Default to "-u" "--follow".
8207         (vc-hg-annotate-re): Update to recognize the short date format
8208         and the optional username.
8209         (vc-hg-annotate-time)
8210         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
8212         * test/automated/vc-hg.el: New file.
8214 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
8216         Spelling fix
8218 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
8220         Document user-level functions in project.el
8222         * lisp/progmodes/project.el (project-find-file)
8223         (project-or-external-find-file): Add doc strings.
8225 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
8227         Document the user-level features of the Xref package
8229         * doc/emacs/maintaining.texi (Maintaining): Add a list of
8230         described features.
8231         (Xref): New section, made out of thoroughly rewritten "Tags"
8232         section.
8233         (Find Identifiers, Looking Up Identifiers, Xref Commands)
8234         (Identifier Search, List Identifiers): New subsections,
8235         incorporating the old tags commands and the new xref commands.
8236         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
8237         Section and subsections demoted to a lower level.
8238         * doc/emacs/search.texi (Search):
8239         * doc/emacs/windows.texi (Pop Up Window):
8240         * doc/emacs/frames.texi (Creating Frames):
8241         * doc/emacs/programs.texi (Imenu, Symbol Completion):
8242         * doc/emacs/building.texi (Grep Searching):
8243         * doc/emacs/dired.texi (Operating on Files):
8244         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
8246 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
8248         * doc/lispref/loading.texi: Add `define-type' entry for load-history
8250         * doc/lispref/loading.texi (Where Defined): Remove incorrect
8251         cl-defmethod description, and add missing define-type entry.
8253 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
8255         Improve doc strings and prompts in xref.el
8257         * lisp/progmodes/xref.el (xref-backend-functions)
8258         (xref-find-definitions): Doc fixes.
8259         (xref-query-replace): Doc fix.  Improve prompts for arguments.
8261 2016-01-09  Alan Mackenzie  <acm@muc.de>
8263         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
8265         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
8266         `font-lock-extend-regions-wholelines' from
8267         `font-lock-extend-region-functions' rather than setting the latter to
8268         nil.
8270 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
8272         Fix coding system for Tramp on OS X.
8274         * lisp/net/tramp-compat.el: Require ucs-normalize.
8276         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
8277         Set coding system to `utf-8-hfs' for Mac OS X.
8279         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
8280         Flush directory properties when needed.
8281         (tramp--test-utf8): Include Chinese file name, again.
8283 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
8285         Update 'load-history' docs
8287         * doc/lispref/loading.texi (Where Defined): Update the list of
8288         forms in 'load-history' by adding the forms created for the
8289         'cl-generic' generics.  (Bug#21422)
8291 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
8293         Fix (error ...) error
8295         Problem reported by Glenn Morris in:
8296         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
8297         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
8298         introduced in my Aug 28 change, where I got confused by the
8299         two meanings of (error ...).
8301 2016-01-08  Alan Mackenzie  <acm@muc.de>
8303         Correctly analyze brace arguments in templated C++ function declarations.
8305         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
8306         POS and LIMIT parameters, like the other c-go-list-* functions have.
8308         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
8309         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
8310         followed by template specifiers.
8312 2016-01-08  Glenn Morris  <rgm@gnu.org>
8314         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
8316         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
8318 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
8320         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
8322 2016-01-08  Alan Mackenzie  <acm@muc.de>
8324         Respect fontification region calculated by major mode.  Fixes bug #22316.
8326         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
8327         fontification region has been calculated by a function on
8328         font-lock-extend-after-change-region-function use this region rather than
8329         changing the end position to somewhere else.
8331 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
8333         Improve documentation of Delete Selection mode
8335         * lisp/delsel.el (delete-selection-mode)
8336         (delete-selection-helper): Update and expand the doc strings.
8337         (Bug#22296)
8339         * doc/emacs/mark.texi (Using Region): Document the behavior of
8340         delete commands in Delete Selection mode.  (Bug#22296)
8342         * doc/lispref/markers.texi (The Mark): Document how to add the
8343         support for Delete Selection mode to Lisp programs. (Bug#22296)
8345 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
8347         Fix two project-find-file issues
8349         * lisp/progmodes/project.el (project--value-in-dir):
8350         Temporarily set enable-local-variables to :all.
8351         (project-find-file, project-or-external-find-file):
8352         All autoloads.
8353         (project--find-file-in): Require xref.
8355 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
8357         Clarify doc string of 'dired-current-directory'
8359         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
8360         the return value might not end in a slash when called with the
8361         optional argument non-nil.  (Bug#6273)
8363 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
8365         Use the face of preceding text for displaying the ellipsis
8367         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
8368         text in it->saved_face_id for displaying the ellipsis, and ignore
8369         the face, if any, of the invisible text.  (Bug#22320)
8371 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
8373         Suppress Chinese file name test for OSX in tramp-tests.el
8375         * test/automated/tramp-tests.el (tramp--test-utf8):
8376         Remove instrumentation.  Suppress Chinese file name test for OSX.
8378 2016-01-08  Glenn Morris  <rgm@gnu.org>
8380         * admin/admin.el (set-version): Also handle the NEWS file.
8382 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
8384         apropos-library: Skip obvious duplicates; don't error on generics
8386         * lisp/apropos.el (apropos-library): Skip "was an autoload"
8387         entries, to avoid obvious duplicates.  For each cl-defmethod
8388         entry, take just its function symbol (bug#21422).
8390 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
8392         Add project-find-file and project-or-external-find-file
8394         * lisp/minibuffer.el (completion-category-defaults):
8395         Add `project-file' category.
8397         * lisp/progmodes/project.el (project-find-file)
8398         (project-or-external-find-file): New commands.
8399         (project--find-file-in): New private function.
8401         * lisp/progmodes/xref.el (xref-collect-matches): Use
8402         `expand-file-name' on DIR, to expand the tildes.
8403         (xref--find-ignores-arguments): Extract from
8404         `xref--rgrep-command'.
8406 2016-01-07  Leo Liu  <sdl.web@gmail.com>
8408         Add defvar-local to lisp-imenu-generic-expression
8410         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
8411           defvar-local.
8413 2016-01-07  Leo Liu  <sdl.web@gmail.com>
8415         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
8417         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
8418           Don't declare (indent 1).
8420 2016-01-07  Glenn Morris  <rgm@gnu.org>
8422         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
8424 2016-01-07  Glenn Morris  <rgm@gnu.org>
8426         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
8428         Avoid specifying the length of a time object (it has not been "2"
8429         for some time).
8431 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
8433         Properly encode/decode base64Binary data in SOAP
8435                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
8436                 base64Binary value as utf-8.
8437                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
8439 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
8441         Obey coding-system-for-write when writing stdout/stderr in batch
8443         * src/print.c (printchar_to_stream):
8444         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
8445         a non-nil value, use it to encode output in preference to
8446         locale-coding-system.  See the discussions in
8447         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
8448         for the details.
8450         * doc/lispref/os.texi (Terminal Output): Document how to send
8451         non-ASCII text via 'send-string-to-terminal'.
8452         (Batch Mode): Document how text written to standard streams is
8453         encoded.  Fix inaccuracy regarding which output streams are used
8454         by output functions in batch mode.
8456 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
8458         * doc/misc/efaq.texi (Packages that do not come with Emacs):
8459         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
8460         <chenggao@royau.me> in
8461         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
8463 2016-01-06  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
8465         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
8467         Fix backslash.  (Bug#22224)
8469 2016-01-06  Federico Beffa  <beffa@ieee.org>  (tiny change)
8471         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
8473         Make it actually work.  (Bug#22265)
8475 2016-01-05  Alan Mackenzie  <acm@muc.de>
8477         Remove function wrongly on AWK Mode value of context fontification hook.
8479         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
8480         swap order of entries so that awk's entry isn't superseded by the default.
8482         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
8483         to handle nil value of c-before-context-fontification-functions.
8485 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
8487         * src/buffer.c: Stick with ASCII in doc string.
8489 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
8491         Reword transient-mark-mode doc string
8493         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
8494         The value 'lambda (literally) can be interpreted as (quote lambda),
8495         which is not intended here; we want just the lambda symbol.
8497 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
8499         Update doc string of 'selective-display'
8501         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
8502         using it with the value of 't' is obsolete.  (Bug#1092)
8504 2016-01-05  Alan Mackenzie  <acm@muc.de>
8506         Make C++ buffers writeable when writing their initial text properties.
8508         This is a correction to yesterday's CC Mode patch.
8510         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
8511         c-save-buffer-state around the function rather than a mere `let'.
8513 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
8515         Additional changes for "make check-expensive"
8517         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
8518         Explain make target `check-expensive'.
8520         * etc/NEWS: Mention new make target `check-expensive'.
8522         * test/automated/Makefile.in (check-doit): New target.
8523         (check, check-expensive): Use it.
8525 2016-01-04  Alan Mackenzie  <acm@muc.de>
8527         Apply text properties for <, > in new after-change function (C++ Java Modes).
8529         These are category/syntax-table properties to give < and > paren syntax.
8530         Also apply certain `c-type' text properties to the insides of <..> constructs
8531         to ensure that identifiers contained by them get fontified.  This patch fixes
8532         bug #681.
8534         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
8535         after-change action.
8537         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
8538         change region to include <s and >s which might not be already marked as
8539         parens, rather than just when paren text properties are removed.
8540         (c-restore-<>-properties): New after-change function, which applies text
8541         properties marking < and > with paren syntax.
8543         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
8544         properties are applied to the interiors of <...> constructs, to ensure
8545         fontification of identifiers there.
8547         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
8548         c-restore-<>-properties to this list for C++ and Java.
8550         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
8551         c-before-font-lock-functions, exclude c-restore-<>-properties from the
8552         functions invoked.
8553         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
8554         to allow modification by before-change functions.
8555         (c-after-change): Amend c-new-END here, rather than initializing it and
8556         c-new-BEG.
8558 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
8560         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
8562 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
8564         Introduce check-expensive tests.
8566         * Makefile.in (check-expensive):
8567         * test/automated/Makefile.in (check-expensive): New target.
8569         * test/automated/auto-revert-tests.el
8570         (auto-revert-test01-auto-revert-several-files):
8571         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
8572         * test/automated/tramp-tests.el (tramp-test26-process-file)
8573         (tramp-test27-start-file-process, tramp-test28-shell-command)
8574         (tramp-test29-vc-registered)
8575         (tramp-test31-special-characters-with-stat)
8576         (tramp-test31-special-characters-with-perl)
8577         (tramp-test31-special-characters-with-ls)
8578         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
8579         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
8580         (tramp-test35-unload): Tag the tests as :expensive-test.
8582 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8584         shr-tag-video bug fix
8586         * shr.el (shr-tag-video): Protect against the `poster' being
8587         empty.
8589 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
8591         Minor fixes in tramp-tests.el
8593         * test/automated/tramp-tests.el (tramp-test26-process-file):
8594         Move point properly.
8595         (tramp-test29-vc-registered): Work with relative file names.
8597 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
8599         Ensure redisplay when 'truncate-lines' is set
8601         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
8602         (Bug#22303)
8604 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
8606         Fix a doc string of 'transient-mark-mode'
8608         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
8609         "lambda" in doc string from becoming a link to lambda expressions.
8611 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
8613         MS-Windows followup to latest gnulib update
8615         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
8617 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
8619         Spelling fix
8621 2016-01-04  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
8623         Do secure signed Bcc handling
8625         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
8626         (bug#18718).
8628 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
8630         Avoid stdio in SIGINT handler
8632         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
8633         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
8634         * lib/ignore-value.h: New file, from gnulib.
8635         * src/keyboard.c: Include it.
8636         (write_stdout, read_stdin): New functions.
8637         (handle_interrupt): Use them instead of printf and getchar,
8638         and avoid fflush when handling signals.
8640 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
8642         * doc/misc/texinfo.tex: Revert unwanted copyright change.
8644 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
8646         * lisp/align.el (align): Simplify a lambda
8648         * lisp/align.el (align): Fix arg order in call to `align-region'
8650 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
8652         Fix compilation next-error in buffers with selective-display
8654         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
8655         function.
8656         (compilation-internal-error-properties)
8657         (compilation-next-error-function, compilation-set-window): Use
8658         it.  (Bug#1092)
8660 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8662         * lisp/net/nsm.el (nsm-check-protocol): Fix typo in the message.
8664 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
8666         Add SHA1 warnings for high network security settings
8668         * lisp/net/nsm.el (nsm-check-protocol): When using high security, warn
8669         about SHA1 certificates, which are now believed to be open to
8670         spoofing.
8672 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
8674         Refactor mml-smime.el, mml1991.el, mml2015.el
8676         (Maybe this is the last merge from Gnus git to Emacs git)
8678         Cf. discussion on ding mailing list, messages in
8679         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
8680         Common code from the three files mml-smime.el, mml1991.el, and
8681         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
8682         to gnus-util.el.
8684         The code is supported by test cases with necessary test keys.
8686         Documentation in message.texi is updated.
8688         * doc/misc/message.texi (Security, Using S/MIME):
8689         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
8690         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
8691         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
8693         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
8694         New functions.
8696         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
8697         (epa--select-keys): Autoload.
8698         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
8699         (mml-secure-openpgp-signers): New user option;
8700         make mml1991-signers and mml2015-signers obsolete aliases to it.
8701         (mml-secure-smime-signers): New user option;
8702         make mml-smime-signers an obsolete alias to it.
8703         (mml-secure-openpgp-encrypt-to-self): New user option;
8704         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
8705         aliases to it.
8706         (mml-secure-smime-encrypt-to-self): New user option;
8707         make mml-smime-encrypt-to-self an obsolete alias to it.
8708         (mml-secure-openpgp-sign-with-sender): New user option;
8709         make mml2015-sign-with-sender an obsolete alias to it.
8710         (mml-secure-smime-sign-with-sender): New user option;
8711         make mml-smime-sign-with-sender an obsolete alias to it.
8712         (mml-secure-openpgp-always-trust): New user option;
8713         make mml2015-always-trust an obsolete alias to it.
8714         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
8715         New user options.
8716         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
8717         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
8718         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
8719         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
8720         (mml-secure-passphrase-callback, mml-secure-check-user-id)
8721         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
8722         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
8723         (mml-secure-fingerprint, mml-secure-filter-keys)
8724         (mml-secure-normalize-cust-name, mml-secure-select-keys)
8725         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
8726         (mml-secure-self-recipients, mml-secure-recipients)
8727         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
8729         * lisp/gnus/mml-smime.el: Require epg;
8730         refactor declaration and autoloading of epg functions.
8731         (mml-smime-use): Doc fix.
8732         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
8733         Obsolete.
8734         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
8735         Use format instead of gnus-format-message.
8736         (mml-smime-epg-secret-key-id-list): Remove variable.
8737         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
8738         (mml-smime-epg-find-usable-secret-key): Remove functions.
8739         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
8741         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
8742         (mml1991-passphrase-cache-expiry): Obsolete.
8743         (mml1991-epg-secret-key-id-list): Remove variable.
8744         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
8745         (mml1991-epg-find-usable-secret-key): Remove functions.
8746         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
8748         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
8749         (mml2015-passphrase-cache-expiry): Obsolete.
8750         (mml2015-epg-secret-key-id-list): Remove variable.
8751         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
8752         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
8753         (mml2015-epg-find-usable-secret-key): Remove functions.
8754         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
8755         (mml2015-epg-encrypt): Refactor.
8757 2016-01-02  Glenn Morris  <rgm@gnu.org>
8759         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
8761         Explicitly ignore case.  (Bug#22262)
8763 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
8765         (semantic-symref-derive-find-filepatterns): Return a list
8767         * lisp/cedet/semantic/symref/grep.el
8768         (semantic-symref-derive-find-filepatterns): Return a list.
8769         (semantic-symref-perform-search): Quote the result here once and for all.
8771 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
8773         Fix xref-find-references on MS-Windows
8775         * lisp/cedet/semantic/symref/grep.el
8776         (semantic-symref-derive-find-filepatterns): Use
8777         'shell-quote-argument' instead of manually quoting in a way that
8778         only works with Posix shells.  (Bug#22289)
8780 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
8782         Document new features of tildify-mode
8784         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
8785         (tildify-mode): Spelling fixes in doc strings.
8787         * etc/NEWS: Reformat the tildify-mode entry.
8789 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
8791         Document new features of Whitespace mode
8793         * doc/emacs/display.texi (Useless Whitespace): Document
8794         'whitespace-toggle-options' and the new 'big-indent' style.
8795         Document 'whitespace-big-indent-regexp'.  Document the Global
8796         Whitespace mode.
8798 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
8800         Improve documentation of new Hide-IfDef features
8802         * etc/NEWS: Expand and reword Hide-IfDef section.
8804 2016-01-02  Leo Liu  <sdl.web@gmail.com>
8806         Fix regression in font-locking cl-assert and cl-check-type
8808         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
8809           el-errs-re.
8811 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
8813         Spelling and grammar fixes
8815 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
8817         Fix copyright years by hand
8819         These are dates that admin/update-copyright did not update, or
8820         updated incorrectly.
8822 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
8824         Update copyright year to 2016
8826         Run admin/update-copyright.
8828 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
8830         Merge from gnulib
8832         This mostly just updates copyright dates of gnulib files.
8833         It also updates to the latest version of texinfo.tex.
8835 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
8837         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
8839 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
8841         Port chart.el methods to cl-generic.
8843         cl-call-next-method cannot be used inside EIEIO's defmethod.
8844         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
8845         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
8846         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
8847         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
8848         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
8849         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
8851 2015-12-31  Brian Burns  <bburns.km@gmail.com>
8853         Add nt/INSTALL.W64 build instructions
8855         * nt/INSTALL.W64: New file.
8856         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
8858 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
8860         Add new input method 'programmer-dvorak'
8862         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
8863         input method.
8865         * etc/NEWS: Mention it.
8867 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
8869         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
8871         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
8872         original M-TAB binding in a buffer-local variable.
8873         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
8874         if that is recorded, when point is in a place where flyspell
8875         should not be active (e.g., because the user turned on
8876         'flyspell-prog-mode').  (Bug#18533)
8878 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
8880         Fix EWW rendering of long RTL lines
8882         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
8883         of the selected window before filling its lines.  (Bug#22250)
8885 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
8887         fix  bug#21054
8889         * lisp/ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
8891 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8893         Clean up cairo printing code
8895         * src/gtkutil.c (xg_get_page_setup): Use listn.
8896         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
8897         decode_window_system_frame and FRAME_VISIBLE_P.
8898         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
8899         of Fdisplay.
8900         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
8901         instead of Fdisplay.  Temporarily unblock_input around QUIT.
8903 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8905         Move variables to inner loop, preparing for Mac port merge
8907         * src/keyboard.c (command_loop_1): Move variables `cmd',
8908         `keybuf', and `i' to inner loop.
8910 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8912         Add handle_user_signal_hook
8914         * src/keyboard.h (handle_user_signal_hook): New declaration.
8915         * src/keyboard.c (handle_user_signal_hook): New variable.
8916         (handle_user_signal): Call it.
8918 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8920         Avoid writing to purespace
8922         * src/alloc.c (Fmake_string): Don't write to empty string contents.
8923         (allocate_vector): Don't write to empty vector size.
8924         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
8925         Don't call unnecessary XSETCAR or XSETCDR.
8926         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
8927         write to empty string size_byte.
8929 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8931         Remove unused variable
8933         * lisp/international/mule-cmds.el: Remove unused variable
8934         `mac-system-coding-system'.
8936 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8938         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
8940 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8942         Use posix_openpt instead of openpty on Darwin
8944         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
8945         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
8946         Darwin-specific definitions.  Use posix_openpt instead.
8948 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
8950         Document support for ':documentation' in Lisp mode
8952         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
8953         (lisp-string-after-doc-keyword-p)
8954         (lisp-font-lock-syntactic-face-function): Add doc strings.
8956 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
8958         Document new features of TeX mode
8960         * doc/emacs/text.texi (TeX Print): Document
8961         'tex-print-file-extension'.
8962         * doc/emacs/programs.texi (Misc for Programs): Document support
8963         for Prettify Symbols mode in TeX mode.
8965 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
8967         Clarify docs of hscroll in RTL text
8969         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
8970         meaning of a window's horizontal scroll amount for RTL paragraphs.
8972 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
8974         Fix rendering of HTML pages that use character composition
8976         * src/indent.c (Fvertical_motion): Fix the case when point starts
8977         in the middle of a composition, as in shr-vertical-motion.
8978         (Bug#22250)
8980 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
8982         Avoid some compiler warnings in w32.c
8984         * src/w32.c (codepage_for_filenames, crlf_to_lf)
8985         (ansi_encode_filename, socket_to_fd, sys_write)
8986         (check_windows_init_file): Avoid compiler warnings about
8987         differences in pointer signedness.
8989 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
8991         Undo ill-advised change
8993         * lisp/progmodes/xref.el (xref-collect-matches): Undo
8994         ill-advised change.  The hits come in the order that `find'
8995         produces them in, which isn't alphabetical.
8997 2015-12-30  Dmitry Gutov  <dgutov@yandex.ru>
8999         Unbreak completion in python-mode buffers
9001         * lisp/progmodes/python.el (python-shell-completion-at-point):
9002         Unbreak in python-mode buffers.
9004 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9006         Fix typos in CC Mode manual
9008         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
9009         typos.  (Bug#22267)
9011 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9013         Avoid assertion violations in compact_font_cache_entry
9015         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
9016         avoid assertion violation in ASIZE.  (Bug#22263)
9018 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
9020         Fix filling text with bidirectional characters in shr.el
9022         * lisp/net/shr.el (shr-insert-document): Bind
9023         bidi-display-reordering to nil while filling lines.  This is
9024         required for when a line includes characters whose bidi
9025         directionality is opposite to the base paragraph direction,
9026         because columns are counted in the logical order.  (Bug#22250)
9028 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
9030         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
9032 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
9034         Sync with Tramp 2.2.13
9036         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
9038         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
9039         Use `tramp-compat-funcall'.
9041         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
9042         Make `split-string' call compatible with older Emacsen.
9044         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
9046 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
9048         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
9050 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9052         Mention that tls.el is secure by default, and will fail
9054 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9056         Make tls.el use trustfiles by default
9058         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
9059         (open-tls-stream): Insert the trustfile by looking at
9060         `gnutls-trustfiles'.
9062 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9064         Refactor out gnutls-trustfiles
9066         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
9068 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
9070         Remove --insecure from gnutls-cli invocation
9072         * tls.el (tls-program): Default to using secure TLS
9073         connections (bug#19284).
9075 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
9077         Spelling fix
9079 2015-12-29  Paul Eggert  <eggert@cs.ucla.edu>
9081         Port report-emacs-bug to deterministic builds
9083         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
9084         recent "built on" change to deterministic builds where
9085         emacs-build-system will be nil.  See:
9086         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
9088 2015-12-29  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
9090         Fix URL auth error message
9092         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
9093         message more correct (bug#20069).
9095 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
9097         shr link traversal fixup
9099         * shr.el (shr-next-link): Don't bug out on adjacent links.
9101         Backport:
9103         (cherry picked from commit 1efc5f8b09273c359683ce13be95fb5df7a84311)
9105 2015-12-28  Tom Tromey  <tom@tromey.com>
9107         set :safe on css-indent-offset
9109         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
9111 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
9113         * eww.el (eww-mode): Remove superfluous bidi reset.
9115 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
9117         Make chunked encoding trailer detection more compliant
9119         * lisp/url/url-http.el
9120         (url-http-chunked-encoding-after-change-function): Make
9121         trailer detection more compliant (bug#16345).
9123 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
9125         Fix Bug#10873 in `report-emacs-bug'
9127         * lisp/mail/emacsbug.el (report-emacs-bug): If
9128         `report-emacs-bug-no-explanations' is nil, make sure we can show
9129         mail and warnings buffer on this frame (Bug#10873).
9131 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
9133         Always reset the bidi direction
9135         * eww.el (eww-display-html): Always reset the bidi direction
9136         to `left-to-right' (bug#22257).
9138 2015-12-28  Alan Mackenzie  <acm@muc.de>
9140         Allow line comments ending with escaped NL to be continued to the next line.
9142         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
9144         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
9145         (forw-comment, back-comment): On encountering an end of comment character,
9146         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
9148         * doc/lispref/syntax.texi (Control Parsing): Describe
9149         `comment-end-can-be-escaped'.
9151         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
9153         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
9155 2015-12-28  Dmitry Gutov  <dgutov@yandex.ru>
9157         Rename project-library-roots to project-external-roots
9159         * lisp/progmodes/project.el (project-library-roots): Rename to
9160         project-external-roots.
9161         (project-library-roots-function): Rename to
9162         project-vc-external-roots-function.  Only use it in the VC
9163         backend, for now.  Update project-external-roots accordingly.
9164         (project-vc-library-roots): Remove.
9165         (project-or-libraries-find-regexp):
9166         Rename to project-or-external-find-regexp.
9168         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
9169         Rename to elisp-load-path-roots.
9171         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
9172         an anonymous function for the default value of
9173         project-vc-external-roots-function.
9175 2015-12-27  Deniz Dogan  <deniz@dogan.se>
9177         Clear erc user list upon disconnection
9179         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
9180         lists upon disconnection.  This prevents invalid channel
9181         user lists when reconnecting (bug#10947).
9183 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
9185         Don't bug out in erc after waking from sleep
9187         * lisp/erc/erc-backend.el (erc-server-send-ping): If the server has
9188         closed connection, this may already have been detected and
9189         `erc-server-last-received-time' has been set to nil (bug#13608).
9191 2015-12-27  David Edmondson  <dme@dme.org>
9193         Proxy error in erc with multiple clients
9195         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
9196         generated when multiple IRC clients talk to a single IRC proxy
9197         (bug#19034).
9199         Backport:
9201         (cherry picked from commit 507e98a54d1aa37823c64993d6b59257a82fe8f4)
9203 2015-12-27  Dima Kogan  <dima@secretsauce.net>
9205         Ensure that we don't have several timers in erc
9207         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
9208         for existing timers in the alist before adding new ones.  If a
9209         timer already exists, it is cancelled and
9210         overwritten. (bug#19292).
9212 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
9214         Fix mml-sec build warnings
9216         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
9217         (bug#18718).
9219         Backport:
9221         (cherry picked from commit 3603097f62f5f4aa5451716e9ac380161f6829e2)
9223 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
9225         Don't insert erc logs at the end
9227         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
9228         at the start of the buffer, not at the end (bug#20496).
9230 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
9232         (eww-setup-buffer): Restore left-to-right defaults
9234         * eww.el (eww-setup-buffer): Restore left-to-right defaults.
9236         Backport:
9238         (cherry picked from commit 96c874b96b617c124d500a94de761a61f2a08685)
9240 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
9242         Don't join erc channels doubly
9244         * lisp/erc/erc-join.el (erc-autojoin-channels): Don't join channels
9245         more than once (if you have several nicks) (bug#20695).
9247 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
9249         Avoid leaving "ghost" of mouse pointer on MS-Windows
9251         * src/w32term.c (frame_set_mouse_pixel_position):
9252         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
9253         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
9254         * src/w32term.c (frame_set_mouse_pixel_position): Include
9255         w32common.h.
9257 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
9259         Fix auth source lookups from erc with port numbers
9261         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
9262         numbers (bug#20541).
9264 2015-12-27  Fran Litterio  <flitterio@gmail.com>
9266         Run erc-kill-channel-hook always on exit
9268         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
9269         when erc-kill-queries-on-quit is set (bug#21187).
9271 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
9273         Spelling fix
9275         * test/automated/url-parse-tests.el:
9276         (url-generic-parse-url/same-document-reference):
9277         Rename from url-generic-parse-url/same-decument-reference.
9279 2015-12-27  Paul Eggert  <eggert@cs.ucla.edu>
9281         Reword initial *scratch* for brevity, appearance
9283         * lisp/startup.el (initial-scratch-message):
9284         Reword to avoid apostrophes, and to make it shorter.
9285         See the thread starting in:
9286         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
9288 2015-12-26  Leo Liu  <sdl.web@gmail.com>
9290         Add ert-deftest to lisp-mode.el
9292         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression,
9293           lisp-el-font-lock-keywords-1): Add ert-deftest.
9295 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
9297         Mark imap changes as not needing doc changes
9299         * lisp/net/imap.el (imap-ssl-open): Remove
9301 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
9303         Use built-in encryption in imap.el
9305         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
9306         (imap-starttls-open): Use open-network-stream instead of starttls.el.
9307         (imap-tls-open): Use open-network-stream instead of tls.el.
9309 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9311         Don't try using /bin/sh in artist.el on MS-Windows
9313         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
9314         New function.
9315         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
9316         (Bug#20167)
9318 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
9320         Always define gmalloc etc. in src/gmalloc.c
9322         This is a work-around to prevent the compiler from using semantic
9323         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
9324         with -O2 replaces most of calloc's definition by a call to calloc;
9325         see Bug#22085.
9326         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
9327         (aligned_alloc, free): Do not undef.  Instead, define these as
9328         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
9330 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9332         Fix documentation of browse-url browser-related functions
9334         * lisp/net/browse-url.el (browse-url)
9335         (browse-url-default-browser, browse-url-default-windows-browser)
9336         (browse-url-default-macosx-browser, browse-url-chromium)
9337         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
9338         and NEW-WINDOW arguments in these functions.  (Bug#19421)
9340 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
9342         Propagate Bug#14412 fix to backtrace_eval_unrewind
9344         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
9345         becomes accurate again. This shouldn’t affect behavior.
9346         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
9348 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9350         Don't produce non-ASCII characters in *scratch*
9352         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
9353         avoid producing non-ASCII characters in the *scratch* buffer's
9354         commentary.
9356 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9358         Document changes in 'compare-windows'
9360         * lisp/vc/compare-w.el (compare-windows-removed)
9361         (compare-windows-added): Doc fix.
9363         * doc/emacs/files.texi (Comparing Files): Document the changes in
9364         window selection by 'compare-windows'.
9366 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9368         Document 'vc-annotate-background-mode'
9370         * doc/emacs/maintaining.texi (Old Revisions): Document
9371         'vc-annotate-background-mode'.
9373 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9375         Document 'vc-region-history'
9377         * doc/emacs/maintaining.texi (VC Change Log): Document
9378         'vc-region-history'.
9380 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9382         Improve documentation of 'vc-push'
9384         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
9385         improve the documentation of 'vc-push'.
9387         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
9389 2015-12-26  Alain Schneble  <a.s@realize.ch>
9391         Include the tests for the URL parsing fixes
9393 2015-12-26  Alain Schneble  <a.s@realize.ch>
9395         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
9397         * test/automated/url-parse-tests.el: Add tests covering url-generic-parse-url.
9398         * test/automated/url-expand-tests.el: Add tests covering url-expand-file-name.
9399         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
9400         information in URL-struct.
9401         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
9402         path and query into nil path and query, respectively.
9403         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
9404         empty path into an absolute ("/") path.
9405         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
9406         fragment-only URIs. Do not just return them unchanged.
9407         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
9408         reference URI should not drop the last segment.
9410         Backport:
9412         (cherry picked from commit b792ecea1715e080ad8e232d3d154b8a25d2edfb)
9414 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9416         Document 'url-user-agent'.
9418         * lisp/url/url-http.el (url-user-agent): Move from here...
9419         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
9420         keep all the URL defcustoms in one place, and also have it defined
9421         whenever the URL library is loaded.
9423         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
9425 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9427         Document protocols supported by URL library via Tramp
9429         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
9430         supported via Tramp.
9431         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
9432         Tramp.
9434 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9436         Document changes in Shell-script mode
9438         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
9439         the 'sh-shell' file-local variable.
9440         (top level): Add an auto-load form to avoid byte-compiler warning
9441         about 'comint-send-string'.
9443 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9445         Fix documentation of 'ses-define-local-printer'
9447         * doc/misc/ses.texi (Printer functions): Fix whitespace between
9448         sentences and punctuation.  Add an index entry for
9449         'ses-define-local-printer'.
9451 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
9453         Document 'ert-summarize-tests-batch-and-exit'
9455         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
9456         'ert-summarize-tests-batch-and-exit'.
9458 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
9460         Avoid assertion violation in unbind_to
9462         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
9463         if we get here with an object that is not a symbol.  (Bug#14412)
9465 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
9467         Don't treat /foo/bar:mumble as ange-ftp address
9469                 * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
9470                 only in the first component.  (bug#5362)
9472 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9474         Follow <meta> redirects in eww
9476         Merge conflict, but I think I resolved it.
9478             Follow meta refresh tags in eww
9480             * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
9482         Backport:
9484 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9486         Allow http://user:pass@foo/ URLs again
9488         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
9489         user/passwords in URLs (bug#19046).
9491         Backport:
9493         (cherry picked from commit b563715a2db265517d5a77f165a42afa1e233fdd)
9495 2015-12-25  Samer Masterson  <samer@samertm.com>
9497         Autoload url-insert-buffer-contents
9499         * lisp/url/url-handlers.el: Add autoload cookie so that
9500         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
9502         Backport:
9504         (cherry picked from commit 7a7b5b492ff9929eecd90c4564db6fbf3b192323)
9506 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
9508         Make sure *scratch* etc. use forward slashes in its default-directory
9510         * lisp/startup.el (normal-top-level): On MS-Windows, convert
9511         backslashes to forward slashes while decoding default-directory
9512         of the initially-created buffers.
9514 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9516         More eww file name coding fixes
9518         * eww.el (eww-decode-url-file-name): Use the base coding
9519         system to check for encodability.
9521         Backport:
9523         (cherry picked from commit a8627008abe4ab339df19b417776da28b3ce0fc7)
9525 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9527         Always save eww history
9529         * eww.el (eww-setup-buffer): Always save history, even when
9530         called from outside the eww buffer (bug#19638).
9532         Backport:
9534         (cherry picked from commit 2a0f18d9b6ce0ccce3d9c4a4a3b5743bae71b41e)
9536 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9538         Default web pages to right-to-left
9540         * eww.el (eww-mode): Most web pages are left-to-right, so make
9541         that the default (bug#19801).
9543         * shr.el (shr-tag-html): Respect "dir" attributes
9544         (left-to-right, right-to-left).
9546         Backport:
9548         (cherry picked from commit 9e089ec8a380ec3758fcf1564c5f86dc92c68c2a)
9550 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9552         Make toggling checkboxes work again
9554         * eww.el (eww-update-field): Make toggling checkboxes work
9555         again (bug#21881).
9557         Backport:
9559         (cherry picked from commit 5e56f606952e5e81b4d3a93ea70e791b74b33041)
9561 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9563         Don't store cookies with empty names
9565         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
9566         cookies with empty names (bug#21936).
9568         Backport:
9570         (cherry picked from commit 9f0fd7cb1aec3eb9e2e0f7b8854c30870286d96c)
9572 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9574         Stop rendering HTML before specdlr exhaustion
9576         Fixes: 22117
9578         * shr.el (shr-descend): Stop rendering before we run out of
9579         specpdl room (bug#22117).
9581         Backport:
9583         (cherry picked from commit 248da292fe46224b0b5a79b632c89cf4de2c2081)
9585 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9587         Use cl-reduce, not reduce.
9589         Backport:
9591         (cherry picked from commit fe4606f93b91ff3d046aee0cf21ecc277af7a786)
9593 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9595         Allow several <tbody> tags in shr
9597         * shr.el (shr-table-body): New function to find the real body
9598         of a table.
9599         (shr-tag-table): Use it to render several <tbody> tags in a
9600         table (bug#22170).
9602         Backport:
9604         (cherry picked from commit cdaf33029d6620073833876d76056045ecfbc7c4)
9606 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9608         Make prettier unique file names in eww
9610         (eww-make-unique-file-name): Make unique file names by making
9611         files like foo(2).jpg instead of foo(1)(2).jpg.
9613         Backport:
9615         (cherry picked from commit edfdd0a6cbdfa9e5e4bd0553e2b489401ca39266)
9617 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9619         Decode hex-encoded URLs before using them as file names
9621         * eww.el (eww-decode-url-file-name): New function.
9622         (eww-download-callback): Use it to decode file names before
9623         saving them.
9625         Backport:
9627         (cherry picked from commit af22a010d87516c2a646572fb27512c03057784f)
9629 2015-12-25  Ashish SHUKLA  <ashish.is@lostca.se>
9631         Add FreeBSD cert bundle
9633         * doc/misc/emacs-gnutls.texi (Help For Users): Document
9634         FreeBSD bundle.
9636         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
9638         Backport:
9640         (cherry picked from commit 60c0f1a18ad88d6dc1a8f4ee5d9d18940eaeb6f7)
9642 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9644         Ignore invalid SVG images
9646         * shr.el (shr-tag-svg): Ignore SVG images that have no width
9647         or height, because these can't be displayed by ImageMagick,
9648         anyway.
9650         Backport:
9652         (cherry picked from commit 821107d53c2e390240d25c036b99ebbf9b4a93b6)
9654 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
9656         shr table rendering fix
9658         * shr.el (shr-tag-table): Allow rendering body-less tables
9659         that have headers.
9661         Backport:
9663         (cherry picked from commit b05471e42c17e02c56c87d7599ada0c124a5fe09)
9665 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
9667         Restore info about the build host in bug reports
9669         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
9670         which Emacs was built.  This is important information for
9671         investigating bug reports reported by users who don't build their
9672         Emacs.
9674 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
9676         Fix bootstrap broken by changes related to OS X file-name encoding
9678         * lisp/international/ucs-normalize.el (eval-when-compile): Make
9679         sure char-code-property-alist includes elements that allow access
9680         to 'decomposition' and 'canonical-combining-class' Unicode
9681         properties, as compiling ucs-normalize.el requires that.
9682         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
9683         only of charprop.el was already loaded.
9685         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
9686         New order-only dependency.
9688 2015-12-25  Leo Liu  <sdl.web@gmail.com>
9690         * lisp/ido.el (ido-add-virtual-buffers-to-list): Use bookmark-get-filename.
9692 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
9694         Make tramp-test29-vc-registered more robust
9696         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
9697         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
9698         Remove instrumentation.
9700 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9702         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
9704 2015-12-24  Katsumi Yamaoka  <yamaoka@jpl.org>
9706         Fix `gnus-union' so as to behave like `cl-union'
9708         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
9709         Make gnus-union use `equal' to compare items in lists.
9711         * lisp/gnus/gnus-util.el (gnus-union):
9712         Make it behave like cl-union partially.
9714 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
9716         Fix dired.c typo with ptrdiff_t vs Lisp_Object
9718         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
9719         an integer type, fixing a problem introduced in the recent fix for
9720         Bug#22169.
9722 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
9724         Document default process sentinel more prominently
9726         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
9727         defaults for process filter and sentinel.  Provide cross-references.
9728         (Process Information): Provide cross-references to where filters
9729         and sentinels are described.
9730         (Filter Functions): Add an index entry for "default filter".
9731         (Sentinels): Add a few status messages not documented previously.
9732         Resolve the "killed" confusion.  Document and describe the default
9733         sentinel.  (Bug#22220)
9735 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
9737         Fix file-name completion on OS X
9739         * src/dired.c (file_name_completion): Reject false matches due to
9740         file-name-coding-systems that decompose characters when encoding
9741         file names, by comparing decoded file names as well.  (Bug#22169)
9742         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
9744         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
9745         non-nil 'decomposed-characters' property.
9747 2015-12-23  Anders Lindgren  <andlind@gmail.com>
9749         File-name completion of non-ASCII characters on OS X (bug#22169)
9751         The coding system `utf-8-nfd', locally defined in ns-win.el,
9752         didn't provide a :pre-write-conversion method, causing file name
9753         completion of non-ASCII characters to fail.  Solved by using the
9754         `utf-8-hfs' coding system provided by `ucs-normalize'.
9756         * lisp/loadup.el: Load international/ucs-normalize (when building
9757         for ns).
9759         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
9760         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
9761         as the file name coding system.
9763         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
9765 2015-12-23  Tom Tromey  <tom@tromey.com>
9767         Fix bug #18588 by making bug-reference-bug-regexp more lenient
9769         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
9770         "bug NNNN".  (Bug #18588)
9772 2015-12-23  Tom Tromey  <tom@tromey.com>
9774         add some cl-* aliases to lisp-mode imenu
9776         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
9777         cl-defgeneric, and cl-defmethod.
9779 2015-12-22  Tom Tromey  <tom@tromey.com>
9781         Make a variable buffer-local
9783         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
9784         font-lock-syntax-table buffer-local.  (Bug #21627)
9786 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
9788         Fix decoding of text in URLs retrieved by EWW
9790         * lisp/net/eww.el (eww-render): Pass 'charset' to
9791         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
9792         non-nil, to set 'buffer-file-coding-system' of the buffer where we
9793         show the URL.
9794         (eww-display-html, eww-display-raw): Decode the text correctly,
9795         using the charset found in the headers, and defaulting to UTF-8.
9796         If the user told us to use a specific encoding, override the
9797         charset from the headers.  (Bug#22222)
9799 2015-12-22  Alan Mackenzie  <acm@muc.de>
9801         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
9803         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
9804         variable `tmp'.
9805         After a failed search for a matching ">", restore point before continuing.
9807 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
9809         Instrument Tramp tests
9811         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
9812         (tramp--test-utf8): Instrument tests.
9814 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
9816         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
9818         * lisp/simple.el (display-message-or-buffer): Call
9819         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
9820         (Bug#22221).
9822 2015-12-22  Juri Linkov  <juri@linkov.net>
9824         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
9826         (save-places-to-alist, save-place-dired-hook):
9827         Check for dired-subdir-alist.  (Bug#19851)
9829 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
9831         Add FIXME comment re stack overflow and modules
9833 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
9835         Revert some recent emacs-module commentary
9837         Most of the recently-added commentary was incorrect, due to the
9838         possibility of stack overflow.
9840 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
9842         Spelling fix: prefer "cooperate" to "co-operate"
9844 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
9846         Port undo fixes to -fno-common
9848         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
9849         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
9850         (buffer_before_last_command_or_undo):
9851         Declare in keyboard.h, and define in keyboard.c,
9852         instead of assuming the traditional Unix relaxed ref-def linkage.
9854 2015-12-20  Philipp Stephani  <phst@google.com>
9856         Improve commentary for emacs-module.c
9858         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
9859         * src/emacs-module.c (module_non_local_exit_get): Document that we
9860         cannot use the current implementation.
9861         (module_is_not_nil, module_eq): Document assumptions about EQ and
9862         NILP.
9864 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
9866         Suppress test on Mac OS X
9868         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
9869         (tramp--test-utf8): Use it.
9871 2015-12-20  Alan Mackenzie  <acm@muc.de>
9873         Merge branch 'scratch/follow' into emacs-25
9875         This allows Isearch, etc., to work well when Follow Mode is active.
9877 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
9879         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option): Improve check.
9881 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9883         Fix last commit
9885         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
9886         with numeric argument.
9888 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9890         Document new features of Rmail
9892         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
9893         Document new behavior of 'd' and 'C-d' with numeric argument.
9894         (Rmail Display): Document the rendering of HTML MIME parts.
9896 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9898         Improve documentation of new cl-lib functions
9900         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
9901         Fix wording.
9903 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9905         Document the new feature of 'minibuffer-with-setup-hook'
9907         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
9908         added to `minibuffer-setup-hook'.
9910 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9912         Document new features of Font Lock
9914         * doc/lispref/modes.texi (Other Font Lock Variables): Document
9915         'font-lock-flush-function' and 'font-lock-ensure-function'.
9916         (Font Lock Basics): Document the basic fontification functions
9917         referenced in "Other Font Lock Variables".
9919         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
9921 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9923         Document new features of Rectangle mode
9925         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
9926         rectangle-mark-mode.
9928 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9930         Manual followup to last change
9932         * doc/lispref/display.texi (Displaying Messages): Sync with the
9933         doc string.  (Bug#22210)
9935 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9937         Clarify doc string of 'display-message-or-buffer'
9939         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
9940         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
9942 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9944         * doc/emacs/emacs.texi (Top): Update top-level menus.
9946         * doc/lispref/elisp.texi (Top): Update top-level menus.
9948 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9950         Document how to avoid file-local variables that aren't
9952         * doc/emacs/custom.texi (Specifying File Variables): Describe how
9953         to prevent Emacs from interpreting unrelated text as file-local
9954         variables.  (Bug#22166)
9956 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
9958         Fix a typo in eterm-color's termcap entry
9960         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
9961         entry.  (Bug#22184)
9963 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
9965         Allow 'browse-url-emacs' visit non-existent URLs
9967         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
9968         signal an error if VISIT is non-nil, to more faithfully emulate
9969         the behavior of 'insert-file-contents'.  (Bug#22160)
9971 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
9973         Remove SunOS 4.x cruft
9975         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
9976         * lib-src/pop.c [sun]: Remove no-longer-needed include.
9977         * lwlib/xlwmenu.c (SUNSO41): Remove.
9979 2015-12-19  Paul Eggert  <eggert@cs.ucla.edu>
9981         Merge from gnulib
9983         This mostly commentary fixes.
9984         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
9985         * lib/gnulib.mk: Regenerate with new gnulib-tool.
9987 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
9989         Minor fixes in Tramp
9991         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
9992         Reorder ls arguments.
9994         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
9996 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
9998         Make tramp a built-in package
10000         * lisp/finder.el (finder-compile-keywords): Update
10001         `package--builtins' also when Version: keyword is available.
10003         * lisp/net/trampver.el: Add Version: keyword.
10004         (tramp-version): Change it to "2.2.13.25.1", in order to be
10005         compatible with `version-to-list'.
10007 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
10009         * etc/tutorials/TUTORIAL.it: Update and fix typos.
10011 2015-12-18  Alan Mackenzie  <acm@muc.de>
10013         Rename `recenter-group' to `recenter-window-group'
10015         * doc/lispref/windows.texi (Textual Scrolling)
10016         * lisp/window.el (top level, recenter-group)
10017         * lisp/follow.el (follow-mode)
10018         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
10019         `recenter-window-group' and `recenter-group-function' to
10020         `recenter-window-group-function'.
10022 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
10024         Fix vertical-motion in tabulated-list mode
10026         * src/indent.c (Fvertical_motion): When moving from line beginning
10027         to point under line truncation, assume overshoot by one line only
10028         if point actually lies beyond the window's right margin.
10029         (Bug#22194)
10031 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
10033         Don't have help functions call x-display-pixel-width/-height on ttys
10035         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
10036         Don't call x-display-pixel-width/-height on ttys.
10038 2015-12-18  Dmitry Gutov  <dgutov@yandex.ru>
10040         Use 'hg id' in vc-hg-previous-revision
10042         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
10043         Use 'hg id' to retrieve it (bug#22032).
10045 2015-12-17  Alan Mackenzie  <acm@muc.de>
10047         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
10049 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
10051         Fix a typo in the Emacs manual
10053         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
10054         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
10056 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
10058         Fix parsing netrc entries with ports
10060         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
10061         make a list out of 't'.  (Bug#22188)
10063         * test/automated/auth-source-tests.el
10064         (auth-source-test-netrc-parse-entry): New test.
10066 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
10068         Fix typo in Doug Lea malloc configure log
10070         * configure.ac (emacs_cv_var_doug_lea_malloc):
10071         Fix typo that confused the log output of 'configure'.
10073 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
10075         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
10077 2015-12-16  Alan Mackenzie  <acm@muc.de>
10079         * etc/NEWS: Move entry on pcase to correct section
10081         (Accidentally omitted from previous commit)
10083 2015-12-16  Alan Mackenzie  <acm@muc.de>
10085         Add documentation for changes to Show Paren mode.
10087         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
10089         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
10090         options, including the new show-paren-when-point-inside-paren and
10091         show-paren-when-point-in-periphery.
10093         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
10094         Move an entry on pcase to the Lisp Changes section.
10096 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
10098         Document Eldoc changes
10100         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
10102 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
10104         Fix invocation of Python and Guile interpreters from gdb-mi
10106         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
10107         commands for interactive Python and Guile interpreters.
10108         (gdb-send): Recognize various ways of exiting from Python and
10109         Guile interpreters and returning to GDB.  For details, see
10110         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
10111         and http://stackoverflow.com/questions/31514741.
10113 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
10115         Remove attempt to use C11 threads
10117         C11 threads are not needed for Emacs now, and their use is causing
10118         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
10119         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
10120         * configure.ac: Do not check for C11 threads. Remove unnecessary
10121         fiddling with CPPFLAGS when configuring pthreads.
10122         * src/emacs-module.c (main_thread, check_main_thread)
10123         (module_init): Do not worry about C11 threads.
10125 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
10127         Set utf8 encoding with stty in Tramp
10129         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10130         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
10131         encoding with stty.
10133 2015-12-15  Alan Mackenzie  <acm@muc.de>
10135         Tidy up documentation associated with window groups.
10137         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
10138         Groups".  Correct example function to `window-group-start'.
10139         (Window Start and End, Textual scrolling): Point to the new anchor.  State
10140         that (most of) the args in window group functions have the same meaning as for
10141         the corresponding window primitives.
10143         * doc/lispref/positions.texi (Screen Lines).  Same as above.
10145 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
10147         Complete last commit
10149         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10150         Move uname check up.  Handle Mac OS X eol encoding.
10152 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
10154         Handle Mac OS X eol encoding in Tramp
10156         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10157         Handle Mac OS X eol encoding.
10159 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10161         Fix variable name typo in compute_tip_xy
10163         * src/w32fns.c (compute_tip_xy):
10164         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
10165         when `right' is integer.
10167 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>
10169         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
10171 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
10173         Revert "Fix rx matcher overflow without limiting"
10175         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
10177 2015-12-14  Alan Mackenzie  <acm@muc.de>
10179         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
10181         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
10182         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
10184 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
10186         Fix rx matcher overflow without limiting
10188         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
10189         change to the regexp without imposing a limit on the length of the
10190         options.
10192 2015-12-14  Alan Mackenzie  <acm@muc.de>
10194         Enhance ispell-skip-region-alist by generating part of it at runtime.
10196         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
10197         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
10198         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
10199         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
10200         Include the result of ispell--make-filename-or-URL-re in regexps.
10202 2015-12-14  Glenn Morris  <rgm@gnu.org>
10204         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
10206 2015-12-14  Alan Mackenzie  <acm@muc.de>
10208         Replace GROUP argument in six window primitives by new functions.
10210         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
10211         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
10212         from description of six window functions.  Add in description of new functions
10213         window-group-start, window-group-end, set-window-group-start,
10214         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
10215         together with the six variables indirecting to the pertinent group
10216         functions.
10218         * src/window.c
10219         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
10220         applies to these two files, which added the GROUP argument to six window
10221         primitives.
10223         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
10224         functions.
10226         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
10227         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
10228         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
10229         to window primitives (e.g. window-start) with a GROUP argument by calls to
10230         new functions (e.g. window-group-start).
10232         * lisp/ispell.el (ispell-command-loop): Replace call to
10233         pos-visible-in-window-p with pos-visible-in-window-group-p.
10235         * lisp/window.el (window-group-start, window-group-end)
10236         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
10237         (selected-window-group, move-to-window-group-line): New functions.
10238         (window-group-start-function, window-group-end-function)
10239         (set-window-group-start-function, recenter-group-function)
10240         (pos-visible-in-window-group-p-function, selected-window-group-function)
10241         (move-to-window-group-line-function): New variables.
10243 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
10245         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
10247 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
10249         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
10251 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
10253         Improve regex to not trigger stack overflow
10255         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
10256         order not to trigger a stack overflow in regex matcher with unbalanced
10257         brackets (bug#22146).
10259 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
10261         Fix visiting files with raw-text
10263         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
10264         when some stuff was actually read.  (Bug#22162)
10266 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
10268         Fix regex matching keyval labels
10270         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
10271         matching keyval labels.
10273 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
10275         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
10277         ... in case of Tramp.  (Bug#20821)
10279 2015-12-13  Paul Eggert  <eggert@cs.ucla.edu>
10281         Fix performance regression with gcc -O0
10283         This fixes the smaller performance hit that I noted in:
10284         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
10285         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
10286         * src/puresize.h (puresize_h_PURE_P)
10287         (puresize_h_CHECK_IMPURE):
10288         New macros, with the old contents of the functions.
10289         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
10290         * src/puresize.h (PURE_P, CHECK_IMPURE):
10291         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
10292         * src/conf_post.h (ATTRIBUTE_UNUSED):
10293         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
10295 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
10297         * lisp/emacs-lisp/package.el (package-unpack): Security check
10299         Check that we received the package we were offered.
10301 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
10303         * lisp/emacs-lisp/package.el (package--compile): Don't activate
10305         `package-unpack' takes care of all activations now (other than
10306         `package-initialize).  `package--compile' now only compiles.
10308 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10310         Document the new bindings of <UP> and <DOWN> in the minibuffer
10312         * doc/emacs/mini.texi (Minibuffer History): Describe the new
10313         bindings of <UP> and <DOWN> in the minibuffer.
10315 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10317         Document new features of Ido
10319         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
10321 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
10323         Fix frame height calculations with added menu bar on Windows (Bug#22105)
10325         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
10326         when simultaneously specifying multiple parameters for
10327         `modify-frame-parameters' that all may change the frame's size.
10328         * src/w32fns.c (x_set_menu_bar_lines): Don't set
10329         windows_or_buffers_changed here.
10330         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
10331         with third argument false.
10332         * src/w32menu.c (set_frame_menubar): Set
10333         windows_or_buffers_changed here.
10334         * src/w32term.c (x_set_window_size): Determine third argument of
10335         AdjustWindowRect from whether the frame has a menu bar and not
10336         from whether it wants one.
10338 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10340         Document the change in interactive shell mode
10342         * doc/emacs/misc.texi (Interactive Shell): Document that the
10343         '*shell*' buffer by default displays in a new window.
10345 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10347         Document new features of package.el
10349         * doc/emacs/package.texi (Package Menu): Document the 'external'
10350         status and the new menu commands.
10351         (Package Installation): Document archive priorities.
10353         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
10354         (package-menu-hide-low-priority): Doc fix.
10356 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10358         Update and document new features of xterm support
10360         * doc/emacs/frames.texi (Text-Only Mouse): Document that
10361         track-mouse is supported by newer xterm versions.
10363 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10365         Document new features of Prettify Mode
10367         * doc/emacs/programs.texi (Misc for Programs): Document
10368         'prettify-symbols-compose-predicate' and
10369         'prettify-symbols-unprettify-at-point'.
10371         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
10372         (prettify-symbols-default-compose-p)
10373         (prettify-symbols-compose-predicate)
10374         (prettify-symbols--compose-symbol): Doc fixes.
10376 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10378         Document multi-mode indentation facilities
10380         * doc/lispref/text.texi (Mode-Specific Indent): Document
10381         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
10383         * lisp/progmodes/prog-mode.el (prog-indentation-context)
10384         (prog-widen): Doc fixes.
10386 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10388         Document 'vc-refresh-state'
10390         * doc/emacs/maintaining.texi (Version Control): Document
10391         'vc-refresh-state'.
10393         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
10395 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
10397         Fix echo for "C-u"
10399         * src/keyboard.c (command_loop_1): Undo last change.  It caused
10400         duplicate echo of C-u.  (Bug#22107)
10402 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
10404         Avoid errors when creating files under SVN in new directory
10406         * lisp/vc/vc-svn.el (vc-svn-registered): Use
10407         file-accessible-directory-p, to avoid cd'ing to a non-existing
10408         directory, which signals an error on some systems.  (Bug#21984)
10409         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
10410         Use declare-function to avoid byte-compiler warnings.
10412 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
10414         Improve Lua support in etags
10416         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
10417         "function".
10419         * etc/NEWS: Mention improved Lua support by 'etags'.
10421         * test/etags/lua-src/test.lua (test): Add tests for indented
10422         function definitions.
10423         * test/etags/ETAGS.good_1:
10424         * test/etags/ETAGS.good_2:
10425         * test/etags/ETAGS.good_3:
10426         * test/etags/ETAGS.good_4:
10427         * test/etags/ETAGS.good_5:
10428         * test/etags/ETAGS.good_6:
10429         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
10431 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
10433         Fix 'this-command-keys' wrt prefix argument
10435         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
10436         was part of this-command-keys, but not of this-single-command-keys.
10437         (Bug#22107)
10439         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
10440         commentary about the function's return value.
10442 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
10444         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
10446 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
10448         Improve and document Ruby support in 'etags'
10450         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
10451         (Ruby_functions): Support "module" and overloaded operators.
10452         (Ruby_help): Mention "module".
10454         * test/etags/ruby-src/test.rb:
10455         * test/etags/ruby-src/test1.ru: New files.
10456         * test/etags/Makefile (RBSRC): New tests.
10457         (SRCS): Add ${RBSRC}.
10458         * test/etags/ETAGS.good_1:
10459         * test/etags/ETAGS.good_2:
10460         * test/etags/ETAGS.good_3:
10461         * test/etags/ETAGS.good_4:
10462         * test/etags/ETAGS.good_5:
10463         * test/etags/ETAGS.good_6:
10464         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
10466         * doc/man/etags.1: Mention Ruby support.
10467         * etc/NEWS: Mention Ruby support.
10469 2015-12-11  Xi Lu  <lx@shellcodes.org>
10471         Initial support for Ruby in 'etags'
10473         * lib-src/etags.c <Ruby_suffixes>: New variable.
10474         (lang_names): Add an entry for Ruby.
10475         (Ruby_functions): New function.  (Bug#22116)
10477 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
10479         Clarify documentation of 'modify-frame-parameters'
10481         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
10482         PARMs" mean for 'modify-frame-parameters'.
10484         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
10485         PARMs" mean for this function.  (Bug#22104)
10487 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
10489         Fix setting buffer unibyte when reading from a device
10491         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
10492         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
10494 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
10496         Clarify documentation of 'values'
10498         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
10499         updated by any evaluation commands in 'lisp-interaction-mode'.
10500         (Bug#22056)
10502 2015-12-11  Anders Lindgren  <andlind@gmail.com>
10504         Fixed subversion vc error when opening file in new directory (bug#21984).
10506         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
10508 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
10510         Yet another fix for when point ends up in invisible text
10512         * src/xdisp.c (redisplay_window): When someone forced
10513         window-start, and honoring that failed to show the cursor, try
10514         moving out of invisible text, before falling back to the middle of
10515         the window.  (Bug#22098)
10517 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
10519         Fix error in Tramp perl script for cygwin
10521         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
10522         error if file doesn't exist.
10524 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
10526         Remove font workaround for limited outdated versions
10528         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
10529         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
10531 2015-12-09  Anders Lindgren  <andlind@gmail.com>
10533         Don't add "." to load path (bug#21104)
10535         When configured with --enable-locallisppath=no, which is the
10536         default for OS X, the load-path incorrectly was populated with ".".
10538         * src/lread.c (init_lread): Don't call `decode_env_path' when
10539         PATH_SITELOADSEARCH is empty.
10541 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
10543         * lisp/emacs-lisp/package.el (package--with-response-buffer):
10545         Search for the blank-line in the right buffer.
10547 2015-12-08  Glenn Morris  <rgm@gnu.org>
10549         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
10550         for recent change.
10552 2015-12-08  Glenn Morris  <rgm@gnu.org>
10554         Fix some display-warning usage.
10556         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
10557         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
10558         * lisp/calendar/holidays.el (calendar-holiday-list):
10559         * lisp/mail/rmailout.el (rmail-output-read-file-name):
10560         Fix display-warning usage.
10562 2015-12-08  Glenn Morris  <rgm@gnu.org>
10564         * lisp/calendar/cal-html.el: Require diary-lib.
10566         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
10568 2015-12-08  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
10570         Add Obsolete-since header to eudcb-ph.el
10572         * lisp/obsolete/eudcb-ph.el: Add Obsolete-since header.
10574 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
10576         Spelling fixes
10578         * doc/misc/calc.texi (Predefined Units): Use the bland modern
10579         scientific style for spelling the units “ampere” and
10580         “angstrom” rather than the older style “Ampere” and
10581         “Ångstrom”.  The latter spelling was wrong anyway (it should
10582         have been “Ångström”).
10583         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
10584         Fix misspelling of ‘atom’ in code.
10586 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
10588         Improve documentation of kill commands
10590         * lisp/simple.el (region-extract-function, delete-backward-char)
10591         (delete-forward-char, kill-region, copy-region-as-kill)
10592         (kill-ring-save): Better document the optional argument REGION in
10593         the doc strings.  Mention in the doc strings that text put in the
10594         kill-ring can be filtered by 'filter-buffer-substring'.
10596         * doc/lispref/text.texi (Kill Functions): Mention that functions
10597         described in this subsection can filter text they put in the
10598         kill-ring.  Add a cross-reference to "Buffer Contents" and an
10599         index entry.  Document the optional argument 'region' and its
10600         effect.
10601         (Bug#21315)
10603 2015-12-07  Alan Mackenzie  <acm@muc.de>
10605         Further progress making Isearch, Ispell, Replace work with Follow Mode.
10607         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
10608         no longer exists.  Add follow-post-command-hook to  three special purpose
10609         hooks at setup, and remove them at tear down.
10611         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
10612         isearch-lazy-highlight-new-loop.
10613         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
10614         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
10615         it.
10616         (isearch-lazy-highlight-maybe-new-loop): function removed.
10618         * lisp/replace.el: (replace-update-post-hook): New hook variable.
10619         (perform-replace): Add second (nil) argument to looking-back.  Invoke
10620         replace-update-post-hook before calling replace-highlight.
10622         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
10623         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
10624         call of pos-visible-in-window-p.
10625         (ispell-display-buffer): Place *Choices* window at the top of the last window
10626         in a window group.
10628 2015-12-07  Alan Mackenzie  <acm@muc.de>
10630         Amend doc of `mapconcat': it can take sequences, not merely strings.
10632         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
10633         to say that SEPARATOR and the results from FUNCTION may be any character
10634         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
10636 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
10638         Fix an utf8 problem for Tramp on BSD
10640         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10641         Make lax check for utf8.
10642         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
10644 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
10646         Make eudcb-ph.el obsolete
10648         * doc/misc/eudc.texi: Bump version to 1.40.0.
10649         Remove PH/QI sections and mentions.
10650         * lisp/obsolete/eudcb-ph.el: Make obsolete.
10651         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
10652         (eudc-ph-bbdb-conversion-alist): Make obsolete.
10653         * etc/NEWS: Mention this.  (Bug#21191)
10655 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
10657         Remove overenthusiastic eassert
10659         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
10660         previous change.  It breaks on MS-Windows --with-wide-int.
10661         Problem reported by Eli Zaretskii in:
10662         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
10664 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
10666         Pacify gcc -Wparentheses
10668         * src/xdisp.c (row_containing_pos): Reparenthesize.
10670 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
10672         Port mod-test to 32-bit Emacs --without-wide-int
10674         * modules/mod-test/test.el (mod-test-sum-test):
10675         Bring back the 2**29 tests, but port them to 32-bit Emacs
10676         --without-wide-int.
10678 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
10680         Fix minor Tramp problems found on BSD
10682         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
10683         trailing slash.  Quote apostrophes.
10684         (tramp-sh-handle-file-truename): Do not append trailing slash in
10685         the "ls" case.
10686         (tramp-get-ls-command-with-w-option): New defun.
10687         (tramp-do-file-attributes-with-ls)
10688         (tramp-do-directory-files-and-attributes-with-stat): Use it.
10690         * test/automated/tramp-tests.el
10691         (tramp-test31-special-characters-with-perl)
10692         (tramp-test31-special-characters-with-ls)
10693         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
10694         Suppress also readlink.
10696 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
10698         Fix cursor display when invisible text is at line beginning
10700         * src/xdisp.c (redisplay_window): When scrolling fails to show
10701         point, prefer using the desired matrix if possible for finding the
10702         fallback glyph row for displaying the cursor.  (Bug#22098)
10703         (row_containing_pos): Exit the loop as soon as we hit the first
10704         disabled glyph row.  Otherwise we risk accessing garbled data and
10705         departing to the no-no land.
10707 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
10709         Improve module interface when WIDE_EMACS_INT
10711         * src/emacs-module.c (plain_values): New constant.
10712         (module_nil): Now a constant.
10713         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
10714         (syms_of_module): Use if, not #ifdef, so that both sides are
10715         checked at compile-time, and so that GCC doesn’t complain
10716         about an unused var in the typical case.  Also, depend on
10717         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
10718         that WIDE_EMACS_INT implies !USE_LSB_TAG.
10719         (value_to_lisp_bits, lisp_to_value_bits): New functions.
10720         Sign-extend integers rather than zero-extending them, as small
10721         negative integers are more likely.
10722         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
10723         functions.
10724         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
10725         (mark_modules): Remove.  All uses removed.
10726         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
10727         to GCALIGNMENT.
10728         (syms_of_module): Check that module_nil converts to Qnil.
10729         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
10730         we prefer signed to unsigned when either will do.
10731         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
10732         a bit better for emacs-module.c.
10734 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
10736         Port mod-test to x86-64 GNU/Linux running 32-bit
10738         * modules/mod-test/test.el (mod-test-sum-test):
10739         Don’t attempt to match descriptions to operating systems.
10740         It didn’t work on Fedora x86-64 running a 32-bit executable,
10741         and it’s not worth the trouble anyway.
10742         Port to 32-bit platforms by removing an assumption about
10743         fixnum widths.
10745 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
10747         Fix auto-revert-tests.el when filenotify isn't used
10749         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
10750         Make it working also when filenotify isn't used.
10752 2015-12-06  Juri Linkov  <juri@linkov.net>
10754         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
10756         Let-bind isearch-regexp-function to nil.  (Bug#22097)
10758 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
10760         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
10762         (package--with-response-buffer): NOERROR and ERROR-FORM only
10763         handle connection errors.
10764         (bad-signature): New error type.
10765         (package--check-signature-content): Use it.
10766         (package--check-signature): Properly distinguish connection errors
10767         from bad-signature errors.  Do the check for
10768         `package-check-signature' `allow-unsigned' here instead of forcing
10769         the callbacks to do it.  Add a new argument, UNWIND.
10770         (package--download-one-archive, package-install-from-archive):
10771         Update usage of `package--check-signature'.
10773 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
10775         Fix Bug#22092.
10777         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
10778           Clean up inconsistent line endings. (Bug#22092)
10779           (icalendar--clean-up-line-endings): New.
10780         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
10781           for Bug#22092.
10783 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
10785         Document 'bookmark-set-no-overwrite'
10787         * doc/emacs/regs.texi (Bookmarks): Document the new command
10788         'bookmark-set-no-overwrite' and its keybinding.
10790 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
10792         Document new binding of 'mouse-buffer-menu'
10794         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
10795         now also on C-F10.
10797 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
10799         Initial documentation of dynamic modules
10801         * doc/lispref/loading.texi (Dynamic Modules): New section with
10802         initial documentation for dynamic modules.
10803         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
10804         detailed menu
10806         * etc/NEWS: Fix typos in dynamic modules' entry.
10808 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
10810         Remove copyright statements from trivial test files
10812 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
10814         Add "Preliminaries" section to etc/DEBUG
10816         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
10817         Most of the content was suggested by Phillip Lord
10818         <phillip.lord@russet.org.uk>.  Remove the section about debugging
10819         with the Visual Studio, as building Emacs with the Microsoft
10820         compilers is no longer supported.  Minor fixes in some other
10821         sections.
10823 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
10825         Improve parsing of version strings
10827         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
10828         (version-to-list): More helpful error messages.
10829         (version-to-list): ".5" is valid (update docstring).  Make
10830         "22.8X3" invalid, as the doc string says.
10832         * test/automated/subr-tests.el (ert-test-version-parsing): New
10833         tests for version string processing.
10835 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
10837         Fix documentation of 'undo' changes
10839         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
10840         English conventions for spelling and whitespace between sentences.
10842         * etc/NEWS: Fix wording and spelling of undo-related entries.
10843         Mark them as documented.
10845 2015-12-05  Glenn Morris  <rgm@gnu.org>
10847         * lisp/net/net-utils.el: Small improvements.
10849         (net-utils--executable-find-sbin): New function.
10850         (ifconfig-program): Check sbin directories.
10851         Fallback to "ip".  (Bug#22091)
10852         (ifconfig-program-options): Check the actual program in use.
10853         (arp-program): Check sbin directories.
10855 2015-12-04  (tiny change) Arash Esbati  <esbati@gmx.de>  (tiny change)
10857         Fix wrong-type-argument integer-or-marker-p nil error
10859         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
10860         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
10862 2015-12-04  Alan Mackenzie  <acm@muc.de>
10864         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
10866         Merge necessitated by a rebase operation.
10868 2015-12-04  Alan Mackenzie  <acm@muc.de>
10870         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
10872 2015-12-04  Alan Mackenzie  <acm@muc.de>
10874         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
10876         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
10877         Windows" and new @defun selected-window-group.
10878         (Window Start and End): Describe new &optional parameter GROUP and
10879         ...-group-function for window-start, window-end, set-window-start, and
10880         pos-visible-in-window-p.
10881         (Textual Scrolling) Describe the same for recenter.
10882         doc/lispref/positions.texi (Screen Lines): Describe the same for
10883         move-to-window-line.
10885         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
10886         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
10887         new optional parameter "group".  At the beginning of each, check whether the
10888         corresponding ...-group-function is set to a function, and if so execute this
10889         function in place of the normal processing.
10890         (syms_of_window): Define symbols for the six new variables below.
10891         (window-start-group-function, window-end-group-function)
10892         (set-window-start-group-function, recenter-group-function)
10893         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
10894         New permanent local buffer local variables.
10895         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
10896         Fpos_visible_in_window_p.
10898         lisp/window.el (selected-window-group-function): New permanent local buffer
10899         local variable.
10900         (selected-window-group): New function.
10902         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
10903         enable, kill them at mode disable.  Add/remove follow-after-change to/from
10904         after-change-functions.
10905         (follow-start-end-invalid): New variable.
10906         (follow-redisplay): Manipulate follow-start-end-invalid.
10907         (follow-after-change, follow-window-start, follow-window-end)
10908         (follow-set-window-start, follow-pos-visible-in-window-p)
10909         (follow-move-to-window-line, follow-sit-for): New functions.
10911         lisp/isearch.el (isearch-call-message): New macro.
10912         (isearch-update, with-isearch-suspended, isearch-del-char)
10913         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
10914         (with-isearch-suspended): Rearrange code such that isearch-call-message is
10915         invoked before point is moved.
10916         (isearch-message): Add comment about where point must be at function call.
10917         (isearch-search): Remove call to isearch-message.
10918         (isearch-lazy-highlight-window-group): New variable.
10919         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
10920         the battery of tests to ...
10921         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
10922         Note: (sit-for 0) is still called.
10923         (isearch-lazy-highlight-update): Check membership of
10924         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
10925         property.
10926         (isearch-update, isearch-done, isearch-string-out-of-window)
10927         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
10928         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
10929         (isearch-lazy-highlight-update): Call the six amended primitives (see
10930         src/window.c above) with the new `group' argument set to t, to cooperate
10931         with Follow Mode.
10933 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
10935         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
10937         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
10938         (ert--explain-format-atom, ert--explain-equal-rec)
10939         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
10940         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
10942 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
10944         * lisp/character-fold.el: Remove special case-folding support
10946         (character-fold-to-regexp): Remove special code for
10947         case-folding.  Char-fold search still respects the
10948         `case-fold-search' variable (i.e., f matches F).  This only
10949         removes the code that was added to ensure that f also matched
10950         all chars that F matched.  For instance, after this commit, f
10951         no longer matches 𝔽.
10953         This was necessary because the logic created a regexp with
10954         2^(length of the string) redundant paths.  So, when a very
10955         long string "almost" matched, Emacs took a very long time to
10956         figure out that it didn't.  This became particularly relevant
10957         because isearch's lazy-highlight does a search bounded by (1-
10958         match-end) (which, in most circumstances, is a search that
10959         almost matches).  A recipe for this can be found in bug#22090.
10961 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
10963         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
10965         Fixes (bug#21701)
10967 2015-12-04  Daiki Ueno  <ueno@gnu.org>
10969         lisp/gnus/qp.el: Don't replace "from " at bol
10971         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
10972         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
10974 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
10976         Externalize some symbols in undo-auto
10978          * doc/lispref/text.texi: Update symbols.
10979          * lisp/simple.el (undo-auto--amalgamate,
10980            undo-auto--current-boundary-timer): Make symbols public.
10981          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
10982            updated symbol.
10984 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
10986         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
10988 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
10990         Some error message improvements in tramp-sh.el
10992         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
10993         Suppress error messages for "mesg" and "biff" calls.
10994         (tramp-get-remote-path): Ignore errors when expanding
10995         `tramp-own-remote-path'.  Raise a warning instead.
10997 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
10999         Document 'nacl' value for 'system-type'
11001         * doc/lispref/os.texi (System Environment): Document the 'nacl'
11002         value of 'system-type'.
11004 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11006         Document 'window-max-chars-per-line'
11008         * doc/lispref/windows.texi (Window Sizes): Document
11009         'window-max-chars-per-line'.
11011 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11013         Fix some file headers for the purpose of `package--builtins'
11015         * lisp/emacs-lisp/cl-preloaded.el
11016         * lisp/emacs-lisp/eieio-compat.el
11017         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
11019         * lisp/ielm.el: Fix summary line.
11021 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11023         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
11025         Reload any previously loaded package files before compiling
11026         the package (also reload the same files after compiling).
11027         This ensures that we have the most recent definitions during
11028         compilation, and avoids generating bad elc files when a macro
11029         changes and it is used in a different file from the one it's
11030         defined in.
11032 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11034         * lisp/emacs-lisp/package.el: Refactor package activation code
11036         (package-activate): Move code that activates dependencies into
11037         package-activate-1.
11038         (package--load-files-for-activation): New function.
11039         (package-activate-1): Add code for (optionally) activating
11040         dependencies, and move file-loading code into
11041         `package--load-files-for-activation'.
11043 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11045         Document new font-related functionality
11047         * doc/lispref/display.texi (Low-Level Font): Document
11048         'default-font-width', 'default-font-height', 'window-font-width',
11049         and 'window-font-height'.
11051         * etc/NEWS: Move entries for 'default-font-width',
11052         'default-font-height', 'window-font-width', and 'window-font-height'
11053         to their place and mark them documented.
11055 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
11057         Fix documentation and implementation of 'directory-name-p'
11059         * lisp/files.el (directory-name-p): Modify to recognize
11060         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
11061         accordingly.  Use '=', not char-equal, for comparison, as
11062         letter-case cannot possibly be an issue here.
11064         * doc/lispref/files.texi (Directory Names): Move the documentation
11065         of directory-name-p here from "Relative File Names".  Update the
11066         description per the changes in implementation.
11068         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
11069         place and mark it documented.
11071 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
11073         Minor copyedit in Emacs manual
11075         * doc/emacs/search.texi (Lax Search): Make wording about character
11076         folding by default less definitive.  (Bug#22043)
11078 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
11080         More emacs-module.c fixes for wide ints
11082         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
11083         unsigned data types to manipulate pointers, to avoid sign
11084         extension coming after us with a vengeance.
11086         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
11087         Emacs with wide ints that verify integer values near the critical
11088         value that requires us to switch to a cons cell.
11090 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
11092         Fix bug#22069 in cl-generic.el
11094         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
11095         not run thru `format'.
11097 2015-12-02  Dmitry Gutov  <dgutov@yandex.ru>
11099         APPEND etags--xref-backend to xref-backend-functions
11101         * lisp/progmodes/xref.el (xref-backend-functions):
11102         Use APPEND when adding the default element
11103         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
11105 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
11107         More accurate documentation of lax whitespace matching
11109         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
11110         (word-search-backward, word-search-forward)
11111         (word-search-backward-lax, word-search-forward-lax): Mention in
11112         doc strings that toggling lax whitespace matching has no effect on
11113         these commands.
11115         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
11116         lax whitespace matching has no effect on these commands.
11118 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
11120         Fix emacs-module.c for wide ints
11122         * src/emacs-module.c (lisp_to_value): Compare the produced value
11123         with the original Lisp object, not with the one potentially
11124         converted into a Lisp_Cons.  Fixes assertion violations when
11125         working with integers larger than fit into a 32-bit value.
11127         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
11128         large integers, to test --with-wide-int.
11130 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
11132         Document 'directory-files-recursively'
11134         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
11135         the argument MATCH to REGEXP, to be more explicit about its form.
11137         * doc/lispref/files.texi (Contents of Directories): Improve the
11138         documentation of 'directory-files-recursively'.  Add
11139         cross-references.
11141         * etc/NEWS: Move the entry for 'directory-files-recursively' to
11142         its place and mark it documented.
11144 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
11146         Document 'inhibit-read-only' property
11148         * doc/lispref/text.texi (Special Properties): Describe the new
11149         'inhibit-read-only' text property.  Add cross-reference to where
11150         read-only buffers are described.
11151         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
11152         'inhibit-read-only' property exempts text from being read-only.
11153         Add cross-reference to "Special Properties".
11155         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
11156         its place and mark it documented.
11158 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
11160         * lisp/emacs-lisp/package.el: Update header comments
11162 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
11164         * lisp/character-fold.el: Add back multi-char matching
11166         (character-fold-to-regexp): Uncomment recently commented code
11167         and make the algorithm "dummer" by not checking every possible
11168         combination.  This will miss some possible matches, but it
11169         greatly reduces regexp size.
11171         * test/automated/character-fold-tests.el
11172         (character-fold--test-fold-to-regexp): Comment out test of
11173         functionality no longer supported.
11175 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
11177         * doc/emacs/ack.texi (Acknowledgments): Update.
11179 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
11181         Check `file-remote-p' over absolute files names in files.el
11183         * lisp/files.el (directory-files-recursively)
11184         (get-free-disk-space): Check `file-remote-p' over absolute files names.
11186 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
11188                 * src/lread.c (syms_of_lread): Doc fix.
11190 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
11192         Don't mistake certain JS method calls for keywords
11194         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
11195         Braceless keyword can't come after a period (bug#22063).
11197 2015-12-01  David Reitter  <david.reitter@gmail.com>
11199         Read frame_title_format from buffer-local variable for NS port
11201         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
11202         icon-title-format variables from buffer in appropriate window.
11203         (Bug#22048)
11205 2015-12-01  Juri Linkov  <juri@linkov.net>
11207         * lisp/replace.el (occur-engine): Count matches in empty lines.
11209         (Bug#22062)
11211 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
11213         * src/emacs-module.h: Fix finalizer typedef for C++11
11215         C++11 standard doesn't allow exception-specification in typedef.
11216         The workaround is to declare a dummy function prototype and use
11217         decltype on it.
11219 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
11221         Fix last change
11223         * src/emacs-module.c (lisp_to_value, value_to_lisp)
11224         [WIDE_EMACS_INT]: Avoid compiler warnings.
11226 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
11228         Rely on conservative stack scanning to find "emacs_value"s
11230         * src/emacs-module.c (struct emacs_value_tag)
11231         (struct emacs_value_frame, struct emacs_value_storage): Remove.
11232         (value_frame_size): Remove constant.
11233         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
11234         (lisp_to_value): Remove first arg.
11235         (module_nil): New constant.
11236         Use it instead of NULL when returning an emacs_value.
11237         (module_make_function): Adjust to new calling convention of
11238         Qinternal_module_call.
11239         (DEFUN): Receive args in an array rather than a list.
11240         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
11241         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
11242         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
11243         Adjust to new type of non_local_exit info.
11244         (ltv_mark) [WIDE_EMACS_INT]: New constant.
11245         (value_to_lisp, lisp_to_value): Rewrite.
11246         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
11247         (allocate_emacs_value): Remove function.
11248         (mark_modules): Gut it.
11249         (initialize_environment): Don't initialize storage any more.
11250         Keep the actual env object on Vmodule_environments.
11251         (finalize_environment): Don't finalize storage any more.
11252         (syms_of_module): Initialize ltv_mark and module_nil.
11254         * src/emacs-module.h (emacs_value): Make it more clear that this type
11255         is really opaque, including the fact that NULL may not be valid.
11257         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
11258         Don't assume that NULL is a valid emacs_value.
11260 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
11262         Yet another doc improvement for search commands
11264         * doc/emacs/search.texi (Word Search, Symbol Search)
11265         (Regexp Search): Document commands that don't support lax
11266         whitespace matching or character folding.
11267         (Nonincremental Search): Mention the search commands that can be
11268         invoked from the menu bar.
11270         * lisp/isearch.el (isearch-define-mode-toggle-word)
11271         (isearch-define-mode-toggle-symbol)
11272         (isearch-define-mode-toggle-character-fold): Note in the doc
11273         string that turning these on exits the regexp mode.
11274         (isearch-forward-regexp, isearch-forward-word)
11275         (isearch-forward-symbol, isearch-backward-regexp)
11276         (word-search-backward, word-search-forward)
11277         (word-search-backward-lax, word-search-forward-lax): State in the
11278         doc string which commands don't support character folding and/or
11279         lax-whitespace matching.
11281 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
11283         Run `window-size-change-functions' also when reading from minibuffer
11285         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
11286         also when reading from minibuffer.
11288 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
11290         Fix scrambling of html-rendered item buffers
11292         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
11293           scrambling of contents by wrapping call to html-renderer in
11294           save-selected-window.
11296 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
11298         Fix font typo in previous doc fix.
11300 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
11302         A bit more security doc, esp. file local vars
11304         * doc/emacs/emacs.texi (Top):
11305         * doc/emacs/misc.texi (Miscellaneous Commands):
11306         Refer to new Host Security section.
11307         (Host Security): New section.
11308         * doc/lispref/os.texi (Security Considerations):
11309         Mention file local variables.
11311 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
11313         * lisp/character-fold.el: Comment out branching code
11315         (character-fold-to-regexp): Comment out code that uses multi-char
11316         table.  The branching caused by this induces absurdly long regexps,
11317         up to 10k chars for as little as 25 input characters.
11319 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
11321         Spelling and grammar fixes
11323 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
11325         Make lisp-completion-at-point a wrapper instead of an alias
11327         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
11328         Turn into an obsolete wrapper around elisp-completion-at-point
11329         (bug#20455).
11331 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11333         * lisp/isearch.el (isearch-search-fun-default): Nicer error
11335         message when the search fails.
11337 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
11339         Update menu-bar-goto-uses-etags-p for the current xref API
11341         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
11342         xref-backend-functions, instead of now-nonexistent
11343         xref-find-function.
11345 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11347         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
11349 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11351         * lisp/menu-bar.el: Use folding in searches
11353         (nonincremental-search-forward): Use `isearch-search-fun-default'
11354         to determine the search function.
11355         (nonincremental-search-backward)
11356         (nonincremental-repeat-search-forward)
11357         (nonincremental-repeat-search-backward): Use it.
11359 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11361         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
11363 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
11365         * lisp/character-fold.el (character-fold-to-regexp): Be careful
11367         not to return huge regexps.
11369 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
11371         Improve documentation of string-collate-* functions
11373         * doc/lispref/strings.texi (Text Comparison): Improve wording and
11374         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
11376         * etc/NEWS: Move the entry of 'string-collate-equalp' and
11377         'string-collate-lessp' to "Lisp Changes" section and mark it as
11378         documented.
11380 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
11382         Document truncate-string-ellipsis
11384         * doc/lispref/display.texi (Size of Displayed Text): Document
11385         'truncate-string-ellipsis'.
11387         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
11388         (truncate-string-to-width): Mention in the doc string that the
11389         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
11391         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
11392         Changes" section.
11394 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
11396         Fix confusion wrt character folding in the Emacs manual
11398         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
11399         Document that invoking search-forward/backward and
11400         re-search-forward/backward supports only case folding, but not the
11401         rest of the lax-search features.  Reported by Mike Kupfer
11402         <m.kupfer@acm.org>.
11404 2015-11-29  Ken Brown  <kbrown@cornell.edu>
11406         Update mod-test-sum-test
11408         * modules/mod-test/test.el (mod-test-sum-test): Update to
11409         accommodate the lack of dladdr on Cygwin.
11411 2015-11-29  Alan Mackenzie  <acm@muc.de>
11413         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
11415         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
11416         to `funcall', (i) Output an error message; (ii) Generate code to signal a
11417         `wrong-number-of-arguments' error.
11419 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
11421         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
11423 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11425         * lisp/character-fold.el (character-fold-to-regexp)
11427         Warn about using long strings.
11429         * test/automated/character-fold-tests.el
11430         (character-fold--test-lax-whitespace)
11431         (character-fold--test-consistency): Reduce string size for tests.
11433 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11435         Document renaming of x-select-enable-* variables
11437         * doc/emacs/killing.texi (Clipboard): Rename
11438         x-select-enable-clipboard to select-enable-clipboard and
11439         x-select-enable-primary to select-enable-primary.  Update index
11440         entries.
11442         * etc/NEWS: Mark entry as documented.
11444 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11446         Document the shorthand hints displayed by M-x
11448         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
11449         suggest-key-bindings.  Document the shorthand hints for commands
11450         that have no key bindings.  Document that M-x completion ignores
11451         obsolete commands.
11453         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
11454         documented.
11456 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11458         Update docs of character folding
11460         * doc/emacs/search.texi (Lax Search): Update the description of
11461         character folding for the latest changes.
11463 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11465         * lisp/character-fold.el: Also play nice with case-folding
11467         (character-fold-to-regexp): Take `case-fold-search' into account.
11469 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11471         * lisp/character-fold.el: Add support for multi-char matches
11473         (character-fold-table): Now has an extra-slot. This is a second
11474         char-table that holds multi-character matches.  See docstring for
11475         details.
11476         (character-fold-to-regexp): Can build branching regexps when a
11477         character's entry the extra slot of `character-fold-table' matches the
11478         characters that succeed it.
11480 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
11482         * lisp/character-fold.el: Code simplifications
11484         (character-fold-table): Reduce the scope of a variable.
11485         (character-fold-to-regexp): Change logic to work directly on the
11486         input string.  It's a little easier to understand, probably
11487         faster, and sets us up for implementing multi-char matches.
11489         * test/automated/character-fold-tests.el
11490         (character-fold--test-fold-to-regexp): New test.
11492 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11494         Document changes in "C-h l"
11496         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
11498         * etc/NEWS: mark "C-h l" changes as documented.
11500 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11502         Finalize documentation of 'custom-prompt-customize-unsaved-options'
11504         * doc/emacs/custom.texi (Saving Customizations): Index the new
11505         function 'custom-prompt-customize-unsaved-options'.
11507         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
11508         is useful.
11510 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11512         Document 'comment-line'
11514         * doc/emacs/programs.texi (Comment Commands): Document
11515         'comment-line'.
11517         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
11519 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11521         Document new checkdoc features
11523         * doc/lispref/tips.texi (Tips, Library Headers): Document the
11524         keyword-checking features of checkdoc and the commands
11525         'checkdoc-file' and 'checkdoc-current-buffer'.
11527         * etc/NEWS: Move the checkdoc-related entries to their own
11528         section.
11530 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
11532         Simplify the prologue of emacs-module.c functions
11534         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
11535         (module_make_global_ref)
11536         (module_free_global_ref, module_make_function, module_funcall)
11537         (module_intern, module_type_of, module_extract_integer)
11538         (module_make_integer, module_extract_float, module_make_float)
11539         (module_copy_string_contents, module_make_string)
11540         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
11541         (module_get_user_finalizer, module_set_user_finalizer)
11542         (module_vec_set, module_vec_get, module_vec_size): Use new helper
11543         macro MODULE_FUNCTION_BEGIN.
11545 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11547         Don't reject module calls with no arguments
11549         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
11551 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
11553         Make module-call be visible from Lisp
11555         * src/emacs-module.c (module_make_function): Use internal--module-call.
11556         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
11557         checks.
11558         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
11559         defsubr internal--module-call.
11561 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11563         Add etags tests for the recent Lua-related bugfix
11565         * test/etags/lua-src/test.lua: New file, tests the issues raised
11566         by bug#21934.
11567         * test/etags/Makefile (LUASRC): Add test.lua.
11568         * test/etags/ETAGS.good_1:
11569         * test/etags/ETAGS.good_2:
11570         * test/etags/ETAGS.good_3:
11571         * test/etags/ETAGS.good_4:
11572         * test/etags/ETAGS.good_5:
11573         * test/etags/ETAGS.good_6:
11574         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
11575         regression fix, resolved around 25 May 2015, required changes to
11576         the "good" ETAGS files.
11578 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11580         Fix Lua tags when a function name includes '.' or ':'
11582         * lib-src/etags.c (Lua_functions): Add a tag for the last element
11583         of a function name after a dot or a colon.  (Bug#21934)
11585 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
11587         Improve documentation of search and replace commands
11589         * doc/emacs/search.texi (Replacement and Lax Matches): Document
11590         which commands are affected by 'replace-character-fold'.
11591         (Lax Search): Add a cross reference to "Replacement and Lax
11592         Matches".  Improve wording.  Fix lost extra whitespace.
11593         (Search Customizations): Improve wording.  (Bug#22036)
11594         See also comments in
11595         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
11597         * lisp/replace.el (query-replace, query-replace-regexp)
11598         (query-replace-regexp-eval, replace-string, replace-regexp):
11599         Mention 'replace-character-fold' in the doc strings.
11601 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
11603         Fix minor problems found by static checking
11605         * src/undo.c (prepare_record): Add proper prototype for C.
11607 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
11609         * src/emacs-module.c (struct env_storage): Delete
11611         (struct emacs_runtime_private): Keep an emacs_env instead.
11612         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
11613         (initialize_environment): Split the arg in two.  Adjust all callers.
11614         Only store the private part in Vmodule_environments.
11615         (finalize_environment): Change the arg to only be the private env.
11616         Adjust all callers.
11618 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
11620         Improve documentation of 'replace-character-fold'
11622         * lisp/replace.el (replace-character-fold): Clarify which commands
11623         are affected by this variable.
11625 2015-11-27  Mark Oteiza  <mvoteiza@udel.edu>
11627         Backport: Add interactive seek command.
11629         * lisp/mpc.el (mpc-cmd-seekcur): New function.
11630         (mpc-seek-current): New command.
11631         (mpc-mode-menu): Add entry for mpc-seek-current
11632         (mpc-mode-map): Bind mpc-seek-current to "g"
11634 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
11636         Autoload etags when using its xref backend
11638         * lisp/progmodes/xref.el (xref--etags-backend):
11639         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
11640         (Bug#22026)
11642 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
11644         * lisp/character-fold.el: Allow complex chars to match their decomposition
11646         (character-fold-table): When a character's decomposition does not
11647         involve a formatting tag (i.e., if it has an "exact" description via
11648         other characters), then this character is allowed to match the
11649         decomposition.
11651 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
11653         * lisp/character-fold.el: More descriptive variable names
11655         (character-fold-table): Rename a lot of the lexical variables to
11656         make the code easier to read.
11658 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
11660         * lisp/isearch.el: Ensure we still support `isearch-new-word'
11662         (isearch-new-regexp-function): Define variable.
11663         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
11665 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
11667         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
11669 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
11671         * test/automated/abbrev-tests.el: Define more tests
11673         (abbrev-table-name-test, kill-all-abbrevs-test)
11674         (clear-abbrev-table-test): New tests.
11676 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
11678         Add module tests for wrong-type-argument
11680         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
11681         wrong-type-argument.
11683 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
11685         Improve handling of signals and 'throw' in modules
11687         * src/emacs-module.c: Add commentary explaining how to write
11688         functions in this file.
11689         (module_make_global_ref, module_free_global_ref)
11690         (module_non_local_exit_signal, module_non_local_exit_throw)
11691         (module_make_function, module_funcall, module_intern)
11692         (module_type_of, module_is_not_nil, module_eq)
11693         (module_extract_integer, module_make_integer)
11694         (module_extract_float, module_make_float)
11695         (module_copy_string_contents, module_make_string)
11696         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
11697         (module_get_user_finalizer, module_set_user_finalizer)
11698         (module_vec_set, module_vec_get, module_vec_size)
11699         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
11700         Do nothing and return with failure indication immediately, if some
11701         previous module call signaled an error or wants to throw.  See
11702         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
11703         for the relevant discussions.
11705 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
11707         Add ':version' tag to 'checkdoc-package-keywords-flag'
11709         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
11710         Add a ':version' tag.
11712 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
11714         Improve documentation of 'eval-buffer' and 'eval-region'
11716         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
11718         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
11719         "accessible portion of buffer".
11721 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
11723         Unbreak the Cygwin w32 build
11725         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
11726         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
11728 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
11730         Improve commentary in character-fold.el
11732         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
11733         description from commit log message to comments.  (Bug#22019)
11735 2015-11-26  Alan Mackenzie  <acm@muc.de>
11737         Byte Compiler: generate code to adjust stack count after call to `signal'.
11739         Corrects change from earlier today.
11741         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
11742         `byte-compile--for-effect' as argument to `byte-compile-form'.
11744 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
11746         Improve commentary of prepare_to_modify_buffer_1
11748         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
11749         that this function runs Lisp.  Suggested by Richard Stallman
11750         <rms@gnu.org>.
11752 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
11754         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
11756 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
11758         Fix regression after merge.
11760          * src/undo.c (prepare_record): Remove call to run_undoable_change.
11762 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
11764         After delete, record point location in undo.
11766         Addresses Bug #21968.
11768                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
11769                 better support intercalating calls.
11770                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
11771                 point and current buffer before each command.
11772                 * src/undo.c (record_point): Now only record the point.
11773                 * src/undo.c (prepare_record): Functionality removed form
11774                 record_point.
11775                 * src/undo.c (record_delete): Check if point needs recording.
11776                 * src/undo.c (undo-boundary): Record value of point before each
11777                 boundary.
11778                 * test/automated/simple-test.el: New tests.
11780         Conflicts:
11781                 src/undo.c
11783 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
11785         Fix compiler warnings in w32.c
11787         * src/w32.c (sys_socket): In case of error, use -1 as return
11788         value, not INVALID_SOCKET, which causes compiler warnings.
11789         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
11790         to the appropriate function signature, to avoid compiler errors.
11791         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
11793 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
11795         Check if the file exists on disk before producing the revert diff
11797         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
11798         exists on disk (bug#20558).
11800 2015-11-26  Alan Mackenzie  <acm@muc.de>
11802         Byte compiler: on setq with an odd number of arguments, generate a `signal'
11804         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
11805         it has an odd number of arguments, to allow bytecomp to handle the error.
11807         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
11808         odd number of arguments, generate a `signal' instead of the normal code.
11810 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
11812         Use find-tag-default for xref-backend-identifier-at-point
11814         * lisp/progmodes/etags.el (find-tag-tag)
11815         (tags-completion-at-point-function): Extract common code as
11816         find-tag--default.
11817         (xref-backend-identifier-at-point): Define in terms of the new
11818         function.
11820 2015-11-26  Paul Eggert  <eggert@cs.ucla.edu>
11822         * src/undo.c (record_property_change): Remove now-unused local.
11824 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
11826         run_undoable_changes now called from insdel.
11828         The original calls from inside undo.c are not always at a safe position
11829         to call lisp, as they originate in varied positions within insdel.c.
11830         Calling them directly from prepare_to_modify_buffer_1 ensures that they
11831         are always run at the same point.
11833          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
11834          and symbol used.
11835          * src/insdel.c (run_undoable_changes): Add function and symbol.
11837 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
11839         Improve and update documentation of search commands
11841         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
11842         all references changed.  Move the description of lax-whitespace
11843         here.  Add description of the new character folding features and
11844         additional customizable options.
11845         (Isearch Yank): Move before "Error in Search".
11846         (Basic Isearch): Improve wording.  Add index entries.  Add short
11847         description of how to abandon search, making this subsection a
11848         complete introduction to search basics.
11849         (Repeat Isearch): Add index entries.  Describe additional
11850         customizable options.  Describe mouse clicks.
11851         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
11852         area.  Describe more customizable options.
11853         (Error in Isearch): Add index entries.
11854         (Special Isearch): Move actual description of some isearch
11855         commands to other sections, leaving here just the summary of the
11856         commands.  Add command that toggles character folding.  Describe
11857         commands, like "C-h C-h", that were previously omitted for some
11858         reason.
11859         (Not Exiting Isearch): Describe search-exit-option.  Add index
11860         entries.
11861         (Word Search): Describe eww-search-word and eww-search-prefix.
11862         (Symbol Search): Add index entries.
11863         (Regexp Search): Describe regexp-search-ring-max.
11864         (Replacement and Lax Matches): Renamed from "Replacement and
11865         Case"; all references changed.  Describe lax-whitespace matching
11866         in replace commands and related options.  Describe character
11867         folding in replace commands and related options.
11868         (Query Replace): Describe query-replace-from-to-separator and the
11869         new history features.  Add index entries for highlighted text.
11870         Describe query-replace-skip-read-only.  Describe more keys
11871         accepted by query-replace.
11872         (Other Repeating Search): More index entries for Occur.  Describe
11873         list-matching-lines-default-context-lines.
11874         (Search Customizations): New section, documents customizable
11875         options that were not documented until now.
11876         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
11877         "Character Folding".
11879         * etc/NEWS: Move search- and replace-related entries to a single
11880         parent section.
11882         * lisp/replace.el (query-replace-show-replacement): Doc fix.
11883         * lisp/isearch.el (search-nonincremental-instead)
11884         (isearch-hide-immediately): Doc fixes.
11886 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
11888         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
11890         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
11891         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
11892         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
11894 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
11896         Fix module_format_fun_env when dynlib_addr fails
11898         * src/emacs-module.c (module_format_fun_env):
11899         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
11900         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
11902 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
11904         Disambiguate variable help a bit better
11906         * lisp/help-fns.el (describe-variable): Quote the
11907         variable’s value if it is a symbol other than t or nil.
11908         See: T.V Raman in:
11909         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
11911 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
11913         Pass SVN commit message through log-edit-extract-headers
11915         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
11916         log-edit-extract-headers (bug#18954).
11918 2015-11-24  Alan Mackenzie  <acm@muc.de>
11920         CC Mode: Eliminate compiler warning messages.
11922         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
11923         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
11924         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
11925         (c-awk-set-syntax-table-properties): Clarify comments about
11926         `font-lock-syntactic-keywords'.
11928         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
11929         of this before the real (interpreted) one, to satisfy the byte compiler.
11931 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
11933         Extend the test suite for json.el
11935         * lisp/json.el (json-plist-p): Clarify docstring.
11937         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
11938         macro.
11939         (test-json-join, test-json-alist-p)
11940         (test-json-plist-p, test-json-advance, test-json-peek)
11941         (test-json-pop, test-json-skip-whitespace)
11942         (test-json-read-keyword, test-json-encode-keyword)
11943         (test-json-read-number, test-json-encode-number)
11944         (test-json-read-escaped-char, test-json-read-string)
11945         (test-json-encode-string, test-json-encode-key)
11946         (test-json-new-object, test-json-add-to-object)
11947         (test-json-read-object, test-json-encode-list)
11948         (test-json-read-array, test-json-encode-array)
11949         (test-json-read, test-json-read-from-string)
11950         (test-json-encode): New tests.
11951         (json-read-simple-alist): Merged into `test-json-read-object'.
11952         (json-encode-string-with-special-chars): Merged into
11953         `test-json-encode-string'.
11954         (json-read-string-with-special-chars): Split into
11955         `test-json-encode-string' and `test-json-read-from-string'.
11957 2015-11-24  Anders Lindgren  <andlind@gmail.com>
11959         Fixed bug#18283: Enable applescript in NextStep.
11961         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
11963 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
11965         Allow completion on dynamic module files in load-library
11967         * lisp/files.el (load-library): Bind completion-ignored-extensions
11968         to nil, to allow completion on dynamic modules typed as file
11969         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
11971 2015-11-24  Alan Mackenzie  <acm@muc.de>
11973         CC Mode: eliminate almost all byte compilation warnings
11975         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
11976         (cc-require): Remove the crude hack that saved and restored
11977         byte-compile-noruntime-functions.
11978         (cc-conditional-require, cc-conditional-require-after-load): New macros.
11980         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
11981         cc-fix.el using the new macros in cc-bytecomp.el.
11983         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
11984         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
11985         forms to remove the superflous quotes.
11987 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
11989         Add one more mod-test test
11991         * modules/mod-test/test.el (mod-test-sum-test): Test the error
11992         signaled when the function is invoked with a wrong number of
11993         arguments.
11995 2015-11-24  Philipp Stephani  <phst@google.com>
11997         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
11999 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12001         Implement dynlib_addr for MS-Windows
12003         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
12004         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
12005         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
12006         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
12007         if undefined.
12008         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
12009         zero.
12010         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
12011         the full file name of the module for a given address.
12013 2015-11-24  Alan Mackenzie  <acm@muc.de>
12015         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
12017 2015-11-24  Alan Mackenzie  <acm@muc.de>
12019         Squashed commit of the following:
12021         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
12022         Author: Alan Mackenzie <acm@muc.de>
12023         Date:   Tue Nov 24 16:50:09 2015 +0000
12025             Byte compile: minor amendments.
12027             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
12028             add a comment to explain the binding of variables around a subsidiary
12029             compilation.
12030             (byte-compile-new-defuns): Amend the doc string.
12032         commit c537bfed1dda1593d218956ff00c6105a3ff0316
12033         Author: Alan Mackenzie <acm@muc.de>
12034         Date:   Sat Nov 21 18:43:57 2015 +0000
12036             Byte compiler: fix spurious warnings "might not be defined at runtime".
12038             Also initialize byte-compile-noruntime-functions between runs.
12040             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
12041             (byte-compile-initial-macro-environment): For eval-when-compile: bind
12042             byte-compile-unresolved-functions and byte-compile-new-defuns around
12043             byte-compile-top-level, to prevent spurious entries being made.
12044             (byte-compile-warn-about-unresolved-functions): Check whether function is
12045             in byte-compile-new-defuns before emitting a warning about it.
12046             (byte-compile-from-buffer): Initialize new variable and
12047             byte-compile-noruntime-functions to nil.
12048             (byte-compile-file-form-require): record all new functions defined by a
12049             `require' in byte-compile-new-defuns.
12050             (byte-compile-file-form-defmumble): record the new alias in
12051             byte-compile-new-defuns.
12053 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
12055         Fix crash at startup related to GC of font entities
12057         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
12058         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
12059         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
12060         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
12061         Don't ifdef away font cache compaction on NT_GUI, as the problems
12062         which led to that seem to have been solved.
12063         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
12064         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
12065         cousins.  (Bug#21999)
12067 2015-11-24  Alan Mackenzie  <acm@muc.de>
12069         Byte compile: Output an error, not a warning, for odd number of args to setq
12071         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
12073 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
12075         Fix kbd_buffer iteration loop in readable_events
12077         * src/keyboard.c (readable_events): Wrap the event pointer back to the
12078         start of the kbd_buffer array inside the top of the loop instead of
12079         right before checking the loop condition, since kbd_fetch_ptr and
12080         kbd_store_ptr point past the end of the array to mean that element 0
12081         is next. (bug#21935)
12083 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12085         Improve text-quoting-style doc again
12087         * doc/lispref/help.texi (Keys in Documentation):
12088         Omit overkill discussion of ‘setq’.  Mention Emacs versions
12089         where ‘grave’ style was standard.
12091 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12093         Improve text-quoting-style doc
12095 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12097         Simplify module_make_function
12099         * src/emacs-module.c (module_make_function):
12100         Simplify by calling build_unibyte_string.
12102 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12104         Port better to FreeBSD’s dlfunc vs dlsym
12106         This avoids warnings when converting between void * and
12107         function pointers, which strict C11 does not allow.
12108         * configure.ac (dlfunc): Check for existence.
12109         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
12110         (dynlib_func): New function.
12111         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
12112         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
12113         dynlib_sym, for function pointers.
12115 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12117         Simplify use of emacs_finalizer_function type
12119         * src/emacs-module.h (emacs_finalizer_function):
12120         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
12121         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
12123 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
12125         module_format_fun_env fixes
12127         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
12128         * src/emacs-module.c (module_format_fun_env):
12129         Convert path and sym to UTF-8.
12130         Don’t use VLAs, as the C11 standard says they’re optional,
12131         and anyway they can cause core dumps with large allocations.
12132         Use exprintf rather than snprintf, as exprintf handles arbitrarily
12133         long strings.  Simplify the code a bit.
12135 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
12137         Don't use package-user-dir in elisp-library-roots if it's not bound
12139         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
12140         use package-user-dir if it's not bound (bug#19759).
12142 2015-11-23  Anders Lindgren  <andlind@gmail.com>
12144         New visible-bell for NextStep (OS X El Capitan compatible).
12146         Instead of inverting a rectangle in the middle of the frame, use
12147         the standard NextStep image "caution", represented using an
12148         warning sign with an exclamation mark.  (Bug#21662)
12150         Implemented based on a suggestion drafted by Mustafa Kocaturk.
12152         * src/nsterm.m (EmacsBell): New class for managing the caution
12153         image.  Support multiple active bells, the image is removed once
12154         all bells have timed out.
12155         (ns_timeout): Removed, no longer used.
12156         (ns_ring_bell): Reimplemented to use EmacsBell.
12158 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
12160         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
12162         (remove-function): Ditto. (Bug#20376)
12164 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
12166         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
12168 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
12170         Improve how non-ASCII strings are accepted from modules
12172         * src/emacs-module.c (module_make_function, module_make_string):
12173         Build a unibyte Lisp string and then decode it by UTF-8, instead
12174         of building a multibyte string without decoding.  This is more
12175         tolerant to deviations from UTF-8.
12177 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
12179         Port recent module changes to pickier compilers
12181         * src/emacs-module.c (module_make_function)
12182         (module_make_string): Add casts to fix pointer signedness issues.
12184 2015-11-23  Philipp Stephani  <phst@google.com>
12186         Fix how strings are accepted from modules
12188         * src/emacs-module.c (module_make_function, module_make_string): Use
12189         make_multibyte_string.
12190         (module_copy_string_contents): Encode before reading the byte
12191         size.  Return false if and only if an error occurred.
12193 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
12195         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
12197 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
12199         Add the tamil-dvorak input method
12201         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
12203         * etc/NEWS: Mention the new input method.
12205 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
12207         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
12209         * src/frame.c (adjust_frame_size): Don't set
12210         FRAME_WINDOW_SIZES_CHANGED here ...
12211         * src/window.c (resize_frame_windows): ... but here, as suggested
12212         by Stefan Monnier.  Also remove some dead code along the way.
12214 2015-11-23  Alan Mackenzie  <acm@muc.de>
12216         * etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
12218 2015-11-23  Alan Mackenzie  <acm@muc.de>
12220         Signal an error when `setf' gets an odd number of arguments.
12222         * lisp/emacs-lisp/gv.el (setf): Amend.
12224 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
12226         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
12228 2015-11-23  Alan Mackenzie  <acm@muc.de>
12230         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
12232 2015-11-23  Alan Mackenzie  <acm@muc.de>
12234         Expunge occurrences of `setq' with an odd number of arguments.
12236         * lisp/apropos.el (apropos-documentation):
12237         * lisp/obsolete/complete.el (PC-include-file-all-completions):
12238         * lisp/progmodes/compile.el (compilation-goto-locus):
12239         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
12240         Insert missing nil at end of `setq' forms.
12242         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
12243         erroneous trailing variable name from a setq, thus allowing a compilation
12244         properly to track functions not defined at runtime.
12246 2015-11-23  John Wiegley  <johnw@newartisans.com>
12248         Add a note about a questionable use of bool in xdisp.c
12250 2015-11-23  Alan Mackenzie  <acm@muc.de>
12252         Issue a warning from the byte compiler on a malformed `setq' form.
12254         Partly fixes bug#20241.
12255         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
12256         `setq' form with an odd number of arguments is compiled.
12258 2015-11-23  Alan Mackenzie  <acm@muc.de>
12260         Don't let cconv_convert insert a nil argument into a `setq' form.
12262         Fixes bug#21983.
12263         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
12264         argument into a `setq' when there're an odd number of args.  This enables the
12265         byte compiler to issue a message in this case.
12267 2015-11-23  Alan Mackenzie  <acm@muc.de>
12269         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
12271         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
12272         (syms_of_eval): Add a DEFSYM for Qsetq.
12274 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
12276         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
12278         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
12280 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12282         Add EUDC BBDB 3 entry in NEWS
12284         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
12286 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12288         Improve EUDC to BBDB 3 export
12290         * lisp/net/eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
12291         entry to single item.  Add company conversion.
12292         * lisp/net/eudc-export.el (eudc-bbdbify-company): New function.
12293         (bbdb-parse-phone): Declare function.
12294         (eudc-bbdbify-phone): Add BBDB 3 support.
12295         (Bug#21971)
12297 2015-11-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
12299         Add BBDB 3 support for EUDC export
12301         * lisp/net/eudc.el: Add bbdb-version defvar.
12302         (eudc--using-bbdb-3-or-newer-p): New function.
12303         * lisp/net/eudc-export.el (eudc-create-bbdb-record): Add support for
12304         bbdb-create-internal argument list changes introduced in BBDB 3.
12305         * lisp/net/eudcb-bbdb.el: Remove bbdb-version defvar.
12306         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
12307         (Bug#21971)
12309 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
12311         Allow loading modules by 'load-file'
12313         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
12314         2nd arg, to avoid the "binding stack not balanced" error.
12315         (syms_of_lread) <module-file-suffix>: New Lisp variable.
12317         * lisp/files.el (module-file-suffix): Declare.
12318         (load-file): Remove 'module-file-suffix' from
12319         'completion-ignored-extensions', to allow completion on modules.
12321         * etc/NEWS: Mention 'module-file-suffix'.
12323 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
12325         Fix unoptimized builds
12327         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
12328         builds.
12330 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
12332         Work around the asynchronous-empty-diff problem
12334         * lisp/vc/vc-rcs.el (vc-rcs-diff):
12335         * lisp/vc/vc-mtn.el (vc-mtn-diff):
12336         * lisp/vc/vc-hg.el (vc-hg-diff):
12337         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
12338         do a synchronous process call (bug#21969).
12340 2015-11-22  Karl Fogel  <kfogel@red-bean.com>
12342         Finish excising electric indent from `open-line'
12344         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
12346         * test/automated/simple-test.el (open-line-indent, open-line-hook):
12347           Adjust accordingly.
12349         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
12350         (git commit c59353896) started.  It turns out that having INTERACTIVE
12351         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
12352         still had the electric indent behavior, as `post-self-insert-hook'
12353         normally contains `electric-indent-post-self-insert-function' ever
12354         since `electric-indent-mode' has been on by default.  Tracing the code
12355         change in `open-line' is mildly twisty, because Artur Malabarba's
12356         earliest two commits of 24 Oct 2015 first removed the `interactive'
12357         form entirely (git commit 6939896e2) and then restored it with the new
12358         extra "p" already added (git commit bd4f04f86), such that there is no
12359         single-commit diff in which one sees the second "p" appear.  Thus this
12360         change is effectively a reversion of parts of each of those commits.
12362         This could close bug#21884, at least until further discussion.
12364 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
12366         Adhere closer to the "implicit tag name" definition
12368         * lisp/progmodes/etags.el (etags-tags-completion-table):
12369         Adhere closer to the "implicit tag name" definition.  Simplify
12370         the regexp.  Search for the explicit tag name first, and when
12371         not found, search locally for the implicit one.  (Bug#21934)
12373 2015-11-22  Stefan Monnier  <monnier@iro.umontreal.ca>
12375         Unrevert most of regexp reentrancy abort patch
12377         The problem was in:
12378           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
12379         which is hence not unreverted.
12380         The rest is:
12381         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
12382         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
12383         All callers in regex.c changed back to the _FAST versions.
12385         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
12386         propertization in backward-sexp.
12388 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
12390         Revert regexp reentrancy abort patch
12392         Although the patch does fix Bug#21688 and prevents a core dump,
12393         it also makes the message-mode-propertize test fail; see:
12394         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
12395         Perhaps someone else can come up with a better fix some day.
12396         * src/syntax.c (update_syntax_table_forward):
12397         Propertize even when truncated.
12398         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
12399         (UPDATE_SYNTAX_TABLE_FAST): Remove.
12400         All callers changed back to the non-_FAST versions.
12402 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
12404         Add a few safety checks when ENABLE_CHECKING
12406         This was motivated by the recent addition of module code,
12407         which added some ENABLE_CHECKING-enabled checks that are
12408         useful elsewhere too.
12409         * src/alloc.c (compact_font_cache_entry):
12410         * src/fns.c (sweep_weak_table):
12411         * src/lread.c (oblookup):
12412         Use gc_asize rather than doing it by hand.
12413         * src/emacs-module.c (module_make_global_ref)
12414         (module_free_global_ref, module_vec_size):
12415         Omit assertions that lisp.h now checks.
12416         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
12417         check that the result is nonnegative.  Use eassume, as this
12418         info can help a bit when optimizing production code.
12419         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
12420         to be consistent with the USE_LSB_TAG case.
12421         (gc_asize): New function, when ASIZE is needed in the gc.
12422         (gc_aset): Use it.
12423         (HASH_TABLE_P): Move definition up, so that it can be used ...
12424         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
12426 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
12428         Simplify recording of main thread's ID on MS-Windows
12430         * src/w32term.c (w32_initialize):
12431         * src/w32console.c (initialize_w32_display):
12432         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
12433         ID independently for each type of session (GUI, TTY, batch).
12434         * src/w32term.c (w32_init_main_thread): New function, records the
12435         main thread's thread ID.
12436         * src/w32term.h: Add prototype for w32_init_main_thread.
12437         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
12439         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
12440         main_thread, for consistency with other threading libraries.  All
12441         users changed.  Include w32term.h.
12442         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
12443         make sure the main thread is alive, as we hold a handle on it
12444         opened by w32_init_main_thread.
12445         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
12446         w32_init_main_thread, instead of calling the requisite APIs once
12447         more.
12449 2015-11-21  Mark Oteiza  <mvoteiza@udel.edu>
12451         Backport: Fix issue where a new tempfile was created every refresh
12453         * lisp/mpc.el (mpc-format): Leave dir as relative path
12455 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
12457         Call 'window-size-change-functions' for mini-windows
12459         * src/window.c (grow_mini_window, shrink_mini_window): Set the
12460         frame's 'window_sizes_changed' flag.
12461         * src/xdisp.c (redisplay_internal): Call the hooks on
12462         'window-size-change-functions' if the call to 'echo_area_display'
12463         sets the frame's 'window_sizes_changed' flag.
12464         (syms_of_xdisp) <window-size-change-functions>:
12465         Update doc string to indicate the mini-window resizes trigger a
12466         call to the hooks, and don't promise that will happen "before
12467         redisplay".  (Bug#19576, Bug#21333)
12469         * doc/lispref/windows.texi (Window Hooks): Update the description
12470         of 'window-size-change-functions'.
12472 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
12474         Improve documentation of dynamic modules
12476         * src/fns.c (Frequire): Doc fix to include the dynamic module
12477         support.
12478         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
12479         dynamic module support.
12480         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
12481         wrt the MUST-SUFFIX argument.
12483         * etc/NEWS: Expand documentation of dynamically loaded modules.
12485 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
12487         Initial documentation for dynamic modules
12489         * etc/NEWS: Mention the new support for dynamically loaded modules.
12491 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
12493         Add xref--etags-backend to xref-backing-functions using add-hook
12495         * lisp/progmodes/xref.el (xref-backend-functions): Move the
12496         default value into a separate `add-hook' call (bug#21964).
12498         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
12499         Don't declare the xref-backend-functions variable.
12500         It doesn't make any difference.
12502 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12504         Fix double-decrement bug when freeing global refs
12506         * src/emacs-module.c (module_free_global_ref): Add a FIXME
12507         comment about error reporting.  Fix a recently-introduced typo
12508         that double-decremented the refcount.
12510 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12512         Declare emacs_module_init in the module API
12514         * src/emacs-module.h (emacs_module_init): New decl.
12515         Without it, GCC might complain about a module that defines
12516         emacs_module_init without using it.  This also checks the
12517         API better.
12519 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12521         Fix module test to use ptrdiff_t nargs too
12523         * modules/mod-test/mod-test.c (Fmod_test_return_t)
12524         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
12525         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
12526         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
12527         (Fmod_test_userptr_get, Fmod_test_vector_fill)
12528         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
12529         (finalizer): Remove; no longer used.
12531 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12533         Fix reindent-introduced typo in module code
12535         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
12536         introduced while reindenting the code earlier, and add a
12537         comment explaining the unusual use of do-while here.
12539 2015-11-20  Anders Lindgren  <andlind@gmail.com>
12541         Fixed bug#19576: `write-file' saves wrong buffer.
12543         If a function on the hook `window-size-change-functions' doesn't
12544         restore the current buffer, functions that save and restore the
12545         current window configuration (like `y-or-no-p') could silently
12546         change the current buffer.  When `write-file' asked the user
12547         confirmation to overwrite a file, `y-or-no-p' changed the current
12548         buffer, and the wrong buffer was saved to the file.
12550         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
12551         using the `norecord' parameter.
12552         (follow-window-size-change): Restore current buffer. Call
12553         `select-frame' using the `norecord' parameter. Cleanup.
12555 2015-11-20  John Wiegley  <johnw@newartisans.com>
12557         Correct a documentation error in frames.texi
12559 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
12561         * lisp/cedet/mode-local.el: Delete obsolete comment
12563 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12565         Module function arg counts are ptrdiff_t, not int
12567         * src/emacs-module.c (struct module_fun_env)
12568         (module_make_function, module_funcall, Fmodule_call):
12569         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
12570         Use ptrdiff_t, not int, for arg counts.
12571         * src/emacs-module.c (module_make_function): Don’t bother
12572         checking arity against MOST_POSITIVE_FIXNUM, as that’s
12573         unnecessary here.  Make the checking clearer by negating it.
12574         (module_make_function, Fmodule_call): No need to use xzalloc
12575         since the storage doesn’t need to be cleared.
12576         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
12577         for it, and many implementations are buggy with large VLAs anyway.
12578         Use SAFE_ALLOCA_LISP instead.
12579         (module_vec_set): Don’t crash if i < 0.
12580         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
12581         (module_vec_set, module_vec_get): Do fixnum checks only when
12582         i is out of array bounds, for efficiency in the usual case.
12583         (Fmodule_load): Simplify fixnum range check.
12584         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
12585         integer overflow in array allocation size.
12587 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
12589         Minor improvements in module test
12591         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
12592         about missing prototype of malloc.
12593         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
12594         compiler warnings.
12596 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
12598         Improve MS-Windows implementation in dynlib.c
12600         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
12601         No need to include windows.h, as w32.h already does that.
12602         <dynlib_last_err>: New static variable.
12603         (dynlib_reset_last_error): New function.
12604         (dynlib_open): Convert forward slashes to backslashes.  Convert
12605         file names from UTF-8 to either UTF-16 or the current ANSI
12606         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
12607         argument is NULL, return a handle to the main module, like
12608         'dlopen' does.  Record the error, if any, for use by dynlib_error.
12609         (dynlib_sym): Check the handle for validity. Record the error, if
12610         any, for use by dynlib_error.
12611         (dynlib_error): Call w32_strerror to produce the error string, and
12612         zero out the last error code, like dlerror does.
12613         (dynlib_close): Check the handle for validity.  Record the error,
12614         if any, for use by dynlib_error.  Don't call FreeLibrary with a
12615         handle for the main module.
12616         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
12618 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12620         Include-file tweaks for modules
12622         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
12623         * src/dynlib.h: Do not include config.h.
12624         It’s every .c file’s responsibility to include config.h first.
12625         * src/emacs-module.c: Include emacs-module.h immediately after
12626         config.h, to test that emacs-module.h doesn’t depend on
12627         include files other than config.h.
12629 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12631         Simplify push_handler and profile its malloc
12633         * src/lisp.h (PUSH_HANDLER): Remove.
12634         All callers changed to use push_handler directly.
12635         * src/eval.c (internal_condition_case)
12636         (internal_condition_case_1, internal_condition_case_2)
12637         (internal_condition_case_n):
12638         Use same pattern as for other invokers of push_handler.
12639         (push_handler, push_handler_nosignal): Use call-by-value
12640         instead of call-by-reference.  All uses changed.
12641         (push_handler): Simplify by rewriting in terms of
12642         push_handler_nosignal.
12643         (push_handler_nosignal): Profile any newly allocated memory.
12645 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12647         * src/emacs-module.h: Include stddef.h, not stdlib.h.
12649 2015-11-20  Juanma Barranquero  <lekktu@gmail.com>
12651         Discover repository version in linked worktrees (bug#21930)
12653         * lisp/version.el (emacs-repository--version-git-1): Do not assume
12654         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
12655         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
12656         is nil too.
12658 2015-11-20  Juri Linkov  <juri@linkov.net>
12660         * lisp/replace.el (occur-regexp-descr): New function.
12661         (occur-1, occur-engine): Use it.
12663         * lisp/isearch.el (isearch-occur): Propertize regexp with
12664         isearch-string and isearch-regexp-function-descr for
12665         occur-regexp-descr to display the correct description
12666         message in the header (bug#21176, bug#21180).
12668 2015-11-20  Karl Fogel  <kfogel@red-bean.com>
12670         Revert `open-line' electric-indent sensitivity
12672         * lisp/simple.el (open-line): Remove electric indent code.
12673           (electric-indent-just-newline): Don't declare.
12675         * test/automated/simple-test.el (open-line-indent): Adjust test.
12677         This partly reverts Artur Malabarba's change that added electric
12678         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
12679         commit bd4f04f86), and adjusts a new test he added right afterwards
12680         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
12681         However, the new INTERACTIVE argument to `open-line', which he also
12682         added in the first commit, is not reverted here.
12684         See the thread "Questioning the new behavior of `open-line'." on the
12685         Emacs Devel mailing list, and in particular this message:
12687           From: Artur Malabarba
12688           Subject: Re: Questioning the new behavior of `open-line'.
12689           To: Karl Fogel
12690           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
12691           Date: Wed, 18 Nov 2015 21:03:58 +0000
12692           Message-ID: \
12693             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
12695           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
12697 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12699         Omit unnecessary clear in Fmodule_load
12701         * src/emacs-module.c (Fmodule_load):
12702         Simplify and avoid unnecessary initialization of priv member to 0.
12704         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
12706 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
12708         Prefer signed integer types in module code
12710         Generally speaking, at the C level the Emacs source code prefers
12711         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
12712         partly to avoid the usual signedness confusion when comparing values.
12713         Change the module API to follow this convention.
12714         Use ‘int’ for small values that can’t exceed INT_MAX.
12715         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
12716         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
12717         (Fmod_test_vector_eq):
12718         * src/emacs-module.c (struct emacs_value_frame)
12719         (module_make_global_ref, module_free_global_ref)
12720         (module_copy_string_contents, module_make_string)
12721         (module_vec_set, module_vec_get, module_vec_size):
12722         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
12723         * src/lread.c (suffix_p):
12724         Prefer signed to unsigned integer types.
12726 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
12728         Omit ‘const’ on locals
12730         Remove ‘const’ qualifier from locals that were newly added.
12731         We don’t normally bother declaring locals with ‘const’ even
12732         though they are not modified, for the same reason we don’t
12733         bother declaring them with ‘register’ even though their
12734         addresses are not taken; the advantage in compile-time
12735         checking isn’t worth the loss of readability.
12736         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
12737         (Fmod_test_vector_fill, Fmod_test_vector_eq):
12738         * src/emacs-module.c (MODULE_SETJMP_1)
12739         (module_make_global_ref, module_free_global_ref)
12740         (module_non_local_exit_get, module_make_function)
12741         (module_extract_integer, module_extract_float)
12742         (module_get_user_ptr, module_set_user_ptr)
12743         (module_get_user_finalizer, module_set_user_finalizer)
12744         (module_vec_get, Fmodule_call)
12745         (module_non_local_exit_signal_1)
12746         (module_non_local_exit_throw_1, lisp_to_value)
12747         (finalize_storage, allocate_emacs_value, mark_modules)
12748         (module_handle_signal, module_handle_throw)
12749         (module_format_fun_env):
12750         * src/eval.c (push_handler, push_handler_nosignal)
12751         (init_handler):
12752         * src/lread.c (suffix_p):
12753         Omit unnecessary ‘const’.
12755 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
12757         Prefer intmax_t to int64_t in module code
12759         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
12760         * src/emacs-module.c (module_extract_integer)
12761         (module_make_integer):
12762         * src/emacs-module.h (struct emacs_env_25):
12763         Prefer intmax_t to int64_t.  This doesn’t change the generated
12764         code on any of the machines Emacs currently ports to, but it’s
12765         at least in theory more future-proof as C99 doesn’t guarantee
12766         that int64_t exists.
12768 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
12770         Rename module.c to emacs-module.c, etc.
12772         * src/emacs-module.c: Rename from src/module.c.
12773         * src/emacs-module.h: Rename from src/module.h.
12774         All uses changed.
12776 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
12778         Fix minor module problems found by static checking
12780         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
12781         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
12782         * src/emacs-module.c (Fmodule_load): Fix pointer signedness bug.
12783         (Fmodule_call): Tell GCC that the default case is unreachable.
12785 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
12787         Style fixes for indenting etc. in module code
12789         This is mostly indenting and spacing changes.  Also, remove
12790         some unnecessary static decls instead of bothering to reindent them.
12791         * src/emacs-module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
12792         as most other Emacs files do for this sort of thing.
12794 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
12796         Minor improvements in modules testing Makefile
12798         * modules/mod-test/Makefile (EMACS, SO): New variables.
12799         (CFLAGS): When SO = dll, don't use -fPIC.
12800         (check): New target, runs the test.
12802 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
12804         * .gitignore: Add "*.dll".
12806 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
12808         Migrate modules/.gitignore into .gitignore
12810         * .gitignore: Add former contents of modules/.gitignore.
12811         * modules/.gitignore: Remove.
12813 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
12815         Add copyright notices to module code
12817         Put them in the usual format for GNU Emacs copyright notices.
12819 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
12821         Rename emacs_module.h to module.h
12823         * src/module.h: Rename from src/emacs_module.h.
12824         All uses changed.
12826 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
12828         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
12830         * src/lread.c (Fload): Remove unused variable `size'
12832 2015-11-19  Alan Mackenzie  <acm@muc.de>
12834         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
12836 2015-11-19  Dmitry Gutov  <dgutov@yandex.ru>
12838         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
12840         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
12841         vc-parent-buffer over log-view-mode fallback (bug#21955).
12843 2015-11-18  Alan Mackenzie  <acm@muc.de>
12845         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
12847 2015-11-18  Ken Brown  <kbrown@cornell.edu>
12849         * configure.ac (LIBMODULES): Don’t define on Cygwin
12851 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
12853         Fix MS-Windows build --with-modules
12855         * src/module.c: Reformat copyright commentary.
12856         (module_vec_get): Use explicit cast to size_t to avoid compiler
12857         warning in 32-bit builds.
12858         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
12859         Compare thread IDs directly, as GetThreadId is not available
12860         before Windows Vista.
12861         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
12862         without using APIs and constants not available on XP and older
12863         systems.  Obtain and store the thread ID as well.
12865 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
12866             Philipp Stephani  <phst@google.com>
12868         Add dynamic module test and helper script
12870         Add 'modhelp.py' script (python2) to automate module testing and
12871         module generation.
12873         To build and test all modules in the modules/ dir
12874           $ ./modhelp.py test
12876         To generate a module from template code (good starting point)
12877           $ ./modhelp init mynewtestmodule
12879         See the script -h option for more documentation.
12881         * modules/modhelp.py: New module helper script.
12882         * modules/mod-test/Makefile: New file. Makefile for the test module.
12883         * modules/mod-test/mod-test.c: New file. Test module source file.
12884         * modules/mod-test/test.el: New file. ert test suite for the test module.
12885         * modules/.gitignore: New file. Local .gitignore file.
12887 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
12889         Make 'Fload' look for modules
12891         'Fload' can now load dynamic modules. This also makes 'require' work.
12893         * src/lread.c:
12894           (suffix_p): New function.
12895           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
12896           with a module suffix.
12897           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
12899 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
12900             Philipp Stephani  <phst@google.com>
12902         Add dynamic module module support
12904         * configure.ac: Add '--with-modules' option.  Conditionally add
12905           dynlib.o and module.o to the list of objects.  Add any system
12906           specific flags to the linker flags to support dynamic libraries.
12907         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
12908           attributes.
12909         * src/Makefile.in: Conditionally add module objects and linker flags.
12910         * src/alloc.c (garbage_collect_1): protect module local values from
12911           GC.
12912         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
12913         * src/emacs-module.h: New header file included by modules.  Public
12914           module API.
12915         * src/emacs-module.c: New module implementation file.
12917 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
12919         Add new User Pointer (User_Ptr) type
12921         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
12922         (XUSER_PTR): New User_Ptr accessor.
12923         * src/alloc.c (make_user_ptr): New function.
12924         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
12925         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
12926         (Fuser-ptrp): New user pointer type predicate function.
12927         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
12928         subr.
12929         * src/print.c (print_object): Add printer for User_Ptr type.
12931 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
12932             Philipp Stephani  <phst@google.com>
12934         Add portable layer for dynamic loading
12936         * src/dynlib.h: New file.
12937         * src/dynlib.c: New file.
12939 2015-11-18  Philipp Stephani  <phst@google.com>
12941         Add catch-all & no-signal version of PUSH_HANDLER
12943         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
12944         a new "catch-all" handler type.
12946         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
12947           functions.
12948         * src/fns.c (hash_remove_from_table): Expose function public.
12949         * src/lisp.h: New handler type, define macro to push_handler call.
12951 2015-11-18  Ken Brown  <kbrown@cornell.edu>
12953         Silence byte-compiler warning
12955         * lisp/server.el (server-process-filter): Silence byte-compiler
12956         warning.
12958 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
12960         Quote symbols in docstrings using `'
12962         Be more systematic about quoting symbols `like-this' rather than
12963         `like-this or 'like-this' in docstrings.  This follows up Artur
12964         Malabarba's email in:
12965         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
12967 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
12969         Fix savegames in dunnet
12971         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
12972           of separate implementation.
12974 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
12976         * lisp/emacs-lisp/package.el (package--with-response-buffer):
12978         Ensure we're at the start of the buffer before searching for
12979         the end of headers.
12981 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
12983         * admin/release-process: Improve wording.
12985 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
12987         Backport: * CONTRIBUTE: Remove information about feature freeze.
12989         (cherry picked from commit ae0653b5ab9ee223751ec389b87011963e1cbbef)
12991 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
12993         Backport: Document the release process
12995         * admin/notes/versioning: Add information about RC releases.
12996         * admin/release-process: Document the release process.
12997         * admin/authors.el (authors-ignored-files):
12998         * admin/README: Change FOR-RELEASE to release-process.
12999         * CONTRIBUTE:
13000         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
13002         (cherry picked from commit 9a4aa0f5945a03611ae29c516025dbd353bd26ab)
13004 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13006         Backport: * admin/release-process: Rename from admin/FOR-RELEASE.
13008         (cherry picked from commit f8cc14b59700e51a4e31139c0a65c8154995e055)
13010 2015-11-18  Xue Fuqiao  <xfq.free@gmail.com>
13012         Backport: Mention CONTRIBUTE in README
13014         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
13015         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
13016         * README: Mention CONTRIBUTE.
13018         (cherry picked from commit ed2e7e20ae0945288c98091f308f5460c3453873)
13020 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
13022         Fix docstring quoting problems with ‘ '’
13024         Problem reported by Artur Malabarba in:
13025         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
13026         Most of these fixes are to documentation; many involve fixing
13027         longstanding quoting glitches that are independent of the
13028         recent substitute-command-keys changes.  The changes to code are:
13029         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
13030         (describe-mode-local-overload):
13031         Substitute docstrings before displaying them.
13032         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
13033         Quote the generated docstring for later substitution.
13035 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
13037         Improve configure --help text for wide ints
13039         * configure.ac (wide-int): Clarify user-level advantages and
13040         disadvantages.
13042 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
13044         Improve doc string
13046         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
13048 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
13050         eval_sub followed dangling pointer when debugging
13052         Problem reported by Pip Cet (Bug#21245).
13053         This bug could occur in eval_sub if the C compiler reused
13054         storage associated with the ‘argvals’ local after ‘argvals’
13055         went out of scope, and if the Elisp debugger stopped on Elisp
13056         function exit and accessed ‘argvals’.  It could also occur if
13057         a variadic function was called with so many arguments (over
13058         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
13059         SAFE_FREE freed the arguments, then the memory manager used
13060         the storage for other purposes, then the debugger accessed the
13061         arguments.
13062         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
13063         function body.  Simplify local decls.
13064         When allocating args via SAFE_ALLOCA, call
13065         debugger before invoking SAFE_FREE, as the debugger needs
13066         access to the args.
13067         (eval_sub, apply_lambda): Rework to avoid need for
13068         set_backtrace_debug_on_exit hack.  This is cleaner,
13069         and should work better with buggy custom debuggers.
13071 2015-11-17  Daiki Ueno  <ueno@gnu.org>
13073         * lisp/image-mode.el: Support encrypted file
13075         (image-toggle-display-image): Read content from the buffer instead
13076         of the file, if the buffer holds a decrypted data.  (Bug#21870)
13078 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
13080         ELF unexec: align section header
13082         This ports the recent unexelf.c changes to Fedora x86-64
13083         when configured with GCC’s -fsanitize=undefined option.
13084         * src/unexelf.c (unexec): Align new_data2_size to a multiple
13085         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
13086         pointer aligned appropriately for its type.
13088 2015-11-17  Andreas Schwab  <schwab@linux-m68k.org>
13090         Do more checks on bytecode objects (Bug#21929)
13092         * src/eval.c (funcall_lambda): Check size of compiled function
13093         object.
13094         (Ffetch_bytecode): Likewise.
13096 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
13098         pcase.el: Fix edebugging of backquoted cons patterns
13100         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
13101         cons patterns. (Bug#21920)
13103 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
13105         Improve fix for regex reentrancy abort
13107         Suggested by Stefan Monnier (Bug#21688).
13108         * src/syntax.c (update_syntax_table_forward):
13109         Remove recently-added PROPERTIZE arg, and assume it is true.
13110         All callers changed.
13111         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
13112         Invoke update_syntax_table directly.
13114 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
13116         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
13118         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
13120         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
13122 2015-11-16  Vasily Korytov  <vasily.korytov@yahoo.com>
13124         Recognize .rbw and .pyw files (bug#18753)
13126         * lisp/progmodes/python.el (auto-mode-alist):
13127         Recognize .pyw files.
13129         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
13130         Recognize .rbw files.
13132 2015-11-16  Dmitry Gutov  <dgutov@yandex.ru>
13134         Fix ruby-mode auto-mode-alist entry
13136         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
13137         around the extensions (bug#21257).
13139 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
13141         Fix etags completion near eob
13143         * lisp/progmodes/etags.el (tags-completion-at-point-function):
13144         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
13146 2015-11-15  Alan Mackenzie  <acm@muc.de>
13148         De-pessimize detection of C++ member initialization lists.
13150         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
13151         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
13152         is only called when a construct "looks right" rather than continually.
13153         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
13155 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
13157         Backport: * lisp/emacs-lisp/package.el: Fix a decoding issue.
13159         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
13160         `url-insert-buffer-contents'.
13161         (url-insert-buffer-contents): New function
13163         (package--with-response-buffer): Use `url-insert-buffer-contents'.
13164         The previous code had some issues with decoding. Refactoring that
13165         function allows us to use the decoding from url-handlers while still
13166         treating both sync and async requests the same.
13168 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
13170         Improve a few doc strings, comments
13172         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
13173         * lisp/cedet/ede/locate.el (ede-locate-base):
13174         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
13175         * src/fns.c (Fdelq): Improve doc string.
13177         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
13179 2015-11-15  Anders Lindgren  <andlind@gmail.com>
13181         Enhance NSTRACE (trace output for NextStep).
13183         Trace can be disabled for groups of functions. By default, event
13184         functions and functions that generate lots of output are disabled.
13186         Trace output of Objective-C functions now use the "[ClassName
13187         parameter:]" form.
13189         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
13190         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
13191         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
13192         controlling in which function groups trace should be active.
13193         (NSTRACE_WHEN): Support for silencing a function, this also
13194         silencing all called functions.
13195         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
13196         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
13197         print the full screen state in NSTRACE functions.
13199         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
13200         can be accessed from multiple threads.
13201         (nstrace_enabled_global): New variable, when FALSE, trace is
13202         silenced.
13203         (nstrace_restore_global_trace_state): New function, used to
13204         restore `nstrace_enabled_global' at end of block.
13205         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
13206         ([EmacsWindow setFrame:display:animation:])
13207         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
13208         and call corresponding super function.
13209         (Many functions): Add or enhance trace output.
13211         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
13213         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
13215         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
13216         and call corresponding super function.
13218 2015-11-15  Anders Lindgren  <andlind@gmail.com>
13220         Fixed a toolbar related issue on OS X.
13222         Earlier, when toggling the tool-bar in a maximized frame, the
13223         frame size didn't match the number of text lines, leaving an
13224         unused area at the bottom of the frame.
13226         * src/nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
13227         fullscreen modes when tool bar is disabled.
13229 2015-11-15  Anders Lindgren  <andlind@gmail.com>
13231         Fixed OS X 10.6.8 build issue (bug#21862).
13233         * src/nsterm.h (EmacsView): Add missing declarations.
13234         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
13235         the standard method but without the notification parameter.
13236         Intended to be used for direct calls.
13237         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
13238         version of `windowDidBecomeKey'. Made the notification method call
13239         the non-notification method instead of the vice versa.
13240         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
13241         needed.
13243 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
13245         * lisp/faces.el (faces--attribute-at-point): Fix an issue
13247         Previous code would signal an error when the face at point was
13248         a manually built list of attributes such as '(:foregroud "white").
13250         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
13252 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
13254         Fix regex abort when it tries to reenter itself
13256         Problem reported by Ken Raeburn.
13257         Solution suggested by Stefan Monnier (Bug#21688).
13258         * src/regex.c (re_match_2_internal):
13259         Use new _FAST functions to avoid regex code reentering itself.
13260         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
13261         All callers changed.
13262         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
13263         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
13265 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
13267         Improve Ruby 1.9-style keyword keys highlighting
13269         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
13270         Handle required keyword arguments (bug#21367).
13271         And highlight the colon together with the name.
13273 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
13275         Unify the absolutely equal xref-backend-references implementations
13277         * lisp/progmodes/elisp-mode.el (xref-backend-references):
13278         Remove.
13280         * lisp/progmodes/etags.el (xref-backend-references):
13281         Remove.
13283         * lisp/progmodes/xref.el (xref-backend-references):
13284         Define the default implementation.
13286 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
13288         Update project-find-regexp for the new xref API
13290         * lisp/progmodes/project.el (project--read-regexp):
13291         Update to use the new xref API methods.
13293         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
13295 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
13297         Fix replacing a match with a shorter string
13299         In effect, partially reverting fe973fc.
13301         * lisp/progmodes/xref.el (xref-query-replace): Store the end
13302         of each match as a marker again, instead of length.
13303         (xref--query-replace-1): Update accordingly.
13305 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
13307         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
13309         Signal user-errors instead.
13311 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13313         Document 'describe-symbol'
13315         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
13316         (Name Help): Document "C-h o" and describe-symbol.
13318         * lisp/help-fns.el (describe-symbol): Doc fix.
13320 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
13322         Change test name to avoid spellcheck issue.
13324 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13326         Avoid signaling an error in 'describe-symbol'
13328         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
13329         exists as a function/variable/face/etc., but is undocumented.
13331         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
13332         test.
13334 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13336         * INSTALL (--with-cairo): Document this new configure option.
13338 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13340         Document that GNU Make >= 3.81 is required to build Emacs
13342         * doc/lispref/internals.texi (Building Emacs): Document that GNU
13343         Make 3.81 or later is now required.
13345 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
13347         Backport: * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async.
13349         (package--with-work-buffer-async): Reimplement as
13350         `package--with-response-buffer'.
13351         (package--with-work-buffer): Mark obsolete.
13352         (package--with-response-buffer): New macro. This is a more self
13353         contained and less contrived version of
13354         `package--with-work-buffer-async'.  It uses keyword arguments,
13355         doesn't have async on the name, doesn't fallback on
13356         `package--with-work-buffer', and has _much_ simpler error
13357         handling.  On master, this macro will soon be part of another
13358         library (either standalone or inside url.el), which is why this
13359         commit is not to be merged back.
13361         (package--check-signature, package--download-one-archive)
13362         (package-install-from-archive, describe-package-1): Use it.
13364         (package--download-and-read-archives): Let
13365         `package--download-one-archive' take care of calling
13366         `package--update-downloads-in-progress'.
13368 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
13370         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
13372 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
13374         Merge branch 'master' into emacs-25
13376 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
13378         Use generic dispatch for xref backends
13380         * lisp/progmodes/xref.el (xref-backend-functions):
13381         New variable.
13382         (xref-find-function): Remove.
13383         (xref-find-backend)
13384         (xref--etags-backend): New functions.
13385         (xref-identifier-at-point-function)
13386         (xref-identifier-completion-table-function): Remove.
13387         (xref-backend-definitions, xref-backend-references)
13388         (xref-backend-apropos, xref-backend-identifier-at-point)
13389         (xref-backend-identifier-completion-table):
13390         New generic functions.
13392         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
13393         Add `elisp--xref-backend' to the beginning of
13394         `xref-backend-functions', locally.  Delete references to
13395         removed functions and vars.
13396         (elisp-xref-find): Remove.
13397         (elisp--xref-backend): New function.
13398         (elisp--xref-find-references, elisp--xref-find-apropos)
13399         (elisp--xref-identifier-completion-table):
13400         Turn into appropriately named generic methods.
13402         * lisp/progmodes/etags.el (etags-xref-find): Remove.
13403         (xref-backend-identifier-completion-table)
13404         (xref-backend-references, xref-backend-definitions)
13405         (xref-backend-apropos): New generic methods.
13407 2015-11-14  Juri Linkov  <juri@linkov.net>
13409         Support rectangular regions for more commands
13411         * lisp/simple.el (region-extract-function): Handle the arg
13412         value ‘bounds’.
13413         (region-insert-function): New function.
13414         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
13415         If non-nil, operate on multiple chunks.
13416         (region-noncontiguous-p): New function.
13418         * lisp/rect.el: Add function rectangle--insert-region
13419         around region-insert-function.
13420         (extract-rectangle-bounds): New function.
13421         (rectangle--extract-region): Handle the arg value ‘bounds’.
13422         (rectangle--insert-region): New function.
13424         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
13425         around region-insert-function.
13426         (cua--extract-rectangle-bounds): New function.
13427         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
13429         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
13430         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
13431         (query-replace-regexp-eval, map-query-replace-regexp)
13432         (replace-string, replace-regexp): Use ‘use-region-p’.
13433         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
13434         (perform-replace): Add arg ‘region-noncontiguous-p’.
13435         If non-nil, operate on multiple chunks.
13437         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
13438         If non-nil, operate on multiple chunks.  (Bug#19829)
13440 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
13442         Handle multiple matches on the same line; add highlighting
13444         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
13445         column value in characters.
13446         (xref--collect-matches): Rename from `xref--collect-match'.
13447         Search for all matches in the hit line.  Add `highlight' face to
13448         the matched region in the summary.  Update both callers.
13450 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
13452         Replace xref-match-bounds with xref-match-length
13454         Relying on xref-location-marker to point to the beginning of the match
13456         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
13457         (xref-match-length): Add.
13458         (xref-make-match): Change the arguments.
13459         (xref--match-buffer-bounds): Remove.
13460         (xref-match-item): Store length, instead of end-column.
13461         (xref-pulse-momentarily)
13462         (xref--collect-match)
13463         (xref--query-replace-1): Update accordingly.
13464         (xref-query-replace): Ditto.  And check that the search results
13465         are up-to-date.
13467 2015-11-13  John Wiegley  <johnw@newartisans.com>
13469         Merge remote-tracking branch 'origin/master' into emacs-25
13471 2015-11-13  l3thal  <kwhite@gnu.org>
13473         Merge branch 'erc-async-reconnect' into emacs-25
13475         Reconnect asynchronously.
13477 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
13479         Merge from gnulib
13481         This incorporates:
13482         2015-11-13 xalloc-oversized: improve performance with GCC 5
13483         * lib/xalloc-oversized.h: Copy from gnulib.
13485 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
13487         Spruce up ftfont.c memory allocation
13489         * src/ftfont.c (setup_otf_gstring):
13490         Avoid O(N**2) behavior when reallocating.
13491         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
13492         reallocating buffers; this simplifies the code.  Do not trust
13493         mflt_run to leave the output areas unchanged on failure, as
13494         this isn’t part of its interface spec.
13496 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13498         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
13500 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
13502         Port recent XCB changes to 64-bit ‘long int’
13504         For historical reasons, libX11 represents 32-bit values like Atoms as
13505         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
13506         do that, so adapt the recent XCB code to behave properly on 64-bit
13507         platforms.  Also, fix what appears to be a bug in the interpretation
13508         of xcb_get_property_value_length, at least on my Fedora platform
13509         which is running libxcb-1.11-5.fc21.
13510         * src/xfns.c (x_real_pos_and_offsets):
13511         * src/xterm.c (get_current_wm_state):
13512         xcb_get_property_value_length returns a byte count, not a word count.
13513         For 32-bit quantities, xcb_get_property_value returns a vector
13514         of 32-bit words, not of (possibly 64-bit) long int.
13516         Backport.
13518 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
13520         * src/undo.c (run_undoable_change): Now static.
13522         Backport.
13524 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13526         Remove support for ':timeout' from w32 tray notifications
13528         * src/w32fns.c (Fw32_notification_notify): Delete the code that
13529         supports ':timeout'.
13530         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
13531         with dbusbind.c when D-Bus is compiled in.
13533         * doc/lispref/os.texi (Desktop Notifications): Don't mention
13534         ':timeout'.
13536         Backport.
13538 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
13540         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
13542         (simple-test--transpositions): New macro.
13543         (simple-transpose-subr): New test.
13545         Backport.
13547 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
13549         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
13551         Backport.
13553 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
13555         * src/undo.c: Small fixes for previous change
13557         (run_undoable_change): Mark void argument list.
13558         (record_property_change): Remove unused variable `boundary'.
13560         Backport.
13562 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13564         Add a few more variables to redisplay--variables
13566         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
13567         and bidi-display-reordering to the list.
13569         Backport.
13571 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13573         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
13575         Backport.
13577 2015-11-13  Eli Barzilay  <eli@barzilay.org>
13579         Fix point positioning after transposing with negative arg
13581         * lisp/simple.el (transpose-subr): When invoked with a negative
13582         argument, move point to after the transposed text, like we do
13583         when invoked with a positive argument.  (Bug#21885)
13585         Backport.
13587 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13589         Fix last change in shr.el
13591         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
13592         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
13594         Backport.
13596 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13598         Fix last change
13600         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
13601         Don't DEFSYM tray notification symbols if D-Bus is being used.
13603         Backport.
13605 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13607         Another fix for MinGW64 and Cygwin builds due to notifications
13609         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
13610         being compiled into Emacs.
13611         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
13612         Sw32_notification_notify and Sw32_notification_close if the code
13613         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
13615         Backport.
13617 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13619         Remove intern calls and XXX comments from Fx_export_frames
13621         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
13622         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
13623         for consistency with image types.  Remove XXX comments.
13624         (syms_of_xfns) <Qpdf>: DEFSYM it.
13626         Backport.
13628 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
13630         Port recent XCB changes to 64-bit ‘long int’
13632         For historical reasons, libX11 represents 32-bit values like Atoms as
13633         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
13634         do that, so adapt the recent XCB code to behave properly on 64-bit
13635         platforms.  Also, fix what appears to be a bug in the interpretation
13636         of xcb_get_property_value_length, at least on my Fedora platform
13637         which is running libxcb-1.11-5.fc21.
13638         * src/xfns.c (x_real_pos_and_offsets):
13639         * src/xterm.c (get_current_wm_state):
13640         xcb_get_property_value_length returns a byte count, not a word count.
13641         For 32-bit quantities, xcb_get_property_value returns a vector
13642         of 32-bit words, not of (possibly 64-bit) long int.
13644 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
13646         * src/undo.c (run_undoable_change): Now static.
13648 2015-11-13  Michael Albinus  <michael.albinus@gmx.de>
13650         Adapt Tramp version, do not merge with master
13652         * doc/misc/trampver.texi (trampver):
13653         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
13655 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13657         Remove support for ':timeout' from w32 tray notifications
13659         * src/w32fns.c (Fw32_notification_notify): Delete the code that
13660         supports ':timeout'.
13661         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
13662         with dbusbind.c when D-Bus is compiled in.
13664         * doc/lispref/os.texi (Desktop Notifications): Don't mention
13665         ':timeout'.
13667 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
13669         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
13670         (simple-test--transpositions): New macro.
13671         (simple-transpose-subr): New test.
13673 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
13675         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
13677 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
13679         * src/undo.c: Small fixes for previous change
13680         (run_undoable_change): Mark void argument list.
13681         (record_property_change): Remove unused variable `boundary'.
13683 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13685         Add a few more variables to redisplay--variables
13687         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
13688         and bidi-display-reordering to the list.
13690 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13692         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
13694 2015-11-13  Eli Barzilay  <eli@barzilay.org>
13696         Fix point positioning after transposing with negative arg
13698         * lisp/simple.el (transpose-subr): When invoked with a negative
13699         argument, move point to after the transposed text, like we do
13700         when invoked with a positive argument.  (Bug#21885)
13702 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13704         Fix last change in shr.el
13706         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
13707         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
13709 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13711         Fix last change
13713         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
13714         Don't DEFSYM tray notification symbols if D-Bus is being used.
13716 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
13718         Another fix for MinGW64 and Cygwin builds due to notifications
13720         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
13721         being compiled into Emacs.
13722         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
13723         Sw32_notification_notify and Sw32_notification_close if the code
13724         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
13726 2015-11-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13728         Remove intern calls and XXX comments from Fx_export_frames
13730         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
13731         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
13732         for consistency with image types.  Remove XXX comments.
13733         (syms_of_xfns) <Qpdf>: DEFSYM it.
13735 2015-11-13  Eric Hanchrow  <eric.hanchrow@gmail.com>
13737         shr: don't invoke unbound function (Bug#21895)
13739         * lisp/net/shr.el (have-fringes-p): New function.
13740         (shr-insert-document, shr-fill-text): Use it.
13742 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
13744         * test/automated/keymap-tests.el: Fix test to make it repeatable
13746         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
13747         entry to its initial value to make the test repeatable in interactive
13748         sessions (assuming it doesn't fail and crashes Emacs, of course).
13750 2015-11-13  Artur Malabarba  <bruce.connor.am@gmail.com>
13752         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
13754 2015-11-12  Phillip Lord  <phillip.lord@russet.org.uk>
13756         : Tests for undo-auto functionality.
13758 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
13760         The heuristic that Emacs uses to add an `undo-boundary' has been
13761         reworked, as it interacts poorly with functions on `post-command-hook'
13762         or `after-change-functions'.
13764         * lisp/simple.el: New section added.
13765         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
13766         (self_insert_command): Calls simple.el to amalgamate.
13767         (delete_char): Calls simple.el to amalgamate.
13768         * src/keyboard.c (last_undo_boundary): Removed.
13769         * src/undo.c (run_undoable_change): New function.
13771 2015-11-12  Juri Linkov  <juri@linkov.net>
13773         Bind [?\S-\ ] to previous line command in Dired-like modes.
13775         * lisp/arc-mode.el (archive-mode-map):
13776         * lisp/dired.el (dired-mode-map):
13777         * lisp/proced.el (proced-mode-map):
13778         * lisp/vc/vc-dir.el (vc-dir-mode-map):
13779         Bind [?\S-\ ] to previous line command.
13780         (Bug#20790)
13782 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
13784         Fix the MinGW64 and Cygwin-w32 builds
13786         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
13787         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
13788         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
13789         which cause trouble with MinGW42 headers.  Ifdef away tray
13790         notifications code for Cygwin.  Reported by Andy Moreton
13791         <andrewjmoreton@gmail.com>.
13793 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
13795         Enable sorting of JSON object keys when encoding
13797         * lisp/json.el (json-encoding-object-sort-predicate): New variable
13798         for specifying a sorting predicate for JSON objects during encoding.
13799         (json--plist-to-alist): New utility function.
13800         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
13801         are to be sorted.
13802         (json-encode-alist): Sort output by
13803         `json-encoding-object-sort-predicate, when set.
13804         (json-encode-plist): Re-use `json-encode-alist' when object keys are
13805         to be sorted.
13806         (json-pretty-print-buffer-ordered): New command to pretty print the
13807         buffer with object keys sorted alphabetically.
13808         (json-pretty-print-ordered): New command to pretty print the region
13809         with object keys sorted alphabetically.
13811         * test/automated/json-tests.el (test-json-plist-to-alist)
13812         (test-json-encode-plist, test-json-encode-hash-table)
13813         (test-json-encode-alist-with-sort-predicate)
13814         (test-json-encode-plist-with-sort-predicate): New tests.
13816         * etc/NEWS: Add an entry for the new commands.
13818 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
13820         * test/automated/keymap-tests.el: New test file.
13822 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
13824         Speed up x_real_pos_and_offsets using XCB
13826         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
13827         all X calls, and pipeline requests when possible, collecting results
13828         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
13830 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
13832         Enable use of XCB for checking window manager state
13834         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
13835         of XGetWindowProperty plus error-catching, since we can explicitly
13836         check for errors in the XCB version.  This eliminates 3 XSync calls on
13837         top of the round-trip actually fetching the information.
13839 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
13841         Detect XCB and save a connection handle
13843         * configure.ac: If using X11, check for XCB libraries and header.
13844         * src/Makefile.in (XCB_LIBS): Define.
13845         (LIBX_EXTRA): Include it.
13847         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
13848         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
13849         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
13851 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
13853         Reduce some data dependencies between X calls
13855         Gains nothing in the traditional-Xlib code, but more closely aligns
13856         with how the XCB version will work.
13858         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
13859         send coordinates (0,0) to the X server and add in the real coordinates
13860         after getting the response.  Move XGetGeometry for outer window inside
13861         error-trapping block.  Use DPY variable more, since it's available.
13863 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
13865         Use color cache for creating bitmap
13867         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
13868         Set attributes to use the caching color allocator.  Initialize and
13869         free the cache.
13871 2015-11-12  Eli Barzilay  <eli@barzilay.org>
13873         Add "^" to the interactive specs of `dired-next/previous-line'
13875         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
13876         to bind these commands to the arrow keys, and that means that they work
13877         better with a "^" in the `interactive' declaration so selection works
13878         as expected.
13880 2015-11-12  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13882         Sync with soap-client repository, version 3.0.2
13884         * lisp/net/soap-client.el: Bump version to 3.0.2.
13886         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
13888         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
13889         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
13891         * lisp/net/soap-client.el: Support Emacs versions that do not have
13892         define-error.
13894         * lisp/net/soap-inspect.el: Remove version header.
13896         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
13897         format.
13899 2015-11-11  Alan Mackenzie  <acm@muc.de>
13901         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
13903         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
13904         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
13905         (c-guess-basic-syntax):
13906         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
13907         (c-get-fallback-scan-pos): "New" function (existed several years ago).
13908         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
13909         c-get-fallback-scan-pos.
13910         (c-parse-state-1): Handle 'BOD strategy.
13912         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
13913         (c-font-lock-fontify-region): Remove bindings of
13914         open-paren-in-column-0-is-defun-start to nil.
13916         * doc/misc/cc-mode.texi (Performance Issues)
13917         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
13919 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
13921         * lisp/obarray.el: Fix shadowed variables.
13922         (obarray-map, obarray-remove, obarray-put, obarray-get):
13923         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
13925 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
13927         Avoid error in submitting a form with EWW
13929         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
13930         CHUNK to be nil.  (Bug#21881)
13932 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
13934         Rename seq-p and map-p to seqp and mapp
13936         * lisp/emacs-lisp/seq.el (seqp): New name.
13937         * lisp/emacs-lisp/map.el (mapp): New name.
13938         * doc/lispref/sequences.texi: Update the documentation for seqp.
13939         * test/automated/map-tests.el: Update the tests for mapp.
13941 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
13943         Rename obarray-p to obarrayp
13945         * lisp/obarray.el (obarrayp): New name.
13946         * test/automated/obarray-tests.el: Update the tests.
13948 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
13950         Rename obarray-foreach to obarray-map
13952         * lisp/obarray.el (obarray-map): New name.
13953         * test/automated/obarray-tests.el: Update the corresponding tests.
13955 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
13957         New file with obarray functions.
13959         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
13960         * test/automated/obarray-tests.el: New file.
13962 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
13964         Implement tray notifications for MS-Windows
13966         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
13967         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
13968         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
13969         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
13970         (EMACS_NOTIFICATION_MSG): New macros.
13971         (NI_Severity): New enumeration.
13972         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
13973         (delete_tray_notification, Fw32_notification_notify)
13974         (Fw32_notification_close): New functions.
13975         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
13976         keywords used by w32-notification-notify.
13978         * doc/lispref/os.texi (Desktop Notifications): Describe the native
13979         w32 tray notifications.
13981 2015-11-11  Alan Mackenzie  <acm@muc.de>
13983         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
13985         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
13986         Windows" and new @defun selected-window-group.
13987         (Window Start and End): Describe new &optional parameter GROUP and
13988         ...-group-function for window-start, window-end, set-window-start, and
13989         pos-visible-in-window-p.
13990         (Textual Scrolling) Describe the same for recenter.
13991         doc/lispref/positions.texi (Screen Lines): Describe the same for
13992         move-to-window-line.
13994         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
13995         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
13996         new optional parameter "group".  At the beginning of each, check whether the
13997         corresponding ...-group-function is set to a function, and if so execute this
13998         function in place of the normal processing.
13999         (syms_of_window): Define symbols for the six new variables below.
14000         (window-start-group-function, window-end-group-function)
14001         (set-window-start-group-function, recenter-group-function)
14002         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
14003         New permanent local buffer local variables.
14004         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
14005         Fpos_visible_in_window_p.
14007         lisp/window.el (selected-window-group-function): New permanent local buffer
14008         local variable.
14009         (selected-window-group): New function.
14011         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
14012         enable, kill them at mode disable.  Add/remove follow-after-change to/from
14013         after-change-functions.
14014         (follow-start-end-invalid): New variable.
14015         (follow-redisplay): Manipulate follow-start-end-invalid.
14016         (follow-after-change, follow-window-start, follow-window-end)
14017         (follow-set-window-start, follow-pos-visible-in-window-p)
14018         (follow-move-to-window-line, follow-sit-for): New functions.
14020         lisp/isearch.el (isearch-call-message): New macro.
14021         (isearch-update, with-isearch-suspended, isearch-del-char)
14022         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
14023         (with-isearch-suspended): Rearrange code such that isearch-call-message is
14024         invoked before point is moved.
14025         (isearch-message): Add comment about where point must be at function call.
14026         (isearch-search): Remove call to isearch-message.
14027         (isearch-lazy-highlight-window-group): New variable.
14028         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
14029         the battery of tests to ...
14030         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
14031         Note: (sit-for 0) is still called.
14032         (isearch-lazy-highlight-update): Check membership of
14033         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
14034         property.
14035         (isearch-update, isearch-done, isearch-string-out-of-window)
14036         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
14037         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
14038         (isearch-lazy-highlight-update): Call the six amended primitives (see
14039         src/window.c above) with the new `group' argument set to t, to cooperate
14040         with Follow Mode.
14042 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
14044         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
14046         * lisp/net/tramp.el (tramp-handle-file-equal-p)
14047         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
14048         Harvey Chapman <hchapman@3gfp.com>.
14050         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
14051         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
14052         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
14053         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
14055 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
14057         * CONTRIBUTE: Encourage adding tests.
14059         Based on this post from John Wiegley:
14061           From: "John Wiegley" <johnw@newartisans.com>
14062           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
14063           To: Juanma Barranquero <lekktu@gmail.com>
14064           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
14065               emacs-devel <emacs-devel@gnu.org>
14066           Date: Wed, 28 Oct 2015 18:45:29 -0700
14067           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
14069           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
14071 2015-11-10  David Reitter  <david.reitter@gmail.com>
14073         Avoid creating notification objects when possible
14075         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
14076         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
14077         functions that do not require a notification object.  When needed,
14078         define NSWindowDidEnterFullScreenNotification to allow for compilation
14079         on OS X 10.6.8.
14081 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14083         Move INTEGER_TO_CONS body out of .h file
14085         * src/data.c (INTBIG_TO_LISP): New macro, with most
14086         of the contents of the old INTEGER_TO_CONS.
14087         (intbig_to_lisp, uintbig_to_lisp): New functions.
14088         * src/lisp.h (INTEGER_TO_CONS):
14089         Simplify by using EXPR_SIGNED and the new functions.
14090         This shrinks code size a bit, and makes it easier to
14091         put a breakpoint on handling of large integers.
14093 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14095         Merge from gnulib
14097         This incorporates:
14098         2015-11-10 intprops: new public macro EXPR_SIGNED
14099         2015-11-10 intprops: fix typo in clang port
14100         * lib/intprops.h: Copy from gnulib.
14102 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
14104         Spelling fixes
14106         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
14107         Fix misspelling in output.
14109 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14111         * doc/lispref/variables.texi (Directory Local Variables):
14112         Document dir-locals wildcards.
14114         * lisp/files.el (dir-locals-file): Point to Info node.
14116         * doc/emacs/custom.texi (Directory Variables):
14117         Document dir-locals wildcards.
14119         * etc/NEWS: Document new functionality.
14121 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14123         * lisp/files.el: Don't allow customization of dir-locals sorting.
14124         In retrospect, this is not a good idea for the same reason that
14125         `dir-locals-file' is a defconst, because it is important that this
14126         behaviour be "uniform across different environments and users".
14127         Sure, the user can still change the sorting with a hack, but we
14128         shouldn't encourage them to change it.
14129         (dir-locals--all-files): Return list in the order returned by
14130         `file-expand-wildcards'.
14131         (file-expand-wildcards): Document the sorting predicate used.
14132         (dir-locals-sort-predicate): Delete variable.
14134 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14136         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
14138         * lisp/isearch.el (search-default-regexp-mode): Change default value.
14140 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14142         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
14143         `locate-dominating-file' will now keep looking if the files it finds in
14144         a given directory are unreadable (or not files).
14146 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14148         * lisp/files.el (dir-locals-file): Allow wildcards.
14149         (dir-locals-find-file, dir-locals-collect-variables)
14150         (dir-locals-read-from-file): Update accordingly.
14151         (hack-dir-local-variables): Rename a local variable.
14153         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
14155         * lisp/help-fns.el (describe-variable): Update accordingly.
14157         * .gitignore: Add .dir-locals?.el.
14159 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
14161         * lisp/emacs-lisp/map.el (map-merge-with): New function.
14163         * test/automated/map-tests.el (test-map-merge-with): New test.
14165 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
14167         Fix some recently-perturbed bookmark autoloads
14169         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
14170         (bookmark-set): Restore autoload.
14171         (bookmark-set-no-overwrite): Add autoload.
14173         Thanks to Juanma Barranquero for noticing the autoload problems
14174         introduced by my recent commit adding/changing the above functions
14175         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
14177 2015-11-09  Noah Friedman  <friedman@splode.com>
14179         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
14180         the start of buffer.  I don't recall if older versions of gdb were
14181         less strict but you cannot dump a 0-length range in gdb 7.9.1.
14183 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
14185         * lisp/progmodes/project.el: Update Commentary.
14187         Merge branch 'project-next'
14189 2015-11-10  Dmitry Gutov  <dgutov@yandex.ru>
14191         Fold `project-ask-user' into `project-current'
14193         * lisp/progmodes/project.el (project-find-functions): Remove
14194         `project-ask-user'.
14195         (project-ask-user): Remove function and the corresponding
14196         `project-roots' implementation.
14197         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
14198         user in case there's no project in the current directory.  Update
14199         all callers.
14201 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
14203         When VC detects a conflict, specify which file
14205         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
14206         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
14207         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
14208         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
14209         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
14210           to display a standard message that specifies the conflicted file.
14212         Before this change, the message VC used for indicating a conflicted
14213         file was just "There are unresolved conflicts in this file" without
14214         naming the file (and this language was duplicated in several places).
14215         After this change, it's "There are unresolved conflicts in file FOO"
14216         (and this language is now centralized in one function in vc.el).
14218         Justification: It's important for the message to name the conflicted
14219         file because the moment when VC realizes a file is conflicted does not
14220         always come interactively.  For example, some people automatically
14221         find a set of Org Mode files on startup, and may keep those .org files
14222         under version control.  If any of the files are conflicted, the user
14223         just sees some messages fly by, and might later check the "*Messages*"
14224         buffer to find out what files were conflicted.  I'm not saying this
14225         happened to me or anything; it's a purely hypothetical example.
14227 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
14229         Fix assertion violation in define-key
14231         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
14232         objects.  Reported by Drew Adams <drew.adams@oracle.com>
14233         and Juanma Barranquero <lekktu@gmail.com>.
14235 2015-11-09  Dima Kogan  <dima@secretsauce.net>
14237         Fix a memory leak in GC of font cache
14239         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
14240         entities if some of the fonts it references are marked.  This
14241         plugs a memory leak.  (Bug#21556)
14243 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
14245         Use INT_ADD_WRAPV etc. to check integer overflow
14247         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
14248         * src/buffer.c (record_overlay_string, overlay_strings):
14249         * src/casefiddle.c (casify_object):
14250         * src/ccl.c (Fccl_execute_on_string):
14251         * src/character.c (char_width, c_string_width, lisp_string_width)
14252         (count_size_as_multibyte, string_escape_byte8):
14253         * src/coding.c (coding_alloc_by_realloc, produce_chars):
14254         * src/data.c (arith_driver):
14255         * src/dispnew.c (realloc_glyph_pool, init_display):
14256         * src/editfns.c (styled_format):
14257         * src/fns.c (Ffillarray):
14258         * src/ftfont.c (ftfont_shape_by_flt):
14259         * src/gnutls.c (gnutls_hex_string):
14260         * src/gtkutil.c (get_utf8_string):
14261         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
14262         * src/keymap.c (Fkey_description):
14263         * src/lisp.h (SAFE_ALLOCA_LISP):
14264         * src/term.c (encode_terminal_code):
14265         * src/tparam.c (tparam1):
14266         * src/xselect.c (x_property_data_to_lisp):
14267         * src/xsmfns.c (smc_save_yourself_CB):
14268         * src/xterm.c (x_term_init):
14269         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
14270         more-complicated code involving division and/or
14271         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
14272         subtraction and/or INT_ADD_OVERFLOW.
14273         * src/casefiddle.c (casify_object): Simplify multibyte size check.
14274         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
14275         * src/data.c (arith_driver): Also check for division overflow,
14276         as that’s now possible given that the accumulator can now contain
14277         any Emacs integer.
14278         * src/lisp.h (lisp_word_count): Remove; no longer used.
14280 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
14282         Make sure that the ignore file exists
14284         * lisp/vc/vc.el (vc-default-ignore-completion-table):
14285         Make sure that the ignore file exists.
14287 2015-11-09  Michael Sperber  <mike@xemacs.org>
14289         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
14290         `gnus-summary-delete-article` in a way that also works on XEmacs.
14292 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
14294         Add support for retrieving paths to JSON elements
14296         Add support for retrieving the path to a JSON element. This can for
14297         instance be useful to retrieve paths in deeply nested JSON
14298         structures.
14300         * lisp/json.el (json-pre-element-read-function)
14301         (json-post-element-read-function): New variables to hold pre- and post
14302         read callback functions for `json-read-array' and `json-read-object'.
14303         (json--path): New variable used internally by `json-path-to-position'.
14304         (json--record-path, json--check-position): New functions used
14305         internally by `json-path-to-position'.
14306         (json-path-to-position): New function for retrieving the path to a
14307         JSON element at a given position.
14308         (json-read-object, json-read-array): Call
14309         `json-pre-element-read-function' and `json-post-element-read-function'
14310         when set.
14312         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
14313         (test-json-path-to-position-with-arrays)
14314         (test-json-path-to-position-no-match): New tests for
14315         `json-path-to-position'.
14317 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
14319         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
14321         This really should been part of my previous commit
14322         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
14324 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
14326         Offer non-overwrite bookmark setter (Bug#15746)
14328         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
14329         what `bookmark-set' used to do, but with more choices for overwrite
14330         vs push, and with minor changes to the interactive prompt format.
14331         (bookmark-set): Rewrite as wrapper around above.
14332         If overwriting, inform the user of that in the prompt.
14333         (bookmark-set-no-overwrite): New function, also done as wrapper.
14334         Bind to "M" in `ctl-x-r-map' autoloads.
14335         (bookmark-map): Similarly bind "M" here.
14337 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
14339         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
14341 2015-11-08  Alan Modra  <amodra@gmail.com>
14343         ELF unexec: Don't insert a new section
14345         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
14346         don't need to mess with symbol st_shndx, or section sh_link and
14347         sh_info.
14349         This does lead to eu-elflint complaints about symbols defined in .bss
14350         with a needed version, because normally it is undefined symbols that
14351         have needed versions;  Defined symbols have version definitions.
14352         The exception is symbols defined by the linker in .dynbss for
14353         variables copied from a shared library in order to avoid text
14354         relocations, with copy relocs to copy their initial values from the
14355         shared library.  These symbols are both defined and have needed
14356         versions, and eu-elflink only expects to see them in SHT_NOBITS
14357         sections.  Of course there is no real problem with having such symbols
14358         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
14360         * src/unexelf.c: Delete outdated comments.
14361         (PATCH_INDEX): Delete.
14362         (find_section): Delete.
14363         (unexec): Don't add a new section.  Instead reuse the last bss
14364         section, extending it to cover dumped data.  Make bss sections
14365         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
14366         st_shndx.  Rename bss sections.
14368 2015-11-08  Alan Modra  <amodra@gmail.com>
14370         ELF unexec: Drive from PT_LOAD header rather than sections
14372         This rewrites bss handling in the ELF unexec code.  Finding bss
14373         sections by name results in complicated code that
14374         - does not account for all names of possible bss sections,
14375         - assumes specific ordering of bss sections,
14376         - can wrongly choose a SHT_NOBITS section not in the bss segment,
14377         - incorrectly calculates bss size (no accounting for alignment gaps),
14378         - assumes .data and .bss are in the same segment.
14380         All of these problems and more are solved by finding the bss segment
14381         in PT_LOAD headers, ie. the address range included in p_memsz but not
14382         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
14383         in that address range.
14385         * src/unexelf.c: Delete old ppc comment.
14386         (OLD_PROGRAM_H): Define.
14387         (round_up): Delete.
14388         (unexec): Don't search for bss style sections by name.  Instead,
14389         use the last PT_LOAD header address range covered by p_memsz
14390         but not p_filesz and match any SHT_NOBITS section in that
14391         address range.  Simplify initialization of section header vars.
14392         Don't assume that section headers are above bss segment.  Move
14393         copying of bss area out of section loop.  Align .data2 section
14394         to 1, since it now covers the entire bss area.  For SHT_NOBITS
14395         sections in the bss segment, leave sh_addr and sh_addralign
14396         unchanged, but correct sh_offset.  Clear memory corresponding
14397         to SHT_NOBITS .plt section.  Delete comment and hacks for
14398         sections partly overlapping bss range now that the full range
14399         is properly calculated.  Delete now dead .sbss code.
14400         (Bug#20614)
14402 2015-11-08  Alan Modra  <amodra@gmail.com>
14404         ELF unexec: R_*_NONE relocs
14406         These should be ignored on all targets.
14408         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
14409         not just Alpha.  Comment on reloc size assumption.
14411 2015-11-08  Alan Modra  <amodra@gmail.com>
14413         ELF unexec: _OBJC_ symbols in bss sections
14415         This code assumed that there was only one bss section.  Rather than
14416         checking for a particular index, check the section type.  Also, handle
14417         the possibility that the section was SHT_NOBITS originally and is
14418         unchanged, in which case no clearing is needed (and sh_offset isn't
14419         necessarily valid, which can lead to a wild memset).
14421         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
14422         bss sections.
14424 2015-11-08  Alan Modra  <amodra@gmail.com>
14426         ELF unexec: Symbol table patching
14428         No st_shndx value larger than SHN_LORESERVE should be changed.
14429         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
14430         SHN_LORESERVE.  Error on SHN_XINDEX.
14432 2015-11-08  Alan Modra  <amodra@gmail.com>
14434         ELF unexec: Merge Alpha and MIPS COFF debug handling
14436         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
14437         Don't find .mdebug section index, find the section in the loop.
14438         Allow for unlikely possibility that .mdebug is located at sh_offset
14439         before bss segment, by calculating move from difference in
14440         sh_offset rather than just assuming new_data2_size.  Simplify
14441         cbLineOffset handling.
14443 2015-11-08  Alan Modra  <amodra@gmail.com>
14445         ELF unexec: Tidy code
14447         Separate out some of the more mechanical changes so following patches
14448         are smaller.
14450         * src/unexelf.c (unexec): Rearrange initialization of program
14451         header vars.  Use pointer vars in loops rather than indexing
14452         section header array via macros.  Simplify _OBJC_ sym code
14453         and reloc handling code.
14455 2015-11-08  Alan Modra  <amodra@gmail.com>
14457         ELF unexec: Correct section header index
14459         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
14460         it should have been using "NEW_SECTION_H (nn)" to find the name of the
14461         section currently being processed.  Of course, before the bss
14462         sections, n and nn have the same value, so this doesn't matter except
14463         in the case of .sbss.  For .sbss this probably meant .bss (most likely
14464         the next section) was copied from memory.  A later patch removes the
14465         bogus .sbss handling anyway.
14467         * src/unexelf.c (unexec): Use correct index to look up names.
14469 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
14471         Fix Bug#21841
14473         * lisp/filenotify.el (file-notify--rm-descriptor):
14474         Use `descriptor' instead of computing its value.
14475         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
14476         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
14477         (Bug#21841)
14479 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
14481         Remove dirs in vc project roots from the the vc project library roots
14483         * lisp/progmodes/project.el (project-library-roots):
14484         Remove directories inside the project roots from the result.
14485         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
14487 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
14489         Move and rename xref-find-regexp to the project package
14491         * lisp/progmodes/project.el (project-find-regexp)
14492         (project--read-regexp)
14493         (project--find-regexp-in): New functions.
14495         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
14496         xref--show-xrefs.  Use in existing callers in place of that
14497         function.
14498         (xref--show-xrefs): Only do the "show" part.
14499         (xref-find-regexp): Rename, more or less, to
14500         project-or-libraries-find-regexp.
14502 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
14504         Abolish temporary buffer management for xref
14506         * lisp/progmodes/xref.el (xref--temporary-buffers)
14507         (xref--current)
14508         (xref--inhibit-mark-current)
14509         (xref--mark-selected): Remove.  Remove all references.
14510         (xref--show-xrefs): Do not construct the
14511         list of the temporary buffers, nor pass it along.
14513 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
14515         Rename "search path" to "library roots"
14517         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
14518         of the elements from CL-LIST1.
14520         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
14521         Update WRT to the above change.
14523         * lisp/progmodes/project.el (project-search-path-function): Rename
14524         to project-library-roots-function, update the documentation and
14525         references.
14526         (project-search-path): Likewise, to project-library-roots.
14527         (project-roots): Clarify documentation.
14528         (project-vc-search-path): Likewise, to project-vc-library-roots.
14529         (project-library-roots): In addition to the renames, thread the
14530         results through file-name-as-directory.
14531         (project-prune-directories): Accept a variable number of
14532         arguments.  Rename to project-combine-directories.
14533         (project-subtract-directories): New function.
14535         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
14536         Append project-roots and project-library-roots together.
14538         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
14540 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
14542         Prefer xpalloc to doubling buffers by hand
14544         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
14545         (read1): Use it for simplicity.
14546         * src/macros.c (store_kbd_macro_char):
14547         * src/minibuf.c (read_minibuf_noninteractive):
14548         * src/term.c (encode_terminal_code):
14549         * src/xrdb.c (magic_db):
14550         Prefer xpalloc to growing buffers by hand.
14551         This doesn’t fix any bugs, but simplifies the code a bit.
14553 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
14555         Merge from gnulib
14557         This incorporates:
14558         2015-11-05 timespec-sub: fix overflow bug; add tests
14559         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
14560         2015-11-03 intprops: add parentheses
14561         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
14562         Copy from gnulib.
14564 2015-11-07  David Reitter  <david.reitter@gmail.com>
14566         Provide NS notification objects where required to eliminate warnings
14568         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
14569         Call notification functions with notification objects
14570         as per delegate APIs.
14572 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
14574         Add test for bug #21824
14576         * test/automated/buffer-tests.el: New file.
14577         (overlay-modification-hooks-message-other-buf): New test.
14579 2015-11-07  Kelvin White  <kwhite@gnu.org>
14581         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
14583 2015-11-07  David Reitter  <david.reitter@gmail.com>
14585         Ignore fullscreen exit notifications on NS when frame is dead
14587         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
14588         (windowDidExitFullScreen:): Return if frame is dead.
14589         These functions may be called when a fullscreen frame
14590         is closed; they are called before, not after.
14592         May address Bug#21428.
14594 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
14596         Speed up lookup in redisplay--variables
14598         * lisp/frame.el (redisplay--variables): Make it a hash-table.
14600         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
14601         as a hash-table.  This speeds up this function by an order of
14602         magnitude: where previously a setq was slowed down by 100% by
14603         introducing the maybe_set_redisplay test, it is now only 5%
14604         slower.
14605         (syms_of_xdisp) <redisplay--variables>: Doc fix.
14607 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
14609         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
14611         The defsubst was being created as:
14612             (cl-defsubst name (args) ("DOC") ...)
14614         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
14615         Add test.
14617 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
14619         Update doc string of hexl-mode
14621         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
14623 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
14625         Fix error in copy-abbrev-table
14627         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
14628         property of the abbrev-table.  (Bug#21828)
14630         * test/automated/abbrev-tests.el: New file.
14632 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
14634         Add test to auto-revert-tests.el for Bug#21841
14636         * test/automated/auto-revert-tests.el
14637         (auto-revert-test01-auto-revert-several-files): New test.
14638         (auto-revert-test02-auto-revert-tail-mode)
14639         (auto-revert-test03-auto-revert-mode-dired): Rename them.
14641 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
14643         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
14645 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
14647         In x_consider_frame_title don't set title of tooltip frames
14649         * src/xdisp.c (x_consider_frame_title): Return immediately for
14650         tooltip frames to avoid displaying empty tooltips.
14652 2015-11-06  Anders Lindgren  <andlind@gmail.com>
14654         Fixed NextStep fullscreen problem (bug#21770).
14656         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
14657         fullscreen frames.
14659 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
14661         Ensure redisplay after evaluation
14663         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
14664         Revert last change.
14665         * lisp/frame.el (redisplay--variables): Populate the
14666         redisplay--variables list.
14667         * src/xdisp.c (maybe_set_redisplay): New function.
14668         (syms_of_xdisp) <redisplay--variables>: New variable.
14669         * src/window.h (maybe_set_redisplay): Declare prototype.
14670         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
14672 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
14674         * test/automated/subr-tests.el (subr-test-when): Fix again.
14676 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
14678         Don't invoke overlay modification hooks in wrong buffer
14680         * src/buffer.c (report_overlay_modification): When called with
14681         AFTER non-zero, don't invoke overlay modification hooks if the
14682         buffer recorded in last_overlay_modification_hooks is different
14683         from the current buffer.  (Bug#21824)
14685 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
14687         * admin/notes/repo: Fix a few obsolete references to Bazaar.
14689 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
14691         * test/automated/subr-tests.el (subr-test-when): Fix test.
14693 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
14695         Avoid division by zero crash observed by Yuan MEI
14697         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
14699         * src/dispnew.c (required_matrix_height, required_matrix_width):
14700         Avoid division by zero.
14701         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
14702         dpyinfo->smallest_char_width to 1.
14704 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
14706         Ensure redisplay after "C-x C-e"
14708         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
14709         redisplay happens to account for any side effects of the evaluated
14710         sexp.  (Bug#21835)
14712 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
14714         Skip some file notification tests for cygwin
14716         * test/automated/file-notify-tests.el (file-notify--test-with-events):
14717         Remove argument TIMEOUT.  Adapt all callees.
14718         (file-notify-test02-events, file-notify-test04-file-validity):
14719         Skip for cygwin.  (Bug#21804)
14721 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
14723         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
14725 2015-11-05  Daiki Ueno  <ueno@gnu.org>
14727         Suppress redundant Pinentry startup messages
14729         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
14730         * lisp/epg.el: Declare `pinentry-start'.
14731         (epg--start): Call `pinentry-start' with QUIET argument set.
14733 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
14735         * doc/emacs/ack.texi (Acknowledgments): Updates.
14737 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
14739         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
14740         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
14742 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
14744         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
14745         Add prettification support for \times.
14747 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
14749         * test/automated/process-tests.el: Skip tests when bash is unavailable.
14750         (process-test-sentinel-accept-process-output)
14751         (process-test-sentinel-sit-for): skip-unless bash executable found.
14753 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
14755         Add test for bug #21831
14757         * test/automated/process-tests.el
14758         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
14759         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
14761 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
14763         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
14765         (eieio--generic-static-object-generalizer): Fix typo.
14766         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
14767         like the underlying cause of bug#17852 was fixed in the mean time.
14769 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14771         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
14773         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
14774         It breaks bootstrapping (duh).
14776 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14778         * lisp/files.el (report-errors): Obsolete.
14780         (normal-mode, hack-local-variables, dir-locals-find-file):
14781         Use `with-demoted-errors' instead.
14783 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
14785         * lisp/subr.el (when): Use `macroexp-progn'.
14787         * test/automated/subr-tests.el (subr-test-when): New test.
14789 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
14791         * lisp/progmodes/xref.el: Doc fixes.
14792         (xref-make-file-location, xref-make-buffer-location, xref-make)
14793         (xref-make-bogus-location, xref-make-match): Add cross-references.
14794         (xref--insert-xrefs): Fix typo in docstring.
14796 2015-11-04  Anders Lindgren  <andlind@gmail.com>
14798         Render fringe bitmaps correctly on NextStep (bug#21301)
14800         The fringe bitmaps were inverted, the background was not transparent,
14801         the image data was horizontally mirrored, and periodic fringe bitmaps
14802         were not supported.
14804         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
14805         When both background and foreground colors are 0, set the background
14806         alpha channel to 0 (making the background transparent).  When
14807         copying the image data, do this from the most significant bit
14808         (leftmost) to the least (rightmost), to avoid mirroring.
14809         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
14810         Add support for periodic images (e.g. the empty line indicator).
14812 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
14814         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
14816 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
14818         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
14820         * admin/MAINTAINERS: Add thunk.el.
14822 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
14824         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
14826 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
14828         Fix a stupid error in gfilenotify.c
14830         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
14831         if we've got a `deleted' signal AND the file name is the watched one.
14833 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
14835         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
14837         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
14838         Use case-insensitive string compare for file names.
14839         (emacs-test-dir): Add 'downcase' to cause case differences (at
14840         least on my system).
14842 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
14844         flymake-tests.el (warning-predicate-rx-gcc): Fix check
14846         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
14847         Also check that "make" is available, not just "gcc".
14849 2015-11-02  Ken Brown  <kbrown@cornell.edu>
14851         Document behavior of collation on Cygwin
14853         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
14854         expected failure on Cygwin.
14855         * doc/lispref/strings.texi (Text Comparison): Document that
14856         punctuation and whitespace are not ignored for sorting on Cygwin.
14858 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
14860         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
14862 2015-11-01  Glenn Morris  <rgm@gnu.org>
14864         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
14865         (Bug#21794)
14866         * test/automated/f90.el (f90-test-bug21794): New test.
14868 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
14870         Fix incompatibility with TCC in test for bug#18745
14872         * test/automated/process-tests.el (process-test-quoted-batfile):
14873         Remove spaces unrelated to the bug being tested.
14875 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
14877         Improve completion in tramp-gvfs.el
14879         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
14880         Rename from `tramp-zeroconf-parse-service-device-names'.
14881         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
14882         with `tramp-zeroconf-parse-device-names'.
14883         (tramp-gvfs-parse-device-names): New defun.
14884         (top): Use it when `tramp-zeroconf-parse-device-names' is not
14885         applicable.
14887         * lisp/net/tramp.el (tramp-set-completion-function): The argument
14888         could also be a zeroconf service type.
14890 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
14892         * lisp/net/ntlm.el: Change version to 2.0.0.
14894 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
14896         Fix bug#21762
14897         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
14898         `eql' instead of `=' to accommodate the case that (syntax-after (point))
14899         returns nil.
14900         * test/automated/python-tests.el (python-indent-inside-paren-7):
14901         New test.
14903 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
14905         * test/automated/python-tests.el: Avoid warnings.
14906         (python-tests-with-temp-buffer, python-tests-with-temp-file):
14907         Bind `python-indent-guess-indent-offset' to nil.
14909 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
14911         * src/alloc.c: Silence compiler warnings.
14912         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
14914 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
14916         * etc/NEWS: Fix js-jsx-mode entry punctuation.
14918 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
14920         Add JSX indentation via js-jsx-mode  (Bug#21799)
14922         * lisp/progmodes/js.el: Add JSX indentation support.
14923         (js--jsx-end-tag-re)
14924         (js--jsx-after-tag-re): New variables.
14925         (js--jsx-find-before-tag)
14926         (js--jsx-indented-element-p)
14927         (js--as-sgml)
14928         (js--expression-in-sgml-indent-line)
14929         (js-jsx-indent-line)
14930         (js-jsx-mode): New functions.
14931         * test/indent/js-jsx.js: New file.
14932         * etc/NEWS: Add information about js-jsx-mode.
14934 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
14936         Minor fix in filenotify.el
14938         * lisp/filenotify.el (file-notify--event-file-name)
14939         (file-notify--event-file1-name): Normalize result with
14940         `directory-file-name'.
14942 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
14944         Avoid errors in redisplay--pre-redisplay-functions
14946         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
14947         use 'bobp', instead compare window-point with 1.  (Bug#21730)
14949 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
14951         Merge from gnulib
14953         This incorporates:
14954         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
14955         2015-10-25 stdalign: port to Sun C 5.9
14956         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
14957         Copy from gnulib.
14959 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
14961         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
14962         (w32_compare_strings): Adjust for the correction.
14964 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
14966         * test/automated/vc-tests.el (vc-test--state)
14967         (vc-test--working-revision, vc-test--checkout-model):
14968         Add result messages.
14970 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14972         * test/automated/faces-tests.el: Add another test
14974 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14976         * lisp/faces.el (faces--attribute-at-point): Fix bug
14977         introduced by previous commit.
14979 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14981         * test/automated/faces-tests.el: New file.
14983 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14985         * lisp/faces.el: Refactor common code and fix a bug.
14986         (faces--attribute-at-point): New function.  Fix a bug when the
14987         face at point is a list of faces and the desired attribute is not
14988         on the first one.
14989         (foreground-color-at-point, background-color-at-point): Use it.
14991 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
14993         * etc/tutorials/TUTORIAL.translators: Fix PL names.
14995 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
14997         * lisp/character-fold.el: Provide `character-fold'.
14999 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
15001         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
15002         for Gnus and ivy.
15004 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
15006         Some minor fixes for tramp-gvfs.el
15008         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
15009         An attribute returned by gvfs-info might be empty.  In case of
15010         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
15011         (tramp-zeroconf-parse-service-device-names): New defun.
15012         Derived from `tramp-zeroconf-parse-workstation-device-names'.
15013         (top): Add completion functions for "afp" and "smb" methods.
15015 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15017         * test/automated/character-fold-tests.el: New file
15019 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15021         * test/automated/sort-tests.el: New file.
15022         Tests in this file are randomly generated and then tested with
15023         regular, reverse, and case-fold sorting.
15025 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
15027         Describe known problems with pinning Emacs to taskbar
15029         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
15030         on Windows 10.  For the details, see the discussion starting at
15031         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
15033 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
15035         * lisp/isearch.el: Avoid an error that blocks isearch.
15036         (isearch-update): Don't error if `isearch--current-buffer' has
15037         been killed.
15039         * test/automated/isearch-tests.el (isearch--test-update):
15040         New file.
15042 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
15044         Fix documentation of 'beginning/end-of-buffer'
15046         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
15047         conditions under which the mark will be pushed at the previous
15048         position.  (Bug#21748)
15050 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
15052         Add RefTeX feature idea: editing RefTeX TOC buffers
15054         More face defs for ivy, swiper, ace-window, eshell
15056 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15058         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
15059         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
15060         just VAR.
15061         (auth-source-backend-parse): Use make-instance.
15062         (auth-source-search): Remove unused key args.
15063         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
15064         (auth-source-search-backends): Use slot names rather than their initarg.
15065         (auth-source-netrc-create):
15066         (auth-source-delete):
15067         (auth-source-secrets-create, auth-source-plstore-search)
15068         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
15069         (auth-source-plstore-create, auth-source-netrc-search)
15070         (auth-source-netrc-parse): Remove unused key args.
15071         (auth-source-forget+): Simplify the arglist.
15072         (auth-source-macos-keychain-search-items)
15073         (auth-source-token-passphrase-callback-function): Mark unused args.
15074         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
15075         (pp-escape-newlines): Declare.
15076         (auto-source--symbol-keyword): New function.
15077         (auth-source-plstore-create, auth-source-netrc-create)
15078         (auth-source-netrc-normalize): Use it.
15079         (auth-source-netrc-search): Don't pass :delete to
15080         auth-source-netrc-parse since it doesn't use it.
15081         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
15082         symbol-value to index in keyword args.
15083         (auth-source-macos-keychain-result-append): Avoid setq.
15084         (auth-source-netrc-create): Remove unused vars `file' and `add'.
15085         (auth-source-user-or-password): Remove unused var `cname'.
15087 2015-10-29  Juri Linkov  <juri@linkov.net>
15089         * lisp/dired.el (dired-unmark-all-files-query): Declare.
15090         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
15091         (Bug#21746)
15093 2015-10-29  Juri Linkov  <juri@linkov.net>
15095         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
15096         to go to the beginning of text line instead of command line.
15097         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
15099 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
15101         Fix encoding of saving *Help* buffers
15103         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
15104         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
15106 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15108         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
15109         (cl--generic-derived-specializers): New function.
15110         (cl--generic-derived-generalizer): New generalizer.
15111         (cl-generic-generalizers): New specializer (derived-mode MODE).
15112         (cl--generic-split-args): Apply the rewriter, if any.
15113         (cl-generic-define-context-rewriter): New macro.
15114         (major-mode): Use it to define a new context-rewriter, so we can write
15115         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
15117         * lisp/frame.el (window-system): New context-rewriter so we can write
15118         `(window-system VAL)' instead of (window-system (eql VAL)).
15119         (cl--generic-split-args): Apply the rewriter, if any.
15120         (frame-creation-function): Use the new syntax.
15122         * lisp/term/x-win.el (window-system-initialization)
15123         (handle-args-function, frame-creation-function)
15124         (gui-backend-set-selection, gui-backend-selection-owner-p)
15125         (gui-backend-selection-exists-p, gui-backend-get-selection):
15126         * lisp/term/w32-win.el (window-system-initialization)
15127         (handle-args-function, frame-creation-function)
15128         (gui-backend-set-selection, gui-backend-get-selection)
15129         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
15130         * lisp/term/pc-win.el (gui-backend-get-selection)
15131         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
15132         (gui-backend-set-selection, window-system-initialization)
15133         (frame-creation-function, handle-args-function):
15134         * lisp/term/ns-win.el (window-system-initialization)
15135         (handle-args-function, frame-creation-function)
15136         (gui-backend-set-selection, gui-backend-selection-exists-p)
15137         (gui-backend-get-selection):
15138         * lisp/startup.el (handle-args-function):
15139         * lisp/term/xterm.el (gui-backend-get-selection)
15140         (gui-backend-set-selection): Use the new syntax.
15142 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15144         * test/indent/css-mode.css: Add tests for url(...) syntax.
15146 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15148         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
15149         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
15150         (smie-prec2->grammar): Use `declare'.
15152 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15154         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
15155         (cl--generic-generalizer): Add `name' field.
15156         (cl-generic-make-generalizer): Add corresponding `name' argument.
15157         (cl-generic-define-generalizer): New macro.
15158         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
15159         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
15160         (cl--generic-t-generalizer): Use it.
15161         (cl-generic-ensure-function): Add `noerror' argument.
15162         (cl-generic-define): Use it so we don't follow aliases.
15163         (cl-generic-define-method): Preserve pre-existing ordering of methods.
15164         (cl--generic-arg-specializer): New function.
15165         (cl--generic-cache-miss): Use it.
15166         (cl-generic-generalizers): Only fset a temporary definition
15167         during bootstrap.
15168         (cl--generic-struct-tag, cl--generic-struct-specializers):
15169         Allow extra arguments.
15171         * lisp/emacs-lisp/eieio-compat.el
15172         (eieio--generic-static-symbol-generalizer)
15173         (eieio--generic-static-object-generalizer):
15174         Use cl-generic-define-generalizer.
15175         (eieio--generic-static-symbol-specializers): Allow extra arguments.
15177         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
15178         (eieio--generic-subclass-generalizer):
15179         Use cl-generic-define-generalizer.
15180         (eieio--generic-subclass-specializers): Allow extra arguments.
15182 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
15184         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
15186 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
15188         Add "afp" method to Tramp
15190         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
15192         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
15193         (tramp-gvfs-handle-expand-file-name)
15194         (tramp-gvfs-handler-mounted-unmounted)
15195         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
15196         (tramp-gvfs-maybe-open-connection): Support also "afp".
15197         (tramp-gvfs-handle-file-attributes): Handle the case of empty
15198         "owner::user" and "owner::group" entries.
15200 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
15202         Handle negative coordinates in ‘x_calc_absolute_position’
15204         * src/w32term.c (x_calc_absolute_position): Find display origin to
15205         allow for negative coordinates.
15207 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
15209         (internal--syntax-propertize): Save match-data here (bug#21766)
15211         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
15212         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
15214 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
15216         Don't require default-directory to end with a slash
15218         * doc/lispref/files.texi (Magic File Names): Document the change
15219         in unhandled-file-name-directory.
15221         * lisp/url/url-handlers.el
15222         (url-handler-unhandled-file-name-directory): Update accordingly.
15224         * src/buffer.c (default-directory): Update the docsting.
15226         * src/fileio.c (unhandled-file-name-directory): Default to calling
15227         `file-name-as-directory'
15228         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
15230 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15232         * lisp/isearch.el: Delete some outdated comments.
15234 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
15236         Fix eshell/clear not working if the output has a small line count
15238         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
15239         number of newlines to be inserted. This fixes the issue where
15240         eshell/clear wouldn't work if the prompt was not at the bottom of the
15241         window, and the output wasn't too long.
15243 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
15245         * lisp/files.el (write-file): Use vc-refresh-state.
15247         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
15249         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
15251 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
15253         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
15254         (macroexp-unprogn): Make sure we never return an empty list.
15255         (macroexp-if): Remove unused (and unsafe) optimization.
15256         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
15257         occur occasionally.
15259 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
15261         Fix bug#21766 and add test
15262         * lisp/simple.el (delete-trailing-whitespace): Save match data when
15263         calling `skip-syntax-backward'.
15264         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
15265         New test.
15267 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15269         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
15271 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
15273         * src/dispnew.c (init_display): Simplify overflow checking.
15275 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15277         * lisp/character-fold.el (character-fold-to-regexp): Fix case
15278         where string ends in space
15280 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15282         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
15284         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
15286 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15288         * lisp/character-fold.el: Make compatible with lax-whitespace.
15289         (character-fold-to-regexp): Rework internals to play nice with
15290         lax-whitespacing.
15292         When the user types a space, we want to match the table entry for
15293         ?\s, which is generally a regexp like "[ ...]".  However, the
15294         `search-spaces-regexp' variable doesn't "see" spaces inside these
15295         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
15296         manually expose a space).
15298         Furthermore, the lax search engine acts on a bunch of spaces, not
15299         on individual spaces, so if the string contains sequential spaces
15300         like "  ", we need to keep them grouped together like this:
15301         "\\(  \\|[ ...][ ...]\\)".
15303 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15305         * lisp/isearch.el: Refactor momentary messages.
15306         (isearch--momentary-message): New function.
15307         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
15308         (isearch-toggle-invisible): Use it.
15310 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15312         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
15313         (isearch-define-mode-toggle): New macro.
15314         (isearch-toggle-invisible): Rename to
15315         `isearch-define-mode-toggle'.
15316         (isearch-toggle-case-fold, isearch-toggle-invisible)
15317         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
15318         with `isearch-define-mode-toggle'.
15320 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
15322         Avoid using `add-to-list' on a let-local var in tramp-smb.el
15324         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
15325         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
15327 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
15329         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
15330         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
15331         does not exist in XEmacs 21.4.
15333 2015-10-28  Anders Lindgren  <andlind@gmail.com>
15335         Fixed OS X startup crash
15337         Input events started to arrive before ns_term_init() was finished.
15338         Solved by blocking input.  This also seems to correct the "You
15339         can't open the application "Emacs" because it may be damaged or
15340         incomplete" error issued when double-clicking on the Emacs
15341         application.
15343         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
15344         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
15346 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
15348         * src/process.c (Fget_buffer_process): Improve docstring.
15349         Document the fact that it doesn't return dead processes.
15351 2015-10-28  Anders Lindgren  <andlind@gmail.com>
15353         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
15355         * src/nsterm.h (struct ns_output): New flag, in_animation.
15356         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
15357         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
15358         in_animation flag around call to "setVisible". Set new tool bar
15359         height before call to setVisible.
15360         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
15361         andColumns:] as this fools the subsequent call to updateFrameSize
15362         from performing the real resize.
15363         (windowDidResize): Don't update anything when in_animation is
15364         non-zero.
15366         Trace output.
15368         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
15369         (EmacsToolbar):
15370         * src/nsterm.m (x_set_window_size, updateFrameSize)
15371         ([EmacsView setRows: andColumns:])
15373 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
15375         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
15377 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
15379         Prettify TeX macros not ending in a word char
15381         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
15382         Prettify macros which don't end in a word character.
15384 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
15386         Pipe Hg commit descriptions through 'tabindent'
15388         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
15389         through 'tabindent'.
15390         (vc-hg-log-view-mode): Set tab-width to 2 locally.
15391         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
15393 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15395         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
15396         (tramp-smb-handle-directory-files): Use `delete-dups'.
15398         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
15400 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15402         * lisp/international/ccl.el: Use lexical-binding.
15403         (ccl-compile-if): Remove unused var `false-ic'.
15404         (ccl-compile-write-repeat): Remove unused var `i'.
15405         (ccl-compile-map-single): Remove unused var `id'.
15406         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
15407         dynamic var `ccl-code'.
15409 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15411         * lisp/json.el (json-new-object): Optimize trivial `list' call.
15413 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15415         * lisp/help.el: Fix bug with incorrect arglist string.
15416         (help-add-fundoc-usage): Don't mistake a mis-formatted string
15417         for a list.
15419 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15421         * lisp/gnus/gnus-topic.el: Silence some warnings.
15422         (gnus-topic-prepare-topic): Remove unused var `topic'.
15423         (gnus-topic-remove-topic): Mark unused arg `hide'.
15424         (gnus-tmp-header): Declare.
15425         (gnus-topic-goto-missing-group): Remove unused var `entry'.
15426         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
15427         (gnus-topic-copy-matching): Mark unused arg `copyp'.
15428         Move initialization of `topic' into its declaration.
15430 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
15432         Minor CEDET fixes
15434         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
15435         Handle warnings from gtags about invalid options.
15436         (cedet-gnu-global-create/update-database): Do incremental update
15437         properly.
15439         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
15440         Get monotone root right.
15442 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
15444         Fall back to polling in autorevert when needed
15446         * lisp/autorevert.el (auto-revert-notify-handler): When a
15447         `stopped' event arrives from file notification, fall back to polling.
15449         * test/automated/file-notify-tests.el
15450         (file-notify-test03-autorevert): Extend test for polling when file
15451         notification ceases to work.
15453 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
15455         Show full commit messages in 'hg log' when appropriate
15457         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
15458         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
15459         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
15461 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
15463         Use a plain SVG file for the icon
15465         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
15466           format instead of the Inkscape SVG format.
15468 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
15470         Fix subtle bug in auto-revert-tests.el
15472         * test/automated/auto-revert-tests.el
15473         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
15474         buffer where it belongs to.  (Bug#21668)
15476 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
15478         * lisp/emacs-lisp/map.el: Better docstrings.
15480         * lisp/emacs-lisp/seq.el: Better docstrings.
15482         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
15484 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
15486         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
15488 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
15490         Clarify that load-path contents should be directory file names
15492         * doc/lispref/files.texi (Directory Names): Define and use "directory
15493         file name".  Recommend `expand-file-name'.
15495         * src/lread.c (load-path): Fix doc string; elements are directory file
15496         names.
15498 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
15500         Fix simple-test.el test
15502         * test/automated/simple-test.el (simple-test--dummy-buffer):
15503         Make sure indentation doesn't use TABs, otherwise the 6th test
15504         might fail.
15506 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
15508         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
15509         `substring' does not account for full width characters.
15511 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
15513         Further work on `stopped' events in filenotify.el
15515         * doc/lispref/os.texi (File Notifications): Rework examples.
15517         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
15518         (file-notify--rm-descriptor, file-notify-callback): Improve check
15519         for sending `stopped' event.
15520         (file-notify-add-watch): Check for more events for `inotify'.
15522         * test/automated/file-notify-tests.el
15523         (file-notify--test-expected-events): New defvar.
15524         (file-notify--test-with-events): Use it.
15525         (file-notify--test-cleanup): Make it more robust when deleting
15526         directories.
15527         (file-notify--test-event-test): Check also for watched directories.
15528         (file-notify--test-event-handler): Suppress temporary .#files.
15529         (file-notify-test02-events, file-notify-test04-file-validity):
15530         Rework `stopped' events.
15531         (file-notify-test05-dir-validity): Wait for events when appropriate.
15533 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
15535         * src/keyboard.c (post-command-hook): Shorten docstring.
15537 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
15539         Fix infinite loop in sh-script's SMIE code
15541         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
15542         loop (bug#21747).
15544 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15546         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
15547         Character-fold search _still_ doesn't play well with
15548         lax-whitespace.  So disable it by default (again) for now.
15550 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15552         * lisp/isearch.el: No visual feedback for default search mode.
15553         During an isearch where character-folding is the default, we don't
15554         want to take up minibuffer space just to tell the user that
15555         "Char-fold " is on.  The same goes for other modes, if the user
15556         changes the default.  In contrast, if the user toggles OFF the
15557         default mode, they should see "Literal", to distinguish it from
15558         the default mode.
15559         (isearch--describe-regexp-mode): Return "" if describing the
15560         default mode, and return "literal " if describing a plain search
15561         and it is not default.
15563 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15565         * test/automated/simple-test.el: New file.
15566         Define tests for `newline' and `open-line'.
15568 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15570         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
15571         Also run `post-self-insert-hook' when called interactively.
15573 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15575         * lisp/simple.el (open-line): Fix docstring.
15576         Also explain apparently redundant line.
15578 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15579             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
15581         Sync with soap-client repository, version 3.0.1
15583         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
15584         Bump version to 3.0.1.
15586         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
15588 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
15590         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
15592 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15594         * src/keyboard.c (post-command-hook): Extend the docstring.
15595         Mainly, explain how to use it without hanging Emacs, or giving the
15596         impression that it is hanging.  Also mention `pre-command-hook'.
15597         (pre-command-hook): Mention `post-command-hook'.
15599 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15601         * lisp/custom.el (custom-declare-variable): Shorten code again.
15602         Without using pcase this time.  We can't use pcase because it is
15603         loaded after custom in loadup.el.  Also add a comment explaining
15604         this to future dummies like me.
15606 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
15608         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
15610 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
15612         Introduce `stopped' event in file notification
15614         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
15615         (file-notify-rm-watch): Use it.
15616         (file-notify-callback): Implement `stopped' event.
15617         (file-notify-add-watch): Mention `stopped' in the docstring.
15618         Check, that upper directory exists.
15620         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
15621         Add two test cases.
15622         (file-notify-test02-events): Handle also `stopped' event.
15623         (file-notify-test04-file-validity): Add another test case.
15625 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
15627         Revert commit that broke 'make bootstrap'
15629         * lisp/custom.el (custom-declare-variable): Revert commit
15630         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
15631         even when pcase has not been defined yet, when doing bootstrapping.
15633 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
15635         Port recent inline functions fix to Standard C
15637         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
15638         All uses rewritten to define the function directly rather than to
15639         use a macro to define the function.  This conforms to Standard C,
15640         which does not allow stray semicolons at the top level.  I hope it
15641         also avoids the problems with TAGS.  Those macros, though clever,
15642         were pretty confusing anyway, and it wasn’t clear they were worth
15643         the aggravation even without the TAGS problem.
15645 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15647         * lisp/isearch.el: Make character-fold search the default again.
15649 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15651         * lisp/character-fold.el: Many improvements.
15652         (character-fold-search-forward, character-fold-search-backward):
15653         New command.
15654         (character-fold-to-regexp): Remove lax-whitespace hack.
15655         (character-fold-search): Remove variable.  Only isearch and
15656         query-replace use char-folding, and they both have their own
15657         variables to configure that.
15659 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15661         * lisp/isearch.el: Generalize definition of regexp-function toggles.
15662         (isearch-specify-regexp-function): New macro for specifying
15663         possible values of `isearch-regexp-function'.
15664         (isearch-toggle-character-fold, isearch-toggle-symbol)
15665         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
15667 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15669         * lisp/isearch.el (search-default-regexp-mode): New variable.
15670         (isearch-mode): Use it.
15672 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15674         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
15675         (search-slow-speed, search-upper-case)
15676         (search-nonincremental-instead, search-whitespace-regexp)
15677         (search-invisible, isearch-hide-immediately)
15678         (isearch-resume-in-command-history, search-ring-max)
15679         (regexp-search-ring-max, search-ring-update, search-highlight)
15680         (isearch-fail): Delete :group entries.
15682 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15684         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
15686 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15688         addpm.c: Silence some warnings.
15690         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
15691         to LPBYTE.
15692         (add_registry): Pass NULL to optional lpClass argument of
15693         RegCreateKeyEx, not an empty string.
15695 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15697         addpm.c: Do not add obsolete GTK libraries to the path.
15699         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
15700         (add_registry): Remove variables `size' and `gtk_key'.
15701         Do not add the GTK DLL directory to the library search path; it is
15702         confusing behavior (in particular, the same Emacs version with and
15703         without invoking addpm will use a different path), and the GTK image
15704         libraries are obsolete anyway.
15706 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15708         addpm.c: Replace existing registry entries, but do not create new ones
15710         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
15711         existing values from previous versions, but do not add new ones; the
15712         key could exist for other reasons unrelated to old Emacsen, like X-style
15713         resources, or to set some environment variables like HOME or LANG, and
15714         in that case we don't want to populate it with obsolete values.
15716 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15718         * nt/addpm.c (add_registry): Do not compute unused return value.
15720 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15722         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
15724         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
15725         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
15726         current behavior because REG_OPTION_NON_VOLATILE is defined to
15727         be 0L anyway, but that option is actually documented only for
15728         RegCreateKeyEx.
15730 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
15732         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
15734 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
15736         Update frame title when redisplay scrolls selected window
15738         * src/xdisp.c (redisplay_window): Reconsider the frame's title
15739         when the mode-line of the frame's selected window needs to be
15740         updated.
15742 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
15744         Update frame title when scrolling the selected window
15746         * src/window.c (wset_update_mode_line): New function, sets either
15747         the window's update_mode_line flag or the global update_mode_lines
15748         variable.
15749         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
15750         (window_scroll_line_based): Call it instead of only setting the
15751         window's update_mode_line flag.
15753 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
15755         An even better fix for bug#21739
15757         * src/window.c (set_window_buffer): If the window is the frame's
15758         selected window, set update_mode_lines, not the window's
15759         update_mode_line flag.
15760         * src/buffer.c (Fkill_buffer): Undo last change.
15761         (set_update_modelines_for_buf): Function deleted.
15763 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15764             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
15766         Sync with soap-client repository, version 3.0.0
15768         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
15769         Bump version to 3.0.0.
15771         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
15773         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
15775         * lisp/net/soap-inspect.el: Shorten first line description.
15777         * lisp/net/soap-client.el: Make a small whitespace fix.
15779         * lisp/net/soap-inspect.el: Update copyright years.
15781         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
15782         first use in soap-encode-xs-element.
15784         * lisp/net/soap-client.el (soap-type-is-array?): new defun
15785         (soap-encode-xs-element): handle array elements in this function
15786         (soap-encode-xs-complex-type): flag error if asked to encode an
15787         array type, this is handled in `soap-encode-xs-element'
15789         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
15790         Do not print type for attribute group.
15792         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
15793         New function.
15794         (soap-inspect-xs-attribute-group): Likewise.
15796         * lisp/net/soap-inspect.el
15797         (soap-resolve-references-for-xs-attribute-group): Resolve
15798         references of attributes in an attribute group.
15800         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
15801         type directly, not through soap-wsdl-get.
15803         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
15804         nil if reference attribute is nil.
15806         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
15807         Convert XML schema attributes to xsd:string.
15809         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
15810         New function.
15811         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
15812         (soap-sample-value-for-xs-complex-type): Likewise.
15813         (soap-inspect-xs-attribute): New function.
15814         (soap-inspect-xs-simple-type): Print attributes.
15815         (soap-inspect-xs-complex-type): Likewise.
15817         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
15818         Resolve references for attributes.
15819         (soap-resolve-references-for-xs-complex-type): Likewise.
15821         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
15822         Rename from soap-xml-node-first-child.
15823         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
15824         (soap-xs-parse-simple-type): Likewise.
15826         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
15828         * lisp/net/soap-client.el (soap-invoke-internal): New function.
15829         (soap-invoke-async): Call soap-invoke-internal.
15830         (soap-invoke): Likewise.
15832         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
15833         url-retrieve callback is killed.
15835         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
15836         Rename function.
15837         (soap-parse-wsdl-phase-fetch-imports): Likewise.
15838         (soap-parse-wsdl-phase-parse-schema): Likewise.
15839         (soap-parse-wsdl-phase-fetch-schema): Likewise.
15840         (soap-parse-wsdl-phase-finish-parsing): Likewise.
15841         (soap-parse-wsdl): Update calls.
15843         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
15845         * lisp/net/soap-client.el (soap-invoke-async): New function.
15846         (soap-invoke): Reimplement using soap-invoke-async.
15848         * lisp/net/soap-client.el (soap-parse-server-response):
15849         Improve docstring.
15850         (soap-invoke): Inline call to soap-parse-server-response.
15852         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
15853         Prevent incorrect warning.
15855         * lisp/net/soap-client.el (soap-parse-server-response):
15856         Rename soap-process-url-response.  Destroy the mime part.
15857         (soap-invoke): Call soap-parse-server-response.
15859         * lisp/net/soap-client.el: Update copyright date.
15861         * lisp/net/soap-client.el: Fix checkdoc issues.
15863         * lisp/net/soap-client.el: Fix indentation and long lines.
15865         * lisp/net/soap-client.el (soap-time-format): Remove variable.
15866         (soap-encode-xs-basic-type): Simplify date-time format detection.
15867         (soap-decode-xs-basic-type): Remove soap-time-format support.
15869         * lisp/net/soap-client.el (soap-process-url-response): New function.
15870         (soap-fetch-xml-from-url): Call soap-process-url-response.
15871         (soap-parse-wsdl-phase-1): New function.
15872         (soap-parse-wsdl-phase-2): Likewise.
15873         (soap-parse-wsdl-phase-3): Likewise.
15874         (soap-parse-wsdl-phase-4): Likewise.
15875         (soap-parse-wsdl-phase-5): Likewise.
15876         (soap-parse-wsdl): Call phase functions.
15878         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
15879         Remove one-argument and call.
15881         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
15883         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
15884         (soap-parse-schema): Add wsdl argument.  Look up XML schema
15885         imports from wsdl.
15886         (soap-load-wsdl): Do not set soap-xmlschema-imports.
15887         (soap-parse-wsdl): Get XML schema imports from wsdl.
15889         * lisp/net/soap-client.el (soap-current-file): Remove variable.
15890         (soap-wsdl): Add current-file slot.
15891         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
15892         file from wsdl.
15893         (soap-fetch-xml-from-file): Likewise.
15894         (soap-fetch-xml): Likewise.
15895         (soap-load-wsdl): Always create wsdl object first.
15896         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
15898         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
15899         (soap-xs-parse-element): Set is-group slot.
15900         (soap-resolve-references-for-xs-element): Skip is-group elements.
15901         (soap-xs-complex-type): Add is-group slot.
15902         (soap-xs-parse-complex-type): Set is-group slot.
15903         (soap-xs-parse-sequence): Parse xsd:group elements.
15904         (soap-resolve-references-for-xs-complex-type): Inline elements
15905         from referenced xsd:group nodes.
15906         (soap-parse-schema): Parse xsd:group nodes.
15908         * lisp/net/soap-client.el (soap-invoke):
15909         Don't set url-http-version to 1.0.
15911         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
15912         Allow choice nodes to accept multiple values.
15914         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
15915         for extra header values.
15917         * lisp/net/soap-client.el (soap-well-known-xmlns):
15918         Add wsa and wsaw tags.
15919         (soap-operation): Add input-action and output-action slots.
15920         (soap-parse-operation): Parse wsaw:Action nodes.
15921         (soap-encode-body): Encode service-url for WS-Addressing.
15922         (soap-create-envelope): Likewise.
15923         (soap-invoke): Update soap-create-envelope call to provide
15924         service-url argument.
15926         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
15927         Support xsi:type override attribute.
15928         (soap-decode-array): Likewise.
15930         * lisp/net/soap-client.el (soap-parse-schema):
15931         Handle location attribute.
15933         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
15934         matched validation regexp.
15936         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
15937         Encode xsd:list nodes.
15938         (soap-decode-xs-simple-type): Decode xsd:list nodes.
15940         * lisp/net/soap-client.el (soap-get-candidate-elements):
15941         Fix reference handling.
15943         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
15944         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
15945         (soap-xs-add-list): New function.
15947         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
15948         expected, interpret nil as "false".
15950         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
15951         gYear, gMonthDay, gDay and gMonth.
15953         * lisp/net/soap-client.el (soap-time-format): New variable.
15954         (soap-encode-xs-basic-type): Handle dateTime, time, date,
15955         gYearMonth, gYear, gMonthDay, gDay and gMonth.
15956         (soap-decode-date-time): New function.
15957         (soap-decode-xs-basic-type): Use soap-decode-date-time.
15959         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
15960         after encoding.
15961         (soap-decode-xs-basic-type): Validate value before decoding.
15963         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
15964         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
15966         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
15967         instead of overwriting it.
15968         (soap-validate-xs-simple-type): Add union support.
15970         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
15971         to Emacs regexp using xsdre-translate.
15972         (soap-validate-xs-simple-type): Validate value against pattern.
15974         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
15975         inline simpleType nodes.
15976         (soap-decode-type): Handle union types.
15978         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
15979         attributes.
15981         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
15982         from soap-xs-attribute-group-consolidate, all callers updated
15983         (soap-get-xs-attributes): Rename from
15984         soap-xs-attributes-consolidate, all callers updated
15986         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
15987         (soap-xs-attribute-group): New type.
15988         (soap-xs-parse-attribute-group): New function.
15989         (soap-resolve-references-for-xs-attribute-group): Likewise.
15990         (soap-xs-add-extension): Handle attribute groups.
15991         (soap-resolve-references-for-xs-simple-type): Likewise.
15992         (soap-xs-parse-complex-type): Likewise.
15993         (soap-xs-parse-extension-or-restriction): Likewise.
15994         (soap-resolve-references-for-xs-complex-type): Likewise.
15995         (soap-xs-attribute-group-consolidate): New function.
15996         (soap-xs-attributes-consolidate): Handle attribute groups.
15997         (soap-parse-schema): Likewise.
15999         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
16000         Fix boolean encoding.
16002         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
16003         element names in warnings.
16005         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
16007         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
16008         Eliminate invalid warnings for choice types.
16010         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
16011         Also encode base type attributes.
16013         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
16014         warning.  Print e-name in warnings, or element if e-name is nil.
16016         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
16017         (soap-xs-parse-element): Set substitution-group.
16018         (soap-resolve-references-for-xs-element): Populate alternatives slot.
16019         (soap-get-candidate-elements): New function.
16020         (soap-encode-xs-complex-type): Iterate through all candidate elements.
16021         Handle types with nil type indicator.  Fix warning logic.
16023         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
16024         earlier in the file to prevent compiler warning.
16026         * lisp/net/soap-client.el (soap-node-optional): New function.
16027         (soap-node-multiple): Likewise.
16028         (soap-xs-parse-element): Call soap-node-optional and
16029         soap-node-multiple.
16030         (soap-xs-complex-type): Add optional? and multiple? slots.
16031         (soap-xml-get-children-fq): New function.
16032         (soap-xs-element-get-fq-name): Likewise.
16033         (soap-xs-complex-type-optional-p): Likewise.
16034         (soap-xs-complex-type-multiple-p): Likewise.
16035         (soap-xs-attributes-consolidate): Likewise.
16036         (soap-decode-xs-attributes): Likewise.
16037         (soap-decode-xs-complex-type): Decode types with nil type indicator.
16038         Support children that use local namespaces.  Decode attributes.
16039         Add type considerations to optional? and multiple? warnings.
16041         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
16042         Store parsed attributes.
16043         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
16045         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
16046         Don't add the xsi:type attribute (Exchange refuses requests which have
16047         this attribute).
16049         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
16050         correct compiler warnings about unused function arguments and
16051         local variables.
16053         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
16054         type indicator.
16055         (soap-parse-envelope): Handle response headers.
16056         (soap-parse-response): Likewise.  Only return non-nil decoded values.
16058         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
16059         Return validated value.
16061         * lisp/net/soap-client.el (soap-xs-parse-element)
16062         (soap-xs-parse-simple-type)
16063         (soap-xs-parse-complex-type)
16064         (soap-parse-message)
16065         (soap-parse-operation): Add the current namespace to the element
16066         being created.
16067         (soap-resolve-references-for-xs-element)
16068         (soap-resolve-references-for-xs-simple-type)
16069         (soap-resolve-references-for-xs-complex-type)
16070         (soap-resolve-references-for-operation): Resolve the namespace to
16071         the namespace tag.
16072         (soap-make-wsdl): specify a namespace tag when creating the xsd
16073         and soapenc namespaces
16074         (soap-wsdl-resolve-references): don't update namespace tags in
16075         elements here
16076         (soap-parse-port-type): bind the urn: to soap-target-xmlns
16077         (soap-encode-body): don't add nil namespace tags to
16078         soap-encoded-namespaces
16080         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
16081         for registering the soap-inspect method.  Make debbugs tests pass.
16082         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
16083         type name, also skip string only nodes when decoding a structure.
16084         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
16085         types too.
16086         (soap-encode-body): Grab the header value from the param table.
16088         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
16089         New function.
16090         (soap-encode-xs-element): Don't encode nil value unless needed.
16092         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
16093         (soap-parse-binding): Parse the message parts required in the body.
16094         (soap-encode-body): Encode only the parts that are declared to be
16095         part of the body.
16097         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
16098         when writing out the tag.
16099         (soap-encode-body): Remove hack that inserts the xmlns in the
16100         element attributes list.
16102         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
16103         (soap-xs-parse-attribute): Default slot is set from the XML
16104         "fixed" attribute.
16105         (soap-encode-xs-complex-type-attributes): Encode any attributes
16106         that have a default value.  Also, don't put the xsi:nil attribute
16107         when the complex type has no content anyway.
16109         * lisp/net/soap-client.el (soap-well-known-xmlns):
16110         Add the xml namespace.
16111         (soap-local-xmlns): Start with the xml namespace.
16112         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
16113         (soap-make-xs-basic-types): More xsd types added.
16114         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
16115         Handle "language", "time", "date", "nonNegativeInteger".
16116         (soap-resolve-references-for-xs-element): Don't signal an error if
16117         the element does not have a type.
16118         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
16119         added stum for xsd:list.
16120         (soap-xs-add-union): Call soap-l2fq on all union members.
16121         (soap-xs-add-extension): Call soap-l2fq on the base member.
16122         (soap-resolve-references-for-xs-simple-type): Don't signal an
16123         error if the simple type has no base.
16124         (soap-resolve-references-for-xs-simple-type): Bugfix, call
16125         soap-wsdl-get on each type of the base.
16127         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
16128         Referenced type can be eiher a simple type or a basic type.
16129         (soap-xs-add-restriction)
16130         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
16131         (soap-make-xs-basic-types)
16132         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
16133         Add support for more XMLSchema basic types.
16134         (soap-current-file, soap-xmlschema-imports): New defvars.
16135         (soap-parse-schema): Add locations from xsd:import tags to
16136         `soap-xmlschema-imports'.
16137         (soap-wsdl): Make destructor private.
16138         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
16139         (soap-wsdl-add-alias): Check if we try to replace aliases.
16140         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
16141         (soap-fetch-xml): New defuns.
16142         (soap-load-wsdl): Update to load the WSDL from either a file or
16143         an url.
16144         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
16145         (soap-parse-wsdl): Process wsdl:import tags and imports from
16146         `soap-xmlschema-imports'.
16147         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
16148         symbol-name.
16149         (soap-l2fq): Make the name part always a string.
16150         (soap-name-p): New defun, used for name tests.
16152         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
16153         Supply sample values for choice types with a special tag.
16154         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
16155         Handle anonymous elements correctly.
16156         (soap-encode-value): Accept nodes that have no namespace tag.
16158         * lisp/net/soap-client.el (soap-invoke): Encode the string for
16159         `url-request-data' as UTF-8.  Fixes issue 16.
16161 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
16163         Update the new icon
16165         Move the E slightly to the right in the circle.
16167         * etc/images/icons/hicolor/128x128/apps/emacs.png:
16168         * etc/images/icons/hicolor/16x16/apps/emacs.png:
16169         * etc/images/icons/hicolor/24x24/apps/emacs.png:
16170         * etc/images/icons/hicolor/32x32/apps/emacs.png:
16171         * etc/images/icons/hicolor/48x48/apps/emacs.png:
16172         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
16173         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
16174         * nt/icons/emacs.ico: New icom update.
16176 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16178         Avoid missing inline functions from lisp.h in TAGS
16180         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
16181         need to end each invocation with a semi-colon.
16182         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
16183         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
16184         inline functions defined immediately after each invocation, and
16185         also avoid tagging every invocation of these macros.
16187 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
16189         A better fix for bug#21739
16191         * src/buffer.c (set_update_modelines_for_buf): New function.
16192         (Fkill_buffer): Use it to set the global variable
16193         update_mode_lines if the killed buffer was displayed in some
16194         window.  Don't set windows_or_buffers_changed.  This is a better
16195         fix for bug#21739 than the previous fix, since it will cause only
16196         redisplay of mode lines, not of entire windows, but will still
16197         catch attention of x_consider_frame_title in xdisp.c, which
16198         redraws the frame title.
16200 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
16202         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
16203         tar.bz2 and tar.xz archives.
16205 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
16207         Fix infloop in redisplay introduced by a recent change
16209         * src/xdisp.c (redisplay_internal): Avoid inflooping when
16210         redisplaying the selected window sets the selected frame's
16211         redisplay flag.  (Bug#21745)
16213 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16215         * lisp/emacs-lisp/thunk.el: Better documentation.
16217 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16219         Replace the old icon for Windows and Mac OSX
16221         * nt/icons/emacs.ico:
16222         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
16223         Use the new icons.
16225 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
16227         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
16228         `load-path' should contain only directory names.
16230 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16232         New library thunk.el
16234         thunk.el is extracted from stream.el in ELPA, with additional tests.
16236         * lisp/emacs-lisp/thunk.el: New file.
16237         * test/automated/thunk-tests.el: New file.
16238         * etc/NEWS: Add information about thunk.el
16240 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
16242         Fix bug#21669
16244         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
16245         calling low-level functions.
16247         * test/automated/file-notify-tests.el (file-notify--test-timeout):
16248         Decrase to 6 seconds for remote directories.
16249         (file-notify-test02-events): Expect different number of
16250         `attribute-changed' events for the local and remote cases.  Apply
16251         short delays between the operations, in order to receive all
16252         events in the remote case.  Combine `attribute-change' tests.
16253         (Bug#21669)
16255 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
16257         Decode the HTML source when displaying it in EWW
16259         * lisp/net/eww.el (eww-view-source): Decode the HTML source
16260         according to its headers.
16262 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
16264         New default icon
16266         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
16267         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
16268         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
16269         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
16270         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
16271         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
16272         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
16273         Move the old logo files to emacs23.*.
16274         * etc/images/icons/hicolor/128x128/apps/emacs.png:
16275         * etc/images/icons/hicolor/16x16/apps/emacs.png:
16276         * etc/images/icons/hicolor/24x24/apps/emacs.png:
16277         * etc/images/icons/hicolor/32x32/apps/emacs.png:
16278         * etc/images/icons/hicolor/48x48/apps/emacs.png:
16279         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
16280         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
16281         New files.
16282         * etc/images/icons/README: Update the copyright information.
16284 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
16286         Fix redisplay of frame title when current buffer is killed
16288         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
16289         non-zero value, to redisplay more than just the affected windows.
16290         (Bug#21739)
16292 2015-10-23  Anders Lindgren  <andlind@gmail.com>
16294         NextStep maximization and NSTRACE rewrite
16296         Full-height, full-width, and maximized windows now cover the
16297         entire screen (except the menu bar), including the part where the
16298         system dock is placed.  The system zoom animation is no longer
16299         used.
16301         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
16302         original size.
16304         * src/nsterm.m (ns_menu_bar_height): New function, return height of
16305         the menu bar, or 0 when it's hidden.
16306         (constrain_frame_rect): New function for constraining a frame.
16307         (ns_constrain_all_frames): Set frame size explicitly rather than
16308         relying on the system doing it for us by writing back the current
16309         frame size.
16310         (windowWillUseStandardFrame): Register non-maximized width or
16311         height as new user size.  When entering full width or height,
16312         the other size component is taken from the user size.
16313         (fullscreenState): New method for accessing the fullscreen state.
16314         (constrainFrameRect): Restrict frame to be placed under the menu bar,
16315         if present.  The old version, sometimes, restricted the height of a
16316         frame to the screen, this version never does this.
16317         (zoom): Perform zoom by setting the frame to the full size of the
16318         screen (minus the menu bar).  The default system function, with the
16319         zoom animation, is no longer used, as the final frame size doesn't
16320         cover the entire screen.
16322         Rework how to constrain resizing to the character grid.  The old
16323         system used "resizeIncrements" in NSWindows.  However, once a frame
16324         was resized so that it was not aligned to the text grid, it
16325         remained unaligned even after a resize.  In addition, it conflicted
16326         when resizing a fullheight window.
16328         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
16329         unless when pixelwise frame resizing is enabled.
16330         (updateFrameSize, initFrameFromEmacs)
16331         (toggleFullScreen, handleFS): Don't set resizeIncrements.
16333         Redesign the NS trace system.  The call structure is represented
16334         using indentations and vertical lines.  The NSTRACE macro accepts
16335         printf-style arguments.  New macros for printing various
16336         information.
16338         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
16339         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
16340         block (typically a function), accept printf-style arguments.
16341         (NSTRACE_MSG): Macro for extra information, accepts
16342         printf-style arguments.
16343         (NSTRACE_what): Macros for printing various types.
16344         (NSTRACE_FMT_what): Macro with printf format string snippets.
16345         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
16346         corresponds to NSTRACE_FMT_what.
16347         (NSTRACE_RETURN): Macro to print return value, accept
16348         printf-style arguments.
16349         (NSTRACE_RETURN_what): Macros to print return value for
16350         various types.
16352         * src/nsterm.m: Remove old NSTRACE macro
16353         * src/nsterm.m (nstrace_num): Trace counter.
16354         (nstrace_depth): Current call depth.
16355         (nstrace_leave): NSTRACE support function, called when the
16356         local variable "nstrace_enabled" goes out of scope using the
16357         "cleanup" extension.
16358         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
16359         (constrain_frame_rect, ns_constrain_all_frames)
16360         (ns_update_auto_hide_menu_bar, ns_update_begin)
16361         (ns_update_window_begin, update_window_end, ns_update_end)
16362         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
16363         (ns_frame_rehighlight, x_make_frame_visible)
16364         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
16365         (x_destroy_window, x_set_offset, x_set_window_size)
16366         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
16367         (ns_defined_color, frame_set_mouse_pixel_position)
16368         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
16369         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
16370         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
16371         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
16372         (dumpcursor, ns_draw_vertical_window_border)
16373         (ns_draw_window_divider, ns_draw_relief)
16374         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
16375         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
16376         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
16377         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
16378         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
16379         (ns_create_terminal, ns_term_init, sendEvent)
16380         (applicationDidFinishLaunching, applicationDidBecomeActive)
16381         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
16382         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
16383         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
16384         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
16385         (mouse_autoselect_window, in_window, mouseDragged)
16386         (rightMouseDragged, otherMouseDragged, windowShouldClose)
16387         (updateFrameSize, windowWillResize, windowDidResize)
16388         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
16389         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
16390         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
16391         (windowDidEnterFullScreen, windowWillExitFullScreen)
16392         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
16393         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
16394         (draggingEntered, performDragOperation, validRequestorForSendType)
16395         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
16396         (EmacsScroller_initFrame, EmacsScroller_setFrame)
16397         (EmacsScroller_dealloc, condemn, reprieve, judge)
16398         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
16399         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
16401         * src/nsfns.m: Remove old NSTRACE macro
16402         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
16403         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
16404         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
16406         * src/nsimage.m: Remove old NSTRACE macro
16407         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
16408         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
16410         * src/nsmenu.m: Remove old NSTRACE macro
16411         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
16412         Use new trace system.
16414 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
16416         No need to use eval-and-compile
16418         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
16419         autoload epg functions.
16421 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
16423         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
16425         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
16426         epg-context-set-passphrase-callback, epg-decrypt-string, and
16427         epg-encrypt-string; require epg when compiling for the setf-method
16428         for epg-context-armor. (bug#21724)
16430 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
16432         Include file cleanup for w32 files in src directory
16434         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
16435         fontset.h, blockinput.h.
16436         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
16437         charset.h, fontset.h.
16438         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
16439         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
16440         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
16441         in an ifdef-ed away block.
16442         Include fcntl.h for CYGWIN.
16443         (set_frame_param): Remove unused function.
16444         * src/w32select.c: Don't include charset.h and composite.h.
16445         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
16446         due to pointer signedness mismatches.
16447         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
16448         due to pointer signedness mismatches.
16449         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
16450         process.h, dispextern.h.
16451         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
16452         (Fw32_application_type): Avoid compiler warnings due to pointer
16453         signedness mismatches.
16454         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
16455         character.h, charset.h, dispextern.h.
16456         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
16457         to pointer signedness mismatches.
16458         * src/w32inevt.c: Don't include dispextern.h, window.h,
16459         termhooks.h, w32heap.h.
16460         * src/w32font.c: Don't include dispextern.h, character.h,
16461         charset.h, fontset.h, font.h.
16462         (intern_font_name, add_font_entity_to_list)
16463         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
16464         (list_all_matching_fonts): Avoid compiler warnings due to pointer
16465         signedness mismatches.
16466         * src/w32fns.c: Don't include character.h, intervals.h,
16467         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
16468         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
16469         (w32_color_map_lookup, add_system_logical_colors_to_map)
16470         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
16471         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
16472         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
16473         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
16474         compiler warnings, mainly due to pointer signedness mismatches.
16475         (unwind_create_frame_1): Remove unused function.
16476         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
16477         window.h, termhooks.h, dispextern.h.
16478         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
16479         signedness mismatch.
16480         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
16481         w32heap.h.
16483 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
16485         Improve doc-view wrt. auto-revert-mode
16487         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
16488         is corrupted (bug#21729).
16489         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
16491 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
16493         Describe dired-do-compress-to in the manual
16495         * etc/NEWS: Update.
16497         * lisp/dired-aux.el: Fix typo.
16499         * doc/emacs/dired.texi: Add entry.
16501 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
16503         Further fix for proper locale handling in tramp-gvfs.el
16505         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
16506         Just suppress LC_MESSAGES locale category settings.
16508 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
16510         New lispref section “Security Considerations”
16512         This attempts to document some of the issues recently discussed
16513         on emacs-devel, and to indicate other such issues.  The section
16514         could be a lot longer.
16515         * doc/lispref/os.texi (Security Considerations):
16516         New node.
16517         * doc/lispref/elisp.texi (Top):
16518         * doc/lispref/processes.texi (Shell Arguments):
16519         * lisp/subr.el (shell-quote-argument):
16520         * src/callproc.c (syms_of_callproc):
16521         Reference it.
16523 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
16525         Merge from gnulib
16527         This incorporates:
16528         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
16529         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
16530         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
16531         Copy from gnulib.
16533 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
16535         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
16536         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
16538 2015-10-21  Ken Brown  <kbrown@cornell.edu>
16540         Further include-file cleanup
16542         * src/sheap.c: Include stdlib.h.
16543         * src/unexcw.c: Include string.h.
16545 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
16547         Fix logic in 'server-kill-emacs-query-function'
16549         * lisp/server.el (server-kill-emacs-query-function): Correct the
16550         logic that controls whether the user is asked for confirmation.
16551         (Bug#21723)
16553 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16555         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
16556         (isearch--lax-regexp-function-p): New function.
16558 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16560         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
16561         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
16562         around `isearch-regexp-function'.
16564 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16566         * lisp/isearch.el: Rename word search to regexp-function search.
16567         `isearch-word' went well beyond its original purpose, and the name
16568         no longer makes sense.  It is now called
16569         `isearch-regexp-function', and its value should always be a function
16570         that converts a string to a regexp (though setting it to t is still
16571         supported for now).
16572         (isearch-word): Make obsolete.
16573         (isearch-regexp-function): New variable.
16574         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
16575         (with-isearch-suspended, isearch-toggle-regexp)
16576         (isearch-toggle-word, isearch-toggle-symbol)
16577         (isearch-toggle-character-fold, isearch-query-replace)
16578         (isearch-occur, isearch-highlight-regexp)
16579         (isearch-search-and-update, isearch-message-prefix)
16580         (isearch-search-fun-default, isearch-search)
16581         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
16582         Use it.
16583         (isearch-lazy-highlight-regexp-function): New var.
16584         (isearch-lazy-highlight-word): Make obsolete.
16585         (isearch--describe-regexp-mode): New function.
16586         (isearch--describe-word-mode): Make obsolete.
16588         * lisp/info.el (Info-isearch-search):
16589         * lisp/replace.el (replace-search, replace-highlight):
16590         * lisp/obsolete/longlines.el (longlines-search-function):
16591         * lisp/hexl.el (hexl-isearch-search-function):
16592         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
16593         Use the new var.
16595 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
16597         Add dired-do-compress-to command bound to "c"
16599         * lisp/dired-aux.el (dired-shell-command): Use the caller's
16600           `default-directory', return the result of `process-file'.
16601         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
16602         used by default.
16603         (dired-compress-files-alist): New defvar.
16604         (dired-do-compress-to): New command.
16606         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
16607         (dired-do-compress-to): Add an autoload entry.
16609         * etc/NEWS: Add two entries.
16611 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
16613         Make RefTeX work with LaTeX subfiles package
16615         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
16616         document class argument as master file for referencing purposes.
16618 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
16620         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
16622 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
16624         Include-file cleanup for src directory
16626         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
16627         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
16628         but does not include it directly.  As a general rule, a source
16629         file should include foo.h if it needs the interfaces that foo.h
16630         defines.
16631         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
16632         systime.h.
16633         * src/atimer.c: Don’t include blockinput.h.
16634         * src/buffer.c: Include coding.h, systime.h.  Don’t include
16635         keyboard.h, coding.h.
16636         * src/callint.c: Don’t include commands.h, keymap.h.
16637         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
16638         systty.h, termhooks.h.
16639         * src/casetab.c: Don’t include character.h.
16640         * src/category.c: Don’t include charset.h, keymap.h.
16641         * src/ccl.h: Don’t include character.h.
16642         * src/character.c: Don’t include charset.h.
16643         * src/charset.c: Don’t include disptab.h.
16644         * src/chartab.c: Don’t include ccl.h.
16645         * src/cm.c: Don’t include frame.h, termhooks.h.
16646         * src/cmds.c: Don’t include window.h, dispextern.h.
16647         * src/coding.c: Don’t include window.h, frame.h.
16648         * src/composite.c: Include composite.h.  Don’t include window.h,
16649         font.h.
16650         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
16651         * src/dbusbind.c: Don’t include frame.h.
16652         * src/decompress.c: Don’t include character.h.
16653         * src/dired.c: Don’t include character.h, commands.h, charset.h.
16654         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
16655         process.h, timespec.h.  Include systime.h.
16656         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
16657         * src/editfns.c: Include composite.h.  Don’t include frame.h.
16658         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
16659         commands.h, systty.h..
16660         * src/fileio.c: Don’t include intervals.h, dispextern.h.
16661         Include composite.h.
16662         * src/filelock.c: Don’t include character.h, systime.h.
16663         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
16664         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
16665         * src/font.c: Include termhooks.h.
16666         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
16667         struct composition_it, struct face, struct glyph_string.
16668         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
16669         intervals.h, window.h, termhooks.h.
16670         * src/frame.c: Don’t include character.h, commands.h, font.h.
16671         * src/frame.h: Don’t include dispextern.h.
16672         * src/fringe.c: Don’t include character.h.
16673         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
16674         character.h, charset.h, fontset.h.
16675         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
16676         fontset.h.
16677         * src/ftxfont.c: Don’t include dispextern.h, character.h,
16678         charset.h, fontset.h.
16679         * src/gfilenotify.c: Don’t include frame.h, process.h.
16680         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
16681         Don’t include syssignal.h, buffer.h, charset.h, font.h.
16682         * src/gtkutil.h: Don’t include frame.h.
16683         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
16684         Don’t include character.h.
16685         * src/indent.c: Don’t include keyboard.h, termchar.h.
16686         * src/inotify.c: Don’t include character.h, frame.h.
16687         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
16688         * src/intervals.c: Don’t include character.h, keyboard.h.
16689         * src/intervals.h: Don’t include dispextern.h, composite.h.
16690         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
16691         Include coding.h.
16692         * src/keyboard.h: Don’t incldue systime.h.
16693         * src/keymap.c: Don’t include charset.h, frame.h.
16694         * src/lread.c: Include dispextern.h and systime.h.
16695         Don’t include frame.h.  Include systime.h.
16696         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
16697         * src/menu.c: Include character.h, coding.h.  Don’t include
16698         dispextern.h.
16699         * src/menu.h: Don’t include systime.h.
16700         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
16701         intervals.h, termhooks.h.
16702         * src/print.c: Include coding.h.  Don’t include keyboard.h,
16703         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
16704         Add forward decl of struct terminal.
16705         * src/process.c: Don’t include termhooks.h, commands.h,
16706         dispextern.h, composite.h.
16707         * src/region-cache.c: Don’t include character.h.
16708         * src/scroll.c: Don’t include keyboard.h, window.h.
16709         * src/search.c: Don’t include category.h, commands.h.
16710         * src/sound.c: Don’t include dispextern.h.
16711         * src/syntax.c: Don’t include command.h, keymap.h.
16712         * src/sysdep.c: Don’t include window.h, dispextern.h.
16713         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
16714         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
16715         * src/terminal.c: Include character.h.
16716         Don’t include charset.h, coding.h.
16717         * src/textprop.c: Don’t include character.h.
16718         * src/undo.c: Don’t include character.h, commands.h, window.h.
16719         * src/unexsol.c: Don’t include character.h, charset.h.
16720         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
16721         window.h, dispextern.h, blockinput.h, character.h, font.h.
16722         * src/widgetprv.h: Don’t include widget.h.
16723         * src/window.c: Don’t include character.h, menu.h, intervals.h.
16724         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
16725         macros.h, process.h.
16726         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
16727         intervals.h.
16728         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
16729         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
16730         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
16731         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
16732         * src/xgselect.c: Don’t include timespec.h, frame.h.
16733         Include systime.h.
16734         * src/xgselect.h: Don’t include time.h.
16735         Use a forward decl to struct timespec instead.
16736         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
16737         dispextern.h.  Include systime.h.
16738         * src/xml.c: Don’t include character.h.
16739         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
16740         * src/xselect.c: Don’t include dispextern.h, character.h,
16741         buffer.h, process.h.
16742         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
16743         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
16744         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
16746 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
16748         (/ N) now returns the reciprocal of N
16750         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
16751         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
16752         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
16753         (color-xyz-to-srgb, color-xyz-to-lab):
16754         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
16755         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
16756         (shr-color-hsl-to-rgb-fractions):
16757         Exploit the change to simplify the code a bit.
16758         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
16759         Don’t complain about single-argument calls to ‘/’.
16760         * src/data.c (arith_driver, float_arith_driver):
16761         Implement the change.
16763 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
16765         Call vc-dir-refresh after stash operations
16767         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
16768         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
16770         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
16771         since it can be abbreviated (as returned by vc-find-root).
16773 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
16775         * lisp/vc/vc-svn.el:
16776         * lisp/vc/vc-mtn.el:
16777         * lisp/vc/vc-hg.el:
16778         * lisp/vc/vc-cvs.el:
16779         * lisp/vc/vc-git.el:
16780         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
16781         Its usages have been replaced with vc-run-delayed.
16783 2015-10-20  Dima Kogan  <dima@secretsauce.net>
16785         Fix memory leak in fontset handling
16787         * src/font.c (copy_font_spec): Make a deep copy of the input
16788         argument FONT.  (Bug#21651)
16790 2015-10-20  Michael Sperber  <mike@xemacs.org>
16792         * lisp/gnus/mailcap.el (mailcap-mime-data):
16793         Conditonalize `doc-view-mode', which does not exist on XEmacs.
16795 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
16797         Update the way directories are compressed
16799         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
16800         for *.tar.gz decompression to use a pipe.
16801         Add an entry for the default directory compression (to *.tar.g).
16802         (dired-compress-file): Update.
16804         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
16806 2015-10-20  Michael Sperber  <mike@xemacs.org>
16808         Unbreak `group' option for `mail-sources'
16810         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
16811         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
16812         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
16814 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
16816         New function seq-position
16818         * lisp/emacs-lisp/seq.el (seq-position): New function.
16819         * test/automated/seq-tests.el: New tests for seq-position.
16820         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
16822 2015-10-19  Ken Brown  <kbrown@cornell.edu>
16824         Enable --with-wide-int build on 32-bit Cygwin
16826         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
16827         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
16829 2015-10-19  Glenn Morris  <rgm@gnu.org>
16831         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
16833 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
16835         Resurrect image loading under auto-image-file-mode
16837         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
16838         'openp' specially.  This special case was lost in the changes on
16839         2015-08-18.  (Bug#21685)
16841 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
16843         Fix return value of 'set-file-extended-attributes'
16845         * lisp/files.el (set-file-extended-attributes): Return non-nil
16846         when setting either ACLs or SELinux context succeeds.  Document
16847         the return value.  (Bug#21699)
16849         * doc/lispref/files.texi (Changing Files): Document the return
16850         value of set-file-extended-attributes.
16852 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
16854         Improve documentation of functions that change files
16856         * doc/lispref/files.texi (Changing Files): Document that these
16857         functions signal an error on failure.
16859 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
16861         Fix doc string of 'shell-quote-argument'
16863         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
16865 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
16867         Some minor Tramp changes
16869         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
16871         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
16872         Expand `tramp-auto-save-directory'.
16874 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
16876         Minor edits in Tramp
16878         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
16879         Declare it.
16881         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
16882         Remove declaration.
16884 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
16886         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
16888 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
16890         Avoid crashes when redisplayng a window changes faces or fonts
16892         * src/xdisp.c (redisplay_internal): If redisplaying the selected
16893         window or one of the frames turns on the frame's 'redisplay' flag,
16894         redisplay again.  (Bug#21428)
16896         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
16898 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
16900         Solve timimg issues in file-notify-tests.el
16902         * test/automated/file-notify-tests.el (file-notify-test02-events):
16903         Rectify `attribute-change' tests.  There are timing issues with
16904         gfilenotify.  (Bug#21669)
16906 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
16908         Fix quoting of data within htmlfontify doc
16910         * doc/misc/htmlfontify.texi (Data Structures, Customization):
16911         Fix quoting of data structures.  A Lisp quote is needed only
16912         when data appears within Lisp code.
16914 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16916         * lisp/emacs-lisp/package.el: Reload archive-contents if
16917         priorities change.
16918         (package--old-archive-priorities): New variable.
16919         (package-read-all-archive-contents, package-menu--refresh): Use it
16920         to decide when the `package-archive-contents' needs to be read
16921         again.
16923 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
16925         Make src headers idempotent and standalone
16927         Redo src/*.h so that each include file is idempotent (that is, can
16928         be included multiple times with the latter inclusions having no
16929         effect) and standalone (that is, can be included by itself,
16930         with no include file other than config.h needed as a prerequisite).
16931         This is standard practice in GNU programs nowadays.
16932         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
16933         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
16934         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
16935         * src/regex.h [emacs]:
16936         * src/syntax.h, src/systty.h, src/termhooks.h:
16937         Include lisp.h, for Lisp_Object.
16938         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
16939         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
16940         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
16941         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
16942         * src/termopts.h, src/tparam.h, src/unexec.h:
16943         Protect against multiple inclusion.
16944         * src/buffer.h: Include character.h, for STRING_CHAR.
16945         * src/emacsgtkfixed.h (struct frame):
16946         * src/fontset.h (struct face):
16947         * src/region-cache.h (struct buffer):
16948         * src/termhooks.h (struct glyph):
16949         * src/xsettings.h (struct x_display_info):
16950         Add possibly-forward decl.
16951         * src/syntax.h: Include buffer.h, for BVAR.
16952         * src/sysselect.h: Include lisp.h, for eassume.
16953         * src/termchar.h: Include <stdio.h>, for FILE.
16954         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
16955         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
16957 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
16959         Handle symlink targets containing spaces in tramp-gvfs.el
16961         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
16962         Handle symlink targets containing spaces.
16964 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16966         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
16968         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
16969         same reason that `load-path' shouldn't.  Setting it via the customize
16970         interface is a trap for the user.
16972         Installed themes commonly add themselves to this variable, which means
16973         its value is not fit for being saved (it will permanently remember dirs
16974         that don't exist anymore).
16976         This is aggravated by the fact that Emacs always applies the `user'
16977         theme on top of any theme that's loaded, since this will apply the old
16978         variable value and remove any new directories that had been recently
16979         added by themes themselves.
16981         Not to mention, we already have `custom-theme-directory', which is safe
16982         to customize.
16984 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
16986         * lisp/mpc.el: Rename the new toggling commands.
16987         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
16988         (mpc-toggle-shuffle): Add "-toggle" in the name.
16990 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
16992         Improve the doc string of 'completion-boundaries'
16994         * lisp/minibuffer.el (completion-boundaries): Rename the argument
16995         TABLE to COLLECTION, for consistency with other high-level
16996         completion functions.  Document how COLLECTION is called if it
16997         is a function.  (Bug#21644)
16999 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
17001         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
17003 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
17005         Make dired-do-compress work for *.zip files
17007         * lisp/dired-aux.el (dired-check-process): Transform the top-level
17008           comment into a docstring.
17009         (dired-shell-command): New command.  This mirrors
17010         `dired-check-process', but is more user-friendly for passing
17011         arguments.
17012         (dired-compress-file-suffixes): Allow to specify the command switches
17013         along with input (%i) and output (%o) inside the PROGRAM part.
17014         Add an entry for *.zip files, and update the entry for *.tar.gz files
17015         to the new style.  Update the docstring.
17016         (dired-compress-file): When PROGRAM matches %i or %o, use the new
17017         logic.
17018         (dired-update-file-line): Avoid an error when at end of buffer.
17020         Fixes bug#21637.
17022 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17024         Minor improvement in documentation of internals
17026         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
17028 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17030         Improve documentation of COLLECTION in completion functions
17032         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
17033         cross-reference to "Programmed Completion".
17035         * src/minibuf.c (Fcompleting_read): Improve the doc string.
17036         (Bug#21644)
17038 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
17040         Add more release info to etc/HISTORY
17042         * etc/HISTORY: Add more release information about 19.x and 20.x
17043         versions.
17045 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
17047         New file etc/HISTORY
17049         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
17050         * etc/HISTORY: New file.
17051         * etc/NEWS: Mention it.
17053 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
17055         js-mode: Don't misindent generator methods
17057         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
17058         generator methods from multiplication operator
17059         (https://github.com/mooz/js2-mode/issues/275).
17061 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
17063         Fix animation timeout delay calculation
17065         * lisp/image.el (image-animate-timeout):
17066         Don’t assume speed is floating-point.
17068 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
17070         Add commands for controlling MPD modes
17072         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
17073         (mpc-cmd-single): New functions.
17074         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
17075         (mpc-mode-menu): Add new commands as menu items.
17077 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
17079         Refer to `(elisp)Basic Completion' in completing-read docstring
17081         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
17082         Completion' in the docstring (bug#21644).
17084 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17086         * lisp/mpc.el (mpc-format): Always push form to pred
17088 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17090         Spelling fixes
17092         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
17093         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
17094         Fix misspelling of nonexistent file name.
17096 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17098         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
17100 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
17102         Some editing fixes in Tramp
17104         * lisp/net/tramp-gvfs.el:
17105         * doc/misc/tramp.texi: "customer option" -> "custom option".
17107         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
17109 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
17111         Use proper localization in tramp-gvfs.el
17113         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
17114         Suppress localized settings in order to proper parse gfvs output.
17116 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
17118         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
17119         Quote argument in proper order.  (Bug#21562)
17121 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
17123         Fix typos in docstrings
17125         * lisp/emacs-lisp/map.el:
17126         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
17127           macros.
17129 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
17131         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
17133 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
17135         Make dired-jump work with tar-subfile-mode
17137         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
17138           emitting an error, switch to `tar-superior-buffer'.
17140 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
17142         * .gitignore: Add build-aux/ar-lib.
17144 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
17146         Better docstrings in seq.el and map.el
17148         * lisp/emacs-lisp/map.el:
17149         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
17151 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17153         Merge from gnulib
17155         This incorporates:
17156         2015-10-13 binary-io, u64, unistd: port to strict C
17157         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
17158         2015-09-25 c-ctype: port better to z/OS EBCDIC
17159         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
17160         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
17161         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
17162         Copy from gnulib.
17164 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
17166         Take XPNTR private
17168         * src/alloc.c (PURE_POINTER_P): Remove.
17169         All uses replaced with PURE_P.
17170         (XPNTR_OR_SYMBOL_OFFSET): New function.
17171         (XPNTR): Move here from lisp.h.
17172         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
17173         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
17174         Remove unnecessary cast.
17175         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
17176         to avoid an unnecessary runtime test for symbols.
17177         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
17178         Only alloc.c needs XPNTR now.
17180 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17182         Add MPC play/pause command
17184         * lisp/mpc.el (mpc-toggle-play): New command.
17185         (mpc-mode-map): Bind it to "s".
17186         (mpc-mode-menu): Add corresponding menu item.
17188 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17190         Add bindings and menu items for prev and next tracks
17192         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
17193         "<" to mpc-prev.
17194         (mpc-mode-menu): Add corresponding menu items
17196 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
17198         Reduce face-related consing during frame creation.
17200         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
17201         attribute list once.
17202         (face-spec-reset-face): Use it instead of building the list.
17204 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
17206         Do process ConfigureNotify events indicating size changes.
17208         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
17209         events don't have the same size, process each one.
17211 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17213         Derive mpc-mode from special-mode
17215         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
17216         (mpc-mode): Derive from special mode.
17217         (mpc-songs-mode-map): Don't set parent keymap.
17219 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17221         Fix error messages for when covers are not found.
17223         The last change to mpc-format let the binding to file call
17224         mpc-file-local-copy with nil argument.  Instead, employ if-let here
17225         so nil bindings don't result in needless computation and errors.
17226         * lisp/mpc.el: Require 'subr-x at compile time.
17227         * lisp/mpc.el (mpc-format): Use if-let.
17229 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
17231         Make dired-do-compress work for *.tar.gz files
17233         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
17234           "tar -zxvf" to *.tar.gz; update docstring.
17236         (dired-compress-file): Allow to specify switches after the command in
17237         `dired-compress-file-suffixes'.
17239 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
17241         Make dired-do-compress work for directories
17243         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
17244           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
17245         Also convert the top comment into a docstring.
17247 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17249         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
17251         ... since it might come straight from the memoizing table.
17253 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
17255         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
17257 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
17259         Use special-mode in eww list modes
17261         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
17262         (eww-buffers-mode): Derive from special-mode and remove redundant
17263         setting of buffer-read-only.
17264         (eww-mode-map): Remove redundant keymap parent setting.
17265         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
17266         Remove redundant keymap suppressions and mappings.
17268 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
17270         Allow setting frame pixel sizes from frame parameters (Bug#21415)
17272         Also fix some misfeatures in frame (re-)sizing code, add more
17273         debugging information and remove some dead code.
17275         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
17276         parameter names when setting `frame-size-history'.
17277         (frame--size-history): New function.
17279         * src/frame.c (frame_inhibit_resize): If frame has not been made
17280         yet, return t if inhibit_horizontal_resize or
17281         inhibit_vertical_resize bit have been set.
17282         (adjust_frame_size): Simplify.
17283         (make_frame): Initialize inhibit_horizontal_resize,
17284         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
17285         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
17286         inhibit_vertical_resize slots.
17287         (x_set_frame_parameters): Handle `text-pixels' specification for
17288         width and height parameters.  Don't consider new_height or
17289         new_width changes.  Call adjust_frame_size instead of
17290         Fset_frame_size.
17291         (x_figure_window_size): Two new arguments x_width and y_width
17292         returning frame's figures width and height.  Calculate tool bar
17293         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
17294         Handle `text-pixels' specification for width and height
17295         parameters.
17296         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
17297         (Qx_set_window_size_1, Qx_set_window_size_2)
17298         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
17299         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
17300         (Qfree_frame_menubar_2): New symbols.
17301         * src/frame.h (structure frame): New booleans
17302         tool_bar_redisplayed, tool_bar_resized,
17303         inhibit_horizontal_resize, inhibit_vertical_resize.
17304         (x_figure_window_size): Update external declaration.
17305         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
17306         calling gtk_window_resize.
17307         (update_frame_tool_bar): Make inhibiting of frame resizing more
17308         discriminative.  Set tool_bar_resized bit.
17309         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
17310         resizing more discriminative.  Call adjust_frame_size instead of
17311         x_set_window_size.
17312         (Fx_create_frame): Handle x_width and x_height if
17313         set by x_figure_window_size.
17314         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
17315         subtract 3 from tool bar height.
17316         (x_set_window_size): Add frame_size_history_add call.
17317         (x_new_font): Call adjust_frame_size instead of
17318         x_set_window_size.
17319         * src/w32fns.c (x_change_tool_bar_height): Reset
17320         tool_bar_redisplayed and tool_bar_resized bits when adding tool
17321         bar.  Make inhibiting of frame resizing more discriminative.
17322         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
17323         (Fx_create_frame): Handle x_width and x_height if set by
17324         x_figure_window_size.  Set size hints before adjusting frame size.
17325         (x_create_tip_frame): Adjust x_figure_window_size call.
17326         * src/w32term.c (x_set_window_size): Add frame_size_history_add
17327         call.
17328         * src/widget.c (set_frame_size): Remove dead code.  Add
17329         frame_size_history_add call.  When frame_resize_pixelwise is t
17330         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
17331         pixel_width and pixel_height.
17332         (update_various_frame_slots): Remove dead code.
17333         (EmacsFrameResize): Add more information in
17334         frame_size_history_add call.
17335         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
17336         is not set.
17337         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
17338         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
17339         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
17340         tool_bar_resized bits when adding tool bar.  Make inhibiting of
17341         frame resizing more discriminative.
17342         (Fx_create_frame): Handle x_width and x_height if set by
17343         x_figure_window_size.  Set size hints before adjusting frame size.
17344         (x_create_tip_frame): Adjust x_figure_window_size call.
17345         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
17346         (set_frame_menubar): On Lucid never add core-border-width to
17347         avoid that adding XtNinternalBorderWidth adds it again.
17348         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
17349         * src/xterm.c (x_new_font): In non-toolkit case handle size
17350         change of menu bar.
17351         (x_set_window_size_1): Fix calls to frame_size_history_add.
17352         (x_wm_set_size_hint): Remove dead code.  Set
17353         size_hints.min_width and size_hints.min_height to base_width and
17354         base_height.
17356 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
17358         * test/automated/file-notify-tests.el (file-notify--test-timeout):
17359         Add docstring.  Increase to 10 seconds for remote
17360         directories.  (Bug#21669)
17362 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
17364         Unmacroize ebrowse.c and etags.c a bit
17366         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
17367         (streq, filename_eq, set_flag, has_flag): Now inline functions.
17368         (set_flag): First arg is now an address, not an lvalue.
17369         All callers changed.
17370         (filename_eq, set_flag, has_flag):
17371         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
17372         All callers changed.
17373         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
17374         Now inline functions.  Remove asserts that are unnecessary these
17375         days (and in some cases were too-generous anyway).
17377 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
17379         Use highlight for current items
17381         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
17382         Apply highlight face instead of region face.
17384 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
17386         Search for more cover image names in MPC
17388         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
17389         case insensitively
17391 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
17393         Remove or comment out unused variables
17395         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
17396         nontext_cursor, mode_cursor, hand_cursor and count.
17397         (x_change_tool_bar_height): Remove variable old_text_height.
17398         (deliver_wm_chars): Remove variable strip_Alt.
17399         (Fw32_shell_execute): Remove variable document_a.
17400         (Fw32_frame_geometry): Remove variable fullboth.
17401         * src/w32term.c (w32_setup_relief_color): Comment out variable
17402         w32_display_info.
17403         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
17404         (w32_read_socket): Comment out variables rows, columns.
17405         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
17407 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
17409         * src/w32proc.c (sys_select): Fix bitwise test.
17411 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
17413         Minor typo corrections in doc strings
17415         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
17416         Doc fixes.
17418 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
17420         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
17422 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
17424         Attempt to avoid crashes in plist-member
17426         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
17427         and a call to XCDR.  (Bug#21655)
17429 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
17431         * lisp/select.el (gui-get-primary-selection): In
17432         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
17434 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
17436         Support RTF in doc-view
17438         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
17440 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
17442         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
17444 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
17446         Replace the usage of an obsolete function in auth-source.el
17448         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
17449         Replace an usage of `epg-context-set-armor' with `setf'.
17451 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
17453         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
17455 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
17457         Have calc-yank recognize numbers in different bases.
17459         * lisp/calc/calc-yank.el (math-number-regexp): New function.
17460         (calc-yank): Use `math-number-regexp' to recognize numbers.
17462 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
17464         Handle an opaque-move X11 window manager operation more efficiently
17466         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
17467         followed by more ConfigureNotify events for the same window, process
17468         only the last one.
17470 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
17472         Fix cursor setting for tip frame; re-enable cursor generation
17474         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
17475         attributes sent when creating the new X window.  Don't skip setting
17476         the pointerColor parameter.
17478 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
17480         Rewrite x_set_mouse_color to sync less
17482         We can track serial numbers of X requests and correlate error events
17483         with the associated requests.  This way we can identify errors for
17484         specific calls without having to use XSync after every one.
17486         * src/xfns.c (enum mouse_cursor): New type.
17487         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
17488         (mouse_cursor_types): New array listing the Lisp variables and default
17489         cursor appearances for each cursor type.
17490         (x_set_mouse_color_handler): New function; checks error event serial
17491         number against submitted requests.
17492         (x_set_mouse_color): Updated to use the new error handler callback,
17493         and to be more table-driven, to simplify repetitious code.
17495 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
17497         Add x_catch_errors_with_handler
17499         * src/xterm.c (struct x_error_message_stack): Add new fields for a
17500         callback function and associated data pointer.
17501         (x_error_catcher): If the callback function is set, call it after
17502         saving the error message string.
17503         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
17504         accepts a callback function and data pointer.
17505         (x_catch_errors): Now a wrapper function.
17506         * src/xterm.h (x_special_error_handler): New typedef.
17507         (x_catch_errors_with_handler): Declare.
17509 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
17511         Introduce x_uncatch_errors_after_check to reduce XSync calls
17513         Both x_had_errors_p and x_check_errors call XSync, so if they're
17514         immediately followed by x_uncatch_errors, its XSync call will be
17515         redundant, resulting in a wasted round trip to the X server.
17517         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
17518         x_uncatch_errors without the XSync call.
17519         (XTmouse_position, x_wm_supports):
17520         * src/xfns.c (x_set_mouse_color):
17521         * src/xmenu.c (Fx_menu_bar_open_internal):
17522         * src/xselect.c (x_own_selection, x_get_foreign_selection):
17523         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
17524         * src/xterm.h (x_uncatch_errors_after_check): Declare.
17526 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
17528         Document the optional prefix to `calc-yank'
17530         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
17531         prefix to `calc-yank'.
17532         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
17533         the Calc buffer are yanked back unchanged.
17535 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
17537         * lisp/calendar/calendar.el: Display buffer before executing body.
17539         In each use of this macro, the modeline is derived from a window width
17540         calculation, which will be wrong if (display-buffer) splits the window
17541         horizontally.
17543 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17545         Use ‘echo’ safely with ‘\’ or leading ‘-’
17547         POSIX says that ‘echo FOO’ produces implementation-defined output
17548         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
17549         behavior in that case.
17550         * Makefile.in (removenullpaths): Remove.
17551         (epaths-force): Rewrite to avoid the need for ‘echo’.
17552         (install-etc): Be clearer about escaping the shell metacharacters
17553         ‘\’ and ‘$’.
17554         * Makefile.in (install-arch-indep, install-etcdoc):
17555         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
17556         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
17557         * configure.ac, lib-src/rcs2log, make-dist:
17558         * src/Makefile.in (lisp.mk):
17559         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
17560         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
17561         if $foo can contain arbitrary characters.
17562         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
17563         * doc/lispref/two-volume.make (vol1.pdf):
17564         * test/etags/make-src/Makefile (web ftp publish):
17565         Use ‘printf’ rather than ‘echo -e’.
17567 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
17569         Allow numbers with different radixes to be yanked.
17571         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
17572         default base 10.
17574 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17576         Improve CHECK_IMPURE and PURE_P speedup
17578         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
17580 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
17582         Use events instead of chars to keep track of steps.
17584         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
17585         to keep track of steps.
17587 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17589         Fix --enable-gcc-warnings problem with older GCC
17591         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
17592         This is for building with --enable-gcc-warnings with
17593         GCC 4.6 through 5.0.
17595 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
17597         Fix vertical-motion in truncated lines that end in a stretch
17599         * src/indent.c (Fvertical_motion): Expect overshoot when point is
17600         beyond window margin and lines are truncated, even if we have a
17601         stretch at point.  (Bug#21468)
17603 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
17605         Avoid link-time errors due to inline functions
17607         * src/emacs.c: Include puresize.h, to avoid link-time errors in
17608         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
17609         inline functions.
17611 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
17613         * src/data.c (Faset): Fix last change.
17615 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
17617         CHECK_IMPURE and PURE_P speedup
17619         * src/intervals.c (create_root_interval):
17620         Do CHECK_IMPURE only for strings; not needed for buffers.
17621         Prefer ! STRINGP to BUFFERP, for a tad more speed.
17622         * src/puresize.h (CHECK_IMPURE, PURE_P):
17623         Now inline functions instead of macros.
17624         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
17625         All callers changed.
17626         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
17627         All callers changed.
17629 2015-10-09  Noah Friedman  <friedman@splode.com>
17631         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
17633 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17635         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
17637         our after-change-function, rather than re-adding it if it was removed.
17639 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17641         * lisp/cedet/ede: Silence some compiler warnings
17643         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
17644         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
17645         (ede-apply-object-keymap, ede-reset-all-buffers)
17646         (ede-auto-add-to-target): Use dolist.
17647         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
17648         Use field names rather than initarg names in `oref'.
17649         (ede-load-project-file): Remove unused var `file'.
17650         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
17651         (ede-set): Remove unused var `a'.
17653         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
17654         (ede-project-autoload): Avoid the old-style "name" argument.
17655         (ede-emacs-find-matching-target): Use field names rather than initarg
17656         names in `oref'.
17658         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
17659         (ede-linux-load, ede-project-autoload): Avoid the old-style
17660         "name" argument.
17661         (ede-linux-find-matching-target): Use field names rather than initarg
17662         names in `oref'.
17664 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17666         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
17668 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
17670         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
17671         indenting too far after ":-".
17673 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
17675         Update case-table and categories of recently added characters
17677         * lisp/international/characters.el: Update information about Latin
17678         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
17679         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
17680         blocks.  (Byug#21654)
17682 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
17684         * src/frame.c (adjust_frame_size): In minibuffer-only windows
17685         don't count minibuffer height twice.  (Bug#21643)
17687 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
17689         Avoid inflooping in font-lock
17691         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
17692         inhibit-field-text-motion around the call to
17693         line-beginning-position, to avoid inflooping.  (Bug#21615)
17695 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
17697         Refactor duplicated code; ensure default is in completions
17699         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
17700         New function.
17701         (reftex-extract-bib-entries): Use it.
17702         (reftex-extract-bib-entries-from-thebibliography): Use it.
17704 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
17706         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
17707         in the example.
17709 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
17711         * lisp/calc/calc.el: Silence byte-compiler warnings.
17712         (calc-scan-for-dels): Use ignore-errors.
17713         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
17714         (calc-read-key-sequence): Remove unused var `prompt2'.
17715         (calc-kill-stack-buffer): Remove unused var `buflist'.
17716         (calc): Remove unused var `oldbuf'.
17717         (calc-refresh): Use inhibit-read-only.
17718         (calc-can-abbrev-vectors): Declare.
17719         (calc-record): Remove unused var `mainbuf'.
17720         (math-sub-bignum): Remove unused var `sum'.
17721         (math-svo-c, math-svo-wid, math-svo-off): Declare.
17723 2015-10-08  Daiki Ueno  <ueno@gnu.org>
17725         Use g_clear_error instead of g_error_free
17727         * src/image.c: Define g_clear_error instead of g_error_free.
17728         (init_svg_functions): Resolve symbol g_clear_error instead of
17729         g_error_free.
17730         (svg_load_image): Use g_clear_error instead of g_error_free, to
17731         suppress GLib warnings when ERR is not set.  See bug#21641.
17733 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
17735         * src/image.c (image_size_error): Simplify.
17737 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
17739         Fix problems caught with --enable-gcc-warnings
17741         * src/image.c (lookup_rgb_color):
17742         * src/xfns.c (x_defined_color):
17743         * src/xterm.c (x_parse_color):
17744         Remove unused locals.
17746 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
17748         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
17750 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
17752         Format initial input uniformly
17754         * lisp/calc/calc.el (calc-digit-start-entry): New function.
17755         * lisp/calc/calc.el (calcDigit-start):
17756         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
17757         Use `calc-digit-start-entry' to format input.
17759 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
17761         Disable non-working pointerColor setting for X tooltip frame
17763         It generates a bunch of server traffic, but there's some bug wherein
17764         the new mouse cursor settings don't seem to get used.  In most
17765         situations the cursor isn't likely to be seen anyway, so it's not
17766         urgent to fix.
17768         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
17770 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
17772         Reduce some unnecessary X calls
17774         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
17775         call.  If border width is wanted, get it from the XGetGeometry call
17776         instead of calling XGetWindowAttributes on the same window.  Skip some
17777         X calls if we've already detected an error from the X server.
17778         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
17779         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
17781 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
17783         Reduce color allocation/query traffic in the TrueColor case
17785         When working with an X visual with TrueColor class, pixel values can
17786         be generated from the RGB values according to mask value provided by
17787         the server on connection.  Some of the image-handling code was already
17788         doing this.
17790         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
17791         lookup_rgb_color.
17792         (x_mutable_colormap): New function.
17793         * src/image.c (lookup_rgb_color): Move pixel composition code to
17794         x_make_truecolor_pixel.
17795         (x_kill_gs_process): Call x_mutable_colormap.
17796         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
17797         x_mutable_colormap.
17798         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
17799         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
17800         pixel value into RGB values directly, and don't send a request to the
17801         server.
17802         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
17803         value with x_make_truecolor_pixel.
17804         (x_copy_color): For an immutable color map, just return the provided
17805         pixel value.
17807 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
17809         Cache XParseColor results in the X display info structure
17811         With repeated lookups of foreground and background colors for multiple
17812         faces per frame, we issue a lot of redundant color name lookups to the
17813         X server, waiting every time for the response.  On a remote network
17814         with, say, 30ms round-trip time, this can add nearly a full second to
17815         creation of a new frame.
17817         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
17818         * src/image.c (get_spec_bg_or_alpha_as_argb):
17819         (xpm_init_color_cache, xpm_lookup_color):
17820         * src/xfns.c (x_defined_color):
17821         * src/xterm.c (x_parse_color): New function; caches color names not
17822         starting with "#" in the display-info structure.
17823         (x_delete_display): Delete the cache content.
17824         * src/xterm.h (struct color_name_cache_entry): New type.
17825         (x_parse_color): Declare.
17826         (struct x_display_info): Add a new field for the cache.
17828 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
17830         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
17832 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
17834         Fix segfault in image_size_error
17836         * src/image.c (image_size_error): Pass a Lisp string to
17837         image_error, not a C string.  (Bug#21641)
17839 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
17841         Highlight CSS variable definitions
17843         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
17844         CSS variables.  (Bug#21638)
17846 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17848         * test/automated/tabulated-list-test.el: New file.
17849         Test bug#21639 and some basic functionality.
17851 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17853         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
17854         Check if column can be sorted before trying.  (Bug#21639)
17856 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
17858         Add test for `self-insert-command' (bug#21633)
17860         * test/automated/cmds-tests.el: New file.
17862 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
17864         * src/window.c (resize_frame_windows): Don't set root window's
17865         top position when resizing horizontally.
17867 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17869         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
17870         Document more possible values.
17872 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17874         * lisp/textmodes/tex-mode.el: Use lexical-binding.
17876 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17878         * lisp/indent.el (indent--default-inside-comment): New function.
17879         (indent-for-tab-command): Use it for `noindent' indentation.
17881 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
17883         Fix bug in GC_CHECK_MARKED_OBJECTS check
17885         * src/alloc.c (mark_object): Fix bug in checking code.
17886         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
17887         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
17888         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
17889         bucket.  The bug did not affect behavior either in the normal case
17890         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
17891         not have an internal error that a properly-written
17892         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
17894 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
17896         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
17897         Add prettified version for \\Bbb{Q}.
17899 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17901         * test/automated/package-test.el (package-test-install-single):
17902         Add a test for bug#21625.
17904 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
17906         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
17907           not a package-desc object.  Also clarify documentation.  (Bug#21625)
17909 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
17911         Fix display of characters adjacent to ZWJ and ZWNJ
17913         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
17914         characters the same as directional formatting controls.
17915         (bidi_level_of_next_char): Include all Bn characters in rule L1,
17916         as mandated by the UBA.
17918 2015-10-06  Andreas Schwab  <schwab@suse.de>
17920         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
17921         number.  (Bug#21633)
17923 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
17925         * doc/lispref/objects.texi (Window Type): Add a cross reference.
17927         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
17929 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
17931         * lisp/language/misc-lang.el (composition-function-table):
17932         Fix entries for Arabic and Syriac.
17934 2015-10-05  Damien Cassou  <damien@cassou.me>
17936         Add first unit tests for auth-source.el
17938         * test/automated/auth-source-tests.el: New file.
17940 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
17942         Remove redundant redisplay code
17944         * src/xdisp.c (redisplay_internal, try_cursor_movement)
17945         (try_window_reusing_current_matrix, try_window_id): Remove
17946         redundant restrictions on redisplay optimizations based on the
17947         frame's 'redisplay' flag.  See
17948         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
17949         discussions.
17951 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
17953         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
17955 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
17957         Update tutorials/TUTORIAL.cn
17959         * etc/tutorials/TUTORIAL.cn: Improve translation.
17961 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17963         * src/macfont.m (macfont_encode_char, syms_of_macfont):
17964         Remove unused vars.
17966 2015-10-04  Stefan Merten  <stefan@merten-home.de>
17968         Pull in version numbers from rst.el upstream release.
17970         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
17971         (rst-svn-timestamp, rst-official-version)
17972         (rst-official-cvs-rev, rst-package-emacs-version-alist):
17973         Update version numbers.
17975 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
17977         * test/automated/coding-tests.el: New file.
17979 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
17981         Improve XEmacs compatibility of Tramp
17983         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
17984         Declare if it doesn't exist.
17985         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
17986         (redisplay): Make it an alias if it doesn't exist.
17988         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
17989         `file-remote-p' (due to XEmacs compatibility).
17991         * lisp/net/trampver.el (locate-dominating-file)
17992         (tramp-compat-replace-regexp-in-string): Autoload.
17993         (tramp-repository-get-version): Do not dupe byte-compiler.
17995 2015-09-02  K. Handa  <handa@gnu.org>
17997         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
17999         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
18000         Adjusted for the change of type of elements in the array
18001         MFLTGlyphString.glyphs.
18003 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
18004             Michael Heerdegen  <michael_heerdegen@web.de>
18006         shr: fix too long lines in rendered buffers (Bug#21012)
18008         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
18009         Correct calculation of available width.
18010         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
18011         is nil.
18013 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18015         Restore blank line before next section, erroneously erased
18016         in my previous commit
18018         * etc/compilation.txt (symbol ant): Add an additional trailing blank
18019         line to this section, so that there are two of them immediately before
18020         the next section.
18022 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
18024         Support MSW filename style for ant compilation error regexp
18026         * etc/compilation.txt (symbol ant):
18027         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
18028         Support MSW filename style.
18030 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
18032         * nt/INSTALL: Minor spelling and quote fixes.
18034         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
18036 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
18038         Maintain ordering of JSON object keys by default
18040         * lisp/json.el (json-object-type): Mention order handling in doc-string.
18041         (json--plist-reverse): New utility function.
18042         (json-read-object): Maintain ordering for alists and plists.
18043         (json-pretty-print): Ensure that ordering is maintained.
18045         * test/automated/json-tests.el (test-json-plist-reverse): New test for
18046         `json--plist-reverse'.
18047         (json-read-simple-alist): Update test to accommodate for changes in
18048         `json-read-object'.
18050         * etc/NEWS: Document the new behavior of the pretty printing functions.
18052 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
18054         * src/coding.c (complement_process_encoding_system): Revert last change.
18056 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
18058         * admin/MAINTAINERS: Add entry for Ulf Jasper.
18060 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
18062         Doc fix for `defmacro'
18064         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
18066 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
18068         More validatation of coding systems
18070         * src/fileio.c (Finsert_file_contents): Remove redundant
18071         coding-system check.
18072         (choose_write_coding_system): Likewise.
18073         * src/coding.c (complement_process_encoding_system): Check argument
18074         for valid coding system.
18076 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18078         Avoid crashes in coding_inherit_eol_type
18080         * src/coding.c (coding_inherit_eol_type): Check the validity of
18081         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
18082         (Bug#21602)
18084 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18086         More validatation of coding system in 'write-region'
18088         * src/coding.c (choose_write_coding_system): More validation of
18089         coding-system from various sources.  Suggested by Andreas Schwab
18090         <schwab@linux-m68k.org>.  (Bug#21602)
18092 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
18094         Avoid crashes due to invalid coding-system
18096         * src/fileio.c (choose_write_coding_system)
18097         (Finsert_file_contents): Check validity of coding-system-for-write
18098         and coding-system-for-read bound by the caller.  (Bug#21602)
18100 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
18102         Adapt to new prettify-symbols-unprettify-at-point default
18104         * etc/NEWS: Mention that unprettication of symbol at point is off
18105         by default.
18107 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
18109         Revert my two recent process.c changes
18111         Revert "Improve last commit to process.c" and "Remove callback-handled
18112         channels from Available set" because they did not fix bug#21313.
18114         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
18115         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
18117 2015-10-02  Markus Triska  <triska@metalevel.at>
18119         * lisp/progmodes/prolog.el: Update and extend operator table.
18120         (prolog-smie-grammar): Add multifile, public etc.
18122 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18124         Allow autogen even when Git is not installed
18126         * autogen.sh: Test ‘git status’ before trying to use Git.
18128 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
18130         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
18131         Adjust lto/lfrom when we have uncommitted changes.
18133 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18135         Fix problems found by clang 3.5.0
18137         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
18138         * src/font.c (font_parse_family_registry):
18139         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
18141 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
18143         * nt/INSTALL: Update instructions for running autogen.sh.
18145         * nt/INSTALL: Point to ezwinports for libXpm binaries.
18147 2015-10-02  Daniel Colascione  <dancol@dancol.org>
18149         Fix winner in cl-lib not loaded case
18151         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
18152         without requiring CL
18154 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
18156         Fix a few problems with directed quotes
18158         This is in response to a problem report by Kaushal Modi in:
18159         http://bugs.gnu.org/21588#25
18160         * lisp/cedet/mode-local.el (describe-mode-local-overload):
18161         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
18162         * lisp/info-xref.el (info-xref-check-all-custom):
18163         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
18164         Prefer directed to undirected single quotes in diagnostics.
18166 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18168         Revert "Attempt to fix slow redisplay caused by last changes"
18170         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
18171         (try_cursor_movement): Don't relax requirements for redisplay
18172         optimizations for the selected frame.  (Bug#21597)
18174         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
18176 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18178         Fix slow redisplay when daemon frame exists
18180         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
18181         when looking for frames that need to be redisplayed.  (Bug#21597)
18183 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18185         Attempt to fix slow redisplay caused by last changes
18187         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
18188         (try_cursor_movement): Relax requirements for redisplay
18189         optimizations for the selected frame.  (Bug#21597)
18191 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
18193         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
18194         Improve doc string.
18196 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
18198         * lisp/minibuffer.el (minibuffer-completion-help):
18199         Set default base-size, in case completion table does not set it.
18201 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18203         Fix GUD display of GDB output with non-ASCII text
18205         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
18206         (gdb-mi-decode): New function.
18207         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
18208         decode octal escapes in GDB output.  (Bug#21572)
18210 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
18212         * nt/INSTALL: Document where to find XPM support files.
18214 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
18216         Un- and re-prettification are not exclusive
18218         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
18219         Re-apply prettification to previous symbol also when unprettifying
18220         next one.
18222 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
18224         Don't unprettify symbol at point by default
18226         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
18227         Default to disabled (nil).
18229 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18231         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
18232         Support unprettifying when point is after a symbol.
18234         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
18236 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
18238         Avoid assertion violations in push_prefix_prop
18240         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
18241         a line that has a line-prefix defined starts with an image.  (Bug#21428)
18243 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
18245         Disable some display optimizations when frames need redisplay
18247         These optimizations were previously disabled by the
18248         windows_or_buffers_changed flag, which now is not set
18249         when only some frames need to be redrawn.
18250         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
18251         'redisplay' flag is set.
18252         (try_window_reusing_current_matrix, try_window_id)
18253         (try_cursor_movement): Disable these optimizations when the
18254         frame's 'redisplay' flag is set.
18256 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
18258         Don't modify buffer by unprettification
18260         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
18261         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
18262         modify buffer when setting/removing custom prettify-symbols-start/end
18263         text properties.  Add them to font-lock-extra-managed-props, too.
18265 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
18267         Try to avoid redisplaying all frames when creating a new one
18269         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
18270         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
18271         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
18272         * src/frame.c (x_set_screen_gamma): Set the specific frame's
18273         `redisplay' bit rather than windows_or_buffers_changed.
18275         * src/window.c (apply_window_adjustment): Remove redundant setting of
18276         windows_or_buffers_changed.
18278         * src/xdisp.c (redisplay_internal): Set the specific frame's
18279         `redisplay' bit rather than update_mode_lines in response to
18280         cursor_type_changed.
18281         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
18282         (AINC): Adjust accordingly.
18284 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
18286         Implement unprettification of symbol at point
18288         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
18289         symbol at point.
18290         (prettify-symbols--current-symbol-bounds): New variable.
18291         (prettify-symbols--post-command-hook): New function.
18292         (prettify-symbols-unprettify-at-point): New defcustom.
18293         (prettify-symbols-mode): Use it.
18294         (prettify-symbols--compose-symbol): Use them.
18296 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18298         * src/macfont.m (mac_font_descriptor_supports_languages):
18299         Regard "zh" as synonym of "zh-Hans".
18301 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18303         Work around crash when displaying etc/HELLO on OS X 10.11
18305         * src/macfont.m (mac_font_get_weight)
18306         (mac_font_descriptor_get_adjusted_weight): New functions.
18307         (macfont_store_descriptor_attributes): Adjust weight.
18309 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
18311         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
18313 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
18315         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
18316         of the columns.
18318 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
18320         Use unar and lsar to handle RAR archives in arc-mode
18322         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
18323         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
18325 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
18327         Clarify :create in auth-source's docs
18329         * lisp/gnus/auth-source.el (auth-source-search):
18330         Clarify :create's meaning.
18332 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
18334         Avoid empty -path arguments in rgrep
18336         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
18337         the list produced according to grep-find-ignored-directories,
18338         before passing it to Find/Grep invocation.  (Bug#21548)
18340 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
18342         Clarify documentation of pos-visible-in-window-p
18344         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
18345         t for POS.  See
18346         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
18347         for the original report.
18349         * doc/lispref/windows.texi (Window Start and End): Clarify the
18350         meaning of t for the POSITION argument of pos-visible-in-window-p.
18352 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18354         * lisp/progmodes/prolog.el: Fix various indentation cases.
18355         (prolog-operator-chars): New const (add \\).
18356         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
18357         (prolog-smie-rules): Add rules according to bug#21526.
18359 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18361         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
18362         (sh-indent-after-continuation): Add new value `always' (bug#17620)
18363         (sh-smie-sh-rules): Remove old handling of continued lines.
18364         (sh-smie--indent-continuation): New function.
18365         (sh-set-shell): Use it.
18367 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18369         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
18370         Remove redundant :group keyword args.
18371         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
18372         Remove variables.
18373         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
18374         turn them into compile-time variables.
18375         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
18376         Add rules for break, continue, return, global, and persistent.
18377         Refine the rule for "until".
18378         (octave-smie--funcall-p, octave-smie--end-index-p)
18379         (octave-smie--in-parens-p): New functions.
18380         (octave-smie-backward-token, octave-smie-forward-token): Use them to
18381         distinguish the "enumeration" function and the "end" index from
18382         their corresponding keywords.
18383         (octave--block-offset-keywords): New constant.
18384         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
18385         parsing.
18386         (octave-reserved-words): Redefine using octave-smie-grammar.
18387         (octave-font-lock-keywords): Use octave-smie--funcall-p and
18388         octave-smie--end-index-p.
18390 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18392         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
18394 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
18396         * nt/INSTALL: Remove references to GTK site.
18397         That site no longer offers Windows downloads.
18399 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
18401         * nt/INSTALL: Add instructions for installing Git.
18403 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
18405         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
18406         use colors.  Suggested by Eli Zaretskii.
18408 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
18410         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
18411         not supporting 256 above colors (bug#21557).
18413 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
18415         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
18417         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
18419 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
18421         Add documentation for seq.el
18423         * doc/lispref/sequences.texi: Add documentation regarding extending
18424         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
18425         seq-do and seq-map.
18427 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
18429         Better documentation for seq-some
18431         * doc/lispref/sequences.texi:
18432         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
18433         guarantee that the returned value is the first non-nil value that
18434         resulted from applying the predicate.
18436 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
18438         * lisp/arc-mode.el: Sharp-quote function arguments.
18440 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
18442         Avoid redisplay error in ediff-regions-wordwise
18444         * lisp/vc/ediff-util.el
18445         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
18446         set before activating it.  (Bug#21567)
18448 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
18450         Another attempt to fix crashes due to prematurely freed faces
18452         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
18453         faces for as long as we might have desired matrices that reference
18454         those faces.  (Bug#21428)
18456 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
18458         Add auctex development list email address
18460 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
18462         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
18464 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
18466         Improve wrapfig package support and caption parsing
18468         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
18469         Correct description string and add wraptable environment.
18470         (reftex-default-context-regexps): Improve caption regexp.
18472 2015-09-28  Anders Lindgren  <andlind@gmail.com>
18474         Respect value of frame_resize_pixelwise when handling fullscreen state
18476         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
18477         setting size increments.
18479 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
18481         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
18483 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
18485         Add prettify-symbols-alist for js-mode
18487         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
18488         (js-mode): Use it.
18490 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
18492         * nt/subdirs.el: File deleted (no longer used).
18494 2015-09-26  Alan Mackenzie  <acm@muc.de>
18496         Fix follow-scroll-up/down, making them replacements for scroll-up/down
18498         1. Allow point to move between follow windows in scroll operations.
18499         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
18500         when EOB was isolated in the last follow window.
18502         * lisp/follow.el (follow-fixed-window): New variable.
18503         (follow-get-scrolled-point): New function.
18504         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
18505         Reformulate the code.  Put `scroll-command' properties on the functions.
18506         Correct minor errors in ...-down's doc string and code.
18507         (follow-calc-win-end): Amend incomplete doc string.  Use
18508         `pos-visible-in-window-p' to check whether EOB is in the window.
18509         (follow-estimate-first-window-start): Correct an off-by-1 error.
18510         (follow-adjust-window): Add handling for explicit scrolling operations.
18512 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
18514         * admin/MAINTAINERS: Add self, plus list some more files
18515         sans maintaners.
18517 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
18519         New DWIM commands for changing letter-case
18521         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
18522         New functions.  (Bug#21501)
18524 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
18526         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
18528 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
18530         Make face realization be more frame-specific
18532         * src/frame.h (struct f): New flag face_change.
18533         * src/xfaces.c (Finternal_make_lisp_face)
18534         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
18535         (update_face_from_frame_parameter): Set the face_change flag only
18536         for the frame whose faces are affected.
18537         * src/xdisp.c (init_iterator): If a frame's face_change flag is
18538         set, free faces only on that frame.
18539         (redisplay_internal): Disable "display optimization 1" if the
18540         frame's face_change flag is set.
18541         (redisplay_window): Don't allow skipping a window's redisplay if
18542         its frame's face_change flag is set.
18543         * src/frame.c (x_set_screen_gamma): Instead of calling
18544         Fclear_face_cache, call clear_face_cache and set
18545         windows_or_buffers_changed to a non-zero value.  This avoids
18546         setting the global face_change flag that triggers face realization
18547         on all frames and thorough redisplay of all of them.
18549         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
18550         clear face cache if the selected frame is a GUI frame.
18552 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
18554         Remove font-latex specific check
18556         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18557         Use syntax-ppss data to identify verbatim contents.
18559 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
18561         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
18562         Fix some false negatives.
18564 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
18566         Reorder Windows version in Emacs manifests
18568         * nt/emacs-x64.manifest:
18569         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
18570         highest.
18572 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
18574         Update Emacs manifest files for Windows 10
18576         * nt/emacs-x86.manifest:
18577         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
18579 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
18581         Avoid non-ASCII decoding errors in C src files
18583         * src/nsterm.m:
18584         * src/lisp.h:
18585         * src/editfns.c:
18586         * src/doprnt.c: Add 'coding' cookies -- these files include
18587         Unicode characters and should be decoded as UTF-8.
18589 2015-09-25  Alan Mackenzie  <acm@muc.de>
18591         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
18593         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
18594         amend to match current modes and functions.
18595         (edebug-set-initial-mode): Uncomment and change from setting a defun's
18596         `edebug-initial-mode''s property to setting the variable
18597         `edebug-initial-mode'.
18598         (top level): Create new binding C-x C-a C-m for
18599         `edebug-set-initial-mode'.
18601         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
18602         `edebug-set-initial-mode' and its new key binding.
18603         (Edebug Options): Mention the new command in the pertinent place.
18605         * etc/NEWS: Write entry for this change.
18607 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
18609         Avoid non-ASCII decoding errors in Texinfo files
18611         * doc/misc/tramp.texi:
18612         * doc/lispref/strings.texi:
18613         * doc/lispref/positions.texi:
18614         * doc/lispref/help.texi:
18615         * doc/lispref/functions.texi:
18616         * doc/lispintro/emacs-lisp-intro.texi:
18617         * doc/emacs/text.texi:
18618         * doc/emacs/modes.texi:
18619         * doc/emacs/mini.texi:
18620         * doc/emacs/display.texi:
18621         * doc/emacs/custom.texi:
18622         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
18623         Unicode characters and should be decoded as UTF-8.
18624         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
18625         apostrophe unnecessarily.
18627 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
18629         Merge from gnulib
18631         This incorporates:
18632         2015-09-25 c-ctype: rewrite to use inline functions
18633         2015-09-24 maint: add coding cookies to non-ASCII sources
18634         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
18635         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
18636         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
18637         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
18638         * lib/set-permissions.c:
18639         Copy from gnulib.
18641 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
18643         Update publicsuffix.txt from upstream
18645         * etc/publicsuffix.txt: Update from
18646         https://publicsuffix.org/list/effective_tld_names.dat
18647         dated 2015-09-24 17:29:21 UTC.
18649 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
18651         Prevent timers from messing up TTY menus
18653         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
18654         the TTY menu is open.  (Bug#21530)
18656 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
18658         No need to mention K&R C in c-mode intro
18660 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
18662         Fix recent bootstrap problems
18664         * src/syntax.c (parse_sexp_propertize): Fix last fix.
18665         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
18666         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
18668 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
18670         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
18672 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
18674         Properly quote nested xml comments (Bug#6267) (Bug#20001)
18676         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
18677         (nxml-mode): Set comment-quote-nested-function.
18679 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
18681         Allow major-modes full control over quoting nested comments
18683         * lisp/newcomment.el (comment-quote-nested-function): New variable.
18684         (comment-quote-nested-default): New function.
18685         (comment-quote-nested): Use `comment-quote-nested-function'.
18687 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
18689         Prefer CALLN in a few more places
18691         * src/macfont.m (macfont_set_family_cache):
18692         * src/nsterm.m (append2):
18693         * src/xterm.c (x_cr_export_frames):
18694         Prefer CALLN to allocating the arg arrays by hand.
18696 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
18698         Adapt file-notify-test02-events test case
18700         * test/automated/file-notify-tests.el (file-notify-test02-events):
18701         Create a new watch for every test.
18703 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
18705         Continue gfilenotify.c implementation of missing parts
18707         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
18708         `gfile-add-watch' call.
18709         (file-notify-rm-watch): Modify `file-notify-descriptors' only
18710         after calling the low level functions.
18712         * src/gfilenotify.c (dir_monitor_callback): Check, whether
18713         event_type is expected.
18714         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
18715         (Fgfile_rm_watch): Fix typo.
18716         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
18718 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
18720         * src/syntax.c (parse_sexp_propertize): Handle spurious
18721         e_property_truncated flag.
18722         (update_syntax_table_forward): Remove invalid assertion.
18724 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
18726         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
18727         space display spec on text-mode terminals, by calling
18728         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
18729         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
18730         test for a GUI frame.
18732 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
18734         Move let-when-compile to lisp-mode.el
18736         This fixes the bootstrapping problem of `let-when-compile' using
18737         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
18739 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18741         * lisp/url/url-http.el (url-http-parse-headers): Do not
18742         automatically include Authorization header in redirect.
18743         (Bug#21350)
18745 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
18747         Clarify documentation of ':relative-width'
18749         * doc/lispref/display.texi (Specified Space): Document that
18750         ':relative-width' is only supported on GUI frames.
18752 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
18754         Fix 'current-column' in presence of :relative-width
18756         * src/indent.c (check_display_width): Support ':relative-width'
18757         in a display spec that specifies a stretch glyph.  (Bug#21533)
18759 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
18761         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
18763         ... to conform better to CONTRIBUTE guidelines.
18765 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
18767         * lisp/progmodes/prolog.el: Fix indentation of empty line
18769         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
18770         `empty-line-token' element.
18771         (smie-indent-empty-line): New function.
18772         (smie-indent-functions): Add it.
18774         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
18775         behavior and use the new `empty-line-token' element (bug#21526).
18776         (prolog-mode-variables): Fix comment-start-skip setting to match
18777         comment-start.
18779         * test/indent/prolog.prolog: Add nested indentation tests.
18781         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
18782         comment-start-skip not to misuse submatch 1.
18784 2015-09-22  Alan Mackenzie  <acm@muc.de>
18786         Make description of `edebug-initial-mode' user friendly
18788         Fixes bug#21365.
18790         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
18791         description of `edebug-initial-mode' from that of its implementation
18792         to that of its visual effect and use.  Move the paragraph higher up.
18794 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
18796         lisp/progmodes/gud.el (gud-format-command): Fix last commit
18798         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
18799         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
18801 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
18803         Improve last commit to process.c
18805 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
18807         Implement gfile-valid-p
18809         * lisp/filenotify.el (file-notify-callback): Fix typo.
18810         (gfile-valid-p): Remove defalias.
18812         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
18813         the file or directory to be watched is deleted.
18814         (Fgfile_add_watch): Make watch_object a triple.
18815         (Fgfile_rm_watch): Check, whether watch is cancelled already.
18816         (Fgfile_valid_p): New defun.
18817         (syms_of_gfilenotify): Declare Sgfile_valid_p.
18819 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
18821         Remove callback-handled channels from Available set
18823         * src/process.c (wait_reading_process_output): Remove channel from
18824         Available set if it is handled by a callback, e.g., dbus or
18825         inotify (bug#21313).
18827 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
18829         Use lunate epsilon for TeX \epsilon
18831         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
18832         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
18833         \epsilon to use GREEK LUNATE EPSILON SYMBOL
18835 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
18837         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
18839         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
18840         rather than outermost paren (bug#21526).
18842 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
18844         Improve git diff hunk headers for .el, .texi
18846         Problem reported by Alan Mackenzie in:
18847         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
18848         * .gitattributes (*.el, *.texi): New patterns.
18849         * autogen.sh: Configure diff.elisp.xfuncname and
18850         diff.texinfo.xfuncname if using Git.
18852 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
18854         Don't rely on defaults in decoding UTF-8 encoded Lisp files
18856         * lisp/replace.el:
18857         * lisp/textmodes/rst.el:
18858         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
18860 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
18862         Clarify or replace a few \u escapes
18864         * doc/lispref/nonascii.texi (Character Properties)
18865         More-detailed commentary for \u escapes.
18866         * lisp/progmodes/python.el (python--prettify-symbols-alist):
18867         * lisp/replace.el (query-replace-from-to-separator):
18868         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
18869         (rst-mode-syntax-table):
18870         * lisp/whitespace.el (whitespace-display-mappings):
18871         Prefer actual character to \u escape when this makes the code
18872         easier to follow in the usual case where Unicode chars can be
18873         displayed.
18875 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
18877         Pacify GCC -Wmaybe-uninitialized in xdisp.c
18879         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
18880         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
18881         charpos.  The loop should always execute at least once anyway.
18883 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
18885         Signal error on invalid regexp
18887         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
18888         Signal an error when the user tries searching with a regexp
18889         matching the empty string.
18891 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
18893         Another fix of file-notify-tests for w32notify
18895         * test/automated/file-notify-tests.el (file-notify-test02-events):
18896         Further adaptation for w32notify: reduce the number of expected
18897         'changed' events.  (Bug#21435)
18899 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
18901         Adapt tests and manual for w32notify
18903         * doc/lispref/os.texi (File Notifications): w32notify does not
18904         send `attribute-changed' events.
18906         * test/automated/file-notify-tests.el (file-notify--test-with-events):
18907         Simplify parameters.  Adapt all callees.
18908         (file-notify-test02-events): w32notify does not send
18909         `attribute-changed' events.
18910         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
18911         Do not skip in case of w32notify.  Simply ignore this part of the test.
18913 2015-09-21  Dima Kogan  <dima@secretsauce.net>
18915         Fix setting breakpoints when remote-debugging
18917         * lisp/progmodes/gud.el (gud-format-command): Send localized file
18918         names to the debugger running on the remote.  (Bug#13304)
18920 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
18922         Better docstring and parameter name for seq-find
18924         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
18925         the parameter `sentinel' to `default'.
18927         * doc/lispref/sequences.texi (Sequence Functions): Update the
18928           documentation for `seq-find' accordingly.
18930 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
18932         Avoid infinite recursion while displaying box face
18934         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
18935         the previous string/buffer character position under bidi
18936         iteration.  (Bug#21428)
18938 2015-09-21  Anders Lindgren  <andlind@gmail.com>
18940         Keep upper edge unchanged when changing size of NS frame
18942         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
18943         (Bug#21415).
18945 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
18947         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
18948         (prolog-smie-rules): Accommodate standard if/then/else special
18949         indentation.
18950         (prolog-mode): Add . to electric-indent-chars.
18951         (prolog-electric--if-then-else): Re-indent the line before adding space
18952         after the new char (bug#21526).
18954 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
18956         Add prettify symbols to python-mode
18958         * lisp/progmodes/python.el (python-prettify-symbols-alist):
18959         New variable.
18960         (python-mode): Use it
18962 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
18964         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
18966 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
18968         (compilation-error-regexp-alist-alist): Tone down guile-file
18970         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
18971         Make guile-file a bit less enthusiastic (bug#21496).
18973 2015-09-20  Drew Csillag  <drew@thecsillags.com>
18975         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
18976         Fix m4_* highlighting.
18978         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
18979         of commands when they have a "m4_" prefix.
18981 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
18983         '.' -> `.' in doc string
18985         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
18986         individual chars with grave quotes instead of straight quotes, as
18987         this works better when they are translated to curved quotes.
18989 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
18991         Improve file notifications, especially for Tramp
18993         * doc/lispref/files.texi (Magic File Names):
18994         Mention `file-notify-valid-p'.
18996         * doc/lispref/os.texi (File Notifications):
18997         Describe `file-notify-valid-p'.
18999         * etc/NEWS: Add `file-notify-valid-p'.
19001         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
19002         Improve implementation.
19003         (tramp-gvfs-monitor-file-process-filter): Rename from
19004         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
19005         process if appropriate.
19007         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
19008         Improve implementation.
19009         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
19010         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
19011         if appropriate.
19012         (tramp-sh-inotifywait-process-filter): Rename from
19013         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
19014         appropriate.
19016         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
19017         Use `delete-process'.
19018         (tramp-handle-file-notify-valid-p): Check also, that file or
19019         directory to be watched still exists.
19021         * test/automated/file-notify-tests.el (file-notify--test-timeout):
19022         New defun.  Use it at all places a timeout is needed.
19023         (file-notify--test-cleanup): Delete directories recursively.
19024         Cleanup also Tramp connections.
19025         (file-notify-test02-events): Add tests for `attribute-change'.
19026         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19027         Add tests for `file-notify-rm-watch'.
19029 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
19031         Use %s to format strings instead of splicing them
19033         If FOO might contain quotes that are part of a file or variable
19034         name, the quotes should not be translated when showing FOO’s name
19035         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
19036         is not quite right, as it would translate FOO’s quotes.
19037         Change it to (message "%s: bar" FOO) instead.
19038         * lisp/allout.el (allout-process-exposed):
19039         * lisp/calc/calc-ext.el (calc-do-prefix-help):
19040         * lisp/calc/calc-store.el (calc-store-into):
19041         * lisp/calendar/todo-mode.el (todo-category-completions):
19042         * lisp/cedet/semantic/complete.el (semantic-completion-message):
19043         * lisp/org/ob-latex.el (convert-pdf):
19044         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
19045         * lisp/org/ox-latex.el (org-latex-compile):
19046         * lisp/org/ox-man.el (org-man-compile):
19047         * lisp/org/ox-odt.el (org-odt--export-wrap):
19048         * lisp/org/ox-texinfo.el (org-texinfo-compile):
19049         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
19050         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
19051         (verilog-signals-combine-bus, verilog-read-defines)
19052         (verilog-getopt-file, verilog-expand-dirnames)
19053         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
19054         * lisp/term/ns-win.el (ns-spi-service-call):
19055         Use %s to avoid translating quotes of file names etc. in diagnostics.
19057 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19059         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
19060         (js-mode): Don't set syntax-begin-function.
19062 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
19064         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
19065         syntax-begin-function is a symbol.
19067 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
19069         Improve documentation of 'run-at-time'
19070         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
19071         In particular, don't refer to 'diary-entry-time', because it is
19072         unavailable until diary-lib is loaded.  Also, refer to
19073         'timer-duration-words', not 'timer-duration', as the latter's doc
19074         string says nothing about the accepted strings.
19076 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
19078         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
19080 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
19082         Repair pdbtrack remote file tracking
19083         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
19084         Rectify pdbtrack so it follows transitions from one remote source
19085         file to the next.
19087 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
19089         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
19091 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
19093         Adapt vc-src to the old-new vc-checkin API
19094         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
19095         additional optional parameter.
19097 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
19099         Add overflow module to CSS property list
19100         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
19101         from CSS Overflow Module Level 3.
19103 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
19105         Fix documentation of "C-u C-x v v"
19106         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
19107         documentation of "C-u C-x v v" match what the code does.
19109         Resurrect the ability to specify a revision in vc-next-action
19110         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
19111         * lisp/vc/vc-dav.el (vc-dav-checkin):
19112         * lisp/vc/vc-git.el (vc-git-checkin):
19113         * lisp/vc/vc-hg.el (vc-hg-checkin):
19114         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
19115         an additional optional argument, the revision to checkin.
19116         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
19117         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
19118         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
19119         a revision to checkin.
19120         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
19121         revision when checking in files.
19122         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
19123         for the details.
19125 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
19127         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
19128         (verilog-decls-princ, verilog-modport-princ)
19129         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
19131 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
19133         Fix the routine for help on Calc's prefixes
19134         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
19135         (calc-do-prefix-help): Use `read-char' to determine the next Calc
19136         command.
19138 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
19140         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
19141         (font-lock-fontify-block): Don't let-bind it.
19142         (font-lock-compile-keywords): Don't use it.
19143         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
19144         start one slot earlier, instead.
19145         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
19146         Don't declare.
19147         (syntax-ppss): Don't use it either.
19148         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
19149         from docstring.
19150         * doc/emacs/display.texi (Font Lock): Don't mention
19151         font-lock-beginning-of-syntax-function.
19152         * doc/lispref/modes.texi (Font Lock Basics): Update description of
19153         font-lock-defaults.
19154         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
19155         * lisp/loadhist.el (unload-feature-special-hooks):
19156         Remove font-lock-beginning-of-syntax-function.
19157         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
19158         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
19159         font-lock-beginning-of-syntax-function.
19161 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
19163         Backslash cleanup in Elisp source files
19164         This patch should not change behavior.  It typically omits backslashes
19165         where they are redundant (e.g., in the string literal "^\$").
19166         In a few places, insert backslashes where they make regular
19167         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
19168         "^\\*", which has the same effect as a regular expression.
19169         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
19170         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
19171         RCS IDs, as that makes it clearer that the backslash is intended.
19173         Some more minor backslash fixes
19174         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
19175         * test/automated/info-xref.el (info-xref-test-write-file):
19176         Double backslashes in strings.
19178         Fix several backslash typos in Elisp strings
19179         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
19180         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
19181         (todo-reset-done-string, todo-reset-comment-string)
19182         (todo-reset-highlight-item):
19183         * lisp/erc/erc-networks.el (erc-networks-alist):
19184         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
19185         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
19186         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
19187         (nntp-telnet-shell-prompt):
19188         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
19189         * lisp/image-dired.el (image-dired-rotate-original):
19190         (image-dired-get-exif-file-name):
19191         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
19192         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
19193         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
19194         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
19195         * lisp/net/shr-color.el (shr-color->hexadecimal):
19196         * lisp/org/org-bibtex.el (org-bibtex-fields):
19197         * lisp/org/org-docview.el (org-docview-export):
19198         * lisp/org/org-entities.el (org-entities):
19199         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
19200         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
19201         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
19202         (ebnf-style-database):
19203         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
19204         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
19205         * lisp/progmodes/sql.el (sql-product-alist):
19206         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
19207         (verilog-error-font-lock-keywords)
19208         (verilog-assignment-operator-re):
19209         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
19210         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
19211         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
19212         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
19213         For example, to get the regular expression ‘\.’ use the string
19214         literal "\\.", not "\." (which is equivalent to ".").
19215         * lisp/emulation/viper-util.el (viper-glob-unix-files):
19216         Remove stray ‘\j’ from string.
19217         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
19218         (nntp-telnet-shell-prompt):
19219         Treat > like $ when matching a shell prompt.
19220         * lisp/progmodes/make-mode.el (makefile-browse):
19221         Properly quote a diagnostic.
19223         Fix minor quoting problems in diagnostics
19224         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
19225         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
19226         Follow text-quoting-style in diagnostic, and quote a file name.
19228 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
19230         * doc/lispref/frames.texi (Cursor Parameters):
19231         Document 'x-stretch-cursor'.
19233 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
19235         Omit unnecessary \ before paren in C docstrings
19236         Although \( is needed in docstrings in Elisp code, it is not needed in
19237         docstrings in C code, since C function definitiions do not start with
19238         a parenthesis.  The backslashes made the docstrings a bit harder to
19239         read and to format in columns.  Also, some C docstrings had ( in
19240         column 1 and this did not appear to be causing any problems.  So,
19241         simplify C docstrings by replacing \( with ( and \) with ).
19243         A few more minor quoting fixes in a script and a text file
19245         Minor quoting fixes in scripts and doc
19246         Prefer straight quotes in random script files, as they are not
19247         converted.  Prefer grave quotes in a couple of places in the manual
19248         that were missed earlier, as these quotes are converted.
19250         Minor backslash fixes in manuals and scripts
19251         * Makefile.in (install-arch-indep):
19252         * admin/charsets/compact.awk:
19253         * admin/charsets/gb180302.awk (gb_to_index):
19254         * admin/charsets/gb180304.awk (gb_to_index):
19255         Avoid undefined behavior in Awk regular expression backslashes.
19256         * doc/misc/efaq.texi (Matching parentheses):
19257         Omit unnecessary backslashes.
19258         * doc/misc/gnus-faq.texi (FAQ 5-8):
19259         Avoid undefined behavior in suggested sed backslash usage.
19261         Add -Wswitch to --enable-gcc-warnings
19262         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
19263         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
19264         * lib-src/etags.c (main, consider_token, C_entries):
19265         * src/coding.c (encode_invocation_designation):
19266         * src/data.c (Ftype_of):
19267         * src/eval.c (Fdefvaralias, default_toplevel_binding)
19268         (Fbacktrace__locals, mark_specpdl):
19269         * src/lisp.h (record_xmalloc):
19270         * src/syntax.c (scan_lists, scan_sexps_forward):
19271         * src/window.c (window_relative_x_coord):
19272         * src/xdisp.c (push_it, pop_it):
19273         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
19274         Error out or do nothing (as appropriate) if a switch statement
19275         with an enum value does not cover all of the enum.
19276         * src/dispextern.h (struct iterator_stack_entry.u.comp):
19277         Remove unused member discovered by using -Wswitch.
19278         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
19279         * src/vm-limit.c (check_memory_limits):
19280         Simplify warning-diagnostic computation by using a table.
19282         etags ‘fatal’ function is now printf-like
19283         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
19284         Also, now static; not clear why it needed to be extern.
19285         (verror): New function, with most of the old contents of ‘error’.
19286         (fatal, error): Use it.
19288 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
19290         More adaptations in file-notify-tests.el
19291         * test/automated/file-notify-tests.el
19292         (file-notify-test05-dir-validity): Skip for w32notify in
19293         batch-mode.  (Bug#21432)
19295 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
19297         Adapt test in file-notify-tests.el
19298         * test/automated/file-notify-tests.el
19299         (file-notify-test04-file-validity): Skip for w32notify in
19300         batch-mode.  Add test lost last commit.
19302 2015-09-16  Dima Kogan  <dima@secretsauce.net>
19304         winner no longer holds on to dead frames
19305         * lisp/winner.el (winner-change-fun): Cull dead frames.
19306         This prevents a potentially massive memory leak.  See:
19307         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
19309 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
19311         Use common report_file_notify_error function
19312         * src/fileio.c (report_file_notify_error): New function.
19313         * src/inotify.c (report_inotify_error): Remove function.
19314         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
19315         (Finotify_rm_watch): Use report_file_notify_error.
19316         * src/lisp.h (report_file_notify_error): Declare external function.
19317         * src/w32notify.c (report_w32notify_error): Remove function.
19318         (Fw32notify_add_watch, Fw32notify_rm_watch):
19319         Use report_file_notify_error.
19321 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
19323         Fix documentation.
19324         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
19325         the documentation of the root mean square.
19327 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
19329         Remove tool_bar_redisplayed_once and associated code.
19330         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
19331         * src/frame.c (make_frame, x_set_font): Remove initialization of
19332         f->tool_bar_redisplayed_once.
19333         * src/w32fns.c (x_change_tool_bar_height):
19334         * src/xfns.c (x_change_tool_bar_height): Don't check for
19335         f->tool_bar_redisplayed_once.
19336         * src/xdisp.c (redisplay_internal): Remove handling of
19337         f->tool_bar_redisplayed_once.
19339 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
19341         Restore some of the quoting in the manuals
19342         * doc/lispref/windows.texi (Coordinates and Windows)
19343         (Coordinates and Windows):
19344         * doc/lispref/variables.texi (Lexical Binding)
19345         (File Local Variables):
19346         * doc/lispref/text.texi (Format Properties):
19347         * doc/lispref/symbols.texi (Symbol Components):
19348         * doc/lispref/strings.texi (Creating Strings):
19349         * doc/lispref/sequences.texi (Sequence Functions):
19350         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
19351         (Search and Replace):
19352         * doc/lispref/processes.texi (Bindat Spec):
19353         * doc/lispref/os.texi (Idle Timers):
19354         * doc/lispref/objects.texi (Basic Char Syntax):
19355         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
19356         * doc/lispref/nonascii.texi (Character Properties):
19357         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
19358         (Mode Line Variables):
19359         * doc/lispref/minibuf.texi (Text from Minibuffer):
19360         * doc/lispref/loading.texi (Autoload):
19361         * doc/lispref/keymaps.texi (Controlling Active Maps):
19362         * doc/lispref/frames.texi (Frame Layout, Size and Position)
19363         (Size Parameters, Implied Frame Resizing):
19364         * doc/lispref/files.texi (Changing Files, Magic File Names):
19365         * doc/lispref/eval.texi (Self-Evaluating Forms):
19366         * doc/lispref/display.texi (Progress, Abstract Display)
19367         (Abstract Display Example, Bidirectional Display):
19368         * doc/lispref/commands.texi (Event Mod):
19369         * doc/emacs/windows.texi (Displaying Buffers):
19370         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
19371         * doc/emacs/text.texi (Enriched Text):
19372         * doc/emacs/programs.texi (MixedCase Words):
19373         * doc/emacs/picture-xtra.texi (Insert in Picture)
19374         (Tabs in Picture):
19375         * doc/emacs/misc.texi (Emacs Server, Printing):
19376         * doc/emacs/mini.texi (Minibuffer History):
19377         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
19378         (Pulling / Pushing):
19379         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
19380         * doc/emacs/help.texi (Help, Help Echo):
19381         * doc/emacs/glossary.texi (Glossary):
19382         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
19383         (Frame Commands):
19384         * doc/emacs/files.texi (Reverting, Saving, Directories):
19385         * doc/emacs/entering.texi (Exiting):
19386         * doc/emacs/emacs.texi (Top):
19387         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
19388         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
19389         appropriate or replace quoting with @dfn.
19390         * doc/misc/ediff.texi (Window and Frame Configuration):
19391         * doc/lispref/processes.texi (Network Feature Testing):
19392         * doc/lispref/display.texi (Display Margins): Quote the phrase
19393         after "a.k.a." where appropriate.
19395 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
19397         Clarify reftex-extra-bindings docs
19398         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
19399         * doc/misc/reftex.texi (Key Bindings): Document that the variable
19400         only has an effect at load-time.
19402 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
19404         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
19405         search argument.  (Bug#21492) (Bug#21493)
19407 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
19409         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
19410         Add pretty symbols for \qquad and \varrho.
19412 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
19414         Add new functions for the root mean square of a (Calc) vector
19415         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
19416         New functions.
19417         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
19418         `calc-vector-rms', add autoloads for `calc-vector-rms' and
19419         `calcFunc-rms'.
19420         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
19421         `calcFunc-rms'.
19422         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
19423         `calc-vector-rms'.
19424         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
19425         command.
19427 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
19429         Add monotone EDE generic project
19430         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
19431         Add monotone generic project.
19433         Revert premature commit
19434         * doc/lispref/files.texi: Revert premature commit of change to
19435         file-name-all-completions.
19437         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
19438         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
19439         with cl-generic defaults.
19440         (elisp--xref-find-references): Add doc string.
19441         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
19442         tests to find bug.
19444         Fix bugs in eieio-oref-default related to class symbols
19445         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
19446         (eieio-oref-default): Handle class properly.
19448 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19450         Quote “fullboth” when defining it
19451         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
19452         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
19454 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
19456         Minor doc fix in emacs/ack.texi
19457         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
19458         first argument.
19460 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
19462         Adapt tests in auto-revert-tests.el
19463         * test/automated/auto-revert-tests.el (auto-revert--timeout):
19464         Make it a defconst.
19465         (auto-revert--wait-for-revert): New defun.
19466         (auto-revert-test00-auto-revert-mode)
19467         (auto-revert-test01-auto-revert-tail-mode)
19468         (auto-revert-test02-auto-revert-mode-dired): Use it.
19470 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
19472         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
19473         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
19474         (cl-lib-fdefs): Add defgeneric.
19475         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
19476         (eieio-kw, cl-lib-kw, el-kw): Remove.
19478 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19480         Quote less in manuals
19481         The manuals often used quotes ``...'' when it is better to use @dfn or
19482         @code or capitalized words or no quoting at all.  For example, there is
19483         no need for the `` and '' in “if a variable has one effect for
19484         @code{nil} values and another effect for ``non-@code{nil}'' values”.
19485         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
19486         unnecessary quoting like this, and to use @dfn etc. instead when called
19487         for (Bug#21472).
19489 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
19491         * lisp/custom.el (load-theme): Only compute hash when needed.
19493 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
19495         Pacify --enable-gcc-warnings
19496         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
19498 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
19500         Improve error reports in inotify.c
19501         * src/inotify.c (report_inotify_error): New function.  Clone of
19502         report_w32notify_error.
19503         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
19504         (Finotify_rm_watch): Use it.
19506 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
19508         Fix the file-notify tests for watch validation on w32
19509         * test/automated/file-notify-tests.el
19510         (file-notify-test04-file-validity): Move the directory deletion
19511         out of the file-notify--test-with-events macro.
19512         (file-notify-test04-file-validity)
19513         (file-notify-test05-dir-validity): Enlarge the timeout of
19514         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
19516 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
19518         Use OPEN BOX instead of space for \quad.
19519         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
19520         character for \quad instead of a space.
19522 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
19524         Add missing *.pbm images
19525         * etc/images/connect.pbm: New file.
19526         * etc/images/custom/down-pushed.pbm: New file.
19527         * etc/images/custom/down.pbm: New file.
19528         * etc/images/custom/right-pushed.pbm: New file.
19529         * etc/images/custom/right.pbm: New file.
19530         * etc/images/describe.pbm: New file.
19531         * etc/images/disconnect.pbm: New file.
19532         * etc/images/ezimage/bits.pbm: New file.
19533         * etc/images/ezimage/bitsbang.pbm: New file.
19534         * etc/images/ezimage/box-minus.pbm: New file.
19535         * etc/images/ezimage/box-plus.pbm: New file.
19536         * etc/images/ezimage/box.pbm: New file.
19537         * etc/images/ezimage/checkmark.pbm: New file.
19538         * etc/images/ezimage/dir-minus.pbm: New file.
19539         * etc/images/ezimage/dir-plus.pbm: New file.
19540         * etc/images/ezimage/dir.pbm: New file.
19541         * etc/images/ezimage/doc-minus.pbm: New file.
19542         * etc/images/ezimage/doc-plus.pbm: New file.
19543         * etc/images/ezimage/doc.pbm: New file.
19544         * etc/images/ezimage/info.pbm: New file.
19545         * etc/images/ezimage/key.pbm: New file.
19546         * etc/images/ezimage/label.pbm: New file.
19547         * etc/images/ezimage/lock.pbm: New file.
19548         * etc/images/ezimage/mail.pbm: New file.
19549         * etc/images/ezimage/page-minus.pbm: New file.
19550         * etc/images/ezimage/page-plus.pbm: New file.
19551         * etc/images/ezimage/page.pbm: New file.
19552         * etc/images/ezimage/tag-gt.pbm: New file.
19553         * etc/images/ezimage/tag-minus.pbm: New file.
19554         * etc/images/ezimage/tag-plus.pbm: New file.
19555         * etc/images/ezimage/tag-type.pbm: New file.
19556         * etc/images/ezimage/tag-v.pbm: New file.
19557         * etc/images/ezimage/tag.pbm: New file.
19558         * etc/images/ezimage/unlock.pbm: New file.
19559         * etc/images/gnus/important.pbm: New file.
19560         * etc/images/gnus/mail-send.pbm: New file.
19561         * etc/images/gnus/receipt.pbm: New file.
19562         * etc/images/gnus/toggle-subscription.pbm: New file.
19563         * etc/images/gnus/unimportant.pbm: New file.
19564         * etc/images/gud/all.pbm: New file.
19565         * etc/images/gud/rcont.pbm: New file.
19566         * etc/images/gud/recstart.pbm: New file.
19567         * etc/images/gud/recstop.pbm: New file.
19568         * etc/images/gud/rfinish.pbm: New file.
19569         * etc/images/gud/rnext.pbm: New file.
19570         * etc/images/gud/rnexti.pbm: New file.
19571         * etc/images/gud/rstep.pbm: New file.
19572         * etc/images/gud/rstepi.pbm: New file.
19573         * etc/images/gud/thread.pbm: New file.
19574         * etc/images/lock-broken.pbm: New file.
19575         * etc/images/lock-ok.pbm: New file.
19576         * etc/images/lock.pbm: New file.
19577         * etc/images/mail/copy.pbm: New file.
19578         * etc/images/mail/forward.pbm: New file.
19579         * etc/images/mail/not-spam.pbm: New file.
19580         * etc/images/mail/outbox.pbm: New file.
19581         * etc/images/mail/preview.pbm: New file.
19582         * etc/images/mail/save-draft.pbm: New file.
19583         * etc/images/mh-logo.pbm: New file.
19584         * etc/images/mpc/add.pbm: New file.
19585         * etc/images/mpc/ffwd.pbm: New file.
19586         * etc/images/mpc/next.pbm: New file.
19587         * etc/images/mpc/pause.pbm: New file.
19588         * etc/images/mpc/play.pbm: New file.
19589         * etc/images/mpc/prev.pbm: New file.
19590         * etc/images/mpc/rewind.pbm: New file.
19591         * etc/images/mpc/stop.pbm: New file.
19592         * etc/images/redo.pbm: New file.
19593         * etc/images/smilies/braindamaged.pbm: New file.
19594         * etc/images/smilies/cry.pbm: New file.
19595         * etc/images/smilies/dead.pbm: New file.
19596         * etc/images/smilies/evil.pbm: New file.
19597         * etc/images/smilies/forced.pbm: New file.
19598         * etc/images/smilies/grin.pbm: New file.
19599         * etc/images/smilies/indifferent.pbm: New file.
19600         * etc/images/sort-ascending.pbm: New file.
19601         * etc/images/sort-column-ascending.pbm: New file.
19602         * etc/images/sort-criteria.pbm: New file.
19603         * etc/images/sort-descending.pbm: New file.
19604         * etc/images/sort-row-ascending.pbm: New file.
19605         * etc/images/unchecked.pbm: New file.
19606         * etc/images/zoom-in.pbm: New file.
19607         * etc/images/README: Update instructions for PBM files.
19609         Add separator.pbm tool-bar image
19610         * etc/images/separator.pbm: New file.  Having it avoids the side
19611         effect of changing the tool-bar height when the default font's size
19612         changes and XPM image support is not available, due to the SPC
19613         characters that are left in the Lisp string used to display the tool
19614         bar, because there are no images to display instead of those SPC
19615         characters.
19617         Make show-paren-match face visible on mono-color displays
19618         * lisp/faces.el (show-paren-match): Use the underline face for
19619         mono-color displays.  (Bug#21481)
19621 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
19623         Don’t double-encode non-ASCII mail clipboard
19624         * lisp/mail/mailclient.el (mailclient-send-it):
19625         Also fix the case when mailclient-place-body-on-clipboard-flag
19626         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
19628 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
19630         Adapt file-notify-tests.el test cases
19631         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
19632         * src/inotify.c (Finotify_valid_p): Adapt docstring.
19633         * test/automated/file-notify-tests.el
19634         (file-notify-test03-autorevert)
19635         (file-notify-test04-file-validity)
19636         (file-notify-test04-file-validity-remote)
19637         (file-notify-test05-dir-validity)
19638         (file-notify-test05-dir-validity-remote): Adapt docstring.
19639         (file-notify-test04-file-validity): Let events arrive before
19640         calling final `file-notify-valid-p'.  Do not ignore errors.
19641         (file-notify-test05-dir-validity): Do not manipulate
19642         `temporary-file-directory', it isn't necessary.  Let events arrive
19643         before calling final `file-notify-valid-p'.  Do not ignore errors.
19645 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
19647         Don’t double-encode non-ASCII for mail client
19648         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
19649         Use RFC 6068’s list of unreserved characters.
19650         (mailclient-send-it): When encoding the body as a URL,
19651         first decode it as per Content-Type: and Content-Transfer-Encoding:,
19652         as URLs must use percent-encoded UTF-8 (Bug#21471).
19653         * doc/misc/url.texi (mailto): Update RFC number.
19655 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
19657         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
19659 2015-09-14  Alan Mackenzie  <acm@muc.de>
19661         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
19662         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
19663         `cadr/car'.
19665 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
19667         Clarify documentation of char-table extra slots
19668         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
19669         slot numbers are zero-based.  (Bug#21467)
19671 2015-09-14  Alan Mackenzie  <acm@muc.de>
19673         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
19674         Fixes bug#21449.
19675         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
19676         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
19677         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
19678         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
19679         Insert "\\|\\\\." into regexps which match symbols.
19681 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
19683         Improve the doc string of w32notify-valid-p
19684         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
19685         that removing a watch makes its object invalid.
19687 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
19689         Fix tests for file-notify-valid-p
19690         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
19691         Use delete-directory to delete file-notify--test-tmpfile if it is
19692         a directory.  Likewise for file-notify--test-tmpfile1.
19693         (file-notify-test04-file-validity)
19694         (file-notify-test05-dir-validity): Delete the parent directory of
19695         the test.  Ignore errors when cleaning up after the test.
19697 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
19699         Report file-notify-error in w32notify.c
19700         * src/w32notify.c (report_w32notify_error): New function.
19701         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
19702         errors, instead of calling report_file_error.  (Bug#21432)
19704         Implement w32notify-valid-p
19705         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
19706         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
19707         'identity'.
19709 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
19711         Test file-notify-valid-p
19712         * test/automated/file-notify-tests.el
19713         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
19714         New tests.
19716 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
19718         Fix markup in ELisp manual
19719         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
19720         of the 'alpha' parameter value.  (Bug#21470)
19722 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
19724         Introduce `file-notify-valid-p'
19725         * lisp/filenotify.el (file-notify-valid-p): New defun.
19726         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
19727         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
19728         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
19729         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
19730         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
19731         <file-notify-valid-p>: Add handler.
19732         * lisp/net/tramp.el (tramp-file-name-for-operation):
19733         Add `file-notify-valid-p'.
19734         (tramp-handle-file-notify-valid-p): New defun.
19735         * src/inotify.c (Finotify_valid_p): New defun.
19736         (syms_of_inotify): Declare Sinotify_valid_p.
19738 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
19740         Port Unicode char detection to FreeBSD+svgalib
19741         Problem reported by Ashish SHUKLA in:
19742         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
19743         * configure.ac: Check for struct unipair.unicode instead of for
19744         <linux/kd.h>, since that’s more specific to what the code
19745         actually needs.
19746         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
19748         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
19750 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
19752         Fix vertical cursor motion across overlay strings with newlines
19753         * src/indent.c (Fvertical_motion): Don't leave point in the middle
19754         of an overlay string with newlines, as that will position the
19755         cursor after the string at whatever column is there.  (Bug#21468)
19757 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
19759         Fix tests in file-notify-tests.el
19760         * test/automated/file-notify-tests.el: Remove Tramp declarations.
19761         (file-notify-test00-availability): Print remote command w/o Tramp
19762         internal functions.
19763         (file-notify-test02-events, file-notify-test02-events-remote):
19764         Adapt docstring.
19765         (file-notify-test03-autorevert): Use `format-message' when
19766         inspecting *Messages* buffer.
19768 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
19770         Bind inhibit-modification-hooks rather than a/b-c-f
19771         * lisp/wid-edit.el (widget-editable-list-insert-before)
19772         (widget-editable-list-delete-at):
19773         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
19774         (cperl-font-lock-unfontify-region-function):
19775         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
19776         * lisp/obsolete/longlines.el (longlines-mode):
19777         * lisp/obsolete/fast-lock.el (save-buffer-state):
19778         * lisp/mouse.el (mouse-save-then-kill-delete-region):
19779         * lisp/gnus/message.el (message-hide-headers):
19780         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
19781         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
19782         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
19783         than after/before-change-functions to nil.
19785 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
19787         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
19788         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
19789         the buffers, even if the forced redisplay is interrupted.
19791         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
19793         Merge syntax-propertize--done and parse-sexp-propertize-done
19794         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
19795         (syntax-propertize): Set syntax-propertize--done even if
19796         syntax-propertize-function is nil.  Avoid recursive invocations.
19797         (syntax-propertize-chunks): New var.
19798         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
19799         Simplify.
19800         (parse-sexp-propertize-function): Don't set any more.
19801         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
19802         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
19803         Call Qinternal__syntax_propertize instead of
19804         Vparse_sexp_propertize_function.  Truncate e_property if needed.
19805         (update_syntax_table_forward): Streamline.
19806         (syms_of_syntax): Define Qinternal__syntax_propertize.
19807         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
19809 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
19811         Prefer straight quoting in some text files
19812         Mostly this just changes ` to ' in static text.  Some exceptions:
19813         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
19814         typically does that now.
19815         * admin/quick-install-emacs (TRY, top level):
19816         Use straight quoting in diagnostics.
19817         * src/README: Fix working-directory confusion.
19819         * CONTRIBUTE: Move send-email here from git-workflow.
19821 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
19823         Improve file notifications in Tramp
19824         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
19825         Set proper events to watch for.
19826         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
19827         watched events.
19829 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
19831         Fix NS build with --enable-checking='glyphs'
19832         * src/nsfns.m (unwind_create_frame): Make the preprocessor
19833         conditionals for referencing 'dpyinfo' consistent throughout the
19834         function.  (Bug#21426)
19836 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
19838         Add seq-find
19839         This function is similar to `seq-some' but returns the found element.
19840         In the cases where nil can be the found element, a sentinel optional
19841         argument can be provided to avoid ambiguities.
19842         * lisp/emacs-lisp/seq.el (seq-find): New function.
19843         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
19844         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
19845         seq-find.
19847 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
19849         Document file-notify--test-with-events.
19850         * test/automated/file-notify-tests.el (file-notify--test-with-events):
19851         Add docstring.
19853 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
19855         Report used native library in file-notify-tests.el
19856         * test/automated/file-notify-tests.el
19857         (tramp-get-remote-gvfs-monitor-dir)
19858         (tramp-get-remote-inotifywait): Declare them.
19859         (file-notify-test00-availability): Print used native library.
19861 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
19863         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
19864         (mpc-file-local-copy): Check for absolute path.  Check more config
19865         locations.
19867 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
19869         Improve documentation of categories
19870         * doc/lispref/syntax.texi (Categories): Clarify the example of
19871         using define-category and modify-category-entry.  (Bug#21448)
19873 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
19875         Revert some stray curved quotes I missed earlier
19876         Problem reported by David Kastrup in:
19877         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
19878         * lisp/international/mule-cmds.el (leim-list-header):
19879         Use format-message with an ASCII-only format.
19881         Prefer NUMBERP to spelling it out
19882         * src/editfns.c (styled_format):
19883         * src/frame.h (NUMVAL):
19884         * src/image.c (parse_image_spec):
19885         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
19886         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
19887         * src/process.c (Fsignal_process):
19888         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
19889         * src/xfaces.c (check_lface_attrs):
19890         * src/xselect.c (x_fill_property_data, x_send_client_event):
19891         Use NUMBERP rather than INTEGERP || FLOATP.
19893 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
19895         Improve file-notify-tests
19896         * test/automated/file-notify-tests.el: Use lexical-binding.
19897         (file-notify--test-cleanup): New function.
19898         (file-notify-test00-availability, file-notify-test01-add-watch)
19899         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
19900         (file-notify--test-with-events): New macro.
19901         (file-notify-test02-events): Use it.
19903 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
19905         Add patch-sending instructions to git-workflow
19906         From a suggestion by Mitchel Humpherys in:
19907         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
19908         * admin/notes/git-workflow (Sending patches): New section.
19910         Port to GIFLIB 5.0.6 and later
19911         Problem reported by Mitchel Humpherys in:
19912         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
19913         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
19914         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
19915         (gif_load) [HAVE_GIF]: Use it.
19917 2015-09-10  Glenn Morris  <rgm@gnu.org>
19919         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
19921 2015-09-09  Glenn Morris  <rgm@gnu.org>
19923         * test/automated/file-notify-tests.el (file-notify-test02-events):
19924         Fix recent change.
19926 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
19928         Refix movemail GCC pacification
19929         Problem reported by Ken Brown in:
19930         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
19931         * lib-src/movemail.c (main): Fix previous change.
19933 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19935         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
19936         Mark unused vars with underscore.
19938         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
19939         (parse_sexp_propertize): ...from here.
19941         * lisp/filenotify.el: Use lexical-binding
19942         (file-notify-add-watch): Avoid add-to-list.
19944 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
19946         Start checking event types in file-notify tests
19947         * test/automated/file-notify-tests.el (file-notify--test-events):
19948         New variable.
19949         (file-notify--test-event-handler): Append received event to
19950         file-notify--test-events for later analysis.
19951         (file-notify-test02-events): Assert that the expected notifications have
19952         arrived in the expected order.
19954 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
19956         Merge from gnulib and texinfo
19957         This incorporates:
19958         2015-08-03 Improve port of stdalign to C++11
19959         * lib/stdalign.in.h: Copy from gnulib.
19960         * doc/misc/texinfo.tex: Copy from texinfo.
19962 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19964         Make syntax.c call syntax-propertize on demand
19965         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
19966         (parse-sexp-propertize-function): Use it.
19967         (syntax-propertize): Disable parse-sexp-propertize-function.
19968         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
19969         New functions.
19970         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
19971         `parse-sexp-propertize-function'.
19972         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
19973         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
19974         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
19975         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
19976         Don't assume `point' is set.
19978 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
19980         Fix indentation of an @example in ELisp manual
19981         * doc/lispref/syntax.texi (Categories): Untabify the example.
19982         (Bug#21448)
19984 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
19986         Define internal-char-font even if --without-x
19987         The function is used now even in non-graphical environments.
19988         Problem reported by Glenn Morris in:
19989         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
19990         * src/font.c (Finternal_char_font): Move here ...
19991         * src/fontset.c (Finternal_char_font): ... from here.
19993 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19995         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
19996         Remove warning.
19998 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
20000         Fix display of complex local data types in GDB-MI
20001         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
20002         variable has no value, display "<complex data type>" as a
20003         placeholder, instead of a confusing "nil".  (Bug#21438)
20005 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
20007         Remove redundant redefinition of seq-drop-while from seq.el
20008         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
20010 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
20012         * lisp/emacs-lisp/package.el (package--ensure-init-file):
20013         More robust check for `package-initialize' calls in init file.
20014         This function accepts an optional argument, but calls passing
20015         an argument would not have been detected.
20017 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
20019         Port movemail to RHEL 6 with --enable-gcc-warnings
20020         * lib-src/movemail.c (main): Declare local only if needed.
20022         Port recent Linux console changes to RHEL 6
20023         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
20025         Improvements for curved quotes on Linux consule
20026         This should help Emacs work better out-of-the-box on Linux consoles,
20027         which have only limited support for displaying Unicode characters.
20028         Also, undo the recent change that caused text-quoting-style to
20029         affect quote display on terminals, so that the two features are
20030         independent.  See Alan Mackenzie in:
20031         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
20032         Finally, add a style parameter to startup--setup-quote-display,
20033         so that this function can also be invoked after startup, with
20034         different styles depending on user preference at the time.
20035         * configure.ac: Check for linux/kd.h header.
20036         * doc/emacs/display.texi (Text Display): Document quote display.
20037         * doc/lispref/display.texi (Active Display Table):
20038         * etc/NEWS:
20039         * lisp/startup.el (startup--setup-quote-display, command-line):
20040         text-quoting-style no longer affects quote display.
20041         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
20042         * lisp/international/mule-util.el (char-displayable-p):
20043         * lisp/startup.el (startup--setup-quote-display):
20044         On a text terminal supporting glyph codes, use the reported
20045         glyph codes instead of the terminal coding system, as this
20046         is more accurate on the Linux console.
20047         * lisp/startup.el (startup--setup-quote-display):
20048         New optional arg STYLE.
20049         * src/fontset.c (Finternal_char_font):
20050         Report glyph codes for a text terminal, if they are available.
20051         Currently this is supported only for the Linux console.
20052         * src/termhooks.h (struct terminal): New member glyph-code-table.
20053         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
20054         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
20055         (terminal_glyph_code): New function.
20057 2015-09-08  Juri Linkov  <juri@linkov.net>
20059         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
20060         underline.  (Bug#21433)
20062 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20064         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
20066 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
20068         Fix double-reporting of rename events with inotify
20069         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
20070         of rename events with inotify (bug#21435).
20072 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
20074         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
20075         (tetris-mode-map): Use it.
20077 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20079         Remove a few simple cases of global redisplay
20080         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
20081         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
20082         rather than returning a "resized_p" boolean.
20083         (redisplay_internal): Adjust call accordingly.
20084         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
20085         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
20086         tracking of this undesirable situation.
20088         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
20089         * src/process.c (status_notify): Only set the update_mode_line on the
20090         relevant buffers rather than setting it globally.
20092 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
20094         * lisp/electric.el (electric-quote-post-self-insert-function):
20095         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
20096         (electric-quote-mode): Activate everywhere in message-mode.
20098 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
20100         Go back to grave quoting in source-code docstrings etc.
20101         This reverts almost all my recent changes to use curved quotes
20102         in docstrings and/or strings used for error diagnostics.
20103         There are a few exceptions, e.g., Bahá’í proper names.
20104         * admin/unidata/unidata-gen.el (unidata-gen-table):
20105         * lisp/abbrev.el (expand-region-abbrevs):
20106         * lisp/align.el (align-region):
20107         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
20108         (outlineify-sticky):
20109         * lisp/apropos.el (apropos-library):
20110         * lisp/bookmark.el (bookmark-default-annotation-text):
20111         * lisp/button.el (button-category-symbol, button-put)
20112         (make-text-button):
20113         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
20114         * lisp/calc/calc-embed.el (calc-do-embedded):
20115         * lisp/calc/calc-ext.el (calc-user-function-list):
20116         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
20117         * lisp/calc/calc-help.el (calc-describe-key)
20118         (calc-describe-thing, calc-full-help):
20119         * lisp/calc/calc-lang.el (calc-c-language)
20120         (math-parse-fortran-vector-end, math-parse-tex-sum)
20121         (math-parse-eqn-matrix, math-parse-eqn-prime)
20122         (calc-yacas-language, calc-maxima-language, calc-giac-language)
20123         (math-read-giac-subscr, math-read-math-subscr)
20124         (math-read-big-rec, math-read-big-balance):
20125         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
20126         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
20127         (calc-auto-recompute):
20128         * lisp/calc/calc-prog.el (calc-fix-token-name)
20129         (calc-read-parse-table-part, calc-user-define-invocation)
20130         (math-do-arg-check):
20131         * lisp/calc/calc-store.el (calc-edit-variable):
20132         * lisp/calc/calc-units.el (math-build-units-table-buffer):
20133         * lisp/calc/calc-vec.el (math-read-brackets):
20134         * lisp/calc/calc-yank.el (calc-edit-mode):
20135         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
20136         * lisp/calendar/appt.el (appt-display-message):
20137         * lisp/calendar/diary-lib.el (diary-check-diary-file)
20138         (diary-mail-entries, diary-from-outlook):
20139         * lisp/calendar/icalendar.el (icalendar-export-region)
20140         (icalendar--convert-float-to-ical)
20141         (icalendar--convert-date-to-ical)
20142         (icalendar--convert-ical-to-diary)
20143         (icalendar--convert-recurring-to-diary)
20144         (icalendar--add-diary-entry):
20145         * lisp/calendar/time-date.el (format-seconds):
20146         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
20147         (timeclock-make-hours-explicit, timeclock-log-data):
20148         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
20149         (todo-item-mark, todo-check-format)
20150         (todo-insert-item--next-param, todo-edit-item--next-key)
20151         (todo-mode):
20152         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
20153         * lisp/cedet/mode-local.el (describe-mode-local-overload)
20154         (mode-local-print-binding, mode-local-describe-bindings-2):
20155         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
20156         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
20157         * lisp/cus-start.el (standard):
20158         * lisp/cus-theme.el (describe-theme-1):
20159         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
20160         (custom--sort-vars-1, load-theme):
20161         * lisp/descr-text.el (describe-text-properties-1, describe-char):
20162         * lisp/dired-x.el (dired-do-run-mail):
20163         * lisp/dired.el (dired-log):
20164         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
20165         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
20166         (ad-disable-advice, ad-remove-advice, ad-set-argument)
20167         (ad-set-arguments, ad--defalias-fset, ad-activate)
20168         (ad-deactivate):
20169         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
20170         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
20171         (byte-optimize-while, byte-optimize-apply):
20172         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
20173         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
20174         (byte-compile-log-file, byte-compile-format-warn)
20175         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
20176         (byte-compile-cl-warn)
20177         (byte-compile-warn-about-unresolved-functions)
20178         (byte-compile-file, byte-compile--declare-var)
20179         (byte-compile-file-form-defmumble, byte-compile-form)
20180         (byte-compile-normal-call, byte-compile-check-variable)
20181         (byte-compile-variable-ref, byte-compile-variable-set)
20182         (byte-compile-subr-wrong-args, byte-compile-setq-default)
20183         (byte-compile-negation-optimizer)
20184         (byte-compile-condition-case--old)
20185         (byte-compile-condition-case--new, byte-compile-save-excursion)
20186         (byte-compile-defvar, byte-compile-autoload)
20187         (byte-compile-lambda-form)
20188         (byte-compile-make-variable-buffer-local, display-call-tree)
20189         (batch-byte-compile):
20190         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
20191         * lisp/emacs-lisp/chart.el (chart-space-usage):
20192         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
20193         (check-declare-warn, check-declare-file)
20194         (check-declare-directory):
20195         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
20196         (checkdoc-message-text-engine):
20197         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
20198         (cl--describe-class):
20199         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
20200         (cl--generic-describe, cl-generic-generalizers):
20201         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
20202         (cl-symbol-macrolet):
20203         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
20204         * lisp/emacs-lisp/copyright.el (copyright)
20205         (copyright-update-directory):
20206         * lisp/emacs-lisp/edebug.el (edebug-read-list):
20207         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
20208         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
20209         (eieio-oref):
20210         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
20211         * lisp/emacs-lisp/eieio-speedbar.el:
20212         (eieio-speedbar-child-make-tag-lines)
20213         (eieio-speedbar-child-description):
20214         * lisp/emacs-lisp/eieio.el (defclass, change-class):
20215         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
20216         (elint-init-form, elint-check-defalias-form)
20217         (elint-check-let-form):
20218         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
20219         (ert-results-pop-to-backtrace-for-test-at-point)
20220         (ert-results-pop-to-messages-for-test-at-point)
20221         (ert-results-pop-to-should-forms-for-test-at-point)
20222         (ert-describe-test):
20223         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
20224         (find-function-library):
20225         * lisp/emacs-lisp/generator.el (iter-yield):
20226         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
20227         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
20228         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
20229         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
20230         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
20231         (advice--make, define-advice):
20232         * lisp/emacs-lisp/package-x.el (package-upload-file):
20233         * lisp/emacs-lisp/package.el (package-version-join)
20234         (package-disabled-p, package-activate-1, package-activate)
20235         (package--download-one-archive)
20236         (package--download-and-read-archives)
20237         (package-compute-transaction, package-install-from-archive)
20238         (package-install, package-install-selected-packages)
20239         (package-delete, package-autoremove, describe-package-1)
20240         (package-install-button-action, package-delete-button-action)
20241         (package-menu-hide-package, package-menu--list-to-prompt)
20242         (package-menu--perform-transaction)
20243         (package-menu--find-and-notify-upgrades):
20244         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
20245         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
20246         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
20247         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
20248         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
20249         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
20250         (rx-form):
20251         * lisp/emacs-lisp/smie.el (smie-config-save):
20252         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
20253         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
20254         * lisp/emacs-lisp/testcover.el (testcover-1value):
20255         * lisp/emacs-lisp/timer.el (timer-event-handler):
20256         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
20257         (viper-toggle-search-style, viper-kill-buffer)
20258         (viper-brac-function):
20259         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
20260         * lisp/env.el (setenv):
20261         * lisp/erc/erc-button.el (erc-nick-popup):
20262         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
20263         * lisp/eshell/em-dirs.el (eshell/cd):
20264         * lisp/eshell/em-glob.el (eshell-glob-regexp)
20265         (eshell-glob-entries):
20266         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
20267         * lisp/eshell/esh-opt.el (eshell-show-usage):
20268         * lisp/facemenu.el (facemenu-add-new-face)
20269         (facemenu-add-new-color):
20270         * lisp/faces.el (read-face-name, read-face-font, describe-face)
20271         (x-resolve-font-name):
20272         * lisp/files-x.el (modify-file-local-variable):
20273         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
20274         (set-auto-mode, hack-one-local-variable--obsolete)
20275         (dir-locals-set-directory-class, write-file, basic-save-buffer)
20276         (delete-directory, copy-directory, recover-session)
20277         (recover-session-finish, insert-directory)
20278         (file-modes-char-to-who, file-modes-symbolic-to-number)
20279         (move-file-to-trash):
20280         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
20281         * lisp/find-cmd.el (find-generic, find-to-string):
20282         * lisp/finder.el (finder-commentary):
20283         * lisp/font-lock.el (font-lock-fontify-buffer):
20284         * lisp/format.el (format-write-file, format-find-file)
20285         (format-insert-file):
20286         * lisp/frame.el (get-device-terminal, select-frame-by-name):
20287         * lisp/fringe.el (fringe--check-style):
20288         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
20289         * lisp/help-fns.el (help-fns--key-bindings)
20290         (help-fns--compiler-macro, help-fns--parent-mode)
20291         (help-fns--obsolete, help-fns--interactive-only)
20292         (describe-function-1, describe-variable):
20293         * lisp/help.el (describe-mode)
20294         (describe-minor-mode-from-indicator):
20295         * lisp/image.el (image-type):
20296         * lisp/international/ccl.el (ccl-dump):
20297         * lisp/international/fontset.el (x-must-resolve-font-name):
20298         * lisp/international/mule-cmds.el (prefer-coding-system)
20299         (select-safe-coding-system-interactively)
20300         (select-safe-coding-system, activate-input-method)
20301         (toggle-input-method, describe-current-input-method)
20302         (describe-language-environment):
20303         * lisp/international/mule-conf.el (code-offset):
20304         * lisp/international/mule-diag.el (describe-character-set)
20305         (list-input-methods-1):
20306         * lisp/mail/feedmail.el (feedmail-run-the-queue):
20307         * lisp/mouse.el (minor-mode-menu-from-indicator):
20308         * lisp/mpc.el (mpc-playlist-rename):
20309         * lisp/msb.el (msb--choose-menu):
20310         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
20311         * lisp/net/imap.el (imap-interactive-login):
20312         * lisp/net/mairix.el (mairix-widget-create-query):
20313         * lisp/net/newst-backend.el (newsticker--sentinel-work):
20314         * lisp/net/newst-treeview.el (newsticker--treeview-load):
20315         * lisp/net/rlogin.el (rlogin):
20316         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
20317         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
20318         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
20319         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
20320         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
20321         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
20322         (org-babel-goto-named-result):
20323         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
20324         * lisp/org/ob-ref.el (org-babel-ref-resolve):
20325         * lisp/org/org-agenda.el (org-agenda-prepare):
20326         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
20327         (org-clock-resolve):
20328         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
20329         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
20330         * lisp/org/org-habit.el (org-habit-parse-todo):
20331         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
20332         (org-mouse-context-menu):
20333         * lisp/org/org-table.el (org-table-edit-formulas):
20334         * lisp/org/ox.el (org-export-async-start):
20335         * lisp/proced.el (proced-log):
20336         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
20337         (ada-check-matching-start, ada-goto-matching-start):
20338         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
20339         * lisp/progmodes/ada-xref.el (ada-find-executable):
20340         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
20341         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
20342         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
20343         (flymake-start-syntax-check-process):
20344         * lisp/progmodes/python.el (python-shell-get-process-or-error)
20345         (python-define-auxiliary-skeleton):
20346         * lisp/progmodes/sql.el (sql-comint):
20347         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
20348         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
20349         * lisp/recentf.el (recentf-open-files):
20350         * lisp/replace.el (query-replace-read-from)
20351         (occur-after-change-function, occur-1):
20352         * lisp/scroll-bar.el (scroll-bar-columns):
20353         * lisp/server.el (server-get-auth-key):
20354         * lisp/simple.el (execute-extended-command)
20355         (undo-outer-limit-truncate, list-processes--refresh)
20356         (compose-mail, set-variable, choose-completion-string)
20357         (define-alternatives):
20358         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
20359         (command-line-1):
20360         * lisp/subr.el (noreturn, define-error, add-to-list)
20361         (read-char-choice, version-to-list):
20362         * lisp/term/common-win.el (x-handle-xrm-switch)
20363         (x-handle-name-switch, x-handle-args):
20364         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
20365         * lisp/textmodes/reftex-ref.el (reftex-label):
20366         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
20367         * lisp/textmodes/two-column.el (2C-split):
20368         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
20369         (tutorial--find-changed-keys):
20370         * lisp/type-break.el (type-break-noninteractive-query):
20371         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
20372         (wdired-do-perm-changes):
20373         * lisp/whitespace.el (whitespace-report-region):
20374         Prefer grave quoting in source-code strings used to generate help
20375         and diagnostics.
20376         * lisp/faces.el (face-documentation):
20377         No need to convert quotes, since the result is a docstring.
20378         * lisp/info.el (Info-virtual-index-find-node)
20379         (Info-virtual-index, info-apropos):
20380         Simplify by generating only curved quotes, since info files are
20381         typically that ways nowadays anyway.
20382         * lisp/international/mule-diag.el (list-input-methods):
20383         Don’t assume text quoting style is curved.
20384         * lisp/org/org-bibtex.el (org-bibtex-fields):
20385         Revert my recent changes, going back to the old quoting style.
20387 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20389         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
20390         (package--autoloads-file-name)
20391         (package--activate-autoloads-and-load-path): New function.
20392         (package-activate-1): Delegate autoloading and load-path
20393         configuration to `package--activate-autoloads-and-load-path'.
20394         (package--compile): Before compilation, call
20395         `package--activate-autoloads-and-load-path' instead of
20396         `package-activate-1'.
20398 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
20400         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
20402 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
20404         Fix deletion of symlinks to directories on MS-Windows
20405         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
20406         symlink to a directory, try again with 'rmdir'.
20407         (is_symlink): If the argument is a symlink to a directory, set a
20408         bit in the return value to indicate that fact.
20410 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
20412         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
20413         When `package-initialize' is called as part of loading the init file,
20414         the user probably doesn't want it to be called again afterwards.
20415         In this situation, `package-initialize' now sets
20416         `package-enable-at-startup' to nil to prevent that.  The user can have
20417         the old behavior by setting this variable to t after the call to
20418         `package-initialize'.  (Bug#21423)
20419         * doc/emacs/package.texi (Package Installation): Document it.
20420         * doc/lispref/package.texi (Packaging Basics): Document it.
20421         * etc/NEWS: Document it.
20423 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20425         Bump version of ntlm.el to 2.00
20426         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
20427         Add comm keyword.
20429 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
20431         * doc/misc/gnus.texi (Mail Source Specifiers):
20432         Allow :mailbox to be a list.
20434 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
20436         * lisp/progmodes/etags.el (etags-tags-completion-table):
20437         Allow even one non-regular character before the implicit tag name.
20438         Reported at http://emacs.stackexchange.com/questions/15269/.
20440 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20442         Add support for NTLMv2 authentication
20443         * lisp/net/ntlm.el (ntlm): New customization group.
20444         (ntlm-compatibility-level): New defcustom.
20445         (ntlm-compute-timestamp): New function.
20446         (ntlm-generate-nonce): Likewise.
20447         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
20449 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
20451         * lisp/emacs-lisp/package.el: Rename custom faces.
20452         All of the recently introduced faces, like `package-name-face', have
20453         been renamed to no end in `-face' to comply with the convention
20454         described in (info "(elisp) Defining Faces").
20455         (package-name, package-description)
20456         (package-status-built-in, package-status-external)
20457         (package-status-available, package-status-new)
20458         (package-status-held, package-status-disabled)
20459         (package-status-installed, package-status-dependency)
20460         (package-status-unsigned, package-status-incompat)
20461         (package-status-avail-obso): New faces.
20462         (package-menu--print-info-simple): Use them.
20464 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
20466         mail-source.el: Make the imap mail-source's :mailbox handle a list
20467         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
20468         Allow :mailbox to be  a list.
20470 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
20472         nnimap.el: Handle nil arg to nnimap-request-group
20473         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
20474         This arg isn't always passed in, check it's not nil before making it
20475         into a list.  The active arg will also be nil if the group is new,
20476         check for that.
20478 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
20480         File notifications: Support renaming over directory boundaries
20481         * lisp/filenotify.el (file-notify-handle-event):
20482         (file-notify--pending-event): Adapt docstring.
20483         (file-notify--descriptor, file-notify-callback): Reimplement in
20484         order to support renaming over directory boundaries.
20485         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
20486         * doc/lispref/os.texi (File Notifications): Remove limitation of
20487         file renaming to the same directory.
20489 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20491         Spelling fix (Bug#21420)
20493 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
20495         Improve the semantic of map-some
20496         Update map-some to return the returned by the predicate, similar to
20497         seq-some.
20498         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
20499           return value of the predicate.
20500         * test/automated/map-tests.el (test-map-some): Update the test to check
20501           for non-nil values only.
20503         Rename map-contains-key-p and map-some-p
20504         Remove the "-p" suffix from both function names.
20505         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
20506           Rename the functions.
20507         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
20508           Update both test functions.
20510         Improve the semantic of seq-some
20511         Update seq-some to return non-nil if the predicate returns non-nil for
20512         any element of the seq, in which case the returned value is the one
20513         returned by the predicate.
20514         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
20515           docstring.
20516         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
20517         * doc/lispref/sequences.texi (Sequence Functions): Update the
20518           documentation for seq-some.
20520         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
20521         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
20522           without the "-p" prefix.
20523         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
20524           the tests accordingly.
20525         * doc/lispref/sequences.texi (Sequence Functions): Update the
20526           documentation for seq.el.
20528 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
20530         text-quoting-style for usage of fn names with ‘’
20531         * lisp/help.el (help--docstring-quote): Don’t assume
20532         text-quoting-style is ‘curve’ when generating usage strings for
20533         functions whose names contain curved quotes.
20535 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20537         Fix fix for describe-function keybinding confusion
20538         This fixes a bug introduced by the previous patch.
20539         * lisp/help-fns.el (help-fns--signature):
20540         Last arg of help-fns--signature is now a buffer, or nil if a
20541         raw signature is wanted.  All callers changed.
20542         (describe-function-1): Use this to do the right thing with signatures.
20544 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
20546         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
20548         Use PAT rather than UPAT in pcase macros
20549         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
20550         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
20551           than UPAT.
20553 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
20555         Fix describe-function keybinding confusion
20556         * lisp/help-fns.el (describe-function-1): Compute signature
20557         in the original buffer, not in standard-output, so that
20558         substitute-command-keys uses the proper keybindings.
20559         This fixes Bug#21412, introduced in commit
20560         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
20562 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
20564         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
20566 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
20568         Avoid read error messages from 'inotify'
20569         * src/process.c (wait_reading_process_output): Add a
20570         'tls_available' set and manipulate it instead of 'Available' when
20571         checking TLS inputs.  Assign the value to 'Available' only if we
20572         find any TLS data waiting to be read.  This avoids error messages
20573         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
20575 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
20577         Avoid errors in thing-at-point with 2nd argument non-nil
20578         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
20579         sequences.  (Bug#21391)
20581 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
20583         Fix segfaults due to using a stale face ID
20584         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
20585         (display_echo_area_1, redisplay_internal): Call it to avoid
20586         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
20587         faces, which could case a segfault if the frame's face cache was
20588         freed since the last redisplay.  (Bug#21394)
20589         * src/xfaces.c (free_realized_faces):
20590         Call forget_escape_and_glyphless_faces.
20591         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
20593 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
20595         Fix minor problems with " in manual
20597 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
20599         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
20600         multi-hop files.
20602 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
20604         Support automated ‘make check’ in non-C locale
20605         This lets the builder optionally test Emacs behavior in other locales.
20606         The C locale is still the default for tests.
20607         * test/automated/Makefile.in (TEST_LOCALE): New macro.
20608         (emacs): Use it.
20609         * test/automated/flymake-tests.el (flymake-tests--current-face):
20610         Use C locale for subprocesses so that tests behave as expected.
20611         * test/automated/python-tests.el:
20612         (python-shell-prompt-validate-regexps-1)
20613         (python-shell-prompt-validate-regexps-2)
20614         (python-shell-prompt-validate-regexps-3)
20615         (python-shell-prompt-validate-regexps-4)
20616         (python-shell-prompt-validate-regexps-5)
20617         (python-shell-prompt-validate-regexps-6)
20618         (python-shell-prompt-set-calculated-regexps-1):
20619         Adjust expected output to match locale.
20620         * test/automated/tildify-tests.el (tildify-test--test)
20621         (tildify-space-test--test, tildify-space-undo-test--test):
20622         This test assumes UTF-8 encoding.
20624 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
20626         Fix some more docstring etc. quoting problems
20627         Mostly these fixes prevent the transliteration of apostrophes
20628         that should stay apostrophes.  Also, prefer curved quotes in
20629         Bahá’í proper names, as that’s the preferred Bahá’í style and
20630         these names are chock-full of non-ASCII characters anyway.
20631         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
20632         (eieio-defclass-internal):
20633         * lisp/emacs-lisp/eieio.el (defclass):
20634         * lisp/hi-lock.el (hi-lock-mode):
20635         Don’t transliterate Lisp apostrophes when generating a
20636         doc string or diagnostic.
20637         * lisp/international/mule-diag.el (list-coding-systems-1):
20638         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
20639         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
20640         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
20641         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
20642         Substitute quotes before putting them in the help buffer.
20644 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
20646         Re-add the notion of echo_prompt lost in the translation
20647         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
20648         echo_prompt which contains the actual string.  Update all uses.
20649         * src/keyboard.c (kset_echo_prompt): New function.
20650         (echo_update): Add echo_prompt at the very beginning.
20651         (read_char): Remove workaround for bug#19875, not needed any more.
20652         (read_key_sequence): Set echo_prompt rather than echo_string
20653         (bug#21403).
20654         (mark_kboards): Mark echo_prompt.
20656         Fix disassembly of non-compiled lexical functions (bug#21377)
20657         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
20658         * lisp/emacs-lisp/disass.el: Use lexical-binding.
20659         (disassemble): Recognize `closure's as well.
20660         (disassemble-internal): Use indirect-function and
20661         help-function-arglist, and accept `closure's.
20662         (disassemble-internal): Use interactive-form.
20663         (disassemble-1): Use functionp.
20665         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
20666         Don't compose inside verbatim blocks!
20668 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
20670         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
20671         (bug#19441).
20673         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
20675 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
20677         vc-git-mode-line-string: Explicitly re-apply the face
20678         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
20679         the face (bug#21404).
20681 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
20683         Treat initial-scratch-message as a doc string
20684         * doc/emacs/building.texi (Lisp Interaction):
20685         * doc/lispref/os.texi (Startup Summary):
20686         * etc/NEWS: Document this.
20687         * lisp/startup.el (initial-scratch-message):
20688         Look up find-file’s key rather than hardcoding it.
20689         (command-line-1): Substitute the doc string.
20690         This also substitutes the quotes, which will help test display
20691         quoting at startup.
20693         Fix describe-char bug with glyphs on terminals
20694         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
20695         buffers too, so don’t treat them differently from graphic displays.
20696         Without this fix, describe-char would throw an error on a terminal
20697         if given a glyph with a non-default face.
20699         Follow text-quoting-style in display table init
20700         This attempts to fix a problem reported by Alan Mackenzie in:
20701         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
20702         * doc/lispref/display.texi (Active Display Table):
20703         Mention how text-quoting-style affects it.
20704         * doc/lispref/help.texi (Keys in Documentation):
20705         Say how to set text-quoting-style in ~/.emacs.
20706         * etc/NEWS: Document the change.
20707         * lisp/startup.el (startup--setup-quote-display):
20708         Follow user preference if text-quoting-style is set.
20709         (command-line): Setup quote display again if user expresses
20710         a preference in .emacs.
20712 2015-09-02  K. Handa  <handa@gnu.org>
20714         Fix typo
20715         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
20716         -> OTF_positioning_type_components_mask.
20718         Fix previous change
20719         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
20720         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
20722 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
20724         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
20725         Rename from vc-find-file-hook and make interactive.
20726         (vc-find-file-hook): Redefine as obsolete alias.
20728 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20730         Escape ` and ' in doc
20731         Escape apostrophes and grave accents in docstrings if they are
20732         are supposed to stand for themselves and are not quotes.  Remove
20733         apostrophes from docstring examples like ‘'(calendar-nth-named-day
20734         -1 0 10 year)’ that confuse source code with data.  Do some other
20735         minor docstring fixups as well, e.g., insert a missing close quote.
20737 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
20739         Generalize the prefix-command machinery of C-u
20740         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
20741         (prefix-command-preserve-state-hook): New hooks.
20742         (internal-echo-keystrokes-prefix): New function.
20743         (prefix-command--needs-update, prefix-command--last-echo): New vars.
20744         (prefix-command-update, prefix-command-preserve): New functions.
20745         (reset-this-command-lengths): New compatibility definition.
20746         (universal-argument--mode): Call prefix-command-update.
20747         (universal-argument, universal-argument-more, negative-argument)
20748         (digit-argument): Call prefix-command-preserve-state.
20749         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
20750         the "prefix argument" to echo.
20751         (this_command_key_count_reset, before_command_key_count)
20752         (before_command_echo_length): Delete variables.
20753         (echo_add_key): Always add a space.
20754         (echo_char): Remove.
20755         (echo_dash): Don't give up when this_command_key_count is 0, since that
20756         is now the case after a prefix command.
20757         (echo_update): New function, extracted from echo_now.
20758         (echo_now): Use it.
20759         (add_command_key, read_char, record_menu_key): Remove old disabled code.
20760         (command_loop_1): Don't refrain from pushing an undo boundary when
20761         prefix-arg is set.  Remove other prefix-arg special case, now handled
20762         directly in the prefix commands instead.  But call echo_now if there's
20763         a prefix state to echo.
20764         (read_char, record_menu_key): Use echo_update instead of echo_char.
20765         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
20766         (Freset_this_command_lengths): Delete function.
20767         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
20768         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
20769         * lisp/simple.el: Use those new hooks for C-u.
20770         (universal-argument--description): New function.
20771         (prefix-command-echo-keystrokes-functions): Use it.
20772         (universal-argument--preserve): New function.
20773         (prefix-command-preserve-state-hook): Use it.
20774         (command-execute): Call prefix-command-update if needed.
20775         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
20776         (kmacro-step-edit-prefix-index): Delete variables.
20777         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
20778         support for prefix arg commands.
20779         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
20780         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
20781         (cua--shift-control-prefix): Use prefix-command-preserve-state.
20782         Remove now unused arg `arg'.
20783         (cua--prefix-override-handler, cua--prefix-repeat-handler)
20784         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
20785         Update accordingly.
20786         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
20787         any more.
20788         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
20789         if the mark is not set.
20791 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20793         Rework quoting in Emacs Lisp Introduction
20794         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
20795         (if in more detail, type-of-animal in detail, else): Rework the
20796         early example to use " rather than ' so that we don’t burden
20797         complete novices with the low-priority detail of text quoting style.
20798         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
20799         (kill-new function, kill-ring-yank-pointer)
20800         (Complete forward-sentence, Loading Files)
20801         (Code for current-kill, Code for current-kill, yank):
20802         Resurrect the Emacs 22 versions of the code, which uses grave
20803         quoting style in doc strings.
20804         (Complete zap-to-char): Mention how quoting works in doc strings.
20806         Setup quote display only if interactive
20807         * lisp/startup.el (command-line):
20808         Skip call to startup--setup-quote-display if noninteractive.
20809         Without this change, python-shell-prompt-validate-regexps-1
20810         fails in test/automated/python-tests.el when run in an
20811         en_US.utf8 locale on Fedora.
20813 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
20815         Use defalias at the top level
20816         * lisp/gnus/gnus-util.el (gnus-format-message):
20817         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
20818         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
20820 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20822         terminal-init-w32console mimics command-line
20823         Problem reported by Eli Zaretskii.
20824         * lisp/startup.el (startup--setup-quote-display):
20825         New function, refactored from a part of ‘command-line’.
20826         (command-line): Use it.
20827         * lisp/term/w32console.el (terminal-init-w32console):
20828         Use it, so that this function stays consistent with ‘command-line’.
20830         Display replacement quotes with shadow glyphs
20831         * lisp/startup.el (command-line): When displaying ASCII
20832         replacements for curved quotes, use a shadow glyph instead of a
20833         regular one, to avoid ambiguity.
20835 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
20837         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
20839 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
20841         Docstring fixes re quotes in C code
20842         Fix some docstring quoting problems, mostly by escaping apostrophe.
20844 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
20846         Some Tramp password fixes
20847         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
20848         of the hops.
20849         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
20850         at the beginning of the command.  Otherwise, it could be
20851         interpreted as password prompt if the remote host echoes the
20852         command.
20853         (tramp-remote-coding-commands): Add "openssl enc -base64".
20855 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
20857         Make vc-git-working-revision always return the commit hash
20858         * lisp/vc/vc-git.el (vc-git-working-revision):
20859         Return the commit hash (bug#21383).
20860         (vc-git--symbolic-ref): New function, extracted from above.
20861         (vc-git-mode-line-string): Use it.
20863 2015-09-01  K. Handa  <handa@gnu.org>
20865         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
20866         * src/ftfont.c (MFLTGlyphFT): New type.
20867         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
20868         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
20869         elements in the array MFLTGlyphString.glyphs.
20871 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
20873         Improve comments in elisp-mode.el, elisp-mode-tests.el
20874         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
20876         Delete Emacs 25 test in mode-local.el
20877         * lisp/cedet/mode-local.el (describe-mode-local-overload):
20878         Fix missed an edit in previous commit.
20880         Show all known mode-local overrides in *Help*
20881         * lisp/cedet/mode-local.el (describe-mode-local-overload):
20882         Assume Emacs 25. Add all known mode-local overrides.
20884 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
20886         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
20887         Ensure that the article where the search word is found is displayed
20888         and pointed to in the summary buffer.
20890 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
20892         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
20893         When the region is active, but is empty (length 0), act as though
20894         the region was not active; that is, put a comment at the end of
20895         the line.  (Bug#21119)
20897 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
20899         Port tls.el to older Emacs
20900         * lisp/net/tls.el (tls-format-message):
20901         Alias to format-message, or format if not available.
20902         (open-tls-stream): Use it.
20904 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
20906         hideif.el: Recognize .h++ as C++ header
20907         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
20909         isearch: Document character folding mode
20910         * lisp/isearch.el (isearch-forward):
20911         Mention `isearch-toggle-character-fold' in doc string.
20913 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
20915         Quoting fixes in ERC and Eshell
20916         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
20917         * lisp/erc/erc-backend.el (define-erc-response-handler):
20918         * lisp/erc/erc-fill.el (erc-fill-static-center):
20919         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
20920         * lisp/eshell/em-glob.el (eshell-glob-entries):
20921         * lisp/eshell/em-hist.el (eshell-save-some-history):
20922         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
20923         (eshell-shuffle-files):
20924         * lisp/eshell/esh-cmd.el (eshell-do-eval):
20925         * lisp/eshell/esh-proc.el (eshell-process-interact)
20926         (eshell-query-kill-processes):
20927         Respect ‘text-quoting-style’ in diagnostics and doc strings.
20929         Quoting fixes in Gnus
20930         * lisp/gnus/gnus-agent.el:
20931         (gnus-agent-possibly-synchronize-flags-server):
20932         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
20933         * lisp/gnus/gnus-eform.el (gnus-edit-form):
20934         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
20935         (gnus-group-nnimap-edit-acl):
20936         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
20937         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
20938         * lisp/gnus/message.el (message-strip-subject-encoded-words)
20939         (message-check-recipients, message-send-form-letter):
20940         * lisp/gnus/mm-decode.el (mm-display-part):
20941         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
20942         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
20943         (mml-smime-get-ldap-cert):
20944         * lisp/gnus/spam-report.el (spam-report-process-queue):
20945         Respect ‘text-quoting-style’ in diagnostics.
20946         * lisp/gnus/gnus-art.el (article-display-face)
20947         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
20948         Use straight quoting in email.
20949         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
20950         Escape apostrophes in doc strings.
20952         Quoting fixes in lisp mail, mh-e, net, url
20953         * lisp/mail/emacsbug.el (report-emacs-bug)
20954         (report-emacs-bug-hook): Use straight quotes in outgoing email,
20955         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
20956         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
20957         * lisp/mail/rmailout.el (rmail-output-read-file-name):
20958         * lisp/net/imap.el (imap-interactive-login):
20959         * lisp/net/tls.el (open-tls-stream):
20960         * lisp/url/url-auth.el (url-register-auth-scheme):
20961         Respect ‘text-quoting-style’ in diagnostics.
20962         * lisp/mh-e/mh-e.el (mh-sortm-args):
20963         Quote docstring example using text quotes, not as a Lisp quote.
20965 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
20967         Fix some byte-compiler warnings in EDE
20968         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
20969         existing autoloader list, rather than add to it.
20970         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
20971         argument to eieio class constructor.
20972         (ede-show-supported-projects): New.
20973         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
20974         with (oref ... name).
20975         (ede-auto-load-project): Use slot name, not initarg key.
20976         * lisp/cedet/ede/generic.el (ede-generic-load)
20977         (ede-generic-find-matching-target): Use slot name, not initarg key.
20978         (ede-find-target): Use oref-default on class name.
20979         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
20980         class constructor.
20981         (ede-enable-generic-projects): Make project type names unique.
20983 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
20985         Fix directory accessibility tests for w32 network volumes
20986         * src/w32.c (faccessat): Don't fail with network volumes without a
20987         share.
20988         (w32_accessible_directory_p): Handle network volumes without a
20989         share.
20991         Fix handling long file names in readdir on MS-Windows
20992         * src/w32.c (sys_readdir): Append "\*" to the directory after
20993         converting it to UTF-16/ANSI, not before, to avoid overflowing the
20994         260-character limit on file names in filename_to_utf16/ansi.
20996         Make file-accessible-directory-p reliable on MS-Windows
20997         * src/w32.c (w32_accessible_directory_p): New function.
20998         * src/w32.h (w32_accessible_directory_p): Add prototype.
20999         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
21000         w32_accessible_directory_p to test a directory for accessibility
21001         by the current user.  (Bug#21346)
21002         (Ffile_accessible_directory_p): Remove the w32 specific caveat
21003         from the doc string.
21005 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
21007         Don't call do_pending_window_change in signal handlers (Bug#21380)
21008         * src/gtkutil.c (xg_frame_resized):
21009         * src/xterm.c (x_set_window_size):
21010         * src/w32term.c (x_set_window_size): Don't call
21011         do_pending_window_change.
21013 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21015         Quoting fixes in lisp/org
21016         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
21017         (org-tags-view):
21018         * lisp/org/org-capture.el (org-capture-mode)
21019         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
21020         (org-ctags-ask-append-topic):
21021         * lisp/org/org.el (org-time-string-to-time)
21022         (org-time-string-to-absolute):
21023         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
21024         (org-ctags-ask-append-topic):
21025         * lisp/org/org.el (org-time-string-to-time)
21026         (org-time-string-to-absolute):
21027         Respect ‘text-quoting-style’ in diagnostics.
21028         * lisp/org/org-agenda.el (org-agenda-custom-commands)
21029         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
21030         * lisp/org/org-capture.el (org-capture-fill-template):
21031         Avoid contraction in output file that might be ASCII.
21032         * lisp/org/org-compat.el (format-message):
21033         Define if not already defined, for backward compatibility.
21034         * lisp/org/org-src.el (org-edit-src-save):
21035         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
21036         Escape apostrophes in diagnostics.
21038         Treat “instead” strings as docstrings
21039         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
21040         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
21041         Substitute quotes in instead strings.
21043 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
21045         Better documentation of seq-let
21046         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
21047         documentation of seq-let.
21049 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
21051         * lisp/international/ccl.el: Fix quoting.
21053         Quoting fixes in lisp/international and lisp/leim
21054         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
21055         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
21056         * lisp/international/mule-cmds.el:
21057         (select-safe-coding-system-interactively, leim-list-file-name):
21058         * lisp/international/quail.el (quail-use-package, quail-help):
21059         * lisp/international/titdic-cnv.el (tit-process-header)
21060         (miscdic-convert):
21061         Respect text quoting style in doc strings and diagnostics.
21062         * lisp/international/quail.el (lisp/international/quail.el):
21063         * lisp/leim/quail/ethiopic.el ("ethiopic"):
21064         Escape apostrophes in doc strings.
21066         Make ‘text-quoting-style’ a plain defvar
21067         It doesn’t need customization, as it’s likely useful only by experts.
21068         Suggested by Stefan Monnier in:
21069         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
21070         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
21072         Quoting fixes in lisp/textmodes
21073         * lisp/textmodes/bibtex.el (bibtex-validate)
21074         (bibtex-validate-globally, bibtex-search-entries):
21075         * lisp/textmodes/ispell.el (ispell-command-loop):
21076         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
21077         * lisp/textmodes/texinfmt.el (texinfmt-version)
21078         (texinfo-format-region, texinfo-format-buffer-1):
21079         * lisp/textmodes/two-column.el (2C-split):
21080         Respect text quoting style in doc strings and diagnostics.
21081         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
21082         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
21083         Escape apostrophes in doc strings.
21085         Documentation fixes re quotes
21086         Prefer curved quotes in examples if users will typically see
21087         curved quotes when the examples run.
21088         Mention format-message when appropriate.
21089         Don’t use @code in examples.
21090         Quote an apostrophe with @kbd.
21092         Quoting fixes in lisp/progmodes
21093         * lisp/progmodes/cc-engine.el (c-bos-report-error):
21094         * lisp/progmodes/cpp.el (cpp-edit-reset):
21095         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
21096         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
21097         (etags-tags-apropos, list-tags, tags-apropos):
21098         * lisp/progmodes/executable.el (executable-set-magic):
21099         * lisp/progmodes/octave.el (octave-sync-function-file-names)
21100         (octave-help, octave-find-definition-default-filename)
21101         (octave-find-definition):
21102         Respect text quoting style in doc strings and diagnostics.
21103         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
21104         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
21105         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
21106         Escape apostrophes in doc strings.
21107         * lisp/progmodes/cmacexp.el (c-macro-expansion):
21108         Use straight quoting in ASCII comment.
21109         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
21110         (idlwave-pad-keyword):
21111         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
21112         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
21113         (vhdl-electric-semicolon, vhdl-electric-comma)
21114         (vhdl-electric-period, vhdl-electric-equal):
21115         Use directed quotes in diagnostics and doc strings.
21117 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
21119         Minor documentation and NEWS tweak
21120         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
21121         Add an index entry.
21122         * etc/NEWS: Fix a typo in character-fold-to-regexp.
21124 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
21126         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
21127         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
21128         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
21129         Adapt test.
21131 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
21133         Text quoting fixes in cedet, emulation, emacs-lisp
21134         * lisp/cedet/ede.el (ede-check-project-directory):
21135         * lisp/cedet/semantic/analyze/debug.el
21136         (semantic-analyzer-debug-insert-include-summary):
21137         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
21138         * lisp/cedet/semantic/decorate/include.el
21139         (semantic-decoration-unknown-include-describe)
21140         (semantic-decoration-all-include-summary):
21141         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
21142         * lisp/emulation/edt.el (edt-load-keys):
21143         * lisp/emulation/viper-cmd.el
21144         (viper-display-current-destructive-command)
21145         (viper-query-replace, viper-brac-function):
21146         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
21147         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
21148         Respect text quoting style in doc string or diagnostic.
21149         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21150         Use format-message to avoid overtranslating quotes.
21151         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
21152         Escape an apostrophe in a docstring.
21153         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
21155 2015-08-29  Daniel Colascione  <dancol@dancol.org>
21157         Fix which-func for curly quotes: look for symbol, not message
21158         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
21159         imenu-unavailable error symbol instead of trying to match message
21160         exactly.
21161         * lisp/imenu.el (imenu-unavailable): New error.
21162         (imenu-unavailable-error): New function.
21164 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
21166         Fix Python tests on MS-Windows
21167         * test/automated/python-tests.el
21168         (python-shell-calculate-command-1): Run python-shell-interpreter
21169         through shell-quote-argument before comparing with what
21170         python-shell-calculate-command returns.
21171         (python-shell-calculate-pythonpath-1)
21172         (python-shell-calculate-pythonpath-2)
21173         (python-shell-calculate-process-environment-2): Use path-separator
21174         instead of a literal ':'.
21175         (python-shell-calculate-exec-path-2)
21176         (python-shell-calculate-exec-path-3)
21177         (python-shell-calculate-exec-path-4)
21178         (python-shell-with-environment-1)
21179         (python-shell-with-environment-2): Run "/env/bin" through
21180         expand-file-name before comparing with exec-path.  (Bug#21375)
21182 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21184         Use Core Text types/functions/variables/enumerators directly
21185         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
21186         (CharacterCollection): Remove typedefs.  All uses replaced with
21187         definitions.
21188         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
21189         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
21190         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
21191         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
21192         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
21193         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
21194         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
21195         definitions.
21196         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
21197         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
21198         (MAC_FONT_FORMAT_BITMAP)
21199         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
21200         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
21201         All uses replaced with definitions.
21202         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
21203         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
21204         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
21205         Add compatibility enumerators for older versions.
21206         (mac_font_descriptor_create_with_attributes)
21207         (mac_font_descriptor_create_matching_font_descriptors)
21208         (mac_font_descriptor_create_matching_font_descriptor)
21209         (mac_font_descriptor_copy_attribute)
21210         (mac_font_descriptor_supports_languages)
21211         (mac_font_create_with_name, mac_font_get_size)
21212         (mac_font_copy_family_name, mac_font_copy_character_set)
21213         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
21214         (mac_font_get_descent, mac_font_get_leading)
21215         (mac_font_get_underline_position)
21216         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
21217         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
21218         replaced with definitions.
21219         (mac_font_create_preferred_family_for_attributes)
21220         (mac_font_get_advance_width_for_glyph)
21221         (mac_font_get_bounding_rect_for_glyph)
21222         (mac_font_create_available_families, mac_font_shape):
21223         Remove macros for renamed functions.
21224         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
21225         * src/macfont.m (mac_font_descriptor_supports_languages):
21226         Rename from mac_ctfont_descriptor_supports_languages.
21227         (mac_font_create_preferred_family_for_attributes): Rename from
21228         mac_ctfont_create_preferred_family_for_attributes.
21229         (mac_font_get_advance_width_for_glyph): Rename from
21230         mac_ctfont_get_advance_width_for_glyph.
21231         Use kCTFontOrientationDefault also for older versions.
21232         (mac_font_get_bounding_rect_for_glyph): Rename from
21233         mac_ctfont_get_bounding_rect_for_glyph.
21234         Use kCTFontOrientationDefault also for older versions.
21235         (mac_font_create_available_families): Rename from
21236         mac_ctfont_create_available_families.
21237         (mac_font_equal_in_postscript_name): Rename from
21238         mac_ctfont_equal_in_postscript_name.  All uses changed.
21239         (mac_font_create_line_with_string_and_font): Rename from
21240         mac_ctfont_create_line_with_string_and_font.  All uses changed.
21241         (mac_font_shape): Rename from mac_ctfont_shape.
21242         (mac_font_family_compare): Remove unused declaration.
21244 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
21246         Fix minor text quoting in calc, calendar, vc
21247         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
21248         * lisp/calc/calc-help.el (calc-j-prefix-help):
21249         * lisp/calc/calc-misc.el (calc-help):
21250         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
21251         Escape an apostrophe in a docstring.
21252         * lisp/calc/calc-forms.el (calc-hms-notation):
21253         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
21254         Escape an apostrophe in a diagnostic.
21255         * lisp/calc/calc-misc.el (calc-help):
21256         * lisp/calendar/diary-lib.el (diary-include-files):
21257         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
21258         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
21259         * lisp/vc/ediff-diff.el (ediff-same-contents):
21260         * lisp/vc/ediff-merg.el (ediff-re-merge):
21261         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
21262         * lisp/vc/ediff-util.el (ediff-test-save-region)
21263         (ediff-status-info):
21264         * lisp/vc/ediff.el (ediff-merge-revisions)
21265         (ediff-merge-revisions-with-ancestor):
21266         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
21267         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
21268         Respect text quoting style in doc string or diagnostic.
21269         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
21270         * lisp/vc/add-log.el (change-log-goto-source):
21271         Avoid double-formatting.
21272         * lisp/vc/ediff-init.el (format-message):
21273         New backward-compatibility alias.
21275 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
21277         Fix minor text quoting problems in lisp top level
21278         * lisp/apropos.el (apropos-describe-plist):
21279         * lisp/cus-theme.el (customize-themes):
21280         * lisp/dired.el (dired-log):
21281         * lisp/help-fns.el (describe-variable):
21282         * lisp/hexl.el (hexl-insert-multibyte-char):
21283         * lisp/info.el (Info-finder-find-node):
21284         * lisp/json.el (json-read-string):
21285         * lisp/novice.el (disabled-command-function)
21286         (disabled-command-function):
21287         * lisp/startup.el (normal-mouse-startup-screen):
21288         * lisp/woman.el (WoMan-log, WoMan-warn):
21289         Respect text quoting style in doc string or diagnostic.
21290         * lisp/replace.el (replace-character-fold):
21291         * src/syntax.c (Fmodify_syntax_entry):
21292         Escape an apostrophe in a docstring.
21293         * lisp/tempo.el (tempo-define-template):
21294         Remove confusing apostrophe from docstring.
21295         * lisp/whitespace.el (whitespace-mark-x):
21296         Use directed quotes in docstring.
21298 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
21300         Fix indentation rule in css-mode
21301         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
21302         brackets in presence of pseudo-selectors.  (Bug#21328)
21304 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
21306         Fix a bug in recording a macro while flyspell-mode is active
21307         * lisp/subr.el (sit-for): Don't call read-event when recording a
21308         macro.  (Bug#21329)
21310 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
21312         Tweak startup screen quoting
21313         * lisp/startup.el (normal-splash-screen): Use standard
21314         "M-" abbrevation rather than a confusingly-different one.
21315         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
21317 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
21319         Add test case for ‘format’ bug and refactor
21320         * src/editfns.c (styled_format): Refactor internally, mostly by
21321         moving declarations closer to uses.  This should not affect behavior.
21322         * test/automated/textprop-tests.el (textprop-tests-format): New test.
21324         Fix ‘format’ bug with property offsets
21325         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
21326         bug in calculating string property offsets (Bug#21351).
21328         Use straight quotes in lib-src diagnostics
21329         These auxiliary programs can’t use Emacs’s text-quoting-style,
21330         and it’s too much trouble to redo that mechanism by hand.
21331         So just use straight quotes for now.
21332         * lib-src/ebrowse.c (main):
21333         * lib-src/emacsclient.c (decode_options, main):
21334         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
21335         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
21336         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
21337         (none_help, print_language_names, print_help, add_regex)
21338         (suggest_asking_for_help):
21339         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
21340         Use straight quotes in diagnostics.
21342         ‘text-quoting-style’ fixes for admin
21343         * admin/admin.el (cusver-scan, cusver-check):
21344         * admin/authors.el (authors-canonical-file-name):
21345         * admin/bzrmerge.el (bzrmerge-missing):
21346         Respect ‘text-quoting-style’ in diagnostics.
21348 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21350         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
21351         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
21352         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
21353         * doc/lispref/internals.texi (Writing Emacs Primitives):
21354         * etc/NEWS:
21355         Document the change.
21356         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
21357         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
21358         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
21359         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
21360         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
21361         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
21362         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
21363         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
21364         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
21365         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
21366         Remove.  All uses removed.  The code now assumes
21367         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
21368         * src/bytecode.c (relocate_byte_stack):
21369         Rename from unmark_byte_stack, since it now only relocates.
21370         All callers changed.
21371         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
21372         with GCPROs removed.
21373         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
21374         * test/automated/finalizer-tests.el (finalizer-basic)
21375         (finalizer-circular-reference, finalizer-cross-reference)
21376         (finalizer-error):
21377         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
21378         Remove tests, as they depend on gc-precise.
21380 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
21382         Improve seq-concatenate for new sequence types
21383         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
21384         ensure that concatenation happens on sequences only.  This makes it
21385         possible to use `seq-concatenate' for new types of seqs.
21386         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
21387         New function used in `seq-concatenate'.
21388         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
21389         for seq-into-sequence.
21391 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
21393         Add mode local overrides to xref-find-definitions
21394         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
21395         (xref-mode-local-overload): New; add mode local overrides to
21396         xref-find-definitions.
21397         * test/automated/elisp-mode-tests.el: Add mode local override tests.
21398         (xref-elisp-test-run): Handle indented defuns.
21399         (xref-elisp-generic-*): Improve doc strings.
21400         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
21401         (elisp--xref-find-definitions): Use it.
21403         Add mode local overrides to describe-function
21404         * lisp/cedet/mode-local.el (describe-mode-local-overload):
21405         New; add mode local overrides to describe-function.
21406         * etc/NEWS: Document change.
21408 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21410         Prefer straight quoting in some etc text files
21411         These files are plain text and might be used by non-Emacs apps.
21412         They’re mostly ASCII, so just use straight quotes.
21414         Fix quoting in ‘message_with_string’
21415         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
21416         should work now.
21417         * src/xdisp.c (message_to_stderr): New function, refactored from
21418         part of ‘message3_nolog’.
21419         (message3_nolog): Use it.
21420         (message_with_string): Use it.  Don’t mishandle NUL bytes when
21421         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
21422         Use ‘format-message’, not ‘format’, so that quotes are translated.
21424 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
21426         Mention false positives of file-accessible-directory on w32
21427         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
21428         (Bug#21346)
21430 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21432         Treat error strings as help
21433         * src/print.c (print_error_message): Translate quotes and command
21434         keys in errmsg so that users see, e.g., "Symbol’s value as
21435         variable is void: foo" when text-quoting-style is curved.
21437 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
21439         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
21441 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
21443         Top-level elisp files respect ‘text-quoting-style’
21444         In top-level elisp files, use format-message in diagnostic formats,
21445         so that they follow user preference as per ‘text-quoting-style’
21446         rather than being hard-coded to quote `like this'.
21447         * lisp/allout.el (allout-get-configvar-values):
21448         * lisp/apropos.el (apropos-symbols-internal):
21449         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
21450         (dired-do-create-files-regexp, dired-create-files-non-directory):
21451         * lisp/dired-x.el (dired-do-run-mail):
21452         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
21453         * lisp/disp-table.el (standard-display-european):
21454         * lisp/find-dired.el (find-dired):
21455         * lisp/forms.el (forms-mode):
21456         * lisp/ido.el (ido-buffer-internal):
21457         * lisp/info.el (Info-index-next):
21458         * lisp/outline.el (outline-invent-heading):
21459         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
21460         * lisp/proced.el (proced-log):
21461         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
21462         * lisp/recentf.el (recentf-open-files, recentf-save-list):
21463         * lisp/savehist.el (savehist-save):
21464         * lisp/server.el (server-ensure-safe-dir):
21465         * lisp/ses.el (ses-rename-cell):
21466         * lisp/simple.el (list-processes--refresh):
21467         * lisp/startup.el (command-line):
21468         * lisp/strokes.el (strokes-unset-last-stroke)
21469         (strokes-execute-stroke):
21470         Use format-message so that quotes are restyled.
21471         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
21472         Don’t quote ‘raised’.
21473         * lisp/descr-text.el (describe-char):
21474         * lisp/dirtrack.el (dirtrack-debug-message):
21475         * lisp/hexl.el (hexl-insert-multibyte-char):
21476         Apply substitute-command-keys to help string.
21477         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
21478         (wdired-do-perm-changes):
21479         Let dired-log do the formatting.
21481 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21483         Go back to grave quoting in Tramp
21484         * lisp/net/tramp-adb.el:
21485         * lisp/net/tramp-cache.el:
21486         * lisp/net/tramp-compat.el:
21487         * lisp/net/tramp-gvfs.el:
21488         * lisp/net/tramp-gw.el:
21489         * lisp/net/tramp-sh.el:
21490         * lisp/net/tramp-smb.el:
21491         * lisp/net/tramp.el:
21492         Stick with grave quoting in diagnostics strings.  This is more
21493         portable to older Emacs, desirable for Tramp.
21494         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
21495         for diagnostic that needs requoting.
21496         * lisp/net/tramp-compat.el (format-message):
21497         Fall back on simple ‘format’, since that’s good enough now.
21499         Go back to grave quoting in Gnus
21500         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
21501         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
21502         (gnus-agent-fetch-headers):
21503         * lisp/gnus/gnus-int.el (gnus-start-news-server):
21504         * lisp/gnus/gnus-registry.el:
21505         (gnus-registry--split-fancy-with-parent-internal)
21506         (gnus-registry-post-process-groups):
21507         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
21508         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
21509         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
21510         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
21511         * lisp/gnus/spam.el (spam-check-blackholes):
21512         Stick with grave quoting in diagnostics strings.  This is more
21513         portable to older Emacs, desirable for Gnus.
21515         Fix customization of text-quoting-style
21516         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
21517         * lisp/wid-edit.el (widget-docstring):
21518         Get raw docstring here since it’s cooked later and should not be
21519         cooked twice.
21520         * lisp/cus-edit.el (custom-group-value-create):
21521         Cook the docstring before inserting it.
21522         * lisp/cus-start.el (text-quoting-style): Quote the customization
21523         docstrings according to the new rules.  Give curved examples.
21525         format-message now curves ` and '
21526         That way, the caller doesn’t have to use curved quotes to
21527         get diagnostics that match the text-quoting-style preferences.
21528         Suggested by Dmitry Gutov in:
21529         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
21530         This means we no longer need %qs, so remove that format.
21531         While we’re at it, fix an unlikely bug and lessen the pressure
21532         on the garbage collector by processing the string once rather
21533         than twice in the usual case.
21534         * doc/lispref/strings.texi (Formatting Strings):
21535         * etc/NEWS: Document this.
21536         * lisp/subr.el (format-message): Remove; now done in C.
21537         * src/callint.c (Fcall_interactively):
21538         * src/editfns.c (Fmessage, Fmessage_box):
21539         Use Fformat_message instead of Finternal__text_restyle
21540         followed by Fformat.
21541         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
21542         uLSQM and uRSQM.
21543         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
21544         when pure ASCII now suffices.  Fix unlikely bug when parsing
21545         unibyte string containing non-ASCII bytes.  Use inline code
21546         rather than memcpy, as it’s a tiny number of bytes.
21547         (Finternal__text_restyle): Remove; no longer used.
21548         (syms_of_doc): Don’t declare it.
21549         * src/editfns.c (Fformat): Rewrite in terms of new function
21550         ‘styled_format’.
21551         (Fformat_message): New function, moved here from subr.el.
21552         (styled_format): New function, with the old guts of Fformat,
21553         except it now optionally transliterates quotes, and it transliterates
21554         traditional grave accent and apostrophe quoting as well.
21555         Remove recently-added q flag; no longer needed or used.
21556         (syms_of_editfns): Define format-message.
21557         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
21558         Remove; no longer need to be global symbols.
21559         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
21560         so that callers can use `%s'.
21561         * src/image.c (image_size_error, xbm_load_image, xbm_load)
21562         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
21563         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
21564         (svg_load_image, gs_load, x_kill_gs_process):
21565         * src/lread.c (load_warn_old_style_backquotes):
21566         * src/xfaces.c (load_pixmap):
21567         * src/xselect.c (x_clipboard_manager_error_1):
21568         Use `%s' instead of %qs in formats.
21570 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
21572         Minor fixes in doc/emacs/search.texi
21573         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
21574         (Special Isearch): Use @w{} to generate several consecutive spaces
21575         with Texinfo 6.  (Bug#21345)
21577 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
21579         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
21580         (tramp-awk-coding-test): New defconsts.
21581         (tramp-remote-coding-commands): Use them.
21582         (tramp-find-inline-encoding): Check for Perl only if necessary.
21584 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
21586         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
21587         index entries for the special form `quote'.
21589 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
21591         Spelling fixes
21593         Gnus format-message typo fix
21594         * lisp/gnus/gnus-util.el (gnus-format-message):
21595         Fix typo when running in older Emacs.
21597         Prefer directed to neutral quotes in docstings and diagnostics.
21598         In docstrings, escape apostrophes that would otherwise be translated
21599         to curved quotes using the newer, simpler rules.
21600         * admin/unidata/unidata-gen.el (unidata-gen-table):
21601         * lisp/align.el (align-region):
21602         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
21603         * lisp/bookmark.el (bookmark-default-annotation-text):
21604         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
21605         * lisp/calc/calc-lang.el (math-read-giac-subscr)
21606         (math-read-math-subscr):
21607         * lisp/calc/calc-misc.el (report-calc-bug):
21608         * lisp/calc/calc-prog.el (calc-fix-token-name)
21609         (calc-read-parse-table-part):
21610         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
21611         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
21612         * lisp/dabbrev.el (dabbrev-expand):
21613         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
21614         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
21615         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
21616         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
21617         * lisp/erc/erc-button.el (erc-nick-popup):
21618         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
21619         * lisp/eshell/em-dirs.el (eshell/cd):
21620         * lisp/eshell/em-glob.el (eshell-glob-regexp):
21621         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
21622         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
21623         * lisp/eshell/esh-opt.el (eshell-show-usage):
21624         * lisp/files-x.el (modify-file-local-variable):
21625         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
21626         (filesets-update-pre010505):
21627         * lisp/find-cmd.el (find-generic, find-to-string):
21628         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
21629         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
21630         (gnus-agent-fetch-headers):
21631         * lisp/gnus/gnus-int.el (gnus-start-news-server):
21632         * lisp/gnus/gnus-registry.el:
21633         (gnus-registry--split-fancy-with-parent-internal):
21634         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
21635         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
21636         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
21637         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
21638         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
21639         * lisp/gnus/spam.el (spam-check-blackholes):
21640         * lisp/mail/feedmail.el (feedmail-run-the-queue):
21641         * lisp/mpc.el (mpc-playlist-rename):
21642         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
21643         * lisp/net/mairix.el (mairix-widget-create-query):
21644         * lisp/net/tramp-cache.el:
21645         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
21646         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
21647         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
21648         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
21649         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
21650         (org-babel-goto-named-result):
21651         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
21652         * lisp/org/ob-ref.el (org-babel-ref-resolve):
21653         * lisp/org/org-agenda.el (org-agenda-prepare):
21654         * lisp/org/org-bibtex.el (org-bibtex-fields):
21655         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
21656         (org-clock-resolve):
21657         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
21658         * lisp/org/org-habit.el (org-habit-parse-todo):
21659         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
21660         (org-mouse-context-menu):
21661         * lisp/org/org-table.el (org-table-edit-formulas):
21662         * lisp/org/ox.el (org-export-async-start):
21663         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
21664         (dun-rooms, dun-endgame-questions):
21665         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
21666         * lisp/progmodes/ada-xref.el (ada-find-executable):
21667         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
21668         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
21669         (flymake-start-syntax-check-process):
21670         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
21671         * lisp/progmodes/sql.el (sql-comint):
21672         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
21673         * lisp/server.el (server-get-auth-key):
21674         * lisp/subr.el (version-to-list):
21675         * lisp/textmodes/reftex-ref.el (reftex-label):
21676         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
21677         * lisp/vc/ediff-diff.el (ediff-same-contents):
21678         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
21679         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
21680         Use directed rather than neutral quotes in diagnostics.
21682         Treat ' like ’ even when not matching `
21683         This is simpler and easier to explain, and should encourage better
21684         typography.  Do this in Electric Quote mode and when translating
21685         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
21686         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
21687         * doc/emacs/text.texi (Quotation Marks):
21688         * doc/lispref/help.texi (Keys in Documentation):
21689         * etc/NEWS:
21690         Document this.
21691         * lisp/electric.el (electric-quote-post-self-insert-function):
21692         * src/doc.c (Fsubstitute_command_keys):
21693         Always treat ' like ’ even when not matched by an open quote.
21695 2015-08-25  Glenn Morris  <rgm@gnu.org>
21697         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
21698         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
21700 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
21702         * src/macfont.m (macfont_create_family_with_symbol):
21703         Accept localized names.
21705 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21707         Tramp diagnostics as per ‘text-quoting-style’
21708         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
21709         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
21710         (tramp-adb-handle-delete-directory)
21711         (tramp-adb-handle-delete-file)
21712         (tramp-adb-handle-file-local-copy)
21713         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
21714         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
21715         (tramp-adb-maybe-open-connection):
21716         * lisp/net/tramp-cache.el:
21717         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
21718         (tramp-compat-octal-to-decimal)
21719         (tramp-compat-coding-system-change-eol-conversion):
21720         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
21721         (tramp-gvfs-do-copy-or-rename-file)
21722         (tramp-gvfs-handle-delete-directory)
21723         (tramp-gvfs-handle-delete-file)
21724         (tramp-gvfs-handle-expand-file-name)
21725         (tramp-gvfs-handle-file-local-copy)
21726         (tramp-gvfs-handle-file-notify-add-watch)
21727         (tramp-gvfs-handle-make-directory)
21728         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
21729         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
21730         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
21731         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
21732         (tramp-sh-handle-set-visited-file-modtime)
21733         (tramp-sh-handle-set-file-modes)
21734         (tramp-sh-handle-file-name-all-completions)
21735         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
21736         (tramp-do-copy-or-rename-file-directly)
21737         (tramp-do-copy-or-rename-file-out-of-band)
21738         (tramp-sh-handle-make-directory)
21739         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
21740         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
21741         (tramp-sh-handle-start-file-process)
21742         (tramp-sh-handle-file-local-copy)
21743         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
21744         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
21745         (tramp-find-file-exists-command, tramp-open-shell)
21746         (tramp-find-shell)
21747         (tramp-open-connection-setup-interactive-shell)
21748         (tramp-find-inline-encoding, tramp-find-inline-compress)
21749         (tramp-compute-multi-hops, tramp-maybe-open-connection)
21750         (tramp-wait-for-output, tramp-send-command-and-check)
21751         (tramp-send-command-and-read, tramp-get-remote-path)
21752         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
21753         (tramp-get-ls-command-with-quoting-style)
21754         (tramp-get-test-command, tramp-get-remote-ln)
21755         (tramp-get-remote-perl, tramp-get-remote-stat)
21756         (tramp-get-remote-readlink, tramp-get-remote-trash)
21757         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
21758         (tramp-get-remote-inotifywait, tramp-get-remote-id)
21759         (tramp-get-remote-python):
21760         * lisp/net/tramp-smb.el (tramp-smb-errors)
21761         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
21762         (tramp-smb-handle-delete-directory)
21763         (tramp-smb-handle-delete-file)
21764         (tramp-smb-handle-file-local-copy)
21765         (tramp-smb-handle-make-directory)
21766         (tramp-smb-handle-make-directory-internal)
21767         (tramp-smb-handle-make-symbolic-link)
21768         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
21769         (tramp-smb-handle-set-file-modes)
21770         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
21771         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
21772         (tramp-process-actions):
21773         Generate diagnostics according to ‘text-quoting-style’, by
21774         using curved quotes in format strings and ‘format-message’
21775         when appropriate.
21776         * lisp/net/tramp-compat.el (format-message):
21777         Define a replacement, if it’s an older version of Emacs
21778         that doesn’t have it already.
21780         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
21782 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
21784         Fix documentation for `save-excursion'
21785         * doc/lispref/positions.texi (Excursions):
21786         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
21787         (Template for save-excursion, Point and mark): `save-excursion'
21788         does not save&restore the mark any more.
21790 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
21792         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
21793         New defconsts.
21794         (tramp-do-file-attributes-with-stat)
21795         (tramp-do-directory-files-and-attributes-with-stat): Use them.
21796         (tramp-convert-file-attributes): Remove double slashes in symlinks.
21797         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
21798         Handle symlinks with "//" in the file name.
21800         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
21802 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
21804         Fix cl-subseq and cl-concatenate
21805         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
21806         seq functions.
21807         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
21808         seq-concatenate.
21810 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
21812         Fix full-screen code when there is no window manager (Bug#21317)
21813         * src/xterm.h (x_wm_supports): Declare external.
21814         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
21815         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
21816         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
21817         `fullscreen' frame parameter.
21818         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
21819         without a window manager.
21821 2015-08-24  Glenn Morris  <rgm@gnu.org>
21823         * lisp/version.el (emacs-version): No longer include build host.
21824         * doc/lispref/intro.texi (Version Info): Update example.
21826 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
21828         * doc/lispref/elisp.texi: Fix typo in previous change.
21830         More-conservative ‘format’ quote restyling
21831         Instead of restyling curved quotes for every call to ‘format’,
21832         create a new function ‘format-message’ that does the restyling,
21833         and using the new function instead of ‘format’ only in contexts
21834         where this seems appropriate.
21835         Problem reported by Dmitry Gutov and Andreas Schwab in:
21836         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
21837         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
21838         * doc/lispref/commands.texi (Using Interactive):
21839         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
21840         * doc/lispref/display.texi (Displaying Messages, Progress):
21841         * doc/lispref/elisp.texi:
21842         * doc/lispref/help.texi (Keys in Documentation):
21843         * doc/lispref/minibuf.texi (Minibuffer Misc):
21844         * doc/lispref/strings.texi (Formatting Strings):
21845         * etc/NEWS:
21846         Document the changes.
21847         * lisp/abbrev.el (expand-region-abbrevs):
21848         * lisp/apropos.el (apropos-library):
21849         * lisp/calc/calc-ext.el (calc-record-message)
21850         (calc-user-function-list):
21851         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
21852         * lisp/calc/calc-lang.el (math-read-big-balance):
21853         * lisp/calc/calc-store.el (calc-edit-variable):
21854         * lisp/calc/calc-units.el (math-build-units-table-buffer):
21855         * lisp/calc/calc-yank.el (calc-edit-mode):
21856         * lisp/calendar/icalendar.el (icalendar-export-region)
21857         (icalendar--add-diary-entry):
21858         * lisp/cedet/mode-local.el (mode-local-print-binding)
21859         (mode-local-describe-bindings-2):
21860         * lisp/cedet/semantic/complete.el (semantic-completion-message):
21861         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
21862         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
21863         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
21864         * lisp/descr-text.el (describe-text-properties-1, describe-char):
21865         * lisp/dframe.el (dframe-message):
21866         * lisp/dired-aux.el (dired-query):
21867         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
21868         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
21869         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
21870         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
21871         (cconv-analyze-form):
21872         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
21873         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
21874         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
21875         * lisp/emacs-lisp/edebug.el (edebug-format):
21876         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
21877         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
21878         (eldoc-message):
21879         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
21880         * lisp/emacs-lisp/find-func.el (find-function-library):
21881         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
21882         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
21883         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
21884         * lisp/emacs-lisp/package.el (package-compute-transaction)
21885         (package-install-button-action, package-delete-button-action)
21886         (package-menu--list-to-prompt):
21887         * lisp/emacs-lisp/timer.el (timer-event-handler):
21888         * lisp/emacs-lisp/warnings.el (lwarn, warn):
21889         * lisp/emulation/viper-cmd.el:
21890         (viper-toggle-parse-sexp-ignore-comments)
21891         (viper-kill-buffer, viper-brac-function):
21892         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
21893         * lisp/facemenu.el (facemenu-add-new-face):
21894         * lisp/faces.el (face-documentation, read-face-name)
21895         (face-read-string, read-face-font, describe-face):
21896         * lisp/files.el (find-alternate-file, hack-local-variables)
21897         (hack-one-local-variable--obsolete, write-file)
21898         (basic-save-buffer, delete-directory):
21899         * lisp/format.el (format-write-file, format-find-file)
21900         (format-insert-file):
21901         * lisp/help-fns.el (help-fns--key-bindings)
21902         (help-fns--compiler-macro, help-fns--obsolete)
21903         (help-fns--interactive-only, describe-function-1)
21904         (describe-variable):
21905         * lisp/help.el (describe-mode):
21906         * lisp/info-xref.el (info-xref-output):
21907         * lisp/info.el (Info-virtual-index-find-node)
21908         (Info-virtual-index, info-apropos):
21909         * lisp/international/kkc.el (kkc-error):
21910         * lisp/international/mule-cmds.el:
21911         (select-safe-coding-system-interactively)
21912         (select-safe-coding-system, describe-input-method):
21913         * lisp/international/mule-conf.el (code-offset):
21914         * lisp/international/mule-diag.el (describe-character-set)
21915         (list-input-methods-1):
21916         * lisp/international/quail.el (quail-error):
21917         * lisp/minibuffer.el (minibuffer-message):
21918         * lisp/mpc.el (mpc--debug):
21919         * lisp/msb.el (msb--choose-menu):
21920         * lisp/net/ange-ftp.el (ange-ftp-message):
21921         * lisp/net/gnutls.el (gnutls-message-maybe):
21922         * lisp/net/newst-backend.el (newsticker--sentinel-work):
21923         * lisp/net/newst-treeview.el (newsticker--treeview-load):
21924         * lisp/net/nsm.el (nsm-query-user):
21925         * lisp/net/rlogin.el (rlogin):
21926         * lisp/net/soap-client.el (soap-warning):
21927         * lisp/net/tramp.el (tramp-debug-message):
21928         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
21929         * lisp/nxml/nxml-parse.el (nxml-parse-error):
21930         * lisp/nxml/rng-cmpct.el (rng-c-error):
21931         * lisp/nxml/rng-match.el (rng-compile-error):
21932         * lisp/nxml/rng-uri.el (rng-uri-error):
21933         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
21934         * lisp/org/org-ctags.el:
21935         (org-ctags-ask-rebuild-tags-file-then-find-tag):
21936         * lisp/proced.el (proced-log):
21937         * lisp/progmodes/ebnf2ps.el (ebnf-log):
21938         * lisp/progmodes/flymake.el (flymake-log):
21939         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
21940         * lisp/replace.el (occur-1):
21941         * lisp/simple.el (execute-extended-command)
21942         (undo-outer-limit-truncate, define-alternatives):
21943         * lisp/startup.el (command-line):
21944         * lisp/subr.el (error, user-error, add-to-list):
21945         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
21946         (tutorial--find-changed-keys):
21947         * src/callint.c (Fcall_interactively):
21948         * src/editfns.c (Fmessage, Fmessage_box):
21949         Restyle the quotes of format strings intended for use as a
21950         diagnostic, when restyling seems appropriate.
21951         * lisp/subr.el (format-message): New function.
21952         * src/doc.c (Finternal__text_restyle): New function.
21953         (syms_of_doc): Define it.
21955 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21957         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
21959 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21961         python.el: Fix python-shell-buffer-substring on indented code
21962         (Bug#21086)
21963         * lisp/progmodes/python.el (python-shell-buffer-substring):
21964         Respect current line indentation when calculating string.
21965         * test/automated/python-tests.el
21966         (python-shell-buffer-substring-10)
21967         (python-shell-buffer-substring-11)
21968         (python-shell-buffer-substring-12): New tests.
21970 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
21972         Fix minor glitches from ‘format’ reversion
21973         * doc/lispref/strings.texi (Formatting Strings):
21974         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
21975         Documentation’, not below.
21976         * src/syntax.c (Finternal_describe_syntax_value):
21977         Prefer AUTO_STRING to build_string where either will do, as
21978         AUTO_STRING is a bit faster.
21980 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
21982         python.el: Defer shell setup code until first interactive prompt
21983         * lisp/progmodes/python.el
21984         (python-shell-comint-watch-for-first-prompt-output-filter):
21985         New function.
21986         (inferior-python-mode): Use it.
21987         (python-shell-first-prompt-hook): New hook.
21988         (python-shell-send-setup-code)
21989         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
21990         this hook instead of inferior-python-hook.
21992 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
21994         Remove the calls to `seq-into` from `seq-concatenate`
21995         Since most new types of seq would have to be defined as sequences (cons
21996         cells or CL structs, mostly), there is no need to convert the seqs to
21997         sequences (which can be a fairly expensive operation).
21998         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
21999         sequences.
22001 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22003         python.el: Fix completion for pdb interactions
22004         * lisp/progmodes/python.el (python-shell-completion-setup-code):
22005         Simplify.  Toggle print_mode for native wrapped completer.
22006         (python-shell-completion-native-setup): Ensure process buffer.
22007         Add print_mode attribute to completer wrapper to toggle returning
22008         or printing candidates.
22009         (python-shell-completion-native-get-completions): Cleanup.
22010         (python-shell-completion-get-completions): Cleanup.
22011         (python-shell-completion-at-point): Perform prompt checks.
22012         Force fallback completion in pdb interactions.
22014 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
22016         Make seq.el more extensible by using cl-defmethod
22017         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
22018         make it easier to extend seq.el with new "seq types".
22019         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
22020         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
22021         subseq in cl-extra.el, and use it in seq.el.
22023 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22025         python.el: Fix prompt detection with user overridden interpreter
22026         * lisp/progmodes/python.el (python-shell-prompt-detect):
22027         Honor buffer local python-shell-interpreter and
22028         python-shell-interpreter-interactive-arg.
22030 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
22032         Support exec-directory with non-ASCII characters on Windows
22033         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
22034         in the system's ANSI codepage, when it is used for invoking
22035         cmdproxy.
22037 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
22039         Revert "Extend ‘format’ to translate curved quotes"
22040         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
22042         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
22043         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
22045 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
22047         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
22048         Clarify "invisible window".
22050 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
22052         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
22053         magic-fallback-mode-alist.
22055 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22057         python.el: fallback completion, ffap and eldoc setup enhancements
22058         Setup codes are now sent continuously so that the current frame is
22059         always taken into account.  This allows working within debuggers
22060         and always keeping a fresh version of setup codes that will return
22061         proper results.
22062         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
22063         (python-shell-send-setup-code): Send code only when
22064         python-shell-setup-codes is non-nil.
22065         (python-shell-completion-string-code): Cleanup trailing newline.
22066         (python-shell-completion-get-completions): Always use
22067         python-shell-completion-setup-code.
22068         (python-ffap-setup-code): Work with any object, not only modules.
22069         (python-ffap-string-code): Cleanup trailing newline.
22070         (python-ffap-module-path): Always use python-ffap-setup-code.
22071         (python-eldoc-string-code): Cleanup trailing newline.
22072         (python-eldoc--get-doc-at-point): Always use
22073         python-eldoc-setup-code.  Return non-nil only if docstring is
22074         found.
22076         python.el: Increase native completion robustness
22077         * lisp/progmodes/python.el (python-shell-completion-native-setup):
22078         Make completer print real candidates and just return dummy ones to
22079         avoid input modification.
22080         (python-shell-completion-native-get-completions): Set
22081         comint-redirect-insert-matching-regexp to non-nil and make
22082         comint-redirect-finished-regexp match the last dummy candidate.
22083         Use python-shell-accept-process-output to wait for the full list
22084         of candidates.
22086 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22088         Fix invocation of programs via cmdproxy.exe
22089         * src/w32proc.c (sys_spawnve): Use exec-directory, not
22090         invocation-directory, for finding cmdproxy.exe.  When Emacs is
22091         run from the source tree, look for cmdproxy.exe in the same source
22092         tree.  (Bug#21323)
22094 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
22096         Handle comments inside unquoted URIs in css-mode
22097         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
22098         (css-syntax-propertize-function): New defconst.
22099         (css--font-lock-keywords): Handle parens around unquoted URIs.
22100         (css-mode): Set `syntax-propertize-function'.
22102 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22104         Support invocation of Hunspell with multiple dictionaries
22105         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
22106         Support lists of dictionaries of the form "DICT1,DICT2,...".
22107         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
22109         Minor formatting changes in ispell.el
22110         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
22111         (ispell-print-if-debug, ispell-aspell-find-dictionary)
22112         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
22113         (ispell-hunspell-dictionary-alist)
22114         (ispell-hunspell-fill-dictionary-entry)
22115         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
22116         (ispell-buffer-with-debug, ispell-complete-word)
22117         (ispell-current-dictionary, ispell-current-personal-dictionary)
22118         (ispell-accept-output, ispell-minor-mode)
22119         (ispell-personal-dictionary, ispell-dictionary-alist)
22120         (ispell-really-aspell, ispell-really-hunspell)
22121         (ispell-encoding8-command, ispell-aspell-supports-utf8)
22122         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
22123         Fix whitespace, inconsistent capitalization, and arguments in doc
22124         strings.
22126 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
22128         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
22129         function refused to resize a size-preserved window.
22131 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
22133         * doc/lispref/windows.texi (Selecting Windows): Improve
22134         documentation and indexing of 'window-use-time'.
22136 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22138         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
22139         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
22140         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
22141         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
22142         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
22143         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
22144         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
22145         Fix up commenting style.
22147 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22149         text-quoting-style in emacs-lisp diagnostics
22150         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
22151         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
22152         (ad-disable-advice, ad-remove-advice, ad-set-argument)
22153         (ad-set-arguments):
22154         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
22155         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
22156         (byte-optimize-while, byte-optimize-apply):
22157         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
22158         (byte-compile-log-file, byte-compile-format-warn)
22159         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
22160         (byte-compile-cl-warn)
22161         (byte-compile-warn-about-unresolved-functions)
22162         (byte-compile-file, byte-compile-fix-header)
22163         (byte-compile--declare-var, byte-compile-file-form-defmumble)
22164         (byte-compile-form, byte-compile-normal-call)
22165         (byte-compile-variable-ref, byte-compile-variable-set)
22166         (byte-compile-subr-wrong-args, byte-compile-setq-default)
22167         (byte-compile-negation-optimizer)
22168         (byte-compile-condition-case--old)
22169         (byte-compile-condition-case--new, byte-compile-save-excursion)
22170         (byte-compile-defvar, byte-compile-autoload)
22171         (byte-compile-lambda-form)
22172         (byte-compile-make-variable-buffer-local, display-call-tree)
22173         (batch-byte-compile):
22174         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
22175         (cconv-analyze-form):
22176         * lisp/emacs-lisp/chart.el (chart-space-usage):
22177         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
22178         (check-declare-warn, check-declare-file)
22179         (check-declare-directory):
22180         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
22181         (checkdoc-message-text-engine):
22182         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
22183         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
22184         (cl-symbol-macrolet):
22185         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
22186         * lisp/emacs-lisp/copyright.el (copyright)
22187         (copyright-update-directory):
22188         * lisp/emacs-lisp/edebug.el (edebug-read-list):
22189         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
22190         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
22191         (eieio-oref, eieio-oset-default):
22192         * lisp/emacs-lisp/eieio-speedbar.el:
22193         (eieio-speedbar-child-make-tag-lines)
22194         (eieio-speedbar-child-description):
22195         * lisp/emacs-lisp/eieio.el (defclass, change-class):
22196         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
22197         (elint-init-form, elint-check-defalias-form)
22198         (elint-check-let-form):
22199         * lisp/emacs-lisp/ert.el (ert-get-test):
22200         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
22201         (find-function-library):
22202         * lisp/emacs-lisp/generator.el (iter-yield):
22203         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
22204         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
22205         * lisp/emacs-lisp/package-x.el (package-upload-file):
22206         * lisp/emacs-lisp/package.el (package-version-join)
22207         (package-disabled-p, package-activate-1, package-activate)
22208         (package--download-one-archive)
22209         (package--download-and-read-archives)
22210         (package-compute-transaction, package-install-from-archive)
22211         (package-install, package-install-selected-packages)
22212         (package-delete, package-autoremove)
22213         (package-install-button-action, package-delete-button-action)
22214         (package-menu-hide-package, package-menu--list-to-prompt)
22215         (package-menu--perform-transaction)
22216         (package-menu--find-and-notify-upgrades):
22217         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
22218         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
22219         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
22220         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
22221         * lisp/emacs-lisp/smie.el (smie-config-save):
22222         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
22223         * lisp/emacs-lisp/testcover.el (testcover-1value):
22224         Use curved quotes in diagnostic format strings.
22226 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
22228         python.el: Ensure remote process-environment on non-interactive processes
22229         * lisp/progmodes/python.el
22230         (python-shell-tramp-refresh-process-environment): New function.
22231         (python-shell-with-environment): Use it.
22232         * test/automated/python-tests.el (python-shell-with-environment-2):
22233         Update.
22235         python.el: Enhancements to process environment setup.
22236         * lisp/progmodes/python.el (python-shell-process-environment)
22237         (python-shell-extra-pythonpaths, python-shell-exec-path)
22238         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
22239         (python-shell-setup-codes): Remove :safe.
22240         (python-shell-remote-exec-path): New defcustom.
22241         (python-shell--add-to-path-with-priority): New macro.
22242         (python-shell-calculate-pythonpath): Give priority to
22243         python-shell-extra-pythonpaths.  Update docstring.
22244         (python-shell-calculate-process-environment): Give priority to
22245         python-shell-process-environment.  Update docstring.
22246         (python-shell-calculate-exec-path): Give priority to
22247         python-shell-exec-path and calculated virtualenv bin directory.
22248         Update docstring.
22249         (python-shell-tramp-refresh-remote-path): New function.
22250         (python-shell-with-environment): Use it when working remotely and
22251         do not modify tramp-remote-path.  Allow nesting.
22252         (python-shell-calculate-command): Remove useless
22253         python-shell-with-environment call.
22254         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
22255         (python-shell-calculate-pythonpath-2)
22256         (python-shell-calculate-process-environment-6)
22257         (python-shell-calculate-process-environment-7)
22258         (python-shell-calculate-process-environment-8)
22259         (python-shell-calculate-exec-path-3)
22260         (python-shell-calculate-exec-path-4)
22261         (python-shell-calculate-exec-path-5)
22262         (python-shell-calculate-exec-path-6)
22263         (python-shell-with-environment-3): New tests.
22264         (python-shell-calculate-process-environment-2)
22265         (python-shell-calculate-process-environment-3)
22266         (python-shell-calculate-process-environment-4)
22267         (python-shell-calculate-process-environment-5)
22268         (python-shell-calculate-exec-path-1)
22269         (python-shell-calculate-exec-path-2)
22270         (python-shell-with-environment-1)
22271         (python-shell-with-environment-2): Update and simplify.
22273 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22275         Avoid hard-coding "M-x command" in docstrings
22276         * lisp/calendar/todo-mode.el (todo-mode):
22277         * lisp/desktop.el (desktop-save-mode):
22278         * lisp/edmacro.el (edit-kbd-macro):
22279         * lisp/emacs-lisp/package.el (package-menu-execute):
22280         * lisp/emulation/viper-cmd.el (viper-ask-level):
22281         * lisp/emulation/viper-init.el (viper-expert-level):
22282         * lisp/filesets.el (filesets-add-buffer):
22283         * lisp/follow.el (follow-mode):
22284         * lisp/gnus/auth-source.el (auth-sources):
22285         * lisp/international/ogonek.el (ogonek-informacja)
22286         (ogonek-information):
22287         * lisp/net/tramp.el (tramp-process-actions):
22288         * lisp/org/org-gnus.el (org-gnus-no-new-news):
22289         * lisp/org/org.el (org-ellipsis):
22290         * lisp/progmodes/python.el (python-shell-get-process-or-error):
22291         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
22292         * lisp/server.el (server-start):
22293         * lisp/type-break.el (type-break-noninteractive-query):
22294         * lisp/userlock.el (ask-user-about-supersession-help):
22295         * lisp/whitespace.el (whitespace-report-region):
22296         Prefer (substitute-command-keys "`\\[foo-command]'")
22297         to "`M-x foo-command'" in docstrings and the like.
22299 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
22301         Use add-function for prettify-symbols-compose-predicate
22302         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
22303         prettify-symbols-compose-predicate in terms of add-function.
22304         * etc/NEWS: Mention prettify-symbols-compose-predicate and
22305         prettify-symbols-mode support in tex-mode.
22307 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22309         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
22310         (smie-indent-exps, smie-indent-keyword): Use it.
22311         * test/indent/css-mode.css: Test alignment with leading comment.
22313 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22315         Respect text-quoting-style in (*Finder*) menus
22316         * lisp/info.el (info--prettify-description):
22317         Treat description as a docstring, so that it's requoted as
22318         per text-quoting-style.
22320 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
22322         Document `window-use-time' in Elisp manual
22323         * doc/lispref/windows.texi (Selecting Windows): Document
22324         `window-use-time'.
22326 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
22328         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
22329         This is a cleaner fix for Bug#21260 than the previous change.
22331 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22333         Respect text-quoting-style in calc
22334         In calc, tespect text-quoting-style preference in diagnostic
22335         formats and fix a few similar problems in docstrings.
22336         * lisp/calc/calc-aent.el (math-read-factor):
22337         * lisp/calc/calc-embed.el (calc-do-embedded):
22338         * lisp/calc/calc-ext.el (calc-user-function-list)
22339         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
22340         * lisp/calc/calc-help.el (calc-describe-key)
22341         (calc-describe-thing):
22342         * lisp/calc/calc-lang.el (calc-c-language)
22343         (math-parse-fortran-vector-end, math-parse-tex-sum)
22344         (math-parse-eqn-matrix, math-parse-eqn-prime)
22345         (calc-yacas-language, calc-maxima-language, calc-giac-language)
22346         (math-read-big-rec, math-read-big-balance):
22347         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
22348         (calc-auto-recompute):
22349         * lisp/calc/calc-prog.el (calc-user-define-invocation)
22350         (math-do-arg-check):
22351         * lisp/calc/calc-store.el (calc-edit-variable):
22352         * lisp/calc/calc-units.el (math-build-units-table-buffer):
22353         * lisp/calc/calc-vec.el (math-read-brackets):
22354         * lisp/calc/calc-yank.el (calc-edit-mode):
22355         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
22356         Use curved quotes in diagnostic format strings.
22357         * lisp/calc/calc-help.el (calc-describe-thing):
22358         Format docstrings with substitute-command-keys.
22359         * lisp/calc/calc-help.el (calc-j-prefix-help):
22360         * lisp/calc/calc-misc.el (calc-help):
22361         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
22362         Escape a docstring "`".
22364 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
22366         Fix documentation of 'menu-set-font' and 'set-frame-font'
22367         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
22368         * doc/lispref/frames.texi (Frame Font): Document that
22369         set-frame-font with the last argument 't' will also make the font
22370         the default for the future GUI frames.
22372         Document '--create-frame' option to emacsclient
22373         * doc/emacs/misc.texi (emacsclient Options): Document the
22374         '--create-frame' option.  (Bug#21308)
22376 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
22378         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
22380 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
22382         Document 'get-mru-window' in the ELisp manual
22383         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
22384         'get-mru-window'.  (Bug#21306)
22386         Clarify documentation of 'get-buffer-window-list'
22387         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
22388         current window, if relevant, will be the first in the list
22389         returned by 'get-buffer-window-list'.
22390         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
22392 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
22394         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
22395         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
22396         `switch-to-buffer'.
22398 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
22400         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
22401         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
22402         `display-buffer' instead of `switch-to-buffer'.
22404 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
22406         Follow user preference in calendar diagnostics
22407         Respect text-quoting-style preference in diagnostic formats by
22408         using curved quotes (which are translated as per text-quoting-style)
22409         instead of grave accent and apostrophe (which are not).
22410         * lisp/calendar/appt.el (appt-display-message):
22411         * lisp/calendar/diary-lib.el (diary-check-diary-file)
22412         (diary-mail-entries, diary-from-outlook):
22413         * lisp/calendar/icalendar.el (icalendar-export-region)
22414         (icalendar--convert-float-to-ical)
22415         (icalendar--convert-date-to-ical)
22416         (icalendar--convert-ical-to-diary)
22417         (icalendar--convert-recurring-to-diary)
22418         (icalendar--add-diary-entry):
22419         * lisp/calendar/time-date.el (format-seconds):
22420         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
22421         (timeclock-make-hours-explicit):
22422         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
22423         (todo-item-mark, todo-check-format)
22424         (todo-insert-item--next-param, todo-edit-item--next-key)
22425         (todo-mode):
22426         Use curved quotes in diagnostic format strings.
22427         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
22428         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
22429         Just use straight quoting for simple test case.
22431 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
22433         * src/gfilenotify.c (Fgfile_add_watch):
22434         Handle errors from g_file_monitor.
22436 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
22438         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
22439         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
22440         frame" instead of "non-minibuffer frame".
22442         Fix frame geometry related text
22443         * doc/lispref/frames.texi (Frame Layout):
22444         Rename `x-frame-geometry' to `frame-geometry'.
22445         * doc/lispref/frames.texi (Mouse Position):
22446         * doc/lispref/windows.texi (Coordinates and Windows):
22447         Use `set-mouse-absolute-pixel-position' instead of
22448         `x-set-mouse-absolute-pixel-position'.
22450         Sanitize frame geometry related functions
22451         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
22452         (Fx_frame_edges): Rename to Fns_frame_edges.
22453         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
22454         (Fx_frame_edges): Rename to Fw32_frame_edges.
22455         (Fx_mouse_absolute_pixel_position): Rename to
22456         Fw32_mouse_absolute_pixel_position.
22457         (Fx_set_mouse_absolute_pixel_position): Rename to
22458         Fw32_set_mouse_absolute_pixel_position.
22459         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
22460         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
22461         (ns-frame-edges, w32-mouse-absolute-pixel-position)
22462         (x-mouse-absolute-pixel-position)
22463         (w32-set-mouse-absolute-pixel-position)
22464         (x-set-mouse-absolute-pixel-position): Declare.
22465         (frame-geometry, mouse-absolute-pixel-position)
22466         (set-mouse-absolute-pixel-position): New functions.
22467         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
22469 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
22471         Fix MinGW64 build broken by latest w32uniscribe.c changes
22472         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
22473         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
22474         (Bug#21260)
22476 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
22478         Add TeX defaults for prettify-symbol-mode
22479         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22480         Rename from tex-prettify-symbols-alist.
22481         (tex--prettify-symbols-compose-p): New function.
22482         (tex-common-initialization): Use them as prettify-symbols-alist
22483         and prettify-symbols-compose-predicate.
22485         Generalize prettify-symbols to arbitrary modes
22486         * lisp/progmodes/prog-mode.el
22487         (prettify-symbols-default-compose-p): New function.
22488         (prettify-symbols-compose-predicate): New variable.
22489         (prettify-symbols--compose-symbol): Use it.
22491 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
22493         Don't quote symbols 'like-this' in docstrings etc.
22494         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
22495         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
22496         * lisp/allout.el (allout-add-resumptions, allout-mode):
22497         * lisp/calculator.el (calculator-operators):
22498         * lisp/cedet/data-debug.el (dd-propertize):
22499         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
22500         * lisp/cedet/semantic/analyze/debug.el:
22501         (semantic-analyzer-debug-global-miss-text):
22502         * lisp/cedet/semantic/lex-spp.el:
22503         (semantic-lex-spp-replace-or-symbol-or-keyword):
22504         * lisp/cedet/semantic/symref.el:
22505         (semantic-symref-cleanup-recent-buffers-fcn):
22506         * lisp/cedet/semantic/tag.el (semantic-tag-class):
22507         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
22508         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
22509         * lisp/gnus/pop3.el (pop3-authentication-scheme):
22510         * lisp/help-fns.el (describe-function-orig-buffer):
22511         * lisp/imenu.el (imenu--history-list):
22512         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
22513         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
22514         (feedmail-queue-default-file-slug)
22515         (feedmail-queue-buffer-file-name):
22516         * lisp/net/mairix.el (mairix-searches-mode-map):
22517         * lisp/net/newst-backend.el (newsticker-retrieval-method)
22518         (newsticker-auto-mark-filter-list):
22519         * lisp/obsolete/vi.el (vi-mode):
22520         * lisp/progmodes/cc-engine.el (c-literal-type):
22521         * lisp/progmodes/cpp.el (cpp-face):
22522         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
22523         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
22524         * lisp/progmodes/pascal.el (pascal-auto-lineup):
22525         * lisp/progmodes/prog-mode.el (prog-widen):
22526         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
22527         (verilog-auto-lineup, verilog-auto-reset-widths)
22528         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
22529         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
22530         (flyspell-maybe-correct-doubling):
22531         * lisp/textmodes/table.el (table-justify, table-justify-cell)
22532         (table-justify-row, table-justify-column, table-insert-sequence)
22533         (table--justify-cell-contents):
22534         * lisp/url/url-auth.el (url-get-authentication):
22535         * lisp/window.el (display-buffer-record-window):
22536         * lisp/xml.el (xml-parse-file, xml-parse-region):
22537         * src/gfilenotify.c (Fgfile_add_watch):
22538         Don't quote symbols with apostrophes in doc strings.
22539         Use asymmetric quotes instead.
22540         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
22541         Likewise for symbol in diagnostic.
22542         * lisp/image.el (image-extension-data):
22543         * lisp/register.el (frame-configuration-to-register):
22544         * src/buffer.c (syms_of_buffer):
22545         Remove bogus apostrophes after symbols.
22546         * lisp/thumbs.el (thumbs-conversion-program):
22547         Quote Lisp string values using double-quotes, not apostrophes.
22549 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
22551         Describe frame geometry and related functions in Elisp manual
22552         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
22553         (Showing Images): Update references.
22554         * doc/lispref/elisp.texi (Top): Update node listing.
22555         * doc/lispref/frames.texi (Frame Geometry): New node.
22556         Move `Size and Position' section here.
22557         (Size Parameters): Update references.
22558         (Mouse Position): Update references and nomenclature.
22559         Describe new functions `x-mouse-absolute-pixel-position' and
22560         `x-set-mouse-absolute-pixel-position'.
22561         * doc/lispref/windows.texi (Window Sizes): Update references.
22562         (Resizing Windows): Update references.  Move description of
22563         `fit-frame-to-buffer' here.
22564         (Coordinates and Windows): Update nomenclature and references.
22565         Describe new arguments of `window-edges'.  Comment out
22566         descriptions of `window-left-column', `window-top-line',
22567         `window-pixel-left' and `window-pixel-top'.  Describe
22568         `window-absolute-pixel-position'.
22570 2015-08-20  Alan Mackenzie  <acm@muc.de>
22572         Handling of `c-parse-state'.  Fix low level bug.
22573         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
22574         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
22576 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
22578         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
22579         window instead of deleting it.
22581 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
22583         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
22584         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
22585         determine whether frame has a titlebar.
22586         Suggested by Eli Zaretskii <eliz@gnu.org>
22588 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
22590         Add a prettify-symbols-alist for (La)TeX
22591         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
22592         New variable holding an alist suitable as prettify-symbols-alist in
22593         (La)TeX modes.
22595 2015-08-19  Alan Mackenzie  <acm@muc.de>
22597         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
22598         Fixes debbugs#21275.
22599         In Emacs >= 25, let electric-pair-mode take precedence over
22600         delete-selection-mode.
22601         * lisp/delsel.el (delete-selection-uses-region-p): New function,
22602         previously a lambda expression in a property value for
22603         `self-insert-command'.
22604         (top-level): Set the `delete-selection' property of
22605         `self-insert-command' to `delete-selection-uses-region-p'.
22606         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
22607         property for c-electric-\(brace\|paren\) the value
22608         `delete-selection-uses-region-p' when the latter function exists.
22610 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22612         Fix key binding quoting in tutorial *Help*
22613         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
22614         When generating help for custom key bindings, use the user-preferred
22615         quoting style rather than hardcoding the grave style.
22617 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
22619         Improve and future-proof OTF fonts support in w32uniscribe.c
22620         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
22621         about the expected results and why the new Uniscribe APIs are not
22622         used in this function.
22623         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
22624         (ScriptGetFontFeatureTags_Proc): New function typedefs.
22625         (uniscribe_new_apis): New static variable.
22626         (uniscribe_check_features): New function, implements OTF features
22627         verification while correctly accounting for features in the list
22628         after the nil member, if any.
22629         (uniscribe_check_otf_1): New function, retrieves the features
22630         supported by the font for the requested script and language using
22631         the Uniscribe APIs available from Windows Vista onwards.
22632         (uniscribe_check_otf): If the new Uniscribe APIs are available,
22633         use them in preference to reading the font data directly.  Call
22634         uniscribe_check_features to verify that the requested features are
22635         supported, replacing the original incomplete code.
22636         (syms_of_w32uniscribe): Initialize function pointers for the new
22637         Uniscribe APIs.  (Bug#21260)
22638         (otf_features): Scan the script, langsys, and feature arrays back
22639         to front, so that the result we return has them in alphabetical
22640         order, like ftfont.c does.
22641         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
22642         New variable for debugging w32uniscribe.c code.
22644 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
22646         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
22647         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
22648         clause of `isearch-search-fun-default'.  That lax variable does not
22649         refer to lax-whitespacing.  Related to (bug#21777).
22650         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
22651         * lisp/character-fold.el (character-fold-search): Set to nil.
22652         Default to nil for now, until someone implements proper
22653         lax-whitespacing with char-fold searching.
22655 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
22657         Fix doc-string of `help-mode-finish'.
22658         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
22660         In nsimage.m include coding.h (Bug#21292)
22661         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
22663         Move window edge functions to Elisp.
22664         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
22665         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
22666         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
22667         Move to window.el.
22668         (calc_absolute_offset): Remove.
22669         * lisp/frame.el (frame-edges): New function.
22670         * lisp/window.el (window-edges, window-pixel-edges)
22671         (window-absolute-pixel-edges): Move here from window.c.
22672         (window-body-edges, window-body-pixel-edges)
22673         (window-absolute-body-pixel-edges): Move here from window.c and
22674         rename "inside" to "body".  Keep old names as aliases.
22675         (window-absolute-pixel-position): New function.
22677 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
22679         [Gnus]: Use overlay functions directly
22680         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
22681         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
22682         (gnus-article-highlight-signature, gnus-article-extend-url-button)
22683         (gnus-article-add-button, gnus-insert-prev-page-button)
22684         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
22685         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
22686         (gnus-cite-add-face):
22687         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
22688         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
22689         (gnus-tree-recenter, gnus-highlight-selected-tree):
22690         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
22691         (gnus-summary-show-thread, gnus-summary-hide-thread)
22692         (gnus-highlight-selected-summary):
22693         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
22694         * lisp/gnus/message.el (message-fix-before-sending)
22695         (message-toggle-image-thumbnails):
22696         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
22697         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
22698         Use overlay functions directly instead of using gnus-overlay-*,
22699         message-overlay-*, and sieve-overlay-*.
22700         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
22701         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
22702         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
22703         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
22704         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
22705         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
22706         (message-overlay-get, message-overlay-put, message-overlays-in):
22707         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
22708         (sieve-overlays-at): Remove.
22710 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
22712         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
22713         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
22714         builds can use the declaration from the system headers.
22715         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
22716         definition of TITLEBAR_INFO.
22717         Suggested by Eli Zaretskii  <eliz@gnu.org>
22719 2015-08-19  Glenn Morris  <rgm@gnu.org>
22721         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
22723 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
22725         Use new q ‘format’ flag when fixing quotes in C
22726         * src/image.c (image_size_error): New function.  All uses of
22727         image_error with "Invalid image size ..."  changed to use it.
22728         * src/image.c (image_size_error, xbm_load_image, xbm_load)
22729         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
22730         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
22731         (imagemagick_load, svg_load, svg_load_image, gs_load)
22732         (x_kill_gs_process):
22733         * src/lread.c (load_warn_old_style_backquotes):
22734         * src/xfaces.c (load_pixmap):
22735         * src/xselect.c (x_clipboard_manager_error_1):
22736         Use %qs, not uLSQM and uRSQM.
22737         * src/syntax.c (Finternal_describe_syntax_value):
22738         Prefer Fsubstitute_command_keys to Fformat, as this lets
22739         us use AUTO_STRING.
22740         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
22741         as it's now guaranteed to be ASCII.
22742         * src/xselect.c (x_clipboard_manager_error_2):
22743         Avoid grave accent in low-level stderr diagnostic.
22745 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
22747         New q flag for ‘format’
22748         * doc/lispref/processes.texi (Sentinels):
22749         Don't hardwire grave quoting style in example.
22750         * doc/lispref/strings.texi (Formatting Strings):
22751         * etc/NEWS:
22752         Document new q flag.
22753         * src/editfns.c (Fformat): Implement it.
22755 2015-08-18  Daiki Ueno  <ueno@gnu.org>
22757         pinentry.el: Add debugging support
22758         * lisp/net/pinentry.el (pinentry-debug): New variable.
22759         (pinentry-debug-buffer): New variable.
22760         (pinentry--process-filter): Send input to the debug buffer, if
22761         `pinentry-debug' is set.
22763         pinentry.el: Improve multiline prompt
22764         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
22765         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
22766         command.
22768 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
22770         Fix multibyte confusion in diagnostics
22771         * src/print.c (print_error_message):
22772         Don't assume that the caller's name is unibyte.
22773         * src/xdisp.c (vadd_to_log):
22774         Don't assume that the formatted diagnostic is unibyte.
22776         Fix file name encodings in diagnostics
22777         Also, close some minor races when opening image files, by opening
22778         them once instead of multiple times.
22779         * src/gtkutil.c (xg_get_image_for_pixmap):
22780         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
22781         (svg_load):
22782         * src/nsimage.m (allocInitFromFile:):
22783         * src/xfns.c (xg_set_icon):
22784         Encode file name, since x_find_image_file no longer does that.
22785         * src/image.c (x_find_image_fd): New function.
22786         (x_find_image_file): Use it.  Do not encode resulting file name,
22787         since callers sometimes need it decoded.
22788         (slurp_file): File arg is now a fd, not a file name.
22789         All callers changed.  This saves us having to open the file twice.
22790         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
22791         (svg_load):
22792         Use x_find_image_fd and fdopen to save a file-open.
22793         Report file name that failed.
22794         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
22796 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
22798         Allow blink-matching-paren to jump off screen
22799         * doc/emacs/programs.texi (Matching): Mention the
22800         `blink-matching-paren' value `jump-offscreen'.
22801         * lisp/simple.el (blink-matching-paren): New possible value.
22802         (blink-matching-paren-on-screen): Clarify the docstring.
22803         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
22805         Refine the previous change
22806         * lisp/simple.el (blink-matching-open): Use minibuffer-message
22807         outside of save-excursion (bug#21286).
22809 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
22811         Rewrite and add frame geometry related functions.
22812         * src/frame.c (Fframe_position): New function.
22813         (Fset_frame_position): Rename parameters and rewrite doc-string.
22814         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
22815         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
22816         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
22817         Qtitle_bar_size.
22818         * src/nsfns.m (frame_geometry): New function.
22819         (Fx_frame_geometry): Call frame_geometry.
22820         (Fx_frame_edges): New function.
22821         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
22822         (GetTitleBarInfo_Proc): Define these so we can use the
22823         GetTitleBarInfo API.
22824         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
22825         (Fx_frame_geometry): Rewrite.
22826         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
22827         (Fx_set_mouse_absolute_pixel_position): New functions.
22828         * src/xfns.c (frame_geometry): New function.
22829         (Fx_frame_geometry): Call frame_geometry.
22830         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
22831         (Fx_set_mouse_absolute_pixel_position): New functions.
22833 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
22835         Improve Tramp's compatibility
22836         * lisp/net/tramp.el (tramp-get-method-parameter):
22837         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
22838         (tramp-adb-get-device):
22839         * lisp/net/trampver.el (tramp-repository-get-version):
22840         Use `tramp-compat-replace-regexp-in-string'.
22842 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
22844         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
22845         Encode/decode string.
22847 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
22849         Clarify what happens to match data on failure
22850         Problem reported by Ernesto Alfonso (Bug#21279).
22851         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
22852         Document more carefully what happens to match data after a failed
22853         search.
22854         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
22855         the return value is undefined if the last search failed.
22856         (Fmatch_data): Simplify doc string line 1.
22858 2015-08-18  Daiki Ueno  <ueno@gnu.org>
22860         Revert "pinentry.el: Support external passphrase cache"
22861         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
22862         pinentry.el shouldn't directly interact with the secrets service,
22863         but ask the caller to cache the passphrase.
22865 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
22867         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
22868         Message mode hooks.
22870 2015-08-17  Daiki Ueno  <ueno@gnu.org>
22872         epg.el: Make gpgconf output parsing future proof
22873         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
22874         --list-options" output.
22876         pinentry.el: Support external passphrase cache
22877         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
22878         (pinentry--allow-external-password-cache): New local variable.
22879         (pinentry--key-info): New local variable.
22880         (secrets-enabled, secrets-search-items, secrets-get-secret):
22881         Declare.
22882         (pinentry--send-passphrase): New function, split from
22883         `pinentry--process-filter'.
22884         (pinentry--process-filter): Use secrets.el to retrieve passphrase
22885         from login keyring.
22887         pinentry.el: Popup window for multiline prompt
22888         * lisp/net/pinentry.el (pinentry): New custom group.
22889         (pinentry-popup-prompt-window): New user option.
22890         (pinentry-prompt-window-height): New user option.
22891         (pinentry--prompt-buffer): New variable.
22892         (pinentry-prompt-mode-map): New variable.
22893         (pinentry-prompt-mode): New function.
22894         (pinentry--prompt): New function.
22895         (pinentry--process-filter): Use `pinentry--prompt' instead of
22896         `read-passwd' and `y-or-n-p'.
22898 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
22900         message.el: Silent the byte compiler
22901         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
22902         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
22903         (message-delete-overlay, message-window-inside-pixel-edges):
22904         Declare before using.
22906         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
22907         (message-window-inside-pixel-edges): XEmacs compatible functions.
22909 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
22911         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
22913 2015-08-17  Noah Friedman  <friedman@splode.com>
22915         * lisp/simple.el (blink-matching-open): Restore point before
22916         calling minibuffer-message.
22918 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
22920         * lisp/play/dunnet.el: Update version number in header (now
22921         matches help).
22923 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
22925         Curved quotes in --batch diagnostics in non-UTF-8
22926         When run with --batch, check that curved quotes are compatible with
22927         the system locale before outputting them in diagnostics.
22928         Problem reported by Eli Zaretskii in:
22929         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
22930         * lisp/startup.el (command-line): Set internal--text-quoting-flag
22931         after the standard display table is initialized.
22932         * src/doc.c (default_to_grave_quoting_style): New function.
22933         (text_quoting_style): Use it.
22934         (text_quoting_flag): New static var, visible to Lisp as
22935         internal--text-quoting-flag.
22936         * src/emacs.c: Include <wchar.h> if available.
22937         (using_utf8): New function.
22938         (main): Use it to initialize text_quoting_flag.
22939         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
22940         Don't define, as it's not needed and it clashes with wchar.h.
22942 2015-08-17  Glenn Morris  <rgm@gnu.org>
22944         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
22945         from makeinfo about spurious "Note:" cross-reference, and for grammar.
22947 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
22949         Minor change in variable initialization on MS-Windows
22950         * src/w32fns.c <after_dead_key>: Initialize to -1.
22951         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
22952         non-zero.
22954         Fix a bug with LWindow key remapping on MS-Windows
22955         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
22957 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
22959         Improve fontset support for latest OTF script tags
22960         * lisp/international/fontset.el (otf-script-alist): Add some
22961         missing script tags.
22962         (setup-default-fontset): Include settings for v2 versions of the
22963         script tags used by some modern OTF/TTF fonts.
22965 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
22967         Spelling fixes
22969 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
22971         Use curved quotes in core elisp diagnostics
22972         In the core elisp files, use curved quotes in diagnostic formats,
22973         so that they follow user preference as per ‘text-quoting-style’
22974         rather than being hard-coded to quote `like this'.
22975         * lisp/abbrev.el (expand-region-abbrevs):
22976         * lisp/button.el (button-category-symbol, button-put)
22977         (make-text-button):
22978         * lisp/cus-start.el:
22979         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
22980         (custom--sort-vars-1, load-theme):
22981         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
22982         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
22983         (cl-generic-generalizers):
22984         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
22985         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
22986         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
22987         (advice--make, define-advice):
22988         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
22989         * lisp/emacs-lisp/timer.el (timer-event-handler):
22990         * lisp/env.el (setenv):
22991         * lisp/facemenu.el (facemenu-add-new-face)
22992         (facemenu-add-new-color):
22993         * lisp/faces.el (face-documentation, read-face-name)
22994         (face-read-string, read-face-font, face-spec-set-match-display)
22995         (read-color, x-resolve-font-name):
22996         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
22997         (set-auto-mode, hack-local-variables)
22998         (hack-one-local-variable--obsolete)
22999         (dir-locals-set-directory-class, write-file)
23000         (basic-save-buffer, delete-directory, copy-directory)
23001         (recover-session, recover-session-finish, insert-directory)
23002         (file-modes-char-to-who, file-modes-symbolic-to-number)
23003         (move-file-to-trash):
23004         * lisp/font-lock.el (font-lock-fontify-buffer):
23005         * lisp/format.el (format-write-file, format-find-file)
23006         (format-insert-file):
23007         * lisp/frame.el (get-device-terminal, select-frame-by-name):
23008         * lisp/fringe.el (fringe--check-style):
23009         * lisp/help.el (describe-minor-mode-from-indicator):
23010         * lisp/image.el (image-type):
23011         * lisp/international/fontset.el (x-must-resolve-font-name):
23012         * lisp/international/mule-cmds.el (prefer-coding-system)
23013         (select-safe-coding-system-interactively)
23014         (select-safe-coding-system, activate-input-method)
23015         (toggle-input-method, describe-current-input-method):
23016         * lisp/international/mule-conf.el (code-offset):
23017         * lisp/mouse.el (minor-mode-menu-from-indicator):
23018         * lisp/replace.el (query-replace-read-from)
23019         (occur-after-change-function, occur-1):
23020         * lisp/scroll-bar.el (scroll-bar-columns):
23021         * lisp/simple.el (execute-extended-command)
23022         (undo-outer-limit-truncate, compose-mail, set-variable)
23023         (choose-completion-string, define-alternatives):
23024         * lisp/startup.el (site-run-file, tty-handle-args)
23025         (command-line, command-line-1):
23026         * lisp/subr.el (noreturn, define-error, add-to-list)
23027         (read-char-choice):
23028         * lisp/term/common-win.el (x-handle-xrm-switch)
23029         (x-handle-name-switch, x-handle-args):
23030         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
23031         Use curved quotes in diagnostics.
23032         * lisp/international/mule.el (find-auto-coding):
23033         Use " to quote in a diagnostic, to be consistent with the rest of
23034         this file.
23036         Convert lisp/term/x-win.el to UTF-8
23037         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
23038         runtime behavior, and the file is multilingual so compile-time
23039         appearance shouldn't be an issue.
23040         * admin/notes/unicode: Document this.
23042 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
23044         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
23045         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
23046         issues and comments, bug#943.
23047         (verilog-type-font-keywords): Cycle delay operators like ##1 and
23048         ##[0:$] are now highlighted in their entirety similarly to the #
23049         delay-control operator.  Likewise, the followed-by operators #-#
23050         and #=# are no longer partially highlighed.
23051         (verilog-backward-syntactic-ws-quick)
23052         (verilog-skip-backward-comments): Minor performance improvements
23053         to buffer traversal functions for reduced latency.
23054         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
23055         keyword 'final' follows 'assert/assume/cover', then it is part of
23056         a deferred immediate assertion item and should not be treated as a
23057         final construct for indentation.  Reported by Yuri Sugihara.
23058         (verilog-do-indent): Virtual task/function/class definition lines
23059         should not be considered as declarations.  Reported by Enzo Chi.
23060         (verilog-do-indent): Do not falsely indent to '=' of
23061         property/sequence operators on subsequent lines of a multi-line
23062         statement.
23063         (verilog-assignment-operator-re): Fix '!==' operator and add
23064         support for '<->', ':/', '#-#', and '#=#' operators.
23065         (verilog-calculate-indent, verilog-label-be): Enable
23066         case-sensitive regular expression parsing when looking for
23067         keywords.
23068         (verilog-calc-1): Detect 'pure virtual method' declarations which
23069         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
23070         (verilog-backward-ws&directives): When moving back to the start of
23071         a line and the preceeding line ended with an escaped-newline, then
23072         jump up one line.  This properly consumes a multi-line
23073         pre-processor directive.  Reported by Kaushal Modi.
23074         (verilog-dpi-import-export-re, verilog-extended-complete-re)
23075         (verilog-calc-1): Teach verilog-mode to properly indent after a
23076         DPI import/export statement that resides outside of a module.
23077         Reported by Kaushal Modi.
23078         (verilog-extended-complete-re): Update regexp to match both
23079         "DPI-C" and "DPI".  Reported by Kaushal Modi.
23081 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23083         substitute-command-keys a few more doc strings
23084         * lisp/allout.el (outlineify-sticky):
23085         * lisp/files.el (hack-one-local-variable--obsolete):
23086         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
23087         Use substitute-command-keys on some doc strings so that
23088         they don't use hard-coded key bindings or quoting styles.
23090         Fix quoting in Fformat calls
23091         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
23092         (xpm_load, xpm_load_image, pbm_load, png_load_body)
23093         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
23094         (imagemagick_load, svg_load, svg_load_image, gs_load)
23095         (x_kill_gs_process):
23096         * src/lread.c (load_warn_old_style_backquotes):
23097         * src/xfaces.c (load_pixmap):
23098         * src/xselect.c (x_clipboard_manager_error_1):
23099         Quote diagnostics according to user preference when calling
23100         Fformat or its derivatives.
23102 2015-08-15  Glenn Morris  <rgm@gnu.org>
23104         * admin/admin.el (set-version, set-copyright): Remove deleted files.
23106 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
23108         Allow describe-function helpers to access buffer-local values
23109         This will be used by cedet/mode-local.el `describe-mode-local-override'
23110         on `help-fns-describe-function-functions' in upstream CEDET.
23111         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
23112         `describe-function'.
23113         (describe-function): Bind it, save it on the help xref stack.
23115         Handle pulse-background being nil
23116         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
23117         pulse-background, handle it being nil.
23119 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23121         Fix "\`" confusion in Lisp strings
23122         * admin/authors.el (authors-canonical-author-name):
23123         Fix typo by using "\\`" not "\`" in string RE.
23124         * lisp/obsolete/complete.el (PC-complete-as-file-name):
23125         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
23126         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
23127         Use plain "`", not the equivalent-but-confusing "\`", in strings.
23128         * lisp/textmodes/texinfmt.el: Fix comment likewise.
23130 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
23132         * nt/zipdist.bat: Remove -- no longer used.
23134 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
23136         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
23137         rather than "getenforce".
23138         (tramp-sh-handle-set-file-selinux-context): Do not
23139         cache SELinux context if not all context components are given.
23141 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
23143         Add doc strings to 2 help-mode.el functions
23144         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
23145         strings.  (Bug#21263)
23147         Remove files used by the old MS-Windows specific build procedure
23148         * admin/unidata/makefile.w32-in:
23149         * doc/emacs/makefile.w32-in:
23150         * doc/lispintro/makefile.w32-in:
23151         * doc/lispref/makefile.w32-in:
23152         * doc/misc/makefile.w32-in:
23153         * leim/makefile.w32-in:
23154         * lib-src/makefile.w32-in:
23155         * lib/makefile.w32-in:
23156         * lisp/makefile.w32-in:
23157         * nt/INSTALL.OLD:
23158         * nt/config.nt:
23159         * nt/emacs-src.tags:
23160         * nt/envadd.bat:
23161         * nt/gmake.defs:
23162         * nt/makefile.w32-in:
23163         * nt/multi-install-info.bat:
23164         * nt/nmake.defs:
23165         * nt/paths.h:
23166         * src/makefile.w32-in: Files deleted.
23167         * nt/configure.bat: Remove everything except the blurb about the
23168         new build procedure.
23169         * make-dist: Remove references to makefile.w32-in in various
23170         directories, and to files in nt/ that were deleted.
23171         * etc/NEWS: Mention the fact that the files were dropped.
23173 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
23175         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
23176         (Bug#21248)
23178 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
23180         Default to inotify instead of gfile
23181         * configure.ac (with_file_notification): Fix typo that
23182         prevented suppression of file notification if HAVE_NS.
23183         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
23184         with_file_notification is 'yes' (Bug#21241).
23185         * etc/NEWS: Mention this.
23187         Fix broken URLs for ISO-IR
23188         * doc/emacs/mule.texi (Charsets):
23189         * lisp/international/mule-conf.el:
23190         Fix broken URL (Bug#21248).
23192         Low-level diagnostics now use ‘text-quoting-style’
23193         * src/doprnt.c (doprnt):
23194         Format ` and ' as per ‘text-quoting-style’.
23195         * src/xdisp.c (vmessage, message): Mention that the format should
23196         not contain ` or '.
23198         Prefer ‘format’ to ‘substitute-command-keys’
23199         * src/character.h (uLSQM, uRSQM): Move here ...
23200         * src/doc.c (uLSQM, uRSQM): ... from here.
23201         * src/doc.c (Fsubstitute_command_keys):
23202         * src/syntax.c (Finternal_describe_syntax_value):
23203         * lisp/cedet/mode-local.el (mode-local-print-binding)
23204         (mode-local-describe-bindings-2):
23205         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
23206         * lisp/cus-theme.el (describe-theme-1):
23207         * lisp/descr-text.el (describe-text-properties-1, describe-char):
23208         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
23209         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
23210         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
23211         * lisp/emacs-lisp/package.el (describe-package-1):
23212         * lisp/faces.el (describe-face):
23213         * lisp/help-fns.el (help-fns--key-bindings)
23214         (help-fns--compiler-macro, help-fns--parent-mode)
23215         (help-fns--obsolete, help-fns--interactive-only)
23216         (describe-function-1, describe-variable):
23217         * lisp/help.el (describe-mode):
23218         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
23219         to implement quoting style.  This generally makes the code simpler.
23221         Extend ‘format’ to translate curved quotes
23222         This is a followup to the recent doc string change, and deals with
23223         diagnostics and the like.  This patch is more conservative than
23224         the doc string change, in that the behavior of ‘format’ changes
23225         only if its first arg contains curved quotes and the user prefers
23226         straight or grave quotes.  (Come to think of it, perhaps we should
23227         be similarly conservative with doc strings too, but that can wait.)
23228         The upside of this conservatism is that existing usage is almost
23229         surely unaffected.  The downside is that we'll eventually have to
23230         change Emacs's format strings to use curved quotes in places where
23231         the user might want curved quotes, but that's a simple and
23232         mechanical translation that I'm willing to do later.  (Bug#21222)
23233         * doc/lispref/help.texi (Keys in Documentation):
23234         Move description of text-quoting-style from here ...
23235         * doc/lispref/strings.texi (Formatting Strings):
23236         ... to here, and describe new behavior of ‘format’.
23237         * etc/NEWS: Describe new behavior.
23238         * lisp/calc/calc-help.el (calc-describe-thing):
23239         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
23240         * lisp/info.el (Info-find-index-name):
23241         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
23242         of recently-added curved quotes.
23243         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
23244         Move from here ...
23245         * src/lisp.h: ... to here.
23246         * src/doc.c (text_quoting_style): New function.
23247         (Fsubstitute_command_keys): Use it.
23248         * src/editfns.c (Fformat): Implement new behavior.
23249         * src/lisp.h (enum text_quoting_style): New enum.
23251 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
23253         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
23254         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
23256 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
23258         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
23259         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
23261 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
23263         Flush file properties in Tramp
23264         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
23265         (tramp-sh-handle-set-file-times):
23266         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
23267         (tramp-adb-handle-set-file-times): Flush the file properties of
23268         the directory.
23270 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
23272         * doc/emacs/misc.texi (Amusements): Fixed typo.
23274 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
23276         Don't miss warnings about removing string text properties while dumping
23277         * src/alloc.c (purecopy): Warn about removing a string's text
23278         properties even when the same string was already pure-copied
23279         earlier.
23280         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
23281         (elisp--xref-format-extra): Fix the commentary.
23283 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
23285         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
23287 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
23289         * lisp/progmodes/compile.el: Use lexical-binding.
23290         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
23292 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
23294         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
23295         * lisp/uniquify.el: Remove redundant `:group's.
23297 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
23299         * lisp/net/tramp-adb.el
23300         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
23301         result to prevent modification of the tramp-cache by side effects.
23302         Use the correct cache key.
23304 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
23306         Make add_to_log varargs
23307         * src/alloc.c (run_finalizer_handler):
23308         * src/charset.c (load_charset_map_from_vector):
23309         * src/nsimage.m (ns_load_image):
23310         * src/xfaces.c (load_pixmap, load_color2):
23311         Simplify, now that add_to_log has a variable number of args.
23312         * src/image.c (image_error): Take a variable number of args.
23313         Callers simplified.
23314         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
23315         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
23316         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
23317         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
23319         Optional args for holiday-greek-orthodox-easter
23320         * etc/NEWS: Document this.
23321         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
23322         Add optional args N and STRING, mimicking the API and code of
23323         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
23325 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
23327         xref-find-definitions: Exclude more generic function items.
23328         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
23329         Add doc string.
23330         (cl--generic-find-defgeneric-regexp): New.
23331         (find-function-regexp-alist): Add it.
23332         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
23333         elisp-mode.el, change to search for ";;; Code:"
23334         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
23335         (find-function-regexp-alist): Add them.
23336         * lisp/progmodes/elisp-mode.el:
23337         (elisp--xref-format, elisp--xref-format-extra): Change back to
23338         defvar due to bug#21237.
23339         (elisp--xref-find-definitions): Exclude co-located default methods for
23340         generic functions.  Also exclude implicitly declared defgeneric.
23341         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
23342         mode variables defined by 'define-minor-mode'.
23343         * test/automated/elisp-mode-tests.el: Declare generic functions, add
23344         tests for them.
23345         (xref-elisp-test-run): Fix bug.
23346         (emacs-test-dir): Improve initial value.
23347         (find-defs-defun-defvar-el): Don't expect defvar.
23348         (find-defs-feature-el): Match change to find-feature-regexp.
23350 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
23352         Improve warning about purecopy of strings with properties
23353         * src/alloc.c (purecopy): Show the offending string with the
23354         warning about removing its text properties.
23356 2015-08-12  Alan Mackenzie  <acm@muc.de>
23358         Introduce new macros to cover Emacs's new names in cl-lib.el
23359         This also eliminates `mapcan' warnings in XEmacs.
23360         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
23361         characterise [X]Emacs versions.
23362         (top-level): Require either 'cl or 'cl-lib, depending on
23363         c--mapcan-status.
23364         Change this back to cc-external-require from an eval-when-compile
23365         require.
23366         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
23367         (c--delete-duplicates): New macros which expand into either old or new
23368         names.
23369         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
23370         rather than the old names.
23371         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
23372         rather than mapcan.
23373         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
23374         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
23375         depending on c--mapcan-status.
23376         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
23377         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
23378         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
23379         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
23380         (c-decl-block-key, c-keywords, c-keywords-obarray)
23381         (c-regular-keywords-regexp, c-primary-expr-regexp)
23382         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
23383         (c-known-type-key, c-nonlabel-token-key)
23384         (c-make-init-lang-vars-fun): Use the new macros rather than the old
23385         names.
23387 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
23389         loadhist.el (read-feature): Conform to completing-read
23390         * lisp/loadhist.el (read-feature): According to `completing-read'
23391         documentation, if collection is a list, then it must be a list of
23392         strings, not a list of symbols like before.
23394 2015-08-12  David Kastrup  <dak@gnu.org>
23396         Deal gracefully with up-events (Bug#19746)
23397         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
23398         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
23399         those may easily be injected by user-level Lisp code.
23400         (read_key_sequence): Discard unbound up-events like unbound
23401         down-events: they are even more likely only relevant for special
23402         purposes.
23403         While Emacs will not produce up-events on its own currently (those are
23404         converted to drag or click events before being converted to
23405         Lisp-readable structures), the input queue can be made to contain them
23406         by synthesizing events to `unread-command-events'.  Emacs should deal
23407         consistently with such events.
23409 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
23411         Fix display of thin lines whose newline has line-height property of t
23412         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
23413         and descent values of non-empty glyph rows, since they could have
23414         forced low values deliberately.  (Bug#21243)
23416 2015-08-12  Richard Stallman  <rms@gnu.org>
23418         Offer to combine multiple To or CC fields.
23419         * lisp/mail/sendmail.el (mail-combine-fields): New function.
23420         (mail-send): Call 'mail-combine-fields'.
23422         Don't decrypt encrypted files.
23423         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
23425         Handle encrypted mbox files.
23426         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
23427         the mbox file if necessary.
23429         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
23430         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
23431         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
23432         In a mime message, reenable Mime and show the parts that
23433         were shown before.
23434         Add keyword "decrypt" if anything decrypted.
23436         epa-inhibit inhibits auto-recognition of .gpg files
23437         * lisp/epa-file.el (epa-inhibit): New variable.
23438         (epa-file-handler): Check epa-inhibit.
23440 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
23442         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
23444 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
23446         Respect python.el imenu when semantic-mode is off
23447         Fixes bug#21220
23448         * lisp/cedet/semantic/wisent/python.el: Do not force
23449         wisent-python-default-setup on python-mode-hook.
23451 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
23453         Give names to Unicode code points in C code
23454         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
23455         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
23456         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
23457         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
23458         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
23459         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
23460         (OBJECT_REPLACEMENT_CHARACTER):
23461         New named constants for Unicode code points.
23462         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
23463         * src/composite.c (char_composable_p):
23464         * src/lread.c (readevalloop, read1):
23465         * src/xdisp.c (get_next_display_element):
23466         Use them.
23467         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
23468         Remove; now in character.h.
23470 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
23472         elisp--xref-find-definitions handle cl-defstuct default constructor
23473         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
23474         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
23475         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
23476         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
23477         from xref-elisp-test for ease of debugging.
23478         (xref-elisp-deftest): Rename from xref-elisp-test.
23479         (find-defs-constructor): New test.
23480         (find-defs-defgeneric-el): Match batch test config.
23481         (compile): Required for find-defs compilation-minor-mode test.
23482         (find-defs-defvar-el): Match code change.
23483         (find-defs-face-el): Match code change.
23484         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
23485         Improve doc string.
23487 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
23489         * lisp/replace.el (perform-replace): Document `replacements'.
23490         (perform-replace): Move the description of the format of `replacements'
23491         from the body's comment to the doc string.
23493 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
23495         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
23496         sequence.  Recent adb version send initial escape sequences, even
23497         when terminal type is set to TERM=dumb.
23499 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
23501         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
23502         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
23503         Function deleted.
23504         (elisp--xref-format-cl-defmethod): New defconst.
23505         (find-feature-regexp, find-alias-regexp): New defcustoms.
23506         (elisp--xref-make-xref): New function.
23507         (elisp--xref-find-definitions): Rewrite using the above, handle many
23508         more cases.  Always output all available definitions.
23509         (xref-location-marker): No need for special cases.
23510         * test/automated/elisp-mode-tests.el: Add more tests of
23511         elisp--xref-find-definitions, improve current tests.
23513 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
23515         Fix recording of events pushed onto unread-command-events
23516         * src/keyboard.c (read_char): Make sure events read from
23517         unread-command-events and unread-post-input-method-events are
23518         always recorded by record_char.  Reported by David Kastrup
23519         <dak@gnu.org>, see
23520         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
23522 2015-08-10  Samer Masterson  <samer@samertm.com>
23524         Set file buffer as current for "--file"
23525         * lisp/startup.el (command-line-1): Set file buffer as current before
23526         it is displayed so it can be used with options like "--eval".
23527         (Bug#21095)
23529 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
23531         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
23532         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
23533         after setting LC_ALL to the desired locale, to avoid affecting how
23534         numbers are read and printed.  (Bug#21223)
23536 2015-08-10  Alan Mackenzie  <acm@muc.de>
23538         Fix "Invalid search bound (wrong side of point)" in fontification
23539         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
23540         an initialization expression, check point is not beyond the
23541         fontification limit.
23543 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23545         Fix DPI calculation when Xft/DPI is default
23546         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
23547         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
23548         Remove unnecessary cast while we're in the neighborhood.
23550 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
23552         Add project-vc-search-path and project-vc-ignores
23553         * lisp/progmodes/project.el (project-vc): New group.
23554         (project-vc-search-path, project-vc-ignores): New variables.
23555         (project--value-in-dir): Utility function.
23556         (project-search-path, project-ignores): Use them.
23557         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
23558         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
23560 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23562         Fix some minor quoting issues with grave accent
23563         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
23564         Remove redundant quotes.
23565         * src/doc.c (uLSQM, uRSQM): New macros.
23566         * src/doc.c (Fsubstitute_command_keys):
23567         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
23568         preference for quotes rather than hardcoding the ‘grave’ style.
23569         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
23570         (re_match_2_internal) [DEBUG]: In debugging output, quote C
23571         strings with "...", not `...'.
23573         ChangeLog.2 ignores remote-tracking merges
23574         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
23575         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
23576         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
23578 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
23580         Use kpsewhich in ffap-latex-mode, if available
23581         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
23582         (ffap-latex-mode): Use kpsewhich if available.
23584         ffap: disallow braces in filenames for tex modes
23585         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
23586         braces in tex-related modes.
23588         Remove useless backslashes from ffap-string-at-point-mode-alist
23589         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
23590         misleading backslashes from default value.
23592         Augment docstring of ffap-string-at-point-mode-alist
23593         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
23594         and END are handled.
23596 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
23598         * lisp/org/org-src.el (org-edit-src-code)
23599         (org-edit-fixed-width-region):
23600         * lisp/simple.el (completion-setup-function):
23601         Remove calls to substitute-command-keys that always just return
23602         their argument.
23604 2015-08-09  Daiki Ueno  <ueno@gnu.org>
23606         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
23607         (Bug#21210)
23609 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
23611         Fix link to source code in help window
23612         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
23613         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
23614         'No longer include timestamp in header of .elc files'.  Add code
23615         that will return .el source file in load-path.
23617 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
23619         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
23620         Respect `isearch-lax-whitespace' when searching through
23621         `isearch-word'.
23623 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
23625         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
23627         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
23628         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
23629         (org-set-regexps-and-options, org-assign-fast-keys)
23630         (org-contextualize-keys, org-contextualize-validate-key)
23631         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
23632         (org-find-olp, org-find-exact-heading-in-directory)
23633         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
23634         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
23635         (org-replace-escapes): Use dolist.
23636         (org-mode): Optimize away XEmacs-only code.
23637         (org-refile-get-targets): Remove unused var `f'.
23638         (org-fast-todo-selection): Remove unused var `e'.
23639         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
23640         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
23641         (org-format-latex): Use dolist.  Remove unused var `e'.
23642         (org-toggle-heading): Access vars lexically rather than dynamically.
23643         (org-backward-sentence, org-forward-sentence, org-meta-return)
23644         (org-kill-line): Mark arg as unused.
23645         (org-submit-bug-report): Silence compiler warning.
23646         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
23647         (org-get-cursor-date): Remove unused var `tm'.
23648         (org-comment-or-uncomment-region): Use standard name `_'.
23649         (reftex-docstruct-symbol, reftex-cite-format): Declare to
23650         silence byte-compiler.
23651         (org-reftex-citation): Add `org--' prefix to dynamically scoped
23652         `rds' var.
23654 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
23656         Electric quote if coding is undecided or no conv
23657         * lisp/electric.el (electric--insertable-p): Also say that a
23658         string is insertable if the buffer file coding system is undecided
23659         or uses no conversion, as curved quotes will work in either case.
23661         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
23663 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
23665         Fix overlay string display regressions introduced in Emacs 24.5
23666         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
23667         buffer position, if we move the iterator to a new position as
23668         result of jumping over text covered by a "replacing" display
23669         property.
23670         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
23672         Support recovery from C stack overflow on MS-Windows
23673         * src/w32fns.c (w32_reset_stack_overflow_guard)
23674         (stack_overflow_handler): New functions for handling C stack
23675         overflow exceptions.
23676         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
23677         specially, and zero out except_addr if we do.
23678         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
23679         mode.
23680         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
23681         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
23682         the MinGW build, but the code guarded by that is for Posix hosts.
23683         * src/keyboard.c (command_loop) [WINDOWSNT]:
23684         Call w32_reset_stack_overflow_guard.
23685         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
23686         (sigsetjmp): New macro.
23687         (w32_reset_stack_overflow_guard): Declare the prototype.
23688         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
23690 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
23692         Improve error signalling for seq-subseq
23693         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
23694         when indexes are too large, but to silently ignore numbers which
23695         are too negative for lists.  String and vector handling errors in
23696         both cases.  This has been regularized.  Error signaling behavior
23697         has been explicitly added to the doc string.
23699         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
23700         therefore also impacted by this change.  Update the doc string
23701         to reflect this.
23703         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
23704         added for these exceptional cases, as well as one non exceptional
23705         base case.
23707 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
23709         Improve error checking in tramp-adb.el
23710         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
23711         Improve error checking.  "ls -l" on Android in Enforcing mode can
23712         print "lstat './FILENAME failed: Permission denied".
23714 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
23716         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
23717         non-struct vectors.
23719 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
23721         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
23722         * lisp/window.el: Fix typo that broke build.
23723         (display-buffer--action-function-custom-type):
23724         Add `display-buffer-use-some-frame'.
23725         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
23727         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
23728         * lisp/window.el (display-buffer-use-some-frame): Add support for
23729         'inhibit-same-window in alist.
23730         * doc/lispref/windows.texi (display-buffer-use-some-frame):
23731         Doc support for 'inhibit-same-window in alist.
23733 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
23735         Avoid infinite loop in display of invisible text in strings
23736         * src/xdisp.c (handle_invisible_prop): If the next change of
23737         invisibility spec does not mean the beginning of a visible text,
23738         update the string position from which to start the search for the
23739         next invisibility change.  This avoids an infinite loop when we
23740         have more than one invisibility spec that are made inactive by
23741         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
23742         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
23743         for the situation that caused bug #21200.
23745 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
23747         * lisp/emacs-lisp/package.el: Simplify describe-package-1
23748         (package-help-section-name-face): New face.
23749         (package--print-help-section): New function.
23750         (describe-package-1): Refactor section printing.
23751         (package-make-button): Use face instead of font-lock-face, which
23752         doesn't work on buttons.
23754         * lisp/emacs-lisp/package.el: Define custom faces
23755         (package-name-face, package-description-face)
23756         (package-status-built-in-face, package-status-external-face)
23757         (package-status-available-face, package-status-new-face)
23758         (package-status-held-face, package-status-disabled-face)
23759         (package-status-installed-face, package-status-dependency-face)
23760         (package-status-unsigned-face, package-status-incompat-face)
23761         (package-status-avail-obso-face): New faces.
23762         (package-menu--print-info-simple): Use them.
23764 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
23766         Fix some confusion with ‘format’
23767         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
23768         (allout-graphics-modification-handler):
23769         Protect arbitrary string in a format context with "%s" format.
23770         * lisp/avoid.el:
23771         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
23772         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
23773         * lisp/erc/erc-button.el (erc-button-beats-to-time):
23774         * lisp/gnus/message.el (message-send-form-letter):
23775         * lisp/org/ob-core.el (org-babel-check-evaluate)
23776         (org-babel-confirm-evaluate):
23777         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
23778         * lisp/org/ox-latex.el (org-latex-compile):
23779         * lisp/org/ox-man.el (org-man-compile):
23780         * lisp/org/ox-odt.el (org-odt-template):
23781         * lisp/org/ox-texinfo.el (org-texinfo-compile):
23782         * lisp/progmodes/prolog.el (prolog-help-info)
23783         (prolog-view-predspec):
23784         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
23785         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
23786         * lisp/textmodes/rst.el (rst-replace-lines):
23787         Change (message (format ...)) to (message ...), and likewise
23788         for ‘error’.  This lessens the probability of confusion when the
23789         output of ‘format’ contains ‘%’.
23791 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
23793         * lisp/replace.el (replace-character-fold): Default to nil.
23795         * lisp/character-fold.el: Fix lax whitespace.
23796         (character-fold-table): Don't make space match other whitespace chars.
23797         (character-fold-to-regexp): Simplify lax behavior.
23799 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
23801         Preserve window point in xref-find-definitions-other-window
23802         Fix the problem reported by Ingo Logmar in
23803         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
23804         * lisp/progmodes/xref.el (xref--goto-char): Extract from
23805         xref--goto-location.
23806         (xref--pop-to-location): Use it.  Replace xref--goto-location with
23807         a direct xref-location-marker call.
23808         (xref--show-location): Likewise.
23809         (xref--display-position): Use xref--goto-char.
23811         * lisp/progmodes/project.el: Add a paragraph to the front matter.
23813 2015-08-04  David Kastrup  <dak@gnu.org>
23815         * lisp/vc/emerge.el (emerge-show-file-name):
23816         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
23817         (vhdl-comment-insert, vhdl-hooked-abbrev):
23818         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
23819         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
23820         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
23821         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
23822         * lisp/obsolete/vip.el (vip-escape-to-emacs)
23823         (vip-prefix-arg-value, vip-prefix-arg-com):
23824         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
23825         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
23826         (quail-tibkey-update-translation):
23827         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
23828         * lisp/leim/quail/lao.el (quail-lao-update-translation):
23829         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
23830         (quail-japanese-self-insert-and-switch-to-alpha):
23831         * lisp/leim/quail/hangul.el (hangul2-input-method)
23832         (hangul3-input-method, hangul390-input-method):
23833         * lisp/language/hanja-util.el (hangul-to-hanja-char):
23834         * lisp/international/robin.el (robin-input-method):
23835         * lisp/international/quail.el (quail-start-translation)
23836         (quail-start-conversion):
23837         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
23838         (gnus-article-describe-key-briefly):
23839         * lisp/eshell/em-hist.el (eshell-list-history):
23840         * lisp/term.el (term-dynamic-list-input-ring)
23841         (term-dynamic-list-completions):
23842         * lisp/subr.el (momentary-string-display):
23843         * lisp/simple.el (read-quoted-char):
23844         * lisp/pcomplete.el (pcomplete-show-completions):
23845         * lisp/kmacro.el (kmacro-repeat-on-last-key):
23846         * lisp/info.el (Info-summary):
23847         * lisp/ehelp.el (electric-help-command-loop):
23848         * lisp/ebuff-menu.el (electric-buffer-list)
23849         (Electric-buffer-menu-exit):
23850         * lisp/double.el (double-translate-key):
23851         * lisp/comint.el (comint-dynamic-list-input-ring)
23852         (comint-dynamic-list-completions): Do not overwrite preexisting
23853         contents of `unread-command-events' when putting new events into it.
23855 2015-08-04  Daniel Colascione  <dancol@dancol.org>
23857         Improve ansi-color filtering of unrecognized escape sequences
23858         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
23859         escape sequences.
23860         (ansi-color-filter-apply, ansi-color-apply): Filter out
23861         unrecognized escape sequences.
23863 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
23865         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
23866         definitions to `easy-menu-define', improve a couple to account for
23867         async, and add a couple of new commands.
23869 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
23871         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
23873 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
23875         Add new 'calendar-weekend-days' option
23876         Make the days receiving the 'calendar-weekend-header' face freely
23877         customizable, as they differ by region/culture.
23878         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
23879         new variable.
23880         * lisp/calendar/calendar.el (calendar-generate-month): New variable
23881         calendar-weekend-days to customize day header fontification.
23883 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
23885         Redo text-quoting-style variable
23886         Rename help-quote-translation to text-quoting-style,
23887         and use symbols rather than characters as values.
23888         This follows suggestions along these lines by Alan Mackenzie in:
23889         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
23890         and by Drew Adams in:
23891         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
23892         * doc/lispref/help.texi (Keys in Documentation)
23893         * etc/NEWS:
23894         * lisp/cus-start.el (standard):
23895         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
23896         Document and/or implement the new behavior instead of the old.
23897         (syms_of_doc): New symbols 'grave' and 'straight'.
23899 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
23901         nnimap.el: Use IMAP MOVE extension if available
23902         * lisp/gnus/nnimap.el (nnimap-request-move-article)
23903         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
23904         Use MOVE extension if available.
23906         nnimap.el: Explicitly ask for server capabilities
23907         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
23908         capabilities will be returned in the login-result.
23910 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
23912         Treat help strings like other doc strings
23913         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
23914         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
23915         substitute-command-keys.
23916         * src/keyboard.c (show_help_echo, parse_menu_item): Call
23917         substitute-command-keys on the help string before displaying it.
23919         Also mention "curly quotes"
23920         See Drew Adams's email in:
23921         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
23922         * doc/lispref/help.texi (Keys in Documentation):
23923         Add index entry "curly quotes".
23924         * etc/NEWS: Use the phrase "curly quotes" too.
23926         ede-proj-target-makefile docstring tweaks
23927         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
23928         Consistently use "all:" to describe the all: target,
23929         replacing three different and confusingly-quoted usages.
23931 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
23933         Don't abort emacsclientw when -a was specified
23934         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
23935         out if we are in emacsclientw and -a was specified.
23937 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
23939         Fix handling of 1st keystroke on MS-Windows
23940         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
23941         This is needed to correctly handle the session's first keystroke,
23942         if it has any modifiers.  (Bug#19994)
23944 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
23946         Substitute some customization etc. doc strings
23947         These changes apply substitute-command-keys to some
23948         doc strings that were going through untranslated
23949         when creating customization or other widgets.
23950         * lisp/cus-edit.el (custom-group-value-create):
23951         * lisp/wid-edit.el (widget-default-create):
23952         (widget-push-button-value-create):
23953         Treat the widget tag as a doc string.
23954         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
23955         Treat the :documentation value as a doc string.
23956         * lisp/wid-edit.el (widget-choose):
23957         Treat the choice names as doc strings.
23958         (widget-default-create): Treat the :doc value as a doc string.
23959         (widget-toggle-value-create): Treat the :on and :off values
23960         as doc strings.
23961         (widget-documentation-string-value-create):
23962         Substitute the doc string.
23964 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
23966         Add a second argument to project-ignores
23967         * lisp/progmodes/project.el (project-ignores): Add a second
23968         argument DIR.
23969         * lisp/progmodes/project.el (project-ignores): Only include the VC
23970         ignores if DIR is the VC root.
23971         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
23973 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
23975         Prevent incorrect display when 'line-spacing' variable is set
23976         * src/xdisp.c (try_window_id): Give up this optimization if the
23977         buffer has its 'line-spacing' variable set non-nil.
23979 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
23981         Don't pass NOVISIT to find-file
23982         * lisp/progmodes/etags.el (next-file):
23983         Don't pass NOVISIT to find-file (bug#21175).
23985         Ignore buffer restriction for tags-loop-eval
23986         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
23987         restriction (bug#21167).
23989 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
23991         Fix a thinko in 'ffap-gopher-at-point'
23992         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
23994         Honor 'line-spacing' for empty lines
23995         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
23996         property and 'line-spacing' frame parameter or variable or
23997         property for empty lines, by doing the same processing as in
23998         x_produce_glyph for newline characters.  (Bug#21165)
24000 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
24002         Simplify by assuming C99 integer division
24003         * src/floatfns.c (ceiling2, floor2, truncate2):
24004         Assume C99 (i.e., Fortran) semantics for integer division.
24005         This simplifies the code.
24007 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
24009         Don't overflow if computing approximate percentage
24010         * lisp/align.el (align-region):
24011         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
24012         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
24013         * lisp/cus-edit.el (custom-buffer-create-internal):
24014         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
24015         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
24016         (checkdoc-next-message-error):
24017         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
24018         * lisp/epa.el (epa-progress-callback-function):
24019         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
24020         * lisp/ffap.el (ffap-menu-rescan):
24021         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
24022         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
24023         * lisp/gnus/nneething.el (nneething-retrieve-headers):
24024         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
24025         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
24026         * lisp/gnus/nnml.el (nnml-retrieve-headers):
24027         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
24028         * lisp/gnus/nntp.el (nntp-retrieve-headers)
24029         (nntp-retrieve-articles):
24030         * lisp/imenu.el (imenu--relative-position):
24031         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
24032         (skkdic-convert-okuri-nasi):
24033         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
24034         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
24035         * lisp/org/org-list.el (org-update-checkbox-count):
24036         * lisp/org/org.el (org-table-map-tables)
24037         (org-update-parent-todo-statistics):
24038         * lisp/play/decipher.el (decipher-insert-frequency-counts)
24039         (decipher-analyze-buffer):
24040         * lisp/profiler.el (profiler-format-percent):
24041         * lisp/progmodes/cc-cmds.el (c-progress-update):
24042         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
24043         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
24044         (idlwave-list-load-path-shadows):
24045         * lisp/progmodes/opascal.el (opascal-step-progress):
24046         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
24047         (vhdl-scan-directory-contents):
24048         * lisp/textmodes/bibtex.el (bibtex-progress-message):
24049         * lisp/textmodes/flyspell.el (flyspell-small-region)
24050         (flyspell-external-point-words):
24051         * lisp/textmodes/table.el (table-recognize):
24052         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
24053         progress-report percentages and the like.  This avoids problems
24054         if (* 100 NUMERATOR) would overflow.
24055         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
24056         * lisp/gnus/registry.el (registry-reindex):
24057         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
24058         * lisp/descr-text.el (describe-char):
24059         * lisp/org/org-colview.el (org-nofm-to-completion):
24060         * lisp/ps-print.el (ps-plot):
24061         * lisp/simple.el (what-cursor-position):
24062         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
24063         more-complicated and less-accurate approximation.
24065         Fix some int overflows in profiler.c
24066         * src/profiler.c (make_log): Make args EMACS_INT, not int,
24067         to avoid unwanted behavior on 'int' overflow.
24068         (make_log, evict_lower_half, record_backtrace):
24069         Use ptrdiff_t, not int, for object indexes.
24071         Port to pedantic memcpy
24072         * src/keyboard.c (menu_bar_items, tool_bar_items):
24073         * src/xrdb.c (magic_db):
24074         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
24076         Merge from gnulib
24077         This incorporates:
24078         2015-07-29 time_rz: port to pedantic memcpy
24079         * lib/time_rz.c: Copy from gnulib.
24081 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
24083         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
24084         When updating the very last entry, tabulated-list-print would
24085         erase it and then try to look at the next one (which obviously
24086         isn't there).
24088 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
24090         Allow to use the old key processing code on MS-Windows
24091         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
24092         New variable.
24093         (w32_wnd_proc): Use it to invoke the old code that processed
24094         character keys, as fallback, when this variable is non-nil.
24095         Fix typos in comments.  (Bug#19994)
24097 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
24099         Improve handling of Unicode keyboard input on MS-Windows
24100         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
24101         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
24102         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
24103         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
24104         successful, don't call TranslateMessage.  (Bug#19994)
24106 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
24108         Fix default-directory in changeset diffs after vc-print-log
24109         * lisp/vc/log-view.el (log-view-diff-common): Move the
24110         revision-granularity check back into log-view-diff-changeset.
24111         (log-view-diff-changeset): Bind default-directory to the current
24112         VC root.
24114         Rename project-directories to project-roots
24115         * lisp/progmodes/project.el (project-search-path-function)
24116         (project-search-path): Update the docstring.
24117         (project-directories): Rename to `project-roots', update all
24118         callers and implementations accordingly.
24119         (project-root): Remove.
24120         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
24121         as the default file mask.
24123 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
24125         Support long URLs in w32-shell-execute
24126         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
24127         and filename_to_ansi to convert the DOCUMENT argument, as it could
24128         be a URL that is not limited to MAX_PATH characters.  Instead, use
24129         MultiByteToWideChar directly, and allocate heap storage as
24130         required to accommodate the converted string.  Likewise with
24131         non-Unicode operation.  Ensure OPERATION is null-terminated, even
24132         if it is longer than 32K bytes.  (Bug#21158)
24134 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
24136         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
24138 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
24140         Add docs for display-buffer action display-buffer-use-some-frame
24141         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
24142         * doc/lispref/windows.texi (Display Action Functions):
24143         Add display-buffer-use-some-frame.
24144         * etc/NEWS: Mention display-buffer-use-some-frame.
24146         Add display-buffer action display-buffer-use-some-frame
24147         * lisp/window.el (display-buffer-use-some-frame): New.
24149         Handle vc-mtn error more gently
24150         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
24151         branch is nil.
24153 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
24155         Fix Tramp problems with multihops, and nc
24156         * lisp/net/tramp-cache.el (tramp-get-file-property)
24157         (tramp-set-file-property, tramp-flush-file-property)
24158         (tramp-get-connection-property, tramp-set-connection-property)
24159         (tramp-flush-connection-property): Remove hop from vector.
24160         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
24161         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
24162         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
24163         netstat to 60".
24164         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
24165         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
24166         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
24167         Keep hop in result.
24168         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
24169         Add hop tests.
24171 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
24173         Resurrect highlighting of repeated words by Flyspell Mode
24174         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
24175         characters between point and the doublon candidate, so that
24176         flyspell-word-search-backward finds it.  (Bug#21157)
24178         Fix redisplay of large images on expose events
24179         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
24180         between signed negative values and unsigned values.  This
24181         prevented redisplay on expose events when the window showed a very
24182         large image.
24184 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
24186         Remove unnecessary stack overflow dependency
24187         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
24188         Don't worry about $ac_cv_header_sys_resource_h and
24189         $ac_cv_func_getrlimit, as they're no longer needed for this.
24190         Problem reported by Eli Zaretskii in:
24191         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
24193 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
24195         Pacify compilation -Wincompatible-pointer-types warnings
24196         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
24197         warning.
24198         (CompareStringW_Proc): New typedef.
24199         (w32_compare_strings): Use it, to pacify compiler warnings under
24200         "-Wincompatible-pointer-types".
24201         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
24202         (GetDiskFreeSpaceExA_Proc): New typedefs.
24203         (Ffile_system_info): Use them, to pacify compiler warnings under
24204         "-Wincompatible-pointer-types".
24206 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
24208         Fix subscript error in calculate_direct_scrolling
24209         Use slightly-longer cost vectors.  Without this change,
24210         calculate_direct_scrolling can have a subscript violation when
24211         FRAME_LINES (frame) <= delta.
24212         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
24213         (line_ins_del, do_line_insertion_deletion_costs):
24214         Allocate and use slightly-larger cost vectors, ones based on
24215         FRAME_TOTAL_LINES instead of FRAME_LINES.
24217         Fix uninitalized value in encode_coding_object
24218         * src/coding.c (encode_coding_object): Also initialize
24219         coding->src_pos and coding->src_pos_byte when NILP (src_object).
24220         This avoids later use of uninitialized storage.
24222 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
24224         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
24225         (Bug#21141)
24227 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
24229         Merge from gnulib
24230         This incorporates:
24231         2015-07-27 time_rz: port better to MinGW
24232         2015-07-27 time: port __need_time_t to MinGW
24233         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
24234         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
24235         * lib/time-internal.h: New file, from gnulib.
24237 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
24239         Handle NULL pointers in w32heap.c allocation routines
24240         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
24241         freeable".
24242         (realloc_after_dump, realloc_before_dump, free_before_dump):
24243         Handle NULL pointers gracefully, as Emacs now seems to expect that.
24245         Fix Cairo build without PNG
24246         * src/image.c: Define PNG function when USE_CAIRO is defined, even
24247         if HAVE_PNG is not.  (Bug#21133)
24249         MS-Windows follow-up for recent TZ-related changes
24250         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
24251         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
24252         picking up 'struct timespec' from pthread.h, if it is installed on
24253         the user's system.  We want either the definitions from MinGW
24254         system headers, if available, or the Gnulib replacements if not.
24255         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
24256         lib/time.h.
24257         * lib/time.in.h: Don't let __need_* symbols affect what happens on
24258         MinGW.  These symbols are defined by MinGW system headers, but we
24259         don't want that to affect whether Gnulib portions of the header
24260         are or aren't used.
24262 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
24264         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
24266         New optional ZONE arg for format-time-string etc.
24267         This simplifies time conversions in other time zones.
24268         It also prevents display-time-world tampering with TZ (Bug#21020).
24269         * admin/admin.el (add-release-logs):
24270         Use improved add-log-time-format API.
24271         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
24272         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
24273         * configure.ac (tzalloc): Remove test for this, since
24274         Emacs no longer uses HAVE_TZALLOC directly.
24275         * doc/lispref/os.texi (Time of Day, Time Conversion)
24276         (Time Parsing):
24277         * etc/NEWS: Document the new behavior.
24278         Merge from gnulib, incorporating:
24279         2015-07-25 strftime: fix newly-introduced bug on Solaris
24280         2015-07-23 fprintftime, strftime: use timezone_t args
24281         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
24282         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
24283         * m4/time_h.m4:
24284         Update from gnulib.
24285         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
24286         New files from gnulib.
24287         * lisp/time-stamp.el (time-stamp-string):
24288         * lisp/time.el (display-time-world-list)
24289         (display-time-world-display):
24290         Use new API, with time zone arg.
24291         * lisp/time.el (display-time-world-display):
24292         Fix race when current-time advances while we're running.
24293         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
24294         (add-log-iso8601-time-string): Accept optional time zone arg.
24295         * lisp/vc/add-log.el (add-change-log-entry):
24296         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
24297         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
24298         Add rules for the time module, since they're now needed
24299         for tzalloc etc.
24300         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
24301         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
24302         * src/editfns.c: Include errno.h.
24303         (set_time_zone_rule): Omit unnecessary forward decl.
24304         (initial_tz): Remove, replacing with ...
24305         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
24306         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
24307         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
24308         (tzlookup): New static functions.
24309         (init_editfns): New arg DUMPING.  All uses changed.
24310         (init_editfns): Omit most initialization if dumping, not if
24311         !initialized.  Initialize wall_clock_tz and local_tz.
24312         (emacs_nmemftime, format_time_string): Time zone argument can now
24313         be any time zone, not just a boolean for UTC or local time.  All
24314         callers changed.
24315         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
24316         (Fcurrent_time_zone): New optional arg ZONE.
24317         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
24318         the same form as with the other new additions.
24319         (decode_time_zone): Remove; no longer needed.
24320         (tzvalbuf): Now file-scope.
24321         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
24322         (syms_of_editfns): Define Qwall.
24323         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
24324         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
24325         [!HAVE_TZALLOC]:
24326         Remove; now supplied by gnulib.
24327         * src/emacs.c (main):
24328         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
24330 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
24332         Fix infinite loop in delete-consecutive-dups
24333         * lisp/subr.el (delete-consecutive-dups): Work even if the last
24334         element is nil (Bug#20588).  Avoid rescan of a circular list in
24335         deletion of last element.
24337 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
24339         Have `x-frame-geometry' return nil for terminal and initial
24340         frames (Bug#21132)
24341         * src/nsfns.m (Fx_frame_geometry):
24342         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
24343         terminal frames.
24344         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
24345         (Fx_frame_geometry): Return nil for terminal frames
24347 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
24349         * etc/tutorials/TUTORIAL.ja: Improve translation.
24351 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
24353         Avoid crashes when w32 GUI functions are called in -batch
24354         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
24355         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
24356         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
24358         Fix flyspell-check-previous-highlighted-word
24359         * lisp/textmodes/flyspell.el
24360         (flyspell-check-previous-highlighted-word): Really accept a
24361         numeric argument, as the doc string describes.  Fix an off-by-one
24362         error in looking up overlays, so invocation with point immediately
24363         after a word would check that word.  Clarify the doc string as
24364         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
24366 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
24368         Minor cleanup in tramp-tests.el
24369         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
24370         Implement using the documented interface
24371         `tramp-connection-properties', rather than with internal functions.
24373 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
24375         Pass lambdas to `skeleton-read'
24376         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
24377         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
24378         lambdas to `skeleton-read' (bug#20386).
24380 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
24382         * INSTALL (DETAILED BUILDING AND INSTALLATION):
24383         Mention --without-imagemagick.
24385         Don't require GUI frames and mouse for Flyspell menus
24386         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
24387         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
24388         support, since pop-up menus work with text terminals and can be
24389         controlled via the keyboard.
24391         Improve documentation of Flyspell commands
24392         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
24393         can be invoked via the keyboard.  Mention those commands by name
24394         and add them to the fn index.  (Bug#21125)
24396 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
24398         Fix some Tramp problems with HP-UX
24399         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
24400         Add "tab0" to stty call.
24401         * test/automated/tramp-tests.el (tramp-persistency-file-name):
24402         Set to nil.
24403         (tramp--test-hpux-p): New defun.
24404         (tramp--test-utf8): Use it.
24406 2015-07-22  Glenn Morris  <rgm@gnu.org>
24408         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
24410 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
24412         Fix point positioning in ffap-next-guess
24413         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
24414         as our callers expect.  This was clobbered as part of fixing
24415         bug#5673.  (Bug#21107)
24416         (ffap-gopher-at-point): Set ffap-string-at-point-region.
24418 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
24420         * lisp/window.el (even-window-sizes): Fix customization type.
24422         Optionally even widths of `display-buffer' windows.  (Bug#21100)
24423         * lisp/window.el (quit-restore-window): Restore width if
24424         requested.
24425         (display-buffer-record-window): Record width when window is
24426         reused and horizontally combined.
24427         (even-window-sizes): New option to allow evening window widths.
24428         (even-window-heights): Defalias to `even-window-sizes'.
24429         (window--even-window-heights): Rename to
24430         `window--even-window-sizes'.  Handle side-by-side windows.
24431         (display-buffer-use-some-window): Call `window--even-window-sizes'
24432         instead of `window--even-window-heights'.
24433         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
24434         * doc/lispref/windows.texi (Choosing Window Options): Describe
24435         `even-window-sizes'.
24436         (Coordinates and Windows): Fix typo.
24438 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
24440         Add file name to autoload error messages
24441         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
24442         Add condition-case to add file name to error message.
24444 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
24446         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
24447         Use 0.0.0.1 as test host.
24449 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
24451         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
24452         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
24453         Fix inf-loop (bug#21083).
24455 2015-07-21  Glenn Morris  <rgm@gnu.org>
24457         * test/automated/package-test.el (package-test-signed):
24458         Update for recent changes.
24460         * test/automated/elisp-mode-tests.el
24461         (elisp-xref-finds-both-function-and-variable)
24462         (elisp-xref-finds-only-function-for-minor-mode):
24463         Update for recent xref name changes.
24465 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
24467         Make eldoc timer non-repeatable
24468         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
24469         non-repeatable.  Since it's on post-command hook, that just wasted
24470         CPU cycles.
24472 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
24474         Mention `tramp-connection-properties' in NEWS
24476         Sync with Tramp repository
24477         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
24478         required prior changing its configuration.
24479         (Connection caching, Predefined connection information)
24480         (Remote shell setup): Fix typos.
24481         (Predefined connection information): Describe, how to overwrite
24482         parameters of `tramp-methods'.
24483         (Remote programs, Remote processes, Traces and Profiles):
24484         Simplify example.
24485         (Remote programs): Remove superfluous comment.
24486         * doc/misc/trampver.texi: Update release number.
24487         * lisp/net/tramp-cache.el (tramp-connection-properties):
24488         Adapt docstring.
24489         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
24490         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
24491         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
24492         "gvfs-mkdir -p ..." does not work robust.
24493         (tramp-gvfs-maybe-open-connection):
24494         Adapt `tramp-get-method-parameter' call.
24495         * lisp/net/tramp-sh.el (tramp-methods):
24496         Add `tramp-remote-shell-login' parameter where it fits.
24497         (tramp-get-remote-path): Use it.
24498         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
24499         (all): Adapt `tramp-get-method-parameter' calls.
24500         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
24501         (tramp-get-method-parameter): Replace argument METHOD by VEC.
24502         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
24503         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
24504         (all): Adapt `tramp-get-method-parameter' calls.
24505         * lisp/net/trampver.el: Update release number.
24506         * test/automated/tramp-tests.el (tramp--instrument-test-case):
24507         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
24508         (tramp-test13-make-directory, tramp--test-adb-p)
24509         (tramp--test-smb-or-windows-nt-p): Simplify.
24510         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
24511         (tramp--test-special-characters): Fix docstring.  Add gvfs and
24512         ftp tests.
24513         (tramp--test-utf8): Fix docstring.
24515 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
24517         Add new xref-query-replace command
24518         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
24519         New function, extracted from xref-pulse-momentarily.
24520         (xref-query-replace): New command.
24521         (xref--query-replace-1): New helper function.
24522         (xref--xref-buffer-mode-map): Add `r' binding.
24524 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
24526         Simplify icalendar decoding of Z dates
24527         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
24528         Simplify calculation of time strings with trailing "Z".
24530 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
24532         Do not corrupt grep-find-ignored-files
24533         * lisp/progmodes/project.el (project-ignores): Change the order of
24534         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
24536         Add xref-match-item, and use it
24537         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
24538         (xref-file-location): Add reader for the column slot.
24539         (xref-match-item): New class.
24540         (xref-match-bounds): A method implementation for it.
24541         (xref-make-match): New constructor function.
24542         (xref--current-item): New private variable.
24543         (xref-pulse-momentarily): Use it.
24544         (xref--pop-to-location): Change the first argument to an xref
24545         item, instead of location, bind xref--current-item.
24546         Update all callers.
24547         (xref-next-line, xref-prev-line, xref--next-error-function)
24548         (xref--mouse-2): Look for the property `xref-item',
24549         instead of `xref-location'.
24550         (xref--item-at-point): Likewise.  This function replaces
24551         `xref-location-at-point'.  Update all callers.
24552         (xref--insert-xrefs): Add the `xref-item' text property, instead
24553         of `xref-location'.
24554         (xref--collect-match): Use xref-make-match.
24556         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
24557         Update all references.
24559         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
24560         slot to `summary'.
24562         vc-hg: Perform the print-log call asynchronously
24563         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
24564         asynchronously (bug#21067).
24566         Add xref-after-jump-hook and xref-after-return-hook
24567         * lisp/progmodes/xref.el (xref-after-jump-hook)
24568         (xref-after-return-hook): New hooks.
24569         (xref-pulse-on-jump): Remove, in favor of the above.
24570         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
24571         (xref--pop-to-location, xref--display-position)
24572         (xref-pop-marker-stack): Use the new hooks, as requested in
24573         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
24575 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
24577         * lisp/progmodes/js.el (js-mode): Correct the lighter.
24579 2015-07-19  Leo Liu  <sdl.web@gmail.com>
24581         Fix a bug in cfengine3-mode
24582         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
24583         eldoc-documentation-function.
24585 2015-07-18  Julien Danjou  <julien@danjou.info>
24587         sieve-mode: support "body" test command
24588         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
24589         Add missing "body" test command.
24591 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
24593         Fix info-apropos when the default encoding is Latin-N
24594         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
24595         'undecided', so that it is set to the encoding of the Info file we
24596         are about to insert.  Otherwise, 'info-apropos' will fail to find
24597         some index nodes in some UTF-8 encoded files, if the buffer's
24598         previous encoding is Latin-N or some such.
24600 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
24602         * lisp/epg.el (epg--start): Check that gpgconf can be found
24603         before calling it.
24605         Expose more file types to OS X that Emacs understands
24606         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
24607         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
24609 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
24611         Fix visual-order cursor movement when lines are truncated
24612         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
24613         simulate display in a window of infinite width, to allow move_it_*
24614         functions reach positions outside of normal window dimensions.
24615         Remove code that tried to handle a subset of these situations by
24616         manual iteration of buffer text.  (Bug#17777)
24618         Fix following Info cross-references to anchors
24619         * lisp/info.el (Info-read-subfile): Add to the returned value the
24620         length of subfile preamble, after converting it to file's byte
24621         offset, as expected by the caller.  Use bufferpos-to-filepos.
24622         (Info-find-node-2): If searching for a node with a
24623         1000-character slop fails, try again with a 10000-character slop,
24624         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
24625         * lisp/international/mule-util.el (bufferpos-to-filepos): New
24626         function.
24627         * etc/NEWS: Mention bufferpos-to-filepos.
24629         Fix scrolling backwards on TTY frames under scroll-conservatively
24630         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
24631         in moving backwards on TTY frames.  (Bug#21080)
24633 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
24635         Consider a jsdoc tag to be a beginning of a paragraph as well
24636         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
24637         consider a jsdoc tag to be a beginning of a paragraph as well.
24639 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
24641         * lisp/emacs-lisp/package.el: Fix warnings.
24643         * lisp/emacs-lisp/package.el (package-buffer-info):
24644         Add author and maintainers to `package-buffer-info'.
24646         * lisp/emacs-lisp/package.el: Many small changes.
24647         Replace all instances of 'face with 'font-lock-face.
24648         (describe-package-1): Improve some strings and move the summary
24649         up the list.
24650         (package-install-file): Update docstring.
24651         (package-menu-hide-package): Bind to `H'.
24653         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
24654         Fix error handling.
24656 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
24658         Fix hang with large yanks This should fix the bug fixed by Mike
24659         Crowe's patch in:
24660         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
24661         A problem in this area has been reported by several users; see
24662         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
24663         This fix differs from Mike Crowe's patch in that it should avoid a
24664         race condition that could lose SIGIO signals.  ignore_sigio dates
24665         back to the 1980s when some platforms couldn't block signals, and
24666         could only ignore them, which led to races when signals arrived
24667         while being ignored.  We shouldn't have to worry about those old
24668         platforms now.
24669         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
24670         * src/emacs.c (shut_down_emacs):
24671         Don't call ignore_sigio; unrequest_sigio should suffice.
24672         * src/keyboard.c (kbd_buffer_store_buffered_event):
24673         Use unrequest_sigio, not ignore_sigio.
24674         (kbd_buffer_get_event):
24675         Call request_sigio when getting the ball rolling again.
24677 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
24679         * lisp/obsolete/longlines.el (longlines-search-function):
24680         Fallback on `isearch-search-fun-default'.
24682 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
24684         Support @-mentions
24685         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
24686         of mentions/messages with @nick instead of just nick.
24688 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
24690         Fix bug#20943
24691         * lisp/autorevert.el (auto-revert-handler): Do not check for
24692         `buffer-modified-p'.
24693         * lisp/files.el (buffer-stale--default-function): Check for
24694         `buffer-modified-p'.
24695         * test/automated/auto-revert-tests.el
24696         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
24698 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
24700         Fix delete-dups bug on long lists
24701         * lisp/subr.el (delete-dups):
24702         Don't mistakenly keep some dups when applied to long lists.
24704 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
24706         Better heuristic for C stack overflow
24707         Improve the heuristic for distinguishing stack overflows from
24708         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
24709         the getrlimit method wasn't portable to Cygwin; see:
24710         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
24711         Corinna suggested pthread_getattr_np but this also has problems.
24712         Instead, replace the low-level system stuff with a simple
24713         heuristic based on known good stack addresses.
24714         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
24715         * src/sysdep.c: Don't include <sys/resource.h>.
24716         (stack_direction): Remove.  All uses removed.
24717         (stack_overflow): New function.
24718         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
24719         Make SEGV fatal in non-main threads.
24721 2015-07-16  Daiki Ueno  <ueno@gnu.org>
24723         epg: Automatically start pinentry server
24724         * lisp/epg-config.el (epg-gpgconf-program): New variable.
24725         * lisp/epg.el (epg--start): Call `pinentry-start' if
24726         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
24728 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
24730         * lisp/gnus/nnimap.el: Fix my last bogus change.
24731         Reinstall Stefan Monnier's change that was made in
24732         <83d824bc4041332f338ad7e5e830f443535aa300>.
24734 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
24736         Merge from gnulib
24737         This incorporates:
24738         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
24739         2015-07-05 acl-permissions: Fix on FreeBSD
24740         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
24741         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
24742         * lib/set-permissions.c: Copy from gnulib.
24744         Port to stricter C99
24745         * src/keyboard.h (kbd_buffer_store_event_hold):
24746         Don't return a void expression.
24748 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
24750         * doc/emacs/frames.texi (Creating Frames):
24751         Fix the command `C-x 5 m' runs.
24753 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
24755         New autorevert tests
24756         * test/automated/auto-revert-tests.el: New file.
24758 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
24760         Clear gcprolist etc. after stack overflow
24761         After stack overflow, command_loop calls init_eval, and this needs to
24762         clear gcprolist and byte_stack_list (Bug#20996).
24763         * src/alloc.c (init_alloc):
24764         Move gcprolist and byte_stack_list initialization from here ...
24765         * src/eval.c (init_eval): ... to here.
24767 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
24769         * doc/emacs/windows.texi (Pop Up Window): Fix the description
24770         of `C-x 4 m'.
24772 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24774         Avoid deprecated enums in mac-ct font backend driver
24775         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
24776         (mac_ctfont_get_advance_width_for_glyph)
24777         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
24779         Cache font family in mac-ct font backend driver
24780         * src/macfont.m (macfont_family_cache): New variable.
24781         (syms_of_macfont): Initialize it.
24782         (macfont_available_families_cache): New variable.
24783         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
24784         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
24785         (macfont_handle_font_change_notification)
24786         (macfont_init_font_change_handler)
24787         (macfont_copy_available_families_cache): New functions.
24788         (macfont_create_family_with_symbol): Use font family caches.
24789         (macfont_list, macfont_list_family):
24790         Use macfont_copy_available_families_cache instead of
24791         mac_font_create_available_families.
24793 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
24795         Show the default value in the prompt
24796         * lisp/progmodes/xref.el: Add `M-?' binding for
24797         xref-find-references.  Declare functions `grep-read-files' and
24798         `grep-expand-template'.
24799         (xref--read-identifier): Show the default value in the prompt.
24801         * lisp/progmodes/xref.el (xref-find-regexp): When called with
24802         prefix argument, ask for file patterns to search as well.  When
24803         prompting for the directory, require an existing one.
24804         (xref-collect-matches): Add a new argument, FILES.  Use it in the
24805         above function.
24807         Add `project-ignores'
24808         * lisp/progmodes/project.el (project-ignores): New generic
24809         function, and an implementation for the VC project type.
24810         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
24811         variant of rgrep-default-command that handles a generic list of
24812         ignores.
24813         (xref-collect-matches): Use it, and pass through to it the value
24814         of the newly added argument.
24815         (xref-find-regexp): Handle ignored paths within the project.
24816         Remove outdated comment.
24817         * lisp/vc/vc.el (vc-default-ignore-completion-table):
24818         Skip the comments and the empty lines.
24820 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
24822         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
24824 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
24826         gnus-registry.el: Correct function argument order
24827         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
24828         Reverse the order of function arguments.
24830 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
24832         Bind grep-highlight-matches to nil
24833         * lisp/progmodes/xref.el (xref-collect-matches):
24834         Bind grep-highlight-matches to nil (bug#20728).
24836 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
24838         nnimap.el: Fix IMAP message size parsing
24839         * lisp/gnus/nnimap.el (nnimap-transform-headers):
24840         Don't assume that UID comes before RFC822.SIZE.
24842 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
24844         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
24845         (auth-source-creation-prompts): Declare.
24846         (nnimap-retrieve-headers, nnimap-status-message)
24847         (nnimap-request-create-group, nnimap-request-delete-group)
24848         (nnimap-close-group, nnimap-request-move-article)
24849         (nnimap-request-accept-article, nnimap-request-newgroups)
24850         (nnimap-request-post, nnimap-dummy-active-number)
24851         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
24852         (nnimap-parse-flags): Remove unused var `p'.
24853         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
24854         (nnimap-flags-to-marks): Remove unused var `totalp'.
24856 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
24858         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
24860 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
24862         * src/macfont.m (macfont_list): Ignore font families lacking
24863         font descriptors.
24865 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
24867         Don't check the exit status, it can be misleading
24868         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
24869         exit status, it can be misleading.
24871         Introduce a Project API
24872         * lisp/progmodes/project.el: New file.
24873         * lisp/cedet/ede.el (project-try-ede): New function.
24874         (project-root): New implementation.
24875         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
24876         Set project-search-path-function.
24877         (elisp--xref-find-references): Delegate some logic to
24878         project-search-path.
24879         (elisp-search-path): New function.
24880         (elisp-xref-find): Don't implement `matches' anymore.
24881         * lisp/progmodes/etags.el: Don't implement `matches'.
24882         Delegate some logic to project-search-path.
24883         (etags-search-path): New function.
24884         * lisp/progmodes/xref.el (xref-find-function):
24885         Remove `matches' from the API.
24886         (xref-find-regexp): Move whatever common logic was in elisp and
24887         etags implementations, and search the directories returned by
24888         project-directories and project-search-path.
24890 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
24892         * test/automated/map-tests.el (test-map-delete-return-value):
24893         Uncomment test.
24895         Add support for gv.el in map.el
24896         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
24897         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
24898         * test/automated/map-tests.el: Update tests to work with the new
24899         implementations of map-elt and map-put.
24901 2015-07-09  Glenn Morris  <rgm@gnu.org>
24903         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
24905 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
24907         Syntax-propertize until the end of the line first
24908         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
24909         until the end of the line first.
24911 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
24913         * doc/emacs/files.texi (File Archives): Add a cross reference.
24915 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
24917         nnimap.el: Handle plain value for nnimap-stream
24918         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
24919         capabilities, so that a 'plain value for the `nnimap-stream' server
24920         variable is handled correctly.
24921         * doc/misc/gnus.texi (Customizing the IMAP Connection):
24922         Document the 'plain option.
24924 2015-07-08  Leo Liu  <sdl.web@gmail.com>
24926         Fix bug in thing-at-point--bounds-of-well-formed-url
24927         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
24928         sure boundary contains current point.
24930 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
24932         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
24933         in the end.
24935         Declare whitespace-line-column a safe file-local
24936         * lisp/whitespace.el (whitespace-line-column): Declare to be a
24937         safe file-local when the value is an integer.
24939 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
24941         gnus-group.el: Check if group names are already strings
24942         * lisp/gnus/gnus-group.el (gnus-group-group-name):
24943         The group name may already be a string.
24944         Specifically, in the group list reached from the *Server* buffer,
24945         the 'gnus-group text property returns a string.  Everywhere else
24946         it returns a symbol.
24948         nnimap.el: Remove unused let variables
24949         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
24951 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
24953         Support "maximized" property of runemacs's shortcut
24954         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
24955         the '--maximized' switch to Emacs.
24957         Support "minimized" property of runemacs's shortcut
24958         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
24959         pass the '--iconic' switch to Emacs.  (Bug#20991)
24961 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
24963         Doc fixes
24964         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
24965         C-w' in Diff mode.
24966         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
24967         Add a cross reference.
24969 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
24971         * lisp/obsolete/landmark.el: Add Obsolete-since header.
24973 2015-07-07  Glenn Morris  <rgm@gnu.org>
24975         * test/automated/ert-tests.el (ert-test-deftest):
24976         Update for recent changes.
24978 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24980         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
24981         * lisp/emacs-lisp/gv.el (gv-setter): New function.
24982         (gv-invalid-place): New error.
24983         (gv-get): Use them.
24984         (gv-synthetic-place, gv-delay-error): New places.
24985         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
24986         (cl-defgeneric, cl-defmethod): Use gv-setter.
24988 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
24990         Make vc-tests work with MSYS svn program
24991         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
24992         svn is an MSYS program.
24994 2015-07-07  Ken Brown  <kbrown@cornell.edu>
24996         Improve recent change to emacsclient on Cygwin
24997         * lisp/server.el (server-process-filter): Remove redundant check
24998         that 'cygwin-convert-file-name-from-windows' is defined as a
24999         function on Cygwin.  Don't call that function unless its argument
25000         starts with a drive letter.
25002 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
25004         * lisp/emacs-lisp/package.el (package-compute-transaction):
25005         Fix void variable due to `found-something' being in the wrong `let'.
25007 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
25009         * lisp/play/landmark.el: Move to lisp/obsolete/.
25011 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
25013         Have `x-show-tip' handle `right' and `bottom' frame parameters
25014         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
25015         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
25016         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
25017         tooltips also via `right' and `bottom' frame parameters.
25019 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
25021         Add online-help support to describe types
25022         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
25023         (describe-symbol): Improve the selection of default.
25024         * lisp/help-mode.el: Require cl-lib.
25025         (describe-symbol-backends): Move from help-fns.el.
25026         (help-make-xrefs): Use it.
25027         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
25028         for types.
25029         (cl--typedef-regexp): New const.
25030         (find-function-regexp-alist): Add entry for types.
25031         (cl-help-type, cl-type-definition): New buttons.
25032         (cl-find-class): New function.
25033         (cl-describe-type): New command.
25034         (cl--describe-class, cl--describe-class-slot)
25035         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
25036         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
25037         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
25038         New functions.  Moved from eieio-opt.el.
25039         (cl--generic-class-parents): New function, extracted from
25040         cl--generic-struct-specializers.
25041         (cl--generic-struct-specializers): Use it.
25042         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
25043         Improve constructor's docstrings.
25044         (cl-struct-unknown-slot): New error.
25045         (cl-struct-slot-offset): Use it.
25046         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
25047         definition in current-load-list.
25048         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
25049         (eieio--add-new-slot): Set it.
25050         (eieio-defclass-internal): Use new name for current-load-list.
25051         (eieio-oref): Add compiler-macro to warn about unknown slots.
25052         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
25053         as compile-time as well.  Improve constructor docstrings.
25054         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
25055         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
25056         (eieio-class-def): Remove button.
25057         (eieio-help-constructor): Use new name for load-history element.
25058         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
25059         (eieio-method-documentation): Move to cl-generic.el.
25060         (eieio-display-method-list): Use new names.
25061         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
25062         Add "define-linline".
25063         (lisp-fdefs): Remove "defsubst".
25064         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
25065         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
25066         (macroexp--warn-and-return): Use it to avoid inf-loops.
25067         Add `compile-only' argument.
25069 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25071         python.el: Fix local/remote shell environment setup
25072         * lisp/progmodes/python.el (python-shell-with-environment):
25073         Fix remote/local environment setup.
25074         * test/automated/python-tests.el (python-shell-with-environment-1)
25075         (python-shell-with-environment-2): New tests.
25077 2015-07-06  Glenn Morris  <rgm@gnu.org>
25079         * lisp/simple.el (set-variable): Tweak recent doc fix.
25081 2015-07-06  Ken Brown  <kbrown@cornell.edu>
25083         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
25085 2015-07-06  Glenn Morris  <rgm@gnu.org>
25087         * lisp/simple.el (set-variable): Use user-error for type mismatch.
25089 2015-07-06  Ken Brown  <kbrown@cornell.edu>
25091         * src/emacs.c (main): Don't increase the stack size on Cygwin.
25093 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
25095         (describe-symbol): Rewrite describe-function-or-variable
25096         * lisp/help-fns.el (describe-symbol-backends): New var.
25097         (help-xref-stack-item): Declare.
25098         (describe-symbol): Rename from describe-function-or-variable.
25099         Rewrite using describe-symbol-backends instead of help-xref-interned.
25100         * lisp/help.el (help-map): Use it.
25101         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
25102         (help-xref-interned): Make it into an obsolete alias.
25104         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
25105         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
25106         and cl-letf.
25108 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
25110         Fix parsing glitches in dired-mark-sexp (bug#13575)
25111         * lisp/dired-x.el (dired-x--string-to-number): New function.
25112         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
25113         of directory-listing-before-filename-regexp.  Consider
25114         forward-word harmful and replace it.  Add more verbiage in
25115         comments and doc string.
25117 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
25119         python.el: Respect process environment for remote shells
25120         * lisp/progmodes/python.el
25121         (python-shell-calculate-process-environment): Calculate
25122         process-environment or tramp-remote-process-environment depending
25123         whether current file is remote.
25124         (python-shell-calculate-exec-path): Calculate exec-path or
25125         tramp-remote-path depending whether current file is remote.
25126         (python-shell-with-environment): New macro.
25127         (python-shell-prompt-detect, python-shell-calculate-command)
25128         (python-shell-make-comint, python-check): Use it.
25130         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
25131         * lisp/progmodes/python.el (python-shell--interpreter)
25132         (python-shell--interpreter-args): New vars.
25133         (inferior-python-mode, python-shell-make-comint): Use them.
25135         python.el: Fixes for IPython 3.x  (Bug#20580)
25136         * lisp/progmodes/python.el:
25137         (python-shell-completion-native-setup): Fix IPython 3.x setup.
25138         (python-shell-completion-native-get-completions): Fix timeout
25139         logic.
25141         python.el: Fix mark-defun behavior  (Bug#19665)
25142         * lisp/progmodes/python.el (python-mark-defun): New function.
25143         * test/automated/python-tests.el (python-mark-defun-1)
25144         (python-mark-defun-2, python-mark-defun-3): New tests.
25146 2015-07-05  Glenn Morris  <rgm@gnu.org>
25148         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
25149         such as "extends(parent), private".  (Bug#20969)
25150         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
25151         New tests.
25153 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
25155         Avoid duplicate calls to current_timespec
25156         * src/process.c (wait_reading_process_output):
25157         Cache current_timespec results as long as we're not waiting.
25159 2015-07-05  Ian Kelling  <ian@iankelling.org>
25161         Avoid returning early reading process output due to SIGIO
25162         * src/process.c (wait_reading_process_output): Extend the behavior of
25163         not breaking due to not finding output when a timer has lowered the
25164         timeout to include when SIGIO lowers the timeout.
25166         Don't return as fast reading any process output
25167         * src/process.c (wait_reading_process_output):
25168         The patch for Bug#17647 returns too fast sometimes when reading
25169         from any processes.  Revert part of it, and limit the timeout more
25170         sensibly (Bug#20978).
25172         Refactor timeouts in wait_reading_process_output
25173         * src/process.c (wait_reading_process_output):
25174         Simplify timeouts with an enum.  Remove a redundant condition.
25175         (Bug#20978)
25177         Remove ADAPTIVE_READ_BUFFERING ifdef
25178         * src/process.c (make-process, make-pipe-process, deactivate_process)
25179         (wait_reading_process_output, read_process_output, send_process)
25180         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
25181         added in case there was an operating system in which it was not
25182         useful.  That was 11 years ago and it hasn't happened.  Make
25183         development easier by not considering the effect of changes on a
25184         theoretical OS where this is disabled (Bug#20978).
25186 2015-07-05  Glenn Morris  <rgm@gnu.org>
25188         * lisp/simple.el (set-variable): Doc fix.
25190         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
25192 2015-07-05  Ian Kelling  <ian@iankelling.org>
25194         accept-process-output fix
25195         This is a followon to the fix for bug#17647 (Bug#20976).
25196         * src/process.c (status_notify): Fix too high return in some cases.
25198 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
25200         * lisp/character-fold.el (character-fold-table):
25201         Only fold decompositions if at least one character is non-spacing.
25202         (Bug#20975)
25204 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
25206         Merge from gnulib
25207         This incorporates:
25208         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
25209         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
25210         2015-07-02 update-copyright: fix test failure with perl >= 5.22
25211         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
25212         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
25213         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
25214         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
25216 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
25218         Respect `prog-indentation-context' in python.el
25219         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
25220         (python-indent-context, python-indent--calculate-indentation)
25221         (python-info-current-defun)
25222         (python-info-dedenter-opening-block-message)
25223         (python-info-line-ends-backslash-p)
25224         (python-info-beginning-of-backslash)
25225         (python-info-continuation-line-p): Use `prog-widen'.
25226         (python-indent--calculate-indentation)
25227         (python-indent--calculate-levels)
25228         (python-indent-calculate-indentation): Use `prog-first-column'.
25229         (python-indent--calculate-levels): Simplify.
25230         Ignore also initial empty lines for syntax calculation.
25231         * lisp/progmodes/python.el (python-indent-context): Return
25232         :no-indent for first non-empty line, not just in line 1.
25233         * test/automated/python-tests.el (python-indent-base-case)
25234         (python-indent-inside-paren-1, python-indent-inside-paren-2)
25235         (python-indent-inside-paren-3, python-indent-inside-paren-4)
25236         (python-indent-inside-paren-5, python-indent-inside-paren-6)
25237         (python-indent-after-backslash-1)
25238         (python-indent-after-backslash-2)
25239         (python-indent-after-backslash-3)
25240         (python-indent-after-backslash-4, python-indent-inside-string-1):
25241         Expect :no-indent for first non-empty line.
25243 2015-07-04  Daniel Colascione  <dancol@dancol.org>
25245         Factor isearch word description into new function
25246         * lisp/isearch.el (isearch--describe-word-mode): New function.
25247         (isearch-message-prefix, isearch-query-replace): Use it.
25249 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
25251         Fix mouse pointer on w32 when a menu is active
25252         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
25253         shape while a menu is in use.  This started happening since we now
25254         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
25256 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
25258         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
25259         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
25260         parameter.  (Bug#17344)
25262         Have `compilation-set-window' use right window for getting fringes
25263         (Bug#20829)
25264         * lisp/progmodes/compile.el (compilation-set-window):
25265         Take `window-fringes' from argument window.
25267 2015-07-03  Glenn Morris  <rgm@gnu.org>
25269         Update eieio tests for recent eieio-core change.
25270         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
25271         * test/automated/eieio-tests.el
25272         (eieio-test-32-slot-attribute-override-2):
25273         Replace the deleted eieio--class-v with cl--find-class.
25275 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
25277         Fix some issues with `window-divider-mode'
25278         * lisp/frame.el (window-divider-default-places): New option.
25279         (window-divider-mode): Remove option.
25280         (window-divider-mode): Make it a "regular" minor mode.
25281         (window-divider-width-valid-p): Drop frame- prefix.
25282         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
25283         prefix.  Handle `window-divider-default-places'.
25284         (frame--window-divider-mode-set-and-apply): Remove.
25285         (window-divider-default-bottom-width)
25286         (window-divider-default-right-width): Drop :group entries.
25287         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
25288         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
25289         (menu-bar-no-window-divider): Set `window-divider-default-places'
25290         and call `window-divider-mode'.
25291         * doc/emacs/frames.texi (Window Dividers): Document
25292         `window-divider-default-places'.
25294 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
25296         * doc/emacs/display.texi (Displaying Boundaries):
25297         * doc/emacs/search.texi (Word Search): Add cross references.
25299 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
25301         -batch should not affect ‘’ -> `' display
25302         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
25303         -batch (Bug#20926).
25305 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
25307         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
25308         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
25309         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
25310         Use cl--find-class instead.
25312         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
25314 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
25316         Some further fixes in Change Window node (Bug#20183)
25317         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
25318         by "resizing" in section title.  Add some concept indices.
25319         Suggested by N. Jackson (Bug#20183).
25321         * doc/emacs/windows.texi (Change Window): Reference window
25322         dividers.
25324         Document new `window-divider-mode'.
25325         * lisp/frame.el (window-divider-mode): Fix doc-string.
25326         * doc/emacs/frames.texi (Window Dividers): New section.
25328         Improve accessibility of window dividers (Bug#20183)
25329         * lisp/faces.el (window-divider)
25330         (window-divider-first-pixel, window-divider-last-pixel): Change
25331         membership from `frames' to `window-divider' customization group.
25332         * lisp/frame.el (window-divider): New customization group.
25333         (window-divider-mode): New minor mode.
25334         (window-divider-default-bottom-width)
25335         (window-divider-default-right-width): New options.
25336         (frame--window-divider-previous-mode): New variable.
25337         (frame-window-divider-width-valid-p)
25338         (frame--window-divider-mode-apply)
25339         (frame--window-divider-mode-set-and-apply): New functions.
25340         * lisp/menu-bar.el (menu-bar-options-save): Save
25341         window-divider-mode settings.
25342         (menu-bar-window-divider-customize)
25343         (menu-bar-bottom-and-right-window-divider)
25344         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
25345         (menu-bar-no-window-divider): New functions.
25346         (menu-bar-showhide-window-divider-menu): New variable.
25347         (menu-bar-showhide-menu): Show/hide window divider menu.
25348         * lisp/mouse.el (mouse-split-window-vertically)
25349         (mouse-split-window-horizontally): Replace `error' by
25350         `user-error'.  Bind `window-combination-resize' to nil.
25351         (top-level): Add/reorder mouse key bindings on mode- and
25352         vertical-line.
25354 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
25356         Don't display ‘’ as `' under X in en_GB
25357         The curved quote setup code invokes (char-displayable-p ?‘),
25358         but this isn’t reliable until after the X frame replaces the
25359         terminal frame (Bug#20926).
25360         * lisp/international/mule-cmds.el (set-locale-environment):
25361         Move curved quote setup code from here ...
25362         * lisp/startup.el (command-line): ... to here, after creating
25363         the X frame.
25365 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
25367         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
25369         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
25370         to reverse the meaning (Bug#15631).
25372 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
25374         Be more tolerant to fonts named "Foobar-12"
25375         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
25376         don't barf; instead, request a new fontset to be generated.  This
25377         avoids unnecessarily rejecting fonts named against XLFD rules.  See
25378         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
25379         for the description of the original problem.
25380         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
25381         by a hyphen in a font's name.
25383         Fix value of posn-at-pont in R2L lines
25384         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
25385         coordinate of -1, for a newline in a right-to-left line that
25386         overflowed into the left fringe.
25388 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
25390         (cl--copy-slot-descriptor): Copy the `props' alist as well
25391         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
25392         Rename from cl--copy-slot-descriptor.
25393         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
25395 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
25397         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
25398         (xterm-query-timeout): New var.
25399         (xterm--query): Use it.  Fallback on async method if we timeout before
25400         getting the first byte of the reply (bug#12354).
25402 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
25404         Spelling fixes
25405         * lisp/character-fold.el (character-fold-search):
25406         * lisp/emacs-lisp/package.el (package-hidden-regexps):
25407         Fix typos.
25409 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
25411         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
25413 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
25415         In strings, prefer plain ` and ' to \` and \'
25416         * lisp/allout.el (allout-insert-listified):
25417         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
25418         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
25419         (ls-lisp-string-lessp):
25420         * lisp/menu-bar.el (menu-bar-open):
25421         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
25422         * lisp/progmodes/compile.el (compile):
25423         * lisp/progmodes/etags.el (tags-loop-scan):
25424         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
25425         * lisp/subr.el (posn-actual-col-row):
25426         * lisp/term/pc-win.el (x-list-fonts):
25427         * lisp/textmodes/texinfmt.el (texinfmt-version):
25428         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
25429         * lisp/time.el (display-time-world-list):
25430         * lisp/tmm.el (tmm-menubar):
25431         * src/buffer.c (syms_of_buffer):
25432         * src/fileio.c (syms_of_fileio):
25433         Omit unnecessary and confusing backslash before quote.
25434         * lisp/erc/erc.el (erc-cmd-LASTLOG):
25435         * lisp/progmodes/flymake.el (flymake-fix-file-name):
25436         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
25437         Fix string that was intended to escape a backslash and not a quote.
25439 2015-06-30  Glenn Morris  <rgm@gnu.org>
25441         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
25443         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
25444         Replace hard-coded lists with wildcard + filter-out.
25446         * configure.ac (system-configuration-features): Add X11, NS.
25448         Improve reproducibility of generated loaddefs file
25449         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
25450         Make the return value the modtime of the input file (if no autoloads).
25451         (update-directory-autoloads): In the "no autoloads" section,
25452         use "most recent modtime" rather than "current time".
25454 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
25456         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
25457         (Bug#20930)
25459 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
25461         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
25463         Add seq-min and seq-max
25464         Bump version number.
25465         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
25466         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
25468 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
25470         Make sure sleep-for always delays for as long as it's told
25471         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
25472         a loop, to ensure we always wait exactly the required amount of
25473         time.  (Bug#15990)
25475 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
25477         Fix pointer signedness glitch
25478         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
25480 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
25482         Don't block changes in mouse pointer inside 'track-mouse'
25483         * etc/NEWS:
25484         * doc/lispref/frames.texi (Mouse Tracking): Document the special
25485         effect of setting 'track-mouse' to 'dragging'.
25486         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
25487         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
25488         * lisp/mouse-drag.el (mouse-drag-throw):
25489         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
25490         to avoid changes in the shape of the mouse pointer.
25491         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
25492         pointer shape when do_mouse_tracking has the value of 'dragging',
25493         not just any non-nil value.  (Bug#20934)
25494         (syms_of_xdisp): DEFSYM 'dragging'.
25496 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
25498         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
25500         * lisp/emacs-lisp/package.el (package-compute-transaction):
25501         Don't assume version sorting.
25503         * lisp/emacs-lisp/package.el (package--save-selected-packages):
25504         Don't save before init time, to avoid overwriting configurations.
25505         (Bug#20855)
25507 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
25509         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
25510         references.
25512 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
25514         Update for the upcoming CFEngine 3.7 release: support macros and
25515         quoted context strings; reformat JSON; indent promise attributes 2
25516         units by default; give function parameter descriptions in the eldoc
25517         glue.
25518         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
25519         Autoload `json-pretty-print'.  Support new features in 3.7.
25520         (cfengine-parameters-indent): Set default promise attribute indent to
25521         2 more than the promise itself.
25522         (cfengine3-macro-regex): New variable to match the new macro syntax.
25523         (cfengine3-font-lock-keywords): Use it to highlight macros.
25524         (cfengine3-indent-line): Use it to indent macros to column 0.
25525         (cfengine3-class-selector-regex): Update for the new quoted strings
25526         format.
25527         (cfengine3-reformat-json-string): New function to reformat a JSON
25528         string using `json-pretty-print'.
25529         (cfengine3-format-function-docstring): Use function parameter
25530         description if it's provided by the cf-promises syntax dump.
25532 2015-06-29  Michael R. Mauger  <michael@mauger.com>
25534         Cygwin emacsclient handles w32 file names
25535         * lisp/server.el (server-process-filter): Allow Cygwin's
25536         emacsclient to be used as a file handler on MS-Windows.
25538 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
25540         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
25541         (bug#20925).
25543 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
25545         * doc/lispref/text.texi (Sticky Properties): Improve wording.
25546         (Bug#20924)
25548         Allow font names that end in "-NN", where NN is a number
25549         * src/font.c (font_load_for_lface): If the font-spec didn't match
25550         any available fonts, try again without interpreting trailing "-NN"
25551         as the font size.  For the description of the original problem, see
25552         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
25554         .gdbinit followup to changes in !USE_LSB_TAG
25555         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
25556         !USE_LSB_TAG, as Emacs no longer does.
25558 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
25560         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
25561         Otherwise `s p' of f and F will stomp on each other's value.
25562         (Bug#20916)
25564 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
25566         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
25567         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
25569 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
25571         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
25572         as additional guess.
25574         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
25575         to a string.
25577 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
25579         apropos-library quoting fix
25580         * lisp/apropos.el (apropos-library): Quote library consistently
25581         with the rest of the quoting used by apropos.
25583         Clarify interpreter-mode-alist doc
25584         * lisp/files.el (interpreter-mode-alist):
25585         Reword to avoid confusing quoting that wasn't working anyway.
25587 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
25589         Sync with Tramp 2.2.12
25590         * doc/misc/trampver.texi:
25591         * lisp/net/trampver.el: Update release number.
25592         * test/automated/tramp-tests.el (tramp-test13-make-directory):
25593         Fix cleanup.
25595 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
25597         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
25599 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
25601         Bind grep-highlight-matches around the rgrep call
25602         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
25603         around the rgrep call (bug#20728).
25605         Put "--color" before the other options in grep-command
25606         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
25607         before the other options in grep-command (bug#20912).
25609         Add --color Grep option to the command dynamically
25610         * lisp/progmodes/grep.el (grep-template, grep-find-template):
25611         Update the description for <C>.  (Bug#20728)
25612         (grep-compute-defaults): Don't add the --color option to
25613         grep-options.  Only add it to grep-command.
25614         (grep-expand-keywords): Expand the env value opts into <C>.
25615         (grep-expand-template): Replace cf in the env with the opts list,
25616         that can include -i and --color.
25617         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
25618         "--color=always" from the template, because we don't have to.
25620 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
25622         cl-extra fixes for most-negative-fixnum
25623         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
25624         Don't mishandle an argument equal to most-negative-fixnum,
25625         whose absolute value equals itself.
25626         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
25628         Initialize cl--gensym-counter to 0
25629         Previously it was initialized to a random value, which made it
25630         harder to reproduce earlier Emacs runs.  The need for a random
25631         value went away when Emacs introduced and used the #: syntax for
25632         uninterned symbols (Bug#20862).
25633         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
25634         Document that cl--gensym-counter now starts with 0.
25635         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
25636         (cl--random-time): Move to near only remaining use.
25637         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
25639         Improve docstring for macroexp-let2
25640         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
25641         Improve as per suggestion by RMS in:
25642         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
25643         Also, rename args to match new doc string.
25645 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
25647         Fix VC test suite on MS-Windows
25648         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
25649         always starts with 3 slashes after the colon.
25650         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
25651         'w32-application-type' to invoke CVS on MS-Windows with properly
25652         formatted CVSROOT directory name.
25654         Add a new function w32-application-type
25655         * src/w32proc.c (Fw32_application_type): New function.
25657         Avoid error in TLS connections due to incorrect format
25658         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
25659         the call to 'error', instead of the unsupported %u.  Reported by
25660         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
25662 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
25664         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
25666 2015-06-26  Leo Liu  <sdl.web@gmail.com>
25668         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
25669         `with-output-to-string' in elisp.
25671         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
25672         with-output-to-string".
25673         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
25675 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
25677         Minor corrections in ELisp manual
25678         * doc/lispref/nonascii.texi (Character Properties): Correct
25679         inaccuracies in description of values of the Unicode properties.
25681         Fix invisible mouse pointers on Windows.
25682         * src/w32fns.c: Include windowsx.h.
25683         (w32_wnd_proc): If the mouse moved and the mouse pointer is
25684         invisible, make it visible again even when the main (Lisp)
25685         thread is busy.
25686         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
25687         garbaging the frame have the input thread call SetCursor.
25689 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
25691         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
25692         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
25693         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
25694         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
25695         (w32_toggle_invisible_pointer): New function.
25696         (w32_create_terminal): Add w32_toggle_invisible_pointer as
25697         toggle_invisible_pointer_hook for this terminal.
25699 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
25701         Doc fix for deletion commands
25702         'delete-char' does not respect the value of 'delete-active-region'.
25703         * doc/emacs/killing.texi (Deletion):
25704         Fix documentation for some single-char deletion commands.
25706         * doc/emacs/help.texi (Apropos):
25707         Improve documentation of 'apropos-do-all'.
25709         * doc/emacs/help.texi (Help Summary):
25710         Improve documentation of 'describe-mode'.
25712 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
25714         Fix submake dependency bug with .h files
25715         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
25716         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
25717         before the submake in $(libsrc) would spin off a subsubmake
25718         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
25720 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
25722         * lisp/character-fold.el (character-fold-table): Reuse `table'.
25724 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
25726         Translate undisplayable ‘ to `
25727         * doc/lispref/help.texi (Keys in Documentation):
25728         * lisp/international/mule-cmds.el (set-locale-environment):
25729         * lisp/term/w32console.el (terminal-init-w32console):
25730         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
25731         If ‘ is not displayable, transliterate it to `, not to '.  See:
25732         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
25734         Fix C99 incompatibilities in Cairo code
25735         * src/image.c (xpm_load) [USE_CAIRO]:
25736         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
25737         Fix pointer signedness problem.
25739 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
25741         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
25742         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
25743         `with-output-to-string' should have the same indent as `progn'.
25744         This is in line with the declaration of `with-output-to-string'.
25746 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
25748         Get ‘./configure; make -C src emacs’ to work
25749         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
25750         * lib-src/Makefile.in (../lib/libgnu.a):
25751         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
25753 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
25755         Fix GC bugs --with-wide-int and Qnil == 0
25756         Use the same alignment for the !USE_LSB_TAG case as for the
25757         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
25758         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
25759         once we changed the representation of symbols so that Qnil == 0.
25760         Problem reported by Eli Zaretskii (Bug#20862).
25761         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
25762         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
25763         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
25764         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
25765         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
25766         This optimization in the !USE_LSB_TAG case is no longer valid when
25767         symbols are represented via offsets.  Change the only use to
25768         assume that pointers might hide in objects.
25769         * src/lisp.h (alignas) [!USE_LSB_TAG]:
25770         Require support in this case, too.
25771         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
25772         This is OK, because the !USE_LSB_TAG case now applies only when
25773         Lisp_Object is wider than void *, so there's no longer any need
25774         to shift the offset.  Not shifting the offset means that
25775         symbol representations have the same alignment as pointers,
25776         which the GC assumes.
25778 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
25780         * doc/lispintro/emacs-lisp-intro.texi (Data types):
25781         Improve documentation of 'substring'.
25783 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
25785         * lisp/character-fold.el (character-fold-table): Fix table generation.
25787 2015-06-24  Glenn Morris  <rgm@gnu.org>
25789         * nextstep/Makefile.in (all): Make it the first target.
25790         (../src/emacs${EXEEXT}): Add rule for making it.
25792 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
25794         * etc/NEWS: Fix mention to old function name.
25796         * lisp/character-fold.el: New file (Bug#20887)
25797         (character-fold-to-regexp): New function.
25798         * lisp/replace.el (replace-search): Check value of
25799         `character-fold-search'.
25800         * lisp/isearch.el: Move character-folding code to
25801         character-fold.el
25802         (isearch-toggle-character-fold): New command.
25803         (isearch-mode-map): Bind it to "\M-sf".
25804         (isearch-mode): Check value of `character-fold-search'.
25806 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
25808         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
25809         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
25810         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
25812         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
25813         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
25815 2015-06-24  Glenn Morris  <rgm@gnu.org>
25817         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
25819 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
25821         lisp/gnus/nnmaildir.el: Silence lexical warnings
25822         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
25823         functional style.
25824         (nnmaildir--update-nov): Remove unused var `numdir'.
25825         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
25826         (nnmaildir-request-group, nnmaildir-request-create-group)
25827         (nnmaildir-request-post, nnmaildir-request-move-article)
25828         (nnmaildir-request-accept-article, nnmaildir-active-number):
25829         Mark unused args.
25830         (nnmaildir-get-new-mail, nnmaildir-group-alist)
25831         (nnmaildir-active-file): Declare.
25832         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
25833         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
25834         `mark', `end', `new-mark', and `mark-sym'.
25835         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
25836         `nlist2'.
25837         (nnmaildir-request-expire-articles):
25838         Remove unused vars `article', `stop' and `nlist2'.
25839         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
25840         `end'.  Use nnmaildir--article when dyn-binding is needed.
25841         Give the value directly in the `let' for `del-mark', `del-action',
25842         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
25843         (nnmaildir-close-server): Declare those local vars that need to be
25844         dyn-bound.
25846 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
25848         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
25850         Port selection info fix to clang
25851         * src/keyboard.h (kbd_buffer_store_event_hold):
25852         Don't assume C11 semantics for alignof (Bug#20756).
25854         Fix bug that munged selection info
25855         On some optimizing C compilers, copying a structure did not
25856         copy the padding bytes between elements, and the type punning
25857         between struct input_data and struct selection_input_data did
25858         not work.  Change the C code to use a proper union type instead.
25859         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
25860         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
25861         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
25862         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
25863         (mark_kboards):
25864         Use union buffered_input_event, not struct input_event.
25865         (clear_event, deliver_input_available_signal, process_special_events):
25866         Remove unnecessary forward decls.
25867         (kbd_buffer_store_buffered_event): New function, mostly just the
25868         old kbd_buffer_store_event_hold, except its argument is of type
25869         union buffered_input_event, not struct input_event.
25870         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
25871         not needed otherwise.  Argument is now of type
25872         struct selection_input_event *, not struct input_event *.
25873         All callers changed.
25874         (clear_event): Arg is now of type union buffered_input_event *,
25875         not struct input_event *.  All callers changed.
25876         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
25877         (union buffered_input_event): New type.
25878         (kbd_buffer_store_event_hold): Now an inline function,
25879         defined here.
25880         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
25881         (struct input_event): Use it.
25882         * src/xselect.c (struct selection_event_queue):
25883         Make elements be of type struct selection_input_event,
25884         not struct input_event.
25885         (selection_input_event_equal): New static function.
25886         (x_queue_event): Use it.
25887         (x_queue_event, x_decline_selection_request)
25888         (x_selection_current_request, x_reply_selection_request)
25889         (x_handle_selection_request, x_handle_selection_clear)
25890         (x_handle_selection_event): Use struct selection_input_event,
25891         not struct input_event.  All callers changed.
25892         (x_convert_selection): Omit unused first arg.  All callers changed.
25893         (Fx_disown_selection_internal): Omit unnecessary union.
25894         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
25895         rather than rolling our own equivalent.  Prefer sie.kind when
25896         setting up that kind of structure.
25897         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
25898         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
25899         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
25900         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
25901         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
25902         (SELECTION_EVENT_TIME, x_handle_selection_event):
25903         Arg is now of type struct selection_input_event *)
25904         not struct input_event *.  All callers changed.
25906 2015-06-23  Glenn Morris  <rgm@gnu.org>
25908         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
25910 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
25912         * lisp/isearch.el: Fold many unicode characters to ASCII.
25913         (isearch-character-fold-search, isearch--character-fold-extras)
25914         (isearch--character-fold-table): New variable.
25915         (isearch--character-folded-regexp): New function.
25916         (isearch-search-fun-default): Use them.
25917         * lisp/replace.el (replace-character-fold): New variable.
25918         (replace-search): Use it.
25919         * etc/NEWS: Document it.
25921 2015-06-23  Glenn Morris  <rgm@gnu.org>
25923         Check for an input event before showing a dialog box.  (Bug#20813)
25924         * lisp/subr.el (y-or-n-p):
25925         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
25926         as last-nonmenu-event.
25928 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
25930         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
25931         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
25932         (switch-to-prev-buffer, switch-to-next-buffer): Respect
25933         switch-to-visible-buffer independent of the windows history.
25935 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
25937         * src/keyboard.c (last_timer_event): Remove unused var.
25939 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
25941         * test/automated/package-test.el (package-test-update-listing):
25942         Fix test.
25944 2015-06-23  Glenn Morris  <rgm@gnu.org>
25946         Revert 2014-06-25 nextstep/Makefile change.
25947         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
25948         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
25949         not as an order-only prerequisite.
25951         * configure.ac (--with-ns): Enable by default on OS X.
25953 2015-06-23  Leo Liu  <sdl.web@gmail.com>
25955         Fix shell-for/backward-command to exclude spaces
25956         * lisp/shell.el (shell-forward-command, shell-backward-command):
25957           Handle the 'move case from re-search-forward/backward.
25958           fixes debbugs:20873
25960 2015-06-22  Juri Linkov  <juri@linkov.net>
25962         * lisp/replace.el (query-replace-read-from): Add separator to
25963         the local binding of text-property-default-nonsticky.  (Bug#20690)
25965         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
25966         (Bug#20785)
25968 2015-06-22  Ken Brown  <kbrown@cornell.edu>
25970         Enable CPU profiling on Cygwin
25971         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
25972         change that undefined this.
25973         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
25974         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
25975           Cygwin.
25977         Improve diagnostics of profiler-cpu-start
25978         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
25979         return -1 if the sampling interval is invalid.
25980         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
25981         fails.  (Bug#20843)
25983 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
25985         * lisp/emacs-lisp/package.el: Exclude packages by name.
25986         (package-hidden-regexps): New variable.
25987         (package-menu--refresh): Use it.
25988         (package-menu-hide-package): New command.
25990         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
25992 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
25994         Fix debug-timer-check on systems without HAVE_TIMERFD
25995         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
25996         the expired timers, since wait_reading_process_output doesn't.
25997         (debug_timer_callback): Enlarge the tolerance to 20 msec.
25999         Fix RCS crashes in vc-test
26000         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
26001         ports of 'ci' on MS-Windows by always passing the -t- switch.
26003 2015-06-22  Glenn Morris  <rgm@gnu.org>
26005         * doc/emacs/package.texi (Packages):
26006         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
26008         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
26010 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
26012         Port tests to help-quote-translation
26013         * test/automated/ert-x-tests.el (ert-test-describe-test):
26014         * test/automated/package-test.el (package-test-describe-package)
26015         (package-test-signed): Allow straight quotes, too.
26017 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
26019         Make find-function-on-key use the current window
26020         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
26021         Extract from `find-function-on-key', add a second argument.
26022         (find-function-on-key): Use it (bug#19679).
26023         (find-function-on-key-other-window)
26024         (find-function-on-key-other-frame): New commands.
26026 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26028         Revert "Define `map-elt' as a generalized variable"
26029         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
26031 2015-06-21  Ken Brown  <kbrown@cornell.edu>
26033         Drop support for CPU profiling on Cygwin
26034         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
26035         (Bug#20843)
26037 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
26039         Fix some “nested” quoting confusion in doc strings
26040         * lisp/emacs-lisp/advice.el (ad-map-arglists):
26041         * lisp/kermit.el (kermit-clean-on):
26042         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
26043         * src/keyboard.c (Frecursive_edit):
26044         Use curved quotes when quoting text containing apostrophe,
26045         so that the apostrophe isn't curved in the output.
26047 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26049         Define `map-elt' as a generalized variable
26050         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
26051         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
26052         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
26053         `setf' with `map-elt'.
26054         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
26056 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
26058         Improve error handling in tramp-adb.el
26059         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
26060         Improve error handling.
26062 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
26064         Reuse `alist-get' in map.el
26065         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
26066         elements.
26068 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
26070         Fix bytecomp-tests--warnings when $TMPDIR has a long name
26071         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
26072         Allow the warning to begin on the 3rd, not only 2nd line, which
26073         happens if temporary-file-directory has a very long name.
26075         Expect 2 icalendar tests to fail on MS-Windows
26076         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
26077         (icalendar-real-world): Make them expected failures on MS-Windows.
26079 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
26081         Improve port of settings UI to older displays
26082         * lisp/cus-start.el (standard): Don't assume curved quotes are
26083         easily distinguishable when users are tinkering with a setting
26084         that affects how curved quotes are generated.
26086         Fix quoting in electric-quote-mode doc string
26087         * lisp/electric.el (electric-quote-mode): Fix quoting.
26088         This is a fallout from the recent change introducing
26089         ‘help-quote-translation’.
26091         Spelling fix
26093         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
26095         * src/doc.c (syms_of_doc): Remove unused symbols.
26097 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
26099         * lisp/window.el (window-state-put): Undedicate target window
26100         before putting STATE into it.  (Bug#20848)
26102 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
26104         Merge from origin/emacs-24
26105         a5e6f33 Fixes: debbugs:20832
26106         b9f02cf Fixes: debbugs:20832
26108 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
26110         Fix file-in-directory-p when the directory is UNC
26111         * lisp/files.el (file-in-directory-p): Support files and
26112         directories that begin with "//".  (Bug#20844)
26114 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
26116         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
26117         in the minibuffer.  (Bug#20832)
26119 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
26121         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
26122         for adding new todo file is empty but modified.  (Bug#20832)
26124 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
26126         (filepos-to-bufferpos): Further tweaks to the utf-16 code
26127         * lisp/international/mule-util.el (filepos-to-bufferpos):
26128         Fix typo.  Move non-exact check to the utf-16 branch (the only one
26129         affected).  Don't use byte-to-position for the utf-16 case.
26131 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
26133         Minor fixes in filepos-to-bufferpos
26134         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
26135         test for utf-8-emacs.  Exempt single-byte encodings from the
26136         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
26137         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
26138         UTF-16 encoded files for CR-LF EOLs.
26140 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
26142         Improve the optional translation of quotes
26143         Fix several problems with the recently-added custom variable
26144         help-quote-translation where the code would quote inconsistently
26145         in help buffers.  Add support for quoting 'like this', which
26146         is common in other GNU programs in ASCII environments.  Change
26147         help-quote-translation to use more mnemonic values: values are now the
26148         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
26149         traditional Emacs help-buffer quoting style `like this'.  Change the
26150         default behavior of substitute-command-keys to match what's done in
26151         set-locale-environment, i.e., quote ‘like this’ if displayable,
26152         'like this' otherwise.
26153         * doc/lispref/help.texi (Keys in Documentation): Document
26154         new behavior of substitute-command-keys, and document
26155         help-quote-translation.
26156         * doc/lispref/tips.texi (Documentation Tips):
26157         Mention the effect of help-quote-translation.
26158         * etc/NEWS: Mention new behavior of substitute-command-keys,
26159         and merge help-quote-translation news into it.
26160         When talking about doc strings, mention new ways to type quotes.
26161         * lisp/cedet/mode-local.el (overload-docstring-extension):
26162         Revert my recent change to this function, which shouldn't be
26163         needed as the result is a doc string.
26164         * lisp/cedet/mode-local.el (mode-local-print-binding)
26165         (mode-local-describe-bindings-2):
26166         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
26167         * lisp/cus-theme.el (describe-theme-1):
26168         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26169         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
26170         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
26171         (eieio-help-constructor):
26172         * lisp/emacs-lisp/package.el (describe-package-1):
26173         * lisp/faces.el (describe-face):
26174         * lisp/help-fns.el (help-fns--key-bindings)
26175         (help-fns--compiler-macro, help-fns--parent-mode)
26176         (help-fns--obsolete, help-fns--interactive-only)
26177         (describe-function-1, describe-variable):
26178         * lisp/help.el (describe-mode):
26179         Use substitute-command-keys to ensure a more-consistent quoting
26180         style in help buffers.
26181         * lisp/cus-start.el (standard):
26182         Document new help-quote-translation behavior.
26183         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
26184         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
26185         (help-xref-url-regexp):
26186         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
26187         * lisp/wid-edit.el (widget-documentation-link-regexp):
26188         Also match 'foo', in case we're in a help buffer generated when
26189         help-quote-translation is ?'.
26190         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
26191         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
26192         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
26193         (Fsubstitute_command_keys): Document and implement new behavior.
26194         (Vhelp_quote_translation): Document new behavior.
26196 2015-06-18  Glenn Morris  <rgm@gnu.org>
26198         * lisp/cus-start.el (help-quote-translation): Add :version.
26200         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
26202 2015-06-18  Alan Mackenzie  <acm@muc.de>
26204         Make translation of quotes to curly in doc strings optional.
26205         * src/doc.c (traditional, prefer-unicode): New symbols.
26206         (help-quote-translation): New variable.
26207         (Fsubstitute_command_keys): Make translation of quotes dependent on
26208         `help-quote-translation'; also translate curly quotes back to ASCII
26209         ones.
26210         * lisp/cus-start.el (top-level): Add a customization entry for
26211         `help-quote-translation'.
26213 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
26215         * lisp/emacs-lisp/package.el: Don't always propagate async errors
26216         (package--with-work-buffer-async): Only propagate the error if the
26217         callback returns non-nil.
26218         (package--download-one-archive): Return nil on the signature
26219         checking callback if we accept unsigned.
26220         (package--download-and-read-archives): Return non-nil on the
26221         archive download callback.
26223 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
26225         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
26226         * src/nsfns.m (Fx_create_frame):
26227         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
26228         image_cache_refcount before first x_default_parameter call.
26230 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
26232         Improve and extend filepos-to-bufferpos
26233         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
26234         Don't barf if F returns nil for some argument.
26235         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
26236         that every encoding of type 'charset' is single-byte.
26238 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
26240         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
26241         Properly delete packages.  (Bug#20836)
26243 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
26245         Update data files from just-released Unicode 8.0
26246         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
26247         status.
26248         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
26249         * admin/unidata/BidiMirroring.txt:
26250         * admin/unidata/BidiBrackets.txt:
26251         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
26253 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
26255         Document curved quotes a bit better
26256         * doc/emacs/basic.texi (Inserting Text):
26257         Mention C-x 8.  Change example to use curved quote rather
26258         than infinity, as this lets us give more ways to do it.
26259         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
26260         and quotation marks.
26261         * doc/emacs/text.texi (Quotation Marks):
26262         * doc/lispref/tips.texi (Documentation Tips):
26263         Add "curly quotes" and "curved quotes" to the index.
26264         * doc/emacs/text.texi (Quotation Marks):
26265         Give the C-x 8 shorthands for curved quotes.
26266         Cross-reference to "Quotation Marks".
26268 2015-06-17  Daiki Ueno  <ueno@gnu.org>
26270         Add pinentry.el for better GnuPG integration
26271         * lisp/pinentry.el: New file.
26272         * etc/NEWS: Add entry about pinentry.el.
26273         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
26274         (Bug#20550)
26276 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
26278         * lisp/emacs-lisp/package.el: Slightly better error reporting.
26280 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
26282         (define-minor-mode): Use setq-default for :global minor modes
26283         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
26284         Use setq-default for :global minor modes (bug#20712).
26286 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
26288         Avoid infloop in redisplay with tall images
26289         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
26290         down near ZV.  (Bug#20808)
26291         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
26292         instead of CHARPOS.
26294 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
26296         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
26297         Fix error reporting.
26299         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
26301         * lisp/emacs-lisp/package.el: Revert buffer after any operation
26302         Call `package-menu--post-refresh' after any operation that changes
26303         the package database (`package-install' and `package-delete').  To
26304         avoid performance issues in large transactions, these functions
26305         add `post-refresh' to `post-command-hook' instead of calling it
26306         immediately.
26307         (package-menu--mark-or-notify-upgrades): New function.
26308         (list-packages): Add it to `package--post-download-archives-hook'.
26309         (package-menu--post-refresh): Lose the upgrade-checking code, add
26310         code to remove itself from `post-command-hook'.
26311         (package-install, package-delete): Add it to `post-command-hook'.
26312         (package-menu-execute): Don't call `package-menu--post-refresh'.
26314 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
26316         Add missing function xref-location-group for elisp-mode.
26317         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
26319 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
26321         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
26322         The behavior now matches the description in the manual.  (Bug#20783)
26324 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
26326         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
26328 2015-06-17  Glenn Morris  <rgm@gnu.org>
26330         Generate char-script-table from Unicode source.  (Bug#20789)
26331         * admin/unidata/Makefile.in (AWK): New, set by configure.
26332         (all): Add charscript.el.
26333         (blocks): New variable.
26334         (charscript.el, ${unidir}/charscript.el): New targets.
26335         (extraclean): Also remove generated charscript.el.
26336         * admin/unidata/blocks.awk: New script.
26337         * admin/unidata/Blocks.txt: New data file, from unicode.org.
26338         * lisp/international/characters.el: Load charscript.
26339         * src/Makefile.in (charscript): New variable.
26340         (${charscript}): New target.
26341         (${lispintdir}/characters.elc): Depend on charscript.elc.
26342         (temacs$(EXEEXT)): Depend on charscript.
26344         * lisp/international/characters.el (char-script-table): Tweak
26345         some ranges to better match the source.  (Bug#20789#17)
26347         Remove "no-byte-compile: t" from a few files.
26348         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
26349         * lisp/obsolete/patcomp.el: No reason not to compile these.
26351 2015-06-16  Glenn Morris  <rgm@gnu.org>
26353         Fix some typos in copied Unicode data.  (Bug#20789)
26354         * lisp/international/characters.el (char-script-table):
26355         * lisp/international/fontset.el (script-representative-chars)
26356         (setup-default-fontset): Fix typos.
26358         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
26359         Don't print filename twice (it's in the prefix now).
26361         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
26362         No longer needed.
26364         Address a compilation warning.
26365         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
26366         Replace 't' with '_' in pcase.
26368         Address some check-declare warnings.
26369         * lisp/simple.el (tabulated-list-print):
26370         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
26371         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
26372         (ns-get-selection): Update declarations.
26374         Address some compilation warnings.
26375         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
26376         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
26377         Replace 't' with '_' in pcase.
26379         Address some compilation warnings.
26380         * lisp/face-remap.el (text-scale-adjust):
26381         * lisp/menu-bar.el (popup-menu-normalize-position):
26382         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
26383         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
26384         * lisp/emacs-lisp/generator.el (cps--transform-1):
26385         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
26386         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
26387         * lisp/progmodes/octave.el (octave-goto-function-definition)
26388         (octave-find-definition-default-filename):
26389         Replace 't' with '_' in pcase.
26391         * lisp/emacs-lisp/pcase.el (pcase--u1):
26392         Paper-over today's bootstrap failure.
26394 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
26396         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
26398         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
26400         Better confirmation message in `find-alternate-file' (Bug#20830)
26401         * lisp/files.el (find-alternate-file'): Improve the confirmation
26402         message to show the buffer name.
26404         Better docstring for null.  (Bug#20815)
26405         * src/data.c (null): Improves the docstring, saying what null returns
26406         when OBJECT is non-nil.
26408 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
26410         * lisp/net/newst-treeview.el: Use lexical-binding.
26412         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
26413         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
26414         New auxiliary function, extracted from filepos-to-bufferpos.
26415         Make sure it terminates.
26416         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
26417         Add support for the `exact' quality.
26419 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
26421         Identify feeds in newsticker treeview with :nt-feed property
26422         * lisp/net/newst-treeview.el:
26423         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
26425 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
26427         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
26428         (pcase--self-quoting-p): Floats aren't self-quoting.
26429         (pcase): Tweak docstring.
26430         (pcase--u1): Deprecate the t pattern.  Improve error detection for
26431         the nil pattern.
26432         (\`): Tweak docstring.  Signal an error for unrecognized cases.
26433         (bug#20784)
26435 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
26437         Fix infloop in filepos-to-bufferpos
26438         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
26439         offset calculation, and make it conditional on the eol-type of the
26440         file's encoding.  (Bug#20825)
26442 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
26444         Fix handling of image cache refcounts.  (Bug#20802)
26445         This backports Eli Zaretskii's solution of this problem for W32
26446         to X and NS.
26447         * src/nsfns.m (image_cache_refcount): Define unconditionally.
26448         (unwind_create_frame): If the image cache's reference count
26449         hasn't been updated yet, do that now.
26450         (Fx_create_frame): Set image_cache_refcount unconditionally.
26451         * src/xfns.c (image_cache_refcount): Define unconditionally.
26452         (unwind_create_frame): If the image cache's reference count
26453         hasn't been updated yet, do that now.
26454         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
26455         unconditionally.
26456         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
26457         X and NS.
26459 2015-06-16  Nils Ackermann  <nils@ackermath.info>
26461         Improve reftex-label-regexps default value
26462         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
26463         keyvals label regexp more strict to better cope with unbalanced
26464         brackets common in math documents.
26466 2015-06-16  Glenn Morris  <rgm@gnu.org>
26468         * doc/emacs/calendar.texi (Format of Diary File):
26469         Move "nonmarking" from here...
26470         (Displaying the Diary): ... to here.
26472         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
26473         Swap the order of these nodes.
26474         * doc/emacs/emacs.texi: Update detailed menu for the above change.
26476         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
26477         Update date of examples.
26478         (Diary, Format of Diary File): Move example from former to latter.
26479         Reduce duplication.
26481         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
26482         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
26483         Don't set no-byte-compile in the outputs.
26484         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
26486 2015-06-15  Glenn Morris  <rgm@gnu.org>
26488         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
26489         * doc/emacs/calendar.texi (Diary, Format of Diary File):
26490         Update for above diary-file change.
26492         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
26493         (apply-macro-to-region-lines): Use user-error.
26495         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
26496         (pages-directory-for-addresses): Doc fixes.
26498 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
26500         * lisp/info.el: Cleanup bytepos/charpos issues
26501         * lisp/international/mule-util.el: Use lexical-binding.
26502         (filepos-to-bufferpos): New function.
26503         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
26504         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
26505         (Info-read-subfile, Info-search): Use 0-based file positions.
26507         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
26508         (perl--syntax-exp-intro-keywords): New var.
26509         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
26510         (bug#20800).
26512 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
26514         Fix quoting when making derived mode docstring
26515         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
26516         Nest regexp-quote inside format, not the reverse.
26517         Problem reported by Artur Malabarba in:
26518         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
26520 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
26522         Fix current-iso639-language on MS-Windows
26523         * lisp/international/mule-cmds.el (set-locale-environment):
26524         Downcase the locale name before interning it.  This is so the
26525         'current-iso639-language' on MS-Windows matches the ':lang'
26526         property of font-spec objects.
26528         Limit Symbola usage some more
26529         * lisp/international/fontset.el (setup-default-fontset): Limit
26530         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
26531         (Bug#20727)
26533 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
26535         * lisp/emacs-lisp/map.el (map-let): Better docstring.
26537 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
26539         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
26540         (help-fns-test-funny-names): Spelling fixes.
26542 2015-06-14  Glenn Morris  <rgm@gnu.org>
26544         * lisp/version.el (emacs-repository-version-git): Demote errors.
26545         Check result is a hash.
26547 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
26549         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
26550         Catch errors that happen before going async.  (Bug#20809)
26552 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
26554         Another improvement of documentation of set-fontset-font
26555         * doc/lispref/display.texi (Fontsets): Say explicitly that
26556         CHARACTER can be a single codepoint.
26557         * src/fontset.c (Fset_fontset_font): Doc fix.
26559         Another improvement for symbol and punctuation characters
26560         * lisp/international/fontset.el (setup-default-fontset): Exclude
26561         from Symbola character ranges for symbols and punctuation covered
26562         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
26563         installed and where its coverage of symbols and punctuation is
26564         known to be good.  (Bug#20727)
26566 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
26568         Some generic support for multi-mode indentation.
26569         * lisp/progmodes/prog-mode.el (prog-indentation-context):
26570         New variable.
26571         (prog-first-column, prog-widen): New convenience functions.
26573 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
26575         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
26576         Don't assume that `tabulated-list-printer' will leave point at the
26577         end of the buffer.  (Bug#20810)
26579 2015-06-13  Glenn Morris  <rgm@gnu.org>
26581         Tweaks for getting repository version; a bit more like it was for bzr
26582         * lisp/version.el (emacs-repository-version-git)
26583         (emacs-repository--version-git-1): New functions,
26584         split from emacs-repository-get-version.
26585         (emacs-repository-get-version): Make the second argument meaningful.
26587         * lisp/startup.el (command-line-1): Inform if skipping relative
26588         file names due to deleted PWD.
26590         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
26591         when starup directory is missing.  (Bug#18851)
26592         (errno.h): Include it.
26594 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
26596         Better fix for documenting `X as "`X"
26597         Fix suggested by Stefan Monnier.
26598         * lisp/help-fns.el (help-fns--signature):
26599         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
26600         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
26601         Don't treat `X specially, as help-fns--signature now handles this.
26603 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
26605         Improve the default fontset when Symbola is not installed
26606         * lisp/international/fontset.el (setup-default-fontset): Only
26607         prepend Symbola and FreeMono font specs for symbols and
26608         punctuation; do not replace the default spec for them.  This
26609         should have better results when Symbola/FreeMono are not
26610         installed.  (Bug#20727)
26612         Improve documentation of ':lang' in font specs
26613         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
26614         use of the ':lang' property of the font spec.
26615         * doc/emacs/frames.texi (Fonts): Document the language names that
26616         can be in the STYLE part of XLFD.
26617         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
26618         property.
26620         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
26622         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
26624         Revert last change in fontset.el
26625         * lisp/international/fontset.el (setup-default-fontset): Revert
26626         the change "Configure Symbola font only if installed", since font
26627         search is evidently not yet set up when this function is called.
26628         (Bug#20727)
26630 2015-06-12  Glenn Morris  <rgm@gnu.org>
26632         Ensure early startup warnings are visible at the end.  (Bug#20792)
26633         * lisp/emacs-lisp/warnings.el (display-warning):
26634         If startup isn't complete, delay the warning.
26635         * lisp/startup.el (normal-top-level, command-line):
26636         Let display-warning automatically handle the needed delays.
26637         Run delayed-warnings-hook.
26639         * lisp/version.el (emacs-repository-get-version):
26640         Avoid calling external executable if possible.  (Bug#20799)
26642 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
26644         Document `X as "`X", not as "(` X)"
26645         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
26646         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
26648         * src/print.c (print_object): Minor simplification.
26650 2015-06-12  Glenn Morris  <rgm@gnu.org>
26652         * src/buffer.c (init_buffer): Add final newline to message.
26654 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
26656         Configure Symbola font only if installed
26657         * lisp/international/fontset.el (setup-default-fontset):
26658         Don't specify the Symbola font if it's not installed.
26659         Likewise for FreeMono.  (Bug#20727)
26661 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
26663         Configure Symbola font only for symbols and punctuation
26664         * lisp/international/fontset.el (setup-default-fontset): Leave
26665         only symbols and punctuation in the fontset setup for Symbola
26666         font; remove "Greek and Coptic" and "Cyrillic Supplement".
26667         (Bug#20798)
26669 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
26671         Fix crash in fontset-info
26672         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
26673         non-nil.
26675 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
26677         Port to Solaris 10 sparc + Sun C 5.13
26678         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
26679         Adjust to process.c change.
26680         * src/process.c (create_process): Declare volatile variables at
26681         top level of this function, so that they're less likely to be
26682         reused later in the function in the code executed by the vforked
26683         child.  Do not declare locals used only in the vforked child, as
26684         they might share memory with locals still live in the parent.
26685         Instead, use the same variables in the child as in the parent.
26686         This works around a subtle bug that causes a garbage collector
26687         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
26689 2015-06-12  Glenn Morris  <rgm@gnu.org>
26691         * lisp/startup.el (normal-top-level): Don't let *Messages* get
26692         a nil default-directory.
26694 2015-06-11  Glenn Morris  <rgm@gnu.org>
26696         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
26698         Some progress towards starting with PWD deleted.  (Bug#18851)
26699         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
26700         * lisp/startup.el (normal-top-level, command-line-1):
26701         * lisp/minibuffer.el (read-file-name-default):
26702         Handle default-directory being nil.
26704 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
26706         Fix "not a tty" bug on Solaris 10
26707         * configure.ac (PTY_OPEN): Define to plain 'open'
26708         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
26709         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
26710         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
26711         hosts that call grantpt which does its work via a setuid subcommand
26712         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
26713         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
26714         seems relevant in that case too.
26716 2015-06-11  Juri Linkov  <juri@linkov.net>
26718         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
26719         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
26720         (Bug#20785)
26722 2015-06-11  Glenn Morris  <rgm@gnu.org>
26724         * lisp/international/characters.el (char-script-table): Fix typo.
26726 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
26728         Fix quoting of help for functions with odd names
26729         While investigating Bug#20759, I discovered other quoting problems:
26730         C-h f mishandled characters like backslash and quote in function names.
26731         This fix changes the behavior so that 'C-h f pcase RET' now
26732         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
26733         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
26734         in src/lread.c's read1 function says that the backslash will be
26735         needed starting in Emacs 25, which implies that 'format' is
26736         correct and the old pcase documention was wrong to omit the backslash.
26737         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
26738         * lisp/help-fns.el (help-fns--signature):
26739         * lisp/help.el (help-add-fundoc-usage):
26740         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
26741         Use help--make-usage-docstring rather than formatting
26742         help-make-usage.
26743         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
26744         Return raw docstring.
26745         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
26746         raw docstring.  Take more care to distinguish raw from cooked dstrings.
26747         (describe-function-1): Let help-fns--signature substitute
26748         command keys.
26749         * lisp/help.el (help--docstring-quote): New function.
26750         (help-split-fundoc): Use it, to quote funny characters more
26751         systematically.
26752         (help--make-usage): Rename from help-make-usage, since this
26753         should be private.  Leave an obsolete alias for the old name.
26754         (help--make-usage-docstring): New function.
26755         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
26757 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
26759         * lisp/thingatpt.el (in-string-p): Revert last change,
26760         since in-string-p is not used in thingatpt.el but only from outside.
26761         Also, use lexical binding.
26763 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
26765         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
26766         * test/automated/let-alist.el (let-alist-cons): Test it.
26768 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
26770         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
26772 2015-06-10  Glenn Morris  <rgm@gnu.org>
26774         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
26776         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
26777         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
26778         * admin/gitmerge.el (gitmerge-commit-message):
26779         Exclude "skipped" messages from ChangeLog once again.
26781         Slight namespace cleanup for thingatpt.el.
26782         * lisp/thingatpt.el (thing-at-point--in-string-p)
26783         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
26784         (thing-at-point--read-from-whole-string): Rename from
26785         old versions without "thing-at-point--" prefix.
26786         Keep old versions as obsolete aliases.  Update all uses.
26788         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
26789         Move requiring of finder from here...
26790         (checkdoc-package-keywords): ... to here.
26792         Use 'user-error' in a few calendar files.
26793         * lisp/calendar/appt.el (appt-add):
26794         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
26795         (calendar-generate):
26796         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
26797         Replace 'error' with 'user-error'.
26799         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
26801         * lisp/files-x.el (add-file-local-variable):
26802         Special-case 'lexical-binding'.  (Bug#20641)
26804         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
26805         No longer autoload.
26806         * doc/misc/autotype.texi (Executables):
26807         Undocument executable-self-display.
26809         * lisp/progmodes/executable.el (executable-self-display):
26810         Use non-obsolete tail syntax.  (Bug#20779)
26811         (executable-self-display): Doc update.
26813 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
26815         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
26816         (finder-known-keywords): Silence byte-compiler.
26818 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
26820         * lisp/simple.el (eval-expression): Macroexpand before evaluating
26821         (bug#20730).
26823         * lisp/progmodes/sh-script.el: Better handle nested quotes.
26824         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
26825         (sh-font-lock-quoted-subshell): Make sure double quotes within single
26826         quotes don't mistakenly end prematurely the surrounding string.
26828         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
26830 2015-06-09  Glenn Morris  <rgm@gnu.org>
26832         * test/automated/Makefile.in (ELFILES): Sort.
26834         * Makefile.in (SUBDIR_MAKEFILES):
26835         * lwlib/Makefile.in (WARN_CFLAGS):
26836         Use built-in Make functions rather than echo+sed.
26838 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
26840         Update char-script-table
26841         * lisp/international/characters.el (char-script-table): Update
26842         from Unicode 8.0 Draft.
26844         Improve font selection for punctuation and other symbols
26845         * src/fontset.c (face_for_char): If the character's script is
26846         'symbol', and the font used for ASCII face has a glyph for it, use
26847         the font for the ASCII face instead of searching the fontsets.
26848         This comes instead of NS-specific code that used the current
26849         face's font instead, which is now disabled due to undesirable
26850         consequences.  (Bug#20727)
26852 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
26854         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
26855         Skip past `#' to find BEG (bug#20771).
26856         * test/automated/elisp-mode-tests.el
26857         (elisp-completes-functions-after-hash-quote): New test.
26859 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
26861         Fix compilation warning/error in --without-x builds
26862         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
26863         code on HAVE_WINDOW_SYSTEM.
26865         Improve the default fontset wrt symbols
26866         * lisp/international/fontset.el (setup-default-fontset): Better
26867         setup of fontset-default for symbols: use Symbola and FreeMono.
26868         (Bug#20727)
26870 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
26872         Add new command checkdoc-package-keywords
26873         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
26874         New defcustom.
26875         (checkdoc-list-of-strings-p): Add doc.
26876         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
26877         non-nil, call `checkdoc-package-keywords'.
26878         (checkdoc-get-keywords): New defun.
26879         (checkdoc-package-keywords): New command.  Warns if the current file
26880         has package.el-style keywords that aren't in `finder-known-keywords'.
26881         * etc/NEWS: Add entry.
26883 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
26885         Avoid crashes when key-binding is called from a timer
26886         * src/keymap.c (Fkey_binding): Don't segfault if called with an
26887         empty vector as KEY.  (Bug#20705)
26889         Fix a thinko in arc-mode.el
26890         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
26891         non-Zip64 case.  (Bug#20769)
26893 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
26895         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
26897 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
26899         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
26900         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
26901         "*warn*", print the warning to the standard output.  (bug#20754)
26903 2015-06-07  Glenn Morris  <rgm@gnu.org>
26905         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
26907         * src/font.c (syms_of_font) <font-log>: Doc fix.
26909         Remove the obsolete leading "*" from some C doc strings.
26910         * src/coding.c (syms_of_coding):
26911         * src/font.c (syms_of_font): Remove leading "*" from docs.
26912         * lisp/cus-start.el (enable-character-translation): Add it.
26914 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
26916         Move gen_origin from program to data
26917         That way, 'make change-history' needs to change only ChangeLog.2,
26918         instead of having to change two files.
26919         * ChangeLog.2: Add commit info for range that this file covers.
26920         * Makefile.in (new_commit_regexp): New macro.
26921         (change-history-nocommit): Simplify, by putting what used to be
26922         the gen_origin value into the data (ChangeLog.2) rather than
26923         into the program (gitlog-to-emacslog).
26924         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
26925         the input file (e.g., ChangeLog.2) rather than by having a
26926         constant in the program.  Substitute it into the output.
26928 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
26930         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
26931         function name (bug#20759).
26933 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
26935         Adapt 'struct timespec' to next release of MinGW runtime
26936         * nt/inc/ms-w32.h (struct timespec): Don't declare if
26937         __struct_timespec_defined is defined.
26939 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
26941         Merge from gnulib
26942         This incorporates:
26943         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
26944         2015-06-05 stdio: Don't redefine gets when using C++
26945         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
26946         2015-06-02 file-has-acl: fix build on Mac OS X 10
26947         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
26948         2015-06-01 pthread_sigmask: discount system version if a simple macro
26949         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
26950         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
26951         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
26952         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
26953         * lib/gnulib.mk: Regenerate.
26955 2015-06-06  Juri Linkov  <juri@linkov.net>
26957         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
26958         before calling grep-compute-defaults because now it affects the
26959         command lines computed in grep-compute-defaults.  (Bug#20728)
26961 2015-06-06  Glenn Morris  <rgm@gnu.org>
26963         Address some compilation warnings.
26964         * lisp/international/mule-cmds.el (w32-get-console-codepage)
26965         (w32-get-console-output-codepage):
26966         * lisp/progmodes/elisp-mode.el (xref-collect-references):
26967         * lisp/version.el (cairo-version-string): Declare.
26968         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
26970 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
26972         Fix display when a font claims large values of ascent and descent
26973         This fixes bug#20628.
26974         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
26975         coordinate of a hollow cursor glyph when the original glyph's
26976         ascent is too small.
26977         (get_font_ascent_descent, normal_char_ascent_descent)
26978         (normal_char_height): New functions.
26979         (handle_single_display_spec, append_space_for_newline)
26980         (calc_pixel_width_or_height, produce_stretch_glyph)
26981         (calc_line_height_property): Use normal_char_ascent_descent and
26982         normal_char_height.
26983         (x_produce_glyphs): When font-global values of ascent and descent
26984         are too large, use per-character glyph metrics instead, if
26985         possible.  But don't allow the glyph row's ascent and descent
26986         values become smaller than the values from the metrics of the
26987         font's "normal" character.
26988         * src/xftfont.c (xftfont_draw):
26989         * src/w32font.c (w32font_draw): Correct the values of ascent and
26990         descent used to draw glyphless characters' hex code in a box.
26991         * src/xterm.c (x_draw_glyph_string_background):
26992         * src/xdisp.c (x_produce_glyphs):
26993         * src/w32term.c (x_draw_glyph_string_background):
26994         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
26995         to detect fonts whose global ascent and descent values are too
26996         large to be used in layout decision, and redraw the background
26997         when that happens.
26998         * src/dispextern.h (FONT_TOO_HIGH): New macro.
26999         (get_font_ascent_descent): Add prototype.
27000         * src/xterm.c (x_new_font):
27001         * src/w32term.c (x_new_font):
27002         * src/nsterm.m (x_new_font):
27003         * src/font.c (font_open_entity):
27004         * src/composite.c (composition_gstring_width):
27005         Use get_font_ascent_descent to obtain reasonable values for ascent
27006         and descent of a font.
27008 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
27010         Add assertion in adjust_point_for_property
27011         * src/keyboard.c (adjust_point_for_property): Add eassert for
27012         current buffer being shown in selected window.
27014 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
27016         Replace uses of in-string-p; make it obsolete
27017         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
27018         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
27020 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
27022         Fix Dired display of an explicit list of files by ls-lisp.el
27023         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
27024         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
27025         correct for when displaying individual files separately, not as
27026         part of listing a directory, in which case these values are not
27027         recomputed by 'ls-lisp-insert-directory', but used verbatim.
27029         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
27031 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
27033         Do not adjust point in a non-selected window
27034         * src/keyboard.c (command_loop_1): Do not adjust point when
27035         current buffer is not shown in selected window (Bug#20590).
27037         * etc/DEBUG: Mention 'maybe_call_debugger'
27039 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
27041         Fix a unit test for map.el
27042         * test/automated/map-tests.el (test-map-let): Fix the test to work
27043         with the new syntax of `map-let'.
27045         * lisp/emacs-lisp/map.el (map-let): Better docstring.
27047         Better syntax for the map pcase pattern
27048         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
27049         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
27051         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
27053         Fix a byte-compiler error in map-put and map-delete
27054         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
27055         called with a symbol.
27057 2015-06-05  Glenn Morris  <rgm@gnu.org>
27059         * admin/gitmerge.el (gitmerge-commit-message):
27060         Revert to including "skipped" messages in ChangeLog once again.
27062 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
27064         Use string> instead of equiv lambda with string<
27065         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
27066         lambda with string<.
27068 2015-06-05  Glenn Morris  <rgm@gnu.org>
27070         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
27071         (map--delete-array): Fix typo.
27073         * test/automated/map-tests.el: Replace "assert" with "should".
27075         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
27076         (SUBDIRS_REL): Derive from SUBDIRS.
27078         Tweak some build messages.
27079         * lisp/Makefile.in ($(lisp)/loaddefs.el):
27080         * lisp/cus-dep.el (custom-make-dependencies):
27081         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
27082         * lisp/international/titdic-cnv.el (batch-titdic-convert):
27083         Don't say how to compile.
27085 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
27087         Omit U+0332 COMBINING LOW LINE in previous change
27088         It turns out that it does not work on Ubuntu 15.04.
27090         Fix transliteration of Bahá'í months
27091         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
27092         Improve quality of Latin transliteration of Bahá'í month names.
27094         Fix curved quotes in a few places
27095         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
27096         The strings in question are not doc strings, so this partially
27097         undoes the recent change that assumed they were doc strings.
27098         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
27099         * lisp/info.el (Info-finder-find-node):
27100         Use curved quotes.
27101         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
27102         Also allow curved quotes in doc strings.
27104 2015-06-04  Glenn Morris  <rgm@gnu.org>
27106         * lisp/Makefile.in (AM_V_at): Add missing definition.
27108         * lisp/Makefile.in: Quieten output a bit.
27109         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
27110         Don't echo directories, since the commands we invoke print them.
27112         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
27113         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
27114         (SUBDIRS_SUBDIRS): New variables.
27115         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
27116         Remove.
27117         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
27118         (update-subdirs, compile-main, compile-clean):
27119         Replace "setwins" usage with new "SUBDIRS" variables.
27121         * lisp/vc/compare-w.el (compare-windows-get-window-function):
27122         Fix :version tag.
27124 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27126         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
27128         Undo removal of x_clear_area call on expose for GTK3 or cairo
27129         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
27130         Clear exposed area.  (Bug#20677)
27132 2015-06-04  Glenn Morris  <rgm@gnu.org>
27134         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
27136         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
27138         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
27139         Rename from quail-lao-update-translation, since lao.el defines that.
27141 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
27143         Handle new-style advice in find-funct
27144         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
27145         Handle new-style advice.  Return the symbol's function definition.
27146         (Bug#20718)
27147         (find-function-library): Update accordingly.
27149 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
27151         Merge branch 'map'
27153         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
27155         Add new function string-greaterp
27156         * lisp/subr.el (string-greaterp): New function.  Also aliased to
27157         `string>'.
27158         * test/automated/subr-tests.el (string-comparison-test): Add unit
27159         tests for `string>'and `string<'.
27160         * src/fns.c (string-lessp): Better docstring.
27162 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
27164         Fix timezone-related functions on MS-Windows
27165         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
27166         'xputenv', even if no reallocation of tzvalbuf was necessary.
27167         This fixes a bug in timezone-related functions on MS-Windows.
27168         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
27170 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
27172         Don't pass raw directory name to 'error'
27173         * lisp/files.el (basic-save-buffer-2): Avoid format error if
27174         a directory name contains a string like "%s".
27176 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
27178         Override 'grep --color=always'
27179         * lisp/progmodes/xref.el (xref-collect-matches):
27180         Override --color=always in grep-find-template.
27182 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
27184         Fix error introduced recently in file-notify-tests.el
27185         * test/automated/file-notify-tests.el
27186         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
27187         (file-notify--deftest-remote): Revert previous patch, not
27188         necessary anymore.
27190 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
27192         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
27193         Starting from a display string after a newline, point went to the
27194         previous line.  Also, fix an inadvertent use of a buffer position
27195         with FETCH_BYTE.  (Bug#20701)
27197 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
27199         Instrument file-notify-test.el in order to catch hydra error
27200         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
27201         Wrap body by `ignore-case', in order to trap non-local errors.
27203 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
27205         Undo previous changes in non-toolkit scroll bar drawing
27206         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
27207         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
27209 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
27211         * .gitignore: Also ignore doc/*/*/*.html and .ps.
27213         Support quotes 'like this' in info files
27214         This is possible when 'makeinfo --disable-encoding' is used
27215         in Texinfo 5.
27216         * lisp/calc/calc-help.el (calc-describe-thing):
27217         * lisp/gnus/gnus-art.el (gnus-button-alist):
27218         * lisp/info.el (Info-find-index-name):
27219         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
27220         Also support quotes 'like this'.
27221         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
27222         * lisp/finder.el (finder-font-lock-keywords): Remove var that
27223         hasn't been used in years, instead of bothering to fix its quoting.
27225 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
27227         * .gitignore: Remove !test/etags/html-src/*.html.
27228         It's no longer needed, since *.html was removed.  Sort.
27230 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
27232         Restore <D> instead of '.' in grep-find-template
27233         * lisp/cedet/semantic/symref/grep.el
27234         (semantic-symref-grep-use-template): Update a comment.
27235         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
27236         instead of '.' in grep-find-template (bug#20719).
27237         (rgrep): Pass nil as the directory to rgrep-default-command.
27238         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
27239         default value for DIR.
27240         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
27241         workaround.
27243 2015-06-02  Glenn Morris  <rgm@gnu.org>
27245         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
27247         * configure.ac (emacs_config_features): Add Cairo.
27249         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
27251 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
27253         Ensure that autorevert works for remote files in file-notify-tests.el
27254         * test/automated/file-notify-tests.el (file-notify--test-desc):
27255         New defvar.
27256         (file-notify--test-remote-enabled)
27257         (file-notify-test00-availability, file-notify-test01-add-watch)
27258         (file-notify-test02-events): Use it.
27259         (file-notify--test-event-test): Check proper descriptor.
27260         (file-notify-test03-autorevert): Ensure that
27261         `visited-file-modtime' has changed.  (Bug#20392)
27263 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
27265         Add a pcase pattern for maps and `map-let' based on it
27266         * lisp/emacs-lisp/map.el (map-let): New macro.
27267         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
27268         * test/automated/map-tests.el: New test for `map-let'.
27270 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
27272         Reuse rgrep mechanics in xref-find-regexp
27273         * lisp/progmodes/grep.el (rgrep-default-command):
27274         Extract from `rgrep'.
27275         * lisp/progmodes/xref.el (xref-collect-references): Split from
27276         `xref-collect-matches'.  Only handle the case of symbol search.
27277         (xref-collect-matches): Instead of Semantic Symref, use
27278         `rgrep-default-command', to take advantage of its directory and
27279         file ignore settings.
27280         (xref--collect-match): Remove the last argument, leaving the
27281         regexp construction up to the caller.
27282         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
27283         Change to take the xref-collect- function to use as an argument.
27284         (elisp-xref-find): Update accordingly.
27285         * lisp/progmodes/etags.el (etags--xref-find-matches)
27286         (etags-xref-find): Same.
27288         Move xref-elisp-location to elisp-mode.el
27289         * lisp/progmodes/xref.el (xref-elisp-location)
27290         (xref-make-elisp-location, xref-location-marker): Remove here.
27291         (xref--xref): Don't limit the type of the location slot.
27292         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
27293         Define as a cl-struct here.
27294         (xref-location-marker): Move here.
27296 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
27298         Minor tweaks for .gitignore
27299         * .gitignore: Don't ignore versioned *.html and *.ps files.
27300         Don't ignore admin/notes/tags that might be ignored as TAGS
27301         on case-insensitive filesystems.  (Bug#20710)
27303 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
27305         Generate curved quotes in ert doc
27306         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
27307         (ert-results-mode-menu)
27308         (ert-results-pop-to-backtrace-for-test-at-point)
27309         (ert-results-pop-to-messages-for-test-at-point)
27310         (ert-results-pop-to-should-forms-for-test-at-point)
27311         (ert-describe-test):
27312         Quote ‘like this’, not `like this', when generating doc strings
27313         and the like.
27314         * test/automated/ert-x-tests.el (ert-test-describe-test):
27315         Allow quoting ‘like this’.
27317 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
27319         Add test for previous commit
27320         * test/automated/replace-tests.el: New file.
27321         (query-replace--split-string-tests): Add test for previous commit.
27323         Avoid confusion in query-replace history when replacing NUL chars
27324         * lisp/replace.el (query-replace--split-string): New function.
27325         (query-replace-read-from): Rely on the 'separator' property
27326         instead of searching for the NUL character (Bug#20690).
27328 2015-06-02  Glenn Morris  <rgm@gnu.org>
27330         Merge from origin/emacs-24
27331         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
27333         * admin/gitmerge.el (gitmerge-commit-message):
27334         Exclude "skipped" messages from ChangeLog.
27336 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
27338         Sync with Tramp repository
27339         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
27340         messages.
27341         (tramp-handle-make-auto-save-file-name): When calling
27342         `make-auto-save-file-name' internally, make sure it uses Unix-like
27343         behavior, not Windows-like behavior.
27344         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
27345         the local case, because "chown" might fail on w32.
27346         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
27347         for XEmacs.
27349 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
27351         MS-Windows followup for batch stdout/stderr output changes
27352         * lisp/international/mule-cmds.el (set-locale-environment):
27353         In batch mode, use console codepages for keyboard and terminal
27354         encoding.  (Bug#20545)
27356         Update .gitattributes for DOS EOL files
27357         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
27358         CRLF end-of-line format.
27360         NS equivalents of xterm.c and w32term.c changes
27361         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
27362         glyph string background also when the font in use claims
27363         preposterously large global height value.  Helps to remove
27364         artifacts left from previous displays when glyphless characters
27365         are displayed as hex code in a box.
27366         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
27367         value for FRAME_LINE_HEIGHT, even when a font claims very large
27368         value for its height.
27370 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
27372         Avoid grave accent quoting in stderr diagnostics
27373         A few Emacs diagnostics go directly to stderr, and so can't easily
27374         contain curved quotes (as non-UTF-8 locales might mishandle them).
27375         Instead of bothering to add support for this rarity, reword the
27376         diagnostics so that they don't use grave accent to quote.
27377         * src/alloc.c (mark_memory): Fix comment.
27378         * src/buffer.c (init_buffer):
27379         * src/dispnew.c (init_display):
27380         * src/emacs.c (main, sort_args):
27381         * src/lread.c (dir_warning):
27382         * src/term.c (init_tty):
27383         * src/unexmacosx.c (unexec):
27384         * src/xfns.c (select_visual):
27385         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
27386         Reword stderr diagnostics to avoid quoting `like this'.
27387         * src/unexmacosx.c: Include errno.h.
27388         * src/xfns.c (select_visual): Encode value for locale.
27390 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
27392         Treat batch stdout/stderr like standard display
27393         Calls like (print FOO) could generate improperly encoded or
27394         hard-to-read output if FOO contains characters outside the system
27395         locale.  Fix this by treating batch stdout and stderr like
27396         interactive standard display, when it comes to transliterating and
27397         encoding characters (Bug#20545).
27398         * doc/emacs/mule.texi (Communication Coding):
27399         * doc/lispref/display.texi (Active Display Table):
27400         * doc/lispref/nonascii.texi (Locales):
27401         * etc/NEWS:
27402         * src/coding.c (syms_of_coding):
27403         * src/dispnew.c (syms_of_display):
27404         Document this.
27405         * src/print.c: Include disptab.h.
27406         (printchar_to_stream): New function, with much of the guts of the
27407         old Fexternal_debugging_output, except this one also uses the
27408         standard display table.
27409         (printchar, strout, Fexternal_debugging_output): Use it.
27411 2015-05-31  Glenn Morris  <rgm@gnu.org>
27413         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
27415 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
27417         Remove DEFSYMs that aren't used at the C level.  Also:
27418         * src/decompress.c (Qzlib_dll):
27419         * src/font.c (Qunicode_sip):
27420         * src/frame.c (Qtip_frame):
27421         * src/ftfont.c (Qserif):
27422         * src/gnutls.c (Qgnutls_dll):
27423         * src/xml.c (Qlibxml2_dll):
27424         Move from here ...
27425         * src/w32fns.c (syms_of_w32fns): ... to here,
27426         as these are used only on MS-Windows.
27428 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
27430         Use another default value for tramp-histfile-override
27431         * lisp/net/tramp-sh.el (tramp-histfile-override):
27432         Use ".tramp_history" as default.
27433         Fixes bug#20446
27435 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
27437         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
27439 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
27441         * etc/NEWS: Add an entry about map.el.
27443         Improve the docstring of functions in map.el
27444         Since a map is not a data structure but a concept, adding information
27445         about the possible types of maps can be useful information.
27446         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
27447         each public function.
27449 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
27451         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
27452         specific tests depending on the type of the map.
27454         * lisp/emacs-lisp/map.el: Better docstrings.
27456 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
27458         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
27460 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
27462         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
27464         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
27466         Fix a false negative in `map-elt' with alists and values being nil
27467         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
27468         found but its associated value is nil, do not return the default
27469         value.
27470         * test/automated/map-tests.el: Add a regression test.
27472 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
27474         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
27476         Do not signal an error when trying to delete a key from an array
27477         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
27478         the key is present to avoid signaling an error.
27479         * test/automated/map-tests.el: Add a test for deleting non-existing
27480         keys from maps.
27482         * lisp/emacs-lisp/map.el: Better docstring.
27484         Minor improvement in map-elt
27485         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
27486         doing a lookup in arrays, but check the boundaries of the array
27487         instead.
27488         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
27489         and a negative integer as key.
27491 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
27493         * test/automated/map-tests.el: Refactoring of test methods.
27495         * test/automated/map-tests.el: Renamed from map-test.el.
27497 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
27499         * lisp/emacs-lisp/map.el (map-into): Better error message.
27501         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
27503         Throw an error when converting a map into an unknown map type
27504         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
27505         not valid.
27506         * test/automated/map-tests.el: Add a regression test.
27508         New library map.el similar to seq.el but for mapping data structures.
27509         * test/automated/map-tests.el: New file.
27510         * lisp/emacs-lisp/map.el: New file.
27512 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
27514         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
27515         there's no explicit tag name (bug#20629).
27517 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
27519         Remove format2
27520         * src/editfns.c, src/lisp.h (format2): Remove.
27521         It is more trouble than it's worth, now that we have CALLN.
27522         This is just a minor refactoring.
27523         * src/buffer.c (Fkill_buffer):
27524         * src/dbusbind.c (XD_OBJECT_TO_STRING):
27525         * src/fileio.c (barf_or_query_if_file_exists):
27526         Adjust to format2 going away.
27528         Don't misencode C-generated messages
27529         Also, be more consistent about calls to 'Fmessage' vs 'message'.
27530         * src/alloc.c (Fgc_status):
27531         Prefer AUTO_STRING to build_string for Fmessage call.
27532         * src/data.c (Fmake_variable_buffer_local)
27533         (Fmake_local_variable, Fmake_variable_frame_local):
27534         * src/doc.c (store_function_docstring):
27535         Use Fmessage, not message, since the argument can contain
27536         non-ASCII characters, and this can cause the resulting message
27537         to be incorrectly encoded for the current environment.
27538         * src/fns.c (maybe_resize_hash_table):
27539         * src/xselect.c (x_clipboard_manager_save_all):
27540         Use message, not Fmessage, since Fmessage's power isn't needed here.
27541         * src/process.c (Fmake_network_process): Reword message to avoid %s.
27542         * src/xdisp.c (vmessage): Document restrictions on message contents.
27543         (message_nolog) [false]: Remove unused code.
27545         Use \r rather than ^M in string literals
27546         This is less likely to cause problems on platforms that
27547         use CRLF (or CR!) termination for lines.
27549         Update .gitattributes to match current sources
27550         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
27551         * .gitattributes: Accommodate tests that insist on DOS format.
27552         Remove test/automated/data/decompress/foo-gzipped.
27553         Add etc/e/eterm-color.
27555 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
27557         * doc/emacs/mule.texi (Modifying Fontsets):
27558         Document face-ignored-fonts.  (Bug#20628)
27560         Add etags test for the new -Q option
27561         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
27562         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
27563         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
27564         test-case changes below.
27565         * test/etags/ETAGS.good_6: New file.
27566         * test/etags/cp-src/x.cc: New file.
27567         * test/etags/Makefile (CPSRC): Add x.cc.
27568         (check): Add one more test, for -Q.
27570 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
27572         Use list for the tags completion table, not obarray
27573         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
27574         list instead of an obarray
27575         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
27576         (tags-completion-table): Combine those lists.
27577         (tags-completion-table): Update the docstring.
27579 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
27581         Restore EOL format testing in etags
27582         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
27583         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
27584         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
27585         test-case changes below.
27586         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
27587         * test/etags/cp-src/c.C (B): Add back stray CR character.
27588         * test/etags/c-src/dostorture.c: Add back.
27589         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
27591 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
27593         Declare Emacs on MS-Windows to be DPI-aware
27594         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
27595         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
27596         This avoids Windows entering compatibility mode for Emacs,
27597         which causes fonts to look less nice.
27599 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
27601         Improve Tramp traces
27602         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
27603         * lisp/net/tramp.el (tramp-debug-message): Use it.
27605 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
27607         backup-buffer minor reworking of internals
27608         * lisp/files.el (backup-buffer): Rework to avoid a couple of
27609         unused locals inadvertently introduced in the previous change.
27611         backup-buffer now reports .emacs.d/%backup% ills
27612         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
27613         fails due to disk space exhaustion or whatever, do not pretend
27614         that it succeeded.  More generally, do a better job of checking
27615         for I/O failures, and limit the scope of the condition-case to
27616         just the operations where file errors should be caught and ignored
27617         (Bug#20595).  Also, don't bother trying to delete later backups if
27618         an earlier deletion fails, as this is a sign of trouble and it's
27619         better to stop when there's trouble.
27621         copy-file now truncates output after writing
27622         * src/fileio.c (Fcopy_file): Truncate output after writing rather
27623         than before.  This is more likely to work than truncation before
27624         writing, if the file system is out of space or the user is over
27625         disk quota (Bug#20595).  Also, check for read errors.
27627 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
27629         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
27630         Don't load descriptors from directories above the package directories.
27632 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
27634         Merge from gnulib
27635         This incorporates the following (Bug#20681):
27636         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
27637         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
27638         * lib/set-permissions.c: Copy from gnulib.
27640 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
27642         Improve Tramp traces
27643         * lisp/net/tramp.el (tramp-call-process-region): New defun.
27644         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
27646 2015-05-29  Glenn Morris  <rgm@gnu.org>
27648         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
27650 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
27652         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
27653         The signature was changed in the cairo branch, merged on 2015-05-23.
27654         This oversight broke compiling only the non-toolkit X version.
27656 2015-05-29  Samer Masterson  <samer@samertm.com>
27658         * doc/lispref/os.texi: Update initial-buffer-choice docs.
27660 2015-05-29  Glenn Morris  <rgm@gnu.org>
27662         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
27663         Mark as an expected failure.
27665 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
27667         Change package test to look for curved quotes
27668         * test/automated/package-test.el (package-test-describe-package)
27669         (package-test-signed): Search for curved single quotes as well as
27670         for grave accent and apostrophe.
27672 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
27674         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
27675         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
27677 2015-05-28  Samer Masterson  <samer@samertm.com>
27679         Show files when `initial-buffer-choice' is non-nil
27680         * lisp/startup.el (command-line-1): When Emacs is given a file as an
27681         argument and `initial-buffer-choice' is non-nil, display both the file
27682         and `initial-buffer-choice'.  For more than one file, show
27683         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
27684         commands out of the command line arg parser.
27685         (initial-buffer-choice): Clarify docstring.
27687 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
27689         Fix last commit
27690         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
27691         (gnulib module qcopy-acl): Add back, as it is harmless.  This
27692         minimizes differences wrt lib/gnulib.mk.
27694         Fix the MS-Windows build as followup to gnulib update
27695         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
27696         set-permissions.c, as they don't compile on MinGW.
27697         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
27699 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
27701         Revert my change to gnus-art.el
27702         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
27703         It wasn't that important, and it caused a Gnus build to fail.  See:
27704         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
27706         New minor mode Electric Quote
27707         This lets you easily insert quotes ‘like this’ by typing
27708         quotes `like this', and similarly you can easily insert
27709         quotes “like this” by typing quotes ``like this'' (Bug#20545).
27710         * doc/emacs/basic.texi (Inserting Text):
27711         * doc/emacs/modes.texi (Minor Modes):
27712         * etc/NEWS: Document it.
27713         * doc/emacs/text.texi (Quotation Marks): New section.
27714         * lisp/electric.el (electric-quote-comment)
27715         (electric-quote-string, electric-quote-paragraph):
27716         New custom vars.
27717         (electric--insertable-p)
27718         (electric-quote-post-self-insert-function): New functions.
27719         (electric-quote-mode, electric-quote-local-mode): New minor modes.
27720         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
27721         Add curved single quotes to electric-pair-text-pairs.
27722         Set electric-quote-string in this buffer.
27724         A few more doc string fixes (Bug#20385)
27726         Accept curved quotes in doc strings
27727         * lisp/info-look.el (info-lookup-guess-custom-symbol):
27728         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
27730         Generate curved quotes in pseudo-info nodes
27731         * lisp/info.el (Info-virtual-index-find-node)
27732         (Info-virtual-index, Info-apropos-find-node, info-apropos):
27733         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
27735         Fix minor quoting problems in doc strings
27736         Most of these fixes involve escaping grave accents that are
27737         actually intended to be grave accents, not left quotes.
27738         (Bug#20385)
27740         Support curved quotes in doc strings
27741         Emacs's traditional doc string style has been to quote symbols
27742         `like this'.  This worked well on now-obsolete terminals where
27743         ` and ' were symmetric quotes, but nowadays curved quotes
27744         ‘like this’ look better.  Support quoting the new way too.
27745         (Bug#20385)
27746         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
27747         ‘like-this’ as well as `like-this'.
27748         * etc/NEWS: Mention this.
27749         * lisp/cedet/mode-local.el (overload-docstring-extension)
27750         (mode-local-print-binding, mode-local-describe-bindings-2):
27751         * lisp/cus-theme.el (describe-theme-1):
27752         * lisp/descr-text.el (describe-text-properties-1, describe-char):
27753         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
27754         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
27755         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
27756         (eieio-help-constructor):
27757         * lisp/emacs-lisp/package.el (describe-package-1):
27758         * lisp/faces.el (describe-face):
27759         * lisp/help-fns.el (help-fns--key-bindings)
27760         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
27761         (help-fns--interactive-only, describe-function-1):
27762         (describe-variable):
27763         * lisp/help.el (describe-mode):
27764         * lisp/international/mule-cmds.el (describe-input-method)
27765         (describe-language-environment):
27766         * lisp/international/mule-diag.el (describe-character-set)
27767         (print-coding-system-briefly, list-input-methods)
27768         (list-input-methods-1):
27769         Insert curved quotes rather than grave accent and apostrophe.
27770         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
27771         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
27772         (checkdoc-proper-noun-region-engine):
27773         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
27774         (lisp-cl-font-lock-keywords-2):
27775         * lisp/finder.el (finder-font-lock-keywords):
27776         * lisp/gnus/gnus-art.el (gnus-button-alist):
27777         * lisp/help-fns.el (help-do-arg-highlight)
27778         (describe-function-1, describe-variable):
27779         * lisp/help-mode.el (help-xref-symbol-regexp)
27780         (help-xref-info-regexp, help-xref-url-regexp):
27781         * lisp/help.el (describe-mode):
27782         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
27783         * lisp/wid-edit.el (widget-documentation-link-regexp):
27784         Parse symbols quoted ‘like-this’ as well as `like-this'.
27785         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
27786         Add "‘" and "’" to electric-pair-text-pairs.
27787         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
27788         (elisp-completion-at-point, elisp--preceding-sexp):
27789         Also treat "‘" and "’" as quoting chars.
27791         substitute-command-keys now curves quotes
27792         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
27793         * doc/lispref/help.texi (Keys in Documentation):
27794         * etc/NEWS: Document this.
27795         * src/doc.c (Fsubstitute_command_keys): Implement it.
27797 2015-05-28  Glenn Morris  <rgm@gnu.org>
27799         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
27800         (rmail-summary-by-topic, rmail-summary-by-senders):
27801         No longer strip leading/trailing whitespace.
27803         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
27804         (f90-no-block-limit): Add "enum".  (Bug#20680)
27805         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
27806         New tests.
27808 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
27810         * lisp/isearch.el (isearch--current-buffer): Give a default value.
27811         Un-revert changes mistakenly dropped by f9fabb2b.
27813 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
27815         Merge from gnulib
27816         This incorporates:
27817         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
27818         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
27819         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
27820         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
27821         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
27822         2015-05-26 stdio: fix probe on mingw under gcc 5.1
27823         * admin/merge-gnulib (GNULIB_MODULES):
27824         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
27825         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
27826         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
27827         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
27828         Get latest versions from gnulib.
27829         * lib/get-permissions.c, lib/set-permissions.c: New files.
27830         * lib/gnulib.mk, m4/gnulib-comp.m4:
27831         Regenerate.
27832         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
27834 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
27836         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
27837         process here.
27838         (vc-do-command): Rather than here (bug#20608).
27840 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
27842         Avoid gratuitous delete-dups in face-at-point
27843         * lisp/faces.el (face-at-point): Do not compute the properly
27844         ordered, duplicate-free list if only a single value is
27845         requested anyway.  (Bug#20519)
27847         Show the exact C-x 8 RET invocation in describe-char
27848         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
27849         invocation instead of a template.  (Bug#20522)
27851 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
27853         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
27854         (package-menu--post-refresh): Call `tabulated-list-print' with the
27855         UPDATE argument.  This only affects the refresh action, the revert
27856         action still erases tags.
27857         (package-menu-get-status): Change `assq' to `assoc'.
27858         (package-menu--mark-upgrades-1): New function.
27859         (package-menu--mark-upgrades-pending): New variable.
27860         (package-menu-mark-upgrades): Use them to delay marking until
27861         after refresh is done.
27862         (package-menu--post-refresh): Call mark-upgrades-1 if
27863         mark-upgrades-pending is non-nil.
27865 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
27867         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
27868         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
27869         (commit 3953c4be2816537be95520605d45b866dc731f4b).
27871 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
27873         * lisp/isearch.el (isearch--current-buffer): New var.
27874         (isearch-update): Set cursor-sensor-inhibit here.
27875         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
27876         (bug#20532).
27878         Change inhibit-point-motion-hooks to t
27879         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
27880         to t and document it as obsolete.
27882 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
27884         Support ZIP files that use Zip64 extensions
27885         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
27886         format of central directory offsets used by Zip64 extensions.
27887         (Bug#20665)
27889 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
27891         New test tramp-test30-make-auto-save-file-name
27892         * test/automated/tramp-tests.el
27893         (tramp-test30-make-auto-save-file-name): New test.
27894         (tramp-test31-special-characters)
27895         (tramp-test31-special-characters-with-stat)
27896         (tramp-test31-special-characters-with-perl)
27897         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
27898         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
27899         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
27900         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
27902         Improve tramp-handle-make-auto-save-file-name
27903         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
27904         (tramp-handle-make-auto-save-file-name): Let native
27905         `make-auto-save-file-name' use `auto-save-file-name-transforms',
27906         if `tramp-auto-save-directory' is not set.
27908 2015-05-27  Glenn Morris  <rgm@gnu.org>
27910         No longer set dired-directory in eshell.  (Bug#16477)
27911         * lisp/eshell/esh-mode.el (eshell-mode):
27912         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
27914         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
27916         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
27917         * lisp/progmodes/cc-mode.el (c-mode-help-address):
27918         Change to submit@debbugs.
27919         (c-mode-bug-package): New constant.
27920         (mail-position-on-field): Declare.
27921         (c-submit-bug-report): Insert X-Debbugs-Package header.
27922         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
27923         Mention debbugs.gnu.org.
27925 2015-05-26  Glenn Morris  <rgm@gnu.org>
27927         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
27928         (rmail-summary-by-recipients, rmail-summary-by-topic)
27929         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
27930         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
27932 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
27934         Handle curved quotes in info files
27935         * lisp/calc/calc-help.el (calc-describe-thing):
27936         * lisp/info.el (Info-find-index-name)
27937         (Info-try-follow-nearest-node, Info-fontify-node):
27938         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
27939         In info files, process quotes ‘like this’ the same way we process
27940         quotes `like this'.  This catches a few places we missed earlier.
27942 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
27944         xref-prompt-for-identifier: Use a list value
27945         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
27946         value, to be interpreted as a list of commands.
27947         (xref--prompt-p): New function.
27948         (xref--read-identifier): Use it.
27950 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
27952         Teach MS-Windows font back-end return per-glyph ascent/descent
27953         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
27954         values.
27955         * src/w32font.c (w32font_text_extents): Compute, cache, and
27956         accumulate per-glyph ascent and descent values, instead of copying
27957         global values from the font.  If the values are not available from
27958         the font data, i.e., non-TTF fonts, fall back on font-global values.
27959         (compute_metrics): Compute and return per-glyph ascent and descent
27960         values, if returned by GetGlyphOutlineW, falling back on
27961         font-global values.  (Bug#20628)
27962         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
27963         height of rectangle to be drawn, to be compatible with
27964         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
27965         box, when per-glyph ascent/descent values are used.
27967 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
27969         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
27970         Don't sort if sorter is nil.
27972 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
27974         Fix Bug#20621
27975         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
27976         are major modes which set `auto-save-mode' on their own rules;
27977         Tramp shall not overwrite such settings.
27979 2015-05-26  Glenn Morris  <rgm@gnu.org>
27981         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
27982         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
27983         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
27984         Doc updates.
27985         (vc-dir-mode): Remove unnecessary autoload.
27987 2015-05-25  Philipp Stephani  <phst@google.com>
27989         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
27990         (xterm--extra-capabilities-type): Add `getSelection'.
27991         (xterm--query): Add `no-async' argument.
27992         (xterm--init-activate-get-selection): New function.
27993         (terminal-init-xterm): Use it.
27994         (xterm--init-modify-other-keys): Rename from
27995         terminal-init-xterm-modify-other-keys.
27996         (xterm--init-bracketed-paste-mode): Rename from
27997         terminal-init-xterm-bracketed-paste-mode.
27998         (xterm--init-activate-set-selection): Rename from
27999         terminal-init-xterm-activate-set-selection.
28000         (xterm--selection-char): New function.
28001         (gui-backend-set-selection): Use it.  Use the &context to only apply
28002         this method in terminals where we enabled the feature.
28003         (gui-backend-get-selection): New method.
28005 2015-05-25  Daniel Colascione  <dancol@dancol.org>
28007         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
28008         keyword constants to C++.
28010 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
28012         Make TAGS files more portable to MS-Windows
28013         * etc/NEWS: Document this.
28014         * lib-src/etags.c (readline_internal) [DOS_NT]:
28015         Don't treat CRs differently from GNUish hosts.
28016         * lisp/progmodes/etags.el (etags-goto-tag-location):
28017         Adjust STARTPOS to account for the skipped CRs in dos-style files.
28019 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28021         Improve fix of bug#20634 in tramp-sh.el
28023 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
28025         Fix a typo in last commit
28026         * lib-src/etags.c (C_entries): Fix a typo.
28027         * test/etags/ETAGS.good_1:
28028         * test/etags/ETAGS.good_2:
28029         * test/etags/ETAGS.good_3:
28030         * test/etags/ETAGS.good_4:
28031         * test/etags/ETAGS.good_5:
28032         * test/etags/CTAGS.good: Update due to the change in etags.c.
28034         Fix tagging of class members in C-like OO languages
28035         * lib-src/etags.c (longopts): Add new option --class-qualify and
28036         its shorthand -Q.
28037         (print_help): Add help text for --class-qualify.
28038         (main): Add handling of -Q.
28039         (consider_token, C_entries) <omethodparm>: Append argument types
28040         to Objective C methods only if --class-qualify was specified.
28041         Qualify C++, Objective C, and Java class members with their class
28042         names only if --class-qualify was specified.
28043         (C_entries): If --class-qualify was not specified, remove the
28044         namespace and class qualifiers from tag names of C++ methods.
28045         This allows to use etags.el as xref back-end without the
28046         tag-symbol-match-p method, which greatly increases the number of
28047         potentially false positives.  (Bug#20629)
28048         * doc/man/etags.1: Update to document the new --class-qualify
28049         option.
28050         * test/etags/ETAGS.good_1:
28051         * test/etags/ETAGS.good_2:
28052         * test/etags/ETAGS.good_3:
28053         * test/etags/ETAGS.good_4:
28054         * test/etags/ETAGS.good_5:
28055         * test/etags/CTAGS.good: Update due to changes in etags.c.
28057 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
28059         (cl-generic-define-method): Side effects are evil (bug#20644)
28060         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
28061         cons-cells that might be used as keys in an `equal' hash-table.
28063 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
28065         Make erc timestamps visible again
28066         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
28067         Make timestamps visible again (if requested).
28069 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
28071         Fix last change in etags.c that broke tagging compresed files
28072         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
28073         quoting of decompression shell command for MS-Windows/MS-DOS.
28075 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
28077         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
28078         (Bug#20639)
28080 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28082         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
28083         Fix typo in "Inhibit `epa-file-handler' in Tramp"
28084         (commit 89035e247591c8d688fce922b7079881aa110f33).
28086 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
28088         Fix IPv6 addresses in Tramp
28089         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
28090         Add square brackets around host name.
28092 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
28094         Inhibit `epa-file-handler' in Tramp (Bug#20634)
28095         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
28096         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
28097         `epa-file-handler'.
28099 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
28101         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
28102         (pcase-let): Document the behavior in case the pattern doesn't match.
28104 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
28106         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
28107         (tabulated-list-print): New optional argument, UPDATE.  If
28108         non-nil, the list is printed by only adding and deleting the
28109         changed entries, instead of erasing the whole buffer.  This method
28110         is much faster when few or no entries have changed.
28111         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
28112         * etc/NEWS: Document it.
28114         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
28115         (tabulated-list--get-sorter): New function.
28116         (tabulated-list-print): Restore window-line when remember-pos is
28117         passed and optimize away the `nreverse'.
28119 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
28121         Simpilify etags TEX mode scanning
28122         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
28123         Remove static vars.
28124         (TeX_commands): Deduce escapes here instead.
28125         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
28126         This removes the need for a reset_input call.
28128         Improve etags I/O error reporting
28129         * lib-src/etags.c:
28130         Don't include sys/types.h and sys/stat.h; no longer needed.
28131         (infilename): New static var.
28132         (process_file_name): Don't call 'stat'.  Instead, just open the
28133         file for reading and report any errors.  Don't bother making
28134         a copy of the file argument; it's not needed.  Be more careful to
28135         use the failing errno when reporting an error.
28136         Quote the real name better (though no perfectly)
28137         when passing it to the shell.
28138         (reset_input): New function, which reports I/O errors.
28139         All uses of 'rewind' changed to use this function.
28140         (perhaps_more_input): New function, which also checks for
28141         I/O errors.  All uses of 'feof' changed to use this function.
28142         (analyze_regex): Report an error if fclose fails.
28143         (readline_internal): Report an error if getc fails.
28144         (etags_mktmp): Return an error if close fails.
28146         etags.c: avoid side effects in 'if'
28147         * lib-src/etags.c (process_file_name, Perl_functions)
28148         (TEX_decode_env): Hoist side effects into previous statement.
28150         .gitignore tweaks
28151         * .gitignore: Ignore all *.stamp files.  Sort.
28152         Ignore [0-9]*.txt (commonly used name for git patches)
28153         and /vc-dwim-log-* (vc-dwim temporary).
28155 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
28157         Fix last change in etags.c, which failed the test suite
28158         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
28159         before the last change.
28161 2015-05-23  Glenn Morris  <rgm@gnu.org>
28163         Remove charset map files from repository, generate in first bootstrap
28164         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
28165         (all): Create the stamp file.
28166         (extraclean): Delete the stamp file.
28167         * src/Makefile.in (lispintdir, charsets): New variables.
28168         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
28169         New rules.
28170         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
28171         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
28172         * etc/charsets/*.map: Remove from repository.
28174 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
28176         Cleanup etags.c to use locale-independent code
28177         Although this doesn't alter behavior (as etags doesn't use
28178         setlocale), the new version is more clearly locale-independent and
28179         the executable is a bit smaller on my platform.
28180         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
28181         Include <c-ctype.h> instead of <ctype.h>.
28182         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
28183         (begtk, midtk):
28184         Remove; no longer needed.
28185         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
28186         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
28187         c_islower, c_tolower, respectively.
28188         (notinname, begtoken, intoken, endtoken): Rewrite as functions
28189         instead of macros, and initialize the tables at compile-time
28190         rather than at run-time.
28192         Put default action first in src/Makefile
28193         * src/Makefile.in (all): Put this rule before lisp.mk.
28194         That way, plain 'make' works in the src directory again.
28196 2015-05-23  Glenn Morris  <rgm@gnu.org>
28198         * Makefile.in: Fix extraclean rule.
28199         (extraclean_dirs): New.
28200         (extraclean): Use it.
28202 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
28204         Avoid compiler warning in image.c on MS-Windows
28205         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
28206         warning in image.c.
28208 2015-05-23  Glenn Morris  <rgm@gnu.org>
28210         Fix --without-toolkit-scroll-bars builds.
28211         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
28212         Add new argument to x_clear_area1.
28213         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
28214         Update x_clear_area arguments.
28216         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
28217         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
28218         Change to included version.
28219         (LOCAL, local, totalclean): Remove.
28220         (extraclean): Delete all generated files.
28222 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
28224         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
28225         CVS/Entries exists.
28227         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
28229         * lisp/progmodes/etags.el (tags-completion-at-point-function):
28230         Don't trust the find-tag function.
28232 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
28234         Pacify --enable-gcc-warnings
28235         * src/frame.h (x_query_color): Remove redundant extern decl.
28236         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
28237         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
28238         (ftcrfont_text_extents, ftcrfont_draw):
28239         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
28240         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
28241         (x_ins_del_lines, frame_highlight, frame_unhighlight)
28242         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
28243         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
28244         (x_update_window_begin, x_connection_closed)
28245         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
28246         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
28247         (*x_gc_get_ext_data, x_extension_initialize)
28248         (x_cr_accumulate_data):
28249         Remove redundant static decl.  Many of these GCC doesn't complain
28250         about, but we might as well clean out the duplication while we're
28251         in the neighborhood.
28252         * src/xterm.c (x_fill_trapezoid_for_relief):
28253         Remove decl of nonexistent function.
28255 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
28257         Replace gui-method macros with cl-generic with &context
28258         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
28259         (gui-method-declare, gui-call): Remove.
28260         (frame-creation-function): Use cl-defgeneric.
28261         (make-frame): Adjust callers.
28262         * lisp/menu-bar.el (menu-bar-edit-menu):
28263         Use gui-backend-selection-exists-p.
28264         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
28265         (gui-backend-get-selection): New cl-generic to replace
28266         gui-get-selection method.
28267         (gui-backend-set-selection): New cl-generic to replace
28268         gui-set-selection method.
28269         (gui-selection-owner-p): New cl-generic to replace
28270         gui-selection-owner-p method.
28271         (gui-backend-selection-exists-p): New cl-generic to replace
28272         gui-selection-exists-p method.  Adjust all callers.
28273         * lisp/server.el (server-create-window-system-frame): Don't ignore
28274         window-system spec even when unsupported.
28275         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
28276         * lisp/startup.el (handle-args-function, window-system-initialization):
28277         Use cl-defgeneric.
28278         (command-line): Adjust calls accordingly.
28279         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
28280         a window-system-initialization method.
28281         (handle-args-function, frame-creation-function): Use cl-defmethod.
28282         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
28283         (gui-get-selection): Use cl-defmethod on the new functions instead.
28284         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
28285         a gui-backend-get-selection method.
28286         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
28287         Use cl-defmethod on the new functions instead.
28288         (msdos-window-system-initialization): Turn into
28289         a window-system-initialization method.
28290         (frame-creation-function, handle-args-function): Use cl-defmethod.
28291         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
28292         a window-system-initialization method.
28293         (handle-args-function, frame-creation-function): Use cl-defmethod.
28294         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
28295         (gui-get-selection): Use cl-defmethod on the new functions instead.
28296         * lisp/term/x-win.el (x-window-system-initialization): Turn into
28297         a window-system-initialization method.
28298         (handle-args-function, frame-creation-function): Use cl-defmethod.
28299         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
28300         (gui-get-selection): Use cl-defmethod on the new functions instead.
28301         * lisp/term/xterm.el (xterm--set-selection): Turn into
28302         a gui-backend-set-selection method.
28303         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
28304         (Fns_selection_owner_p): Remove unused arg `terminal'.
28305         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
28307 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
28309         Revert "Fix etags Bug#20629 that broke C++ support"
28310         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
28312 2015-05-23  Jan D  <jan.h.d@swipnet.se>
28314         Fix etags Bug#20629 that broke C++ support
28315         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
28316         Revert commit from Sun May 10 (Bug#20629).
28318         Merge branch 'cairo'.
28319         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
28320         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
28322         Merge branch 'master' into cairo
28324         Fixes to compile cairo branch without cairo
28325         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
28326         first argument.
28327         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
28328         USE_CAIRO.
28330 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
28332         * lisp/emacs-lisp/package.el: Always update selected-packages.
28333         (package--update-selected-packages): New function.
28334         (package-menu-execute): Use it before starting the transaction,
28335         this way the list of selected packages is updated even when the
28336         transaction fails.
28337         (package-menu--perform-transaction): Don't edit selected-packages.
28339 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
28341         Fix etags reading of compressed files
28342         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
28343         Include fcntl.h, for O_CLOEXEC.
28344         (process_file_name): Don't use 'popen', whose streams cannot be
28345         rewound.  Instead, uncompress the file to a temporary file,
28346         created by 'etags_mktmp', and read from that as usual.
28347         (etags_mktmp): New function.
28348         * test/etags/ETAGS.good_1:
28349         * test/etags/ETAGS.good_2:
28350         * test/etags/ETAGS.good_3:
28351         * test/etags/ETAGS.good_4:
28352         * test/etags/ETAGS.good_5: Update to be consistent with latest
28353         changes in etags.c regarding reading compressed files.
28355         Improve documentation of 'set-fontset-font'
28356         * doc/lispref/display.texi (Fontsets): Document the value of nil
28357         for the 3rd argument of 'set-fontset-font'.
28359         Fix documentation of forward-line
28360         * src/cmds.c (Fforward_line): Clarify the return value if the line
28361         at end of accessible portion of the buffer has no newline.
28362         * doc/lispref/positions.texi (Text Lines): Document what happens
28363         if the line at end of accessible portion of buffer has no newline.
28364         (Bug#20587)
28366 2015-05-22  Glenn Morris  <rgm@gnu.org>
28368         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
28370         * admin/charsets/mapconv (LC_ALL): Set to C.
28372         * Makefile.in: Add admin/charsets into top-level clean rules.
28373         (clean): Add admin/charsets.
28374         (maybeclean_dirs): New variable.
28375         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
28377         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
28379 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
28381         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
28383 2015-05-22  Glenn Morris  <rgm@gnu.org>
28385         Generate admin/charsets Makefile via configure, and make more portable
28386         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
28387         (admin/charsets/Makefile): Generate it.
28388         * admin/charsets/Makefile.in: Rename from Makefile.
28389         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
28390         New variables, set by configure.
28391         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
28392         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
28393         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
28394         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
28395         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
28396         (all): Declare PHONY.
28397         (local): New PHONY target.
28398         (map_template): New template.  Use to define short PHONY aliases.
28399         (*.map): Add directory prefixes to targets and prerequisites.
28400         Respect make verbosity.
28401         (JISC6226.map): Replace non-portable sed append without newline.
28402         (install): Remove rule.
28403         (clean): Only delete temporary sedscript.
28404         (bootstrap-clean, distclean, maintainer-clean, extraclean)
28405         (totalclean): New PHONY rules.
28406         * admin/charsets/mapconv (BASE): Replace basename with expr.
28407         (FILE): Add "mapfiles" subdirectory.
28408         (AWK): New variable.  Use throughout in place of "awk".
28409         (main): Use "gunzip -c" in place of "zcat".
28410         Don't leave whitespace before "p", for older sed.
28411         * admin/charsets/mapfiles/PTCP154: Add final newline,
28412         to make older sed versions happy.
28414 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
28416         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
28417         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
28418         (auto-revert-notify-watch-descriptor): Use defvar-local.
28419         (find-file-hook, auto-revert-tail-mode)
28420         (auto-revert-notify-add-watch): Use setq-local.
28421         (auto-revert-notify-add-watch): Don't call make-local-variable on
28422         kill-buffer-hook (bug#20601).
28424 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
28426         Change defgeneric so it doesn't completely redefine the function
28427         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
28428         previously defined methods.
28429         (cl-generic-define-method): Let-bind purify-flag instead of
28430         using `fset'.
28431         (cl--generic-prefill-dispatchers): Only define during compilation.
28432         (cl-method-qualifiers): Remove redundant alias.
28433         (help-fns-short-filename): Silence byte-compiler.
28434         * test/automated/cl-generic-tests.el:
28435         Adjust to new defgeneric semantics.
28437 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
28439         * lisp/emacs-lisp/package.el (package-menu-execute):
28440         Remove reference to remove-dups.
28442 2015-05-21  kwhite  <kwhite@gnu.org>
28444         * lisp/erc/erc.el: Hide network/channel messages.
28445         (erc-network-hide-list, erc-channel-hide-list): New lists to define
28446         message types per network/channel.
28447         (erc-add-targets): New function to parse list of targets.
28448         (erc-hide-current-message-p): Modify to check for new targets.
28450 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
28452         Don't quote nil and t in doc strings
28453         This is as per "Tips for Documentation Strings" in the elisp manual.
28454         For consistency, do the same in diagnostics and comments.
28456 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
28458         Fix a minor problem with mouse-face on mode line
28459         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
28460         mouse face also if the mouse pointer hovers above mode-line glyphs
28461         that don't come from any Lisp string.  (Bug#20620)
28463 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
28465         * lisp/emacs-lisp/package.el: Fix selected-package logic.
28466         (package-menu-execute): Mark as selected all non-upgrade packages
28467         being installed.
28468         (package-menu--perform-transaction): Don't mark anything.
28470         * lisp/emacs-lisp/package.el: Mode-line progress report.
28471         (package-menu--transaction-status): New variable.
28472         (package-menu-mode, package-menu--perform-transaction): Use it.
28474         * lisp/emacs-lisp/package.el: Better transaction messages.
28475         (package-menu--partition-transaction): New function.
28476         (package-menu--prompt-transaction-p, package-menu-execute):
28477         Use it.
28478         (package-menu--perform-transaction): Don't do any messaging.
28480         * lisp/emacs-lisp/package.el: Revert async package transactions.
28481         (package-menu-async): Update doc.
28482         (package-install-from-archive, package-download-transaction)
28483         (package-install, package-menu--perform-transaction)
28484         (package-menu-execute): Remove asynchronous functionality.
28486 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
28488         Revert doc string changes to f90.el
28489         Problem reported by Glenn Morris in:
28490         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
28491         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
28492         Revert recent changes to doc strings, as it's intended that they
28493         use grave accent, not quote.
28495 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
28497         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
28498         Improve parameter name.
28500         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
28502 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
28504         Don't require help-fns when not needed
28505         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
28506         * lisp/emacs-lisp/elint.el:
28507         Don't require help-fns at the top level
28508         * lisp/emacs-lisp/advice.el (ad-arglist):
28509         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
28510         Don't require help-fns.  (Bug#17001)
28512 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
28514         Fix slash collapsing in etags on MS-Windows
28515         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
28516         MS-Windows code from the Posix code, and support collapsing both
28517         forward- and back-slashes on MS-Windows.  Fixes a regression found
28518         by the test suite.
28520         Improve documentation of glyphless-char-display
28521         * doc/lispref/display.texi (Glyphless Chars): Improve
28522         documentation of glyphless character display.
28524         Fix "acronym" display of glyphless characters on w32
28525         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
28526         ignore "acronym" substitutes of 1 character for glyphless characters.
28528 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
28530         Add an automated test for let-when-compile
28531         * test/automated/subr-tests.el (let-when-compile): New test.
28533         Add let-when-compile macro instead of using pcase-let
28534         * lisp/subr.el (let-when-compile): New let-like macro that makes its
28535         bindings known to macros like `eval-when-compile' in the body.
28536         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
28537         a `let-when-compile'.  Also comment out the unused lexical var
28538         `el-kws-re'.
28539         The change greatly improves readability, while providing almost the
28540         same (even shorter) byte code: instead of pre-evaluating 10 variables,
28541         tossing them into a list, and destructuring that list a full screen
28542         page later, the variables are simply bound as they are evaluated,
28543         wrapped individually in `eval-when-compile'.
28545 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
28547         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
28548         (package-delete-button-action): New function.
28549         (describe-package-1): Add Delete button.
28551         * lisp/emacs-lisp/package.el: Better dependency description.
28552         (package--used-elsewhere-p): New optional arg, ALL, and return
28553         package-desc objects instead of names.
28554         (package-delete): Update accordingly.
28555         (describe-package-1): Describe which packages require the package.
28557 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
28559         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
28560         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
28561         Fix doc-string.
28563         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
28564         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
28565         (switch-to-buffer): If the selected window is strongly dedicated
28566         to its buffer, signal error before prompting for buffer name.
28567         Handle `switch-to-buffer-in-dedicated-window'.
28568         * doc/lispref/windows.texi (Switching Buffers):
28569         Document `switch-to-buffer-in-dedicated-window'.
28571 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
28573         Prefer "this" to “this” in doc strings
28574         This mostly just straightens quotes introduced in my previous patch.
28575         Suggested by Dmitry Gutov in:
28576         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
28577         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
28578         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
28579         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
28580         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
28581         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
28582         Prefer straight double quotes to curved double quotes in doc strings.
28584         Fix minor quoting problems in doc strings
28585         These were glitches regardless of how or whether we tackle the
28586         problem of grave accent in doc strings.
28587         * lisp/calc/calc-aent.el (math-restore-placeholders):
28588         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
28589         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
28590         * lisp/leim/quail/hebrew.el ("hebrew-new")
28591         ("hebrew-biblical-sil"):
28592         * lisp/leim/quail/thai.el ("thai-kesmanee"):
28593         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
28594         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
28595         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
28596         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
28597         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
28598         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
28599         (semantic-tag-components):
28600         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
28601         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
28602         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
28603         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
28604         * lisp/emacs-lisp/generator.el (iter-next):
28605         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
28606         (gnus-article-mode-syntax-table):
28607         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
28608         * lisp/net/soap-client.el (soap-wsdl-get):
28609         * lisp/net/telnet.el (telnet-mode):
28610         * lisp/org/org-compat.el (org-number-sequence):
28611         * lisp/org/org.el (org-remove-highlights-with-change)
28612         (org-structure-template-alist):
28613         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
28614         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
28615         (handwrite-12pt, handwrite-13pt):
28616         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
28617         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
28618         * lisp/progmodes/verilog-mode.el (verilog-tool)
28619         (verilog-string-replace-matches, verilog-preprocess)
28620         (verilog-auto-insert-lisp, verilog-auto-insert-last):
28621         * lisp/textmodes/makeinfo.el (makeinfo-options):
28622         * src/font.c (Ffont_spec):
28623         Fix minor quoting problems in doc strings, e.g., missing quote,
28624         ``x'' where `x' was meant, etc.
28625         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
28626         Fix minor quoting problem in other string.
28627         * lisp/leim/quail/ethiopic.el ("ethiopic"):
28628         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
28629         Omit unnecessary quotes.
28630         * lisp/faces.el (set-face-attribute, set-face-underline)
28631         (set-face-inverse-video, x-create-frame-with-faces):
28632         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
28633         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
28634         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
28635         * lisp/net/tramp.el (tramp-methods):
28636         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
28637         * lisp/textmodes/artist.el (artist-ellipse-right-char)
28638         (artist-ellipse-left-char, artist-vaporize-fuzziness)
28639         (artist-spray-chars, artist-mode, artist-replace-string)
28640         (artist-put-pixel, artist-text-see-thru):
28641         * lisp/vc/ediff-util.el (ediff-submit-report):
28642         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
28643         Use double-quotes rather than TeX markup in doc strings.
28644         * lisp/skeleton.el (skeleton-pair-insert-maybe):
28645         Reword to avoid the need for grave accent and apostrophe.
28646         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
28647         Don't use grave and acute accents to quote.
28649 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
28651         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
28652         Silence compiler.
28654 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
28656         Try to port new etags tests to MS-Windows
28657         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
28658         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
28659         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
28660         Adjust to test-case changes below.
28661         * test/etags/Makefile (CSRC): Remove dostorture.c.
28662         Whatever it was trying to test, wasn't working portably.
28663         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
28664         just a line-ending problem.
28665         * test/etags/c-src/dostorture.c: Remove.
28666         * test/etags/cp-src/c.C: Remove stray CR.
28667         * test/etags/html-src/algrthms.html: Remove trailing CRs.
28668         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
28669         but if someone edits it later it should stay UTF-8-compatible.
28671 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
28673         Fix display of overlapping window-specific overlays
28674         * src/keyboard.c (adjust_point_for_property): When adjusting point
28675         due to display strings, ignore overlays that are specific to
28676         windows other than the currently selected one.
28677         * src/xdisp.c (handle_single_display_spec): If the display
28678         property comes from an overlay, arrange for buffer iteration to
28679         resume only after the end of that overlay.  (Bug#20607)
28681 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
28683         New command icomplete-force-complete-and-exit
28684         * lisp/icomplete.el (icomplete-force-complete-and-exit):
28685         New command
28686         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
28687         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
28688         (icomplete-minibuffer-map): Bind C-j to it.
28689         (icomplete-forward-completions, icomplete-backward-completions):
28690         Mention the new command in the docstring.
28691         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
28692         Revert the previous fix for bug#17545.
28694 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
28696         Fix last commit
28698         In Elisp manual explain how to override window manager positioning
28699         (Bug#20552)
28700         * doc/lispref/frames.texi (Position Parameters): Give example of
28701         how to override a window manager positioning decision.
28703         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
28704         * src/frame.c (Fdelete_frame): In doc-string mention that frame
28705         can't be deleted if it has a surrogate minibuffer.
28706         * doc/lispref/frames.texi (Minibuffers and Frames)
28707         (Deleting Frames): Explain "surrogate minibuffer frames".
28709         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
28711 2015-05-18  Glenn Morris  <rgm@gnu.org>
28713         Add option to ignore commit lines matching a pattern in ChangeLog
28714         * build-aux/gitlog-to-changelog: Add --ignore-line option.
28715         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
28717 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
28719         Don't skip new etags tests on non-UTF-8 hosts
28720         Problem reported by Eli Zaretskii for MS-Windows.
28721         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
28722         (LC_ALL): Set to C if the current locale isn't UTF-8.
28723         (.PHONY): Remove ediff_1 thru ediff_5.
28724         (check): Always run.
28726 2015-05-18  Glenn Morris  <rgm@gnu.org>
28728         * lisp/calculator.el (calculator-funcall):
28729         * lisp/textmodes/artist.el (artist-spray-random-points):
28730         Use standard degree/radian conversion utilities.
28732         Further lisp-complete-symbol related cleanup.
28733         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
28734         Unadvertise non-functional argument.  Replace obsolete alias.
28736 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
28738         Add a test case for Maven warning ouput
28739         * test/automated/compile-tests.el
28740         (compile-tests--test-regexps-data): Add a case for Maven warning
28741         ouput.
28742         (compile--test-error-line): Check the compilation message type, if
28743         it's specified in the test data.
28745 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
28747         Update Maven compilation-mode entry to distinguish warnings
28748         * lisp/progmodes/compile.el
28749         (compilation-error-regexp-alist-alist): Update Maven entry to
28750         distinguish warnings (bug#20556).
28752 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
28754         * test/automated/sgml-mode-tests.el: New file.
28756 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
28758         Improve handling of the first Git revision
28759         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
28760         there's no next entry, delete until the end of the buffer.
28761         (log-view-end-of-defun-1): Stop at eob.
28762         * lisp/vc/vc-annotate.el
28763         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
28764         when previous-revision is nil.
28765         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
28766         with `--' to avoid ambiguity.
28767         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
28768         returned revision string.
28769         (vc-git-annotate-time): Expect `^' before the first revision.
28770         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
28771         REV1 is nil, and REV2 is not.
28772         * lisp/vc/vc.el: Update the description of the `diff' function.
28774 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
28776         Allow checkdoc to be called in batch
28777         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
28778         is non-nil, echo the error with `warn'.
28779         How it can be used in -batch:
28780         (with-current-buffer (find-file "checkdoc.el")
28781           (checkdoc-current-buffer t))
28783 2015-05-18  Glenn Morris  <rgm@gnu.org>
28785         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
28787 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
28789         * admin/notes/unicode: New section "binary files".
28791         Change new etags test to use UTF-8 encoding
28792         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
28793         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
28794         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
28795         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
28796         * test/etags/html-src/softwarelibero.html:
28797         Switch to UTF-8 encoding.
28798         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
28799         Remove Makefile, as it's too incestuous to have the test input
28800         include the build procedure.
28801         (UTF8_LOCALE, UTF_ENCODING): New macros.
28802         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
28803         (check): Skip if not UTF-8.
28804         (.PHONY): New rule.
28805         (FRC): Remove, as superseded by .PHONY.  All uses removed.
28806         (regexfile): Prefer printf to echo when outputting oddball chars.
28807         (.PRECIOUS): Remove, as these files are not built.
28809         Rename 'foo-gzipped' to 'foo.gz'
28810         * test/automated/data/decompress/foo.gz:
28811         Rename from test/automated/data/decompress/foo-gzipped,
28812         to make it easier for other tools to tell that it's compressed.
28813         * test/automated/zlib-tests.el (zlib--decompress):
28814         Adjust to renamed file.
28816 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
28818         Set up default-directory
28819         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
28820         binding for `v'.
28821         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
28822         appropriate value for default-directory.
28824 2015-05-17  Samer Masterson  <samer@samertm.com>
28826         * lisp/eshell/em-term.el (eshell-term-sentinel):
28827         No-op by default, only kills term buffer if
28828         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
28829         (eshell-destroy-buffer-when-process-dies): New custom to preserve
28830         previous behavior.
28832         eshell: Introduce new buffer syntax
28833         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
28834         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
28835         needed (Bug#19319).
28836         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
28837         (eshell-get-target): Remove shorthand-specific code.
28838         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
28839         '#<buffer-name>'.
28841 2015-05-17  Jan D  <jan.h.d@swipnet.se>
28843         Merge branch 'master' into cairo
28845 2015-04-26  Jan D  <jan.h.d@swipnet.se>
28847         Merge branch 'master' into cairo
28849         Add PBM support for cairo
28850         * src/image.c (xcolor_to_argb32): New function.
28851         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
28852         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
28853         XImagePtr if ! USE_CAIRO.
28854         (pbm_load): Add cairo support.
28856 2015-04-12  Jan D  <jan.h.d@swipnet.se>
28858         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
28859         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
28860         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
28861         x_free_cr_resources.
28863         Handle specified bg in images.  Use generic libpng code for PNGs.
28864         * src/image.c (get_spec_bg_or_alpha_as_argb)
28865         (create_cairo_image_surface): New functions when USE_CAIRO.
28866         (xpm_load): Call the above functions.  Handle XPM without mask
28867         when USE_CAIRO.
28868         (png_load_body): Handle USE_CAIRO case.
28869         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
28870         instead.
28871         (jpeg_load_body): Call create_cairo_image_surface.
28872         (gif_load, svg_load_image): Handle specified background, call
28873         create_cairo_image_surface.
28874         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
28876 2015-04-11  Jan D  <jan.h.d@swipnet.se>
28878         Support GIF and TIFF with cairo
28879         * configure.ac: Allow jpeg with cairo.
28880         Allow tiff and gif with cairo.
28881         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
28882         (tiff_load): Create cairo image surface if USE_CAIRO.
28883         (gif_load): Ditto.
28885         Support JPEG with USE_CAIRO
28886         * configure.ac: Allow jpeg with cairo.
28887         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
28889 2015-04-05  Jan D  <jan.h.d@swipnet.se>
28891         Support RSVG and cairo
28892         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
28893         * src/dispextern.h (struct image): Add cr_data2 if cairo.
28894         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
28895         (x_clear_image): Free cr_data and cr_data2 if set.
28896         (xpm_load): Assign data to cr_data2.
28897         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
28899 2015-04-03  Jan D  <jan.h.d@swipnet.se>
28901         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
28902         * configure.ac (HAVE_RSVG): Move after cairo.
28903         (USE_CAIRO): Disable rsvg, don't disable Xpm.
28904         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
28905         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
28906         don't return early.
28907         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
28908         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
28909         and create a surface.
28911         Tool tips for menus did not show any text.
28912         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
28913         tip frames, the geometry may be wrong.
28915         Merge branch 'master' into cairo, fixes tooltips not shown.
28917         Merge branch 'master' into cairo
28919         Add CAIRO_CFLAGS to lwlib/Makefile.in
28920         * Makefile.in (CAIRO_CFLAGS): Add.
28922 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28924         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
28926 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28928         Draw outermost line using black relief and erase corners also for cairo.
28929         * src/xterm.c [USE_CAIRO]: Include math.h.
28930         (enum corners) [USE_CAIRO]: New enum.
28931         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
28932         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
28933         than 1, draw the outermost line using the black relief.
28935         * src/xterm.c (x_fill_trapezoid_for_relief):
28936         Remove unnecessary cairo_close_path.
28938 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28940         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
28942         * src/xterm.c (x_draw_stretch_glyph_string):
28943         Call x_reset_clip_rectangles instead of XSetClipMask.
28945         Use int instead of unsigned int for width and height args.
28946         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
28947         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
28948         width and height args.
28950         Modernize k&r cairo-related function declarations.
28951         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
28952         (xg_print_frames_dialog): Modernize k&r declarations.
28953         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
28954         (Fx_print_frames_dialog): Modernize k&r declarations.
28955         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
28956         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
28957         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
28958         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
28959         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
28960         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
28961         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
28962         (x_clear_area): Modernize k&r declarations.
28964         Implement wave-style variant of underlining for cairo.
28965         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
28966         (x_draw_underwave) [USE_CAIRO]: Use it.
28968         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
28969         instead of XFillRectangle.
28971 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
28973         Fix fringe bitmap initialization for cairo
28974         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
28975         data for cairo image surface.
28976         * src/xterm.c (x_cr_define_fringe_bitmap):
28977         Call cairo_surface_mark_dirty.
28979 2015-02-11  Jan D  <jan.h.d@swipnet.se>
28981         Add cairo drawing
28982         * configure.ac (with-cairo): New option.
28983         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
28984         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
28985         Output "Does Emacs use cairo?".
28986         * lisp/version.el (emacs-version): Add cairo version.
28987         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
28988         (FONT_OBJ): Add comment about ftcrfont.
28989         (ALL_CFLAGS): Add CAIRO_CFLAGS.
28990         (LIBES): Add CAIRO_LIBS.
28991         * src/dispextern.h (struct image): Add cr_data for cairo.
28992         (x_cr_init_fringe): Declare.
28993         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
28994         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
28995         * src/fringe.c (x_cr_init_fringe): New function name that shares code
28996         with w32_init_fringe.
28997         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
28998         * src/ftfont.c (ftfont_info_size); New global variable.
28999         (ftfont_open2): New extern function almost the same as old ftfont_open,
29000         but takes the font_object as argument.
29001         (ftfont_open): Build font object and call ftfont_open2.
29002         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
29003         * src/gtkutil.c (xg_clear_under_internal_border)
29004         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
29005         Only queue_draw if not cairo.  Change args to x_clear_area.
29006         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
29007         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
29008         (xg_print_frames_dialog): New functions for printing.
29009         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
29010         (xg_print_frames_dialog): Declare.
29011         * src/image.c: Add defined (USE_CAIRO) for PNG.
29012         Add !defined USE_CAIRO for W32 PNG code.
29013         (x_clear_image): If cairo, destroy the surface in cr_data.
29014         (png_load): Add new cairo compatible implementation.
29015         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
29016         * src/xfns.c: New section Printing.
29017         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
29018         (x-print-frames-dialog): New printing functions.
29019         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
29020         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
29021         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
29022         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
29023         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
29024         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
29025         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
29026         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
29027         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
29028         Declare.
29029         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
29030         (max_fringe_bmp, fringe_bmp): New variables.
29031         (x_gc_get_ext_data, x_extension_initialize)
29032         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
29033         (x_set_cr_source_with_gc_foreground)
29034         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
29035         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
29036         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
29037         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
29038         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
29039         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
29040         (x_update_begin): Create cairo surface if needed.
29041         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
29042         (x_update_end): Paint cairo drawing surface to xlib surface.
29043         (x_clear_under_internal_border, x_after_update_window_line): Adjust
29044         arguments to x_clear_area.
29045         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
29046         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
29047         of XSetClipMask.
29048         (x_set_glyph_string_clipping)
29049         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
29050         instead of XSetClipRectangles.
29051         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
29052         Use x_fill_rectangle instead of XFillRectangle.
29053         (x_draw_glyph_string_foreground)
29054         (x_draw_composite_glyph_string_foreground)
29055         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
29056         instead of XDrawRectangle.
29057         (x_draw_relief_rect): Add code for USE_CAIRO.
29058         Call x_reset_clip_rectangles instead of XSetClipMask.
29059         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
29060         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
29061         instead of XSetClipMask.
29062         (x_draw_image_foreground, x_draw_image_foreground_1):
29063         x_draw_rectangle instead of XDrawRectangle.
29064         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
29065         XFillRectangle.
29066         (x_draw_image_glyph_string): If img has cr_data, use it as
29067         a cairo surface.
29068         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
29069         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
29070         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
29071         x_reset_clip_rectangles instead of XSetClipMask.
29072         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
29073         (x_clear_area1): New function that calls XClearArea.
29074         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
29075         non-cairo.
29076         (x_clear_frame): x_clear_window instead of XClearWindow.
29077         (x_scroll_run): Set frame garbaged if cairo.
29078         (XTmouse_position): Initialize *part to 0.
29079         (x_scroll_bar_create): Adjust arguments to x_clear_area.
29080         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
29081         x_fill_rectangle instead of XFillRectangle.
29082         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
29083         arguments to x_clear_area.
29084         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
29085         (handle_one_xevent): Adjust arguments to x_clear_area.
29086         Destroy cairo surface for frame if ConfigureNotify.
29087         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
29088         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
29089         x_reset_clip_rectangles instead of XSetClipMask.
29090         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
29091         x_reset_clip_rectangles instead of XSetClipMask.
29092         (x_clear_frame_area): Adjust arguments to x_clear_area.
29093         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
29094         (x_term_init): Call x_extension_initialize if cairo.
29095         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
29096         x_cr_destroy_fringe_bitmap for cairo.
29097         (x_initialize): Call x_cr_init_fringe for cairo.
29098         * src/xterm.h: Add include of cairo header files.
29099         (x_bitmap_record): Add img if cairo.
29100         (x_gc_ext_data): New struct for cairo.
29101         (x_display_info): Add ext_codes for cairo.
29102         (x_output): Add cr_context and cr_surface for cairo.
29103         (x_clear_area): Change arguments from Display*/Window to frame pointer.
29104         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
29105         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
29106         (x_cr_draw_frame, x_cr_export_frames): Declare.
29108 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
29110         Fix integer-valued `mouse-highlight' (Bug#20590)
29111         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
29113 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
29115         MS-Windows followup for ASCIIfication of curved quotes
29116         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
29117         test for curved quotes being displayable, after switching the
29118         terminal encoding.  (Bug#20545)
29120 2015-05-17  Jan D  <jan.h.d@swipnet.se>
29122         Add comment that x_shift_glyphs_for_insert is never called
29123         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
29124         Add comment that this function is never called.
29126 2015-05-16  Glenn Morris  <rgm@gnu.org>
29128         * src/lisp.mk: Remove from repository and generate at build-time.
29129         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
29130         (shortlisp_filter): New variable.
29131         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
29132         (distclean): Remove lisp.mk.
29133         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
29134         * lisp/loadup.el: Tweak layout to make it easier to parse.
29135         * make-dist: Do not distribute src/lisp.mk.
29137 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
29139         Display shorter dates in Git annotate output
29140         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
29141         format (when not overridden with vc-git-annotate-switches).
29142         (vc-git-annotate-time): Support the short format, as well as ISO
29143         8601 that has been used until now (bug#5428).
29145 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
29147         ASCIIfy curved quotes on displays lacking them
29148         * lisp/international/mule-cmds.el (set-locale-environment):
29149         If curved quotes don't work, display straight ASCII approximations
29150         (Bug#20545).
29152 2015-05-16  Glenn Morris  <rgm@gnu.org>
29154         Small src/Makefile simplification
29155         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
29156         * src/Makefile.in (lisp): Derive from shortlisp.
29157         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
29159 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
29161         * lisp/help-mode.el (help-go-forward): Doc fix.
29162         (Bug#20577)
29164         * doc/lispref/debugging.texi (Profiling): Improve indexing.
29165         (Bug#20576)
29167 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
29169         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
29170         have one fewer `not'.
29172         * lisp/vc/vc-git.el (vc-git-diff-switches)
29173         (vc-git-annotate-switches, vc-git-resolve-conflicts)
29174         (vc-git-program, vc-git-root-log-format): Remove the redundant
29175         :group declarations.
29177 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
29179         Removes the predicate from lisp-complete-symbol (Bug#20456)
29180         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
29181         and remove it from the docstring.
29183 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
29185         Add new option vc-git-resolve-conflicts
29186         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
29187         (vc-git-find-file-hook): Add to after-save-hook only when the
29188         above is non-nil.
29189         (vc-git-resolve-when-done): Update to honor the new variable.
29190         (Bug#20292)
29192 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
29194         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
29195         (tabulated-list-init-header): Document new behavior.
29196         (tabulated-list-print-fake-header): Do nothing if
29197         `tabulated-list--header-string' is nil.
29198         (tabulated-list--header-string): Add a docstring.
29199         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
29200         * etc/NEWS: Document it.
29202 2015-05-15  Leo Liu  <sdl.web@gmail.com>
29204         Revert "Fix cps--gensym"
29205         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
29206         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
29208 2015-05-15  Glenn Morris  <rgm@gnu.org>
29210         Replace AC_SUBST_FILE in configure with include in Makefiles
29211         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
29212         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
29213         (AUTO_DEPEND): New output variable.
29214         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
29215         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
29216         (lwlib_deps_frag): Replace by conditional include.
29217         * lwlib/autodeps.mk: Remove file.
29218         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
29219         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
29220         (oldxmenu_deps_frag): Replace by conditional include.
29221         * oldXMenu/autodeps.mk: Remove file.
29222         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
29223         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
29224         (lisp_frag): Replace by an include.
29225         (deps_frag): Replace by conditional include.
29226         * src/autodeps.mk: Remove file.
29228         Tweak japanese.el's loading of dependencies
29229         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
29230         * lisp/language/japanese.el: Use require rather than load.
29231         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
29232         Provide a feature.
29233         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
29234         Provide a feature in the generated file.
29236 2015-05-15  Jan D  <jan.h.d@swipnet.se>
29238         Fix NS warnings
29239         * src/nsmenu.m (ns_popup_dialog)
29240         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
29241         * src/nsfns.m (Fx_create_frame): Remove unused variables.
29242         (Fns_read_file_name): Initialize fname, remove ret.
29243         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
29244         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
29245         Remove unused variable.
29246         (init): Add parantesis in if.
29247         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
29249 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
29251         Fix a enum conversion warning in macfont.m
29252         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
29253         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
29255 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
29257         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
29258         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
29260 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
29262         * lisp/cus-start.el: Add ns-confirm-quit.
29264         Fix warnings on OSX 10.10
29265         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
29266         OSX versions.
29267         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
29268         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
29269         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
29270         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
29271         setScalesWhenResized for OSX < 10.6.
29272         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
29273         * src/nsterm.m (ns_copy_bits): New function that does not use
29274         deprecated NSCopyBits.
29275         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
29276         (runAlertPanel): New function.
29277         (applicationShouldTerminate:): Call runAlertPanel.
29278         (initFrameFromEmacs, toggleFullScreen:): Only call
29279         useOptimizedDrawing for OSX < 10.10.
29280         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
29281         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
29282         (draggingEntered:): Returns NSDragOperation.
29283         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
29285 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
29287         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
29288         (package--init-file-ensured): New variable.
29289         (package-initialize, package--ensure-init-file): Use it.
29291 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
29293         Honor :fore/background for XBM on NS (Bug#14969)
29294         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
29295         initFromXBM takes bg, fg args, remove flip arg.
29296         (ns_image_from_XBM): Add bg, fg args.
29297         * src/image.c (x_create_bitmap_from_data)
29298         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
29299         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
29300         initFromXBM.  Remove flip arg.
29301         (initFromSkipXBM): Move code to initFromXBM.
29302         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
29303         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
29304         always false.
29305         Remove bit flipping (bitPat, swt), generated incorrect images when
29306         width/height wasn't a multiple of 8.
29307         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
29308         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
29309         remove flip arg.
29311 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
29313         * lisp/emacs-lisp/package.el: Be more careful with the init file.
29314         (package--ensure-init-file): Check that user-init-file is set,
29315         exists, is readable, and is writable.  (Bug#20584)
29316         Also expand the docstring.
29318 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
29320         Sync with upstream verilog-mode revision 6232468
29321         * lisp/progmodes/verilog-mode.el
29322         (verilog-font-lock-grouping-keywords-face)
29323         (verilog-highlight-grouping-keywords): Fix use of face when
29324         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
29325         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
29326         parent is reset, bug906.  Reported by Ken Schmidt.
29327         (verilog-auto-inout-module): Add fourth regexp argument to
29328         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
29329         Reported by John Tillema.
29330         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
29331         modport if signal attachment is itself a modport.  Reported by
29332         Matthew Lovell.
29333         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
29334         always_comb and always_latch, bug844.  Reported by Greg Hilton.
29335         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
29336         with many curly-bracket pairs, bug663.
29337         (verilog-set-auto-endcomments): Fix end comments for functions of
29338         type void, etc.  Reported by Alex Reed.
29339         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
29340         caused by indent-line-to deleting tabls pre 24.5.
29341         (verilog-nameable-item-re): Fix nameable items that can have an
29342         end-identifier to include endchecker, endgroup, endprogram,
29343         endproperty, and endsequence.  Reported by Alex Reed.
29344         (verilog-label-be): When auto-commenting a buffer, consider
29345         auto-comments on all known keywords (not just a subset thereof).
29346         Reported by Alex Reed.
29347         (verilog-auto-end-comment-lines-re)
29348         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
29349         Automatically comment property/endproperty blocks to match other
29350         similar blocks like sequence/endsequence, function/endfunction, etc.
29351         Reported by Alex Reed.
29352         (verilog-set-auto-endcomments): Detect the function- or task-name
29353         when auto-commenting blocks that lack an explicit portlist.
29354         Reported by Alex Reed.
29355         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
29356         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
29357         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
29358         is nil, fix indenting initial/final to match always statements,
29359         bug825.  Reported by Tim Clapp.
29360         (verilog-extended-complete-re): Fix indentation of DPI-C imports
29361         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
29362         Mao and Jason Forkey.
29363         (verilog-read-decls): Fix parsing typed interfaces.  Fix
29364         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
29365         Fix localparam not being ignored in AUTOINSTPARAM,
29366         bug889.  Reported by Shannon Hill.
29367         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
29368         bug793.  Reported by Pierre-David Pfister.
29369         (verilog-auto-arg-format, verilog-auto-arg-ports):
29370         Add verilog-auto-arg-format to support newlines in AUTOARG.
29371         Reported by Jie Xiao.
29372         (verilog-batch-execute-func): Do not batch re-auto files loaded by
29373         Local Variables.  Fix printing "no changes to be saved" with
29374         verilog-batch.  Reported by Dan Dever.
29375         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
29376         interface-only modules, bug721.  Reported by Dean Hoyt.
29377         Author: Alex Reed <acreed4@gmail.com>
29378         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
29379         Don't treat '<keyword>:<identifier>' as the start of a labeled
29380         statement, bug905.  Reported by Enzo Chi.
29381         (verilog-directive-re, verilog-compiler-directives)
29382         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
29383         directives (plus some extras) when determining indentation, bug
29384         901.  Reported by Bernd Beuster.
29385         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
29386         iff expression doesn't start with word-character, bug900.
29387         (verilog-optional-signed-range-re, verilog-optional-signed-re):
29388         Fix incorrect indentation/alignment of unsigned declarations,
29389         bug897.
29390         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
29391         always constructs, bug895.
29392         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
29393         Reported by Eric Mastromarchi.
29394         (verilog-beg-of-statement): Fix indenting for some forms of
29395         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
29396         continued assignment incorrect if first line ends with ']', bug437.
29397         Reported by Dan Dever.  Fix indention of cover inside an
29398         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
29399         blocks, bug842.
29400         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
29401         Reported by Kaushal Modi.
29402         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
29403         (verilog-backward-token): Fix indenting sensitivity lists with
29404         named events, bug840.  Reed.
29405         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
29406         nil not honoring 'forever', 'foreach', and 'do' keywords.
29408 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
29410         Check for invalid GTK+ monitor scales
29411         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
29412         INT_MAX for too-large scales.  All callers changed to assume the
29413         result is valid (Bug#20432).
29414         (xg_frame_set_char_size, xg_update_scrollbar_pos):
29415         Calculate scale only if needed.
29416         Show ASCII approximations instead.
29418 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
29420         Fix daemon crashes when linum-mode is turned on early on
29421         * src/window.c (Fwindow_end): Don't try calling display engine
29422         functions on initial-frame frame.  (Bug#20565)
29424         Fix selective diff browsing in Ediff
29425         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
29426         Go to the beginning of the region before searching for the
29427         ediff-regexp-focus-* regexps.  (Bug#20568)
29429 2015-05-14  Jan D  <jan.h.d@swipnet.se>
29431         Fixes bug#20142
29432         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
29433         arrive in the main loop, even for Gtk 3 (Bug#20142).
29435         Don't access display after i/o error (Bug#19147).
29436         * src/xterm.c (x_connection_closed): Add third arg ioerror.
29437         If ioerror, set display to 0 (Bug#19147).
29438         (x_error_quitter): Call x_connection_closed with third arg false.
29439         (x_io_error_quitter): Call x_connection_closed with third arg true.
29441         Handle GTK_SCALE, fixes Bug#20432.
29442         * src/gtkutil.c (xg_get_gdk_scale): New function.
29443         (xg_frame_set_char_size)
29444         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
29445         (xg_get_default_scrollbar_height)
29446         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
29447         when setting sizes (Bug#20432).
29449 2015-05-13  Leo Liu  <sdl.web@gmail.com>
29451         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
29453 2015-05-13  Glenn Morris  <rgm@gnu.org>
29455         Fix bootstrap (void function cl-member).
29456         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
29457         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
29459 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
29461         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
29462         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
29463         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
29464         Avoid defalias for closures which are not immutable.
29465         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
29466         the dispatchers table with various entries.
29467         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
29468         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
29470 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
29472         Improve tagging of C bindings in DEFVAR_*
29473         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
29474         from DEFVAR_*.
29476 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
29478         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
29480 2015-05-12  Glenn Morris  <rgm@gnu.org>
29482         * lisp/progmodes/tcl.el (tcl-filter):
29483         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
29485         Add basic VC push support
29486         * lisp/vc/vc.el (vc-push): New autoloaded command.
29487         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
29488         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
29489         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
29490         (vc-bzr-push): New.
29491         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
29492         (vc-git-pull): Reimplement using vc-git--pushpull.
29493         (vc-git-push): New.
29494         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
29495         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
29496         * doc/emacs/maintaining.texi (Pulling / Pushing):
29497         Rename from "VC Pull".  Mention pushing.
29498         (VC With A Merging VCS, VC Change Log): Update xrefs.
29499         (Branches): Update menu.
29500         * doc/emacs/emacs.texi: Update menu.
29501         * etc/NEWS: Mention this.
29503 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
29505         Improve the seq pcase pattern and the `seq-let' macro
29506         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
29507         object is a sequence, and binds each element of ARGS to the
29508         corresponding element of the sequence.
29510 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
29512         Fix tags created from DEFVAR_* declarations in C
29513         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
29514         to make tags extracted from DEFVAR_* declarations more accurate.
29516         Add a test suite for etags
29517         * test/etags/: New test suite, adapted from
29518         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
29519         whose original author is Francesco Potortì <pot@gnu.org>.
29521         Fix tagging of symbols in C enumerations
29522         * lib-src/etags.c (consider_token): Don't tag symbols in
29523         expressions that assign values to enum constants.  See
29524         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
29525         for details.
29526         (C_entries): Reset fvdef to fvnone after processing a preprocessor
29527         conditional and after a comma outside of parentheses.
29529 2015-05-12  Glenn Morris  <rgm@gnu.org>
29531         * lisp/url/url-handlers.el (url-file-name-completion)
29532         (url-file-name-all-completions): Silence compiler.
29534         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
29536         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
29538 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
29540         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
29541         (cl--generic-mandatory-args): Remove.
29542         (cl--generic-split-args): New function.
29543         (cl-generic-define, cl--generic-lambda): Use it.
29544         (cl-generic-define-method): Use it as well, and add support for
29545         context args.
29546         (cl--generic-get-dispatcher): Handle &context dispatch.
29547         (cl--generic-cache-miss): `dispatch-arg' can now be a
29548         context expression.
29549         (cl--generic-dispatchers): Pre-fill.
29550         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
29551         New test.
29553 2015-05-11  Glenn Morris  <rgm@gnu.org>
29555         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
29557 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
29559         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
29560         * lisp/term/rxvt.el: Require term/xterm.
29561         (rxvt-function-map): Use xterm-rxvt-function-map.
29562         (rxvt-standard-colors): Move before first use.
29563         (terminal-init-rxvt): Use xterm--push-map and
29564         xterm-register-default-colors.
29565         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
29566         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
29567         Move shared bindings between rxvt and xterm to it.
29568         (xterm-function-map): Use it.  Move the xterm-paste binding to
29569         xterm-rxvt-function-map (bug#20444).
29570         (xterm-standard-colors): Move before first use.
29571         (xterm--push-map): New function.
29572         (xterm-register-default-colors): Take standard colors as argument.
29573         (terminal-init-xterm): Use it.  Adjust call to
29574         xterm-register-default-colors.
29576 2015-05-11  Glenn Morris  <rgm@gnu.org>
29578         * lisp/term/x-win.el: Quieten --without-x compilation.
29579         (x-own-selection-internal, x-disown-selection-internal)
29580         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
29581         Declare.
29583         * Makefile.in (emacslog): Remove srcdir.
29584         (ChangeLog): Update for the above.
29586 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
29588         python.el: better limit for looking-back calls
29589         * lisp/progmodes/python.el (python-shell-accept-process-output):
29590         Use last comint prompt start as limit for looking-back.
29592 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
29594         CEDET (srecode-insert-fcn): Fix use of oref on a class
29595         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
29596         on a class.  Reported by Pierre Lorenzon.
29597         (srecode-template-inserter-point): Remove declaration.
29599         CEDET (srecode-create-dictionary): Avoid obsolete object name
29600         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
29601         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
29603 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
29605         C-x 8 shorthands for curved quotes, Euro, etc.
29606         Although C-x 8 lets you insert arbitrary Unicode characters,
29607         it's awkward to use this to insert commonly used symbols such as curved
29608         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
29609         characters commonly found in English text and in basic math.
29610         For example, assuming the Alt key works on your keyboard and iso-transl
29611         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
29612         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
29613         (Bug#20499)
29614         * doc/emacs/mule.texi (Unibyte Mode):
29615         A few other printing characters now work too.
29616         * etc/NEWS: Document this.
29617         * lisp/international/iso-transl.el (iso-transl-char-map):
29618         Also support the following characters:
29619         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
29621 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
29623         Add xref-find-regexp
29624         * lisp/progmodes/xref.el (xref-find-function): Describe the
29625         `matches' action.
29626         (xref-find-regexp): New command, using it.
29627         (xref-collect-references): Rename to xref-collect-matches.
29628         (xref--collect-reference): Rename to xref--collect-match.
29629         (xref-collect-matches, xref--collect-match): Accept new argument,
29630         KIND.  Update accordingly.
29631         (xref--regexp-to-extended): New function.
29632         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
29633         `matches' action.
29634         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
29635         * lisp/progmodes/etags.el (etags-xref-find):
29636         Support the `matches' action.
29637         (etags--xref-find-matches): New function.
29639 2015-05-10  Glenn Morris  <rgm@gnu.org>
29641         * Makefile.in: Fixes for recent change-history changes.
29642         (change-history-nocommit): Update footer regexp.
29643         Ensure output script stays executable.
29645 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
29647         New version of `seq-let' based on a pcase pattern
29648         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
29649         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
29651 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
29653         Add basic HTML5 tags and a template
29654         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
29655         (html-tag-alist): Add HTML5 tags.
29656         (html-tag-help): Add new tags descriptions.
29657         (html-navigational-links): Template for nav links.
29658         (html-html5-template): Template for a HTML5 page.
29660 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
29662         semantic/symref/grep: Don't use word boundaries
29663         * lisp/cedet/semantic/symref/grep.el
29664         (semantic-symref-perform-search): Instead of wrapping input in
29665         word boundaries, check that the characters before and after are
29666         not word constituents.
29668         semantic/symref/grep: Support regexp search
29669         * lisp/cedet/semantic/symref.el
29670         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
29671         the search type is regexp.
29672         * lisp/cedet/semantic/symref/grep.el
29673         (semantic-symref-perform-search): Support the regexp search type.
29674         Pass -E to Grep when it's used.
29676         semantic-symref-regexp: Allow to input an arbitrary string
29677         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
29678         Allow to input an arbitrary string interactively.
29680         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
29681         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
29682         Remove tag-symbol-match-p from the default value
29683         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
29685         Declare find-tag obsolete
29686         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
29687         xref-find-definitions.
29689 2015-05-10  Jan D  <jan.h.d@swipnet.se>
29691         Draw composite string correctly (Bug#20537)
29692         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
29693         New function.
29694         (ns_draw_glyph_string): Call it.
29696 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
29698         Avoid infloop in ERC
29699         * lisp/simple.el (line-move-to-column): Ignore field boundaries
29700         while computing line beginning position.  (Bug#20498)
29702 2015-05-08  Glenn Morris  <rgm@gnu.org>
29704         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
29705         * build-aux/gitlog-to-emacslog: Check called from right directory.
29706         (srcprefix): Remove.
29708         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
29709         * Makefile.in (ChangeLog): No longer pass "distprefix".
29710         * make-dist: Update "make ChangeLog" syntax for the above change.
29712         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
29713         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
29715         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
29717         Add command-line option-parsing to gitlog-to-emacslog
29718         * build-aux/gitlog-to-emacslog: Add command-line options.
29719         By default, refuse to remove an existing output file.
29720         * Makefile.in (CHANGELOG): Update default.
29721         (ChangeLog): Do not test for existing file.
29722         (change-history-nocommit): Ensure temp file does not exist.
29724         Quieten --without-x compilation
29725         * lisp/term/common-win.el: Provide a feature.
29726         * lisp/term/x-win.el (term/common-win): Require it.
29728         * lisp/dired-aux.el (dired-do-print): Require lpr.
29730         Quieten compilation, eg in --without-x builds
29731         * lisp/dired-aux.el (lpr-printer-switch):
29732         * lisp/frame.el (tool-bar-height):
29733         * lisp/linum.el (font-info):
29734         * lisp/window.el (font-info, overflow-newline-into-fringe)
29735         (tool-bar-height):
29736         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
29737         * lisp/gnus/gnus-util.el (iswitchb-mode):
29738         * lisp/mail/rmailmm.el (libxml-parse-html-region):
29739         * lisp/net/nsm.el (gnutls-peer-status)
29740         (gnutls-peer-status-warning-describe):
29741         * lisp/net/shr.el (libxml-parse-xml-region):
29742         * lisp/url/url-http.el (gnutls-peer-status): Declare.
29744 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
29746         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
29747         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
29748         `subclass' since they're never called with a class.
29749         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
29750         srecode-dictionary-child-p.
29752 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
29754         * lisp/help.el (help--binding-locus): Document argument POSITION.
29755         (Bug#20530)
29757 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
29759         Merge from gnulib
29760         * doc/misc/texinfo.tex: Get latest version.
29762 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
29764         ffap.el (ffap-read-file-or-url): Fix completing-read call
29765         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
29766         `completing-read' should be a symbol.
29768 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
29770         Verify file modifications by other programs
29771         * src/filelock.c (lock_file): Check whether the file was modified
29772         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
29774         Fix keyboard macros that include function keys
29775         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
29776         keys in the macro before returning.  (Bug#20454)
29778 2015-05-08  Glenn Morris  <rgm@gnu.org>
29780         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
29781         "Copyright-paperwork-exempt".  (Bug#20324)
29783         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
29784         (log-edit-rewrite-tiny-change): New variable.
29785         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
29786         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
29787         * etc/NEWS: Mention this.
29789         * lisp/calc/calc.el (math-zerop): Declare.
29791         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
29793 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
29795         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
29796         Support the case when BINDINGS is a single tuple.  (Bug#20525)
29798         * etc/NEWS: Fix typo in previous commit
29799         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
29801 2015-05-07  Jan D  <jan.h.d@swipnet.se>
29803         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
29804         Output URL to Gtk+ bug (Bug#20452).
29806         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
29808 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
29810         * lisp/emacs-lisp/package.el: New "external" package status.
29811         An external package is any installed package that's not built-in
29812         and not from `package-user-dir', which usually means it's from an
29813         entry in `package-directory-list'.  They are treated much like
29814         built-in packages, in that they cannot be through the Package Menu
29815         deleted and are not considered for upgrades.
29816         (package-desc-status): Identify if a package is installed outside
29817         `package-user-dir'.
29818         (package-menu--print-info-simple)
29819         (package-menu--status-predicate): Add support for it.
29820         * etc/NEWS: Document it.
29822 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29824         * lisp/mail/rmail.el: Use lexical-binding.
29825         (rmail-bury): Remove unused var `buffer-to-bury'.
29826         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
29827         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
29828         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
29829         (rmail-insert-inbox-text): Remove unused var `movemail'.
29830         (rmail-add-mbox-headers): Remove unused var `limit'.
29831         (rmail-undelete-previous-message): Remove unused var `value'.
29832         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
29833         `resent-reply-to'.
29834         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
29835         (rmail-restore-desktop-buffer): Rename arguments.
29837 2015-05-06  Glenn Morris  <rgm@gnu.org>
29839         * Makefile.in (change-history-commit): Add missing piece of previous.
29841         Avoid unnecessary bumping of Makefile.in's timestamp
29842         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
29843         (emacslog): New variable.
29844         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
29845         (unchanged-history-files): Use $emacslog rather than Makefile.in.
29846         (change-history-nocommit): Store hash in $emacslog.
29847         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
29848         * admin/update_autogen (changelog_files): Update for the above.
29850         * Makefile.in: Don't always insist on removing existing "ChangeLog".
29851         (CHANGELOG): New variable.
29852         (no-ChangeLog): Remove.
29853         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
29854         (change-history-nocommit): Use a temp file rather than insisting
29855         on deletion of any existing "ChangeLog".
29857         * build-aux/gitlog-to-emacslog: Allow specification of output.
29859         * admin/update_autogen: Add option to update ChangeLog.
29860         (usage): Mention -H.
29861         (changelog_flag, changelog_n, changelog_files): New variables.
29862         (main): Check for -H, and maybe run change-history-nocommit.
29864 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29866         * lisp/subr.el (delete-dups): Pre-size the hashtable.
29868         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
29869         cl--arglist-args is defined (bug#20517).
29871 2015-05-06  Glenn Morris  <rgm@gnu.org>
29873         * Makefile.in (change-history-nocommit): New.
29875 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
29877         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
29878         timer when it is non-nil
29879         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
29881 2015-05-06  Glenn Morris  <rgm@gnu.org>
29883         Quieten CEDET compilation
29884         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
29885         Invert fboundp test to quieten on current Emacs.
29886         * lisp/cedet/ede/config.el (ede-shell-run-something)
29887         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
29888         (semanticdb-refresh-table): Declare.
29889         (ede-preprocessor-map): Require semantic/db.
29891         Quieten cc-mode compilation
29892         * lisp/progmodes/cc-awk.el (c-forward-sws):
29893         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
29894         Declare.
29896 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
29898         * lisp/subr.el (delete-dups): Avoid nreverse.
29900 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
29902         * lisp/subr.el (delete-dups): Make it destructive again.
29904 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
29906         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
29908 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29910         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
29911         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
29912         (testcover--read): Rename from testcover-read.  Change calling
29913         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
29914         is gone.
29915         (testcover-start): Use add-function.  Move edebug-all-defs binding to
29916         testcover--read.
29917         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
29918         (testcover-mark): Remove unused var `item'.
29919         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
29921 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
29923         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
29924           use a hash table.  This can result in ~500 times speed-up for typical
29925           collections of size 5000, like that of `load-library'.
29927 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29929         CEDET: Avoid `oref' on classes in a few more cases
29930         * lisp/cedet/ede/generic.el (ede-find-target):
29931         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
29932         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
29933         var `prefix'.
29935         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
29936         (grepflags, greppattern): Declare.
29937         (semantic-symref-perform-search): Remove unused var `pat'.
29939         CEDET (srecode-compile-inserter): Avoid `oref' on classes
29940         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
29941         Avoid `oref' on classes (bug#20491).
29942         (srecode-compile-split-code): Remove unused var `key'.
29944 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
29946         Clean up pulse.el a little
29947         * lisp/cedet/pulse.el (pulse): Remove.
29948         (pulse-momentary-timer): Save instead of the stop time.
29949         (pulse-momentary-highlight-overlay):
29950         Call pulse-momentary-unhighlight first thing.
29951         Treat pulse-momentary-overlay as a single value, not a list.
29952         Save the created timer.  Only pass the stop time to the timer.
29953         (pulse-tick): Update accordingly.
29954         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
29955         single value.  Cancel the timer.
29957 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
29959         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
29960         Support the biblatex journaltitle field.
29962 2015-05-05  Glenn Morris  <rgm@gnu.org>
29964         Minor declare-function improvement
29965         * lisp/emacs-lisp/bytecomp.el
29966         (byte-compile-macroexpand-declare-function):
29967         Handle declarations after calls.  (Bug#20509)
29969         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
29971         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
29973 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
29975         Pulse using a timer
29976         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
29977         (pulse-momentary-highlight-overlay): Set up the timer instead of
29978         calling `pulse'
29979         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
29980         (pulse-tick): New function.
29981         (pulse-momentary-unhighlight): Cut off the stop time.
29982         (pulse-delay): Update the docstring WRT to not using sit-for.
29984         Add semantic/symref/grep file patterns for ruby-mode
29985         * lisp/cedet/semantic/symref/grep.el
29986         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
29987         Clarify the docstring.
29989         Don't require match
29990         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
29991         match.  That doesn't work for every command, and some identifier
29992         completion tables are bound to be imperfect anyway.
29994 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
29996         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
29997         (semantic-grammar--template-expand): New function.
29998         (semantic-grammar-header, semantic-grammar-footer): Use it.
29999         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
30000         (semantic-grammar-file-regexp): Refine regexp.
30001         (semantic-grammar-eldoc-get-macro-docstring):
30002         Use elisp-get-fnsym-args-string when available.
30003         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
30004         instead of the old eldoc-* names.
30005         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
30006         from elisp-mode.el.  Tweak calling convention.
30007         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
30008         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
30009         elisp--get-fnsym-args-string.
30010         (elisp--highlight-function-argument): Add `prefix' arg.
30011         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
30012         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
30014 2015-05-05  Glenn Morris  <rgm@gnu.org>
30016         * lisp/help-fns.el (describe-function-1):
30017         Handle builtins with advertised calling conventions.  (Bug#20479)
30019 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
30021         Merge branch 'seq-let'
30023         Update `seq-let' documentation
30024         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
30025         with the support of  `&rest'.
30027         Add support for &rest in `seq-let'
30028         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
30029         in the argument list.
30030         * test/automated/seq-tests.el: Add a test for parsing and binding
30031         `&rest' in `seq-let'.
30033 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
30035         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
30036         Add missing increment (Bug#20467).
30037         (eieio-object-value-create): Adjust to new slots representation
30038         (Bug#20467).
30039         (eieio-object-value-create): Fix missed adjustment to new
30040         representation of slots metadata.
30042 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
30044         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
30046 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
30048         Work around "Attempt to modify read-only object"
30049         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
30050         elisp--xref-find-definitions, to work around "Attempt to modify
30051         read-only object" error.
30053         Only skip some variables that have function counterparts
30054         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
30055         Only skip minor-mode-named variable if it's defined in a Lisp
30056         file, and it's in minor-mode-list (bug#20506).
30057         * test/automated/elisp-mode-tests.el
30058         (elisp-xref-finds-both-function-and-variable)
30059         (elisp-xref-finds-only-function-for-minor-mode): New tests.
30061 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30063         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
30064         previous change.
30065         (xref--insert-xrefs): Buttonize the whole line, including the
30066         number at the beginning.
30068         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30069         Make sure we're inside the let bindings.
30070         * test/automated/elisp-mode-tests.el
30071         (elisp-completes-functions-after-let-bindings): New test.
30073 2015-05-04  Glenn Morris  <rgm@gnu.org>
30075         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
30076         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
30077         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
30078         Remove outdated declarations.
30080         Replace instances of "(eval-when-compile (autoload ...))"
30081         * lisp/gnus/gnus-art.el (nneething-get-file-name):
30082         Declare rather than autoload.
30083         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
30084         Remove pointless autoload.
30085         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
30086         (gnus-topic-create-topic, gnus-topic-enter-dribble):
30087         Declare rather than autoload.
30088         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
30089         (mailcap-extension-to-mime): Autoload at run-time.
30090         * lisp/gnus/mm-util.el (latin-unity-massage-name)
30091         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
30092         (latin-unity-representations-present-region):
30093         Declare rather than autoload.
30094         * lisp/gnus/mml-smime.el (epg-make-context)
30095         (epg-passphrase-callback-function): Autoload at run-time.
30096         (epg-context-set-signers, epg-context-result-for)
30097         (epg-new-signature-digest-algorithm)
30098         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
30099         (epg-sign-string, epg-encrypt-string)
30100         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
30101         (epg-configuration, epg-expand-group, epa-select-keys):
30102         Declare rather than autoload.
30103         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
30104         Autoload at run-time.
30105         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
30106         (gnus-registry-get-id-key, gnus-registry-action):
30107         Declare rather than autoload.
30108         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
30109         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
30110         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
30111         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
30112         (spam-stat-split-fancy): Remove pointless autoloads.
30113         * lisp/net/mairix.el: Load gnus-util when compiling.
30114         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
30115         (message-field-value): Declare rather than autoload.
30116         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
30117         Check gnus-alive-p is fbound.
30118         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
30119         (vm-check-for-killed-summary, vm-error-if-folder-empty)
30120         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
30121         Declare rather than autoload.
30123         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
30125         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
30126         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
30128         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
30130         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
30132         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
30133         * lisp/emacs-lisp/package.el (epg-signature-status):
30134         Fix declarations.
30136         * lisp/play/gametree.el (gametree-show-children-and-entry)
30137         (gametree-apply-layout, gametree-mouse-show-subtree)
30138         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
30140         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
30141         Handle cl-defgeneric, cl-defmethod.
30143 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30145         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
30146         Highlight both type and symbol name.
30148         Insert, highlight and align line numbers in xref output
30149         * lisp/progmodes/etags.el (xref-location-line): Specialize for
30150         xref-etags-location.
30151         * lisp/progmodes/xref.el (xref-location-line): New generic method.
30152         (xref-file-location): Add reader for the line slot.
30153         (xref--location-at-point): Skip to the `xref-location' property.
30154         (xref--collect-reference): Drop the line number from description.
30155         (xref--insert-xrefs): Insert, highlight and align line numbers.
30157 2015-05-04  Daniel Colascione  <dancol@dancol.org>
30159         * lisp/simple.el (save-mark-and-excursion--save)
30160         (save-mark-and-excursion--restore): Fix previous commit
30161         (255a011f0ecf004b31c59945b10154b10fac3af1).
30163 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30165         Don't pulse the indentation, or the newline
30166         * lisp/cedet/pulse.el (pulse-lighten-highlight)
30167         (pulse-reset-face): Fall back to the inherited background
30168         attribute in FACE.
30169         (pulse-momentary-highlight-region): Add autoload cookie.
30170         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
30171         indentation, or the newline, if the line's non-empty
30172         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
30174 2015-05-04  Daniel Colascione  <dancol@dancol.org>
30176         Add `save-mark-and-excursion', which has the old
30177         `save-excursion' behavior
30178         * doc/lispref/positions.texi (Excursions):
30179         Document `save-mark-and-excursion'.
30180         * lisp/font-lock.el (font-lock-fontify-block):
30181         Use `save-mark-and-excursion' instead of `save-excursion',
30182         restoring Emacs 24 behavior.
30183         * lisp/simple.el (save-mark-and-excursion--save)
30184         (save-mark-and-excursion--restore): New functions.
30185         (save-mark-and-excursion): New user macro.
30186         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
30187         in `save-excursion' documentation.
30189 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
30191         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30192         Classify lone symbol inside let varlist as variable.
30193         * test/automated/elisp-mode-tests.el
30194         (completest-variables-in-let-bindings): New test.
30196         Add xref-pulse-on-jump
30197         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
30198         Add autoload cookie.
30199         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
30200         (xref--maybe-pulse): New function.
30201         (xref-pop-marker-stack, xref--pop-to-location)
30202         (xref--display-position): Use it.
30203         (xref--location-at-point): Use back-to-indentation.
30205 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
30207         lisp/org/org-{macs,list}.el: Fix lexical warnings
30208         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
30209         (org-list-get-next-item, org-list-get-prev-item)
30210         (org-list-get-children): Mark unused arg `struct'.
30211         (org-list-use-alpha-bul-p): Remove unused var `bul'.
30212         (org-toggle-checkbox): Mark unused var.
30213         (org-update-checkbox-count): Remove unused var `box-num'.
30214         (org-adapt-indentation): Declare.
30215         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
30216         (org-list-send-list): Remove unused var `txt'.
30217         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
30218         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
30219         * lisp/org/org-macs.el: Use `declare'.
30220         (org-with-limited-levels): Declare dyn-bound vars.
30222 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
30224         Fix minor issues with CEDET on MS-Windows
30225         * lisp/cedet/semantic/symref/idutils.el
30226         (semantic-symref-parse-tool-output-one-line): Fix the search
30227         regexp to match MS-Windows file names with drive letters.
30228         (Bug#19468)
30229         * lisp/cedet/semantic/symref/grep.el
30230         (semantic-symref-grep-use-template): Remove "--color=always" from
30231         Grep switches on MS-Windows.
30232         (semantic-symref-grep-shell): Use shell-file-name as the default
30233         value, so this works not only on Posix platforms.
30234         (semantic-symref-perform-search): Use shell-quote-argument instead
30235         of literal '..' for portable quoting of Grep command-line
30236         argument.  Use shell-command-switch instead of a literal "-c".
30237         * lisp/cedet/semantic/bovine/gcc.el
30238         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
30239         for an absolute file name in a portable way.
30241 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
30243         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
30244         (package-import-keyring, package-refresh-contents)
30245         (package-compute-transaction, package--save-selected-packages)
30246         (package-install-from-archive, package-delete)
30247         (package-menu--perform-transaction): Use `inhibit-message' instead.
30248         (package--compile): Set `warning-minimum-level' to :error.
30250 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
30252         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
30253         (terminal-init-screen): Use it (bug#20356).
30254         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
30255         (xterm--extra-capabilities-type): New const.
30256         (xterm-extra-capabilities): Use it.
30257         (xterm--version-handler): Lower the pseudo-version for `screen'.
30259 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
30261         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
30262         Always insert a newline at the end (to avoid mouse-face background
30263         tail at the last line).
30265         elisp-completion-at-point: Prioritize being quoted over funpos
30266         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
30267         Only consider function position when not inside quoted form
30268         (bug#20425).
30269         * test/automated/elisp-mode-tests.el: New file.
30271         Stop vc-print-log from jumping to the top
30272         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
30273         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
30274         is not specified.
30275         (vc-incoming-outgoing-internal): Always pass nil.
30276         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
30277         call it, and don't set vc-sentinel-movepoint (bug#15322).
30278         (vc-print-root-log): Don't fetch the root working revision, nor
30279         pass it to vc-print-log-internal.
30281 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
30283         Fix display of keyboard layouts for right-to-left scripts
30284         * lisp/international/quail.el (quail-insert-kbd-layout):
30285         Force left-to-right paragraph direction.
30287 2015-05-02  K. Handa  <handa@gnu.org>
30289         * src/cmds.c (internal_self_insert): When we insert spaces for
30290         padding, set point before the padding spaces, not after them.
30292 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
30294         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
30296 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
30298         Fix etags-xref-find for references
30299         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
30300         Use `cl-mapcan'.
30301         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
30302         directory if no tags tables are loaded (bug#19468).
30304 2015-05-02  Philipp Stephani  <phst@google.com>
30306         Update the options in whitespace-style defcustom
30307         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
30308         `repeat' because the option is really set-like.  Add missing
30309         options.  Reorder options to match the order in the
30310         documentation.  (Bug#20346)
30312 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
30314         Fix error diagnostics of c-macro-expand
30315         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
30316         too early if no start-marker string was found -- that generally
30317         means cpp exited abnormally, and we still want to show its error
30318         messages to the user.
30320         Don't require Texinfo 5.0 for Emacs documentation
30321         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
30322         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
30323         "@codequoteundirected on", respectively, to avoid requiring
30324         Texinfo 5.x for Emacs documentation.
30326 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
30328         * lisp/files.el (pwd):
30329         When called with a prefix argument, insert the current default
30330         directory at point.
30332 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
30334         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
30335         * lisp/isearch.el (isearch-mode-map): Don't inhibit
30336         function-key-map remapping for backspace (bug#20466).
30338 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
30340         Implement xref-find-references in etags and elisp-mode
30341         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
30342         (elisp-xref-find): Use it.
30343         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
30344         * lisp/progmodes/xref.el (xref-collect-references):
30345         (xref--collect-reference): New functions.
30347 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
30349         Prefer plain characters to Texinfo circumlocutions
30350         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
30351         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
30353         Fix single-quoting style in PDF manuals
30354         The PDF versions of the GNU manuals used curved single quotes to
30355         represent grave accent and apostrophe, which made it a pain to cut
30356         and paste code examples from them.  Fix the PDF versions to use
30357         grave accent and apostrophe for Lisp source code, keystrokes, etc.
30358         This change does not affect the info files, nor does it affect
30359         ordinary uses of curved single quotes in PDF.
30360         * doc/emacs/docstyle.texi: New file, which specifies treatment for
30361         grave accent and apostrophe, as well as the document encoding.
30362         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
30363         * doc/lispintro/emacs-lisp-intro.texi:
30364         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
30365         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
30366         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
30367         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
30368         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
30369         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
30370         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
30371         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
30372         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
30373         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
30374         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
30375         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
30376         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
30377         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
30378         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
30379         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
30380         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
30381         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
30382         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
30383         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
30384         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
30385         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
30386         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
30387         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
30388         * doc/misc/woman.texi:
30389         Use it instead of '@documentencoding UTF-8', to lessen the need for
30390         global changes like this in the future.
30391         * doc/emacs/Makefile.in (EMACS_XTRA):
30392         * doc/lispintro/Makefile.in (srcs):
30393         * doc/lispref/Makefile.in (srcs):
30394         Add dependency on docstyle.texi.
30395         * doc/misc/Makefile.in (style): New macro.
30396         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
30397         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
30398         Use it.
30400 2015-05-01  Glenn Morris  <rgm@gnu.org>
30402         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
30404         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
30405         (help-fns--signature): Declare.
30407         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
30409 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
30411         New macro seq-let, providing destructuring support to seq.el
30412         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
30413         to `cl-destructuring-bind' but works on all sequence types supported
30414         by `seq.el'.  Bump version number to 1.6.
30415         * test/automated/seq-tests.el: Add tests for seq-let.
30416         * doc/lispref/sequences.texi: Add documentation for seq-let.
30418 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
30420         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
30422 2015-05-01  Glenn Morris  <rgm@gnu.org>
30424         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
30426 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
30428         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
30429         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
30430         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
30431         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
30432         (Bug#20445).
30434 2015-05-01  K. Handa  <handa@gnu.org>
30436         * lisp/international/mule-cmds.el (input-method-use-echo-area):
30437         Change :type to 'boolean.
30439 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
30441         Start using proportional fonts in eww by default
30442         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
30443         it seems to work well.
30445         Fix links in tables in shr
30446         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
30447         makes (some) links in tables not work.
30449 2015-05-01  Jan D  <jan.h.d@swipnet.se>
30451         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
30453 2015-04-30  Glenn Morris  <rgm@gnu.org>
30455         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
30456         Update for 2015-02-08 change to indirect-function.
30458         * lisp/term/ns-win.el (ns-get-selection-internal):
30459         Remove declaration for function deleted 2014-10-21.
30461         * lisp/dom.el: Load subr-x when compiling, for when-let.
30463         Silence some compilation warnings
30464         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
30465         * lisp/emulation/cua-base.el (delete-active-region):
30466         * lisp/net/net-utils.el (w32-get-console-output-codepage):
30467         * lisp/term/ns-win.el (ns-own-selection-internal)
30468         (ns-disown-selection-internal, ns-selection-owner-p)
30469         (ns-selection-exists-p, ns-get-selection):
30470         Declare for compiler.
30472         Function declaration updates prompted by 'make check-declare'
30473         * lisp/emacs-lisp/package.el (lm-homepage):
30474         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
30475         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
30476         * lisp/gnus/mml.el (libxml-parse-html-region):
30477         * lisp/gnus/nnrss.el (libxml-parse-html-region):
30478         * lisp/net/eww.el (libxml-parse-html-region):
30479         * lisp/net/shr.el (libxml-parse-html-region):
30480         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
30481         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
30482         * lisp/vc/vc-git.el (vc-annotate-convert-time):
30483         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
30484         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
30485         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
30486         Update declaration.
30488         Remove compatibility code for 20-year old function renaming
30489         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
30490         Make it an obsolete alias.
30491         (idlwave-shell-filter): Change all uses to comint-output-filter.
30493 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
30495         Add ace-window face config
30496         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
30497         configuration.
30499 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
30501         Unclutter 'make doc' output a bit
30502         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
30503         Use make subst rather than sh IFS to split target string apart.
30504         This makes 'make' output easier to follow.
30506         Merge from gnulib
30507         * doc/misc/texinfo.tex: Update from gnulib.
30509 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
30511         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
30512         (package-menu--print-info): Obsolete.
30513         (package-menu--print-info-simple): New function.
30514         (package-menu--refresh): Use it, simplify code, and improve
30515         performance.
30516         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
30517         Tiny performance improvement.
30519         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
30521 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
30523         Omit -Wstrict-overflow workaround in GCC 5
30524         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
30525         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
30527         Merge from gnulib
30528         This incorporates:
30529         2015-04-29 extern-inline: no need for workaround in GCC 5.1
30530         2015-04-26 file-has-acl: port to CentOS 6
30531         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
30533 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
30535         Set next-error-* in xref--xref-buffer-mode
30536         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
30537         Set `next-error-function' and `next-error-last-buffer'.
30538         (xref--next-error-function): New function.
30539         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
30541 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
30543         python.el: Fix warnings on looking-back calls missing LIMIT
30544         * lisp/progmodes/python.el (python-shell-accept-process-output):
30545         Pass LIMIT arg to looking-back.
30547 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30549         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
30550         (package--download-and-read-archives): Use pushnew instead of
30551         append.  If something terrible happened during a previous
30552         download, simply refreshing should now make things work again.
30554 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
30556         Introduce etags-xref-find-definitions-tag-order
30557         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
30558         New variable.
30559         (etags--xref-find-definitions): Use it (bug#19468).
30561 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
30563         PATH- and completion-related fixes in Eshell on MS-Windows
30564         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
30565         MS-Windows, prepend "." to list of directories produced from PATH,
30566         as Windows always implicitly searches the current directory first.
30567         (eshell-force-execution): Make it have a non-nil default value on
30568         MS-Windows and MS-DOS.
30569         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
30570         eshell-force-execution is non-nil, complete on readable files and
30571         directories, not only executables.  When running on MS-Windows,
30572         prepend "." to list of directories produced from PATH, as Windows
30573         always implicitly searches the current directory first.
30575 2015-04-29  Sam Steingold  <sds@gnu.org>
30577         Bury RCIRC buffers when there is no activity
30578         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
30579         (rcirc-bury-buffers): New function.
30580         (rcirc-next-active-buffer): When there is no new activity, use
30581         `rcirc-bury-buffers' to hide all RCIRC buffers.
30583 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
30585         Fix DBUS query result parsing for secrets-search-items
30586         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
30587         parsing.  The function assumed that return value of the
30588         SearchItems method called on a collection is a list of two lists,
30589         however this is true only when no collection is specified.  GNOME
30590         had used to incorrectly return a list of two lists in both cases,
30591         but this was already fixed:
30592         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
30593         incorrect information in the secrets-search-items’ docstring.
30594         (Bug#20449)
30596 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
30598         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
30599         Use `inhibit-message' instead of hiding the previous message
30600         with (message nil).
30602 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
30604         Remove the deprecated INTERNAL_FIELD macro by expanding it
30605         * src/lisp.h (INTERNAL_FIELD): Remove.
30606         (DEFVAR_KBOARD): Modify accordingly.
30607         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
30608         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
30609         * src/buffer.c (compact_buffer): Use BVAR.
30611 2015-04-29  Glenn Morris  <rgm@gnu.org>
30613         Replace an obsolete function alias
30614         * lisp/isearch.el (isearch-yank-x-selection):
30615         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
30616         (mouse-drag-secondary-moving):
30617         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
30618         Replace obsolete alias x-get-selection with gui-get-selection.
30620 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
30622         * lisp/mail/rmailsum.el: Use lexical-binding.
30624 2015-04-29  Glenn Morris  <rgm@gnu.org>
30626         * test/automated/package-test.el (package-test-update-archives-async):
30627         Skip test on hydra.nixos.org.
30629 2015-04-28  Glenn Morris  <rgm@gnu.org>
30631         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
30632         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
30633         (foldout-mouse-hide-or-exit): Use new names for outline functions.
30635         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
30636         Update for 2014-06-26 hideif.el change.
30638         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
30639         (rmail--decode-and-apply): New function.
30640         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
30642         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
30644 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
30646         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
30647         (package-menu--refresh): Delegate obsolete-hiding to
30648         `package--remove-hidden'.
30649         (package--remove-hidden): Disregard high-priority package if it is
30650         older than the installed one.
30652 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
30654         Update source file encoding list
30655         Update admin/notes/unicode, along with coding system cookies in
30656         other files, so that the two match each other better.
30657         * admin/notes/unicode: lisp/language/ethio-util.el and
30658         lisp/language/ethiopic.el also use utf-8-emacs.
30659         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
30660         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
30661         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
30662         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
30663         * etc/refcards/sk-survival.tex:
30664         Add "coding: utf-8" so that this file is not mishandled in a
30665         Latin-1 or Big-5 locale.
30666         * lisp/international/robin.el, lisp/org/ox-ascii.el:
30667         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
30668         * lisp/language/ethio-util.el: Fix trailer.
30670 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
30672         Fix synchronous invocation of Ispell
30673         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
30674         value to ispell-process-directory before calling ispell-init-process.
30675         Don't call set-process-coding-system if ispell-async-processp is nil.
30676         (Bug#20448)
30678 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
30680         * lisp/emacs-lisp/package.el: Skip space and comments in init file
30681         (package--ensure-init-file): Insert snippet at first
30682         non-whitespace non-comments line.  Respects local-vars at the top
30683         of the file.
30685 2015-04-28  Glenn Morris  <rgm@gnu.org>
30687         * lisp/mail/rmail.el (rmail-copy-headers):
30688         Handle rmail-nonignored-headers being nil.  (Bug#18878)
30690         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
30692         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
30693         Don't get confused by a bzrlib version mismatch warning.
30695 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
30697         Change default location of EUDC options file
30698         * etc/NEWS: Document change to EUDC options file's default location.
30699         * lisp/net/eudc-vars.el (eudc-options-file): Use
30700         `locate-user-emacs-file' to change default options file location.
30702 2015-04-27  Glenn Morris  <rgm@gnu.org>
30704         * test/automated/package-test.el (package-test-update-archives-async):
30705         Try to handle the test server script dying.
30707 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30709         * lisp/saveplace.el (save-place-mode): New minor mode.
30710         (save-place): Redefine as an obsolete alias.
30712         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
30713         * lisp/midnight.el: Use lexical-binding.
30714         (midnight-mode): Make it a proper minor mode.
30715         (midnight-buffer-display-time): Make arg non-optional.
30716         (midnight-find): Remove.
30717         (clean-buffer-list-kill-never-regexps)
30718         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
30719         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
30720         contain functions.
30721         (clean-buffer-list): Use cl-find.
30722         Allow clean-buffer-list-kill-never-regexps to contain functions.
30724 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
30726         Bump version of seq.el to 1.5
30727         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
30728         from seq-doseq.  Bump version number of seq.el.
30730 2015-04-27  Glenn Morris  <rgm@gnu.org>
30732         * lisp/mail/rmail.el (rmail-reply):
30733         Decode subject before matching "Re:" prefix.  (Bug#20396)
30735 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
30737         * lisp/emacs-lisp/package.el: Small improvements
30738         (package--with-work-buffer-async): More informative error.
30739         (package-install-user-selected-packages): Rename to
30740         `package-install-selected-packages'.
30742 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30744         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
30745         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
30746         (eieio--class-make): Remove leftover `tag'.
30748 2015-04-27  Glenn Morris  <rgm@gnu.org>
30750         * lisp/gnus/message.el (gnus-extract-address-components):
30751         Remove bogus declaration that was masking previous problem.
30753 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
30755         * lisp/gnus/message.el (message-insert-formatted-citation-line):
30756         Fix typo.  (Bug#20318)
30758 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30760         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
30762         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
30763         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
30764         the buffer in yet another frame.
30765         (reftex-toc-visit-location): Make sure toc-window has focus at the end
30766         when `final' is nil.
30767         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
30768         silence warnings.  Use `--' to clarify that it's internal.
30769         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
30770         (reftex-toc-promote): Clarify unused argument.
30771         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
30772         Add `reftex--' prefix.  Fix all users.
30773         (reftex-toc-promote-prepare): Use _ for dummy variable.
30774         (reftex-toc-restore-region): Rename `m.
30776 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
30778         Fix a typo in bibtex.el
30779         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
30780         last change.  (Bug#20429)
30782         Fix redisplay of frame after loading new fonts
30783         * src/xdisp.c (redisplay_internal): When retrying redisplay of
30784         a frame because new fonts were loaded, disable all redisplay
30785         optimizations on that frame by calling SET_FRAME_GARBAGED.
30786         (Bug#20410)
30788 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
30790         * lisp/info.el (Info-menu): Properly provide the `default'
30791         (Bug#20391)
30793         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
30794         Catch errors from documentation (bug#20418).
30795         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
30797 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
30799         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
30800         Remove redundant ":group 'package".
30802 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
30804         Fix a typo in rmail.el
30805         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
30806         last commit.  (Bug#20429)
30808 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
30810         Introduce xref-prompt-for-identifier
30811         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
30812         (xref--read-identifier): Use it
30813         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
30815 2015-04-26  João Távora  <joaotavora@gmail.com>
30817         `tex-insert-quote' after single `'' opens quotes instead of closing
30818         Without this, it's very hard to precede double quotes with the
30819         apostrophe character, i.e. insert the sequence '``
30820         (quote-backquote-backquote), commonly useful in portuguese, for
30821         instance.
30822         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
30823         preceding chars making `tex-insert-quote' be in the "opening" context.
30825 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
30827         Pass `id' to `completing-read' as def instead of initial input
30828         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
30829         `completing-read' as the default value instead of initial input
30830         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
30832 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
30834         Don't freeze with unreadable processes
30835         Don't freeze if an exiting process can't be read from.  (Bug#19860).
30836         This fixes a bug I introduced in
30837         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
30838         "* process.c: Add sanity checks for file descriptors."
30839         Dmitry Gutov did most of the legwork in finding the problem.
30840         * src/process.c (wait_reading_process_output):
30841         Treat non-running processes that can't be read from
30842         the same as other non-running processes.
30844 2015-04-25  Alan Mackenzie  <acm@muc.de>
30846         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
30847         * lisp/subr.el (remove-yank-excluded-properties): Put
30848         `with-silent-modifications' around only the last three lines of code.
30850 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
30852         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
30853         (package--all-keywords): Deleted variable.
30855         * etc/NEWS: Document package-hiding functionality.
30857 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
30859         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
30861         Clarify the doc string of 'replace-regexp-in-string'
30862         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
30864         Improve doc string of 'insert-buffer-substring'
30865         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
30867         MS-Windows followup for the recent gnulib update
30868         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
30869         acl-internal.c.
30871 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
30873         Spelling fixes
30875         Merge from gnulib
30876         This incorporates:
30877         2015-04-24 file-has-acl: new module, split from acl
30878         2015-04-24 manywarnings: add GCC 5.1 warnings
30879         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
30880         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
30881         2015-04-15 acl: On Linux, check for acls without libacl
30882         2015-04-14 tempname: avoid unused parameter warnings (trivial)
30883         * lib/acl-internal.c: New file, from gnulib.
30884         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
30885         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
30886         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
30887         Update from gnulib.
30889         Port --enable-gcc-warnings to GCC 5.1 x86-64
30890         * lib-src/ebrowse.c (dump_sym):
30891         * lib-src/hexl.c (main):
30892         * src/ccl.c (ccl_driver):
30893         * src/character.c (string_escape_byte8):
30894         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
30895         * src/gnutls.c (Fgnutls_boot):
30896         * src/gtkutil.c (xg_check_special_colors):
30897         * src/image.c (x_build_heuristic_mask):
30898         * src/print.c (safe_debug_print, print_object):
30899         * src/term.c (produce_glyphless_glyph):
30900         * src/xdisp.c (get_next_display_element)
30901         (produce_glyphless_glyph):
30902         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
30903         Don't use a signed format to print an unsigned integer, or vice
30904         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
30905         * src/image.c (png_load_body, jpeg_load_body):
30906         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
30908 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
30910         Add new faces to tsdh-light-theme
30911         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
30912         definitions for Info-quoted, ace-jump-face-foreground,
30913         hl-paren-face, show-paren-match, and show-paren-mismatch.
30915 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
30917         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
30919 2015-04-24  Glenn Morris  <rgm@gnu.org>
30921         * build-aux/gitlog-to-emacslog:
30922         Use raw log format rather than wrapped one.
30924 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
30926         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
30927         (seq-doseq): Fix out-of-scope binding.
30928         Don't call `seq-length at every iteration.
30929         Reduce `if's from 3 to 2 per iteration.
30930         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
30932 2015-04-24  Glenn Morris  <rgm@gnu.org>
30934         * lisp/textmodes/text-mode.el (text-mode-hook):
30935         Move text-mode-hook-identify to default.
30937         * lisp/mouse.el (minor-mode-menu-from-indicator):
30938         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
30940         * lisp/help-fns.el (describe-function): More type checking.
30941         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
30943         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
30944         (Bug#20325)
30946 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
30948         shr: strip leading whitespace when expanding URLs
30949         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
30951 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
30953         Clarify "co-authored" some more
30955         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
30957         Clarify doc strings of functions that search for properties
30958         * src/textprop.c (Fnext_char_property_change)
30959         (Fprevious_char_property_change)
30960         (Fnext_single_char_property_change)
30961         (Fprevious_single_char_property_change, Fnext_property_change)
30962         (Fnext_single_property_change, Fprevious_property_change)
30963         (Fprevious_single_property_change): Clarify doc strings wrt return
30964         value and the optional LIMIT argument.  (Bug#20411)
30966 2015-04-24  Glenn Morris  <rgm@gnu.org>
30968         * test/automated/message-mode-tests.el (message-mode-propertize):
30969         Handle non-writable HOME; eg on hydra.nixos.org.
30971 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
30973         Avoid starting threads by w32-shell-execute
30974         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
30975         local file names, before invoking ShellExecute.  (Bug#20220)
30977 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
30979         Fix following doc-links in `widget-documentation-link-action'
30980         * lisp/wid-edit.el (widget-documentation-link-action): Make
30981         following doc-links less simplistic (Bug#20398).
30983 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
30985         Improve EUDC manual
30986         * doc/misc/eudc.texi (Troubleshooting):
30987         New LDAP troubleshooting subsection.
30989 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
30991         Omit needless "\ " after multibyte then newline
30992         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
30993         (print_object): When print-escape-multibyte is non-nil and a
30994         multibyte character is followed by a newline or formfeed, followed
30995         by a hex digit, don't output a needless "\ " before the hex digit.
30996         * test/automated/print-tests.el (print-hex-backslash): New test.
30998 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
31000         Add a new `inhibit-message' variable
31001         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
31002         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
31003         `inhibit_message' is non-zero.
31004         * etc/NEWS: Add an entry.
31005         * doc/lispref/display.texi: Add an entry for `inhibit-message',
31006         mention it in `message'.
31008 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
31010         Fix last fix in `display-buffer-record-window'.
31011         * lisp/window.el (display-buffer-record-window): Fix last fix.
31013 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
31015         Minor edits in CONTRIBUTE
31016         * CONTRIBUTE: Rearrange instructions about log messages.
31017         Use "Git" capitalized all over.
31018         Use 2 spaces between sentences.
31020 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
31022         * lisp/files.el (basic-save-buffer): Fix argument.
31024         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
31025         In case `(and (null custom-file) init-file-had-error)' do the same
31026         thing we'd do if `(null user-init-file)', which is to either error out
31027         or return nil.  This is in line with `custom-save-all' which would
31028         throw an error in that situation.  (Bug#20355)
31030         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
31031         (package-menu-hide-low-priority): New variable, see its doc.
31032         (package-archive-priorities): Update doc.
31033         (package-desc-priority): New function.
31034         (package-desc-priority-version): Use it.
31035         (package--remove-hidden): New function.
31036         (package-menu--refresh): Use it.
31038         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
31039         (package-menu--hide-obsolete): New variable.
31040         (package--remove-hidden): Use it.
31041         (package-menu-hide-obsolete): New interactive function to toggle
31042         the variable.
31043         (package--quick-help-keys): Document it.
31044         (package-menu-async): Add :version tag.
31045         (package-menu-mode-map): Bind package-menu-hide-obsolete.
31046         (package-desc-status): Indicate non-installed obsolete packages as
31047         avail-obso.
31048         (package-menu-mark-install): Allow installation of avail-obso.
31049         (package-menu--status-predicate): Sort avail-obso with available.
31051 2015-04-22  Alan Mackenzie  <acm@muc.de>
31053         On C-y, stop some text property entries being written into buffer-undo-list
31054         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
31055         `with-silent-modifications'.
31057 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
31059         In display-buffer-record-window record selected window if necessary
31060         * lisp/window.el (display-buffer-record-window): Store selected window
31061         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
31063 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
31065         Fix reftex-citation bug
31066         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
31067         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
31068         integration is enabled and there are no citations in the document
31069         so far.
31071 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
31073         Add or reset based on the presence of MERGE_HEAD
31074         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
31075         `vc-git-resolve-when-done' to `after-save-hook' in either case.
31076         (vc-git-conflicted-files): Add a TODO.
31077         (vc-git-resolve-when-done): Depending on the presence of
31078         MERGE_HEAD, either update the resolved file in the index, or
31079         remove it from there.  (Bug#20292)
31081 2015-04-21  Glenn Morris  <rgm@gnu.org>
31083         * lisp/custom.el (custom-declare-group): No need to purecopy
31084         custom-current-group-alist members following recent change to set
31085         it to nil before dumping.
31087         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
31088         (Bug#20399)
31090 2015-04-21  Daniel Colascione  <dancol@dancol.org>
31092         Unbreak no-op buffer save message
31093         * lisp/files.el (basic-save-buffer): Accept called-interactively as
31094         an argument instead of directly invoking called-interactively-p,
31095         which will always yield nil in that context.
31097 2015-04-21  Alan Mackenzie  <acm@muc.de>
31099         CC Mode: Do nothing in before/after-change-functions for text
31100         property changes
31101         Fixes bug#20266.
31102         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
31103         yank-handled-properties buffer local, and remove 'category from it.
31104         (c-called-from-text-property-change-p): New function.
31105         (c-before-change): Don't do anything if a call of the new function
31106         returns non-nil.
31107         (c-after-change): Don't do much if a call of the new function returns
31108         non-nil.
31109         (c-extend-after-change-region): Put changes to text property 'fontified
31110         inside c-save-buffer-state.
31112 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
31114         Fix byte-compiler warnings about looking-back
31115         * lisp/vc/log-view.el (log-view-end-of-defun-1):
31116         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
31117         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
31118         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
31119         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
31120         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
31121         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
31122         * lisp/org/org.el (org-insert-heading, org-sort-entries):
31123         * lisp/org/org-mouse.el (org-mouse-end-headline)
31124         (org-mouse-context-menu):
31125         * lisp/org/org-clock.el (org-clock-cancel):
31126         * lisp/man.el (Man-default-man-entry):
31127         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
31128         (rmail-ensure-blank-line):
31129         * lisp/mail/footnote.el (Footnote-delete-footnote):
31130         * lisp/mail/emacsbug.el (report-emacs-bug):
31131         * lisp/info.el (Info-follow-reference, Info-fontify-node):
31132         * lisp/info-look.el (info-lookup-guess-custom-symbol):
31133         * lisp/help-fns.el (help-fns--key-bindings):
31134         * lisp/files.el (hack-local-variables):
31135         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
31136         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
31137         (viper-complete-filename-or-exit):
31138         * lisp/emulation/viper-cmd.el (viper-backward-indent):
31139         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
31140         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
31141         * lisp/cus-edit.el (custom-face-edit-value-create):
31142         * lisp/calendar/todo-mode.el (todo-set-item-priority)
31143         (todo-filter-items-1, todo-convert-legacy-files)
31144         (todo-prefix-overlays): Add explicit second arg to looking-back.
31146 2015-04-20  Glenn Morris  <rgm@gnu.org>
31148         Avoid non-nil current-load-list at startup
31149         * src/process.c (init_process_emacs): Move Fprovide statement...
31150         (syms_of_process): ... to here.
31152         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
31154         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
31155         in emacs -Q.
31157 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
31159         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
31160         (Bug#20330)
31162 2015-04-20  Glenn Morris  <rgm@gnu.org>
31164         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
31166         Tweak exec-path in uninstalled case
31167         * src/callproc.c (init_callproc): If running uninstalled, do not
31168         include eventual installation libexec directory in exec-path.
31170 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
31172         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
31173         cache keywords.
31174         (package-menu-filter): Accept a list of keywords.
31175         (package--all-keywords): New variable to cache known keywords.
31176         (package-all-keywords): Populate it if necessary.
31177         (package-refresh-contents): Reset it.
31179         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
31180         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
31181         as special keywords which match agains package archive and status
31182         respectively.
31183         * etc/NEWS: Document it.
31185 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
31187         Describe and index "empty overlays".
31188         * doc/lispref/display.texi (Overlays): Improve indexing.
31189         (Managing Overlays): Describe "empty" overlays.
31190         (Overlay Properties, Finding Overlays): Add cross-reference to
31191         where empty overlays are described.
31193 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
31195         Spelling fixes
31197         Quote 'like this' in top-level files
31198         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
31199         Prefer to single-quote 'like this' (instead of the older style
31200         `like this').
31201         * configure.ac: Fix some space-before-tab problems that 'git commit'
31202         complained about.
31204         Use bool for boolean in textprop.c, undo.c
31205         * src/textprop.c (soft, hard): Now constants instead of macros.
31206         (validate_plist): Rewrite to avoid need for boolean local.
31207         (interval_has_all_properties, interval_has_some_properties)
31208         (interval_has_some_properties_list, add_properties)
31209         (remove_properties, get_char_property_and_overlay)
31210         (Fnext_single_char_property_change)
31211         (Fprevious_single_char_property_change, add_text_properties_1)
31212         (Fremove_text_properties, Fremove_list_of_text_properties)
31213         (copy_text_properties):
31214         * src/tparam.c (tparam1):
31215         * src/undo.c (record_change, record_property_change)
31216         (syms_of_undo):
31217         Use 'true' and 'false' for booleans.
31219 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
31221         * lisp/vc/vc-git.el (vc-git-find-file-hook):
31222         Call `smerge-start-session' even when dealing with a stash
31223         conflict (bug#20292).
31225 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
31227         Add option to eshell/clear to clear scrollback.
31228         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
31229         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
31230         scrollback contents are cleared.
31231         * etc/NEWS: Describe change.
31232         * doc/misc/eshell.texi: Add entry for `clear'.
31234 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
31236         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
31237         where either will do.
31239 2015-04-19  Steve Purcell  <steve@sanityinc.com>
31241         Assume package archive-contents are UTF8-encoded
31242         * lisp/emacs-lisp/package.el (package--read-archive-file):
31243         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
31244         downloaded and cached archive-contents files, so that non-ASCII
31245         characters in package descriptions are displayed correctly in the
31246         `list-packages' menu.  (Bug#20231)
31248 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
31250         Abort when looking at stashed changes
31251         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
31252         stashed changes (bug#20292).
31254 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
31256         Refactor low-level printing for simplicity
31257         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
31258         PRINTPREPARE; doable now that we assume C99.  All callers changed.
31259         (PRINTCHAR): Remove, as it adds more mystery than clarity.
31260         All callers changed.
31261         (strout): Assume that caller computes length.  All callers changed.
31262         (print_c_string): New function.
31263         (write_string, write_string_1): Compute length instead of asking
31264         the caller to compute it.  All callers changed.
31265         (write_string): Simplify by using write_string_1.
31266         (write_string_1): Simplify by using print_c_string.
31267         (Fterpri): Compute default val more clearly.
31268         (Fprin1_to_string, print_object):
31269         Assume C99 to avoid unnecessary nesting.
31270         (print_object): Prefer print_c_string to multiple printchar, or
31271         to calling strout with -1 length.  Coalesce into sprintf when
31272         this is easy.
31274 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
31276         Prefer "Bug#1234" in commit messages (Bug#20325)
31277         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
31278         as this isn't useful for Git.
31279         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
31281 2015-04-18  Glenn Morris  <rgm@gnu.org>
31283         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
31284         (Bug#19506)
31286 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
31288         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
31289         Do not use `chomp' as a function.  (Bug#19505)
31291 2015-04-18  Glenn Morris  <rgm@gnu.org>
31293         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
31295         * doc/emacs/misc.texi (Sorting): Small edit.
31296         (Bug#19896)
31298         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
31300 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
31302         css-mode.el: Support multi-line comment filling
31303         (Bug#20256)
31304         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
31305         comment filling.
31306         (css-adaptive-fill): New function.
31307         (css-mode): Set `adaptive-fill-function'.
31308         (scss-mode): Set `comment-continue'.
31310 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
31312         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
31313         Better error messages.
31315 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
31317         Minor improvements in Bulgarian input methods
31318         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
31319         Replace U+042C with U+045D, as the former character is not used in
31320         the modern Bulgarian language.
31321         (Bug#20350)
31323 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
31325         Improve EUDC manual
31326         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
31327         authentication schemes.  Add index items.  Shorten example server
31328         name.
31330 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
31332         Don't show both feature and function with the same name
31333         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
31334         Don't show both feature and function with the same name.
31336         (elisp--xref-identifier-location): Skip variable, if it's also
31337         a function
31338         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
31339         Avoid returning both the variable and the function for the same
31340         minor mode.
31342 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
31344         Fix fontification of keywords clobbered by the prompt
31345         * lisp/comint.el (comint-output-filter): Remove the uses of
31346         with-silent-modifications I introduced as part of the last change.
31347         This fixes, e.g., erratically missing highlighting when running
31348         ./configure --help; ./configure in a shell-mode buffer with
31349         compilation-shell-minor-mode turned on.
31351 2015-04-17  Glenn Morris  <rgm@gnu.org>
31353         * admin/authors.el (authors-valid-file-names)
31354         (authors-renamed-files-alist): Additions.
31356 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
31358         * lisp/indent.el (indent-region): Don't deactivate the mark.
31359         (Bug#20357)
31361 2015-04-17  Sam Steingold  <sds@gnu.org>
31363         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
31365 2015-04-16  Leo Liu  <sdl.web@gmail.com>
31367         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
31369 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
31371         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
31372         Don't use `pcomplete' any more.
31374 2015-04-16  Glenn Morris  <rgm@gnu.org>
31376         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
31378 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
31380         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
31381         * configure.ac (LIBJPEG): Leave it empty for MinGW.
31383 2015-04-16  Glenn Morris  <rgm@gnu.org>
31385         * lisp/replace.el (query-replace-from-to-separator):
31386         Delay initialization to avoid rogue setting after startup.
31388 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
31390         Pre-4.6 GCC succeeds with unknown option
31391         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
31392         (Bug#20338)
31394 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31396         '[:graph:]' now excludes whitespace, not just ' '
31397         * doc/lispref/searching.texi (Char Classes):
31398         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
31399         sans whitespace (not sans space).
31400         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
31401         not just space.
31402         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
31404 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
31406         * lisp/subr.el (substitute-key-definition-key, special-form-p)
31407         (macrop): Drop deprecated second arg to indirect-function.
31408         (looking-back): Make the second arg non-optional.
31410         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
31411         command is actually sent to the shell.
31413 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31415         Port jpeg configuration to Solaris 10 with Sun C
31416         * configure.ac: Check for jpeglib 6b by trying to link it, instead
31417         of relying on cpp magic that has problems in practice.  Check for
31418         both jpeglib.h and jerror.h features.  Remove special case for
31419         mingw32, which should no longer be needed (and if it were needed,
31420         should now be addressable by hotwiring emacs_cv_jpeglib).
31421         (Bug#20332)
31423 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
31425         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
31426         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
31427         Move to elisp-mode.el.
31428         (lisp-mode-variables): (Re)move elisp-specific settings.
31429         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
31430         from lisp-mode-variables.
31431         (elisp--font-lock-flush-elisp-buffers): New function, moved from
31432         lisp-mode.el.
31434         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
31435         Avoid pathological slowdown at top-level in large file.
31437 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31439         Standardize names of ChangeLog history files
31440         Suggested by Glenn Morris in:
31441         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
31442         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
31443         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
31444         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
31445         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
31446         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
31447         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
31448         Remove.
31450         Split top-level entries into pre- and post-April 7
31451         This more clearly distingiushes pre-April-7 ChangeLog entries (which
31452         are for top-level files only) from post-April-7 entries (which are
31453         about files at all levels.  Problem reported by Glenn Morris in:
31454         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
31455         * ChangeLog.1: Move post-April-7 entries from here ...
31456         * ChangeLog.2: ... to this new file.
31457         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
31459 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
31461         Fix recent cus-start changes that added customize-rogues
31462         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
31463         vars early.
31464         * lisp/loadup.el ("cus-start"): Move to the end to reduce
31465         customize-rogue.
31467 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
31469         Define cl-concatenate as an alias to seq-concatenate
31470         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
31471           code by making cl-concatenate an alias to seq-concatenate.
31473 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
31475         * src/lread.c (intern_1): Make sure we'd find the symbol we add
31476         (Bug#20334)
31477         * src/xfaces.c (resolve_face_name): Don't use `intern' with
31478         Lisp_Strings.
31480 2015-04-15  Glenn Morris  <rgm@gnu.org>
31482         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
31484 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
31486         Clean up gnus-uu saving code slightly
31487         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
31488         save-restriction/widen calls make more sense.
31490 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
31492         Make [:graph:] act like [:print:] sans space
31493         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
31494         [:graph:] so that it matches everything that [:print:] does,
31495         except for space.
31496         * doc/lispref/searching.texi (Char Classes):
31497         * etc/NEWS:
31498         * lisp/emacs-lisp/rx.el (rx):
31499         Document [:graph:] to be [:print:] sans ' '.
31500         * src/character.c, src/character.h (graphicp): New function.
31501         * src/regex.c (ISGRAPH) [emacs]: Use it.
31502         (BIT_GRAPH): New macro.
31503         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
31504         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
31505         Return BIT_GRAPH for RECC_GRAPH.
31506         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
31507         and ISPRINT if BIT_PRINT.
31509 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
31511         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
31512         Don't use call-next-method in a cl-defmethod.
31514         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
31515         (eieio--class-p): Remove, provided by cl-defstruct.
31517 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
31519         Add seq-intersection and seq-difference to the seq library
31520         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
31521         New functions.
31522         * test/automated/seq-tests.el: Add tests for seq-intersection and
31523         seq-difference.
31524         * doc/lispref/sequences.texi: Add documentation for seq-intersection
31525         and seq-difference.
31527 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
31529         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
31530         to avoid leaking internals.
31532 2015-04-14  Sam Steingold  <sds@gnu.org>
31534         package--ensure-init-file: widen requires save-restriction
31536 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
31538         Improve the commit-msg Git hook for unibyte environments
31539         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
31540         in unibyte environments.  (Suggested by Paul Eggert
31541         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
31542         [:print:], based on UTF-8 sequences of the unprintable characters.
31544         Describe problems with cursor caused by Windows Magnifier
31545         * etc/PROBLEMS: Describe the problem with cursor shape on
31546         MS-Windows due to Windows Magnifier.
31547         (Bug#20271)
31549         Make [:print:] support non-ASCII characters correctly
31550         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
31551         (BIT_PRINT): New bit mask.
31552         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
31553         * src/character.c (printablep): New function.
31554         * src/character.h (printablep): Add prototype.
31555         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
31556         of 'print', 'alnum', and 'alphabetic'.
31557         * doc/lispref/searching.texi (Char Classes): Document the new
31558         behavior of [:print:].
31559         * etc/NEWS: Mention the new behavior of [:print:].
31561         Assign correct general-category and names to surrogates
31562         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
31563         surrogates.  This avoids assigning them the default
31564         general-category of 'Cn', i.e. unassigned codepoints.
31565         (unidata-get-name): Give surrogates synthetic names.
31567 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
31569         Assume C89 offsetof in xterm.c, xlwmenu.c
31570         * lwlib/xlwmenu.c (offset):
31571         * src/xterm.c (cvt_string_to_pixel_args):
31572         Use offsetof, not XtOffset.
31574 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
31576         Assume C89 offsetof in widget.c
31577         * src/widget.c (XtOffset): Remove; no longer needed.
31578         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
31580         Fix think-o in previous patch
31581         * src/window.c (count_windows, get_leaf_windows):
31582         Don't optimize count_windows incorrectly.
31584 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
31586         Avoid some int overflows in window.c
31587         * src/print.c (print_object):
31588         * src/window.c (sequence_number):
31589         * src/window.h (struct window.sequence_number):
31590         Don't assume window sequence number fits in int.
31591         * src/window.c (window_select_count):
31592         * src/window.h (struct window.use_time, window_select_count):
31593         Don't assume window use time fits in int.
31594         * src/window.c (Fsplit_window_internal):
31595         Don't assume user-supplied integer, or sum, fits in int.
31596         (Fset_window_configuration, count_windows, get_leaf_windows)
31597         (save_window_save, Fcurrent_window_configuration):
31598         Use ptrdiff_t for object counts.
31599         (Fset_window_configuration): Omit unused local 'n'.
31600         (count_windows): Simplify by writing in terms of get_leaf_windows.
31601         (get_leaf_windows): Don't store through FLAT if it's null.
31602         (extract_dimension): New static function.
31603         (set_window_margins, set_window_fringes, set_window_scroll_bars):
31604         Use it to avoid undefined behavior when converting user-supplied
31605         integer to 'int'.
31607 2015-04-13  Glenn Morris  <rgm@gnu.org>
31609         Minor doc copyedits
31610         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
31611         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
31613 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
31615         [Gnus] Catch the invalid-operation that idna.el will issue
31616         * lisp/gnus/gnus-art.el (gnus-use-idna):
31617         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
31618         * lisp/gnus/message.el (message-use-idna):
31619         Catch the invalid-operation that idna.el will issue.
31621 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
31623         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
31625 2015-04-13  Sam Steingold  <sds@gnu.org>
31627         package--ensure-init-file: widen before looking for
31628         "(package-initialize)"
31630 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
31632         Change diff-switches default to `-u' (Bug#20290)
31633         * doc/emacs/files.texi (Comparing Files): Document the new default
31634         value of `diff-switches'.
31635         * doc/emacs/trouble.texi (Sending Patches): Document the preference
31636         for unified diff format.  Escape the plus in the suggested `-F' regexp
31637         value.
31638         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
31640 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
31642         (gnus-group--setup-tool-bar-update): Fix last change
31643         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
31644         cursor-sensor-functions should be a list of functions.
31646 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
31648         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
31649         Use gmm-called-interactively-p.
31651 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
31653         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
31654         (Bug#20321)
31655         * lisp/cus-start.el (read-buffer-function): Don't advertise
31656         iswitchb-read-buffer any more.
31657         (iswitchb): Don't tweak this obsolete group any more.
31659 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
31661         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
31663         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
31664         Adding a string after a constructor's argument list will use
31665         that string as the constructor function docstring.  If this string
31666         is absent but the struct itself was given a docstring, use that as
31667         the constructor's docstring.
31668         Fixes bug#17284.
31670 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
31672         Deprecate `intangible' and `point-entered' properties
31673         * lisp/emacs-lisp/cursor-sensor.el: New file.
31674         * lisp/simple.el (pre-redisplay-functions): New hook.
31675         (redisplay--pre-redisplay-functions): New function.
31676         (pre-redisplay-function): Use it.
31677         (minibuffer-avoid-prompt): Mark obsolete.
31678         (redisplay--update-region-highlight): Adapt it to work as a function on
31679         pre-redisplay-functions.
31680         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
31681         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
31682         than point-entered to make the prompt intangible.
31683         * lisp/forms.el: Move `provide' calls to the end.
31684         (forms-mode): Don't use `run-hooks' on a local var.
31685         (forms--make-format, forms--make-format-elt-using-text-properties):
31686         Use cursor-intangible rather than `intangible'.
31687         (forms-mode): Enable cursor-intangible-mode.
31688         * lisp/isearch.el (isearch-mode): Use defvar-local.
31689         (cursor-sensor-inhibit): Declare.
31690         (isearch-mode): Set cursor-sensor-inhibit.
31691         (isearch-done): Set it back.
31692         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
31693         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
31694         any more.
31695         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
31696         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
31697         Add Edebug spec.
31698         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
31699         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
31700         inhibit-point-motion-hooks any more.
31701         (ses--cell-at-pos, ses--curcell): New functions, extracted from
31702         ses-set-curcell.
31703         (ses-set-curcell): Use them.
31704         (ses-print-cell, ses-setup): Use cursor-intangible instead of
31705         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
31706         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
31707         Use ses--cell-at-pos.
31708         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
31709         extracted from ses-command-hook.  Make them work with multiple windows
31710         displaying the same buffer.
31711         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
31712         Enable cursor-intangible-mode.
31713         (ses-command-hook): Remove cell highlight and mode-line update code.
31714         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
31715         Update for new name of text-property holding the cell name.
31716         (ses-rename-cell): Don't mess with mode-line-process.
31717         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
31718         cursor-sensor-functions property instead of point-entered.
31719         (erc-insert-timestamp-right, erc-format-timestamp):
31720         Use cursor-intangible rather than `intangible'.
31721         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
31722         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
31723         cursor-sensor-mode if needed.
31724         (erc-echo-timestamp): Adapt to calling convention of
31725         cursor-sensor-functions.
31726         (erc-insert-timestamp-right): Remove unused vars `current-window' and
31727         `indent'.
31728         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
31729         (gnus-update-group-mark-positions): Remove unused `topic' var.
31730         (gnus-group-insert-group-line): Remove unused var `header'.
31731         (gnus-group--setup-tool-bar-update): New function.
31732         (gnus-group-insert-group-line): Use it.
31733         (gnus-group-update-eval-form): Declare local
31734         dynamically-bound variables.
31735         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
31736         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
31737         (gnus-group-prepare-topics, gnus-topic-update-topic)
31738         (gnus-topic-change-level, gnus-topic-catchup-articles)
31739         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
31740         Use inhibit-read-only.
31741         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
31742         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
31743         * lisp/textmodes/reftex-index.el (reftex-display-index):
31744         Use cursor-intangible-mode if available.
31745         (reftex-index-post-command-hook): Check cursor-intangible.
31746         * lisp/textmodes/reftex-toc.el (reftex-toc):
31747         Use cursor-intangible-mode if available.
31748         (reftex-toc-recenter, reftex-toc-post-command-hook):
31749         Check cursor-intangible.
31750         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
31751         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
31752         (sgml-tags-invisible): Use with-silent-modifications and
31753         inhibit-read-only.  Enable cursor-sensor-mode.
31754         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
31755         calling convention of cursor-sensor-functions.
31756         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
31757         (table-point-entered-cell-hook, table-point-left-cell-hook):
31758         Don't autoload.
31759         (table-cell-entered-state): Remove var.
31760         (table--put-cell-point-entered/left-property)
31761         (table--remove-cell-properties):
31762         Use cursor-sensor-functions rather than point-entered/left.
31763         (table--point-entered/left-cell-function): Merge
31764         table--point-entered-cell-function and table--point-left-cell-function
31765         and adjust to calling convention of cursor-sensor-functions.
31767         Update ldef-boots.el
31769         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
31771         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
31773         Collapse successive char deletions in the undo log
31774         * src/cmds.c (remove_excessive_undo_boundaries): New function,
31775         extracted from Fself_insert_command.
31776         (Fdelete_char, Fself_insert_command): Use it.
31777         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
31778         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
31780         xterm and OSC 52: Add NEWS entry, and tweak the code
31781         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
31782         to top-level.
31783         (terminal-init-xterm-activate-set-selection): Set a terminal property.
31784         (xterm--set-selection): Use it instead of checking the value of
31785         `terminal-initted'.  Don't use string-bytes.
31787 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
31789         xterm.el: Implement OSC-52 functionality for setting the X selection
31790         * lisp/term/xterm.el (xterm-max-cut-length): New var.
31791         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
31792         New funs.
31793         (terminal-init-xterm, xterm--version-handler): Use them.
31795 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
31797         Remove left over code from when we used an obsolete/loaddefs.el file
31798         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
31799         when we used an obsolete/loaddefs.el file.
31801         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
31802         (semanticdb-without-unloaded-file-searches): Use declare.
31803         (semantic-fw-add-edebug-spec): Remove.
31805         * lisp/completion.el (completion-lisp-mode-hook):
31806         Use completion-separator-chars rather than local key binding.
31808         * src/*.c: Set deactivate_mark buffer-locally
31809         (Bug#20260)
31810         * src/insdel.c (prepare_to_modify_buffer_1):
31811         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
31812         buffer-locally.
31814 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
31816         python.el: Keep symmetry on sexp navigation with parens
31817         (Bug#19954)
31818         * lisp/progmodes/python.el
31819         (python-nav--forward-sexp): Add argument skip-parens-p.
31820         (python-nav-forward-sexp, python-nav-backward-sexp)
31821         (python-nav-forward-sexp-safe)
31822         (python-nav-backward-sexp-safe): Use it.
31823         * test/automated/python-tests.el
31824         (python-nav-forward-sexp-1): Fix test.
31826 2015-04-12  João Távora  <joaotavora@gmail.com>
31828         Don't use `setq-local' in Gnus code
31829         This might break upstream builds with older Emacsen
31830         * lisp/gnus/message.el (message-mode): Use `set' and
31831         `make-local-variable' instead of `setq-local'.
31833 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
31835         Update Makefile.in's .PHONY dependencies
31836         * Makefile.in (change-history-commit, master-branch-is-current)
31837         (no-ChangeLog): Now phony.
31839         Remove configure's --with-mmdf option
31840         * configure.ac (MAIL_USE_MMDF): Remove.
31841         * etc/NEWS: Document this.
31842         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
31843         (Bug#20308)
31845         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
31846         That way, 'make install' won't think it's a man page.
31847         Reported by Ashish SHUKLA in:
31848         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
31850         Improve 'make change-history' prereq tests
31851         * Makefile.in (gen_origin): Fix to match what's in the master branch.
31852         (no-ChangeLog, master-branch-is-current): New rules.
31853         (change-history): Depend on them, to avoid similar future problems.
31854         Escape the local-variables string to pacify Emacs when editing
31855         Makefile.in.
31857 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
31859         * test/automated/package-test.el (with-package-test):
31860         Kill Packages buffer.
31862         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
31863         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
31864         "Upgrade" last, and use capitalized instead of all-caps.
31866         * lisp/emacs-lisp/package.el: Completely silence async operations.
31867         (package--make-autoloads-and-stuff): Silence autoloads.
31868         (package--save-selected-packages): New function, silences
31869         `customize-save-variable'.
31870         (package--user-selected-p, package-install-from-buffer)
31871         (package-delete, package-install): Use it.
31872         (package-install-from-archive)
31873         (package-menu--perform-transaction): Silence.
31874         (package-menu-execute): Feedback when operation starts.
31876         Use delay-mode-hooks when visiting the init-file
31877         * lisp/emacs-lisp/package.el (package--ensure-init-file):
31878         delay-mode-hooks.
31879         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
31881         * lisp/files.el: Only message when saving if save-silently is nil.
31882         (save-silently): New variable.
31883         (files--message): New function.
31884         (find-file-noselect, save-buffer, basic-save-buffer)
31885         (basic-save-buffer-2, save-some-buffers, not-modified)
31886         (append-to-file): Use them.
31888 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
31890         Support debug declarations in pcase macros
31891         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
31892         (pcase-UPAT): Use it.  Remove "`".
31893         (pcase--edebug-match-macro): New function.
31894         (pcase-defmacro): Support debug declarations.
31895         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
31896         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
31897         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
31898         Add debug declaration.
31900         pcase.el: Edebug support for `app' and vector patterns
31901         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
31902         (pcase-UPAT): Use it.  Support `app' patterns.
31903         (pcase-QPAT): Support vector patterns.
31905         edebug.el: Disambiguate vector specifications
31906         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
31907         `(vector ...)' as a vector specification, not as a sublist.
31909         (gnus-summary-refer-thread): Don't clobber unread articles
31910         This fixes a bug where `A T' causes "random" articles to become marked
31911         as read.
31912         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
31913         gnus-newsgroup-unreads remains sorted.
31915         mouse-sel.el: Fix mouse-sel-get-selection-function
31916         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
31917         Use gui--last-selected-text-primary instead of no longer existing
31918         gui-last-selected-text.
31920         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
31922         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
31924 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
31926         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
31928         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
31929         right buffer.
31931         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
31932         (byte-compile--interactive): New var.
31933         (byte-compile--message): New function.
31934         (byte-compile-log-1, byte-force-recompile)
31935         (byte-recompile-directory, byte-recompile-file)
31936         (byte-compile-file, compile-defun)
31937         (byte-compile-file-form-defmumble, byte-compile)
31938         (byte-compile-file-form-defalias, display-call-tree): Use it.
31940         * lisp/files.el: Don't message when nothing happened.
31941         (save-some-buffers, basic-save-buffer): Before messaging to say
31942         "nothing was saved" check if (called-interactively-p 'any).
31944 2015-04-12  João Távora  <joaotavora@gmail.com>
31946         Summary: Improve sexp-based movement in message-mode
31947         Works by giving citations and smileys a different syntax.  This helps
31948         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
31949         sexp-based movement.
31950         * lisp/gnus/message.el (message--syntax-propertize): New function.
31951         (message-mode): Set syntax-related vars.
31952         (message-smileys): New variable.
31953         * test/automated/message-mode-tests.el: New file
31955 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
31957         Use bool for boolean in window.c
31958         * src/window.c: Omit unnecessary static function decls.
31959         (adjust_window_count, select_window, Fselect_window)
31960         (window_body_width, Fwindow_body_height, Fwindow_body_width)
31961         (set_window_hscroll, check_window_containing, Fwindow_at)
31962         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
31963         (unshow_buffer, replace_window, recombine_windows)
31964         (add_window_to_list, candidate_window_p, next_window)
31965         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
31966         (Fget_buffer_window, Fdelete_other_windows_internal)
31967         (replace_buffer_in_windows_safely, set_window_buffer)
31968         (Fset_window_buffer, Fforce_window_update)
31969         (temp_output_buffer_show, make_parent_window)
31970         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
31971         (resize_frame_windows, Fsplit_window_internal)
31972         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
31973         (Fresize_mini_window_internal, mark_window_cursors_off)
31974         (window_scroll, window_scroll_pixel_based)
31975         (window_scroll_line_based, scroll_command, Fscroll_other_window)
31976         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
31977         (Fmove_to_window_line, Fset_window_configuration)
31978         (delete_all_child_windows, apply_window_adjustment)
31979         (set_window_fringes, set_window_scroll_bars)
31980         (Fset_window_vscroll, foreach_window, foreach_window_1)
31981         (compare_window_configurations, Fcompare_window_configurations):
31982         Prefer 'bool', 'true', and 'false' for booleans.
31983         * src/window.h (WINDOW_MODE_LINE_LINES)
31984         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
31986 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
31988         Speed up byte-compilation and autoload generation by avoiding mode-hooks
31989         This prevents emacs-lisp-mode-hook from being run everytime an
31990         autoload file is generated, which can account for a fraction of
31991         package installation time depending on the hooks the user has
31992         configured.
31993         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
31994         * lisp/emacs-lisp/autoload.el (autoload-find-file)
31995         (autoload-find-generated-file): Use delay-mode-hooks.
31997         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
31998         (package-menu-refresh): Respect async and do new package checking.
31999         (list-packages): Use `package-menu-refresh' instead of repeating code.
32001         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
32002         (package--quick-help-keys): New variable.
32003         (package--prettify-quick-help-key): New function.
32004         (package-menu-quick-help): Use it.
32006         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
32007         (package--build-compatibility-table): Require finder.
32009         * test/automated/package-test.el: Fix new test.
32011         * lisp/emacs-lisp/package.el: Silence async operations.
32012         (package--silence): New variable.
32013         (package--message): New function.
32014         (package-import-keyring, package-refresh-contents)
32015         (package-compute-transaction, package-install, package-delete)
32016         (package-menu--perform-transaction, package-menu-execute): Use it.
32018         * test/automated/package-test.el: Test async functionality.
32019         (package-test-update-archives-async): New test.
32021 2015-04-11  Daiki Ueno  <ueno@gnu.org>
32023         Utilize `make-process' in epg.el
32024         * lisp/epg.el (epg-error-output): Abolish.
32025         (epg-context): New slot `error-buffer'.
32026         (epg--start): Use `make-process' and `make-pipe-process'.
32027         (epg--process-filter): Remove code separating stderr from stdout.
32028         (epg-wait-for-completion): Simplify `error-output' handling.
32029         (epg-reset): Dispose error buffer.
32031 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32033         * .gitignore: Ignore doc temps and outputs.
32035         Port commit-msg to MSYS Bash+Gawk
32036         See Eli Zaretskii in:
32037         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
32038         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
32039         (cent_sign, print_at_sign, at_sign): Revert previous change.
32040         (print_at_sign): Prepend "BEGIN".
32041         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
32043         Port commit-msg to broken MS-Windows shell
32044         * build-aux/git-hooks/commit-msg (cent_sign):
32045         Just use UTF-8 here rather than ASCII + printf, as the latter fails
32046         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
32047         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
32049 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
32051         Support GnuTLS v3.4 and later on MS-Windows
32052         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
32053         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
32054         GnuTLS DLL to load according to value of libgnutls-version.
32055         (Bug#20294)
32057 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
32059         Minor quoting etc. fixes to misc manuals
32060         Fix some minor quoting and spacing issues.  Distinguish more
32061         clearly among grave accent and apostrophe (which are ASCII) and
32062         single quote (which is not).  Prefer the standard terms
32063         "apostrophe" and "grave accent" to alternative names that can be
32064         confusing.  Use apostrophes to single-quote ASCII text.
32065         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
32066         rather than approximating it in ASCII with grave accent.
32068 2015-04-11  Daiki Ueno  <ueno@gnu.org>
32070         Respect more keyword args in `make-process'
32071         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
32072         keywords as documented.
32074 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
32076         Extract ChangeLog entries when committing a directory
32077         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
32078         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
32079         Add a FIXME comment.
32080         (log-edit-changelog-entries): Extract from
32081         `log-edit-changelog-entries', handle FILE being a directory
32082         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
32084 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
32086         Fix problems found by --enable-gcc-warnings
32087         * src/process.c (create_process, Fmake_pipe_process)
32088         (Fmake_network_process): Omit unused locals.
32090         Fix commit-msg to handle scissors lines
32091         * build-aux/git-hooks/commit-msg:
32092         Ignore every line after a scissors line, such as a line generated
32093         by 'git commit -v'.  Problem reported by Johan Bockgård in:
32094         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
32096         port commit-msg to Gawk 3.0.4 (1999)
32097         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
32098         (print_at_sign, at_sign): New vars.  Use them to avoid problems
32099         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
32100         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
32102         Have commit-msg report commit failure
32103         * build-aux/git-hooks/commit-msg: If the commit is aborted,
32104         say so.  Simplify by doing this at the end.  Problem reported
32105         by Eli Zaretskii in:
32106         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
32108 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
32110         Clean up LDAP Configuration section of EUDC manual
32111         * doc/misc/eudc.texi: Combine indices.
32112         (LDAP Configuration): Use command markup.  Add index entries.
32113         Change formatting.  Wrap long lines.  Add noindent markup.
32115 2015-04-10  Daiki Ueno  <ueno@gnu.org>
32117         Add facility to collect stderr of async subprocess
32118         * src/w32.h (register_aux_fd): New function declaration.
32119         * src/w32.c (register_aux_fd): New function.
32120         * src/process.h (struct Lisp_Process): New member stderrproc.
32121         * src/process.c (PIPECONN_P): New macro.
32122         (PIPECONN1_P): New macro.
32123         (Fdelete_process, Fprocess_status, Fset_process_buffer)
32124         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
32125         (Fcontinue_process): Handle pipe process specially.
32126         (create_process): Respect p->stderrproc.
32127         (Fmake_pipe_process): New function.
32128         (Fmake_process): Add new keyword argument :stderr.
32129         (wait_reading_process_output): Specially handle a pipe process when
32130         it gets an EOF.
32131         (syms_of_process): Register Qpipe and Smake_pipe_process.
32132         * doc/lispref/processes.texi (Asynchronous Processes): Document
32133         `make-pipe-process' and `:stderr' keyword of `make-process'.
32134         * lisp/subr.el (start-process): Suggest to use `make-process' handle
32135         standard error separately.
32136         * test/automated/process-tests.el (process-test-stderr-buffer)
32137         (process-test-stderr-filter): New tests.
32138         * etc/NEWS: Mention new process type `pipe' and its usage with the
32139         `:stderr' keyword of `make-process'.
32141 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
32143         Minor quoting etc. fixes to lispref manual
32144         * doc/lispref/tips.texi (Documentation Tips):
32145         Distinguish more clearly among grave accent, apostrophe,
32146         and single quote.
32147         * doc/lispref/README, doc/lispref/buffers.texi:
32148         * doc/lispref/commands.texi, doc/lispref/control.texi:
32149         * doc/lispref/customize.texi, doc/lispref/display.texi:
32150         * doc/lispref/elisp.texi, doc/lispref/files.texi:
32151         * doc/lispref/frames.texi, doc/lispref/hash.texi:
32152         * doc/lispref/help.texi, doc/lispref/internals.texi:
32153         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
32154         * doc/lispref/markers.texi, doc/lispref/modes.texi:
32155         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
32156         * doc/lispref/os.texi, doc/lispref/positions.texi:
32157         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
32158         * doc/lispref/text.texi, doc/lispref/tips.texi:
32159         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
32160         Use American-style double quoting in ordinary text,
32161         and quote 'like this' when single-quoting in ASCII text.
32162         Also, fix some minor spacing issues.
32164 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
32166         Handle symlinked test directory in tramp-tests.el
32167         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
32168         (tramp--test-check-files): Use `file-truename' for directories.
32170 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
32172         Fix 'recenter' when visual-line-mode is turned on
32173         * src/window.c (Frecenter): Use the same code for GUI and TTY
32174         frames alike; use vmotion only for "initial" frames.  This is
32175         because vmotion doesn't support visual-line-mode.  Rewrite the
32176         'iarg >= 0' case to use move_it_* functions instead of using
32177         vmotion, for the same reason.  Fix the clipping of the argument
32178         value to support scroll-margin in all cases and avoid unwarranted
32179         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
32180         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
32181         which see.
32183 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
32185         * lisp/abbrev.el (define-abbrev-table): Refine last change.
32187         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
32188         use of c[ad]+r", so as to keep the "cl-" prefix on all
32189         cl-lib definitions.
32191         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
32192         Use inhibit-point-motion-hooks.
32194         * lisp/cedet/semantic: Remove some dead code.
32195         * lisp/cedet/semantic/util-modes.el
32196         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
32197         any more.
32198         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
32199         not supported any more.
32200         (semantic-safe): Use `declare'.
32201         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
32202         (semantic-tag-intangible-p): Remove unused functions.
32203         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
32204         Remove unused function.
32206         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
32207         (gnus-article-hide-text, gnus-article-unhide-text)
32208         (gnus-article-unhide-text-type): Remove special handling of
32209         `intangible' since that property is not used any more.
32210         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
32212 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
32214         Use the VC root in `log-edit-listfun'
32215         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
32216         `log-edit-listfun'.
32218 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
32220         Fix description of Unix time, mention new function.
32221         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
32222         Unix time.
32223         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
32224         (Basic Operations on Units): Mention `calc-convert-exact-units'.
32226 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
32228         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
32230 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
32232         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
32233         Don't add newline after the last entry.
32235 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
32237         css-mode.el: Add "not" pseudo-class
32238         (Bug#20267)
32239         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
32240         list of CSS pseudo-classes.
32242 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
32244         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
32246 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
32248         Stop messing with the EMACS env var
32249         * doc/emacs/misc.texi (Interactive Shell): Remove description of
32250         EMACS env var.
32252 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
32254         Adapt 'make change-history' to coding cookie
32255         * Makefile.in (change-history): Adjust to change of format of
32256         ChangeLog file, which now has a coding cookie before an indented
32257         copyright notice.
32259 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
32261         Adapt 'make change-history' to coding cookie
32262         * Makefile.in (change-history): Adjust to change of format of
32263         ChangeLog file, which now has a coding cookie before an indented
32264         copyright notice.
32266         gitlog-to-changelog coding cookie and mv -i
32267         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
32268         for copyright notice prototype, so that we get a proper "coding:"
32269         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
32270         existing ChangeLog.  Problems reported by Eli Zaretskii in:
32271         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
32273         Merge from gnulib
32274         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
32275         2015-04-09 gitlog-to-changelog: port to MS-Windows
32277 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
32279         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
32280         (Bug#20212)
32282 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
32284         Stop messing with the EMACS env var
32285         (Bug#20202)
32286         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
32287         * lisp/comint.el (comint-exec-1):
32288         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
32289         * lisp/progmodes/compile.el (compilation-start): Same and bring
32290         INSIDE_EMACS's format in line with other users.
32292         css-mode.el (css-smie-rules): Fix indentation after complex selectors
32293         (Bug#20282)
32294         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
32295         inner structure of selectors.
32297 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
32299         python.el: Indent docstring lines to base-indent
32300         (Bug#19595)
32301         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
32302         an initial patch.
32303         * lisp/progmodes/python.el
32304         (python-indent-context): Add :inside-docstring context.
32305         (python-indent--calculate-indentation): Handle :inside-docstring.
32306         (python-indent-region): Re-indent docstrings.
32307         * test/automated/python-tests.el (python-indent-region-5)
32308         (python-indent-inside-string-2): Fix tests.
32310         python.el: Increase native completion robustness
32311         (Bug#19755)
32312         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
32313         this and providing useful ideas.
32314         * lisp/progmodes/python.el
32315         (python-shell-completion-native-output-timeout): Increase value.
32316         (python-shell-completion-native-try-output-timeout): New var.
32317         (python-shell-completion-native-try): Use it.
32318         (python-shell-completion-native-setup): New readline setup avoids
32319         polluting current context, ensures output when no-completions are
32320         available and includes output end marker.
32321         (python-shell-completion-native-get-completions): Trigger with one
32322         tab only.  Call accept-process-output until output end is found or
32323         python-shell-completion-native-output-timeout is exceeded.
32325 2015-04-08  Samer Masterson  <samer@samertm.com>
32327         * lisp/eshell: Make backslash a no-op in front of normal chars
32328         (Bug#8531)
32329         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
32330         (eshell-parse-backslash): Return escaped character after backslash
32331         if it is special.  Otherwise, if the backslash is not in a quoted
32332         string, ignore the backslash and return the character after; if
32333         the backslash is in a quoted string, return the backslash and the
32334         character after.
32335         * test/automated/eshell.el (eshell-test/escape-nonspecial)
32336         (eshell-test/escape-nonspecial-unicode)
32337         (eshell-test/escape-nonspecial-quoted)
32338         (eshell-test/escape-special-quoted): Add tests for new
32339         `eshell-parse-backslash' behavior.
32341 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
32343         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
32344         after the file name.
32345         (Bug#20276)
32347 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
32349         Minor quoting etc. fixes to Emacs manual
32350         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
32351         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
32352         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
32353         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
32354         * doc/emacs/indent.texi, doc/emacs/macos.texi:
32355         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
32356         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
32357         * doc/emacs/search.texi, doc/emacs/trouble.texi:
32358         * doc/emacs/vc1-xtra.texi:
32359         Use American-style double quoting in ordinary text,
32360         and quote 'like this' when single-quoting in ASCII text.
32361         Also, fix some minor spacing issues.
32363         Minor quoting etc. fixes to elisp intro
32364         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
32365         American-style double quoting in ordinary text.  In ASCII text,
32366         consistently quote 'like this' instead of `like this', unless
32367         Emacs requires the latter.
32369 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
32371         * CONTRIBUTE: Mention log-edit-insert-changelog.
32373         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
32375 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
32377         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
32379 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
32381         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
32382         Fix inheritance of initargs.  (Bug#20270)
32384 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
32386         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
32387         while dowloading information.
32389         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
32390         (package--ensure-init-file): Check file contents before visiting.
32391         (package-initialize): Call it.
32392         (package-install-from-buffer, package-install): Don't call it.
32394 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
32396         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
32397         (Bug#17517)
32399 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
32401         * lisp/net/tramp-cache.el (tramp-flush-file-property):
32402         Fix nasty scoping bug.
32404 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
32406         Add notice to visual commands section
32407         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
32408         such as git call less with its -F option which omits pagination if
32409         the contents is less than one page long.  This interferes with
32410         eshell's visual (sub-)commands.
32412 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
32414         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
32415         environment variable expansion in file names.  (Bug#19839)
32417 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
32419         Prefer double-quote to accent-grave in man pages
32421 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
32423         (Bug#20257)
32424         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
32426 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
32428         Update etc/PROBLEMS.
32429         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
32430         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
32431         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
32432         respectively); other minor updates and tweaks.  (Bug#20011)
32434 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
32436         Add doc strings for some Isearch state vars
32437         * lisp/misearch.el (multi-isearch-buffer-list)
32438         (multi-isearch-file-list): Add doc strings.
32439         (Bug#20232)
32441 2015-04-07  Alan Mackenzie  <acm@muc.de>
32443         Always mark "<" and ">" in #include directives with text properties.
32444         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
32445         "anchored matcher" with an invocation of
32446         c-make-font-lock-search-function to allow fontification when there's
32447         no trailing space on an "#include <..>" line.
32449 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
32451         Generate a ChangeLog file from commit logs
32452         * .gitignore: Add 'ChangeLog'.
32453         * build-aux/gitlog-to-changelog: New file, from Gnulib.
32454         * build-aux/gitlog-to-emacslog: New file.
32455         * CONTRIBUTE: Document the revised workflow.
32456         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
32457         instead of just special cases.
32458         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
32459         (ChangeLog, unchanged-history-files, change-history)
32460         (change-history-commit): New rules.
32461         * admin/admin.el (make-manuals-dist--1):
32462         Don't worry about doc/ChangeLog.
32463         * admin/authors.el: Add a FIXME.
32464         * admin/make-tarball.txt:
32465         * lisp/calendar/icalendar.el:
32466         * lisp/gnus/deuglify.el:
32467         * lisp/obsolete/gulp.el:
32468         * lwlib/README:
32469         Adjust to renamed ChangeLog history files.
32470         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
32471         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
32472         Remove obsolete discussion of merging ChangeLog files.
32473         New section "Maintaining ChangeLog history".
32474         * build-aux/git-hooks/pre-commit:
32475         Reject attempts to commit files named 'ChangeLog'.
32476         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
32477         * make-dist: Make and distribute top-level ChangeLog if there's a
32478         .git directory.  Distribute the new ChangeLog history files
32479         instead of scattered ChangeLog files.  Distribute the new files
32480         gitlog-to-changelog and gitlog-to-emacslog.
32481         (Bug#19113)
32483         Rename ChangeLogs for gitlog-to-changelog
32484         This patch was implemented via the following shell commands:
32485         find * -name ChangeLog |
32486         sed 's,.*,git mv & &.1,
32487         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
32488         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
32489         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
32490         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
32491         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
32492         sh
32493         git commit -am"[this commit message]"
32495 This file records repository revisions from
32496 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
32497 commit 4b2d77d8dbd5b051bb681bacaee4a6faffbbdde9 (inclusive).
32498 See ChangeLog.1 for earlier changes.
32500 ;; Local Variables:
32501 ;; coding: utf-8
32502 ;; End:
32504   Copyright (C) 2015-2016 Free Software Foundation, Inc.
32506   This file is part of GNU Emacs.
32508   GNU Emacs is free software: you can redistribute it and/or modify
32509   it under the terms of the GNU General Public License as published by
32510   the Free Software Foundation, either version 3 of the License, or
32511   (at your option) any later version.
32513   GNU Emacs is distributed in the hope that it will be useful,
32514   but WITHOUT ANY WARRANTY; without even the implied warranty of
32515   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
32516   GNU General Public License for more details.
32518   You should have received a copy of the GNU General Public License
32519   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.