Update define-ibuffer-op doc string
[emacs.git] / ChangeLog.2
blobcd29f92e998fb0cd2e9b7ef5722e82bbdef3e488
1 2016-06-19  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-19  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-19  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-19  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-19  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-19  Nicolas Petton  <nicolas@petton.fr>
42         * etc/AUTHORS: Update the AUTHORS file
44 2016-06-19  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-19  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-19  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-19  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-19  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-19  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-19  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-19  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-19  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-19  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-19  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-19  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-19  Eli Zaretskii  <eliz@gnu.org>
148         * etc/PROBLEMS: Mention the link-time problems on FreeBSD 11.
150         (Bug#23641)
152 2016-06-19  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-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
166         * lisp/recentf.el (recentf-dialog-mode-map): Remove follow-link (bug#22434)
168 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Eli Zaretskii  <eliz@gnu.org>
244         * src/dired.c (Ffile_name_all_completions): Doc fix.  (Bug#23631)
246 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Glenn Morris  <rgm@gnu.org>
290         * admin/admin.el (add-release-logs): Basic check of existing ChangeLog.
292 2016-06-19  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-06-19  Glenn Morris  <rgm@gnu.org>
300         * admin/admin.el (add-release-logs): Generate ChangeLog if needed.
302 2016-06-19  Paul Eggert  <eggert@cs.ucla.edu>
304         * doc/misc/texinfo.tex: Revert previous change (Bug#23611).
306 2016-06-19  Glenn Morris  <rgm@gnu.org>
308         * admin/authors.el (authors): First update the ChangeLog.
310         * admin/make-tarball.txt: Related updates.
312 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
357         Add automated test for viper-tests.el
359 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Jun Hao  <jun_hao@aol.com>
436         * lisp/desktop.el: Disable restore frameset if in non-graphic display.
438         (Bug#17693)
440 2016-06-19  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-06-19  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-06-19  Daiki Ueno  <ueno@gnu.org>
457         Revert "epg: Add a way to detect gpg1 executable for tests"
459         This reverts commit d4ae6d7033b34e8b75c59aaf1584131e439ef2d5.
461 2016-06-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-06-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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Nicolas Petton  <nicolas@petton.fr>
540         etc/AUTHORS: Update the AUTHORS file
542 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Paul Eggert  <eggert@cs.ucla.edu>
588         * doc/misc/texinfo.tex: Sync from gnulib.
590 2016-06-19  Glenn Morris  <rgm@gnu.org>
592         * lisp/emacs-lisp/find-func.el (find-feature-regexp)
593         (find-alias-regexp): Fix :version.
595 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Paul Eggert  <eggert@cs.ucla.edu>
671         * doc/misc/emacs-mime.texi (time-date): Document now-builtins better.
673 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Paul Eggert  <eggert@cs.ucla.edu>
847         * etc/NEWS: Mention (message "%s" (format ...)).
849 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Paul Eggert  <eggert@cs.ucla.edu>
935         * doc/misc/texinfo.tex: Sync from gnulib.
937 2016-06-19  Juri Linkov  <juri@linkov.net>
939         * lisp/isearch.el (isearch-forward-symbol-at-point): Add isearch-push-state.
941         (Bug#23410)
943 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
945         tramp.texi: Revert last change due to backward compatibility
947         (cherry picked from commit 910f9a0a936aacbffe9b9b790d7f698dfd287aac)
949 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Eli Zaretskii  <eliz@gnu.org>
1554         * lisp/url/url.el (url-retrieve-synchronously): Doc fix.  (Bug#23411)
1556 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Glenn Morris  <rgm@gnu.org>
1839         * lisp/emacs-lisp/autoload.el (update-directory-autoloads):
1840         Future-proof against non-time-values.
1842 2016-06-19  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-06-19  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-06-19  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-06-19  Paul Eggert  <eggert@cs.ucla.edu>
1862         * etc/NEWS: Improve wording of vc-git-log-output-coding-system etc.
1864 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Eli Zaretskii  <eliz@gnu.org>
1929         Revert "Allow to customize names of executables used by grep.el"
1931         This reverts commit c93ae7a1e5a94541189a8f36984014344d561ffc.
1933 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1935         Revert "Don't use 'find-program'"
1937         This reverts commit 10597c977d55cbf9304b51c3b364ce58199384a0.
1939 2016-06-19  Eli Zaretskii  <eliz@gnu.org>
1941         Revert "Use 'grep-find-program' in check-declare.el"
1943         This reverts commit 33bef6e90bfd20609d044b8a076c1570c627684a.
1945 2016-06-19  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-06-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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Glenn Morris  <rgm@gnu.org>
2023         * configure.ac (HAVE_MODULES): Exclude gnu-kfreebsd from previous.
2025 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Glenn Morris  <rgm@gnu.org>
2086         * configure.ac (HAVE_MODULES): Treat gnu like gnu-linux.  (Bug#22722)
2088 2016-06-19  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-06-19  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-06-19  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-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2126         * src/xwidget.c (x_draw_xwidget_glyph_string): More clipping fixes.
2128 2016-06-19  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-06-19  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-06-19  Phillip Lord  <phillip.lord@newcastle.ac.uk>
2179         Revert "Prevent bootstrap autoload backup files"
2181         This reverts commit c23c965bb9d0a4bcc1b6158833ff99aa20fd53e9.
2183 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2335         * src/xsmfns.c (syms_of_xsmfns): Remove stray "s in doc strings.
2337 2016-06-19  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-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
2354         * lisp/subr.el (read-key): Don't let the prompt linger (bug#22714)
2356 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Tao Fang  <fangtao0901@gmail.com>
2433         Backport HTTPS proxy fix
2435         Cherry-picked from 3c623c26ae7d695746e05d8a2e16a67a6256b024
2437         Backport:
2439 2016-06-19  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-06-19  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-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
2461         * lisp/emacs-lisp/package.el (package-install-selected-packages):
2463         Skip unavailable packages.
2465 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Alan Mackenzie  <acm@muc.de>
2637         Merge branch 'emacs-25' of /home/acm/emacs/emacs.git/emacs-25 into emacs-25
2639 2016-06-19  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-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2647         * doc/man/emacsclient.1: Document +line:column option.
2649 2016-06-19  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-06-19  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-06-19  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-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2688         * src/font.c (QCuser_spec): Add missing colon to :user-spec.
2690 2016-06-19  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-06-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
2699         * src/xwidget.c (Fxwidget_resize): Fix inappropriate use of XFASTINT.
2701 2016-06-19  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-06-19  Glenn Morris  <rgm@gnu.org>
2714         * lisp/xt-mouse.el (xterm-mouse-utf-8): Add :version.
2716 2016-06-19  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-06-19  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-06-19  Paul Eggert  <eggert@cs.ucla.edu>
2739         * src/ftfont.c (ftfont_shape_by_flt): Parenthesize as per GNU style.
2741 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-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-06-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-06-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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Glenn Morris  <rgm@gnu.org>
3196         * test/automated/package-test.el (package-test-signed): Tweak skip
3197         condition, for hydra.
3199 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Phillip Lord  <phillip.lord@russet.org.uk>
3348         Revert "Simplify "Visit New File" to "New File""
3350         This reverts commit d457fd9dc782465e1547f74021390c9d5951d6af.
3352 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Artur Malabarba  <bruce.connor.am@gmail.com>
3768         * lisp/isearch.el (isearch-define-mode-toggle): Fix toggling logic
3770 2016-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  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-06-19  Nicolas Petton  <nicolas@petton.fr>
3822         * etc/AUTHORS: Update the AUTHORS file
3824 2016-06-19  Nicolas Petton  <nicolas@petton.fr>
3826         authors.el updates
3828         * admin/authors.el (authors-ignored-files): Addition.
3830 2016-06-19  Michael Albinus  <michael.albinus@gmx.de>
3831 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
3833         Fix Bug#22859
3835         * lisp/filenotify.el (file-notify-callback): Return a `deleted'
3836         event in case of kqueue and file1 is nil.  (Bug#22859)
3838 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
3840         Fix reordering of bidi text in an isolate inside an override
3842         * src/bidi.c (bidi_resolve_explicit): Override the orig_type value
3843         of FSI with either LRI or RLI, as determined by the first strong
3844         directional character in the isolate.  This prevents failure to
3845         isolate when the FSI...PDI text is inside a directional override.
3846         (Bug#22786)
3848 2016-03-04  Alan Mackenzie  <acm@muc.de>
3850         Document c-guess-basic-syntax in the CC Mode manual.
3852         * doc/misc/cc-mode.texi (Syntactic Analysis): Document the function, adding
3853         pxrefs to Custom Line-Up and Other Indentation.
3854         (Custom Line-Up): Add a note on using c-guess-basic-syntax with a pxref to
3855         Syntactic Analysis.
3857 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
3859         Fix targets in test/automated/Makefile.in
3861         * test/automated/Makefile.in: Use $(SELECTOR_DEFAULT) also for
3862         empty target and target all.
3864 2016-03-04  Leo Liu  <sdl.web@gmail.com>
3866         Comment on last change to define-derived-mode
3868         * lisp/emacs-lisp/derived.el (define-derived-mode): Add comment.
3870 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
3872         Allow binding `url-mime-accept-string'
3874         * lisp/url/url-http.el (url-http): Allow binding
3875         `url-mime-accept-string' (bug#22855).
3877         Backport:
3879         (cherry picked from commit 144bb0cf322b9756d29def3e27a42303e2edce43)
3881 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
3883         Also allow setting the paragraph direction to nil
3885         * lisp/net/eww.el (eww-toggle-paragraph-direction): Also allow
3886         setting the paragraph direction to nil ("auto").
3888 2016-03-04  Anders Lindgren  <andlind@gmail.com>
3890         Made the new OS X visible bell more visible.
3892         * src/nsterm.m: (EmacsBell:init:) Scaled up the visible bell
3893           "caution" image five times, as the image in its original size
3894           was hard to see.
3896 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
3898         Use the correct background color when filling nested <divs>
3900         * lisp/net/shr.el (shr-face-background): Return the first
3901         background, because that's the one that's visible (bug#22680).
3903         Backport:
3905         (cherry picked from commit cad0bc70558f9c28c808711c5295dec9fc5ad6e5)
3907 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
3909         Make <div> in <li> not insert extra newlines
3911         * lisp/net/shr.el (shr-tag-div): Make <div> in <li> not insert
3912         extra newlines (bug#19587).
3914         Backport:
3916         (cherry picked from commit 379a846b8548dc32a9019ef0a37c02f62cd9bad1)
3918 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
3920         Uncomment the next-error-function integration in xref
3922         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
3923         Uncomment the next-error-function integration
3924         (http://debbugs.gnu.org/cgi/bugreport.cgi?bug=20489#110).
3926 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
3928         Remove the word "valid", to avoid ambiguity
3930         * doc/emacs/maintaining.texi (Identifier Search)
3931         (Looking Up Identifiers): Remove the word "valid" (bug#22692).
3933 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
3935         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
3937 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
3939         Set auto-revert-use-notify to nil in global-auto-revert-mode.  (Bug#22814)
3941         * etc/NEWS:
3942         * etc/PROBLEMS: Mention this.
3944         * lisp/autorevert.el (global-auto-revert-mode): Set
3945         `auto-revert-use-notify' to nil.  (Bug#22814)
3947 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
3949         * etc/TODO: Minor quoting and grammar fixes.
3951 2016-03-04  Friedrich Beckmann  <friedrich.beckmann@gmx.de>  (tiny change)
3953         Fix ModelSim error parsing
3955         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist): Fix
3956         ModelSim error parsing (bug#5768).
3958 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
3960         Make parse-time-string-chars faster
3962         * lisp/calendar/parse-time.el (parse-time-string-chars): Clean
3963         up the code (backport:).
3965 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
3967         Add a eww command to toggle paragraph direction
3969         * lisp/net/eww.el (eww-toggle-paragraph-direction): New
3970         command and keystroke.
3972         * doc/misc/eww.texi (Advanced): Mention the `D' command.
3974 2016-03-04  Glenn Morris  <rgm@gnu.org>
3976         * nextstep/WISHLIST: Merge into etc/TODO and remove.
3978         * etc/TODO: Merge in items from nextstep/WISHLIST.
3979         * nextstep/README: Update for this change.
3981 2016-03-04  Andreas Schwab  <schwab@linux-m68k.org>
3983         Fix char signedness issue in bidi code
3985         * src/dispextern.h (struct bidi_t): Change type of resolved_level
3986         and isolate_level to signed char.  (Bug#22830)
3988 2016-03-04  Andreas Schwab  <schwab@linux-m68k.org>
3990         * lib-src/pop.c (socket_connection): Fix format string.
3992 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
3994         Avoid inflooping in thing-at-point-looking-at
3996         * lisp/thingatpt.el (thing-at-point-looking-at): Avoid inflooping
3997         with regular expressions whose matching doesn't move point.
3998         (Bug#22756)
3999         Describe the argument DISTANCE in the doc string.
4001 2016-03-04  Leo Liu  <sdl.web@gmail.com>
4003         * lisp/emacs-lisp/derived.el (define-derived-mode): Revert indent change.
4005 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4007         etc/PROBLEMS: Mention problems with using file descriptors
4009         * etc/PROBLEMS: Mention problems with using file descriptors
4010         of kqueue file notification library.
4012 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>
4014         * lisp/apropos.el (apropos-variable): Doc fix.  (Bug#22813).
4016 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4018         Remove unneeded workaround in xftfont.c
4020         * src/xftfont.c (xftfont_open): Remove "dirty workaround" for
4021         XftTextExtents8 behavior, as it is no longer needed.  Suggested by
4022         Fangwen Yu <yynyygy@gmail.com>.  (Bug#22383)
4024 2016-03-04  Stefan Monnier  <monnier@iro.umontreal.ca>
4026         * lisp/saveplace.el (save-place-local-mode): New minor mode
4028         (toggle-save-place): Define as obsolete alias.
4029         (save-place--setup-hooks): New function.
4030         (save-place-mode): Use it.
4032 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4034         Fix redisplay on a TTY after 'make-frame'
4036         * src/xdisp.c (clear_garbaged_frames): Don't clear/redraw a
4037         garbaged TTY frame if it is not the selected frame.  (Bug#22794)
4039 2016-03-04  Alan Mackenzie  <acm@muc.de>
4041         Make double-click-1 work with unbalanced parens in CC Mode.  Fixes bug#5560.
4043         * lisp/mouse.el (mouse-start-end): check the syntax of alleged parens with
4044         `syntax-after' to ensure syntax-table text properties are respected.
4046 2016-03-04  Magnus Henoch  <magnus.henoch@gmail.com>
4048         Input method polish-slash should not use keyboard translation
4050         * lisp/leim/quail/latin-pre.el ("polish-slash"): Input method
4051         polish-slash should not use keyboard translation (bug#19081).
4053 2016-03-04  Chris Feng  <chris.w.feng@gmail.com>
4055         Fix an assertion
4057         * src/dispnew.c (clear_glyph_matrix_rows): Test matrix->nrows == 0 (which
4058         implies start == 0) separately.
4060 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4062         Fix 'toggle-save-place'
4064         * lisp/saveplace.el (toggle-save-place): Set up hooks necessary to
4065         support save-place in the buffer.  Autoload the command.
4067 2016-03-04  Stefan Monnier  <monnier@iro.umontreal.ca>
4069         * src/keyboard.c: Don't inadvertently set immediate_echo (bug#22581)
4071         * src/keyboard.c (read_key_sequence): Don't inadvertently set
4072         immediate_echo when we don't want any echo-keystrokes.
4073         (echo_keystrokes_p): Move earlier.
4075 2016-03-04  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
4077         Minor fixes in calculator.el
4079         * lisp/calculator.el (calculator-mode-map): Bind `E' for
4080         `calculator-exp'.
4081         (calculator-last-input): Fix a bug with pressing F1.
4082         (Bug#20764)
4084 2016-03-04  Anders Lindgren  <andlind@gmail.com>
4086         Update HISTORY section in readme for the NextStep interface.
4088         * nextstep/README: Update HISTORY after suggestion
4089         from former maintainer Adrian Robert.
4091 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4093         Improve documentation of 'save-place-mode'
4095         * lisp/saveplace.el (toggle-save-place): Update the doc string wrt
4096         turning on 'save-place-mode' globally.
4098         * etc/NEWS: Mention the need to call 'save-place-mode' for turning
4099         on the mode in all buffers.
4101 2016-03-04  Chris Feng  <chris.w.feng@gmail.com>  (tiny change)
4103         Allocate glyph matrices for the initial frame
4105         * src/frame.c (make_initial_frame): Allocate glyph matrices (Bug#22787).
4107         * src/dispnew.c (clear_glyph_matrix_rows): matrix->nrows can be 0.
4109 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4111         Fix white space in last checkin
4113 2016-03-04  Dima Kogan  <gnuplot@dima.secretsauce.net>
4115         Make `insert-pair' always leave the cursor where documented
4117         * lisp/emacs-lisp/lisp.el (insert-pair): The docstring of
4118         insert-pair states that after insertion, the point ends up
4119         after the opening character. This was not true if the pair was
4120         inserted to surround a region (bug#16949).
4122 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>
4124         etc/NEWS: Mention the new second parameter to `package-install'
4126         * etc/NEWS: Mention the new second parameter to
4127         `package-install' (bug#22784).
4129 2016-03-04  John F. Trudeau  <JFTrudeau@aetna.com>  (tiny change)
4131         Highlight assignments in Makefiles more correctly
4133         * lisp/progmodes/make-mode.el (makefile-macroassign-regex):
4134         Highlight assignments preceded by a TAB character correctly
4135         (bug#20787).
4138         Backport:
4140         (cherry picked from commit bbd86c5642bd62c43d72391669f28eaa14459fd5)
4142 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4144         Improve documentation of focus-related hooks
4146         * doc/lispref/commands.texi (Focus Events): Mention focus-related
4147         hooks.  (Bug#21728)
4149 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4151         Further improve doc string of 'disable-point-adjustment'
4153         * src/keyboard.c (syms_of_keyboard): <disable-point-adjustment>
4154         <global-disable-point-adjustment>: Clarify doc strings.  (Bug#22771)
4156 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4158         Further adaptions in file-notify-tests.el for w32notify
4160         * test/automated/file-notify-tests.el
4161         (file-notify--test-read-event-timeout, file-notify--test-timeout):
4162         Decrease values.
4163         (file-notify-test03-autorevert)
4164         (file-notify-test04-file-validity)
4165         (file-notify-test05-dir-validity): Run tests also for w32notify.
4166         (file-notify-test08-watched-file-in-watched-dir):
4167         Adapt expected events for w32notify.
4169 2016-03-04  Jan Tatarik  <jan.tatarik@gmail.com>
4171         Don't bug out on localised dates in gnus-icalendar
4173         * lisp/gnus/gnus-icalendar.el
4174         (gnus-icalendar-event:org-timestamp): Don't bug out on
4175         localised dates.
4177 2016-03-04  Drew Adams  <drew.adams@oracle.com>
4179         (ls-lisp-insert-directory): Make -B work
4181         * lisp/ls-lisp.el (ls-lisp-insert-directory): Make -B work
4182         (bug#20776).
4184         Backport:
4186         (cherry picked from commit ef52e66efd78aac4c4e5bd5e11870e5ba3b37a1e)
4188 2016-03-04  Vaidheeswaran C  <vaidheeswaran.chinnaraju@gmail.com>
4190         Make buttons in header lines work
4192         * lisp/help-mode.el (help-button-action): `help-xref-button' in
4193         header line doesn't work (bug#21024).
4195         Backport:
4197         (cherry picked from commit c11e565a6b6d09fa39d4c3ef65bef08190eaecc1)
4199 2016-03-04  Christopher Wellons  <wellons@nullprogram.com>
4201         Make setf for frame-height/width work again
4203         * lisp/emacs-lisp/cl-lib.el (frame-height): Make setf for
4204         frame-height/width work again (bug#21979).
4206 2016-03-04  Łukasz Stelmach  <stlman@poczta.fm>
4208         Encode header strings before printing
4210         * lisp/ps-print.el (ps-generate-header-line): Encode the
4211         header strings to avoid problems with non-ASCII headers
4212         (bug#22611).
4214         Backport:
4216         (cherry picked from commit 3cedbdcc71ebefc12bd20ec84f74251fe99ee7d0)
4218 2016-03-04  Nicolas Richard  <youngfrog@members.fsf.org>
4220         (cl-union): Do not ignore :test argument when lists are equal.
4222         * lisp/emacs-lisp/cl-seq.el (cl-union): Do not ignore :test argument when lists are equal.
4224         * test/automated/cl-seq-tests.el: New file (bug#22729).
4226 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4228         Add `isearch' to `basic-faces'
4230         * doc/lispref/display.texi (Basic Faces): Mention the isearch
4231         and lazy-highlight faces.
4233         * lisp/replace.el (match): Add `isearch' to the `basic-faces'
4234         group, too (bug#22760).
4236 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4238         Make $, : and @ "prefix characters" in ruby-mode
4240         * lisp/progmodes/ruby-mode.el (ruby-mode-syntax-table): Change the
4241         syntax classes of $, : and @ to "prefix character"
4242         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00272.html).
4243         (ruby-syntax-propertize): Undo that specifically for colons
4244         followed by an opening paren or bracket.
4245         (ruby-font-lock-keyword-beg-re): Include colon character.
4246         (ruby-font-lock-keywords): Adjust the constants matcher for `:'
4247         not being a symbol constituent anymore.
4249 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4251         Make find-tag-default-bounds more strict
4253         * lisp/subr.el (find-tag-default-bounds): Delegate to
4254         bounds-of-thing-at-point (bug#22692).
4256 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4258         Minor fixes in filenotify.el
4260         * lisp/filenotify.el (top): Require 'cl-lib.
4261         (file-notify--rm-descriptor)
4262         (file-notify--event-watched-file): Use cl-caadr.
4263         (file-notify-callback): Handle also `ignore' events from inotify.
4265 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4267         Additional fixes for file notification
4269         * lisp/filenotify.el (top): Require 'cl when compiling.
4270         (file-notify--event-watched-file): New defun.
4271         (file-notify--rm-descriptor, file-notify-callback):
4272         Handle case of several monitors running in parallel.
4274         * test/automated/file-notify-tests.el
4275         (file-notify--test-event-test): Simplify test.
4276         (file-notify--test-with-events): Get rid of outer definition.
4277         Check also results of tests performed in callbacks.
4278         (file-notify-test02-events): No wrapping when calling
4279         `file-notify-rm-watch'.  No special checking for callback tests.
4280         (file-notify-test07-backup): Adapt expected events for gfilenotify.
4281         (file-notify-test08-watched-file-in-watched-dir): Improve.
4283 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4285         Fix documentation of 'global-disable-point-adjustment'
4287         * src/keyboard.c (syms_of_keyboard) <disable-point-adjustment>
4288         <global-disable-point-adjustment>: Doc fixes.  (Bug#22771)
4290 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4292         Set file modes of pinentry socket for extra safety
4294         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
4295         (pinentry-start): Change the file modes of the socket file to 0700.
4296         This is just for extra safety since the parent directory is already
4297         protected with `server-ensure-safe-dir'.
4299 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4301         Clarify GnuPG version compatibility chapter
4303         * doc/misc/epa.texi (GnuPG version compatibility): Make the gpg-agent
4304         description a bit clearer.
4306 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4308         Revert "Change the default socket location for pinentry"
4310         This reverts commit e34fbdee8aca84b98393b06b2450837d175999ca.
4311         It turned out that the address is fixed in Pinentry itself.
4313 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4315         Kill off xref--display-history
4317         Now that the core workflow keeps the xref window visible, there's
4318         less value in storing this history.  And it never was
4319         comprehensive enough to undo scrolling changes.
4320         * lisp/progmodes/xref.el (xref--display-history)
4321         (xref--save-to-history, xref-quit): Remove.
4322         (xref--show-pos-in-buf): Update accordingly.
4323         (xref--xref-buffer-mode-map): Remove xref-quit binding.
4325 2016-03-04  Dmitry Gutov  <dgutov@yandex.ru>
4327         Keep the xref buffer visible until the user quits it explicitly
4329         * lisp/progmodes/xref.el (xref--pop-to-location):
4330         Rename WINDOW argument to ACTION.
4331         (xref--with-dedicated-window): New macro.
4332         (xref--show-pos-in-buf): Rename from `xref--display-position'.
4333         Add and handle new argument, SELECTED.  Use the above macro.
4334         (xref--show-location): Add SELECTED argument.
4335         (xref-show-location-at-point): Make an effort to avoid the
4336         original window when showing the location.
4337         (xref-goto-xref): Don't quit the xref window (bug#20487 and
4338         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01133.html).
4339         (xref--query-replace-1): Use xref--with-dedicated-window as well.
4340         (xref--next-error-function): Call xref--show-location instead of
4341         xref--pop-to-location.
4342         (xref--show-xrefs): Rename WINDOW argument to DISPLAY-ACTION.
4343         Only pass that value to xref--pop-to-location.  Pass the current
4344         selected window to xref-show-xrefs-function as the `window'
4345         property.
4346         (xref--find-xrefs, xref--find-definitions): Rename WINDOW argument
4347         to DISPLAY-ACTION as well.
4349 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4351         Change the default socket location for pinentry
4353         * lisp/net/pinentry.el: Require 'cl-lib for `cl-letf'.
4354         (pinentry--socket-dir): Change the default from /tmp/emacsXXX to
4355         ~/.emacs.d/pinentry.
4356         (pinentry-start): Change the file modes of the socket file to 0700.
4357         This is just for extra safety since the parent directory is already
4358         protected with `server-ensure-safe-dir'.
4360 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4362         Mention how to enable pinentry feature
4364         * etc/NEWS: Mention "gpgconf --reload gpg-agent".
4365         * lisp/net/pinentry.el: Likewise.
4367 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4369         Sync with gnulib
4371         This incorporates:
4372         2016-02-10 stdalign: port to older HP and IBM cc
4373         * doc/misc/texinfo.tex, lib/stdalign.in.h: Copy from gnulib.
4375 2016-03-04  David Engster  <deng@randomsample.de>
4377         Remove `semanticdb-save-all-db-idle' from `auto-save-hook'
4379         * lisp/cedet/semantic/db-mode.el (semanticdb-hooks): Do not put
4380           `semanticdb-save-all-db-idle' into `auto-save-hook'. The latter is
4381           not an idle hook, so it's not appropriate to call it there. It will
4382           already be called in the `semantic-idle-work-core-handler', which
4383           runs when Emacs is actually idle.
4385 2016-03-04  David Engster  <deng@randomsample.de>
4387         Restore point when writing semantic table to disk
4389         * lisp/cedet/semantic/db-file.el (object-write): Wrap call to
4390           `semantic-fetch-tags' in `save-excursion', since it might move point
4391           in current buffer. (Bug #22287)
4393 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4395         Mention pinentry.el in epa manual
4397         * doc/misc/epa.texi (GnuPG version compatibility): New chapter,
4398         describing the differences between three GnuPG branches, and how
4399         to enable pinentry.el.
4400         (Caching Passphrases): Add xref to the compatibility chapter.
4402 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4404         Fix Bug#22736
4406         * lisp/filenotify.el (file-notify-callback): Use the proper
4407         descriptor when calling the callback.  (Bug#22736)
4409         * test/automated/file-notify-tests.el
4410         (file-notify--test-event-handler): Deactivate trace.
4411         (file-notify-test08-watched-file-in-watched-dir): Bind
4412         `file-notify--test-tmpfile' temporarily in `dir-callback'.
4414 2016-03-04  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
4416         Grammar fix in doc string
4418         * lisp/custom.el (defgroup): Grammar fix in doc string.
4420 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4422         Naming fix for consistency
4424         * lisp/epg-config.el (epg-find-configuration): Rename from
4425         `epg-configuration-find' to be consistent with other epg-* functions.
4426         Change all callers.
4428 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4430         Prefer customized value for GnuPG executable
4432         * lisp/epg-config.el (epg-configuration-find): Don't check GPG
4433         configuration if it is already set with custom.  (Bug#22747)
4435 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4437         Fix memory reservation on MS-Windows
4439         * src/w32heap.c (mmap_alloc): Reserve memory in 64KB granular
4440         units.  This avoids leaving gaps in reserved memory regions that
4441         no one can use, since memory reservation must produce 64KB-aligned
4442         addresses.  (Bug#22526)
4444 2016-03-04  Anders Lindgren  <andlind@gmail.com>
4446         Update NextStep readme and add wish list.
4448         * nextstep/README: Rewritten from scratch. New sections on
4449         "History", "Overview of Cocoa and Objective-C", "Guidelines",
4450         "Tracing Support", and "GNUStep". Expanded the "See Also" section.
4451         * nextstep/WISHLIST: New file containing list of issues and ideas
4452         associated with the NS port of Emacs.
4454 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4456         Report also result in `file-notify--test-event-handler'
4458 2016-03-04  Michael Albinus  <michael.albinus@gmx.de>
4460         Improve file-notify-test08-watched-file-in-watched-dir
4462         * test/automated/file-notify-tests.el (file-notify--test-desc2):
4463         New variable.
4464         (file-notify--test-cleanup): Use it.
4465         (file-notify--test-event-handler): Enable trace.
4466         (file-notify-test08-watched-file-in-watched-dir): Tag it as
4467         :expensive-test.  Rewrite callbacks to use
4468         `file-notify--test-event-handler'.  Read events in loop.  Check
4469         `file-notify--test-results'.
4470         (file-notify-test08-watched-file-in-watched-dir): Fix docstring.
4472 2016-03-04  Stephen Berman  <stephen.berman@gmx.net>
4474         Fix todo-mode item date editing bugs
4476         * lisp/calendar/todo-mode.el (todo-edit-item--header): Prevent out of
4477         range error by making sure the value of the numerical month date
4478         component cannot be nil.  Prevent wrong type error on trying to edit
4479         day number in February by making sure numerical instead of string
4480         value of the year component is passed to todo-read-date.
4481         (todo-read-date): When using the numerical month date component make
4482         sure to use `*' for an arbitrary month instead of its numerical value.
4484 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4486         Fix "[:upper:]" for non-ASCII characters
4488         * src/regex.c (re_match_2_internal): Support [:upper:] and
4489         [:lower:] for non-ASCII characters.  (Bug#18150)
4491 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4493         Allow customising the article mode cursor behavior
4495         * doc/misc/gnus.texi (HTML): Mention gnus-article-show-cursor.
4497         * lisp/gnus/gnus-art.el (gnus-article-show-cursor): New variable.
4498         (gnus-article-mode): Use it.
4500 2016-03-04  Ari Roponen  <ari.roponen@gmail.com>
4502         Use pop-to-buffer-same-window in woman.el
4504         * lisp/woman.el (woman-really-find-file): Work around going to
4505         the wrong buffer by using `pop-to-buffer-same-window' (bug#22332).
4506         (WoMan-find-buffer): Ditto.
4508 2016-03-04  Tassilo Horn  <tsdh@gnu.org>
4510         New filenotify test for bug#22736
4512         * test/automated/file-notify-tests.el
4513         (file-notify-test08-watched-file-in-watched-dir):
4514         (file-notify--test-desc1): New filenotify test for bug#22736
4516 2016-03-04  Marcin Borkowski  <mbork@mbork.pl>
4518         Report critical battery errors
4520         * lisp/battery.el (battery-pmset): Report critical battery
4521         errors (bug#18157).
4523 2016-03-04  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
4525         Make eww message toggling message clearer
4527         * lisp/net/eww.el (eww-toggle-fonts): Make the message
4528         clearer.
4530 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
4532         * lisp/calc/calc-units.el (math-standard-units): Update to 2014 CODATA adjustment.
4534 2016-03-04  Martin Rudalics  <rudalics@gmx.at>
4536         Fix bugs in window resizing code
4538         * lisp/window.el (adjust-window-trailing-edge): Fix mismatched
4539         parenthesis.
4540         (shrink-window, enlarge-window): Fix bug#22723 where windows
4541         with preserved size would not get resized.  Also now signal an
4542         error when the window cannot be shrunk or enlarged as requested.
4544 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4546         Fix decoding DOS EOL in a unibyte buffer
4548         * src/coding.c (decode_eol): Loop over bytes, not characters.
4549         (Bug#5251)
4551 2016-03-04  Alan Mackenzie  <acm@muc.de>
4553         Correct c-parse-state cache manipulation error.
4555         * lisp/progmodes/cc-engine.el (c-invalidate-state-cache-1): Correct a
4556         comparison bound.  Amend comments.
4558 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4560         Take advantage of new GnuPG version check function
4562         * lisp/emacs-lisp/package.el (epg-configuration-find): Declare.
4563         (package-refresh-contents): Use `epg-configuration-find' to check if EPG
4564         is usable.
4566 2016-03-04  Daiki Ueno  <ueno@gnu.org>
4568         Make GnuPG version check robuster
4570         We changed the default gpg program to "gpg2" from "gpg" in the commit
4571         f93d669a16bd3cb3f43f0c8cfd22fe18b627a6a1.  However, there are two
4572         maintained branches (2.0 and 2.1) and Emacs doesn't work well with 2.0
4573         series.  Check the actual version of "gpg2" at run time, and properly
4574         divert to "gpg" if necessary.
4575         * lisp/epg-config.el: Require 'cl-lib for `cl-destructuring-bind'.
4576         (epg-config--program-alist): New variable.
4577         (epg--configurations): New variable.
4578         (epg-configuration-find): New function.
4579         (epg-config--make-gpg-configuration): New function.
4580         (epg-config--make-gpgsm-configuration): New function.
4581         (epg-configuration): Mark as obsolete.
4582         * lisp/epg.el (epg-context): Use `epg-configuration-find'.
4584 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4586         Fix x-load-color-file pointer signedness
4588         * src/xfaces.c (Fx_load_color_file) [!HAVE_X_WINDOWS]:
4589         For sscanf and int *, use %d, not %u.
4590         Problem found on Ubuntu 15.10 x32, which lacks X support.
4592 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4594         * lisp/time-stamp.el (time-stamp-time-zone): Fix doc string punct.
4596 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
4598         Follow convention for greek letter constants.
4600         * lisp/calc/calc-units.el (math-standard-units):
4601         Add "sigma" and alias σ to it.
4603 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
4605         Add Stefan-Boltzmann constant to calc units table.
4607         * lisp/calc/calc-units.el (math-standard-units):
4608         Add Stefan-Boltzmann constant.
4610 2016-03-04  Mark Oteiza  <mvoteiza@udel.edu>
4612         * lisp/calc/calc-units.el (math-build-units-table-buffer): Use special-mode.
4614 2016-03-04  Glenn Morris  <rgm@gnu.org>
4616         Avoid loading cl-lib for term/xterm.elc, eg in -Q -nw.  (Bug#22669)
4618         * lisp/emacs-lisp/cl-generic.el (cl--generic-dispatchers):
4619         Prefill with relevant elements for term/xterm.
4621 2016-03-04  Tassilo Horn  <tsdh@gnu.org>
4623         Fix soffice UserInstallation-URL for Windows
4625         * lisp/doc-view.el (doc-view-odf->pdf-converter-soffice): Fix
4626         UserInstallation-URL when calling soffice on Windows.
4628 2016-03-04  Lars Ingebrigtsen  <larsi@gnus.org>
4630         Fix display of <pre> elements
4632         * lisp/net/eww.el (eww-display-html): Remove CRLF before
4633         parsing so that <pre> elements don't render with ^M at the end
4634         of the lines.
4636 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4638         Minor fixes in global-auto-composition-mode
4640         * lisp/emacs-lisp/easy-mmode.el (easy-mmode-pretty-mode-name):
4641         Produce prettier names of globalized minor modes.
4642         * lisp/composite.el (global-auto-composition-mode): Make it a
4643         globalized mode.  (Bug#22682)
4645 2016-03-04  Alan Mackenzie  <acm@muc.de>
4647         Allow arithmetic operators inside C++ template constructs.
4649         Fixes debbugs #22486.  This corrects the previous patch with this message
4650         which was empty.
4652         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
4653         variable.
4654         (c-<>-notable-chars-re): New language variable.
4656         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
4657         c-<>-notable-chars-re in place of the former fixed string in searching for
4658         places to stop and examine.
4659         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
4660         multichar operator in place of the former c->-op-without->-cont-regexp.
4661         Add code to skip forwards over a balanced parenthesized expression.
4663 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4665         Avoid crashes in semi-malformed 'condition-case'
4667         * src/eval.c (internal_lisp_condition_case): Treat a handler
4668         '(nil)' as if it were '(nil nil)'.  (Bug#22675)
4670 2016-03-04  Alan Mackenzie  <acm@muc.de>
4672         Allow arithmetic operators inside C++ template constructs.
4674         Fixes debbugs #22486.
4676         * lisp/progmodes/cc-langs.el (c-multichar->-op-not->>-regexp): New language
4677         variable.
4678         (c-<>-notable-chars-re): New language variable.
4680         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): User
4681         c-<>-notable-chars-re in place of the former fixed string in searching for
4682         places to stop and examine.
4683         Use c-multichar->-op-not->>-regexp to check that a found ">" is not part of a
4684         multichar operator in place of the former c->-op-without->-cont-regexp.
4685         Add code to skip forwards over a balanced parenthesized expression.
4687 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4689         Fix regression with 'recent-keys' and keyboard macros
4691         * src/keyboard.c (record_char): Don't record in 'recent_keys'
4692         events that come from executing keyboard macros.  (Bug#22674)
4694 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4696         Fix wording in a doc-view.el comment
4698         * lisp/doc-view.el (doc-view--current-cache-dir): Don't use
4699         "illegal" for something that is not against the law.
4701 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4703         CONTRIBUTE cleanups and updates
4705         * CONTRIBUTE: Mention URLs and info nodes more consistently,
4706         avoiding possibly-confusing punctuation adjacent to a URL, and
4707         giving full shell commands for 'info'.  Start with a brief but
4708         complete how-to, for people who want to get started right away.
4709         Then briefly discuss how to join the development process in the
4710         typical order.  Omit needless words.  Update some of the
4711         now-obsolete file names, info node names, and quoting styles.
4712         Better document emacs-NN branches and how they are merged.
4713         * admin/notes/git-workflow: Change emacs-24 to emacs-25,
4714         and trunk to master.  This file still needs work.
4716 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4718         Port USE_STACK_LISP_OBJECTS fix to Clang
4720         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false for Clang.
4721         Recent versions of Clang claim to be GCC 4.2.1 but do not have
4722         the GCC bug.
4724 2016-03-04  Paul Eggert  <eggert@cs.ucla.edu>
4726         Port to x86 GCC 4.3.1 and earlier
4728         This tries to port to x86 FreeBSD 9, where Emacs dumps core (Bug#22065).
4729         * src/lisp.h (USE_STACK_LISP_OBJECTS): Default to false
4730         for GCC 4.3.1 and earlier.
4732 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4734         Fix point movement under 'scroll-conservatively'
4736         * src/xdisp.c (redisplay_window): Correct a typo in computing the
4737         effective number of text lines in a window.  (Bug#22637)
4739 2016-03-04  Thomas Plass  <thomas.plass@arcor.de>
4741         Replace colon in file name (not legal on Windows)
4743         * lisp/doc-view.el (doc-view--current-cache-dir): Replace colon in file
4744         name (not legal on Windows). [tiny change]
4746 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4748         Fix a typo in edt.texi
4750         * doc/misc/edt.texi: Fix a typo in an email address.  Reported by
4751         "Herbert J. Skuhra" <herbert@mailbox.org>.
4753 2016-03-04  Eli Zaretskii  <eliz@gnu.org>
4755         Make 'mmap_realloc' on MS-Windows more reliable
4757         * src/w32heap.c (mmap_alloc): If reserving memory succeeds, but
4758         committing fails, return NULL.  Don't call GetLastError twice for
4759         the same API error.
4760         (mmap_realloc): Zero out MEMORY_BASIC_INFORMATION structures
4761         before calling VirtualQuery, to avoid using garbled values if the
4762         call fails.  If committing more pages from the same block fails,
4763         fall back on mmap_alloc + CopyMemory.  Enhance debugging printouts
4764         if the call to VirtualAlloc to commit more pages fails.
4765         (Bug#22526)
4767 2016-03-04  Oscar Fuentes  <ofv@wanadoo.es>
4769         Grep alias `all' shall not match parent directory
4771         * lisp/progmodes/grep.el (grep-files-aliases): Don't match parent
4772           directory for `all'. Fixes bug#22577
4774 2016-03-04  Nicolas Petton  <nicolas@petton.fr>
4776         Bump version to 25.0.91
4778         * README:
4779         * configure.ac:
4780         * msdos/sed2v2.inp: Bump version to 25.0.91.
4782 2016-03-04  Nicolas Petton  <nicolas@petton.fr>
4784         * etc/AUTHORS: Update the AUTHORS file
4786 2016-03-04  Glenn Morris  <rgm@gnu.org>
4787 2016-02-15  Glenn Morris  <rgm@gnu.org>
4789         * lisp/dired-aux.el: Require cl-lib.  (Bug#22613)
4791 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
4793         Index tilde characters in names of backup files
4795         * doc/emacs/files.texi (Backup Names): Improve indexing.
4796         (Bug#22625)
4798 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
4800         Document deprecation of hi-lock-mode's 'C-x w' bindings
4802         * doc/emacs/display.texi (Highlight Interactively): Deprecate the
4803         "C-x w" bindings of hi-lock-mode.
4805         * etc/NEWS: Mark the deprecation entry as documented.
4807 2016-02-15  Stefan Monnier  <monnier@iro.umontreal.ca>
4809         Announce that the `C-x w' bindings are deprecated
4811 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
4813         Suppress GNUstep hardening
4815         Fedora 23 normally hardens GNUstep applications, which causes
4816         ‘./configure --with-ns’ to break Emacs’s funky way of undumping.
4817         Fix this by eliding the hardening options (Bug#22518).
4818         * src/Makefile.in (LIBS_GNUSTEP): Omit options like
4819         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-ld’.
4820         (GNU_OBJC_CFLAGS): Omit options like
4821         ‘-specs=/usr/lib/rpm/redhat/redhat-hardened-cc1’.
4823 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
4825         Fix redisplay after a large insertion
4827         * src/xdisp.c (redisplay_internal): Don't accept the results of
4828         "optimization 3" if the cursor ends up in a partially visible
4829         glyph row.  (Bug22637)
4831 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
4833         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
4835         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
4837                 * lisp/gnus/nnimap.el (nnimap-change-group): Revert last
4838                 change.  (Bug#22634)
4840 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
4842         * lib-src/make-docfile.c: Include stdarg.h.
4844 2016-02-15  Alan Mackenzie  <acm@muc.de>
4846         Extend gpm-mouse-mode's doc string and doc to point out limitations.
4848         * lisp/t-mouse.el (gpm-mouse-mode): Extend doc string to indicate the
4849         inability to transfer text between Emacs and other programs which use GPM.
4851         * doc/emacs/frames.texi (Text-Only Mouse): Note the inability to transfer text
4852         between Emacs and other progrmas which use GPM.
4854 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
4856         Revert "Backport: * lisp/isearch.el: Turn char-folding off by default"
4858         * lisp/isearch.el: Turn char-folding back oon by default.
4860         This reverts commit 12c50e82c9b432b2fc31f8fb2215f43ceea80822.
4862 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
4864         Revert "Support integer image rotation and respect EXIF rotations"
4866         This reverts commit 0f600496050bf435f55dc81056e06fcd45992dc8.
4868         This change does not work on Fedora.
4870 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
4872         Revert "Document EXIF image rotation"
4874         This reverts commit 10b8ed27ec91ff52f93eb0297dcc3abb214931aa.
4876         This change does not work on Fedora, for instance.
4878 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
4880         Document OS X LANG default
4882         * doc/emacs/cmdargs.texi (General Variables):
4883         Document OS X Language and Region system preference.
4884         Suggested by Alan Third.
4886 2016-02-15  Alan Third  <alan@idiocy.org>
4888         Set locale when run from OS X GUI
4890         * src/emacs.c (main): Call ns_init_locale.
4891         * src/nsterm.m (ns_init_locale): Get locale from OS and set LANG.
4892         * src/nsterm.h: Include ns_init_locale.
4894 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
4896         make-docfile cleanup for I/O, etc.
4898         * lib-src/make-docfile.c (progname, generate_globals, num_globals)
4899         (num_globals_allocated, globals): Now static.
4900         (generate_globals, struct rcsoc_state, read_c_string_or_comment):
4901         (write_c_args, scan_c_stream, search_lisp_doc_at_eol, scan_lisp_file):
4902         Use bool for boolean.
4903         (verror): New function.
4904         (fatal, error): Use it.  API is now like printf.  All callers changed.
4905         (main): Remove err_count local that was always 0.
4906         (main, scan_c_stream, scan_lisp_file): Check for I/O error.
4907         (scan_file, scan_c_file, scan_c_stream, scan_lisp_file):
4908         Return void, not 0.
4909         (put_char, scan_keyword_or_put_char, scan_c_file): Use char for byte.
4910         (scan_keyword_or_put_char): Check for missing ( and unexpected EOF.
4911         (close_emacs_globals): Use ptrdiff_t for index, not int.
4912         (scan_c_file, scan_lisp_file): Exit with failure if file cannot be
4913         opened, rather than diagnosing but exiting with status 0.
4914         (search_lisp_doc_at_eol): Don't worry about ungetc of EOF; it's
4915         portable now.
4917 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
4919         Memory-management cleanup in make-docfile
4921         I compiled it with -fsanitize=address and fixed the leaks it detected.
4922         Also, I changed it to prefer signed to unsigned integer types,
4923         and to check for integer overflow.
4924         * lib-src/make-docfile.c:
4925         Include <stddef.h>, <stdint.h>, <intprops.h>, <min-max.h>.
4926         (memory_exhausted): New function.
4927         (xmalloc, xrealloc): Use it.
4928         (xmalloc, xrealloc, scan_file, struct rcsoc_state, write_c_args)
4929         (uncompiled, scan_lisp_file):
4930         Prefer signed integer types to unsigned.
4931         (xstrdup): Remove.  All uses removed.
4932         (num_globals, num_globals_allocated, write_globals, scan_c_stream):
4933         Use ptrdiff_t, not int, for indexes that in theory could exceed INT_MAX.
4934         (add_global): Use const to pacify --enable-gcc-warnings.
4935         Make a copy here, rather than relying on strdup calls later.
4936         (add_global, write_globals, scan_c_stream):
4937         Avoid integer overflow when calculating sizes.
4938         (write_globals, scan_c_stream, scan_lisp_file): Avoid memory leak.
4939         (scan_c_stream): Check for add_global failure.
4941 2016-02-15  Kevin Gallagher  <Kevin.Gallagher@boeing.com>
4943         Kevin Gallagher has new email address
4945         * lisp/emulation/edt.el:
4946         * lisp/emulation/edt-lk201.el:
4947         * lisp/emulation/edt-mapper.el:
4948         * lisp/emulation/edt-pc.el:
4949         * lisp/emulation/edt-vt100.el:
4950         * etc/edt-user.el:
4951         * doc/misc/edt.texi: Update Kevin Gallagher's email address.
4953 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
4955         Improve doc strings of 'forward/backward-word-strictly'
4957         * lisp/simple.el (backward-word): Refer to 'backward-word-strictly'
4958         in the doc string.  Suggested by Glenn Morris <rgm@gnu.org>.
4959         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
4960         Mention 'subword-mode' in the doc strings.
4962         * src/syntax.c (Fforward_word): Refer to 'forward-word-strictly'
4963         in the doc string.  (Bug#22560)
4965 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
4967         Describe Makefile test targets in test/README
4969         * CONTRIBUTE: Move Makefile test targets to test/README.
4971         * Makefile.in:
4972         * test/README: Describe Makefile test targets.
4974 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
4976         Backport: * lisp/isearch.el: Turn char-folding off by default
4978         (search-default-mode): Set default value to nil.
4980 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
4982         Document EXIF image rotation
4984         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
4986 2016-02-15  Dima Kogan  <dima@secretsauce.net>
4988         Support integer image rotation and respect EXIF rotations
4990         * src/image.c (imagemagick_load_image): Allow integer rotations in
4991         addition to floating point rotations (bug#22591).
4992         * src/image.c (imagemagick_load_image): Images that have an
4993         orientation given in EXIF and have no explicit :rotation tag are now
4994         pre-rotated.  All information such as width/height is reported for the
4995         rotated image.
4997 2016-02-15  Matthew Carter  <m@ahungry.com>
4999         Quote table names for postgres listings (sql-mode)
5001         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
5002           unquoted table names to the completion list.
5004 2016-02-15  Juri Linkov  <juri@linkov.net>
5006         * lisp/replace.el (replace-match-maybe-edit): Make arg `backward' optional.
5008         Doc fix.
5009         (replace-search, replace-highlight): Make arg `backward' optional.
5010         (Bug#18388)
5012 2016-02-15  Juri Linkov  <juri@linkov.net>
5014         * lisp/simple.el (next-line-or-history-element): Reset temporary-goal-column.
5016         (previous-line-or-history-element): Reset temporary-goal-column.
5017         Use end-of-visual-line instead of line-end-position.  (Bug#22544)
5019 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5021         Suppress ACL ops if configured with --disable-acl
5023         Without this patch, some ACL operations were suppressed, but not all.
5024         * src/fileio.c [!USE_ACL]: Do not include sys/acl.h.
5025         (Ffile_acl, Fset_file_acl) [!USE_ACL]: Return nil in this case.
5027 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5029         Mention web bugs
5031         * doc/misc/emacs-mime.texi (Display Customization):
5032         Mention web bugs in the mm-html-blocked-images section.
5034 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5036         Make mm-html-blocked-images default to "" again
5038         * lisp/gnus/mm-decode.el (mm-html-blocked-images):
5039         Default to "" that blocks all external images.
5041         * doc/misc/emacs-mime.texi (Display Customization):
5042         Mention that mm-html-blocked-images defaults to "".
5044 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5046         Minor alignas cleanup
5048         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
5049         over from the old way of doing things, before Bug#20862 was fixed.
5051 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5053         Add lmalloc commentary and tweak laligned
5055         * src/alloc.c (laligned): Help compiler in a tiny way by putting
5056         the more-commonly-failing disjunct first.
5058 2016-02-15  Eli Zaretskii  <eliz@gnu.org>
5060         Clarify documentation of key binding conventions
5062         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
5063         "punctuation characters" are reserved after "C-c".  (Bug#22604)
5065 2016-02-15  Oscar Fuentes  <ofv@wanadoo.es>
5067         * etc/NEWS: mention the `vc-faces' customization group
5069 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5071         Sync with gnulib
5073         This incorporates:
5074         2016-02-09 stdalign: port to clang 3.7.0
5075         2016-02-06 misc: port better to gcc -fsanitize=address
5076         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
5077         Copy from gnulib.
5079 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
5081         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
5083 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5085         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
5087         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
5088         (mm-html-blocked-images): Default to nil.
5090         * doc/misc/emacs-mime.texi (Display Customization): Mention that
5091         mm-html-inhibit-images and mm-html-blocked-images default to nil.
5093         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
5094         mm-html-blocked-images.
5096 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5098         Increase success rate of fallback lmalloc
5100         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
5101         larger and larger sizes, to increase the probability that
5102         the allocator will return a Lisp-aligned pointer.
5104 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5106         Make backgrounds extend to the end of the lines in shr
5108         * lisp/net/shr.el (shr-face-background): Faces can also be on
5109         the form `(:background "#fff)' (bug#22547).
5111 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5113         Make the `R' command get the correct relative <img>s
5115         * lisp/net/eww.el (eww-readable): Preserve the base URL so
5116         that image expansions are fetched from the right place (bug#22605).
5118         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
5120         Backport:
5122 2016-02-15  Mike Kupfer  <m.kupfer@acm.org>
5124         Fix typos in emacs-mime.texi and gnus.texi
5126         * doc/misc/emacs-mime.texi (Display Customization):
5127         * doc/misc/gnus.texi (HTML): Fix typo.
5129 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5131         * doc/misc/emacs-mime.texi (Display Customization):
5132         Doc fix for mm-html-inhibit-images.
5134 2016-02-15  Lars Ingebrigtsen  <larsi@gnus.org>
5136         Fix message-cross-post-followup-to group names
5138         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
5139         insert group names like "nntp+foo:zot", because those aren't valid.
5141 2016-02-15  David Edmondson  <dme@dme.org>
5143         Compare recipient and keys case-insensitively
5145         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
5146         recipient address with that from a key, do so in a case insensitive
5147         manner (bug#22603).
5149 2016-02-15  Glenn Morris  <rgm@gnu.org>
5151         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
5153 2016-02-15  Katsumi Yamaoka  <yamaoka@jpl.org>
5155         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
5157         * doc/misc/emacs-mime.texi (Display Customization):
5158         Remove mm-inline-text-html-with-images; add documentations for
5159         mm-html-inhibit-images and mm-html-blocked-images.
5161         * lisp/gnus/gnus-art.el (gnus-article-show-images):
5162         No need to bind mm-inline-text-html-with-images.
5163         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
5164         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
5165         bind mm-html-inhibit-images and mm-html-blocked-images.
5166         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
5167         (gnus-mm-display-part, gnus-mime-display-single)
5168         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
5170         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
5171         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
5172         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
5173         mm-html-inhibit-images and mm-html-blocked-images respectively
5174         instead of gnus-inhibit-images and gnus-blocked-images.
5176         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
5177         instead of mm-inline-text-html-with-images.
5179 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5181         Port to FreeBSD 11-CURRENT i386
5183         Problem reported by Herbert J. Skuhra in:
5184         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
5185         Instead of trying
5186         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
5187         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
5188         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
5189         (MALLOC_IS_GC_ALIGNED): New macro.
5190         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
5191         No longer needed now that alloc.c uses lmalloc and lrealloc.
5193 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
5195         Some fixes in file-notify-tests.el
5197         * test/automated/file-notify-tests.el
5198         (file-notify--test-with-events-check)
5199         (file-notify--test-with-events-explainer): New defuns.
5200         (file-notify--test-with-events): Use it.
5201         (file-notify-test07-backup): Fix docstring.  Some of the
5202         backends fire two `changed' events.  Backup by rename doesn't
5203         work for kqueue.
5205 2016-02-15  Michael Albinus  <michael.albinus@gmx.de>
5207         Fix Bug#22557
5209         * lisp/filenotify.el (file-notify-callback): Do not send a
5210         `stopped' event in case of backup by renaming.  (Bug#22557)
5212         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
5213         all targets but check and check-maybe.
5215         * test/automated/file-notify-tests.el
5216         (file-notify--test-read-event-timeout): New defconst.
5217         (file-notify--deftest-remote, file-notify--wait-for-events)
5218         (file-notify-test02-events)
5219         (file-notify-test04-file-validity)
5220         (file-notify-test06-many-events): Use it.
5221         (file-notify--test-cleanup): Make it more robust.  Delete also
5222         backup file.
5223         (file-notify-test07-backup): New test.
5225 2016-02-15  Paul Eggert  <eggert@cs.ucla.edu>
5227         Fix test for dladdr
5229         Problem reported by Andreas Schwab in:
5230         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
5231         * configure.ac (dladdr): Link with LIBMODULES when checking for
5232         this function.
5234 2016-02-15  Andreas Schwab  <schwab@linux-m68k.org>
5236         Fix gnus-group-get-new-news-this-group on group with closed server
5238         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
5239         method and pass to nnimap-open-server.
5241 2016-02-15  Artur Malabarba  <bruce.connor.am@gmail.com>
5242 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
5244         * doc/lispref/sequences.texi: Add documentation for seq-map-indexed
5246 2016-02-14  Nicolas Petton  <nicolas@petton.fr>
5248         New function seq-map-indexed
5250         * lisp/emacs-lisp/seq.el (seq-map-indexed): New function.
5251         * test/lisp/emacs-lisp/seq-tests.el: Add tests for seq-map-indexed.
5253 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5255         * lisp/gnus/mm-util.el: Remove the mm-string-as-multibyte alias.
5257 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5259         Fix problem with wrong encoding of non-ASCII message bodies
5261         * lisp/gnus/mml.el (mml-generate-mime-1): Disable
5262         multibyteness before encoding the data.
5264 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5266         Remove codepage setup code from mm-util
5268         * lisp/gnus/mm-util.el (mm-codepage-setup): Remove.
5269         (mm-codepage-iso-8859-list): Remove.
5270         (mm-codepage-ibm-list, mm-setup-codepage-iso-8859)
5271         (mm-setup-codepage-ibm): Remove.
5272         (mm-charset-eval-alist): Remove the code pages from the
5273         default value.
5275 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5277         Remove compat code for older Emacsen
5279         * lisp/gnus/gnus-art.el (gnus-button-url-regexp): Remove
5280         XEmacs compat code.
5282         * lisp/gnus/gnus-sync.el (gnus-sync-json-alist-p): Remove
5283         unused compat function.
5284         (gnus-sync-json-plist-p): Ditto.
5286         * lisp/gnus/message.el (message-default-charset): Make obsolete.
5287         (message-info): Remove compat code.
5288         (message-setup-fill-variables): Remove kludge needed earlier
5289         to not overwrite `normal-auto-fill-function'.
5290         (message-split-line): Remove compat code.
5292         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Remove
5293         compat code.
5295 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5297         Remove some compat functions from gmm-utils.el
5299         * lisp/gnus/gmm-utils.el (gmm-tool-bar-from-list): Remove
5300         compat code.
5301         (gmm-image-search-load-path): Remove.
5302         (gmm-image-load-path-for-library): Remove.
5304 2016-02-14  Lars Ingebrigtsen  <larsi@gnus.org>
5306         Remove the gmm-lazy and nnmail-lazy compat widgets
5308         * lisp/gnus/gmm-utils.el (gmm-lazy): Remove.
5310         * lisp/gnus/nnmail.el (nnmail-lazy): Remove.
5312 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5314         Clean up nnimap-request-move-article slightly
5316         * lisp/gnus/nnheader.el (subr-x): Require.
5318         * lisp/gnus/nnimap.el (nnimap-request-move-article): Clean up
5319         the code slightly.
5321 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5323         Use open-network-stream instead of open-protocol-stream
5325         * lisp/gnus/nnimap.el: Use open-network-stream instead of
5326         open-protocol-stream.
5328         * lisp/gnus/nntp.el: Ditto.
5330         * lisp/gnus/pop3.el: Ditto.
5332         * lisp/gnus/sieve-manage.el: Ditto.
5334         * lisp/net/network-stream.el (open-protocol-stream): Make obsolete.
5336 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5338         Remove compat code that relies on (featurep 'mule)
5340         * lisp/gnus/gnus-group.el (gnus-group-name-decode): Remove
5341         compat code.
5343         * lisp/gnus/gnus-start.el (gnus-read-descriptions-file):
5344         Remove compat code.
5346         * lisp/gnus/mm-bodies.el (mm-decode-body, mm-decode-string):
5347         Remove compat code.
5349         * lisp/gnus/mm-view.el (mm-w3m-standalone-supports-m17n-p):
5350         Remove compat code.
5351         (mm-w3m-standalone-supports-m17n-p): Ditto.
5353 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5355         Remove compat functions from starttls.el
5357         * lisp/gnus/starttls.el
5358         (starttls-set-process-query-on-exit-flag): Remove.
5360 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5362         Remove compat functions from smime.el
5364         * lisp/gnus/smime.el (smime-replace-in-string): Remove.
5365         (smime-make-temp-file): Remove.
5367 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5369         Remove compat code from smiley
5371         * lisp/gnus/smiley.el (smiley-style): Remove compat code.
5373 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5375         Remove compat code from rfc2047
5377         * lisp/gnus/rfc2047.el (rfc2047-encode-message-header): Remove
5378         compat code.
5379         (rfc2047-decode-string): Ditto.
5381 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5383         Remove compat function from pop3
5385         * lisp/gnus/pop3.el (pop3-set-process-query-on-exit-flag): Remove.
5387 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5389         Remove compat code in Gnus backends
5391         * lisp/gnus/nndiary.el (nndiary-error): Remove.
5393         * lisp/gnus/nndraft.el (nndraft-request-associate-buffer): Ditto.
5395         * lisp/gnus/nnfolder.el (nnfolder-read-folder): Ditto.
5397         * lisp/gnus/nnheader.el (nnheader-find-file-noselect): Ditto.
5399         * lisp/gnus/nnimap.el (nnimap-log-buffer): Remove compat code.
5401 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5403         Remove compat code from some mml files
5405         * lisp/gnus/mml-sec.el (mml-secure-passphrase-cache-expiry):
5406         Remove compat code.
5408         * lisp/gnus/mml-smime.el (mml-smime-openssl-sign-query):
5409         Always use `mail-extract-address-components', since this isn't
5410         time critical.
5411         (mml-smime-get-dns-cert): Ditto.
5413         * lisp/gnus/mml.el (mml-preview): Remove compat code.
5415 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5417         Remove compat code and compat functions from mm-util.el
5419         * lisp/gnus/mm-util.el (mm-mime-mule-charset-alist): Remove
5420         compat code.
5421         (mm-coding-system-priorities)
5422         (mm-mule-charset-to-mime-charset, mm-charset-after)
5423         (mm-mime-charset, mm-iso-8859-x-to-15-region): Remove compat code.
5424         (mm-detect-coding-region): Define unconditionally.
5425         (mm-detect-mime-charset-region): Ditto.
5426         (mm-coding-system-to-mime-charset): It's 'mime-charset now.
5427         (coding-system-name)
5428         (find-file-coding-system-for-read-from-filename)
5429         (find-operation-coding-system): Remove aliases.
5431 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5433         Remove some compat code from mm-*.el
5435         * lisp/gnus/mm-bodies.el (mm-decode-body): Ditto.
5437         * lisp/gnus/mm-decode.el (mm-tmp-directory)
5438         (mm-valid-image-format-p): Remove compat code.
5440         * lisp/gnus/mm-url.el (mm-url-insert-file-contents): Remove
5441         "Connection" "Close" workaround for older Emacsen.
5443 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5445         Remove compat code and functions from message.el
5447         * lisp/gnus/message.el (message-send-mail-function): Remove
5448         compat code.
5449         (message-dont-reply-to-names, message-mode)
5450         (message-setup-fill-variables, message-fill-paragraph)
5451         (message-remove-blank-cited-lines, message-make-from)
5452         (message-forward-rmail-make-body, message-tool-bar-gnome)
5453         (message-tab): Remove compat code.
5454         (message-completion-in-region): Remove.
5455         (message-read-from-minibuffer): Remove compat code.
5457 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5459         Declare rfc1843 instead of autoloading
5461         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Declare
5462         instead of autoload.
5464 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
5466         Avoid signaling an error in 'dired-do-find-regexp-and-replace'
5468         * lisp/dired-aux.el: Require cl-lib, so that 'cl-mapcan' is
5469         autoloaded correctly.  (Bug#22613)
5471 2016-02-13  Eli Zaretskii  <eliz@gnu.org>
5473         Fix network-stream-tests.el for MS-Windows
5475         * test/lisp/net/network-stream-tests.el
5476         (connect-to-tls-ipv6-nowait): Skip for MS-Windows builds.
5477         (connect-to-tls-ipv4-wait): Add a 0.1 sleep-for.
5479 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5481         Remove some Message compat functions
5483         * lisp/gnus/message.el (message-kill-all-overlays): Define
5484         unconditionally.
5485         (message-window-inside-pixel-edges): Remove.
5486         (mail-dont-reply-to): Remove.
5488 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5490         Remove some Gnus compat code
5492         * lisp/gnus/gnus-art.el (gnus-mime-inline-part): Remove compat code.
5493         (gnus-mm-display-part): Ditto.
5495         * lisp/gnus/gnus-start.el (gnus-dribble-read-file): Remove
5496         compat code.
5498 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5500         Sort groups before inserting them into the group buffer
5502         * lisp/gnus/gnus-group.el (gnus-group-describe-all-groups):
5503         Sort groups before inserting them.
5505 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5507         Make "unseen" tracking work again in Gnus
5509         * lisp/gnus/gnus-sum.el (gnus-update-marks): Make "unseen"
5510         tracking work again.
5512 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5514         Remove Gnus compat functions defined in gnus.el
5516         * lisp/gnus/gnus.el (gnus-extent-detached-p): Remove.
5517         (gnus-extent-start-open, gnus-character-to-event)
5518         (gnus-assq-delete-all, gnus-add-text-properties)
5519         (gnus-put-text-property, gnus-key-press-event-p):
5521 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5523         Remove compat code from gnus-uu and win
5525         * lisp/gnus/gnus-util.el (gnus-image-type-available-p): Remove
5526         compat code.
5528         * lisp/gnus/gnus-uu.el (gnus-uu-tmp-dir): Remove compat code.
5530         * lisp/gnus/gnus-win.el (gnus-frames-on-display-list): Remove.
5532 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5534         Remove several gnus-util compat functions
5536         * lisp/gnus/gnus-util.el (gnus-set-process-query-on-exit-flag): Remove.
5537         (gnus-read-shell-command): Remove.
5538         (gnus-match-substitute-replacement): Remove.
5539         (gnus-string-match-p): Remove.
5540         (gnus-string-prefix-p): Remove.
5542 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5544         Remove the gnus-merge alias
5546         * lisp/gnus/gnus-util.el (gnus-merge): Remove.
5548 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5550         Remove the gnus-union alias
5552         * lisp/gnus/gnus-util.el (gnus-union): Remove.
5554 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5556         Remove the gnus-delete-alist alias
5558         * lisp/gnus/gnus-util.el (gnus-run-mode-hooks): Remove compat code.
5559         (gnus-delete-alist): Remove.
5561 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5563         Remove the gnus-float-time alias
5565         * lisp/gnus/gnus-util.el (gnus-completion-styles): Remove
5566         compat code.
5567         (gnus-float-time): Remove.
5569 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5571         Remove compat code from gnus-srvr, start and sum
5573         * lisp/gnus/gnus-srvr.el (gnus-browse-foreign-server): Remove
5574         compat code.
5576         * lisp/gnus/gnus-start.el (gnus-check-reasonable-setup):
5577         Remove compat code.
5579         * lisp/gnus/gnus-sum.el (gnus-summary-display-arrow)
5580         (gnus-summary-make-menu-bar, gnus-summary-make-tool-bar)
5581         (gnus-recenter)
5582         (gnus-summary-limit-strange-charsets-predicate)
5583         (gnus-summary-show-thread): Remove compat code.
5585 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5587         Remove compat code from gnus-spec.el
5589         * lisp/gnus/gnus-spec.el (gnus-lrm-string-p): Remove compat code.
5590         (gnus-balloon-face-function): Remove compat code.
5592 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5594         Fix compat change in last check-in
5596         * lisp/gnus/gnus-group.el
5597         (gnus-group-name-charset-group-alist): `find-coding-system'
5598         doesn't exist in Emacs.
5600 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5602         Always use url-queue
5604         * lisp/gnus/gnus-html.el (gnus-html-schedule-image-fetching):
5605         Always use url-queue.
5607 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5609         Remove compat functions from gnus-html.el
5611         * lisp/gnus/gnus-html.el (gnus-html-encode-url-chars): Remove.
5613 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5615         Remove compat code from gnus-group.el
5617         * lisp/gnus/gnus-group.el (gnus-group-name-charset-group-alist)
5618         (gnus-group-make-tool-bar, gnus-group-update-tool-bar): Remove compat code.
5620 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5622         Define gnus-diary-kill-entire-line unconditionally
5624         * lisp/gnus/gnus-diary.el (gnus-diary-kill-entire-line):
5625         Define unconditionally.
5627 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5629         Remove compat code from gnus-cache and gnus-bookmark
5631         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-bmenu-mode-map): Ditto.
5633         * lisp/gnus/gnus-cache.el (gnus-cache-decoded-group-name):
5634         Remove compat code.
5636 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5638         Remove compat code from gnus-art.el
5640         * lisp/gnus/gnus-art.el (gnus-article-prepare)
5641         (gnus-mime-copy-part, gnus-output-to-file)
5642         (gnus-article-reply-with-original)
5643         (gnus-button-handle-apropos-variable)
5644         (gnus-button-handle-apropos-documentation):
5646 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5648         Remove compat code from gnus-agent.el
5650         * lisp/gnus/gnus-agent.el (gnus-agent-make-mode-line-string):
5651         Remove compat code.
5653 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5655         Rewrite gmm-labels usage to use cl-labels
5657         * lisp/gnus/gmm-utils.el (gmm-tool-bar-style): Remove compat code.
5658         (gmm-labels): Remove.
5660 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5662         Remove compat code from canlock.el
5664         * lisp/gnus/canlock.el (defmacro): Remove
5666 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5668         Remove compat code from auth-source
5670         * lisp/gnus/auth-source.el (auth-source-read-char-choice):
5671         Remove compat code.
5673 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5675         Fix gnus-group.el compilation warnings about unprefixed variables
5677         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): Avoid
5678         compilation warnings by passing in the dynamic variables as
5679         explicit lexical parameters to `eval'.
5681 2016-02-13  Lars Ingebrigtsen  <larsi@gnus.org>
5683         Fix the :tracker slot name
5685         * lisp/gnus/registry.el (registry-lookup-secondary): The
5686         `tracker' slot is called `tracker', not `:tracker'.
5688 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5690         Fix compilation warnings in gnus-art.el
5692         * lisp/gnus/gnus-art.el (rfc1843-decode-region): Autoload.
5693         (gnus-article-hide): Avoid compilation warnings.
5695 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5697         Fix compilation warning in gnus-score.el
5699         * lisp/gnus/gnus-score.el (gnus-art): Require to silence byte
5700         compiler.
5702 2016-02-12  Andreas Schwab  <schwab@linux-m68k.org>
5704         Revert "Fix gnus-group-get-new-news-this-group on group with closed server"
5706         This reverts commit 9dc77e37aa84c6df9b3ddb4609f3c09201b0580e.
5708         This makes nnimap groups not be activated.
5710 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5712         Fix encoding problem introduced by previous patch series
5714         * lisp/gnus/rfc2047.el: Ditto (bug#22648).
5716         * lisp/gnus/rfc2231.el: Fix problem created by the
5717         mm-replace-in-string conversion.
5719 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5721         Revert "Avoid defvarring prefix-less variables"
5723         This reverts commit 303390bda34f98b400798d5383cf0d722e35ba19.
5725         The defvars are needed if we're doing lexical-binding
5727 2016-02-12  Glenn Morris  <rgm@gnu.org>
5729         * test/lisp/url/url-auth-tests.el (url-auth-test-digest-auth):
5730         Make it pass.
5732         * test/lisp/url/url-auth-tests.el
5733         (url-auth-test-digest-auth-retrieve-cache): Fix obvious typo.
5735 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5737         Finish up cl-defmethoding registry,el
5739         * lisp/gnus/registry.el (initialize-instance): Use cl-defmethod.
5741 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5743         Revert the gnus-replace-in-string change, fix arguments, reapply
5745 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5747         Silence more message.el compilation warnings
5749         * lisp/gnus/message.el (message-generate-headers): Don't use
5750         variable values directly to get the header values, because
5751         that breaks with lexical binding (without unprefixed defvars).
5753 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5755         Fix various compilation warnings in message.el
5757         * lisp/gnus/message.el (message-fix-before-sending): Use
5758         read-multiple-choice instead of gnus-multiple-choice.
5759         (mm-util): Require.
5760         (rfc2047): Require.
5761         (message-remove-blank-cited-lines): Use message instead of
5762         gnus-message.
5763         (message-send): Use y-or-n-p instead of gnus-y-or-n-p.
5765 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5767         Silence compilation warning in mm-view
5769         * lisp/gnus/mm-view.el (mm-display-inline-fontify): Silence
5770         compilation warning.
5772 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5774         Fix epg-related compilation warnings in mml-sec
5776         * lisp/gnus/mml-sec.el: Fix compilation warnings from the epg
5777         library.
5779 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5781         rmail-dont-reply-to-names is obsolete
5783         * lisp/gnus/nnmail.el (nnmail-fancy-expiry-target): Don't bind
5784         the obsolete `rmail-dont-reply-to-names' variable.
5786 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5788         Partially revert the defmethod->cl-defmethod change in registry.el
5790         * lisp/gnus/registry.el (initialize-instance): Use defmethod,
5791         since cl-defmethod doesn't work with :after.
5792         (initialize-instance): Ditto, but with :before.
5794 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5796         Avoid obsolete function in plstore
5798         * lisp/gnus/plstore.el (plstore--insert-buffer): Use setf
5799         instead of the obsolete epg-context-set-armor.
5801 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5803         Use cl-defmethod in registry.el
5805         * lisp/gnus/registry.el: Use cl-defmethod instead of the
5806         obsolete defmethod.
5808 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5810         Make sieve-manage require sasl
5812         * lisp/gnus/sieve-manage.el: Fix compilation warning by
5813         requiring sasl.
5815 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5817         Avoid defvarring prefix-less variable
5819         * lisp/gnus/mm-uu.el (mm-uu-entry): Rename from `entry'.
5821 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5823         * lisp/gnus/mailcap.el: Remove usage of mailcap-delete-duplicates.
5825 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5827         Don't use the obsolete char-valid-p function
5829         * lisp/gnus/mm-url.el (mm-url-decode-entities): Don't use the
5830         obsolete char-valid-p function.
5832 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5834         Fix missed translation in a previous commit
5836         * lisp/gnus/mailcap.el (mailcap-mime-types): Fix missed
5837         translation of mailcap-delete-duplicates.
5839 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5841         Avoid using mm-make-temp-file
5843         * lisp/gnus/mail-source.el (mail-source-delete-crash-box): Ditto.
5845         * lisp/gnus/mm-decode.el (mm-display-external): Ditto.
5847         * lisp/gnus/mml-smime.el (mml-smime-openssl-encrypt): Ditto.
5849 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5851         Fix compilation warning in gnus-start
5853         * lisp/gnus/gnus-start.el (gnus-slave-save-newsrc): Avoid
5854         mm-make-temp-file.
5856 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5858         Avoid the obsoleted defmethod
5860         * lisp/gnus/gnus-icalendar.el: Use cl-defmethod instead of
5861         defmethod.
5863 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5865         Avoid defvarring prefix-less variables
5867         * lisp/gnus/gnus-group.el (gnus-group-update-eval-form): We
5868         don't need to `defvar' the short variables to allow `eval' to
5869         use them.
5871 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5873         nnweb doesn't need unibyte buffers
5875         * lisp/gnus/nnweb.el (nnweb-retrieve-headers)
5876         (nnweb-read-overview, nnweb-request-article)
5877         (nnweb-google-reference): Unibyte buffers are not needed here.
5879 2016-02-12  Lars Ingebrigtsen  <larsi@gnus.org>
5881         Encode before sending from nnspool
5883         * lisp/gnus/nnspool.el (nnspool-request-post): Encode data
5884         before sending it to the news server.
5886 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5888         nnrss buffers don't have to be unibyte
5890         * lisp/gnus/nnrss.el (nnrss-insert): The buffer doesn't have
5891         to be unibyte just to receive data, I think.
5893 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5895         Don't use mm-with-unibyte-current-buffer in mml2015
5897         * lisp/gnus/mml2015.el (mml2015-mailcrypt-encrypt): Don't use
5898         mm-with-unibyte-current-buffer.
5900 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5902         Don't use mm-with-unibyte-current in mml1991
5904         * lisp/gnus/mml1991.el (mml1991-epg-sign): Don't use
5905         mm-with-unibyte-current.
5907 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5909         Don't use mm-with-unibyte-current in mml1991
5911         * lisp/gnus/mml1991.el (mml1991-pgg-sign): Don't use
5912         mm-with-unibyte-current.
5914 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5916         Don't use mm-with-unibyte-buffer in utf7
5918         * lisp/gnus/utf7.el (utf7-fragment-encode): Don't use
5919         mm-with-unibyte-buffer.
5921 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5923         Remove XEmacs compat code from Gnus helper libraries
5925         * lisp/gnus/plstore.el (plstore-called-interactively-p): Remove.
5927         * lisp/gnus/pop3.el (pop3-make-date): Remove XEmacs compat.
5929         * lisp/gnus/sieve-mode.el: Remove XEmacs compat.
5931         * lisp/gnus/spam-stat.el (spam-stat-called-interactively-p): Remove.
5933 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5935         Remove XEmacs compat code from Gnus backends
5937         * lisp/gnus/mm-view.el (mm-inline-image-xemacs): Remove.
5938         (mm-inline-image): Rename from mm-inline-image-emacs.
5940         * lisp/gnus/mml.el: Remove XEmacs compat code.
5942         * lisp/gnus/nnheader.el: Remove XEmacs compat code.
5944         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Remove
5945         XEmacs compat code.
5947         * lisp/gnus/nnir.el (nnir-run-gmane): Remove XEmacs compat code.
5949         * lisp/gnus/nnmail.el (nnmail-pathname-coding-system): Remove
5950         XEmacs compat code.
5952         * lisp/gnus/nnmairix.el: Remove XEmacs compat code.
5954         * lisp/gnus/nnrss.el: Remove XEmacs compat code.
5956         * lisp/gnus/nntp.el: Remove XEmacs compat code.
5958 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5960         Remove XEmacs compat functions from mm-util.el
5962         * lisp/gnus/mm-util.el (mm-special-display-p): Remove.
5963         (mm-decode-coding-string, mm-encode-coding-string)
5964         (mm-decode-coding-region, mm-encode-coding-region): Remove.
5965         (mm-string-to-multibyte): Remove.
5966         (mm-char-or-char-int-p): Remove.
5967         (mm-ucs-to-char): Remove compat versions of the function.
5968         (mm-read-coding-system): Remove.
5969         (mm-coding-system-p): Remove compat code.
5970         (mm-enrich-utf-8-by-mule-ucs): Remove.
5971         (mm-enable-multibyte, mm-disable-multibyte): Remove compat versions.
5972         (mm-delete-duplicates): Remove.
5973         (mm-multibyte-p): Remove compat versions.
5974         (mm-xemacs-find-mime-charset-1): Remove.
5975         (mm-xemacs-find-mime-charset): Remove.
5976         (mm-make-temp-file): Made obsolete.
5977         (mm-find-buffer-file-coding-system): Remove XEmacs compat.
5979 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5981         Remove Message and mm-decode XEmacs compat code
5983         * lisp/gnus/message.el: Remove XEmacs compat code.
5985         * lisp/gnus/mm-decode.el (mm-create-image-xemacs): Remove.
5987         * lisp/gnus/mm-util.el: Remove some XEmacs compat code.
5989 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5991         Remove som XEmacs compat code from message.el
5993         * lisp/gnus/message.el: Remove some XEmacs compat code.
5995 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
5997         Remove XEmacs compat code from ietf-drums.el
5999         * lisp/gnus/ietf-drums.el (ietf-drums-syntax-table): Drop
6000         XEmacs compat.
6002 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6004         Remove XEmacs compat code from gravatar.el
6006         * lisp/gnus/gravatar.el: Remove XEmacs compat code from
6007         gravatar.el.
6009 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6011         Remove more XEmacs compat code from Gnus
6013         * lisp/gnus/gnus-util.el (gnus-bound-and-true-p): Remove.
6014         (gnus-timer--function): Remove.
6016         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Remove XEmacs
6017         19.2 compat.
6019         * lisp/gnus/gnus-win.el: Remove XEmacs compat code.
6021 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6023         Remove more XEmacs compat functions from gnus-util.el
6025         * lisp/gnus/gnus-util.el (gnus-put-display-table): Remove.
6026         (gnus-get-display-table): Remove.
6027         (gnus-format-message): Remove.
6029 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6031         Remove more XEmacs compat functions from Gnus
6033         * lisp/gnus/gnus-util.el (gnus-next-char-property-change): Remove.
6034         (gnus-previous-char-property-change): Remove.
6035         (gnus-graphic-display-p): Remove.
6036         (gnus-select-frame-set-input-focus): Remove.
6038 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6040         Remove more XEmacs compat code from gnus-util
6042         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
6043         all its usages).
6044         (gnus-invisible-p): Remove.
6046 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6048         Remove gnus-make-local-hook
6050         * lisp/gnus/gnus-util.el (gnus-make-local-hook): Remove (and
6051         all its usages).
6053 2016-02-11  Lars Ingebrigtsen  <larsi@gnus.org>
6055         gnus-replace-in-string -> replace-regexp-in-string
6057         * lisp/gnus/gnus-util.el (gnus-replace-in-string): Declare
6058         obsolete.  Transform all usages of it into
6059         replace-regexp-in-string.
6061         * lisp/gnus/mailcap.el (mailcap-replace-in-string): Remove.
6063 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6065         Remove Gnus XEmacs compat
6067         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Remove comment
6068         about code that doesn't work in XEmacs.
6070         * lisp/gnus/gnus-sum.el: Remove XEmacs compat.
6072         * lisp/gnus/gnus-topic.el: Remove XEmacs compat.
6074 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6076         Remove compat functions in gnus-spec.el
6078         * lisp/gnus/gnus-spec.el (gnus-string-width-function): Remove.
6079         (gnus-substring-function): Remove.
6080         (gnus-use-correct-string-widths): Remove.
6081         (gnus-make-format-preserve-properties): Remove.
6082         (gnus-xmas-format): Remove.
6084         * lisp/gnus/gnus-srvr.el (gnus-server-mode): Remove XEmacs compat.
6086 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6088         Remove Gnus XEmacs compat functions
6090         * lisp/gnus/gnus-registry.el: Remove XEmacs compat.
6092         * lisp/gnus/gnus-salt.el: Remove XEmacs compat.
6094         * lisp/gnus/gnus-score.el (gnus-decay-score): Remove XEmacs compat.
6096 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6098         Remove Gnus XEmacs compatibility
6100         * lisp/gnus/gnus-demon.el (gnus-demon-idle-since): Remove
6101         XEmacs compat.
6103         * lisp/gnus/gnus-dired.el: Remove XEmacs compat.
6105         * lisp/gnus/gnus-draft.el: Remove XEmacs compat.
6107         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-insert): Remove
6108         XEmacs compat.
6110         * lisp/gnus/gnus-group.el: Remove XEmacs compat.
6112         * lisp/gnus/gnus-html.el: Remove XEmacs compat.
6114         * lisp/gnus/gnus-ml.el: Remove XEmacs compat.
6116         * lisp/gnus/gnus-picon.el (gnus-picon-style): Remove XEmacs comment.
6118 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6120         Don't use image-map if it isn't defined
6122         * lisp/net/shr.el (shr-image-map): Only use image-map as a
6123         parent if it's defined (bug#22614).
6125 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6127         Check for MagickAutoOrientImage
6129         * configure.ac: Check for MagickAutoOrientImage.
6131         * src/image.c (imagemagick_load_image): Don't use
6132         MagickAutoOrientImage unless it's available.
6134 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6136         Document EXIF image rotation
6138         * doc/lispref/display.texi (ImageMagick Images): Mention EXIF rotation.
6140 2016-02-10  Dima Kogan  <dima@secretsauce.net>
6142         Support integer image rotation and respect EXIF rotations
6144         * src/image.c (imagemagick_load_image): Allow integer rotations in
6145         addition to floating point rotations (bug#22591).
6146         * src/image.c (imagemagick_load_image): Images that have an
6147         orientation given in EXIF and have no explicit :rotation tag are now
6148         pre-rotated.  All information such as width/height is reported for the
6149         rotated image.
6151 2016-02-10  Wolfgang Jenkner  <wjenkner@inode.at>
6153         * lisp/net/shr.el (image-map): Defvar it.  (Bug#22614)
6155 2016-02-10  Lars Ingebrigtsen  <larsi@gnus.org>
6157         * lisp/gnus/gnus-cite.el: Remove XEmacs compat code.
6159 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6161         Remove compat code from gnus-bookmark.el
6163         * lisp/gnus/gnus-bookmark.el (gnus-bookmark-mouse-available-p): Remove.
6164         (gnus-bookmark-remove-properties): Remove.
6166 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6168         Remove XEmacs compat code from gnus-a*.el
6170         * lisp/gnus/gnus-agent.el: Remove compat code.
6172         * lisp/gnus/gnus-art.el: Remove compat code.
6174         * lisp/gnus/gnus-async.el: Remove compat code.
6176 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6178         Remove gmm compat functions
6180         * lisp/gnus/gmm-utils.el (gmm-image-search-load-path): Remove.
6181         (gmm-write-region): Remove.
6182         (gmm-called-interactively-p): Remove.
6184 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6186         * lisp/gnus/ecomplete.el: Remove XEmacs compat code.
6188 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6190         Remove compat code from compface.el
6192         * lisp/gnus/compface.el: Remove XEmacs compat code throughout.
6194 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6196         Remove the now empty gnus-ems.el and references to it
6198 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6200         Remove Gnus compat names for mouse bindings
6202         * lisp/gnus/gnus-ems.el (gnus-widget-button-keymap): Remove.
6203         (gnus-down-mouse-2): Remove.
6204         (gnus-down-mouse-3): Remove.
6206 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6208         Drop Gnus compat functions
6210         * lisp/gnus/gnus-ems.el (gnus-mule-max-width-function): Remove.
6212         * lisp/gnus/gnus-util.el (gnus-kill-all-overlays): Move here.
6214         * lisp/gnus/gnus.el (gnus-mode-line-modified): Remove.
6216 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6218         Get rid of gnus-ems-redefine
6220         * lisp/gnus/gnus-ems.el (gnus-mouse-face-prop): Remove.
6222 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6224         * lisp/gnus/gnus-spec.el: Move definition here from gnus-ems.el.
6226 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6228         Remove Gnus compat code
6230         * lisp/gnus/gnus-ems.el (gnus-ems-redefine): Remove
6231         transitional code from ten years ago.
6233 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6235         Allow interactively scaling past :max-width etc
6237         * lisp/image.el (image--current-scaling)
6238         (image--image-without-parameters): New functions.
6239         (image--change-size): Use them to allow changing the size of a
6240         image even if it has :width/:max-width (etc.) already set.
6242 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6244         * lisp/gnus/mm-decode.el (shr-image-map): Compilation fix.
6246 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6248         Allow accessing the image commands via shr
6250         * lisp/gnus/mm-decode.el (mm-convert-shr-links): Allow
6251         accessing the image commands.
6253         * lisp/net/shr.el (shr-image-map): New map used for images.
6254         (shr-urlify): Don't overwrite image maps when applying URL maps.
6256 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6258         Use a sparse image keymap
6260         * lisp/image.el (image-map): Use a sparse keymap.
6262 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6264         Put a keymap on images created with insert-image and friends
6266         * lisp/image.el (image-save): New command.
6267         (image-rotate): Ditto.
6268         (image-map): New keymap.
6269         (insert-image): Put the image-map on all images.
6270         (insert-sliced-image): Ditto.
6271         * doc/lispref/display.texi (Showing Images): Document the
6272         image map.
6274 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6276         Fix some folding issues in read-multiple-choice
6278         * lisp/subr.el (read-multiple-choice): Fix folding when you
6279         have many items.
6281 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6283         Fix typo in last checkin
6285 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6287         Remove Gnus compat functions
6289         * lisp/gnus/gnus-ems.el (gnus-mark-active-p)
6290         (gnus-region-active-p, gnus-select-lowest-window)
6291         (gnus-summary-display-table, gnus-max-width-function): Remove
6292         compat functions.
6294 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6296         Move non-compat Gnus functions to gnus-util.el
6298         * lisp/gnus/gnus-util.el (gnus-remove-image, gnus-put-image)
6299         (gnus-create-image, gnus-image-type-available-p): Move here
6300         from gnus-ems.el, since these aren't compat functions.
6302 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6304         Omit valloc decl if redundant
6306         * src/gmalloc.c (valloc): Omit decl if malloc.h is included,
6307         to pacify --enable-gcc-warnings.
6309 2016-02-09  Wolfgang Jenkner  <wjenkner@inode.at>
6311         Restore the calloc family.
6313         * src/gmalloc.c (calloc, gcalloc, hybrid_calloc): Restore definitions.
6314         They were lost in a4817d8 but calloc is still (marginally) used in
6315         code statically liked with emacs, so hybrid_calloc is needed.
6316         Also, in the non-hybrid case, we can't get rid of calloc anyway as
6317         other libraries liked with emacs may need it.
6318         * src/conf_post.h: Restore redefinition of calloc to hybrid_calloc.
6320 2016-02-09  Lars Ingebrigtsen  <larsi@gnus.org>
6322         Remove some Gnus compat functions
6324         * lisp/gnus/gnus-ems.el (gnus-string-mark-left-to-right)
6325         (gnus-window-inside-pixel-edges, gnus-set-process-plist)
6326         (gnus-process-plist, gnus-process-get, gnus-process-put): Remove.
6328 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6330         -
6332         -
6334 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6336         Merge from origin/emacs-25
6338         4feb962 * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
6339         cc419fb Don't inloop gnus-uu-mark-thread on the last thread
6340         51c77a2 Display non-ASCII group names better in prompts
6341         f93d669 Default to gpg2 instead of gpg
6343 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6345         Merge from origin/emacs-25
6347         9ffe7dd * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
6348         16140f7 * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
6349         3db6adb * lisp/isearch.el (search-default-mode)
6350         4ea1ea7 * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
6351         c77ffc8 Use monitor's resolution for positioning tooltips
6352         49e5749 Fix file-notify-test on MS-Windows
6353         be1d874 Fix issues found by auditing w32notify code
6354         87ae218 Extend etags Ruby support for accessors
6355         aa35257 Update publicsuffix.txt.
6356         6816bff Ensure that Gnus dribble handling allows removing entries
6357         691feae Be consistent when using encoded strings in nnimap data
6358         3ed423b Display the decoded Gnus group name
6359         5428b5b Use completion-ignore-case instead of defining command
6361 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6363         Merge from origin/emacs-25
6365         1eaf68f * test/automated/file-notify-tests.el (file-notify-test06-many-events):
6366         d333716 ; * etc/NEWS: Expand news entry for scss-mode
6367         c32c16f ; Better document changes in ls-lisp default behavior
6368         dc6eed2 Fix doc string of tls-program
6370 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6372         Merge from origin/emacs-25
6374         2c117fc * etc/NEWS: Document new mpc.el features
6375         71a0496 * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
6376         9dfece1 Correctly fontify C++ initializations which "look like" functions.
6377         4485222 Improve newsticker-treeview-selection-face
6378         4236944 Minor fix in tagging Ruby accessors by etags
6379         35fc77d Spelling fixes
6380         3dda110 Remove 'def X' from the example
6382 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6384         Minor alignas cleanup
6386         * src/lisp.h (alignas): Remove now-redundant #ifdef that was left
6387         over from the old way of doing things, before Bug#20862 was fixed.
6389 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6391         Add lmalloc commentary and tweak laligned
6393         * src/alloc.c (laligned): Help compiler in a tiny way by putting
6394         the more-commonly-failing disjunct first.
6396 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
6398         Clarify documentation of key binding conventions
6400         * doc/lispref/tips.texi (Key Binding Conventions): Clarify which
6401         "punctuation characters" are reserved after "C-c".  (Bug#22604)
6403 2016-02-09  Oscar Fuentes  <ofv@wanadoo.es>
6405         * etc/NEWS: mention the `vc-faces' customization group
6407 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6409         Sync with gnulib
6411         This incorporates:
6412         2016-02-09 stdalign: port to clang 3.7.0
6413         2016-02-06 misc: port better to gcc -fsanitize=address
6414         * doc/misc/texinfo.tex, lib/stdalign.in.h, m4/acl.m4, m4/getgroups.m4:
6415         Copy from gnulib.
6417 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
6419         * CONTRIBUTE: Add more examples for $(SELECTOR) make variable.
6421 2016-02-09  Katsumi Yamaoka  <yamaoka@jpl.org>
6423         Make mm-html-inhibit-images and mm-html-blocked-images default to nil
6425         * lisp/gnus/mm-decode.el (mm-html-inhibit-images)
6426         (mm-html-blocked-images): Default to nil.
6428         * doc/misc/emacs-mime.texi (Display Customization): Mention that
6429         mm-html-inhibit-images and mm-html-blocked-images default to nil.
6431         * etc/NEWS (Gnus): Document mm-html-inhibit-images and
6432         mm-html-blocked-images.
6434 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
6436         Increase success rate of fallback lmalloc
6438         * src/alloc.c (lmalloc, lrealloc): Reallocate with (typically)
6439         larger and larger sizes, to increase the probability that
6440         the allocator will return a Lisp-aligned pointer.
6442 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
6444         Make backgrounds extend to the end of the lines in shr
6446         * lisp/net/shr.el (shr-face-background): Faces can also be on
6447         the form `(:background "#fff)' (bug#22547).
6449 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
6451         Make the `R' command get the correct relative <img>s
6453         * lisp/net/eww.el (eww-readable): Preserve the base URL so
6454         that image expansions are fetched from the right place (bug#22605).
6456         (cherry picked from commit 8722e849f75ceafb82a1c17105e8ab76077a8ebc)
6458         Backport:
6460 2016-02-08  Mike Kupfer  <m.kupfer@acm.org>
6462         Fix typos in emacs-mime.texi and gnus.texi
6464         * doc/misc/emacs-mime.texi (Display Customization):
6465         * doc/misc/gnus.texi (HTML): Fix typo.
6467 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
6469         * doc/misc/emacs-mime.texi (Display Customization):
6470         Doc fix for mm-html-inhibit-images.
6472 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
6474         Fix message-cross-post-followup-to group names
6476         * lisp/gnus/message.el (message-cross-post-followup-to): Don't
6477         insert group names like "nntp+foo:zot", because those aren't valid.
6479 2016-02-08  David Edmondson  <dme@dme.org>
6481         Compare recipient and keys case-insensitively
6483         * lisp/gnus/mml2015.el: (mml-secure-check-user-id): When comparing a
6484         recipient address with that from a key, do so in a case insensitive
6485         manner (bug#22603).
6487 2016-02-08  Glenn Morris  <rgm@gnu.org>
6489         * lisp/gnus/mm-decode.el (mm-alist-to-plist): Doc fix.
6491 2016-02-08  Katsumi Yamaoka  <yamaoka@jpl.org>
6493         Refactor HTML images handling of Gnus and mm-* (a part of bug#21650)
6495         * doc/misc/emacs-mime.texi (Display Customization):
6496         Remove mm-inline-text-html-with-images; add documentations for
6497         mm-html-inhibit-images and mm-html-blocked-images.
6499         * lisp/gnus/gnus-art.el (gnus-article-show-images):
6500         No need to bind mm-inline-text-html-with-images.
6501         (gnus-bind-safe-url-regexp): Rename to gnus-bind-mm-vars.
6502         (gnus-bind-mm-vars): Rename from gnus-bind-safe-url-regexp;
6503         bind mm-html-inhibit-images and mm-html-blocked-images.
6504         (gnus-mime-view-all-parts, gnus-mime-view-part-internally)
6505         (gnus-mm-display-part, gnus-mime-display-single)
6506         (gnus-mime-display-alternative): Use gnus-bind-mm-vars.
6508         * lisp/gnus/mm-decode.el (mm-inline-text-html-with-images): Remove.
6509         (mm-html-inhibit-images, mm-html-blocked-images): New user options.
6510         (mm-shr): Bind shr-inhibit-images and shr-blocked-images with
6511         mm-html-inhibit-images and mm-html-blocked-images respectively
6512         instead of gnus-inhibit-images and gnus-blocked-images.
6514         * lisp/gnus/mm-view.el (mm-setup-w3m): Use mm-html-inhibit-images
6515         instead of mm-inline-text-html-with-images.
6517 2016-02-08  Paul Eggert  <eggert@cs.ucla.edu>
6519         Port to FreeBSD 11-CURRENT i386
6521         Problem reported by Herbert J. Skuhra in:
6522         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00354.html
6523         Instead of trying
6524         * src/alloc.c (lmalloc, lrealloc, laligned): New functions.
6525         (xmalloc, xzalloc, xrealloc, lisp_malloc): Use them.
6526         (__alignof__) [!__GNUC__ && !__alignof__]: New macro.
6527         (MALLOC_IS_GC_ALIGNED): New macro.
6528         * src/lisp.h (NONPOINTER_BITS): Remove.  All uses removed.
6529         No longer needed now that alloc.c uses lmalloc and lrealloc.
6531 2016-02-08  Michael Albinus  <michael.albinus@gmx.de>
6533         Some fixes in file-notify-tests.el
6535         * test/automated/file-notify-tests.el
6536         (file-notify--test-with-events-check)
6537         (file-notify--test-with-events-explainer): New defuns.
6538         (file-notify--test-with-events): Use it.
6539         (file-notify-test07-backup): Fix docstring.  Some of the
6540         backends fire two `changed' events.  Backup by rename doesn't
6541         work for kqueue.
6543 2016-02-07  Michael Albinus  <michael.albinus@gmx.de>
6545         Fix Bug#22557
6547         * lisp/filenotify.el (file-notify-callback): Do not send a
6548         `stopped' event in case of backup by renaming.  (Bug#22557)
6550         * test/automated/Makefile.in: Use $(SELECTOR_EXPENSIVE) for
6551         all targets but check and check-maybe.
6553         * test/automated/file-notify-tests.el
6554         (file-notify--test-read-event-timeout): New defconst.
6555         (file-notify--deftest-remote, file-notify--wait-for-events)
6556         (file-notify-test02-events)
6557         (file-notify-test04-file-validity)
6558         (file-notify-test06-many-events): Use it.
6559         (file-notify--test-cleanup): Make it more robust.  Delete also
6560         backup file.
6561         (file-notify-test07-backup): New test.
6563 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
6565         Fix test for dladdr
6567         Problem reported by Andreas Schwab in:
6568         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00327.html
6569         * configure.ac (dladdr): Link with LIBMODULES when checking for
6570         this function.
6572 2016-02-07  Andreas Schwab  <schwab@linux-m68k.org>
6574         Fix gnus-group-get-new-news-this-group on group with closed server
6576         * lisp/gnus/nnimap.el (nnimap-change-group): Lookup server
6577         method and pass to nnimap-open-server.
6579 2016-02-07  Artur Malabarba  <bruce.connor.am@gmail.com>
6581         * lisp/comint.el (comint-prompt-read-only): Clean tabs in docstring
6583         While tabs in code are mostly fine because the Emacs sources have a
6584         .dir-locals file specifying tab-width, the same is not true of tabs in
6585         code examples inside docstrings.  The docstring is printed on a *Help*
6586         buffer, which can be created on any directory and won't necessarily have
6587         the same tab-width set.
6589 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
6591         Don't inloop gnus-uu-mark-thread on the last thread
6593         * lisp/gnus/gnus-uu.el (gnus-uu-mark-thread): Don't infloop on the
6594         final thread in the summary buffer (bug#16666).
6596 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6598         Display non-ASCII group names better in prompts
6600         * lisp/gnus/gnus-sum.el (gnus-articles-to-read): To decode the
6601         group name, we have to do that before we remove the prefix.
6603 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6605         Default to gpg2 instead of gpg
6607         * lisp/epg-config.el (epg-gpg-program): Prefer gpg2 over gpg, if
6608         it exists.  This fixes many problems with using the GPG
6609         authentication agent.
6611 2016-02-06  David Edmondson  <dme@dme.org>
6613         src/process.c Correctly convert AF_INET6 addresses
6615         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
6616         converted to a list of 16 bit quantities by
6617         conv_sockaddr_to_lisp(). conv_lisp_to_sockaddr() should follow the
6618         same scheme rather than expecting a (longer) list of 8 bit
6619         quantities.
6621         Backport:
6623         (cherry picked from commit 55ce3c30d617c38eb086d5ad4ffbd881c20c559c)
6625 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6627         * lisp/isearch.el (isearch-define-mode-toggle): Improve logic
6629 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6631         * lisp/menu-bar.el (menu-bar-options-menu): New search submenu
6633         (menu-bar-search-options-menu): New variable
6635 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6637         * lisp/isearch.el (search-default-mode)
6639         (isearch-regexp-function): Improve docstrings.
6641 2016-02-06  Artur Malabarba  <bruce.connor.am@gmail.com>
6643         * lisp/isearch.el: Rename search-default-regexp-mode to search-default-mode
6645         (search-default-mode): New variable.
6646         (isearch-mode, isearch-define-mode-toggle)
6647         (isearch--describe-regexp-mode): Update accordingly.
6648         * lisp/menu-bar.el (nonincremental-search-forward): Update accordingly.
6649         * etc/NEWS: Update accordingly.
6650         * doc/emacs/search.texi: Update accordingly.
6652 2016-02-06  Oscar Fuentes  <ofv@wanadoo.es>
6654         Use monitor's resolution for positioning tooltips
6656         * src/xfns.c (compute_tip_xy): Use the resolution of the monitor where
6657           the mouse pointer is to avoid placing the tooltip over the border of
6658           the monitor on multi-head displays. Fixes bug#22549.
6660 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
6662         Fix file-notify-test on MS-Windows
6664         * test/automated/file-notify-tests.el (file-notify--test-timeout):
6665         Reduce w32notify timeout to 10 sec.
6666         (file-notify-test06-many-events): Call read-event after each
6667         rename, to keep the w32notify backend happy in batch mode.
6668         (Bug#22534)
6670 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
6672         Fix issues found by auditing w32notify code
6674         * src/w32inevt.c (handle_file_notifications): Count the number of
6675         events to be returned.
6676         * src/w32notify.c (send_notifications): Don't copy to the file
6677         notification buffer more than it can hold.  (Bug#22534)
6679 2016-02-06  Eli Zaretskii  <eliz@gnu.org>
6681         Extend etags Ruby support for accessors
6683         * lib-src/etags.c (Ruby_functions): Support accessors defined with
6684         parentheses.  (Bug#22563)
6686         * test/etags/ruby-src/test1.ru (A::B): Add tests for accessors
6687         defined with parentheses.
6688         * test/etags/ETAGS.good_1:
6689         * test/etags/ETAGS.good_2:
6690         * test/etags/ETAGS.good_3:
6691         * test/etags/ETAGS.good_4:
6692         * test/etags/ETAGS.good_5:
6693         * test/etags/ETAGS.good_6:
6694         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
6696 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6698         Update publicsuffix.txt.
6700         * etc/publicsuffix.txt: Updated from
6701         https://publicsuffix.org/list/public_suffix_list.dat.
6703 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
6705         Ensure that Gnus dribble handling allows removing entries
6707         * lisp/gnus/gnus-start.el (gnus-dribble-enter): Ensure that each
6708         entry is on a single line.
6710 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
6712         Be consistent when using encoded strings in nnimap data
6714         * lisp/gnus/nnimap.el (nnimap-encode-gnus-group): New function
6715         (nnimap-request-list): Use it.
6716         (nnimap-request-newgroups): Ditto.
6718 2016-02-05  OGAWA Hirofumi  <hirofumi@mail.parknet.co.jp>  (tiny change)
6720         Display the decoded Gnus group name
6722         * lisp/gnus/gnus-sum.el (gnus-summary-read-group-1): Use the
6723         decoded group name in the message.
6725 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6727         Use completion-ignore-case instead of defining command
6729         * lisp/erc/erc.el (erc-mode): Set completion-ignore-case so
6730         that we get case-insensitive completion.
6731         (erc-completion-at-point): Remove.
6733 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
6735         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
6737 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
6739         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
6741         Reduce the number of iterations to 250 in case of w32notify.
6743 2016-02-05  Eli Zaretskii  <eliz@gnu.org>
6745         Fix problems caused by new implementation of sub-word mode
6747         * lisp/subr.el (forward-word-strictly, backward-word-strictly):
6748         New functions.
6749         (word-move-empty-char-table): New variable.
6751         * etc/NEWS: Mention 'forward-word-strictly' and
6752         'backward-word-strictly'.
6754         * doc/lispref/positions.texi (Word Motion): Document
6755         'find-word-boundary-function-table', 'forward-word-strictly', and
6756         'backward-word-strictly'.  (Bug#22560)
6758         * src/syntax.c (syms_of_syntax)
6759         <find-word-boundary-function-table>: Doc fix.
6761         * lisp/wdired.el (wdired-xcase-word):
6762         * lisp/textmodes/texnfo-upd.el (texinfo-copy-node-name)
6763         (texinfo-copy-section-title, texinfo-start-menu-description)
6764         (texinfo-copy-menu-title, texinfo-specific-section-type)
6765         (texinfo-insert-node-lines, texinfo-copy-next-section-title):
6766         * lisp/textmodes/texinfo.el (texinfo-clone-environment)
6767         (texinfo-insert-@end):
6768         * lisp/textmodes/texinfmt.el (texinfo-format-scan)
6769         (texinfo-anchor, texinfo-multitable-widths)
6770         (texinfo-multitable-item):
6771         * lisp/textmodes/tex-mode.el (latex-env-before-change):
6772         * lisp/textmodes/flyspell.el (texinfo-mode-flyspell-verify):
6773         * lisp/skeleton.el (skeleton-insert):
6774         * lisp/simple.el (count-words):
6775         * lisp/progmodes/vhdl-mode.el (vhdl-beginning-of-libunit)
6776         (vhdl-beginning-of-defun, vhdl-beginning-of-statement-1)
6777         (vhdl-update-sensitivity-list, vhdl-template-block)
6778         (vhdl-template-break, vhdl-template-case, vhdl-template-default)
6779         (vhdl-template-default-indent, vhdl-template-for-loop)
6780         (vhdl-template-if-then-use, vhdl-template-bare-loop)
6781         (vhdl-template-nature, vhdl-template-procedural)
6782         (vhdl-template-process, vhdl-template-selected-signal-asst)
6783         (vhdl-template-type, vhdl-template-variable)
6784         (vhdl-template-while-loop, vhdl-beginning-of-block)
6785         (vhdl-hooked-abbrev, vhdl-port-copy, vhdl-hs-forward-sexp-func):
6786         * lisp/progmodes/verilog-mode.el (verilog-backward-sexp)
6787         (verilog-forward-sexp, verilog-beg-of-statement)
6788         (verilog-set-auto-endcomments, verilog-backward-token)
6789         (verilog-do-indent):
6790         * lisp/progmodes/vera-mode.el (vera-guess-basic-syntax)
6791         (vera-indent-block-closing):
6792         * lisp/progmodes/simula.el (simula-context)
6793         (simula-backward-up-level, simula-forward-down-level)
6794         (simula-previous-statement, simula-next-statement)
6795         (simula-skip-comment-backward, simula-calculate-indent)
6796         (simula-find-if, simula-electric-keyword):
6797         * lisp/progmodes/sh-script.el (sh-smie--rc-newline-semi-p):
6798         * lisp/progmodes/ruby-mode.el (ruby-smie--redundant-do-p)
6799         (ruby-smie--forward-token, ruby-smie--backward-token)
6800         (ruby-singleton-class-p, ruby-calculate-indent)
6801         (ruby-forward-sexp, ruby-backward-sexp):
6802         * lisp/progmodes/ps-mode.el (ps-run-goto-error):
6803         * lisp/progmodes/perl-mode.el (perl-syntax-propertize-function)
6804         (perl-syntax-propertize-special-constructs)
6805         (perl-backward-to-start-of-continued-exp):
6806         * lisp/progmodes/pascal.el (pascal-indent-declaration):
6807         * lisp/progmodes/octave.el (octave-function-file-p):
6808         * lisp/progmodes/mantemp.el (mantemp-insert-cxx-syntax):
6809         * lisp/progmodes/js.el (js--forward-function-decl):
6810         * lisp/progmodes/idlwave.el (idlwave-show-begin-check)
6811         (idlwave-beginning-of-block, idlwave-end-of-block)
6812         (idlwave-block-jump-out, idlwave-determine-class):
6813         * lisp/progmodes/icon.el (icon-is-continuation-line)
6814         (icon-backward-to-start-of-continued-exp, end-of-icon-defun):
6815         * lisp/progmodes/hideif.el (hide-ifdef-define):
6816         * lisp/progmodes/f90.el (f90-change-keywords):
6817         * lisp/progmodes/cperl-mode.el (cperl-electric-pod)
6818         (cperl-linefeed, cperl-electric-terminator)
6819         (cperl-find-pods-heres, cperl-fix-line-spacing)
6820         (cperl-invert-if-unless):
6821         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur):
6822         * lisp/progmodes/cc-align.el (c-lineup-java-inher):
6823         * lisp/progmodes/ada-mode.el (ada-compile-goto-error)
6824         (ada-adjust-case-skeleton, ada-create-case-exception)
6825         (ada-create-case-exception-substring)
6826         (ada-case-read-exceptions-from-file, ada-after-keyword-p)
6827         (ada-scan-paramlist, ada-get-current-indent, ada-get-indent-end)
6828         (ada-get-indent-if, ada-get-indent-block-start)
6829         (ada-get-indent-loop, ada-get-indent-type)
6830         (ada-search-prev-end-stmt, ada-check-defun-name)
6831         (ada-goto-decl-start, ada-goto-matching-start)
6832         (ada-goto-matching-end, ada-looking-at-semi-or)
6833         (ada-looking-at-semi-private, ada-in-paramlist-p)
6834         (ada-search-ignore-complex-boolean, ada-move-to-start)
6835         (ada-move-to-end, ada-which-function, ada-gen-treat-proc):
6836         * lisp/net/quickurl.el (quickurl-grab-url):
6837         * lisp/mail/sendmail.el (mail-do-fcc):
6838         * lisp/mail/rmail.el (rmail-resend):
6839         * lisp/mail/mailabbrev.el (mail-abbrev-complete-alias):
6840         * lisp/mail/mail-extr.el (mail-extract-address-components):
6841         * lisp/json.el (json-read-keyword):
6842         * lisp/files.el (insert-directory):
6843         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
6844         * lisp/completion.el (symbol-under-point, symbol-before-point)
6845         (symbol-before-point-for-complete, next-cdabbrev)
6846         (add-completions-from-c-buffer):
6847         * lisp/cedet/semantic/texi.el (semantic-up-context)
6848         (semantic-beginning-of-context):
6849         * lisp/cedet/semantic/bovine/el.el (semantic-get-local-variables):
6850         use 'forward-word-strictly' and 'backward-word-strictly' instead
6851         of 'forward-word' and 'backward-word'.
6853 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
6855         Fix doc string of tls-program
6857         * lisp/net/tls.el (tls-program): Document the %t parameter (bug#22559).
6859 2016-02-05  Mark Oteiza  <mvoteiza@udel.edu>
6861         * etc/NEWS: Document new mpc.el features
6863 2016-02-04  Leo Liu  <sdl.web@gmail.com>
6865         * lisp/custom.el (defface): Revert indentation change.  (Bug#22524)
6867 2016-02-04  Alan Mackenzie  <acm@muc.de>
6869         Correctly fontify C++ initializations which "look like" functions.
6871         Fixes bug#7579.
6873         lisp/progmodes/cc-engine.el (c-forward-declarator): Add extra optional
6874         parameter to enable handling of "anonymous" declarators in declarations.
6876         lisp/progmodes/cc-fonts.el (c-font-lock-declarators): Check more rigorously
6877         whether a "(" opens a parameter list of a function, or an initialization of a
6878         variable.
6880 2016-02-04  Ulf Jasper  <ulf.jasper@web.de>
6882         Improve newsticker-treeview-selection-face
6884         * newst-treeview.el (newsticker-treeview-selection-face): Improve
6885         readability for dark background.
6887 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
6889         Minor fix in tagging Ruby accessors by etags
6891         * lib-src/etags.c (Ruby_functions): Don't tag accessors whose
6892         names are not literal symbols.  (Bug#22241)
6894 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
6896         Spelling fixes
6898 2016-02-04  Dmitry Gutov  <dgutov@yandex.ru>
6900         Remove 'def X' from the example
6902         * test/etags/ruby-src/test1.ru (A::B): Remove 'def X'
6903         (http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00167.html).
6904         * test/etags/CTAGS.good:
6905         * test/etags/ETAGS.good_1:
6906         * test/etags/ETAGS.good_2:
6907         * test/etags/ETAGS.good_3:
6908         * test/etags/ETAGS.good_4:
6909         * test/etags/ETAGS.good_5:
6910         * test/etags/ETAGS.good_6: Adjust accordingly.
6912 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
6914         Fix network-stream-tests on MS-Windows
6916         * test/lisp/net/network-stream-tests.el (make-local-unix-server):
6917         Skip if local sockets are not supported.
6919 2016-02-09  Michael Albinus  <michael.albinus@gmx.de>
6921         * admin/notes/bug-triage: Fix bug priorities.  Explain colors in debbugs-gnu.
6923 2016-02-09  Eli Zaretskii  <eliz@gnu.org>
6925         Disable 'timer-list'
6927         * lisp/emacs-lisp/timer-list.el: Make 'timer-list' a disabled
6928         command.
6930 2016-02-09  Paul Eggert  <eggert@cs.ucla.edu>
6932         Avoid aligned_alloc static/extern collision
6934         * src/alloc.c (aligned_alloc): Define to private name when a
6935         static function, to avoid collision with lisp.h extern decl.
6936         Reported by John Yates in:
6937         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00439.html
6939 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
6941         Make `message-beginning-of-line' aware of folded headers
6943         * lisp/gnus/message.pl (message-beginning-of-header): New function which
6944         moves point to the beginning of a mail header.  The function is aware of
6945         folded headers and with non-nil argument looks for the true beginning of
6946         a header while with nil argument moves to the indented text of header's
6947         value.
6948         (message-beginning-of-line): Function is now aware of folded headers and
6949         either moves point to the indention of a header or, in visual-line-mode,
6950         searches for the beginning of the header.
6952 2016-02-08  Michal Nazarewicz  <mina86@mina86.com>
6954         Optimise ‘point in message header’ check
6956         * lisp/gnus/message.el (message-point-in-header-p): Replace two unbound
6957         regular expression matches with a single bound string match thus
6958         reducing amount of work the function is doing.
6960 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
6962         Make the `R' command get the correct relative <img>s
6964         * lisp/net/eww.el (eww-readable): Preserve the base URL so
6965         that image expansions are fetched from the right place (bug#22605).
6967 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
6969         Add a mode to list and cancel timers
6971         * doc/lispref/os.texi (Timers): Menton `timer-list'.
6973         * lisp/emacs-lisp/timer-list.el: New file.
6975 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
6977         Add new commands to allow changing the size of images
6979         * lisp/image.el (image-increase-size, image-decrease-size):
6980         New commands.
6981         (image-change-size): New function.
6983 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
6985         Allow the image scale to be a floating point number
6987         * src/image.c (compute_image_size): The scale can be a
6988         floating point number.
6990 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
6992         Add an IPv6 test
6994         * test/lisp/net/network-stream-tests.el
6995         (connect-to-tls-ipv6-nowait): Add an ipv6 test, too.
6997 2016-02-08  Lars Ingebrigtsen  <larsi@gnus.org>
6999         Use gnutls-serv instead of openssh
7001         * test/lisp/net/network-stream-tests.el (make-tls-server): Use
7002         gnutls-serv instead of openssh.
7004 2016-02-08  Daniel Colascione  <dancol@dancol.org>
7006         Performance improvements for vc-hg
7008         Teach vc-hg how to read some Mercurial internal data structures,
7009         allowing us to avoid the need to run hg status -A, which is very slow
7010         for large repositories.  Fall back to running hg if anything looks
7011         funny.  vc-hg now puts the _working directory_ revision in the
7012         modeline instead of the file revision, which greatly improves
7013         performance and which allows us to again skip running hg in the case
7014         that we have an active bookmark.
7016         * lisp/vc/vc-hg.el (vc-hg-state): Try calling `vc-hg-statefast'
7017         (vc-hg-symbolic-revision-styles)
7018         (vc-hg-use-file-version-for-mode-line-version)
7019         (vc-hg-parse-hg-data-structures): New user preferences
7020         (vc-hg--active-bookmark-internal, vc-hg--run-log)
7021         (vc-hg--symbolic-revision, vc-hg-mode-line-string)
7022         (vc-hg--read-u8, vc-hg--read-u32-be)
7023         (vc-hg--raw-dirstate-search, vc-hg--cached-dirstate-search)
7024         (vc-hg--parts-to-string, vc-hg--pcre-to-elisp-re)
7025         (vc-hg--glob-to-pcre, vc-hg--hgignore-add-pcre)
7026         (vc-hg--hgignore-add-glob, vc-hg--hgignore-add-path)
7027         (vc-hg--slurp-hgignore-1, vc-hg--slurp-hgignore)
7028         (vc-hg--ignore-patterns-valid-p)
7029         (vc-hg--ignore-patterns-ignored-p, vc-hg--time-to-fixnum)
7030         (vc-hg--file-ignored-p, vc-hg--read-repo-requirements)
7031         (vc-hg--requirements-understood-p, vc-hg--dirstate-scan-cache)
7032         (vc-hg-state-fast): New functions.
7033         (vc-hg--hgignore-patterns, vc-hg--hgignore-filenames)
7034         (vc-hg--cached-ignore-patterns, vc-hg--dirstate-scan-cache)
7035         (vc-hg--dirstate-scan-cache): New internal variables.
7036         * lisp/vc/vc-hooks.el (vc-refresh-state): Invoke vc find-file-hook
7037         before updating modeline.
7039 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7041         Skip TLS tests if we don't have openssl
7043         * test/lisp/net/network-stream-tests.el (connect-to-tls): Skip
7044         TLS tests if we don't have openssl and GnuTLS.
7046 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7048         Automatically scale images up on high-density screens
7050         * doc/lispref/display.texi (ImageMagick Images): Mention :scale.
7051         (Defining Images): Mention image-scaling-factor.
7053         * lisp/image.el (image-compute-scaling-factor): New function
7054         (bug#22172).
7055         (create-image): Use it.
7056         (image-scaling-factor): New variable.
7058         * src/image.c (compute_image_size): Take :scale into account.
7060 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7062         Ensure progress when fetching from the queue
7064         * lisp/url/url-queue.el (url-queue-check-progress): Ensure
7065         that we have progress when fetching queued requests (bug#22576).
7067 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7069         Make mail-extract-address-components return the user name more
7071         * lisp/mail/mail-extr.el (mail-extract-address-components):
7072         Return the name even if it's the same as the mailbox name (if
7073         `mail-extr-ignore-single-names' isn't set) (bug#22594).
7075 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7077         Message no longer warns about unknown top level domains
7079 2016-02-07  Jarno Malmari  <jarno@malmari.fi>
7081         Add tests for url-auth
7083         * test/lisp/url/url-auth-tests.el: New file.
7085 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7087         Add a TLS connection test
7089         * test/lisp/net/network-stream-tests.el (connect-to-tls): Add
7090         a TLS connection test.
7092 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7094         Add more network tests
7096         * test/lisp/net/network-stream-tests.el (echo-server-nowait):
7097         New test.
7099 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7101         Add network tests
7103         * test/lisp/net/network-stream-tests.el: New suite of network tests.
7105 2016-02-07  Foo  <rasmus@gmx.us>
7107         Allow various Gnus and Message address variables to be functions
7109         * doc/misc/gnus.texi (To From Newsgroups):
7110         gnus-ignored-from-addresses can be a function.
7112         * doc/misc/message.texi (Wide Reply):
7113         message-dont-reply-to-names can be a function.
7115         * lisp/gnus/gnus-icalendar.el (gnus-icalendar-identities):
7116         message-alternative-emails can be a function.
7118         * lisp/gnus/gnus-notifications.el (gnus-notifications):
7119         message-alternative-emails can be a function (bug#22315).
7121         * lisp/gnus/gnus-sum.el
7122         (gnus-summary-from-or-to-or-newsgroups):
7123         gnus-ignored-from-addresses can be a function (bug#22315).
7125 2016-02-07  Lars Ingebrigtsen  <larsi@gnus.org>
7127         Fix typo in Gnus regexp
7129         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Fix
7130         typo in last change to this regexp (bug#22592).
7132 2016-02-07  Paul Eggert  <eggert@cs.ucla.edu>
7134         Port to FreeBSD x86
7136         Reported by Herbert J. Skuhra in:
7137         http://lists.gnu.org/archive/html/emacs-devel/2016-02/msg00336.html
7138         * src/lisp.h (NONPOINTER_BITS) [__FreeBSD__]: Zero in this case too,
7139         since malloc always returns a multiple of 8 in FreeBSD.
7141 2016-02-07  Alan Mackenzie  <acm@muc.de>
7143         On leaving CC Mode, clean up by removing character properties.
7145         * lisp/progmodes/cc-mode.el (c-leave-cc-mode-mode): Remove from the buffer
7146         all instances of the text properties/extents category, syntax-table,
7147         c-is-sws, c-in-sws, c-type, and c-awk-NL-prop.
7149 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7151         * lisp/gnus/gnus-art.el (gnus-button-valid-fqdn-regexp): Don't use
7152         the no-longer-existing message-valid-fqdn-regexp variable.
7154 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7156         Remove message-valid-fqdn-regexp, since it changes too much now
7157         * lisp/gnus/message.el (message-valid-fqdn-regexp): Remove.
7158         (message-bogus-recipient-p): Don't use it any more.
7159         (message-make-fqdn): Ditto.  Suggested by Lars-Johan Liman.
7161 2016-02-06  Paul van der Walt  <paul@denknerd.org>  (tiny change)
7163         * lisp/gnus/message.el (message-subject-re-regexp): Also match
7164         "Re :" as a "Re:" prefix (commonly used in France).
7166 2016-02-06  Adam Sjøgren  <asjo@koldfront.dk>
7168         * lisp/net/shr.el (shr-tag-del, shr-tag-ins): New functions.
7170 2016-02-06  David Edmondson  <dme@dme.org>
7172         src/process.c Correctly convert AF_INET6 addresses
7173         * src/process.c (conv_lisp_to_sockaddr): AF_INET6 addresses are
7174         converted to a list of 16 bit quantities by
7175         conv_sockaddr_to_lisp().  conv_lisp_to_sockaddr() should follow the
7176         same scheme rather than expecting a (longer) list of 8 bit
7177         quantities.
7179 2016-02-06  Martin Jesper Low Madsen  <martin@martinjlowm.dk>  (tiny change)
7181         * lisp/gnus/auth-source.el (auth-source-macos-keychain-search):
7182         Search for all host/port (or protocol) combinations for a match in
7183         the OS X keychain.
7185 2016-02-06  Lars Ingebrigtsen  <larsi@gnus.org>
7187         Remove nonsensical setting of gnus-newsgroup-unseen
7189         * lisp/gnus/gnus-sum.el (gnus-update-marks): Remove nonsensical
7190         setting of gnus-newsgroup-unseen.
7192 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7194         Use underline on all terminals that support it
7196         * lisp/subr.el (read-multiple-choice): Use
7197         display-supports-face-attributes-p instead of
7198         display-graphic-p to determine whether we can use underlining.
7200 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7202         Make the nsm query say what it did after the user interaction
7204         * lisp/net/nsm.el (nsm-query): Issue a message about
7205         aborting/accepting messages (suggested by N. Jackson)
7206         (bug#22531).
7208 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
7210         Omit XLI (init) == 0 optimization in make-vector
7212         * src/alloc.c (Fmake_vector): Simplify by omitting the (XLI (init)
7213         == 0) case, as this optimization is probably not worth the hassle.
7214         Just for the record, the test for that case could have been
7215         (XLI (init) % ((EMACS_UINT) -1 / UCHAR_MAX) == 0) (!),
7216         assuming the typical platform with no padding bits and where
7217         conversion to int omits the most significant bits.
7219 2016-02-05  Paul Eggert  <eggert@cs.ucla.edu>
7221         * autogen.sh: Port to dash (Bug#22556).
7223 2016-02-05  Michael Albinus  <michael.albinus@gmx.de>
7225         Minor cleanup for Tramp "doas".
7227         * doc/misc/tramp.texi (Inline methods): Add "doas" method.
7229         * etc/NEWS: Add Tramp connection method "doas".
7231         * lisp/net/tramp-sh.el (tramp-methods) <doas>:
7232         Add `tramp-remote-shell-args'.
7234 2016-02-05  Xi Lu  <lx@shellcodes.org>
7236         * lisp/net/tramp-sh.el (tramp-methods) <doas>: Add.  (Bug#22542)
7238         (tramp-default-user-alist): Add rule for "doas".
7239         (top): Completion function for "doas" is
7240         `tramp-completion-function-alist-su'.
7242 2016-02-05  Lars Ingebrigtsen  <larsi@gnus.org>
7244         Restore the window configuration
7246         * lisp/net/nsm.el (nsm-query-user): Restore the window
7247         configuration (bug#22532).
7249 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7251         Use an X popup in read-multiple-choice if running from a mouse command
7253         * lisp/subr.el (read-multiple-choice): Use an X popup if
7254         called from a mouse action (bug#19368).
7256 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7258         Display cursor in echo area when prompting
7260         * lisp/subr.el (read-multiple-choice): Display the cursor in
7261         the echo area when prompting (bug#19368).
7263 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7265         Make NSM prompting clearer
7267         * lisp/net/nsm.el (nsm-query-user): Use read-multiple-choice
7268         to prompt in a nicer way (bug#19368).
7270 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7272         Underline read-multiple-choice-face
7274         * lisp/faces.el (read-multiple-choice-face): Also underline
7275         the choice.
7277 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7279         Make the read-multiple-choice prompt a bit prettier
7281         * doc/lispref/commands.texi (Reading One Event): Mention
7282         read-multiple-choice-face.
7284         * lisp/subr.el (read-multiple-choice): Make the prompting a bit
7285         prettier.
7287 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
7289         Prefer memcpy and memset to doing it by hand
7291         * src/alloc.c (Fmake_vector):
7292         * src/ccl.c (setup_ccl_program):
7293         Use memset to clear array.
7294         * src/alloc.c (Fvector, Fmake_byte_code):
7295         * src/charset.c (Fdefine_charset_internal):
7296         Use memcpy to copy array.
7298 2016-02-04  Nicolas Petton  <nicolas@petton.fr>
7300         Do not ignore redirections of 301, 302 and 307 status codes
7302         The current version of HTTP/1.1 (RFC 7231) no longer requires
7303         confirmation on 301, 302 or 307 status codes, therefore we do not have
7304         to ignore redirects for other requests than GET and HEAD.
7306         * lisp/url/url-http.el (url-http-parse-headers): Do not ignore 301, 302
7307         and 307 redirects for other requests than GET and HEAD.
7309 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
7311         * lisp/net/eww.el (eww-switch-to-buffer): Use pop-to-buffer-same-window instead.
7313 2016-02-04  Paul Eggert  <eggert@cs.ucla.edu>
7315         Simplify USE_ALIGNED_ALLOC
7317         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify, now that we’ve merged
7318         in the emacs-25 changes.  Omit no-longer-needed decl for aligned_alloc.
7320 2016-02-04  Eric Abrahamsen  <eric@ericabrahamsen.net>
7322         Honor docstring of gnus-group-get-new-news
7324         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg
7325         is t, but non-numeric, unconditionally consider all groups to need
7326         updating.
7328 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7330         New function read-multiple-choice
7332         * doc/lispref/commands.texi (Reading One Event): Document
7333         read-multiple-choice.
7335         * lisp/faces.el (read-multiple-choice-face): New face.
7337         * lisp/subr.el (read-multiple-choice): New function.
7339 2016-02-04  John Wiegley  <johnw@newartisans.com>
7341         Merge from origin/emacs-25
7343         ee73997 Make erc work better when encountering unknown prefix chars
7344         b99141d Make erc completion case-insensitive again
7345         66c4620 Make complection in erc use consistent casing
7346         8c562b2 Make /QUIT in erc more robust
7347         d93d2c5 Make tracking faces in Emacs work more reliably
7348         af6ab7e Make shr not bug out on images on non-graphical displays
7349         3311f40 Fix bookmark display widths
7350         d90ab1e Fix typo in eww-make-unique-file-name
7351         7f81825 Make it possible to TAB to input fields
7352         a43a1dc Insert complete alt texts when images are disabled
7353         56ed4e1 Allow eww text fields to grow
7354         66b315c Make erc work when subword-mode is switched on
7355         255b68f Fix IMAP doc example
7356         91557f5 Quoting fixes in doc strings and diagnostics
7357         2c0dc9f Fix warning message in hack-local-variables
7358         504696d Etags: yet another improvement in Ruby tags
7359         8784ebf Fix x-popup-menu on TTYs without a mouse
7360         8b87ecb * lisp/emacs-lisp/map.el: Improvements to the docstring of the
7361                 pcase macro
7362         6191003 Use pop-to-buffer-same-window in eww
7363         fe321fd * autogen.sh: Revert all recent changes.
7364         74ebd4a * make-dist: Updates related to nt/.
7365         737193a * make-dist: Add modules/.
7366         3696bf2 * make-dist: Update for super-special file that can't live in etc/.
7367         a4278e2 Fix failure to compile ns-win.el in parallel builds
7368         860da4d Fix names of tags generated for Ruby accessors
7369         f6213ce Fix file-name recognition in 'etags'
7370         e42e662 Change Ruby file names and extensions recognized by 'etags'
7371         58bfb6a More improvements for Ruby support in 'etags'
7372         c04e911 Add --git-config option to autogen.sh
7373         5713466 Fix editing undo changes in eww fields
7374         51362d6 Allow the user more control of popping up the eww window
7375         ee0fbd8 Make eww-browse-url with new-window parameter work again
7376         9c3142d Clean up eww code slightly
7377         cb035f3 Don't insert nil faces in shr
7378         4c3fae3 ; * lisp/progmodes/prolog.el: Remove some obsolete commentary.
7379         93f2153 Improve the custom type of some user options.
7380         9f60d7e Mark some risky calendar variables.
7381         1d07dcd Highlight two additional SCSS keywords
7382         ee8b466 Recommend enabling integrity-checking in git
7383         e639e10 Some corrections in Elisp manual
7384         d766ca8 Chatter when autogen.sh changes Git configuration
7385         3b734e1 * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
7386         43cb9f8 Omit unnecessary history from Lisp intro
7387         2fbd1da * etc/HISTORY: Add some more history, plus git tags.
7388         c90e1b4 Improve elisp “Security Considerations” doc
7389         cedd7ca autogen.sh now arranges for git to check hashes
7390         86ce76b ; Fix ChangeLog.2 commit ID.
7391         7b1d2b1 Fix (c & 040) typo in emergency escapes
7392         a8273da Fix display of overlay strings with 'display' and 'box' property
7393         fc48106 Fix imap-starttls-open
7394         cdecbed Fix return value of imap-starttls-open
7395         20c7e34 ; * etc/NEWS: Fix renamed command name
7396         98bdbdb Correct reference to DARWIN_OS preprocessor symbol
7397         b250d29 Spelling fix
7398         b920a0e Spelling fixes
7399         93b144b Pacify GCC on C library without glibc API
7401 2016-02-04  John Wiegley  <johnw@newartisans.com>
7403         Merge from origin/emacs-25
7405         ea26c8a * lisp/net/browse-url.el (browse-url-default-browser): Lower
7406                 priority of non-free Chrome.
7407         0fac75f Improve the custom type of some user options.
7408         2df0e04 Highlight CSS variables with variable name face
7409         3cf5e81 * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not
7410                 user-serviceable.
7411         2a5233c Mark some user options that can get evalled as risky.
7412         39b166f Disable DebPrint in sys_read on MS-Windows
7413         9fd0189 ;Fix ChangeLog entry
7414         4bb7233 Fix typos in Introduction to Emacs Lisp manual
7416 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
7418         Allow sending empty hidden values in eww
7420         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
7421         values (bug#22388).
7423         (cherry picked from commit 5898da8210af7953e638ddf7821c05260979c3f0)
7425         Backport:
7427 2016-02-04  David Edmondson  <dme@dme.org>
7429         Make erc work better when encountering unknown prefix chars
7431         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
7432         instead of erroring out on unknown prefix chars (bug#22380).
7434 2016-02-04  Mark Oteiza  <mvoteiza@udel.edu>
7436         Add a new command to switch between erc buffers
7438         * doc/misc/eww.texi: Document eww-switch-to-buffer and its keybinding
7439         * etc/NEWS: Mention new command
7440         * lisp/net/eww.el (eww-mode-map): Bind eww-switch-to-buffer to "s"
7441         (eww-mode-map): Add menu item
7442         (eww-switch-to-buffer): New command
7444 2016-02-04  David Edmondson  <dme@dme.org>
7446         Make erc work better when encountering unknown prefix chars
7448         * lisp/erc/erc.el (erc-channel-receive-names): Output a warning
7449         instead of erroring out on unknown prefix chars (bug#22380).
7451 2016-02-04  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
7453         Allow sending empty hidden values in eww
7455         * lisp/net/eww.el (eww-tag-input): Allow sending empty hidden
7456         values (bug#22388).
7458 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7460         Make erc completion case-insensitive again
7462         * lisp/erc/erc.el (erc-completion-at-point): Make erc completion
7463         case-insensitive again (bug#11360).
7465 2016-02-04  Carlos Pita  <carlosjosepita@gmail.com>  (tiny change)
7467         Make complection in erc use consistent casing
7469         * lisp/erc/erc-pcomplete.el (pcomplete-erc-all-nicks): Make
7470         case in the complection consistent (bug#18509).
7472 2016-02-04  Francis Litterio  <flitterio@gmail.com>
7474         Make /QUIT in erc more robust
7476         * lisp/erc/erc.el (erc-kill-query-buffers): Don't bug out if we're
7477         issuing /QUIT to disconnected servers (bug#22099).
7479 2016-02-04  Kevin Brubeck Unhammer  <unhammer@fsfe.org>  (tiny change)
7481         Make tracking faces in Emacs work more reliably
7483         * lisp/erc/erc-track.el (erc-faces-in): Always return lists of
7484         faces to avoid later ambiguity (bug#22424).
7486 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7488         Make shr not bug out on images on non-graphical displays
7490         * lisp/net/shr.el (shr-put-image): Don't bug out on alt-less
7491         images on non-graphical displays (bug#22327).
7493 2016-02-04  Andrew Hyatt  <ahyatt@gmail.com>
7495         Remove packages obsoleted before Emacs 24.
7497         In accordance with the policy discussed in the emacs-devel list,
7498         packages that have been obsoleted for a full major release cycle are up
7499         for deletion.
7501         This removes almost all packages that are now eligible for deletion,
7502         with the exception of "cl-compat", which seems it is likely to still be
7503         used, and "optional", which offers some functionality that doesn't have
7504         a replacement yet.
7506 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7508         Fix bookmark display widths
7510         * lisp/net/eww.el (eww-list-bookmarks): Pop to the buffer before
7511         preparing it so that the widths are computed correctly (bug#22328).
7513 2016-02-04  Lars Ingebrigtsen  <larsi@gnus.org>
7515         Fix typo in eww-make-unique-file-name
7517         * lisp/net/eww.el (eww-make-unique-file-name): Make this function
7518         actually work.
7520 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
7522         Make it possible to TAB to input fields
7524         * lisp/net/eww.el (eww-tag-input): Make it possible to TAB to
7525         input fields (bug#22540).
7527 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
7529         Insert complete alt texts when images are disabled
7531         * lisp/net/shr.el (shr-tag-img): When images are disabled, insert
7532         the complete alt/title string (bug#22293).
7534 2016-02-03  Lars Ingebrigtsen  <larsi@gnus.org>
7536         Allow eww text fields to grow
7538         * lisp/net/eww.el (eww-process-text-input): Allow text fields to
7539         grow when typing in stuff that's longer than the original width.
7541 2016-02-03  Dima Kogan  <dima@secretsauce.net>
7543         Make erc work when subword-mode is switched on
7545         * lisp/erc/erc-backend.el (erc-forward-word, erc-word-at-arg-p)
7546         (erc-bounds-of-word-at-point): New functions to do word-based
7547         things when subword-mode is switched on.
7549         * lisp/erc/erc-button.el (erc-button-add-nickname-buttons): Use them
7550         (bug#17558).
7552 2016-02-03  Teemu Likonen  <tlikonen@iki.fi>
7554         Fix IMAP doc example
7556         * doc/misc/gnus.texi (Client-Side IMAP Splitting): Fix example.
7558 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
7560         Quoting fixes in doc strings and diagnostics
7562         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq, byte-compile-funcall):
7563         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
7564         (mml-smime-get-ldap-cert):
7565         Follow user style preference when quoting diagnostics.
7567 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
7569         Mention context when resume from emergency escape
7571         That way, if the user has been doing something else for a while,
7572         they are reminded of the situation when restarting Emacs,
7573         and are more likely to understand the two questions.
7574         * doc/emacs/trouble.texi (Emergency Escape): Document this.
7575         * src/keyboard.c (handle_interrupt): Implement this.
7577 2016-02-03  Noam Postavsky  <npostavs@gmail.com>
7579         Fix warning message in hack-local-variables
7581         * lisp/files.el (hack-local-variables): use 'thisbuf' to reference
7582         the original buffer name in the warning message.  (Bug#21681)
7584 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
7586         Etags: yet another improvement in Ruby tags
7588         * lib-src/etags.c (Ruby_functions): Handle continuation lines in
7589         Ruby accessor definitions.  (Bug#22241)
7591         * test/etags/ruby-src/test1.ru (A::B#X): Add some more tests for
7592         accessors and multiline definitions.
7593         * test/etags/ETAGS.good_1:
7594         * test/etags/ETAGS.good_2:
7595         * test/etags/ETAGS.good_3:
7596         * test/etags/ETAGS.good_4:
7597         * test/etags/ETAGS.good_5:
7598         * test/etags/ETAGS.good_6:
7599         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
7601 2016-02-03  Eli Zaretskii  <eliz@gnu.org>
7603         Fix x-popup-menu on TTYs without a mouse
7605         * src/menu.c (Fx_popup_menu): Be sure to initialize 'x' and 'y'
7606         for the TTY case without a mouse.  (Bug#22538)
7608 2016-02-03  Nicolas Petton  <nicolas@petton.fr>
7610         * lisp/emacs-lisp/map.el: Improvements to the docstring of the pcase macro
7612 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
7614         Port aligned_alloc decl to Cygwin.
7616         Problem reported by Ken Brown (Bug#22522#38).
7617         * configure.ac (aligned_alloc): Check for decl too.
7618         * src/lisp.h (aligned_alloc): Declare if not already declared.
7620 2016-02-03  Paul Eggert  <eggert@cs.ucla.edu>
7622         autogen.sh now configures git only on request
7624         * autogen.sh (do_autoconf, do_git): New vars.
7625         Support new arguments --help, all, autoconf, git.
7626         By default, just do autoconf-related configuration, not git.
7627         Prefer 'echo' to 'cat <<EOF ...', as this tends to avoid temp files.
7628         If GNU cp is available, use it to backup .git/config before
7629         changing it.  When configuring git, chatter about what is being
7630         done, and configure git to check hashes.  Avoid some duplicate
7631         file name specification when creating git hooks.
7633         * GNUmakefile (ALL_IF_GIT): New macro.
7634         (configure): Use it.
7635         * INSTALL.REPO: Suggest './autogen.sh all'.
7637 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
7639         Use pop-to-buffer-same-window in eww
7641         * lisp/net/eww.el: pop-to-buffer-same-window throughout instead of
7642         switch-to-buffer (bug#22244).
7644 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
7646         * autogen.sh: Revert all recent changes.
7648 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
7650         Build with C11 if available
7652         * admin/merge-gnulib (GNULIB_MODULES): Add std-gnu11.
7653         * m4/std-gnu11.m4: New file, from gnulib.
7654         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
7656 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
7658         Update gnulib copy
7660         * doc/misc/texinfo.tex: Copy from gnulib.
7662 2016-02-02  Glenn Morris  <rgm@gnu.org>
7664         * make-dist: Updates related to nt/.
7666         * make-dist: Add modules/.
7668         * make-dist: Update for super-special file that can't live in etc/.
7670 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
7672         Fix failure to compile ns-win.el in parallel builds
7674         * src/Makefile.in ($(lispsource)/term/ns-win.elc): Add order-only
7675         dependency on $(lispsource)/international/charprop.el.
7676         (Bug#22501)
7678 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
7680         Fix names of tags generated for Ruby accessors
7682         * lib-src/etags.c (Ruby_functions): Don't include the leading
7683         colon ':' in tags for Ruby accessors and aliases.  (Bug#22241)
7685         * test/etags/ETAGS.good_1:
7686         * test/etags/ETAGS.good_2:
7687         * test/etags/ETAGS.good_3:
7688         * test/etags/ETAGS.good_4:
7689         * test/etags/ETAGS.good_5:
7690         * test/etags/ETAGS.good_6:
7691         * test/etags/CTAGS.good: Adapt to changes in Ruby tags.
7693 2016-02-02  Glenn Morris  <rgm@gnu.org>
7695         * lisp/vc/add-log.el (change-log-directory-files, find-change-log):
7696         Doc tweaks.
7698 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
7700         Fix file-name recognition in 'etags'
7702         * lib-src/etags.c (get_language_from_filename): If FILE includes a
7703         leading directory, compare only its basename to the known file
7704         names in lang_names[].
7706         * test/etags/Makefile (RBSRC): Adapt to recent test1.ruby
7707         renaming.
7708         * test/etags/ETAGS.good_1:
7709         * test/etags/ETAGS.good_2:
7710         * test/etags/ETAGS.good_3:
7711         * test/etags/ETAGS.good_4:
7712         * test/etags/ETAGS.good_5:
7713         * test/etags/ETAGS.good_6:
7714         * test/etags/CTAGS.good: Adapt to changes in Ruby file names and
7715         to the results in Makefile due to the above etags.c fix.
7717 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
7719         Change Ruby file names and extensions recognized by 'etags'
7721         * lib-src/etags.c <Ruby_filenames>: New variable, holds names
7722         of Ruby files.
7723         <Ruby_suffixes>: Treat .rb, .ru, and .rbw as Ruby extensions.
7724         <lang_names>: Add Ruby_filenames to the Ruby entry.
7725         * test/etags/ruby-src/test1.ru: Renamed from test1.ruby.
7726         (Bug#22241)
7728 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
7730         Port better to platforms lacking aligned_alloc
7732         Problem reported by Ken Brown (Bug#22522).
7733         * src/lisp.h (hybrid_aligned_alloc)
7734         [HYBRID_MALLOC && !HAVE_ALIGNED_ALLOC]: New decl.
7736 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
7738         Port malloc.h hygiene fix to LTO
7740         * src/alloc.c (__malloc_initialize_hook):
7741         Make it externally visible (Bug#22522).
7743 2016-02-02  Eli Zaretskii  <eliz@gnu.org>
7745         More improvements for Ruby support in 'etags'
7747         * lib-src/etags.c (Ruby_functions): Tag Ruby accessors and
7748         alias_method.  Identify constants even if the assignment is not
7749         followed by whitespace.  (Bug#22241)
7751         * test/etags/ruby-src/test1.ruby: Add tests for constants,
7752         accessors, and alias_method.
7753         * test/etags/ETAGS.good_1:
7754         * test/etags/ETAGS.good_2:
7755         * test/etags/ETAGS.good_3:
7756         * test/etags/ETAGS.good_4:
7757         * test/etags/ETAGS.good_5:
7758         * test/etags/ETAGS.good_6:
7759         * test/etags/CTAGS.good: Adapt to changes in Ruby tests.
7761 2016-02-02  Paul Eggert  <eggert@cs.ucla.edu>
7763         Add --git-config option to autogen.sh
7765         * autogen.sh: New options --git-config, --help.
7766         (git_config): New shell var.  Alter function to respect this var.
7768 2016-02-02  Lars Ingebrigtsen  <larsi@gnus.org>
7770         Fix editing undo changes in eww fields
7772         * eww.el (eww-tag-form): Don't overwrite initial form data in text
7773         fields.
7774         (eww-process-text-input): Make `M-t' at the end of text fields work
7775         better (bug#19085).
7777 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
7779         Allow the user more control of popping up the eww window
7781         * eww.el (eww): Use pop-to-buffer-same-window (suggested by
7782         Michael Heerdegen) (bug#22244).
7784 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
7786         Make eww-browse-url with new-window parameter work again
7788         * eww.el (eww-browse-url): Stay in the same buffer if we're
7789         already in a eww mode buffer so that eww-browse-url with a
7790         new-window parameter works (bug#22244).
7792 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
7794         Clean up eww code slightly
7796         * eww.el (eww-browse-url): Clean up code slightly.
7798 2016-02-01  Lars Ingebrigtsen  <larsi@gnus.org>
7800         Don't insert nil faces in shr
7802         * shr.el (shr-insert-table): Don't add nil faces, because that
7803         will show up in *Messages* as "Invalid face reference: nil [32
7804         times]".
7806 2016-02-01  Glenn Morris  <rgm@gnu.org>
7808         Make find-change-log prefer a VCS root, if no ChangeLog exists.
7810         * lisp/vc/add-log.el (change-log-directory-files): New option.
7811         (find-change-log): Respect change-log-directory-files.
7812         * doc/emacs/maintaining.texi (Change Log Commands):
7813         Mention change-log-directory-files.
7815 2016-02-01  Glenn Morris  <rgm@gnu.org>
7817         Improve the custom type of some user options.
7819         * lisp/autoinsert.el (auto-insert-alist):
7820         * lisp/replace.el (query-replace-from-to-separator):
7821         * lisp/gnus/gnus-art.el (gnus-hidden-properties):
7822         * lisp/gnus/gnus-gravatar.el (gnus-gravatar-properties):
7823         * lisp/gnus/gnus-picon.el (gnus-picon-properties):
7824         * lisp/progmodes/prolog.el (prolog-keywords, prolog-types)
7825         (prolog-mode-specificators, prolog-determinism-specificators)
7826         (prolog-directives, prolog-program-name, prolog-program-switches)
7827         (prolog-consult-string, prolog-compile-string, prolog-eof-string)
7828         (prolog-prompt-regexp): Improve custom type.
7830 2016-02-01  Glenn Morris  <rgm@gnu.org>
7832         Mark some risky calendar variables.
7834         * lisp/calendar/cal-china.el (chinese-calendar-time-zone):
7835         Remove risky setting for deleted obsolete alias.
7836         (calendar-chinese-standard-time-zone-name)
7837         (calendar-chinese-daylight-saving-start)
7838         (calendar-chinese-daylight-saving-end):
7839         * lisp/calendar/calendar.el (calendar-iso-date-display-form)
7840         (calendar-european-date-display-form)
7841         (calendar-american-date-display-form, calendar-date-display-form):
7842         * lisp/calendar/diary-lib.el (diary-remind-message)
7843         (diary-header-line-format):
7844         * lisp/calendar/solar.el (calendar-time-display-form)
7845         (calendar-location-name): Mark as risky.
7847 2016-02-01  Simen Heggestøyl  <simenheg@gmail.com>
7849         Highlight two additional SCSS keywords
7851         * lisp/textmodes/css-mode.el (css-bang-ids): New defconst holding CSS
7852         identifiers on the form !foo.
7853         (scss-bang-ids): New defconst holding SCSS identifiers on the form
7854         !foo.
7855         (css--font-lock-keywords): Highlight the new SCSS bang identifiers in
7856         `font-lock-builtin-face'.
7858         * test/indent/css-mode.css: Add bang rule test case.
7860         * test/indent/scss-mode.css: Add test cases for the introduced bang
7861         rules.
7863 2016-02-01  Karl Fogel  <kfogel@red-bean.com>
7865         Recommend enabling integrity-checking in git
7867         * admin/notes/git-workflow:  Recommend setting transfer.fsckObjects.
7869         This is related to the autogen.sh changes made by Paul Eggert in
7870         commit d766ca8f (2016-02-01) and commit cedd7cad (2016-02-01), and to
7871         my edits today to http://www.emacswiki.org/emacs/GitForEmacsDevs and
7872         to emacswiki.org/emacs/GitQuickStartForEmacsDevs.  See also the thread
7873         "Recommend these .gitconfig settings for git integrity." at
7874         https://lists.gnu.org/archive/html/emacs-devel/2016-01/threads.html#01802.
7876 2016-02-01  Martin Rudalics  <rudalics@gmx.at>
7878         Some corrections in Elisp manual
7880         * doc/lispref/buffers.texi (Read Only Buffers): Describe optional
7881         argument POSITION.
7882         * doc/lispref/debugging.texi (Error Debugging): `debug-on-signal'
7883         is an option.
7884         * doc/lispref/display.texi (Refresh Screen): Describe optional
7885         argument FRAME of `redraw-frame'.
7886         (Attribute Functions): Describe optional argument CHARACTER of
7887         `face-font'.
7888         (Defining Images): `image-load-path' is an option.
7889         (Beeping): `ring-bell-function' is an option.
7890         * doc/lispref/frames.texi (Size and Position): The PIXELWISE
7891         argument of `set-frame-size' is optional.
7892         (Raising and Lowering): The TERMINAL argument of `tty-top-frame'
7893         is optional.
7894         * doc/lispref/keymaps.texi (Controlling Active Maps): Fix doc of
7895         `set-transient-map'.
7896         * doc/lispref/minibuf.texi (Text from Minibuffer):
7897         `read-regexp-defaults-function' is an option.
7898         (Minibuffer Contents): `delete-minibuffer-contents' is a command.
7899         * doc/lispref/modes.texi (Mode Line Variables):
7900         `mode-line-position' and `mode-line-modes' are variables, not
7901         options.
7902         * doc/lispref/strings.texi (Creating Strings): The START argument
7903         of `substring' is optional.
7904         * doc/lispref/text.texi (Buffer Contents): Describe optional
7905         argument NO-PROPERTIES of `thing-at-point'.
7906         (User-Level Deletion): Both arguments of
7907         `delete-trailing-whitespace' are optional.
7908         (Margins): Use @key{RET} instead of @kbd{RET}.
7909         * doc/lispref/windows.texi (Display Action Functions): Write
7910         non-@code{nil} instead of non-nil.
7911         (Choosing Window Options): The WINDOW arg of
7912         `split-window-sensibly' is optional.
7913         (Choosing Window Options): Write non-@code{nil} instead of
7914         non-nil.
7915         (Window Start and End): Both args of `window-group-end' are
7916         optional.
7918         * src/buffer.c (Fbarf_if_buffer_read_only): Rename argument POS
7919         to POSITION to keep consisteny with doc-string.
7921 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
7923         Double static heap size.
7925         * src/sheap.h (STATIC_HEAP_SIZE): Double it, since it was too
7926         small on FreeBSD (Bug#22086).
7928 2016-02-01  Paul Eggert  <eggert@cs.ucla.edu>
7930         Chatter when autogen.sh changes Git configuration
7932         * autogen.sh (git_config): New function.  Use it instead of ‘git config’.
7934 2016-02-01  Kyle Meyer  <kyle@kyleam.com>
7936         * org/org-compat.el (org-font-lock-ensure): Fix bogus test (bug#22399)
7938 2016-02-01  Michael Albinus  <michael.albinus@gmx.de>
7940         Fix Bug#20821
7942         * lisp/net/tramp.el (tramp-file-name-handler):
7943         * lisp/net/tramp-sh.el (tramp-sh-handle-expand-file-name):
7944         Use `tramp-drop-volume-letter'.  (Bug#20821)
7946 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
7948         Omit unnecessary history from Lisp intro
7950         * doc/lispintro/emacs-lisp-intro.texi (Review, Digression into C)
7951         (Conclusion): Reword so as not to talk about earlier versions
7952         of Emacs in what should be an intro.
7954 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
7956         * etc/HISTORY: Add some more history, plus git tags.
7958 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
7960         Improve elisp “Security Considerations” doc
7962         * doc/lispref/os.texi (Security Considerations):
7963         Mention call-process and rename-file as opposed to shell commands.
7964         Add some more cross-references.
7966 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
7968         autogen.sh now arranges for git to check hashes
7970         Suggested by Karl Fogel in:
7971         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01802.html
7972         * autogen.sh: Do "git config transfer.fsckObjects true".
7974 2016-01-31  Dave Barker  <kzar@kzar.co.uk>
7976         Add ability to give rcirc servers an alias name
7978         * lisp/net/rcirc.el (rcirc-server-alist): Add :server-alias
7979         customization option.
7980         (rcirc, rcirc-connect): Take server alias into account.
7982 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
7984         Fix (c & 040) typo in emergency escapes
7986         * src/keyboard.c (handle_interrupt): Fix recently-introduced
7987         typo (040 should have been ~040) that silently suppressed
7988         auto-saves after emergency escapes.  Redo comparison to avoid
7989         similar problems.
7991 2016-01-31  Paul Eggert  <eggert@cs.ucla.edu>
7993         Port new hybrid malloc to FreeBSD
7995         Problem reported by Wolfgang Jenkner in: http://bugs.gnu.org/22086#118
7996         * src/gmalloc.c (__malloc_initialize_hook, __after_morecore_hook)
7997         (__morecore) [HYBRID_MALLOC]: Define in this case too.
7999 2016-01-31  Wolfgang Jenkner  <wjenkner@inode.at>
8001         * configure.ac: Stop using mmap for buffers for FreeBSD.
8003 2016-01-31  Eli Zaretskii  <eliz@gnu.org>
8005         Fix display of overlay strings with 'display' and 'box' property
8007         * src/xdisp.c (get_next_display_element): Take the box face from
8008         display stack level that comes from a buffer, not an overlay
8009         string.  (Bug#22499)
8011 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
8013         Fix imap-starttls-open
8015         * lisp/net/imap.el (imap-starttls-open): Log imap process
8016         output.  Call imap-parse-greeting.  (Bug#22500)
8018 2016-01-31  Michael Albinus  <michael.albinus@gmx.de>
8020         Merge changes from Tramp repository
8022         * doc/misc/Makefile.in (${buildinfodir}/tramp.info tramp.html):
8023         No EXTRA_OPTS needed.
8025         * doc/misc/tramp.texi: Merge changes from Emacsemacs-25
8026         branch, especially for @trampfn{}.
8027         (Top): Move @ifnottex down.
8028         (History): XEmacs support has been removed.
8029         (GVFS based methods, Remote processes): Do not use emacsgvfs flag.
8030         (Auto-save and Backup): Use both syntax versions.
8031         (File name Syntax): Remark on IPv6 adresses is valid for
8032         unified syntax only.
8034         * doc/misc/trampver.texi: Do not set emacsgvfs flag.
8036 2016-01-31  Andreas Schwab  <schwab@linux-m68k.org>
8038         Fix return value of imap-starttls-open
8040         * lisp/net/imap.el (imap-starttls-open): Fix return value.
8042 2016-01-31  John Wiegley  <johnw@newartisans.com>
8044         Correct reference to DARWIN_OS preprocessor symbol
8046         * src/alloc.c: Correct a preprocessor reference to DARWIN_OS, which may
8047           not be defined.
8049 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8051         Spelling fixes
8053         Spelling fix
8055         Spelling fixes
8057 2016-01-30  Glenn Morris  <rgm@gnu.org>
8059         * lisp/vc/add-log.el (find-change-log): Use locate-dominating-file.
8061 2016-01-30  Matthew Carter  <m@ahungry.com>
8063         Quote table names for postgres listings (sql-mode)
8065         * lisp/progmodes/sql.el (sql-postgres-completion-object): Avoid passing
8066           unquoted table names to the completion list.
8068 2016-01-30  Glenn Morris  <rgm@gnu.org>
8070         Change Smerge "Mine" and "Other" for "Upper" and "Lower.  (Bug#20878)
8072         * lisp/vc/smerge-mode.el (smerge-diff-switches)
8073         (smerge-context-menu, smerge-match-conflict, smerge-swap): Doc fixes.
8074         (smerge-upper, smerge-upper-face, smerge-keep-upper)
8075         (smerge-diff-base-upper): Rename from smerge-mine, smerge-mine-face,
8076         smerge-keep-mine, smerge-diff-base-mine.  Update all uses.
8077         (smerge-mine-face, smerge-other-face): Remove obsolete face aliases.
8078         (smerge-lower, smerge-lower-face, smerge-lower-re, smerge-keep-lower)
8079         (smerge-diff-base-lower): Rename from smerge-other, smerge-other-face,
8080         smerge-other-re, smerge-keep-other, smerge-diff-base-lower.
8081         Update all uses.
8082         (smerge-basic-map): Add "l" and "u" bindings.
8083         (smerge-mode-menu): Update menu bindings for renaming.
8084         (smerge-font-lock-keywords): Update face names.
8085         (smerge-match-names): Update names.
8086         (smerge-diff-upper-lower): Rename from smerge-diff-mine-other.
8087         (smerge-match-conflict, smerge-ediff): Rename local variables.
8088         (smerge-makeup-conflict): Relabel markers.
8089         (smerge-parsep-re): Use renamed variables.
8091 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8093         Port recent my_edata change to MS-Windows
8095         * src/lastfile.c (my_edata): Also define if WINDOWSNT.
8097 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8099         Pacify GCC on C library without glibc API
8101         Without this change, with --enable-gcc-warnings GCC would complain
8102         “error: redundant redeclaration of ‘aligned_alloc’”.
8103         * configure.ac: Simplify aligned_alloc testing.
8104         * src/alloc.c (aligned_alloc): Don’t use if DARWIN_OS,
8105         since the simplified configure.ac no longer checks for that.
8106         Don’t declare if HAVE_ALIGNED_ALLOC.
8107         Correct misspelling of HAVE_ALIGNED_ALLOC in ifdef.
8109 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8111         Tell Automake the new lib/Makefile.am is OK
8113         * lib/Makefile.am (AUTOMAKE_OPTIONS): Add -Wno-portability.
8115 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8117         Make it easy to override preferred-branch test
8119         * Makefile.in (preferred-branch-is-current):
8120         Rename from emacs-25-branch-is-current.  All uses changed.
8121         (PREFERRED_BRANCH): New macro.
8123 2016-01-30  Glenn Morris  <rgm@gnu.org>
8125         * lisp/net/browse-url.el (browse-url-default-browser):
8126         Lower priority of non-free Chrome.
8128 2016-01-30  Glenn Morris  <rgm@gnu.org>
8130         Improve the custom type of some user options.
8132         * lisp/desktop.el (desktop-minor-mode-table):
8133         * lisp/man.el (Man-frame-parameters):
8134         * lisp/midnight.el (midnight-delay):
8135         * lisp/speedbar.el (speedbar-select-frame-method):
8136         * lisp/tooltip.el (tooltip-frame-parameters):
8137         * lisp/tree-widget.el (tree-widget-space-width):
8138         * lisp/type-break.el (type-break-keystroke-threshold):
8139         * lisp/woman.el (woman-imenu-generic-expression):
8140         * lisp/cedet/ede.el (ede-debug-program-function):
8141         * lisp/cedet/ede/project-am.el (project-am-debug-target-function):
8142         * lisp/emulation/viper-keym.el (viper-toggle-key):
8143         * lisp/erc/erc-networks.el (erc-server-alist):
8144         * lisp/gnus/message.el (message-deletable-headers, message-signature):
8145         * lisp/mail/mailalias.el (mail-directory-stream):
8146         * lisp/play/tetris.el (tetris-x-colors):
8147         * lisp/progmodes/gud.el (gud-tooltip-modes): Improve custom type.
8149 2016-01-30  Simen Heggestøyl  <simenheg@gmail.com>
8151         Highlight CSS variables with variable name face
8153         * lisp/textmodes/css-mode.el (css-nmstart-re): Don't match variables.
8154         (css--font-lock-keywords): Highlight variables in
8155         `font-lock-variable-name-face'.
8157 2016-01-30  Glenn Morris  <rgm@gnu.org>
8159         * lisp/gnus/gnus-kill.el (gnus-winconf-kill-file): Not user-serviceable.
8161 2016-01-30  Glenn Morris  <rgm@gnu.org>
8163         Mark some user options that can get evalled as risky.
8165         * lisp/allout.el (allout-title):
8166         * lisp/emacs-lisp/edebug.el (edebug-global-break-condition):
8167         * lisp/gnus/message.el (message-mailer-swallows-blank-line):
8168         * lisp/progmodes/gud.el (gud-tooltip-display):
8169         * lisp/vc/ediff-mult.el (ediff-default-filtering-regexp):
8170         Mark as risky.
8172 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8174         Disable DebPrint in sys_read on MS-Windows
8176         * src/w32.c (sys_read): Disable a debugging print that is normal
8177         when non-blocking reads are retried.
8179 2016-01-30  Martin Rudalics  <rudalics@gmx.at>
8181         ;Fix ChangeLog entry
8183 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
8185         Fix typos in Introduction to Emacs Lisp manual
8187         * doc/lispintro/emacs-lisp-intro.texi (Emacs Initialization)
8188         (kill-new function, Digression into C)
8189         (Complete forward-sentence, Divide and Conquer, Find a File)
8190         (lengths-list-many-files, Columns of a graph, defcustom)
8191         (recursive-count-words): Fix typos.  Reported by Daniel Bastos
8192         <dbastos@toledo.com>.
8194 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8196         Shrink static heap a bit
8198         * src/sheap.h: Include lisp.h, for Lisp_Object.
8199         (STATIC_HEAP_SIZE): Now an enum constant, not a macro.
8200         Make it 2 MiB * sizeof (Lisp_Object), which is a bit more
8201         conservative than the old value.
8202         (Bug#22086)
8204 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8206         Fix extern symbols defined and not used
8208         * src/alloc.c: Always include <signal.h>.
8209         (malloc_warning) [!SIGDANGER && (SYSTEM_MALLOC || HYBRID_MALLOC)]:
8210         Do not define; unused.
8211         * src/emacs.c, src/lisp.h (might_dump) [!DOUG_LEA_MALLOC]: Now static.
8212         * src/gmalloc.c (gdefault_morecore): Rename from __default_morecore,
8213         to avoid collision with glibc.  Now static.  All uses changed.
8214         * src/lastfile.c (my_edata): Define only if
8215         ((!defined SYSTEM_MALLOC && !defined HYBRID_MALLOC && !defined
8216         WINDOWSNT) \ || defined CYGWIN || defined DARWIN_OS).
8217         (Bug#22086)
8219 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8221         Build lib/e-*.o only on platforms that need it
8223         * configure.ac (hybrid malloc): Simplify configuration.
8224         (SHEAP_OBJ): Remove; no longer needed.
8225         (HYBRID_MALLOC): New var. Subst it.
8226         (HYBRID_MALLOC_LIB): New Automake conditional.
8227         * lib/Makefile.am (noinst_LIBRARIES): Add libegnu.a only if
8228         HYBRID_MALLOC_LIB.
8229         (libegnu_a_CPPFLAGS): Omit AM_CPPFLAGS; not needed.
8230         (MOSTLYCLEANFILES): Add libegnu.a.
8231         * src/Makefile.in (SHEAP_OBJ): Remove.
8232         (HYBRID_MALLOC): New macro.
8233         (base_obj): Use it to conditionally add sheap.o.
8234         (LIBEGNU_ARCHIVE): New macro.
8235         ($(LIBEGNU_ARCHIVE)): New rule, replacing $(lib)/libegnu.a.
8236         All uses of the latter replaced by the former.
8237         * src/alloc.c (USE_ALIGNED_ALLOC): Simplify configuration.
8238         Correct misspelling ALIGNED_ALLOC to HAVE_ALIGNED_ALLOC.
8239         * src/gmalloc.c: Update comment.
8240         * src/lisp.h (aligned_alloc)
8241         [!DOUG_LEA_MALLOC && !HYBRID_MALLOC && !SYSTEM_MALLOC]:
8242         New decl.
8243         (Bug#22086)
8245 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8247         Include <malloc.h> when advisable
8249         This should help insulate us better from future glibc changes.
8250         It is good hygiene to include .h files for APIs that Emacs uses.
8251         Fix type clashes between Emacs and GNU <malloc.h> (Bug#22086).
8252         * configure.ac: Check for malloc.h.
8253         * src/alloc.c: Include <malloc.h> depending on HAVE_MALLOC_H,
8254         not on DOUG_LEA_MALLOC.
8255         * src/emacs.c, src/gmalloc.c (malloc_enable_thread):
8256         Remove decl (now in lisp.h).
8257         * src/gmalloc.c: Include stddef.h earlier, for ptrdiff_t.
8258         [emacs]: Include lisp.h.
8259         [HAVE_MALLOC_H]: Include <malloc.h>.
8260         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
8261         (__after_morecore_hook, __malloc_initialize_hook, __morecore)
8262         (__default_morecore):
8263         [!HAVE_MALLOC_H]: New decls near non-inclusion of <malloc.h>.
8264         (calloc): Make it clear that the macro should not be used.
8265         Remove unused decl.
8266         (malloc_info): New macro, to avoid clash with glibc <malloc.h>.
8267         (__morecore, __default_morecore, __after_morecore_hook)
8268         (__malloc_extra_blocks, __malloc_initialize_hook, __free_hook)
8269         (__malloc_hook, __realloc_hook, __memalign_hook, memory_warnings):
8270         Remove later decls.
8271         (gmalloc_hook, gfree_hook, grealloc_hook):
8272         Rename from __malloc_hook, __free_hook, __realloc_hook to
8273         avoid type collision with glibc <malloc.h>.  All uses changed.
8274         (gmalloc_hook):
8275         (__malloc_extra_blocks) [DOUG_LEA_MALLOC||HYBRID_MALLOC||SYSTEM_MALLOC]:
8276         Now static.
8277         (gmalloc_hook, __malloc_extra_blocks): Define even if [!HYBRID_MALLOC].
8278         (__malloc_initialize_hook, __after_morecore_hook):
8279         Declare with types compatible with glibc.
8280         (__memalign_hook, hybrid_calloc) [HYBRID_MALLOC]:
8281         Remove.  All uses removed.
8282         * src/lisp.h (__malloc_extra_blocks, malloc_enable_thread): New decls.
8283         * src/ralloc.c, src/vm-limit.c:
8284         Simplify includes and include <malloc.h> if available.
8286 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8288         * src/alloc.c: Include "sheap.h".
8290         (alloc_unexec_pre, alloc_unexec_post) [HYBRID_MALLOC]:
8291         Set and clear bss_sbrk_did_unexec, on all platforms not just Cygwin.
8292         * src/lisp.h (alloc_unexec_pre, alloc_unexec_post) [!DOUG_LEA_MALLOC]:
8293         Declare unconditionally.
8294         * src/unexcw.c, src/unexelf.c (bss_sbrk_did_unexec): Remove decl.
8295         (unexec): Don’t set or clear bss_sbrk_did_unexec;
8296         the caller now does this.
8297         (Bug#22086)
8299 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8301         Pacify --enable-gcc-warnings when HYBRID_MALLOC
8303         * src/buffer.c (init_buffer):
8304         * src/emacs.c (main):
8305         * src/xsmfns.c (smc_save_yourself_CB, x_session_initialize):
8306         Use emacs_get_current_dir_name, not get_current_dir_name.
8307         * src/conf_post.h (aligned_alloc) [HYBRID_MALLOC && emacs]: New macro.
8308         (HYBRID_GET_CURRENT_DIR_NAME, get_current_dir_name): Remove.
8309         * src/emacs.c: Include "sheap.h".
8310         (report_sheap_usage): Remove decl.
8311         (Fdump_emacs) [HYBRID_MALLOC]: Report usage directly.
8312         Don't assume ptrdiff_t can be printed as int.
8313         * src/gmalloc.c [HYBRID_MALLOC]:
8314         Include "sheap.h" rather than declaring its contents by hand.
8315         (get_current_dir_name, gget_current_dir_name)
8316         (hybrid_get_current_dir_name): Remove.
8317         (emacs_abort): Remove duplicate decl.
8318         (aligned_alloc): Undef, like malloc etc.
8319         (ALLOCATED_BEFORE_DUMPING): Now a static function, not a macro.
8320         Make it a bit more efficient.
8321         (malloc_find_object_address): Remove unused decl.
8322         (enum mcheck_status, mcheck, mprobe, mtrace, muntrace, struct mstats)
8323         (mstats, memory_warnings): Declare only if GC_MCHECK.
8324         * src/lisp.h (emacs_get_current_dir_name):
8325         New decl, replacing get_current_dir_name.
8326         * src/sheap.c: Include sheap.h first.
8327         (STATIC_HEAP_SIZE): Remove; now in sheap.h.
8328         (debug_sheap): Now static.
8329         (bss_sbrk_buffer_end): Remove; no longer used.
8330         (bss_sbrk_ptr): Now static and private.
8331         (bss_sbrk_did_unexec): Now bool.
8332         (BLOCKSIZE): Remove, to avoid GCC warning about its not being used.
8333         (bss_sbrk): Don't treat request_size 0 as special, since the code
8334         works without this being a special case.
8335         Avoid overflow if request size exceeds INT_MAX.
8336         (report_sheap_usage): Remove; now done in emacs.c.
8337         * src/sheap.h: New file.
8338         * src/sysdep.c (get_current_dir_name): Remove macro.
8339         Include "sheap.h".
8340         (emacs_get_current_dir_name): Rename function from
8341         get_current_dir_name.  Handle HYBRID_MALLOC here;
8342         this is simpler.
8343         (Bug#22086)
8345 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8347         Report static heap usage on non-Cygwin, too
8349         * src/emacs.c (Fdump_emacs) [HYBRID_MALLOC]: Report sheap usage here ...
8350         * src/unexcw.c (unexec): ... instead of here, since sheap can be used
8351         on platforms other than Cygwin (Bug#22086).
8353 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8355         Pacify GCC on extern decls
8357         * src/unexelf.c (bss_sbrk_did_unexec): Move decl to top level
8358         to pacify recent GCC (Bug#22086).
8360 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
8362         Add musl patch to support HYBRID_MALLOC on elf systems
8364         * src/gmalloc.c: Adjust for HYBRID_MALLOC in the non CYGWIN case.
8365         (__default_morecore): Here, in particular.
8366         * configure.ac: Define HYBRID_MALLOC when unexelf.o is used.
8367         New variable SHEAP_OBJ.
8368         * src/Makefile.in: Use it.
8369         (Bug#22086)
8371 2016-01-30  Rich Felker  <dalias@libc.org>  (tiny change)
8373         unexelf.c hook to support HYBRID_MALLOC on ELF
8375         * src/unexelf.c (unexec) [HYBRID_MALLOC]:
8376         Define bss_sbrk_did_unexec (Bug#22086).
8378 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
8380         Link temacs with gnulib compiled with -Demacs
8382         This is done to support HYBRID_MALLOC, since some static variables
8383         (e.g., last_environ in putenv.c) hold pointers to memory malloced
8384         before dumping (Bug#22086).
8385         * lib/Makefile.am: Add incantation to install libegnu.a.
8386         * src/Makefile.in ($(lib)/libgnu.a): Replace with libegnu.a
8387         (temacs$(EXEEXT)): Use it.
8389 2016-01-30  Wolfgang Jenkner  <wjenkner@inode.at>
8391         Internal linkage for gmalloc etc. if HYBRID_MALLOC
8393         This avoids clashes with symbols if the after-dump malloc is
8394         derived from Doug Lea's implementation (Bug#22086).
8396         * src/gmalloc.c (emacs_abort, __morecore, __default_morecore):
8397         Move declarations up.  For HYBRID_MALLOC, turn all `extern'
8398         declarations below to `static' ones.
8399         (aligned_alloc): Declare for !MSDOS as well.
8400         (heapsize, _fraghead): Move resp. copy declaration downwards.
8401         For HYBRID_MALLOC, conditionalize out the other definitions,
8402         since the previous `static' declarations double as tentative
8403         definitions, anyway.
8404         (_malloc, _free, _realloc, __free_hook, _aligned_blocks)
8405         (__realloc_hook, __memalign_hook): Conditionalize out.
8406         (cfree, memalign, valloc): Ditto.
8408 2016-01-30  Paul Eggert  <eggert@cs.ucla.edu>
8410         Merge from origin/emacs-25
8412         3f481ad Rename xref-query-replace to xref-query-replace-in-results
8413         62f4ed4 Update cl-defgeneric and cl-defmethod docstrings
8414         2111e0e Comment out next-error-function integration in xref
8415         4e11ad3 Correct a use of "which" in intro.texi
8416         a1865bc Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
8417         76045f7 Don't operate on menu bar of nonexistent frame
8418         c32f3bc Unbreak the GNUstep build.
8420 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
8422         Re-enable checks in member, memql, delete to complain about non-lists
8424         * src/fns.c (Fmember, Fmemql, Fdelete): Revert 2007-10-16 change.
8426 2016-02-04  Martin Rudalics  <rudalics@gmx.at>
8428         Minor doc(-string) tweaks
8430         * lisp/window.el (window-in-direction): Fix doc-string typo.
8431         * doc/lispref/frames.texi (Frame Font): Mention canonical
8432         character width/height.
8433         * doc/lispref/windows.texi (Windows and Frames): Clarify
8434         handling of minibuffer window for `window-in-direction'.
8435         (Window Sizes): Minor tweaks in descriptions of
8436         `window-max-chars-per-line', `window-min-width' and
8437         `window-min-size'.
8438         (Deleting Windows): Minor tweak in `delete-window' description.
8439         (Selecting Windows): Clarify window use time description.
8440         (Cyclic Window Ordering): Minor tweak.
8441         (Switching Buffers): Clarify description of
8442         `switch-to-buffer-in-dedicated-window'.
8444 2016-02-04  Eli Zaretskii  <eliz@gnu.org>
8446         Remove some useless-use-of eval.
8448         * lisp/gnus/gnus.el (gnus-load-hook): Don't use eval.
8449         * lisp/gnus/nnrss.el (xml): Simply require it.
8450         (xml-rpc-method-call): Use declare-function.
8452 2016-01-28  Glenn Morris  <rgm@gnu.org>
8454         Don't use eval to quieten prolog.el compilation.
8456         * lisp/progmodes/prolog.el (pltrace-on, pltrace-off): Declare.
8457         (prolog-enable-sicstus-sd, prolog-disable-sicstus-sd): Don't use eval.
8459 2016-01-28  Glenn Morris  <rgm@gnu.org>
8461         Mark some risky prolog variables.
8463         * lisp/progmodes/prolog.el (prolog-system-version)
8464         (prolog-keywords, prolog-types, prolog-mode-specificators)
8465         (prolog-determinism-specificators, prolog-directives)
8466         (prolog-program-name, prolog-program-switches)
8467         (prolog-consult-string, prolog-compile-string)
8468         (prolog-eof-string, prolog-prompt-regexp, prolog-help-function):
8469         Mark anything processed by prolog-find-value-by-system as risky.
8471 2016-01-28  Glenn Morris  <rgm@gnu.org>
8473         * lisp/custom.el (defcustom): Doc fix.
8475         * doc/lispref/customize.texi (Variable Definitions):
8476         Defcustom should always have a type.
8478 2016-01-28  Glenn Morris  <rgm@gnu.org>
8480         * lisp/emacs-lisp/bytecomp.el (byte-compile-nogroup-warn):
8481         Warn if defcustom has no type.  (Bug#16276)
8483         * lisp/cedet/semantic/db-file.el (semanticdb-persistent-path):
8484         Fix :type.
8486         * lisp/emacs-lisp/package.el (package-load-list): Improve :type.
8488 2016-01-28  Michael Albinus  <michael.albinus@gmx.de>
8490         Fix Bug#22452
8492         * lisp/net/tramp-adb.el (tramp-adb-maybe-open-connection):
8493         * lisp/net/tramp-gvfs.el (tramp-gvfs-maybe-open-connection):
8494         * lisp/net/tramp-sh.el (tramp-maybe-open-connection):
8495         * lisp/net/tramp-smb.el (tramp-smb-maybe-open-connection):
8496         Mark it as connected.
8498         * lisp/net/tramp.el (tramp-handle-file-remote-p): Check also, if
8499         connection property "connected" is set.  (Bug#22452)
8501 2016-01-27  Glenn Morris  <rgm@gnu.org>
8503         * test/lisp/vc/vc-hg.el: Move from test/automated/.
8505         * lisp/xwidget.el (xwidget-query-on-exit-flag): Declare.
8507         * lisp/xwidget.el (xwidget-webkit-browse-url): Give explicit error
8508         if not compiled with xwidgets.
8510 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
8512         C-u C-x = example doc fix
8514         * doc/emacs/mule.texi (International Chars):
8515         Adjust example to match current behavior of C-u C-x =.
8517 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
8519         malloc.h hygiene
8521         This attempts to future-proof Emacs a bit against possible glibc
8522         changes, by having Emacs use <malloc.h> declarations rather than
8523         coding them up by hand.  Problem noted by Florian Weimer in:
8524         https://sourceware.org/ml/libc-alpha/2016-01/msg00777.html
8525         Implement this mainly by moving malloc.h-related functions from
8526         emacs.c (which does not include <malloc.h>) to alloc.c (which does).
8527         * src/alloc.c (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]:
8528         New function.
8529         The remaining changes to this file apply only if DOUG_LEA_MALLOC.
8530         (alloc_unexec_pre, alloc_unexec_post): New functions.
8531         (malloc_initialize_hook): Use my_heap_start and alloc_unexec_post.
8532         (__MALLOC_HOOK_VOLATILE): New macro, if not already defined.
8533         (__malloc_initialize_hook): Use it.
8534         (malloc_state_ptr, malloc_initialize_hook, __malloc_initialize_hook):
8535         Move here from ...
8536         * src/emacs.c: ... here.
8537         (malloc_get_state, malloc_set_state): Remove extern decls.
8538         (my_heap_start) [DOUG_LEA_MALLOC || GNU_LINUX]: Remove static var.
8539         All uses changed to similarly-named new function.
8540         (Fdump_emacs): Use new functions alloc_unexec_pre, alloc_unexec_post.
8541         * src/lisp.h (my_heap_start, alloc_unexec_pre, alloc_unexec_post):
8542         New decls.
8544 2016-01-26  Eli Zaretskii  <eliz@gnu.org>
8546         * doc/emacs/mark.texi (Using Region): Clarify wording.  (Bug#22467)
8548 2016-01-26  Paul Eggert  <eggert@cs.ucla.edu>
8550         Remove never-set var handle_user_signal_hook
8552         * src/keyboard.c, src/keyboard.h (handle_user_signal_hook):
8553         Remove never-set var.  All uses removed.
8555 2016-01-26  Anders Lindgren  <andlind@gmail.com>
8557         Fixed NextStep fullscreen issue (bug#22468)
8559         When in fullscreen mode, `[screen visibleFrame]' sometimes
8560         includes, sometimes excludes the menu bar. This could cause
8561         a frame to be placed too low when in fullscreen mode.
8563         * src/nsterm.m (ns_menu_bar_should_be_hidden): Trace.
8564         (constrain_frame_rect): New parameter, isFullscreen, when true don't
8565         query the height of the menu bar.
8566         (ns_constrain_all_frames): Pass `false' (isFullscreen) to
8567         `constrain_frame_rect'.
8568         ([EmacsView initFrameFromEmacs:]): Trace.
8569         ([EmacsView isFullscreen]): Trace.
8570         ([EmacsWindow constrainFrameRect:toScreen:]): Pass fullscreen
8571         state to `constrain_frame_rect'.
8573 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
8575         * lisp/files.el: Use a fixed file name for the second dir-locals file
8577         (dir-locals-file): Revert to its original fixed value.
8578         (dir-locals-file-2): New const.
8579         (dir-locals--all-files): Don't use `file-name-all-completions'.
8580         Instead, just check for the 2 dir-locals files and return a list
8581         of the ones that exit (if any).
8583         * etc/NEWS: Document the change.
8585         * doc/emacs/custom.texi (Directory Variables): Document the change.
8587         * doc/lispref/variables.texi (Directory Local Variables): Update
8588         accordingly.
8590 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
8592         * lisp/files-x.el (modify-dir-local-variable): Small rewrite
8594         Change a variable name to be more meaningful, and reorder some of
8595         the code with no change in behaviour.
8597 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
8599         * lisp/files.el (dir-locals-find-file): Refactor return values
8601         Returning a cache remains unchanged, but the case of returning a
8602         file (or pattern) is now changed to return the contaning
8603         directory.
8605         (dir-locals-read-from-file): Rename to `dir-locals-read-from-dir'
8606         and make obsolete.
8607         (dir-locals-read-from-dir): Simplify accordingly.
8608         (hack-dir-local-variables): Simplify accordingly and rename a
8609         variable.
8611 2016-01-25  Glenn Morris  <rgm@gnu.org>
8613         * lisp/textmodes/flyspell.el (flyspell--prev-meta-tab-binding):
8614         Declare.
8616         * configure.ac (USE_CAIRO): Rename to more standard HAVE_CAIRO.
8618         * configure.ac (--with-cairo): Say it's experimental.
8620         * lisp/xwidget.el (xwidget-webkit-scroll-behavior):
8621         Rename using American spelling.  Update all uses.
8623 2016-01-25  Glenn Morris  <rgm@gnu.org>
8625         Yet more xwidget doc fixes.
8627         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour)
8628         (xwidget-insert, xwidget-webkit-browse-url)
8629         (xwidget-webkit-scroll-up, xwidget-webkit-scroll-down)
8630         (xwidget-webkit-scroll-forward, xwidget-webkit-scroll-backward)
8631         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
8632         (xwidget-webkit-show-id-element)
8633         (xwidget-webkit-show-id-or-named-element)
8634         (xwidget-webkit-adjust-size, xwidget-webkit-current-url)
8635         (xwidget-webkit-execute-script-rv)
8636         (xwidget-webkit-copy-selection-as-kill, xwidget-get)
8637         (xwidget-put):  Doc fixes.
8638         (xwidget-webkit-insert-string, xwidget-webkit-show-named-element)
8639         (xwidget-webkit-show-id-element)
8640         (xwidget-webkit-show-id-or-named-element): Prompt fixes.
8642 2016-01-25  Ted Zlatanov  <tzz@lifelogs.com>
8644         * lisp/gnus/gnus-art.el (gnus-blocked-images):
8645         Add explicit nil choice and tags.
8647 2016-01-25  Paul Eggert  <eggert@cs.ucla.edu>
8649         Spelling fixes
8651 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8653         (rng-c-fix-escaped-newlines): Use subst-char-in-string
8655         * lisp/nxml/rng-cmpct.el (rng-c-fix-escaped-newlines):
8656         Use subst-char-in-string.
8658 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8660         * lisp/textmodes/sgml-mode.el (sgml-forward-sexp): New function
8662         (sgml-cursor-sensor, sgml-pretty-print, sgml-parse-tag-backward)
8663         (sgml-calculate-indent): Use it.
8665 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8667         * lisp/org: Fix some compiler warnings
8669         * lisp/org/ob-core.el (org-babel-check-confirm-evaluate)
8670         (org-babel-map-src-blocks): Don't emit warnings if added vars are not used.
8671         (*this*): Declare as dyn-bound.
8672         (org-babel-expand-src-block, org-babel-load-in-session)
8673         (org-babel-switch-to-session-with-code, org-babel-get-rownames):
8674         Mark unused args.
8675         (org-babel-combine-header-arg-lists): Remove unused var `args'.
8676         (org-babel-find-named-block): Remove unused var `msg'.
8678         * lisp/org/org-src.el (org-inhibit-startup, org-src-fontify-natively):
8679         Declare as dyn-bound.
8680         (org-edit-src-code): Remove unused var `lfmt'.
8681         (org-edit-fixed-width-region): Remove unused var `preserve-indentation'.
8683 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8685         * lisp/font-lock.el: Use #' to quote function symbols
8687 2016-01-25  Stefan Monnier  <monnier@iro.umontreal.ca>
8689         (font-lock-ensure-function): Fix bug#22399
8691         * lisp/font-lock.el (font-lock-ensure-function): Fix handling when
8692         font-lock-mode is not enabled (bug#22399).
8694 2016-01-25  Alan Mackenzie  <acm@muc.de>
8696         Expunge "allow" + infinitive from source and doc, part 2.
8698         Do the same for "permit", "enable", "prevent", and (where appropriate)
8699         "require".
8701         doc/misc/reftex.texi:
8702         doc/misc/url.texi:
8703         lib/get-permissions.c:
8704         lib/strftime.c:
8705         lisp/org/org-element.el:
8706         lisp/org/org-mobile.el:
8707         lisp/textmodes/reftex-vars.el:
8708         src/bidi.c:
8709         src/emacs.c:
8710         src/xdisp.c:
8711         test/etags/c-src/emacs/src/lisp.h:
8713         Expunge the likes of "This allows to do something" from the above files.
8715 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
8717         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-mode): Redundant line
8719         `special-mode' is already read-only.
8721 2016-01-25  Artur Malabarba  <bruce.connor.am@gmail.com>
8723         * lisp/emacs-lisp/ert.el (ert--results-move): Change error to user-error
8725 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
8727         Port "$@" to OpenIndiana ksh93
8729         In http://lists.gnu.org/archive/html/bug-autoconf/2015-12/msg00000.html
8730         Pavel Raiskup reports that ${1+"$@"} runs afoul of a bug in /bin/sh
8731         (derived from ksh 93t+ 2010-03-05).  ${1+"$@"} works around an ancient
8732         bug in long-dead shells, so remove the workaround.
8733         * admin/check-doc-strings, configure.ac, lib-src/rcs2log:
8734         Use plain "$@" rather than ${1+"$@"}.
8736 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
8738         * src/xwidget.c (Fxwidget_set_adjustment): Fix doc string quoting typo.
8740 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
8742         Improve wording for SMB support
8744         * doc/misc/tramp.texi (External methods): Improve and modernize
8745         wording for discussion of smbclient.  There is no longer any
8746         need to mention the laundry list of old MS Windows implementations
8747         of SMB and CIFS, nor to mention CIFS.  Also, give a URL for Samba.
8749 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
8751         Merge from gnulib
8753         This incorporates:
8754         2016-01-24 openat_proc_name: fix last '/' overwritten on OS/2 kLIBC
8755         2016-01-24 closedir, dirfd, opendir: port to OpenSolaris 5.10
8756         2016-01-15 detect utimes() correctly on OS/2 kLIBC
8757         2016-01-15 openat_proc_name: port to OS/2 kLIBC
8758         2016-01-14 stdint: check _INTPTR_T_DECLARED for intptr_t etc.
8759         2016-01-14 opendir, closedir, dirfd, fdopendir: port to OS/2 kLIBC
8760         2016-01-14 dup, dup2, fcntl: support a directory fd on OS/2 kLIBC
8761         2016-01-14 binary-io: don't put fd in binary mode if a console on EMX
8762         2016-01-14 sig2str: list all signals on FreeBSD >= 7
8763         2016-01-13 acl-permissions: port to USE_ACL==0 platforms
8764         2016-01-12 mktime: rename macro to avoid glibc clash
8765         2016-01-12 Port "$@" to OpenIndiana ksh93
8766         2016-01-12 Port Universal Time settings to strict POSIX
8767         * build-aux/gitlog-to-changelog, build-aux/update-copyright:
8768         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
8769         * lib/binary-io.h, lib/dirent.in.h, lib/dirfd.c, lib/dup2.c:
8770         * lib/fcntl.c, lib/fdopendir.c, lib/mktime.c, lib/openat-proc.c:
8771         * lib/sig2str.h, lib/stdint.in.h, m4/dirfd.m4, m4/dup2.m4:
8772         * m4/fcntl.m4, m4/utimes.m4:
8773         Copy from gnulib.
8774         * m4/gnulib-comp.m4: Regenerate.
8776 2016-01-24  Alan Mackenzie  <acm@muc.de>
8778         Expunge "allow" + infinitive without direct object from source and doc.
8780         Do the same for "permit", "enable", and "prevent".
8782         * doc/emacs/mule.texi:
8783         * doc/lispref/control.texi:
8784         * doc/lispref/display.texi:
8785         * doc/lispref/frames.texi:
8786         * doc/lispref/functions.texi:
8787         * doc/lispref/nonascii.texi:
8788         * doc/lispref/streams.texi:
8789         * doc/lispref/windows.texi:
8790         * doc/misc/dbus.texi:
8791         * doc/misc/eww.texi:
8792         * doc/misc/flymake.texi:
8793         * doc/misc/octave-mode.texi:
8794         * doc/misc/org.texi:
8795         * doc/misc/reftex.texi:
8796         * doc/misc/tramp.texi:
8797         * doc/misc/wisent.texi:
8798         * etc/NEWS:
8799         * lisp/autorevert.el:
8800         * lisp/cedet/mode-local.el:
8801         * lisp/cedet/semantic/senator.el:
8802         * lisp/cedet/semantic/wisent.el:
8803         * lisp/dos-fns.el:
8804         * lisp/frameset.el:
8805         * lisp/gnus/gnus-agent.el:
8806         * lisp/gnus/mm-util.el:
8807         * lisp/international/characters.el:
8808         * lisp/ldefs-boot.el:
8809         * lisp/mail/mailclient.el:
8810         * lisp/man.el:
8811         * lisp/mh-e/mh-search.el:
8812         * lisp/net/tramp-cmds.el:
8813         * lisp/net/tramp-gvfs.el:
8814         * lisp/org/org-crypt.el:
8815         * lisp/org/org-element.el:
8816         * lisp/org/org-feed.el:
8817         * lisp/org/org.el:
8818         * lisp/org/ox-ascii.el:
8819         * lisp/org/ox-icalendar.el:
8820         * lisp/org/ox-publish.el:
8821         * lisp/org/ox.el:
8822         * lisp/play/gamegrid.el:
8823         * lisp/play/gomoku.el:
8824         * lisp/progmodes/antlr-mode.el:
8825         * lisp/progmodes/python.el:
8826         * lisp/progmodes/vhdl-mode.el:
8827         * lisp/strokes.el:
8828         * lisp/textmodes/ispell.el:
8829         * lisp/tree-widget.el:
8830         * lisp/vc/pcvs.el:
8831         * lisp/window.el:
8832         * src/lisp.h:
8833         * src/w32.c:
8834         * src/w32heap.c:
8835         * src/w32term.c:
8836         * src/window.c:
8837         * src/xfaces.c:
8839         Replace solecisms like "This allow to do something" with a correct
8840         alternative, such as "This allow you to do something", "This allows
8841         something to be done" or "This allows the doing of something".
8843 2016-01-24  l3thal  <kwhite@gnu.org>
8845         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
8847 2016-01-24  Kelvin White  <kwhite@gnu.org>
8849         Add NEWS entry for asynchronous reconnect in ERC
8851 2016-01-24  l3thal  <kwhite@gnu.org>
8853         Add NEWS entry for asynchronous reconnect in ERC
8855 2016-01-24  Kelvin White  <kwhite@gnu.org>
8857         browse-url.el: Add 'google-chrome' to supported browsers.
8859 2016-01-24  Paul Eggert  <eggert@cs.ucla.edu>
8861         Port Tramp manual to latest Texinfo
8863         Otherwise, 'make pdf' did not work (Bug#22416).
8864         * doc/misc/tramp.texi (xxx, yyy): Remove macros.
8865         (trampfn): Specialize to the case where METHOD is nonempty.
8866         The 2nd argument is now user@host, not 2nd user and 3rd host args.
8867         All uses changed.
8868         (trampf): New macro.
8870 2016-01-24  Lars Ingebrigtsen  <larsi@gnus.org>
8872         * eww.el (eww-render): Protect against empty content-types.
8874 2016-01-24  Nicolas Petton  <nicolas@petton.fr>
8876         authors.el updates
8878         * admin/authors.el (authors-ignored-files, authors-renamed-files-alist):
8879           Additions.
8881 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
8883         Rename xref-query-replace to xref-query-replace-in-results
8885         * lisp/progmodes/xref.el(xref-query-replace):
8886         Rename to xref-query-replace-in-results.
8887         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01240.html)
8889         * lisp/progmodes/xref.el (xref--xref-buffer-mode-map):
8890         * lisp/dired-aux.el (dired-do-find-regexp-and-replace):
8891         * doc/emacs/dired.texi (Operating on Files):
8892         * doc/emacs/maintaining.texi (Xref Commands)
8893         (Identifier Search, Identifier Search): Update accordingly.
8895 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
8897         Update cl-defgeneric and cl-defmethod docstrings
8899         * lisp/emacs-lisp/cl-generic.el: Remove outdated TODO item.
8900         (cl-defgeneric): Rename BODY to DEFAULT-BODY.
8901         (cl-defmethod): Mention that multiple dispatch arguments are
8902         allowed.  Document supported types.  (Bug#22336)
8904 2016-01-23  Dmitry Gutov  <dgutov@yandex.ru>
8906         Comment out next-error-function integration in xref
8908         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
8909         Comment out next-error-function integration
8910         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01286.html).
8912 2016-01-23  John Wiegley  <johnw@newartisans.com>
8914         Correct a use of "which" in intro.texi
8916 2016-01-23  Alan Mackenzie  <acm@muc.de>
8918         Distinguish the two meanings of Java's keyword "default".  Fixes bug #22358.
8920         * lisp/progmodes/cc-engine.el (c-guess-basic-syntax CASE 14): Check the
8921         context of case labels (including "default") more rigorously.
8922         (c-guess-basic-syntax CASE 15): Consequential amendment.
8924         * lisp/progmodes/cc-langs.el (c-modifier-kwds): Add "default" to Java's value.
8926 2016-01-23  Oscar Fuentes  <ofv@wanadoo.es>
8928         Don't operate on menu bar of nonexistent frame
8930         * src/xfns.c (Fx_hide_tip) [USE_LUCID]: Check that the current frame
8931         is valid before redisplaying its menu. Fixes bug#22438.
8933 2016-01-23  Anders Lindgren  <andlind@gmail.com>
8935         Unbreak the GNUstep build.
8937         * src/nsterm.m ([EmacsBell init]): In GNUstep, don't use the
8938         predefined "caution" image. Add trace.
8939         (x_set_window_size): Remove unused variables `cols' and `rows'.
8940         (ns_draw_fringe_bitmap): Exclude assignment of `fromRect' when
8941         GNUstep is used.
8942         ([EmacsView updateFrameSize:]): Remove unused variable `win'.
8943         ([EmacsWindow zoom:]): Remove unused variable `f'.
8945 2016-01-23  Eli Zaretskii  <eliz@gnu.org>
8946             John Wiegley  <johnw@gnu.org>
8947             Michael Heerdegen  <michael_heerdegen@web.de>
8949         Improve documentation of 'pcase'
8951         * doc/lispref/control.texi (Pattern matching case statement):
8952         Reorganize, expand, and improve wording.
8954         * etc/NEWS: Mention that 'pcase' changes are documented.
8956 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
8958         * etc/NEWS: Say that Cairo is experimental.
8960 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
8962         Report error for PNG under Cairo
8964         * src/image.c (lookup_rgb_color): Signal a file error instead
8965         of dumping core when mishandling an image.
8967 2016-01-23  Arash Esbati  <esbati@gmx.de>
8969         Delete a spurious backquote (tiny change)
8971         * lisp/textmodes/reftex-ref.el (reftex-label): Delete a
8972         spurious backquote which raises an error with emacs 25.
8974 2016-01-23  Paul Eggert  <eggert@cs.ucla.edu>
8976         Pacify --enable-gcc-warnings --with-cairo
8978         Problem reported by Alexander Kuleshov in:
8979         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01289.html
8980         * src/gtkutil.c (xg_get_page_setup):
8981         Use switch rather than if-then-else.
8982         * src/image.c (COLOR_TABLE_SUPPORT):
8983         Define directly rather than via #define and optional later #undef.
8984         (lookup_rgb_color) [USE_CAIRO && ENABLE_CHECKING]:
8985         Crash when the pixel is undefined, as there is a genuine bug
8986         here (Bug#22442).
8987         * src/image.c (tiff_load, gif_load, svg_load_image)
8988         (x_kill_gs_process) [USE_CAIRO]:
8989         * src/xterm.c (x_draw_fringe_bitmap) [USE_CAIRO]:
8990         Omit unused locals, or move them to where they’re needed.
8991         (x_clear_area1): Now ATTRIBUTE_UNUSED.
8993 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
8995         Update documentation for Dired search and replace
8997         * doc/emacs/dired.texi (Operating on Files): Update descriptions
8998         of 'A' and 'Q' now bound to 'dired-do-find-regexp' and
8999         'dired-do-find-regexp-and-replace'.
9001         * etc/NEWS: Mention xref-related changes in Dired.
9003 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9005         Port recent xdisp.c fix to picky C compilers
9007         * src/xdisp.c (dump_glyph): Redo the call to fprintf to avoid
9008         putting #if inside the arguments to a standard function, which
9009         the C standard says has undefined behavior.
9011 2016-01-22  Alan Mackenzie  <acm@muc.de>
9013         Prevent spurious recognition of K&R argument declarations.  Fixes bug #2203
9015         * cc-engine.el (c-forward-declarator): New function.
9016         (c-in-knr-argdecl): Before recognizing a K&R argument declaration, check it is
9017         contained in the preceding arg list.
9019         * cc-fonts.el (c-font-lock-declarators): Use the new function
9020         `c-forward-declarator' in place of inline code.
9022 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9024         Fix the build with --enable-checking=glyphs
9026         * src/xdisp.c (dump_glyph): Don't refer to glyph->u.xwidget in a
9027         build without xwidget support.
9029 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9031         Document cl-generic.el
9033         * doc/lispref/functions.texi (Generic Functions): New section.
9034         (Bug#22336)
9035         (Functions): Update the chapter menu.
9036         * doc/lispref/elisp.texi: Update the master menu.
9038 2016-01-22  Paul Eggert  <eggert@cs.ucla.edu>
9040         xwidgets style cleanup
9042         Adjust the newly-added Xwidgets code so that it uses a more-typical
9043         Emacs style.  This should not affect behavior, except that in
9044         a few places it adds runtime checks that Lisp arguments are of
9045         the proper type, and in one place it uses more-precise arithmetic.
9046         * src/buffer.c, src/dispnew.c, src/emacs.c, src/emacsgtkfixed.c:
9047         * src/emacs.c, src/print.c, src/window.c, src/xdisp.c, src/xterm.c:
9048         Include xwidget.h unconditionally.
9049         * src/buffer.c (Fkill_buffer):
9050         * src/dispnew.c (update_window):
9051         * src/emacs.c (main):
9052         * src/print.c (print_object):
9053         * src/window.c (Fdelete_window_internal):
9054         * src/xdisp.c (handle_single_display_spec, push_it, pop_it)
9055         (get_next_element, set_iterator_to_next, next_element_from_xwidget)
9056         (dump_glyph, calc_pixel_width_or_height, BUILD_GLYPH_STRINGS_XW)
9057         (BUILD_GLYPH_STRINGS, x_produce_glyphs, get_window_cursor_type):
9058         * src/xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
9059         Call xwidget functions and macros without worrying about
9060         HAVE_XWIDGETS when the code is a no-op on non-xwidget
9061         platforms.
9062         * src/dispextern.h (XWIDGET_GLYPH, struct glyph_string.xwidget)
9063         (IT_XWIDGET, GET_FROM_XWIDGET, struct it.u.xwidget)
9064         (struct it.xwidget):
9065         * src/lisp.h (PVEC_XWIDGET, PVEC_XWIDGET_VIEW):
9066         Always define.
9067         * src/emacsgtkfixed.h: Omit unnecessary comment.
9068         * src/keyboard.c: Fix spacing.
9069         * src/xdisp.c (BUILD_XWIDGET_GLYPH_STRING, produce_xwidget_glyph):
9070         Define to be a no-op if not HAVE_XWIDGETS.
9071         * src/xwidget.c: Include xwidget.h first (after config.h)
9072         to make sure that it can stand by itself.
9073         (Fmake_xwidget, Fxwidget_webkit_execute_script):
9074         Fix typo in doc string.
9075         (Fmake_xwidget): Check type of args.
9076         (Fmake_xwidget, offscreen_damage_event)
9077         (webkit_document_load_finished_cb, webkit_download_cb)
9078         (webkit_new_window_policy_decision_requested_cb)
9079         (webkit_navigation_policy_decision_requested_cb)
9080         (xwidget_osr_draw_cb, xwidget_osr_event_forward)
9081         (xwidget_osr_event_set_embedder, xwidget_init_view):
9082         Omit unnecessary casts.
9083         * src/xwidget.c (Fmake_xwidget, xwidget_hidden)
9084         (xwidget_show_view, xwidget_hide_view)
9085         (x_draw_xwidget_glyph_string, xwidget_start_redisplay, xwidget_touch)
9086         (xwidget_touched):
9087         * src/xwidget.h (struct xwidget.kill_without_query)
9088         (struct xwidget_view.redisplayed, struct xwidget_view.hidden):
9089         Use bool for boolean.
9090         * src/xwidget.c (store_xwidget_event_string, Fxwidget_size_request):
9091         Simplify by using list functions.
9092         (WEBKIT_FN_INIT): Omit unnecessary test for nil.
9093         (Fxwidget_resize): Check type of integer args
9094         before doing any work.  Check that they are nonnegative.
9095         (Fxwidget_set_adjustment): Check type of integer arg.
9096         Avoid redundant call to gtk_scrolled_window_get_vadjustment.
9097         Simplify.  Use double, not float.
9098         (Fxwidget_info, Fxwidget_view_info): Simplify by using CALLN.
9099         (valid_xwidget_spec_p): Simplify.
9100         (xwidget_spec_value): Omit unused arg FOUND.  All callers changed.
9101         * src/xwidget.h: Include lisp.h first, so that includers do
9102         not need to worry about doing that before including this file.
9103         Make this .h file safe to include even on non-HAVE_XWIDGETS
9104         configurations, to simplify the includers.
9105         (x_draw_xwidget_glyph_string, syms_of_xwidget, valid_xwidget_spec_p)
9106         (xwidget_end_redisplay, lookup_xwidget)
9107         (xwidget_view_delete_all_in_window, kill_buffer_xwidgets):
9108         Now a no-op if !HAVE_XWIDGETS, to simplify callers.
9109         (struct glyph_matrix, struct glyph_string, struct xwidget)
9110         (struct xwidget_view, struct window):
9111         New forward or incomplete decls, so that includers need not
9112         assume the corresponding .h files are already included, or that
9113         HAVE_XWIDGETS is defined.
9114         (struct xwidget_type, xwidget_from_id): Remove; unused.
9116 2016-01-22  John Wiegley  <johnw@newartisans.com>
9118         Further corrections to the pcase docstring
9120 2016-01-22  Eli Zaretskii  <eliz@gnu.org>
9122         * doc/emacs/anti.texi (Antinews): Rewrite for Emacs 25.
9124 2016-01-21  Stephen Leake  <stephen_leake@stephe-leake.org>
9126         In xref-collect-references, force backends to respect the 'dir' arg
9128         * lisp/progmodes/xref.el (xref-collect-references): Force symref backends
9129         to use `default-directory'.
9131 2016-01-21  John Wiegley  <johnw@newartisans.com>
9133         Minor correction to pcase docstring
9135 2016-01-21  John Wiegley  <johnw@newartisans.com>
9137         Write a new docstring for the pcase macro
9139         * lisp/emacs-lisp/pcase.el (pcase): Write a new docstring.
9141 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
9143         Avoid byte-compiler warning in todo-mode (bug#21953)
9145         * todo-mode.el (todo-convert-legacy-files): Add limit argument
9146         to looking-back to comply with advertised-calling-convention.
9148 2016-01-21  Stephen Berman  <stephen.berman@gmx.net>
9150         Fix desktop support in todo-mode and doc-view (bug#22377)
9152         * lisp/calendar/todo-mode.el (todo-restore-desktop-buffer):
9153         * lisp/doc-view.el (doc-view-restore-desktop-buffer): Return current buffer.
9155         * lisp/calendar/todo-mode.el (todo-modes-set-2):
9156         * lisp/doc-view.el (doc-view-mode): Set desktop-save-buffer unconditionally.
9158 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
9160         No need to configure gobject-introspection
9162         It wasn’t needed for the recently-installed xwidget_mvp code; see:
9163         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01154.html
9164         * configure.ac (DOES_XWIDGETS_USE_GIR, GIR_REQUIRED, GIR_MODULES):
9165         (HAVE_GIR):
9166         * src/Makefile.in (GIR_LIBS, GIR_CFLAGS):
9167         Remove.  All uses removed.
9168         * configure.ac (emacs_config_features): Don’t worry about GIR.
9170 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
9172         Don’t export C symbols not used elsewhere
9174         These were recently added, mostly as part of xwidget code.
9175         * src/emacsgtkfixed.c (emacs_fixed_get_type): Now static.
9176         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
9177         Now static functions here, not macros in emacsgtkfixed.h.
9178         * src/emacsgtkfixed.h (EMACS_TYPE_FIXED):
9179         Remove.  All uses replaced by definiens.
9180         (EMACS_FIXED, EMACS_FIXED_GET_CLASS):
9181         Remove; these are now static functions in emacsgtkfixed.c.
9182         (EMACS_FIXED_CLASS, EMACS_IS_FIXED, EMACS_IS_FIXED_CLASS):
9183         Remove; unused.
9184         (emacs_fixed_get_type): Remove decl; no longer extern.
9185         * src/xwidget.c (offscreen_damage_event)
9186         (webkit_mime_type_policy_typedecision_requested_cb)
9187         (webkit_new_window_policy_decision_requested_cb)
9188         (webkit_navigation_policy_decision_requested_cb)
9189         (xwidget_spec_value, xwidget_view_lookup)
9190         (xwidget_start_redisplay, xwidget_touch):
9191         Now static.
9192         * src/xwidget.h (xwidget_start_redisplay, xwidget_touch):
9193         Remove decls.
9195 2016-01-20  Dmitry Gutov  <dgutov@yandex.ru>
9197         Support squiggly heredocs in ruby-mode
9199         * lisp/progmodes/ruby-mode.el (ruby-here-doc-beg-re):
9200         Support squiggly heredocs added in Ruby 2.3.
9202         * test/indent/ruby.rb: Add squiggly example.
9204 2016-01-20  Glenn Morris  <rgm@gnu.org>
9206         * configure.ac (emacs_config_features): Remove WEBKIT.
9208 2016-01-20  Paul Eggert  <eggert@cs.ucla.edu>
9210         Port to platforms with gtk3 but not webkitgtk3
9212         I ran into this problem on my Fedora 23 installation;
9213         Emacs configured but did not build when --with-xwidgets was specified.
9214         * configure.ac (HAVE_WEBKIT, HAVE_GIR): Omit unnecessary initializations.
9215         (DOES_XWIDGETS_USE_GIR): New var.
9216         If --with-xwidgets is specified, report an error if not
9217         doable, to be consistent with the other --with options.
9218         Require webkitgtk3 to use Xwidgets, as the Xwidgets code does
9219         not work at all without webkitgtk3.  Simplify use of
9220         EMACS_CHECK_MODULES.  Output message about gobject
9221         introspection only if xwidgets are used.
9222         * etc/NEWS: Users need webkitgtk3, not merely webkit.
9223         * src/xwidget.c (syms_of_xwidget): Don’t worry about HAVE_WEBKIT_OSR,
9224         since this file is no longer compiled if webkitgtk3 is not available.
9226 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
9228         Fix doc string of 'isearch-search-fun-function'
9230         * lisp/isearch.el (isearch-search-fun-function)
9231         (isearch-search-string): Doc fixes.  (Bug#22411)
9233 2016-01-19  Stefan Monnier  <monnier@iro.umontreal.ca>
9235         * lisp/xwidget.el: Nitpicks
9237         * lisp/xwidget.el (xwidget-log, xwidget-webkit-callback):
9238         Use with-current-buffer rather than save-excursion + set-buffer.
9240 2016-01-19  Glenn Morris  <rgm@gnu.org>
9242         Don't hard-code 1 as point-min.
9244         * lisp/image-mode.el (image-display-size):
9245         * lisp/xwidget.el (xwidget-webkit-last-session)
9246         (xwidget-webkit-current-session): Don't hard-code 1 as point-min.
9248 2016-01-19  Glenn Morris  <rgm@gnu.org>
9250         * lisp/xwidget.el: Add declarations to silence non-xwidget compilation.
9252 2016-01-19  Glenn Morris  <rgm@gnu.org>
9254         Trivial doc copyedits.
9256         * src/xwidget.c (Fmake_xwidget, Fget_buffer_xwidgets)
9257         (Fxwidget_webkit_get_title, Fxwidget_resize)
9258         (Fxwidget_set_adjustment, Fxwidgetp, Fxwidget_view_p)
9259         (Fxwidget_info, Fxwidget_view_lookup)
9260         (Fset_xwidget_query_on_exit_flag): Trivial doc copyedits.
9262 2016-01-19  Glenn Morris  <rgm@gnu.org>
9264         Avoid advising image-display-size for xwidgets.
9266         * lisp/xwidget.el (xwidget-image-display-size): Remove.
9267         (image-display-size): Remove advice.
9268         * lisp/image-mode.el (xwidget-info, xwidget-at): Declare.
9269         (image-display-size): Incorporate xwidget code directly.
9271 2016-01-19  Glenn Morris  <rgm@gnu.org>
9273         Avoid breaking non-xwidget Emacs that happen to load xwidget.el.
9275         * lisp/xwidget.el (window-configuration-change-hook)
9276         (kill-buffer-query-functions): Only modify these hooks if
9277         compiled with xwidget support.
9279 2016-01-19  Glenn Morris  <rgm@gnu.org>
9281         * lisp/xwidget.el (xwidget-webkit-scroll-behaviour): Fix custom spec.
9283         * configure.ac (WEBKIT, GIR, CAIRO): Use EMACS_CHECK_MODULES, not PKG_.
9285         * configure.ac (emacs_config_features): Add XWIDGETS, WEBKIT, GIR.
9287         * configure.ac (HAVE_WEBKIT_OSR): Remove broken, duplicated gtk3 test.
9289 2016-01-19  Katsumi Yamaoka  <yamaoka@jpl.org>
9291         * lisp/gnus/nnir.el (nnir-request-update-mark):
9292         Default to the original mark.
9293         cf. <http://thread.gmane.org/gmane.emacs.gnus.general/86583>
9294         and <http://thread.gmane.org/gmane.emacs.gnus.general/86640>
9296 2016-01-19  Glenn Morris  <rgm@gnu.org>
9298         * lisp/xwidget.el (report-xwidget-bug): Remove.
9300         (top-level): No longer require reporter.
9302 2016-01-19  Joakim Verona  <joakim@verona.se>
9303             Grégoire Jadi  <daimrod@gmail.com>
9305         Support for the new Xwidget feature.
9307         * configure.ac:
9308         (HAVE_XWIDGETS, WIDGET_OBJ, EMACS_CONFIG_FEATURES):
9309         * xterm.c (x_draw_glyph_string, x_draw_bar_cursor):
9310         * xdisp.c:
9311         (handle_display_spec, handle_single_display_spec, push_it)
9312         (pop_it, set_iterator_to_next, dump_glyph)
9313         (calc_pixel_width_or_height, fill_xwidget_glyph_string)
9314         (BUILD_XWIDGET_GLYPH_STRING, BUILD_GLYPH_STRINGS)
9315         (produce_xwidget_glyph, x_produce_glyphs)
9316         (get_window_cursor_type):
9317         * window.c (Fdelete_window_internal):
9318         * termhooks.h (e):
9319         * print.c (print_object):
9320         * lisp.h (ptrdiff_t):
9321         * keyboard.c (kbd_buffer_get_event, make_lispy_event)
9322         (syms_of_keyboard):
9323         * emacs.c (main):
9324         * dispnew.c (update_window, scrolling_window):
9325         * dispextern.h (g, i):
9326         * Makefile.in (XWIDGETS_OBJ, WEBKIT_CFLAGS, WEBKIT_LIBS)
9327         (GIR_LIBS, ALL_CFLAGS, base_obj, LIBES):
9328         * keyboard.c (kbd_buffer_get_event):
9329         * emacsgtkfixed.c (emacs_fixed_gtk_widget_size_allocate)
9330         (emacs_fixed_class_init): Add case for an xwidget view.
9332         * xwidget.c, xwidget.h, xwidget.el: New files for xwidgets
9335         Various improvements to the Xwidget feature.
9336         * xwidgets.c:
9337         * emacsgtkfixed.c:
9338         * xwidget.el:
9340 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
9342         Improve documentation of 'alist-get'
9344         * doc/lispref/variables.texi (Setting Generalized Variables): Add
9345         'alist-get' to the list of functions that can appear in PLACE
9346         argument of 'setf'.
9348 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
9350         Minor copyedits of doc/emacs/maintaining.texi
9352         * doc/emacs/maintaining.texi (List Identifiers): More accurate
9353         description of "C-M-i" wrt tags tables.
9354         (Tags Tables): Move the definition of "tag" to a footnote.
9356 2016-01-19  Eli Zaretskii  <eliz@gnu.org>
9358         Unbreak the Cygwin-w32 build
9360         * src/w32fns.c (globals_of_w32fns): Move the initialization of
9361         resetstkoflw into a part that isn't compiled on Cygwin.
9362         (Bug#22403)
9364 2016-01-19  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9366         * shr.el (shr-table-body): Allow tables to have text children.
9368 2016-01-19  Phillip Lord  <phillip.lord@russet.org.uk>
9370         Cope with multiple overlapping faces.
9372         * lisp/htmlfontify.el (hfy-face-to-style-i): Treat inheritance right to
9373           left.
9374           (hfy-face-resolve-face): Handle font specification as well as font
9375           name. Documentation update. (Bug#21990)
9377 2016-01-18  Paul Eggert  <eggert@cs.ucla.edu>
9379         Fix spurious escapes in describe-input-method
9381         Problem reported by Vincent Belaïche (Bug#22309).
9382         * lisp/international/mule-cmds.el (describe-language-environment):
9383         * lisp/international/quail.el (quail-help):
9384         Apply substitute-command-keys to doc strings before displaying them.
9386 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9388         Bump version to 25.0.90
9390         * README:
9391         * configure.ac:
9392         * msdos/sed2v2.inp: Bump version to 25.0.90.
9394 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9396         * etc/AUTHORS: Update the AUTHORS file
9398 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9400         authors.el updates
9402         * admin/authors.el (authors-renamed-files-alist): Additions.
9404 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9406         Make it possible to run make change-history on emacs-25
9408         * Makefile.in: Check if the current branch is emacs-25 instead of
9409           master.
9411 2016-01-30  lu4nx  <lx@shellcodes.org>
9413         Support Go language in 'etags'
9415         * lib-src/etags.c <Ruby_help>: Fix documentation of Ruby tags.
9416         <Go_help>: New help.
9417         <Go_suffixes>: New variable.
9418         (Go_functions): New function.
9419         <lang_names>: Add entry for Go.  (Bug#22370)
9421         * doc/emacs/maintaining.texi (Tag Syntax): Document Go support.
9422         * doc/man/etags.1: Mention Go support.
9424         * etc/NEWS: Mention Go support.
9426         * test/etags/go-src/test.go:
9427         * test/etags/go-src/test1.go: New test files.
9428         * test/etags/Makefile (GOSRC): New variable.
9429         (SRCS): Add $(GOSRC).
9430         * test/etags/ETAGS.good_1:
9431         * test/etags/ETAGS.good_2:
9432         * test/etags/ETAGS.good_3:
9433         * test/etags/ETAGS.good_4:
9434         * test/etags/ETAGS.good_5:
9435         * test/etags/ETAGS.good_6:
9436         * test/etags/CTAGS.good: Adapt to addition of Go tests.
9438 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9440         Improve Ruby support in 'etags'
9442         * lib-src/etags.c (Ruby_functions): Tag constants.  Don't tag
9443         singleton classes.  Remove class qualifiers from tags generated
9444         for method and constant names.  (Bug#22241)
9446         * doc/emacs/maintaining.texi (Tag Syntax): Mention that constants
9447         are tagged by etags in Ruby.
9449         * etc/NEWS: Mention that constants are tagged by etags in Ruby.
9451         * test/etags/ruby-src/test1.ruby: Add more tests.
9452         * test/etags/ETAGS.good_1:
9453         * test/etags/ETAGS.good_2:
9454         * test/etags/ETAGS.good_3:
9455         * test/etags/ETAGS.good_4:
9456         * test/etags/ETAGS.good_5:
9457         * test/etags/ETAGS.good_6:
9458         * test/etags/CTAGS.good: Adapt to the changes in etags and in Ruby
9459         tests.
9461 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9463         Adjust etags test results to changes in copyright years
9465         * test/etags/CTAGS.good:
9466         * test/etags/ETAGS.good_1:
9467         * test/etags/ETAGS.good_2:
9468         * test/etags/ETAGS.good_3:
9469         * test/etags/ETAGS.good_4:
9470         * test/etags/ETAGS.good_5:
9471         * test/etags/ETAGS.good_6: Adjust to shift in characters and
9472         in line numbers.
9474 2016-01-30  Andreas Schwab  <schwab@linux-m68k.org>
9476         Revert "Re-enable checks in member, memql, delete to complain about non-lists"
9478         This reverts commit f524e8b7f12d9b5a8b92084e5385429fe7b085b9.
9480 2016-01-30  Nicolas Petton  <nicolas@petton.fr>
9482         Make it possible to run make change-history on emacs-25
9484         * Makefile.in: Check if the current branch is emacs-25 instead of
9485           master.
9487 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9489         Don't fiddle with DEFAULT
9491         * lisp/progmodes/project.el (project--completing-read-strict):
9492         Don't change DEFAULT, whether is has any matches in
9493         COLLECTION, or not.
9495 2016-01-30  Eli Zaretskii  <eliz@gnu.org>
9497         Document xwidget commands and functions
9499         * doc/lispref/display.texi (Xwidgets): New section, describes some
9500         of the xwidget primitives.
9501         * doc/lispref/display.texi (Display): Update the chapter menu.
9502         * doc/emacs/misc.texi (Embedded WebKit Widgets): New section.
9503         * doc/emacs/emacs.texi (Top): Update the master menu to include
9504         the xwidget node.
9506 2016-01-30  Lars Ingebrigtsen  <larsi@gnus.org>
9508         Build fix for shr.el
9510         * shr.el (seq): Require.
9512 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9514         Improve project-find-file yet again!
9516         * lisp/progmodes/project.el (project--completing-read-strict):
9517         New function.
9518         (project-find-file-in): Use it.
9519         (project-file-completion-table): Move the default
9520         implementation inside the cl-defgeneric form.
9521         (http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg01720.html)
9523 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
9525         Don't pass DIR to 'hg status'
9527         * lisp/vc/vc-hg.el (vc-hg-dir-status-files):
9528         Don't pass DIR to 'hg status' (bug#22481).
9530 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9532         Fix typo in previous commits
9534         * lisp/progmodes/project.el (project-find-file-in):
9535         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): Fix typo in previous
9536         commit.
9538 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9540         Improve project-find-file
9542         * lisp/progmodes/project.el (project-file-completion-table): New.
9543         (project-find-file, project-or-external-find-file): Default to filename
9544         at point.
9545         (project-file-completion-table): New, split out from
9546         project--find-file-in.
9547         (project-find-file-in): Renamed from project--find-file-in, use
9548         project-file-completion-table.
9550         * lisp/progmodes/xref.el (ede-minor-mode): New declaration.
9551         (xref--find-ignores-arguments): Add doc string.
9553 2016-01-30  Stephen Leake  <stephen_leake@stephe-leake.org>
9555         Implement vc-mtn-find-ignore-file, fix some doc strings
9557         * lisp/cedet/cedet-global.el (cedet-gnu-global-root): Improve doc string.
9559         * lisp/cedet/ede/locate.el (initialize-instance): Improve doc string.
9561         * lisp/vc/vc-git.el (vc-git-find-ignore-file): Fix doc string.
9563         * lisp/vc/vc-mtn.el (vc-mtn-find-ignore-file): New function.
9565 2016-01-23  Michael Albinus  <michael.albinus@gmx.de>
9567         Improve user name completion in Tramp
9569         * lisp/net/tramp.el (tramp-parse-passwd, tramp-parse-etc-group):
9570         Call also "getent passwd" or "getent group", if possible.
9571         (tramp-parse-putty): Cache the result.
9573 2016-01-22  Michael Albinus  <michael.albinus@gmx.de>
9575         * etc/NEWS: Move kqueue entries to Emacs 25.1 sections.
9577 2016-01-20  Glenn Morris  <rgm@gnu.org>
9579         Remove handling of non-string time-stamp formats, obsolete for 20 years.
9581         * lisp/time-stamp.el (time-stamp-format): Doc fix.
9582         (time-stamp-old-format-warn, time-stamp-fconcat): Remove.
9583         (time-stamp-string): Ignore non-string formats.
9585 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
9587         Anoter fix for problematic merge from emacs-25
9589         * src/w32fns.c (globals_of_w32fns): Move initialization of
9590         resetstkoflw to a non-Cygwin part.
9592 2016-01-20  Michael Albinus  <michael.albinus@gmx.de>
9594         * test/Makefile.in (mostlyclean): Use ${LOGFILES}.
9596 2016-01-20  Eli Zaretskii  <eliz@gnu.org>
9598         Fix MS-Windows build broken by a botched merge from emacs-25
9600         * src/w32.c (w32_crypto_hprov): New static variable.
9601         (globals_of_w32): Initialize w32_crypto_hprov.
9602         (w32_init_crypt_random, w32_init_random): New functions.
9603         Include wincrypt.h.
9604         * src/w32.h (w32_init_random): Add prototype.
9606 2016-01-20  Vincent Belaïche  <vincentb1@users.sourceforge.net>
9608         Correct a whole bunch of bugs coming with renamed cell relocation.
9610         * lisp/ses.el (ses-localvars): rename variable
9611         `ses--renamed-cell-symb-list' into `ses--in-killing-named-cell-list'
9612         and adjust the comment about it.
9613         (ses-plist-delq): new defun.
9614         (ses--ses-buffer-list): new defvar.
9615         (ses--unbind-cell-name): new defun.
9616         (ses-relocate-symbol): Do not relocate symbol when it is a named cell.
9617         (ses-relocate-formula): Undo change of
9618         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net that was
9619         preventing relocation for named cell --- now doing this is delegated
9620         to function `ses-relocate-symbol'.
9621         (ses-relocate-range): In docstring, undo change of
9622         2016-01-03T07:31:52Z!johnw@newartisans.com, `ses-range' must remain
9623         lower case as it is not a variable.
9624         (ses-relocate-all): Cell name relocation : 1) check that cell is a
9625         renamed cell by testing `ses-cell' property to :ses-named, rather than
9626         comparing name to corresponding standard name. Set rowcol of renamed
9627         cell into the hashmap --- `ses-cell' property must not be used for
9628         that as the same name can be used for different locations in different
9629         SES sheets ; 2) use `local-variable-if-set-p' rather than `boundp' and
9630         `local-variable-p' to check if cell name is already in use in this
9631         sheet or needs initialization.
9632         (ses-relocate-all): Cell value relocation : 1) like for name
9633         relocation use the `ses-cell' property rather than comparing actual
9634         name to corresponding standard name. 2) Correct bug introduced in
9635         2011-12-27T19:30:39Z!vincentb1@users.sourceforge.net, as the test was
9636         made the other way round than the intention --- ie value relocation
9637         was disabled for standard cell, not for renamed cell as was the
9638         intention.
9639         (ses-relocate-all): Add loop for unbinding deleted renamed cells
9640         names.
9641         (ses-killbuffer-hook): new defun.
9642         (ses-mode): Add the ses--ses-buffer-list maintenance mechanism ---
9643         kill buffer hook, plus pushing current buffer if new in list.
9644         (ses-delete-row, ses-delete-column): Collect deleted renamed cells
9645         into `ses--in-killing-named-cell-list'.
9646         (ses-rename-cell): Remove update of variable
9647         `ses--renamed-cell-symb-list', this variable is renamed to
9648         `ses--in-killing-named-cell-list', and its setting is done in
9649         functions `ses-delete-row' and , `ses-delete-column' now.
9650         (ses-rename-cell): Make cell new name a buffer local variable.
9651         (ses-rename-cell): Change correction of
9652         2015-12-30T23:10:37Z!vincentb1@users.sourceforge.net concerning
9653         computation of the range over which `cursor-intangible' property was
9654         to be updated. This correction was ok for non spilling cells, but not
9655         for cells spilling over following blank cells. Simply use
9656         `next-single-property-change' rather than computing the end column
9657         from column widths.
9659 2016-01-19  John Wiegley  <johnw@newartisans.com>
9661         Merge from origin/emacs-25
9663         3ae7934 ; * etc/NEWS: Mark entries that don't need further treatment.
9664         6165c36 * lisp/files.el (dir-locals--all-files): Respect absolute file-names
9665         2ffdf15 * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
9666         71ecd62 * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
9667         f0b82b3 * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
9668         86e4513 Fix incompatbilities with MS-Windows 2000 and older
9669         4e96521 Mention in PROBLEMS an issue with MS-Windows NT4
9670         15c23aa Ensure 8-byte aligned memory allocation on MS-Windows 9X
9671         39afa42 Fix tests for active region in hideif.el
9672         05df666 Fix interactive specs in some hideif.el commands
9674 2016-01-19  John Wiegley  <johnw@newartisans.com>
9676         -
9678 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
9680         Avoid stdio in SIGINT handler
9682         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
9683         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
9684         * lib/ignore-value.h: New file, from gnulib.
9685         * src/keyboard.c: Include it.
9686         (write_stdout, read_stdin): New functions.
9687         (handle_interrupt): Use them instead of printf and getchar,
9688         and avoid fflush when handling signals.
9690 2016-01-19  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
9692         Refactor mml-smime.el, mml1991.el, mml2015.el
9694         (Maybe this is the last merge from Gnus git to Emacs git)
9696         Cf. discussion on ding mailing list, messages in
9697         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
9698         Common code from the three files mml-smime.el, mml1991.el, and
9699         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
9700         to gnus-util.el.
9702         The code is supported by test cases with necessary test keys.
9704         Documentation in message.texi is updated.
9706         * doc/misc/message.texi (Security, Using S/MIME):
9707         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
9708         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
9709         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
9711         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
9712         New functions.
9714         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
9715         (epa--select-keys): Autoload.
9716         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
9717         (mml-secure-openpgp-signers): New user option;
9718         make mml1991-signers and mml2015-signers obsolete aliases to it.
9719         (mml-secure-smime-signers): New user option;
9720         make mml-smime-signers an obsolete alias to it.
9721         (mml-secure-openpgp-encrypt-to-self): New user option;
9722         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
9723         aliases to it.
9724         (mml-secure-smime-encrypt-to-self): New user option;
9725         make mml-smime-encrypt-to-self an obsolete alias to it.
9726         (mml-secure-openpgp-sign-with-sender): New user option;
9727         make mml2015-sign-with-sender an obsolete alias to it.
9728         (mml-secure-smime-sign-with-sender): New user option;
9729         make mml-smime-sign-with-sender an obsolete alias to it.
9730         (mml-secure-openpgp-always-trust): New user option;
9731         make mml2015-always-trust an obsolete alias to it.
9732         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
9733         New user options.
9734         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
9735         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
9736         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
9737         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
9738         (mml-secure-passphrase-callback, mml-secure-check-user-id)
9739         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
9740         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
9741         (mml-secure-fingerprint, mml-secure-filter-keys)
9742         (mml-secure-normalize-cust-name, mml-secure-select-keys)
9743         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
9744         (mml-secure-self-recipients, mml-secure-recipients)
9745         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
9747         * lisp/gnus/mml-smime.el: Require epg;
9748         refactor declaration and autoloading of epg functions.
9749         (mml-smime-use): Doc fix.
9750         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
9751         Obsolete.
9752         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
9753         Use format instead of gnus-format-message.
9754         (mml-smime-epg-secret-key-id-list): Remove variable.
9755         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
9756         (mml-smime-epg-find-usable-secret-key): Remove functions.
9757         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
9759         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
9760         (mml1991-passphrase-cache-expiry): Obsolete.
9761         (mml1991-epg-secret-key-id-list): Remove variable.
9762         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
9763         (mml1991-epg-find-usable-secret-key): Remove functions.
9764         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
9766         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
9767         (mml2015-passphrase-cache-expiry): Obsolete.
9768         (mml2015-epg-secret-key-id-list): Remove variable.
9769         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
9770         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
9771         (mml2015-epg-find-usable-secret-key): Remove functions.
9772         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
9773         (mml2015-epg-encrypt): Refactor.
9775 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
9777         Merge from gnulib
9779         This mostly just updates copyright dates of gnulib files.
9780         It also updates to the latest version of texinfo.tex.
9782 2016-01-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9784         Move variables to inner loop, preparing for Mac port merge
9786         * src/keyboard.c (command_loop_1): Move variables `cmd',
9787         `keybuf', and `i' to inner loop.
9789 2016-01-19  Paul Eggert  <eggert@cs.ucla.edu>
9791         Minor improvements to (random t) documentation
9793         * doc/lispref/numbers.texi (Random Numbers):
9794         * src/fns.c (Frandom):
9795         Omit unnecessary details about randomness fallback.
9796         Say that it is a fallback.
9798 2016-01-19  Dmitry Gutov  <dgutov@yandex.ru>
9800         Rename methods in Ruby etags example file
9802         * test/etags/ruby-src/test.rb: Rename the example methods to
9803         correspond to the common terminology used in Ruby.
9804         * test/etags/CTAGS.good:
9805         * test/etags/ETAGS.good_1:
9806         * test/etags/ETAGS.good_2:
9807         * test/etags/ETAGS.good_3:
9808         * test/etags/ETAGS.good_4:
9809         * test/etags/ETAGS.good_5:
9810         * test/etags/ETAGS.good_6: Adjust accordingly.
9812 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
9814         Propertize backtick in 'def `(abc)' as symbol constituent
9816         * lisp/progmodes/ruby-mode.el (ruby-syntax-propertize):
9817         Propertize backtick in 'def `(abc)' as symbol constituent.
9818         (ruby-syntax-propertize-function):
9819         Rename to ruby-syntax-propertize.
9821 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
9823         Fix scrolling under scroll-preserve-screen-position on TTY
9825         * src/window.c (window_scroll_line_based): When setting point to
9826         preserve screen coordinates, don't let cursor enter either of the
9827         two scroll margins.  (Bug#22395)
9829 2016-01-18  Lars Magne Ingebrigtsen  <larsi@gnus.org>
9831         Fix shr table rendering of nested tables
9833         * shr.el (shr-table-body): Don't include all tbodies in nested
9834         tables in the levels above.
9836 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
9838         * lisp/progmodes/project.el (project--read-regexp): Quote the identifier.
9840 2016-01-18  Dmitry Gutov  <dgutov@yandex.ru>
9842         Add xref-based replacements for Dired search commands
9844         * lisp/dired-aux.el (dired-do-find-regexp)
9845         (dired-do-find-regexp-and-replace): New commands.
9846         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00864.html
9848         * lisp/dired.el (dired-mode-map): Change bindings for `A' and
9849         `Q' to the new commands.
9851         * lisp/progmodes/xref.el (xref-query-replace)
9852         (xref-collect-matches): Add progress reporters.
9853         (xref--find-ignores-arguments): Return nil for zero ignores.
9854         (xref--show-xrefs): Add an optional argument.
9855         (xref-collect-matches): Drop the assert.  'find' accepts a
9856         regular file in place of directory argument, too.
9858 2016-01-18  Alan Mackenzie  <acm@muc.de>
9860         * doc/lispref/frames.texi (Position Parameters): Say they don't exist on TTYs.
9862 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
9864         Improve user documentation of Xref
9866         * doc/emacs/maintaining.texi (Xref, Find Identifiers)
9867         (Looking Up Identifiers, Identifier Search, List Identifiers):
9868         Adjudicate comments by Dmitry Gutov <dgutov@yandex.ru>.  See
9869         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00650.html
9870         for the details.
9872 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
9874         Fix scrolling under scroll-preserve-screen-position and margins
9876         * src/window.c (window_scroll_pixel_based): When setting point to
9877         preserve screen coordinates, don't let cursor enter either of the
9878         two scroll margins.  Fix incorrect usage of
9879         WINDOW_WANTS_HEADER_LINE_P and use WINDOW_HEADER_LINE_HEIGHT
9880         instead of CURRENT_HEADER_LINE_HEIGHT.  (Bug#22395)
9882 2016-01-18  Eli Zaretskii  <eliz@gnu.org>
9884         Unbreak the MS-Windows build
9886         * src/sysdep.c (emacs_gnutls_global_init, gnutls_rnd): Disable for
9887         WINDOWSNT, to avoid link failure.  (Bug#22202)
9889 2016-01-18  Alan Mackenzie  <acm@muc.de>
9891         Desktop: protect users against inadvertant upgrading of desktop file.
9893         An upgraded (version 208) desktop file cannot be read in Emacs < 25.
9895         * etc/NEWS: Add an entry about upgrading a desktop file.
9897         * lisp/desktop.el (desktop-file-version): Amend doc string.
9898         (desktop-native-file-version, desktop-io-file-version): new variables.
9899         (desktop-clear): Set desktop-io-file-version to nil.
9900         (desktop-buffer-info): make the presence of the last item on the list
9901         conditional on (>= desktop-io-file-version 208).
9902         (desktop-save): Add extra parameter VERSION to take user's C-u or C-u C-u.
9903         Amend the doc string.  Add code to determine the output file version.
9904         (desktop-create-buffer): Set desktop-io-file-version to the input file's
9905         version.
9907 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
9909         Initialize GnuTLS before calling gnutls_rnd
9911         * src/gnutls.c (emacs_gnutls_global_init): Now extern.
9912         Don’t set gnutls_global_initialized if gnutls_global_init fails.
9913         * src/sysdep.c: Include "gnutls.h", and <gnutls/crypto.h>
9914         if 2.12 or later, which has gnutls_rnd.
9915         (emacs_gnutls_global_init, gnutls_rnd): New fallback
9916         placeholder macros if before 2.12.
9917         (init_random): Initialize gnutls globals before trying to
9918         use gnutls_rnd.
9920 2016-01-17  Andreas Schwab  <schwab@linux-m68k.org>
9922         Don't use GnuTLS before it is initialized
9924                 * src/sysdep.c (init_random): Don't use gnutls_rnd.
9926 2016-01-17  Bill Wohler  <wohler@newt.com>
9928         * mh-e.el (mh-version): Add +git to version.
9930 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
9932         Port cleanup attribute to OpenBSD
9934         The OpenBSD C compiler issues false alarms about strcpy, strcat, and
9935         sprintf, and this messes up 'configure' when it tests for the cleanup
9936         attribute.  Work around the problem by using __has_attribute directly.
9937         Problem reported by Joakim Jalap (Bug#22385).
9938         * configure.ac: Don’t use AX_GCC_VAR_ATTRIBUTE.
9939         * m4/ax_gcc_var_attribute.m4: Remove.
9940         * src/conf_post.h (__has_attribute): Provide a substitute, for
9941         non-GCC or older GCC compilers.  All uses changed to assume
9942         the substitute.  Check for the cleanup attribute.
9943         * src/emacs-module.c (module_has_cleanup): Just use __has_attribute.
9945 2016-01-17  Paul Eggert  <eggert@cs.ucla.edu>
9947         Prefer GnuTLS when acquiring random seed
9949         This attempts to improve on the fix for Bug#22202.
9950         * configure.ac (HAVE_DEV_URANDOM): Remove.
9951         Check /dev/urandom existence at run time, not at build time,
9952         since the device could exist in the former but not the latter.
9953         * src/sysdep.c [HAVE_GNUTLS]: Include gnutls/gnutls.h.
9954         (gnutls_rnd) [GNUTLS_VERSION_NUMBER < 0x020c00]: New fallback macro.
9955         (random_seed): New typedef.
9956         (set_random_seed): New static function.
9957         (seed_random): Use them.
9958         (init_random): Use random_seed instead of uintmax_t, so as to
9959         not consume more entropy than needed.  Prefer gnutls_rnd if it
9960         works; this avoids a redundant open of /dev/urandom on
9961         GNU/Linux with modern GnuTLS.
9963 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
9965         Improve documentation of dynamic modules
9967         * doc/lispref/loading.texi (How Programs Do Loading): Update the
9968         description of searching for files in 'load' when Emacs was built
9969         with support for dynamic modules.
9971 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
9973         * INSTALL: Document --with-modules.
9975 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
9977         Document 'function-put'
9979         * doc/lispref/symbols.texi (Symbol Plists): Document
9980         'function-put'.  Update documentation of 'function-get'.
9982 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
9984         Document 'funcall-interactively'
9986         * doc/lispref/commands.texi (Interactive Call): Document
9987         'funcall-interactively'.
9988         * doc/lispref/functions.texi (Calling Functions): Mention
9989         'funcall-interactively' and provide a cross-reference.
9991 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
9993         * doc/lispref/lists.texi (Association Lists): Document 'alist-get'.
9995         * doc/lispref/strings.texi (Text Comparison): Document 'string-greaterp'.
9997 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
9999         Document renaming of selection-related functions
10001         * doc/lispref/frames.texi (Window System Selections): Rename "x-*"
10002         functions into the corresponding "gui-*" functions.  Make the
10003         description slightly less X-centric.
10005 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10007         * doc/lispref/macros.texi (Expansion): Document 'macroexpand-1'.
10009 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10011         Document 'define-inline'
10013         * doc/lispref/functions.texi (Defining Functions): Document
10014         'define-inline' and related macros.
10016         * lisp/emacs-lisp/inline.el (inline-letevals): Doc fix.
10018 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10020         * lisp/files.el (dir-locals--all-files): Respect absolute file-names
10022         * lisp/help-fns.el (describe-variable): Fix a left-over parenthesis
10024 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10026         * lisp/dired-x.el (dired-omit-here-always): Use add-dir-local-variable
10028         instead of manually writing a dir-locals file.
10030 2016-01-16  Artur Malabarba  <bruce.connor.am@gmail.com>
10032         * lisp/files.el (dir-locals--all-files): Use completion instead of wildcards
10034         (dir-locals-file)
10035         * lisp/files-x.el (modify-dir-local-variable)
10036         * lisp/dos-fns.el (dosified-file-name)
10037         * lisp/help-fns.el (describe-variable): Change accordingly.
10039 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10041         Fix incompatbilities with MS-Windows 2000 and older
10043         * src/w32.c <multiByteToWideCharFlags>: New global variable.
10044         (filename_to_utf16, filename_from_ansi, check_windows_init_file):
10045         Use it instead of the literal MB_ERR_INVALID_CHARS.
10046         (maybe_load_unicows_dll): Initialize multiByteToWideCharFlags as
10047         appropriate for the underlying OS version.  For details, see
10048         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10049         * src/w32.h: Declare multiByteToWideCharFlags.
10050         * src/w32fns.c (Fx_file_dialog, Fw32_shell_execute)
10051         (add_tray_notification): Use multiByteToWideCharFlags instead of
10052         the literal MB_ERR_INVALID_CHARS.
10053         (_resetstkoflw_proc): New typedef.
10054         (w32_reset_stack_overflow_guard): Call _resetstkoflw via a
10055         pointer, as this function is absent in msvcrt.dll shipped with W2K
10056         and older systems.
10058 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10060         Mention in PROBLEMS an issue with MS-Windows NT4
10062         * etc/PROBLEMS (MS-Windows): Mention the problem with Shell32.dll
10063         on Windows NT4.  For the details, see
10064         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00835.html.
10066 2016-01-16  Jussi Lahdenniemi  <jussi@aprikoodi.fi>  (tiny change)
10068         Ensure 8-byte aligned memory allocation on MS-Windows 9X
10070         * src/w32heap.c (init_heap): Redirect malloc, realloc, and free to
10071         special functions on Windows 9X.  Refuse to dump Emacs on Windows 9X.
10072         (malloc_after_dump_9x, realloc_after_dump_9x)
10073         (free_after_dump_9x): New functions.  (Bug#22379)  See also
10074         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00852.html
10075         for more details about the original problem.
10077         * nt/inc/ms-w32.h (malloc_after_dump_9x, realloc_after_dump_9x)
10078         (free_after_dump_9x): Add prototypes.
10080 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10082         Fix tests for active region in hideif.el
10084         * lisp/progmodes/hideif.el (hif-evaluate-macro, hide-ifdef-block): Use
10085         'use-region-p' to test whether to operate on region, instead of
10086         testing 'mark-active'.
10088 2016-01-16  Eli Zaretskii  <eliz@gnu.org>
10090         Fix interactive specs in some hideif.el commands
10092         * lisp/progmodes/hideif.el (hif-evaluate-macro)
10093         (hide-ifdef-undef, show-ifdef-block): Don't use '(interactive "r")'
10094         in commands that should only act on the region if it's active.
10096 2016-01-15  Phillip Lord  <phillip.lord@russet.org.uk>
10098         Enable test selector from command line
10100         * test/automated/Makefile.in: Change variable manipulation to avoid
10101           over-writing selector.
10103 2016-01-15  Alan Mackenzie  <acm@muc.de>
10105         Don't confuse "::" with ":" when trying to parse member initializers.
10107         * lisp/progmodes/cc-engine.el (c-back-over-member-initializers): Check
10108         more robustly for ":" token when searching backwards for it.
10110         * lisp/progmodes/cc-langs (c-:$-multichar-token-regexp): New language
10111         variable.
10113 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10115         Ensure positive number of glyphs for margins of positive width
10117         * src/dispnew.c (margin_glyphs_to_reserve): Always return a
10118         positive value when a non-zero width of the marginal area was
10119         requested.  (Bug#22356)
10121 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10123         Fix crashes when mini-window has non-zero margins
10125         * src/window.c (resize_frame_windows): Use 'new_size' to set
10126         minibuffer window's 'total_cols' value, as 'size' might be in
10127         pixels.  (Bug#22356)
10129 2016-01-15  Alan Mackenzie  <acm@muc.de>
10131         In comment-dwim with style `extra-line', respect indent-tabs-mode.
10133         This fixes bug #22369.
10135         * lisp/newcomment.el (comment-make-bol-ws): New function.
10136         (comment-make-extra-lines): Use new function instead of a crude `make-string'.
10138 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10140         Make 'random' seeds cryptographically secure if possible
10142         * configure.ac: Check for "/dev/urandom".
10144         * src/sysdep.c (init_random) [HAVE_DEV_URANDOM]: Read the stream
10145         for the seed from "/dev/urandom".
10146         [WINDOWSNT]: Obtain the stream for the seed from w32 APIs.
10147         * src/fns.c (Frandom): Update the doc string to indicate that
10148         system entropy is used when available.
10149         * src/w32.c: Include wincrypt.h.
10150         (w32_init_crypt_random, w32_init_random): New functions, use the
10151         CryptGenRandom API.
10152         (globals_of_w32): Initialize w32_crypto_hprov handle to zero.
10153         * src/w32.h (w32_init_random): Add prototype.
10155         * doc/lispref/numbers.texi (Random Numbers): Document more details
10156         about 't' as the argument to 'random'.
10158         * etc/NEWS: Mention that '(random t)' now uses a cryptographically
10159         strong seed if possible.
10161         (Bug#22202)
10163 2016-01-15  Eli Zaretskii  <eliz@gnu.org>
10165         Unhide the --no-line-directive option to 'etags'
10167         * lib-src/etags.c (print_help): Un-undocument the --no-line-directive
10168         option.  (Bug#22306)
10170         * doc/man/etags.1: Document the --no-line-directive option.
10172 2016-01-15  Alan J Third  <alan@idiocy.org>  (tiny change)
10174         Fix picture-mode wrt double-width characters
10176         * lisp/textmodes/picture.el (picture-insert): Check the width of
10177         the character being replaced, not just that of the replacement.
10178         (Bug#1808)
10180 2016-01-15  Eric Abrahamsen  <eric@ericabrahamsen.net>
10182         Honor docstring of gnus-group-get-new-news
10184         * lisp/gnus/gnus-start.el (gnus-get-unread-articles): If the prefix arg is t,
10185         but non-numeric, unconditionally consider all groups to need updating.
10187 2016-01-14  Simen Heggestøyl  <simenheg@gmail.com>
10189         Disallow parenthesis in non-pseudo CSS selectors
10191         * lisp/textmodes/css-mode.el (css--font-lock-keywords): Disallow
10192         parenthesis in selectors except for in the function notation that
10193         might appear right after a pseudo-class.
10194         * test/indent/scss-mode.scss: Add a test for it.
10196 2016-01-14  Katsumi Yamaoka  <yamaoka@jpl.org>
10198         * lisp/gnus/nntp.el (nntp-request-newgroups): Simplify
10200 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
10202         check-maybe shall run only default tests
10204         * test/automated/Makefile.in (check, check-expensive): Depend on
10205         mostlyclean.
10206         (check-maybe): Re-run only default tests.
10207         (check-doit): Use code of check-maybe.
10208         (mostlyclean): Move *.log files away.
10210 2016-01-13  Mark Oteiza  <mvoteiza@udel.edu>
10212         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "magnet:"
10214 2016-01-13  Dmitry Gutov  <dgutov@yandex.ru>
10216         Un-obsolete tags-loop-continue
10218         * lisp/progmodes/etags.el (tags-loop-continue): Un-obsolete.
10219         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00682.html
10221 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10223         Document obsoletion of 'intangible' and 'point-entered/left'
10225         * doc/lispref/text.texi (Special Properties): Document the new
10226         properties 'cursor-intangible' and 'cursor-sensor-functions'.
10227         Document the obsolete status of 'intangible', 'pointer-left',
10228         and 'point-entered' properties, and of 'inhibit-point-motion-hooks'.
10229         * doc/lispref/display.texi (Overlay Properties): Document that
10230         'intangible' overlay property is obsolete.
10232         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor-mode): Doc fix.
10234 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10236         Updater documentation of 'looking-back'
10238         * doc/lispref/searching.texi (Regexp Search): Update documentation
10239         of 'looking-back'.  Fix markup.
10241 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10243         Document 'pre-redisplay-functions'
10245         * doc/lispref/hooks.texi (Standard Hooks):
10246         * doc/lispref/display.texi (Forcing Redisplay): Document
10247         'pre-redisplay-functions'.
10249 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10251         Document the new deafault value of 'load-read-function'
10253         * doc/lispref/loading.texi (How Programs Do Loading): Document the
10254         change in the default value of 'load-read-function'.
10256 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10258         Document 'bufferpos-to-filepos' and 'filepos-to-bufferpos'
10260         * doc/lispref/nonascii.texi (Text Representations): Document
10261         'bufferpos-to-filepos' and 'filepos-to-bufferpos'.
10263 2016-01-13  Eli Zaretskii  <eliz@gnu.org>
10265         Document the new prefix-command hooks
10267         * doc/lispref/hooks.texi (Standard Hooks): Document
10268         `prefix-command-echo-keystrokes-functions' and
10269         `prefix-command-preserve-state-hook'.
10271 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
10273         Fix one more misuse of time-stamp-time-zone
10275         * test/etags/html-src/softwarelibero.html: Use "UTC0" rather
10276         than the unportable "GMT" for time zone.
10278 2016-01-13  Paul Eggert  <eggert@cs.ucla.edu>
10280         Fix NNTP NEWGROUPS off-by-a-few-hours bug
10282         * lisp/gnus/nntp.el (nntp-request-newgroups): Format string
10283         in Universal Time, since we’re telling the server “GMT”.
10285 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10287         Update publicsuffix.txt from upstream
10289         * etc/publicsuffix.txt: Update from
10290         https://publicsuffix.org/list/effective_tld_names.dat
10291         dated 2016-01-12 11:52:01 UTC.
10293 2016-01-12  Glenn Morris  <rgm@gnu.org>
10295         Fix some declarations.
10297         * lisp/descr-text.el (internal-char-font):
10298         * lisp/cedet/mode-local.el (xref-item-location):
10299         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
10300         (epg-sub-key-capability, epg-sub-key-validity):
10301         * lisp/international/mule-util.el (internal-char-font):
10302         Fix declarations.
10304 2016-01-12  Glenn Morris  <rgm@gnu.org>
10306         Fix some custom types.
10308         * lisp/gnus/gnus-fun.el (gnus-x-face-omit-files, gnus-face-omit-files):
10309         * lisp/gnus/gnus.el (gnus-valid-select-methods):
10310         * lisp/mail/rmail.el (rmail-get-coding-function):
10311         * lisp/net/newst-treeview.el (newsticker-groups-filename):
10312         * lisp/progmodes/hideif.el (hide-ifdef-exclude-define-regexp):
10313         * lisp/textmodes/tildify.el (tildify-space-predicates):
10314         * lisp/url/url-tramp.el (url-tramp-protocols):
10315         Fix custom types.
10317 2016-01-12  Glenn Morris  <rgm@gnu.org>
10319         Add some missing version tags.
10321         * lisp/electric.el (electric-quote-comment)
10322         (electric-quote-string, electric-quote-paragraph):
10323         * lisp/epg-config.el (epg-gpgconf-program):
10324         * lisp/rect.el (rectangle-preview):
10325         * lisp/emacs-lisp/check-declare.el (check-declare-ext-errors):
10326         * lisp/emacs-lisp/package.el (package-selected-packages)
10327         (package-hidden-regexps):
10328         * lisp/erc/erc.el (erc-network-hide-list, erc-channel-hide-list):
10329         * lisp/eshell/em-term.el (eshell-destroy-buffer-when-process-dies):
10330         * lisp/gnus/mml-sec.el (mml1991-signers, mml2015-signers)
10331         (mml-smime-signers, mml1991-encrypt-to-self, mml2015-encrypt-to-self)
10332         (mml-smime-encrypt-to-self, mml2015-sign-with-sender)
10333         (mml-smime-sign-with-sender, mml2015-always-trust)
10334         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
10335         * lisp/net/browse-url.el (browse-url-conkeror-new-window-is-buffer)
10336         (browse-url-conkeror-arguments):
10337         * lisp/net/newst-reader.el (newsticker-download-logos):
10338         * lisp/progmodes/gud.el (gud-guiler-command-name):
10339         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
10340         * lisp/progmodes/project.el (project-vc):
10341         * lisp/progmodes/python.el (python-indent-guess-indent-offset-verbose)
10342         (python-shell-remote-exec-path, python-shell-first-prompt-hook)
10343         (python-shell-completion-native-disabled-interpreters)
10344         (python-shell-completion-native-enable)
10345         (python-shell-completion-native-output-timeout)
10346         (python-shell-completion-native-try-output-timeout):
10347         * lisp/progmodes/xref.el (xref):
10348         * lisp/term/screen.el (xterm-screen-extra-capabilities):
10349         * lisp/term/xterm.el (xterm-max-cut-length):
10350         Add missing version tags.
10352 2016-01-12  Glenn Morris  <rgm@gnu.org>
10354         * test/automated/core-elisp-tests.el
10355         (core-elisp-tests-1-defvar-in-let): Add a custom type.
10357 2016-01-12  Glenn Morris  <rgm@gnu.org>
10359         * src/buffer.c (syms_of_buffer) <major-mode>: Doc fix.
10361         Remove comments that do not apply since 2005-08-09.  (Bug#22349)
10363 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10365         Merge from gnulib
10367         This mostly just changes "UTC" to "UTC0" for POSIX conformance.
10368         It also updates to the latest version of texinfo.tex.
10369         * build-aux/gitlog-to-changelog, build-aux/move-if-change:
10370         * build-aux/update-copyright, doc/misc/texinfo.tex:
10371         Update from gnulib.
10373 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10375         Update documentation of 'process-running-child-p'
10377         * doc/lispref/processes.texi (Input to Processes): Document the
10378         changes in return value of 'process-running-child-p'.
10380 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10382         Update documentation of 'deactivate-mark'.
10384         * doc/lispref/markers.texi (The Mark): Document that
10385         'deactivate-mark' is now buffer-local when set.
10387 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10389         Update documentation of 'completion-table-dynamic'
10391         * doc/lispref/minibuf.texi (Programmed Completion): Document the
10392         new optional argument to 'completion-table-dynamic'.
10394 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10396         Document changes in 'read-buffer' and 'read-buffer-function'
10398         * doc/lispref/minibuf.texi (High-Level Completion): Document the
10399         4th argument to 'read-buffer' and 'read-buffer-function'.
10401 2016-01-12  Paul Eggert  <eggert@cs.ucla.edu>
10403         Fix time-stamp-time-zone bugs introduced in July
10405         This fixes a bug introduced when the July changes to
10406         format-time-string installed, as the changes were not
10407         correctly handled in this module (Bug#22302).
10408         Also, document time stamp time zones.
10409         * lisp/time-stamp.el (time-stamp-time-zone): Document values better.
10410         (time-stamp--format): New private function.
10411         (time-stamp-string, time-stamp-string-preprocess)
10412         (time-stamp-do-number): Use it.
10413         * doc/emacs/files.texi (Time Stamps): Mention time zones.
10414         * doc/misc/autotype.texi (Timestamps): Document time-stamp-time-zone.
10416 2016-01-12  Eli Zaretskii  <eliz@gnu.org>
10418         Make piping to subprocesses more robust on MS-Windows
10420         * src/w32.c (sys_write): Don't write to a pipe more stuff than its
10421         buffer can hold.  Don't return -1 if something has been written to
10422         the pipe.  Zero out 'errno' before calling '_write', to avoid
10423         returning a stale value.  (Bug#22344)
10424         * src/w32proc.c (syms_of_ntproc) <w32-pipe-buffer-size>: New variable.
10425         * src/w32.c (pipe2): Use it to request a user-defined size for the
10426         pipe being created.
10428         * etc/NEWS: Mention 'w32-pipe-buffer-size'.
10430         * doc/emacs/msdos.texi (Windows Processes): Document
10431         'w32-pipe-buffer-size'.
10433 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
10435         * lisp/emacs-lisp/syntax.el (syntax-ppss-table): New var
10437         (syntax-ppss):
10438         * lisp/font-lock.el (font-lock-fontify-syntactically-region): Use it.
10440 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
10442         lisp/nxml: Use syntax-tables for comments
10444         * lisp/nxml/nxml-mode.el (nxml-set-face): Prepend.
10445         (nxml-mode): Set syntax-ppss-table.
10446         Use sgml-syntax-propertize-function for syntax-propertize-function.
10447         Let font-lock highlight strings and comments.
10448         (nxml-degrade): Don't touch "nxml-inside" property any more.
10449         (nxml-after-change, nxml-after-change1): Remove functions.
10450         (comment): Don't set fontify rule any more.
10451         (nxml-fontify-attribute): Don't highlight the value any more.
10452         (nxml-namespace-attribute-value-delimiter, nxml-namespace-attribute-value)
10453         (nxml-comment-delimiter, nxml-comment-content): Remove faces.
10455         * lisp/nxml/nxml-rap.el (nxml-scan-end): Remove.
10456         (nxml-get-inside, nxml-inside-start, nxml-inside-end): Use syntax-ppss.
10457         (nxml-clear-inside, nxml-set-inside): Remove.
10458         (nxml-scan-after-change): Remove function.
10459         (nxml-scan-prolog, nxml-tokenize-forward): Simplify.
10460         (nxml-ensure-scan-up-to-date): Use syntax-propertize.
10461         (nxml-move-outside-backwards):
10462         * lisp/nxml/nxml-outln.el (nxml-section-tag-backward): Adjust to new
10463         nxml-inside-start behavior.
10465         * lisp/nxml/nxml-util.el (nxml-debug-set-inside)
10466         (nxml-debug-clear-inside): Remove macros.
10468         * lisp/nxml/xmltok.el (xmltok-forward-special): Remove function.
10469         (xmltok-scan-after-comment-open): Simplify.
10471 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
10473         * elisp-mode.el (elisp--font-lock-flush-elisp-buffers): Fix comment
10475 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
10477         * lisp/nxml: Use standard completion; it also works for company-mode
10479         * lisp/nxml/nxml-mode.el (nxml-complete): Obsolete.
10480         (nxml-completion-at-point-function): Remove.
10481         (nxml-mode): Don't set completion-at-point-functions.
10482         * lisp/nxml/rng-nxml.el (rng-nxml-mode-init): Set it here instead.
10483         (rng-completion-at-point): Rename from rng-complete and mark it
10484         non-interactive.  It is now to be used as completion-at-point-function.
10485         (rng-complete-tag, rng-complete-end-tag, rng-complete-attribute-name)
10486         (rng-complete-attribute-value): Don't perform completion, but return
10487         completion data instead.
10488         (rng-complete-qname-function, rng-generate-qname-list): Add a few
10489         arguments, previously passed via dynamic coping.
10490         (rng-strings-to-completion-table): Rename from
10491         rng-strings-to-completion-alist.  Don't return an alist.  Don't both
10492         sorting and uniquifying.
10494         * lisp/nxml/rng-util.el (rng-complete-before-point): Delete function.
10495         (rng-completion-exact-p, rng-quote-string): Delete functions.
10497         * lisp/nxml/rng-valid.el (rng-recover-start-tag-open)
10498         (rng-missing-attributes-message, rng-missing-element-message)
10499         (rng-mark-missing-end-tags): Use explicit ".." in formats rather than
10500         calling rng-quote-string everywhere.
10502 2016-01-16  Stefan Monnier  <monnier@iro.umontreal.ca>
10504         Use sgml-electric-tag-pair-mode also in nxml-mode
10506         * lisp/nxml/rng-nxml.el: Require sgml-mode.
10507         (rng-nxml-easy-menu): Add entry for sgml-electric-tag-pair-mode.
10508         (rng-complete-qname-function): Use complete-with-action.
10510         * lisp/textmodes/sgml-mode.el (sgml-electric-tag-pair-before-change-function):
10511         Let-bind forward-sexp-function, since nxml-mode binds it to
10512         something incompatible.
10514         * lisp/nxml/nxml-mode.el: Use setq-local and defvar-local.
10516 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
10518         * xmltok.el: Mark the "sole --" rather than the comment opener
10520         * lisp/nxml/xmltok.el (xmltok-scan-after-comment-open): Put the error
10521         marker on the "sole --" rather than on the comment opener.
10523 2016-01-15  Sam Steingold  <sds@gnu.org>
10525         replace `tramp-compat-split-string' (removed) with `split-string'
10527         (python-shell-tramp-refresh-process-environment)
10528         (python-shell-calculate-pythonpath): use `split-string'
10529         instead of defunct `tramp-compat-split-string'
10531 2016-01-15  Stefan Monnier  <monnier@iro.umontreal.ca>
10533         Update nXML to use Emacs's Unicode support, and lexical-binding
10535         * etc/nxml/*.el: Remove obsolete char-name files.
10536         * lisp/nxml/xsd-regexp.el (xsdre-range-list-difference): Remove unused
10537         var `next'.
10538         * lisp/nxml/rng-nxml.el (rng-set-state-after): Don't assume point-min==1.
10539         * lisp/nxml/rng-match.el (rng-update-match-state): Simplify.
10540         * lisp/nxml/nxml-outln.el (nxml-outline-state-transform-exceptions)
10541         (nxml-target-section-pos, nxml-depth-in-target-section)
10542         (nxml-outline-state-transform-alist)
10543         (nxml-outline-display-section-tag-function): Move decl before first use.
10544         * lisp/nxml/nxml-mode.el (nxml-char-name-ignore-case)
10545         (nxml-char-name-alist, nxml-char-name-table)
10546         (nxml-autoload-char-name-set-list, nxml-named-char-history): Remove vars.
10547         (nxml-enable-char-name-set, nxml-disable-char-name-set)
10548         (nxml-char-name-set-enabled-p, nxml-autoload-char-name-set)
10549         (nxml-define-char-name-set, nxml-get-char-name): Remove functions.
10550         (nxml-insert-named-char): Use read-char-by-name instead.
10551         (nxml-char-ref-display-extra): Use get-char-code-property.
10552         * lisp/nxml/nxml-maint.el (nxml-create-unicode-char-name-sets):
10553         Remove function.
10554         * lisp/nxml/nxml-glyph.el, lisp/nxml/nxml-uchnm.el: Remove files.
10556 2016-01-15  Michael Albinus  <michael.albinus@gmx.de>
10558         Add "sg" method to Tramp
10560         * doc/misc/tramp.texi (Inline methods): Add "sg" method.
10561         (Customizing Completion): Add function `tramp-parse-etc-group'.
10563         * lisp/net/tramp-sh.el (tramp-methods) <sg>: Add.  (Bug#22329)
10564         (tramp-completion-function-alist-sg): New defconst.
10565         (top): Completion function for "sg" is
10566         `tramp-completion-function-alist-sg'.
10568         * lisp/net/tramp.el (tramp-completion-function-alist): Adapt docstring.
10569         (tramp-parse-etc-group, tramp-parse-etc-group-group): New defuns.
10571 2016-01-14  Michael Albinus  <michael.albinus@gmx.de>
10573         Remove XEmacs compatibility in Tramp
10575         * doc/misc/tramp.texi: Replace flags by their hard coded name.
10576         Remove unused flags and the enclosed alternative text for XEmacs.
10578         * doc/misc/trampver.texi: Use "Tramp" CamelCase.  Rename "emacs"
10579         and "xemacs" flags to "unified" and "separate".  Remove flags
10580         "emacsgw", "emacsname", "emacsdir", "ftppackagename",
10581         "emacsothername", "emacsotherdir" and "emacsotherfilename".
10582         (trampver):
10583         * lisp/net/trampver.el (tramp-version): Set to "2.3.0-pre".
10585         * lisp/net/tramp.el (bkup-backup-directory-info)
10586         (directory-sep-char, ls-lisp-use-insert-directory-program)
10587         (outline-regexp, tramp-backup-directory-alist)
10588         (tramp-default-method, tramp-shell-prompt-pattern, tramp-syntax)
10589         (tramp-file-name-regexp-unified)
10590         (tramp-file-name-regexp-separate)
10591         (tramp-completion-file-name-regexp-unified)
10592         (tramp-completion-file-name-regexp-separate, tramp-chunksize)
10593         (tramp-get-method-parameter, tramp-find-method, tramp-find-user)
10594         (tramp-debug-message, tramp-progress-reporter-update)
10595         (with-tramp-progress-reporter)
10596         (tramp-rfn-eshadow-setup-minibuffer)
10597         (rfn-eshadow-setup-minibuffer-hook, tramp-unload-hook)
10598         (tramp-rfn-eshadow-update-overlay)
10599         (rfn-eshadow-update-overlay-hook, tramp-default-file-modes)
10600         (tramp-file-name-for-operation)
10601         (tramp-completion-file-name-handler)
10602         (tramp-autoload-file-name-handler, tramp-completion-mode-p)
10603         (tramp-handle-directory-files)
10604         (tramp-handle-directory-files-and-attributes)
10605         (tramp-handle-dired-uncache, tramp-handle-find-backup-file-name)
10606         (tramp-handle-insert-file-contents, tramp-handle-load)
10607         (tramp-handle-shell-command)
10608         (tramp-handle-verify-visited-file-modtime)
10609         (tramp-handle-file-notify-valid-p, tramp-accept-process-output)
10610         (tramp-check-for-regexp, tramp-wait-for-regexp)
10611         (tramp-send-string, tramp-mode-string-to-int)
10612         (tramp-get-local-gid, tramp-check-cached-permissions)
10613         (tramp-get-remote-tmpdir, tramp-make-tramp-temp-file)
10614         (auto-save-file-name-transforms)
10615         (tramp-handle-make-auto-save-file-name, tramp-read-passwd)
10616         (tramp-clear-passwd, tramp-time-diff):
10617         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp)
10618         (directory-sep-char, tramp-adb-file-name-handler-alist)
10619         (tramp-adb-parse-device-names)
10620         (tramp-adb-handle-expand-file-name)
10621         (tramp-adb-handle-file-truename, tramp-adb--gnu-switches-to-ash)
10622         (tramp-adb-handle-file-local-copy)
10623         (tramp-adb-handle-write-region, tramp-adb-handle-set-file-modes)
10624         (tramp-adb-handle-rename-file, tramp-adb-handle-process-file)
10625         (tramp-adb-handle-shell-command)
10626         (tramp-adb-handle-start-file-process, tramp-adb-get-device)
10627         (tramp-adb-maybe-open-connection):
10628         * lisp/net/tramp-cache.el (tramp-persistency-file-name)
10629         (tramp-cache-print):
10630         * lisp/net/tramp-cmds.el (tramp-cleanup-all-connections)
10631         (tramp-bug, tramp-reporter-dump-variable)
10632         (tramp-load-report-modules, tramp-append-tramp-buffers):
10633         * lisp/net/tramp-compat.el (tramp-compat-funcall)
10634         (tramp-advice-file-expand-wildcards)
10635         (tramp-compat-temporary-file-directory)
10636         (tramp-compat-make-temp-file, tramp-compat-copy-file)
10637         (tramp-compat-delete-directory, )
10638         (tramp-compat-process-running-p):
10639         * lisp/net/tramp-ftp.el (tramp-methods) <ftp>:
10640         (tramp-default-method-alist, tramp-foreign-file-name-handler-alist):
10641         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
10642         (tramp-gvfs-do-copy-or-rename-file, tramp-gvfs-handle-copy-file)
10643         (tramp-gvfs-handle-file-local-copy)
10644         (tramp-gvfs-handle-file-name-all-completions)
10645         (tramp-gvfs-handle-file-notify-add-watch)
10646         (tramp-gvfs-monitor-file-process-filter)
10647         (tramp-gvfs-handle-file-readable-p)
10648         (tramp-gvfs-handle-rename-file, tramp-gvfs-handle-write-region)
10649         (tramp-gvfs-file-name, tramp-gvfs-handler-askquestion)
10650         (tramp-gvfs-maybe-open-connection)
10651         (tramp-gvfs-parse-device-names):
10652         * lisp/net/tramp-gw.el (tramp-gw-aux-proc-sentinel)
10653         (tramp-gw-open-connection, tramp-gw-open-network-stream):
10654         * lisp/net/tramp-sh.el (directory-sep-char)
10655         (tramp-sh-file-name-handler-alist)
10656         (tramp-sh-handle-file-truename)
10657         (tramp-sh-handle-set-visited-file-modtime)
10658         (tramp-sh-handle-verify-visited-file-modtime)
10659         (tramp-sh-handle-set-file-modes, tramp-sh-handle-set-file-times)
10660         (tramp-sh-handle-file-acl)
10661         (tramp-sh-handle-file-name-all-completions)
10662         (tramp-sh-handle-copy-file, tramp-sh-handle-rename-file)
10663         (tramp-do-copy-or-rename-file-directly)
10664         (tramp-do-copy-or-rename-file-out-of-band)
10665         (dired-compress-file-suffixes, dired-remove-file)
10666         (tramp-sh-handle-dired-compress-file)
10667         (tramp-sh-handle-insert-directory)
10668         (tramp-sh-handle-expand-file-name)
10669         (tramp-sh-handle-start-file-process)
10670         (tramp-sh-handle-process-file, tramp-sh-handle-file-local-copy)
10671         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
10672         (tramp-sh-handle-file-notify-add-watch)
10673         (tramp-sh-gvfs-monitor-dir-process-filter)
10674         (tramp-sh-inotifywait-process-filter, tramp-maybe-send-script)
10675         (tramp-find-executable)
10676         (tramp-open-connection-setup-interactive-shell)
10677         (tramp-find-inline-encoding, tramp-compute-multi-hops)
10678         (tramp-maybe-open-connection, tramp-convert-file-attributes)
10679         (tramp-get-remote-path, tramp-get-remote-touch):
10680         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
10681         (tramp-smb-handle-copy-directory, tramp-smb-handle-copy-file)
10682         (tramp-smb-handle-delete-directory)
10683         (tramp-smb-handle-directory-files, tramp-smb-handle-file-acl)
10684         (tramp-smb-handle-make-directory-internal)
10685         (tramp-smb-handle-process-file, tramp-smb-handle-rename-file)
10686         (tramp-smb-handle-set-file-acl, tramp-smb-handle-set-file-modes)
10687         (tramp-smb-handle-write-region, tramp-smb-get-file-entries)
10688         (tramp-smb-get-cifs-capabilities)
10689         (tramp-smb-maybe-open-connection):
10690         * lisp/net/trampver.el (tramp-repository-get-version):
10691         Remove XEmacs compat code.
10693         * lisp/net/tramp-cmds.el (mml-mode, mml-insert-empty-tag)
10694         (reporter-dump-variable): Declare functions.
10696         * lisp/net/tramp.el (tramp-bkup-backup-directory-info)
10697         (tramp-advice-minibuffer-electric-separator)
10698         (tramp-advice-minibuffer-electric-tilde)
10699         (tramp-handle-unhandled-file-name-directory):
10700         * lisp/net/tramp-compat.el (tramp-compat-with-temp-message)
10701         (tramp-compat-font-lock-add-keywords)
10702         (tramp-compat-load, tramp-compat-number-sequence)
10703         (tramp-compat-split-string, tramp-compat-delete-dups):
10704         * lisp/net/tramp-sh.el (tramp-sh-handle-insert-file-contents-literally):
10705         Remove.
10707         * lisp/net/tramp-sh.el (tramp-methods) <psftp>: This does not work
10708         recursively.
10710 2016-01-14  K. Handa  <handa@gnu.org>
10712         fix previous change of src/ftfont.c (ftfont_shape_by_flt)
10714         * src/ftfont.c (ftfont_shape_by_flt): Fix previous change.  Access the
10715         second glyph only when there are enough glyphs.
10717 2016-01-13  Glenn Morris  <rgm@gnu.org>
10719         * src/buffer.c (Fset_buffer_major_mode): Allow default major-mode,
10721         or its hook, to move point.  (Bug#22348)
10723 2016-01-12  Michael Albinus  <michael.albinus@gmx.de>
10725         Merge missing commit from emacs-25 branch
10727         * test/Makefile.in (SELECTOR_DEFAULT, SELECTOR_EXPENSIVE, SELECTOR):
10728         New variables.
10729         (check-expensive, check-doit): New targets.
10731         * Makefile.in (check-expensive): New target.
10733         * test/lisp/autorevert-tests.el
10734         (auto-revert-test01-auto-revert-several-files):
10735         * test/lisp/filenotify-tests.el (file-notify--deftest-remote)
10736         (file-notify-test06-many-events):
10737         * test/lisp/net/tramp-tests.el (tramp-test26-process-file)
10738         (tramp-test27-start-file-process, tramp-test28-shell-command)
10739         (tramp-test29-vc-registered)
10740         (tramp-test31-special-characters-with-stat)
10741         (tramp-test31-special-characters-with-perl)
10742         (tramp-test31-special-characters-with-ls)
10743         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
10744         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
10745         (tramp-test35-unload): Tag the tests as :expensive-test.
10747 2016-01-12  John Wiegley  <johnw@newartisans.com>
10749         Merge from origin/emacs-25
10751         1f6898d test/automated/vc-hg.el: Support out-of-tree build
10752         3adb56e Minor change in tramp-tests.el
10753         2b535ba ; * etc/NEWS: Update the js.el entry.
10754         76b518c * etc/HELLO: Add Armenian and Mongolian greetings.
10755         b51f1ef Java Mode: Fontify identifiers in the presence of annotations.
10756         36b9539 Avoid an infloop when we run out of memory
10757         2006752 Avoid unnecessary failures of auto-saving after fatal error
10758         eef6784 Simplify HAVE_MODULES use in mark_maybe_pointer
10759         552694a Revert attempt to use 'noexcept' in typedef
10760         6ad0d39 Update documentation of 'indirect-function'
10761         c6a5314 ; * etc/NEWS: Move entry of 'inhibit-point-motion-hooks'.
10762         303141a Update documentation for obsoleting 'syntax-begin-function'
10763         4e6f61c ; * etc/NEWS: Mark documented and not-to-be-documented entries.
10764         e667bbb Document new features if Eshell
10765         9c4e4e0 ; * etc/NEWS: Update EUDC entries.
10766         1089dc9 Handle too long commands in Tramp
10767         684eb58 * .gitattributes: *.cur and *.pif are binary files too.
10768         d2c7fda * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
10769         bd3f53d * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
10770         09b2b8a * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
10771         cca0f93 ; Account for spaces before the filename
10772         c71e1e8 Use short date for 'hg annotate', and output the author
10773         f50027b Spelling fix
10774         c7dff67 ; * etc/NEWS: Fix the Xref entries that got separated.
10775         cc140bc Document user-level functions in project.el
10776         f8208b6 Document the user-level features of the Xref package
10777         b131fb8 * loading.texi: Add `define-type' entry for load-history
10778         db3c2a8 Improve doc strings and prompts in xref.el
10779         f6117ef Allow the use of `font-lock-extend-region-multiline' in CC Mode.
10780         90fd798 Fix coding system for Tramp on OS X.
10781         e985a0e ; * etc/NEWS: Mark the 'check-expensive' entry not to be documented.
10782         9dfcbf0 Update 'load-history' docs
10783         207e191 Fix (error ...) error
10784         457738f Correctly analyze brace arguments in templated C++ function declarations.
10785         d57724a * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
10786         2a9532d * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
10787         1a6b084 * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
10788         8be046f Respect fontification region calculated by major mode.  Fixes bug #22316.
10789         4b37cba Improve documentation of Delete Selection mode
10790         a034dd3 Fix two project-find-file issues
10791         30abf29 Clarify doc string of 'dired-current-directory'
10792         e990bb2 Use the face of preceding text for displaying the ellipsis
10793         5810ac3 Suppress Chinese file name test for OSX in tramp-tests.el
10794         eeb710a ; * lisp/startup.el: Sentences end with two spaces.
10795         428b3de * admin/admin.el (set-version): Also handle the NEWS file.
10796         648de81 ; Add NEWS entry for project.el
10797         671862f apropos-library: Skip obvious duplicates; don't error on generics
10798         51668a5 ; Grammar fix
10799         ed41d11 Add project-find-file and project-or-external-find-file
10800         056da45 ; Improve commentary in 'setup_for_ellipsis'
10801         269d008 ; Improve docstring for `inhibit-startup-echo-area-message'
10803 2016-01-12  John Wiegley  <johnw@newartisans.com>
10805         Merge from origin/emacs-25
10807         ce4a052 Add defvar-local to lisp-imenu-generic-expression
10808         a0121bc Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
10809         76fe2d5 * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
10810         1ae088f * lisp/emacs-lisp/autoload.el (autoload-find-destination):
10811         b6b47af Properly encode/decode base64Binary data in SOAP
10812         c632466 Obey coding-system-for-write when writing stdout/stderr in batch
10813         2f32cb5 * doc/misc/efaq.texi (Packages that do not come with Emacs):
10814                 Update the URI of MELPA and marmalade-repo.
10815                 Reported by CHENG Goa <chenggao@royau.me> in
10816                 https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
10817         d2937aa * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
10818         5330c25 * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
10819         7380990 Remove function wrongly on AWK Mode value of context
10820         fontification hook.
10821         d400753 * src/buffer.c: Stick with ASCII in doc string.
10822         221240c Reword transient-mark-mode doc string
10823         977d3ea Update doc string of 'selective-display'
10824         229c3fa Make C++ buffers writeable when writing their initial text
10825                 properties.
10826         f5c762c Additional changes for "make check-expensive"
10827         1729cf3 ; * admin/MAINTAINERS: Remove myself.
10828         33219d3 Apply text properties for <, > in new after-change function
10829                 (C++ Java Modes).
10831 2016-01-12  John Wiegley  <johnw@newartisans.com>
10833         Merge from origin/emacs-25
10835         9fb185a shr-tag-video bug fix
10836         6300655 Minor fixes in tramp-tests.el
10837         50575b1 Ensure redisplay when 'truncate-lines' is set
10838         0d9e80d Fix a doc string of 'transient-mark-mode'
10839         0000ae5 MS-Windows followup to latest gnulib update
10840         4bc5e02 Spelling fix
10841         f1093f7 Do secure signed Bcc handling
10843 2016-01-12  John Wiegley  <johnw@newartisans.com>
10845         Merge from origin/emacs-25
10847         861022f * doc/misc/texinfo.tex: Revert unwanted copyright change.
10848         46e47a5 ; * etc/refcards/ru-refcard.tex (cyear): Update via M-x set-copyright.
10849         71ea138 * lisp/align.el (align): Simplify a lambda
10850         5618a50 * lisp/align.el (align): Fix arg order in call to `align-region'
10851         1f680db Fix compilation next-error in buffers with selective-display
10852         d20a948 * nsm.el (nsm-check-protocol): Fix typo in the message.
10853         1da116f Add SHA1 warnings for high network security settings
10854         e48bacd ; * etc/NEWS: Typo fix.
10856 2016-01-12  John Wiegley  <johnw@newartisans.com>
10858         Merge from origin/emacs-25
10860         43662a2 ; Clarify that xref is still experimental
10861         0a6e6ca ; * admin/release-process: Remove some obsolete records.
10862         c2e9e3d * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
10863         8637f3d (semantic-symref-derive-find-filepatterns): Return a list
10864         0a7ad07 ; Re-arrange xref-related entries in NEWS.
10865         fe903ef Fix xref-find-references on MS-Windows
10866         55a28d8 ; Fixed visual bell artifact problem on NextStep.
10867         d064034 Document new features of tildify-mode
10868         964bea7 Document new features of Whitespace mode
10869         cd68f47 Improve documentation of new Hide-IfDef features
10870         723b8bf Fix regression in font-locking cl-assert and cl-check-type
10872 2016-01-12  John Wiegley  <johnw@newartisans.com>
10874         Merge from origin/emacs-25
10876         ef33bc7 Spelling and grammar fixes
10877         9c3dbab Fix copyright years by hand
10878         0e96320 Update copyright year to 2016
10880 2016-01-12  John Wiegley  <johnw@newartisans.com>
10882         Merge from origin/emacs-25
10884         9ee6ecb lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
10885         526d80c Port chart.el methods to cl-generic.
10886         410bb69 Add nt/INSTALL.W64 build instructions
10887         8f5b524 Add new input method 'programmer-dvorak'
10888         6d11f6e Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
10889         bb83bb1 Fix EWW rendering of long RTL lines
10890         b1a8509 fix  bug#21054
10891         ce5ad12 Clean up cairo printing code
10893 2016-01-12  John Wiegley  <johnw@newartisans.com>
10895         Merge from origin/emacs-25
10897         6ee327d Add handle_user_signal_hook
10898         47580e0 Avoid writing to purespace
10899         0588be7 Remove unused variable
10900         89e7483 * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
10901         3b95e9c Use posix_openpt instead of openpty on Darwin
10902         86312ff Document support for ':documentation' in Lisp mode
10903         c930e75b Document new features of TeX mode
10904         7c83d84 Clarify docs of hscroll in RTL text
10905         4c8f8db Fix rendering of HTML pages that use character composition
10906         a8d37ca Avoid some compiler warnings in w32.c
10907         ce106f3de Undo ill-advised change
10908         be0bba4 Unbreak completion in python-mode buffers
10910 2016-01-11  Dmitry Gutov  <dgutov@yandex.ru>
10912         test/automated/vc-hg.el: Support out-of-tree build
10914         * test/automated/vc-hg.el
10915         (vc-hg-annotate-extract-revision-at-line-with-filename)
10916         (vc-hg-annotate-extract-revision-at-line-with-both):
10917         Don't refer to source-directory.
10918         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00755.html
10920 2016-01-11  Michael Albinus  <michael.albinus@gmx.de>
10922         Minor change in tramp-tests.el
10924         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
10925         Use `dired-uncache' instead of a Tramp internal function.
10927 2016-01-11  Peter Feigl  <peter.feigl@nexoid.at>
10929         * etc/HELLO: Add Armenian and Mongolian greetings.
10931         (Bug#22346)
10933 2016-01-11  Alan Mackenzie  <acm@muc.de>
10935         Java Mode: Fontify identifiers in the presence of annotations.
10937         * lisp/progmodes/cc-engine.el (c-forward-annotation): Tidy up the coding:
10938         Don't move point when the defun fails.
10939         (c-forward-decl-or-cast-1): Correct a usage of match data.
10941         * lisp/progmodes/cc-fonts.el (c-font-lock-maybe-decl-faces): Remove.
10942         (c-font-lock-declarations): Use the new c-maybe-decl-faces in place of the
10943         removed variable.
10945         * lisp/progmodes/cc-langs.el (c-maybe-decl-faces): New language variable.
10947 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
10949         Avoid an infloop when we run out of memory
10951         * src/alloc.c (garbage_collect_1): Don't bother saving and
10952         restoring the echo-area message if we are GC'ing after running out
10953         of memory.  This avoids an infloop due to repeated attempts to
10954         allocate memory for the cons cell needed to save the message,
10955         which signals the memory-full error, which attempts to save the
10956         echo-area message, which signals memory-full again, etc.
10958 2016-01-11  Eli Zaretskii  <eliz@gnu.org>
10960         Avoid unnecessary failures of auto-saving after fatal error
10962         * src/w32.c (map_w32_filename): Avoid non-trivial system calls for
10963         the benefit of FAT volumes if we are called as part of shutting
10964         down due to a fatal error, which probably means we are trying to
10965         auto-save the session.
10966         * src/lread.c (check_obarray): Don't bother making the obarray
10967         valid if we are shutting down due to a fatal error.  This avoids
10968         interfering with auto-saving the crashed session.
10970 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
10972         Simplify HAVE_MODULES use in mark_maybe_pointer
10974         * src/alloc.c (HAVE_MODULES): Now a constant 0 if not defined,
10975         so that later code can use 'if' rather than '#ifdef'.
10976         (mark_maybe_pointer): Simplify based on HAVE_MODULES now
10977         always working.
10979 2016-01-11  Paul Eggert  <eggert@cs.ucla.edu>
10981         Revert attempt to use 'noexcept' in typedef
10983         This use of 'noexcept' runs afoul of the C++11 standard.
10984         Problem reported by Philipp Stephani in:
10985         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00706.html
10986         * src/emacs-module.c (emacs_finalizer_function):
10987         Move this typedef here ...
10988         * src/emacs-module.h: ... from here, and use only the C
10989         version of the typedef.  The typedef is now private since it
10990         is never used in the .h file now and anyway it seemed to be
10991         causing more confusion than it cured.
10992         (make_user_ptr, get_user_finalizer, set_user_finalizer):
10993         Open-code the type instead.
10995 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
10997         Update documentation of 'indirect-function'
10999         * doc/lispref/eval.texi (Function Indirection): Update the
11000         documentation of 'indirect-function'.
11002 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11004         Update documentation for obsoleting 'syntax-begin-function'
11006         * doc/lispref/syntax.texi (Position Parse): Undocument
11007         'syntax-begin-function' that is now obsolete.
11009 2016-01-10  Eli Zaretskii  <eliz@gnu.org>
11011         Document new features if Eshell
11013         * doc/misc/eshell.texi (Input/Output): Document the new
11014         '#<bufname>' syntax.
11015         (Input/Output): Document 'eshell-destroy-buffer-when-process-dies'.
11016         Disable "Key Index" generation, as there are no @kindex entries in
11017         this manual.
11019 2016-01-10  Michael Albinus  <michael.albinus@gmx.de>
11021         Handle too long commands in Tramp
11023         * lisp/net/tramp-sh.el (tramp-sh-handle-make-symbolic-link)
11024         (tramp-do-file-attributes-with-ls): Send sequence of commands, in
11025         order to not exceed shell command line limit.
11027         * test/automated/tramp-tests.el (tramp--test-darwin-p): Remove.
11028         (tramp--test-utf8): Include Arabic file name, again.
11030 2016-01-10  Paul Eggert  <eggert@cs.ucla.edu>
11032         * .gitattributes: *.cur and *.pif are binary files too.
11034 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11036         * src/alloc.c (mark_maybe_pointer): HAVE_MODULES may be undefined
11038 2016-01-10  Stefan Monnier  <monnier@iro.umontreal.ca>
11040         * sh-script.el (sh-smie-sh-rules): Improve indentation inside $(...)
11042         * lisp/progmodes/sh-script.el (sh-smie-sh-rules): Improve indentation
11043         within $(...).
11044         * test/indent/shell.sh: Add corresponding test.
11046 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11048         * src/alloc.c (mark_maybe_pointer): Also check wide-int's emacs_value
11050         (mark_memory): Simplify loop.  Don't assume a pointer-sized word can be
11051         cast to Lisp_Object.
11053 2016-01-09  Dmitry Gutov  <dgutov@yandex.ru>
11055         Use short date for 'hg annotate', and output the author
11057         * lisp/vc/vc-hg.el (vc-hg-annotate-command):
11058         Change '-d' to '-dq'.  (Bug#21805)
11059         (vc-hg-annotate-switches): Default to "-u" "--follow".
11060         (vc-hg-annotate-re): Update to recognize the short date format
11061         and the optional username.
11062         (vc-hg-annotate-time)
11063         (vc-hg-annotate-extract-revision-at-line): Update accordingly.
11065         * test/automated/vc-hg.el: New file.
11067 2016-01-09  Paul Eggert  <eggert@cs.ucla.edu>
11069         Spelling fix
11071 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11073         Document user-level functions in project.el
11075         * lisp/progmodes/project.el (project-find-file)
11076         (project-or-external-find-file): Add doc strings.
11078 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11080         Document the user-level features of the Xref package
11082         * doc/emacs/maintaining.texi (Maintaining): Add a list of
11083         described features.
11084         (Xref): New section, made out of thoroughly rewritten "Tags"
11085         section.
11086         (Find Identifiers, Looking Up Identifiers, Xref Commands)
11087         (Identifier Search, List Identifiers): New subsections,
11088         incorporating the old tags commands and the new xref commands.
11089         (Tags Tables, Tag Syntax, Create Tags Table, Etags Regexps):
11090         Section and subsections demoted to a lower level.
11091         * doc/emacs/search.texi (Search):
11092         * doc/emacs/windows.texi (Pop Up Window):
11093         * doc/emacs/frames.texi (Creating Frames):
11094         * doc/emacs/programs.texi (Imenu, Symbol Completion):
11095         * doc/emacs/building.texi (Grep Searching):
11096         * doc/emacs/dired.texi (Operating on Files):
11097         * doc/emacs/glossary.texi (Glossary): All references to tags changed.
11099 2016-01-09  Stefan Monnier  <monnier@iro.umontreal.ca>
11101         * loading.texi: Add `define-type' entry for load-history
11103         * doc/lispref/loading.texi (Where Defined): Remove incorrect
11104         cl-defmethod description, and add missing define-type entry.
11106 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11108         Improve doc strings and prompts in xref.el
11110         * lisp/progmodes/xref.el (xref-backend-functions)
11111         (xref-find-definitions): Doc fixes.
11112         (xref-query-replace): Doc fix.  Improve prompts for arguments.
11114 2016-01-09  Alan Mackenzie  <acm@muc.de>
11116         Allow the use of `font-lock-extend-region-multiline' in CC Mode.
11118         * lisp/progmodes/cc-mode.el (c-font-lock-init): Remove
11119         `font-lock-extend-regions-wholelines' from
11120         `font-lock-extend-region-functions' rather than setting the latter to
11121         nil.
11123 2016-01-09  Michael Albinus  <michael.albinus@gmx.de>
11125         Fix coding system for Tramp on OS X.
11127         * lisp/net/tramp-compat.el: Require ucs-normalize.
11129         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11130         Set coding system to `utf-8-hfs' for Mac OS X.
11132         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
11133         Flush directory properties when needed.
11134         (tramp--test-utf8): Include Chinese file name, again.
11136 2016-01-09  Eli Zaretskii  <eliz@gnu.org>
11138         Update 'load-history' docs
11140         * doc/lispref/loading.texi (Where Defined): Update the list of
11141         forms in 'load-history' by adding the forms created for the
11142         'cl-generic' generics.  (Bug#21422)
11144 2016-01-08  Paul Eggert  <eggert@cs.ucla.edu>
11146         Fix (error ...) error
11148         Problem reported by Glenn Morris in:
11149         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00561.html
11150         * lisp/vc/add-log.el (change-log-goto-source): Fix typos
11151         introduced in my Aug 28 change, where I got confused by the
11152         two meanings of (error ...).
11154 2016-01-08  Alan Mackenzie  <acm@muc.de>
11156         Correctly analyze brace arguments in templated C++ function declarations.
11158         * lisp/progmodes/cc-defs.el (c-go-list-forward, c-go-list-backward): add
11159         POS and LIMIT parameters, like the other c-go-list-* functions have.
11161         * lisp/progmodes/cc-engine.el (c-restore-<>-properties): Check backwards
11162         for a ?\( rather than a ?<.  (c-looking-at-inexpr-block): Handle names
11163         followed by template specifiers.
11165 2016-01-08  Glenn Morris  <rgm@gnu.org>
11167         * lisp/cedet/mode-local.el (describe-function-orig-buffer): Declare.
11169         * lisp/ffap.el (ffap-latex-mode): Avoid free variable.
11171 2016-01-08  Mark Oteiza  <mvoteiza@udel.edu>
11173         * lisp/play/dunnet.el (dun-fix-screen): Avoid `end-of-buffer`.
11175 2016-01-08  Alan Mackenzie  <acm@muc.de>
11177         Respect fontification region calculated by major mode.  Fixes bug #22316.
11179         * lisp/font-lock.el (font-lock-extend-jit-lock-region-after-change): when a
11180         fontification region has been calculated by a function on
11181         font-lock-extend-after-change-region-function use this region rather than
11182         changing the end position to somewhere else.
11184 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11186         Improve documentation of Delete Selection mode
11188         * lisp/delsel.el (delete-selection-mode)
11189         (delete-selection-helper): Update and expand the doc strings.
11190         (Bug#22296)
11192         * doc/emacs/mark.texi (Using Region): Document the behavior of
11193         delete commands in Delete Selection mode.  (Bug#22296)
11195         * doc/lispref/markers.texi (The Mark): Document how to add the
11196         support for Delete Selection mode to Lisp programs. (Bug#22296)
11198 2016-01-08  Dmitry Gutov  <dgutov@yandex.ru>
11200         Fix two project-find-file issues
11202         * lisp/progmodes/project.el (project--value-in-dir):
11203         Temporarily set enable-local-variables to :all.
11204         (project-find-file, project-or-external-find-file):
11205         All autoloads.
11206         (project--find-file-in): Require xref.
11208 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11210         Clarify doc string of 'dired-current-directory'
11212         * lisp/dired.el (dired-current-directory): Doc fix: clarify that
11213         the return value might not end in a slash when called with the
11214         optional argument non-nil.  (Bug#6273)
11216 2016-01-08  Eli Zaretskii  <eliz@gnu.org>
11218         Use the face of preceding text for displaying the ellipsis
11220         * src/xdisp.c (setup_for_ellipsis): Use the face of the preceding
11221         text in it->saved_face_id for displaying the ellipsis, and ignore
11222         the face, if any, of the invisible text.  (Bug#22320)
11224 2016-01-08  Michael Albinus  <michael.albinus@gmx.de>
11226         Suppress Chinese file name test for OSX in tramp-tests.el
11228         * test/automated/tramp-tests.el (tramp--test-utf8):
11229         Remove instrumentation.  Suppress Chinese file name test for OSX.
11231 2016-01-07  Glenn Morris  <rgm@gnu.org>
11233         * admin/admin.el (set-version): Also handle the NEWS file.
11235 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
11237         apropos-library: Skip obvious duplicates; don't error on generics
11239         * lisp/apropos.el (apropos-library): Skip "was an autoload"
11240         entries, to avoid obvious duplicates.  For each cl-defmethod
11241         entry, take just its function symbol (bug#21422).
11243 2016-01-07  Dmitry Gutov  <dgutov@yandex.ru>
11245         Add project-find-file and project-or-external-find-file
11247         * lisp/minibuffer.el (completion-category-defaults):
11248         Add `project-file' category.
11250         * lisp/progmodes/project.el (project-find-file)
11251         (project-or-external-find-file): New commands.
11252         (project--find-file-in): New private function.
11254         * lisp/progmodes/xref.el (xref-collect-matches): Use
11255         `expand-file-name' on DIR, to expand the tildes.
11256         (xref--find-ignores-arguments): Extract from
11257         `xref--rgrep-command'.
11259 2016-01-06  Leo Liu  <sdl.web@gmail.com>
11261         Add defvar-local to lisp-imenu-generic-expression
11263         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression): Add
11264           defvar-local.
11266 2016-01-06  Leo Liu  <sdl.web@gmail.com>
11268         Revert commit b1e3d14845517bfa9fa5d6d3840f3ab3160306fd
11270         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
11271           Don't declare (indent 1).
11273 2016-01-06  Glenn Morris  <rgm@gnu.org>
11275         * lisp/emacs-lisp/autoload.el (autoload-find-destination): Doc fix.
11277 2016-01-06  Glenn Morris  <rgm@gnu.org>
11279         * lisp/emacs-lisp/autoload.el (autoload-find-destination):
11281         Avoid specifying the length of a time object (it has not been "2"
11282         for some time).
11284 2016-01-06  Andreas Schwab  <schwab@linux-m68k.org>
11286         Properly encode/decode base64Binary data in SOAP
11288                 * lisp/net/soap-client.el (soap-encode-xs-basic-type): Encode
11289                 base64Binary value as utf-8.
11290                 (soap-decode-xs-basic-type): Decode base64Binary value as utf-8.
11292 2016-01-06  Eli Zaretskii  <eliz@gnu.org>
11294         Obey coding-system-for-write when writing stdout/stderr in batch
11296         * src/print.c (printchar_to_stream):
11297         * src/xdisp.c (message_to_stderr): If coding-system-for-write has
11298         a non-nil value, use it to encode output in preference to
11299         locale-coding-system.  See the discussions in
11300         http://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00048.html
11301         for the details.
11303         * doc/lispref/os.texi (Terminal Output): Document how to send
11304         non-ASCII text via 'send-string-to-terminal'.
11305         (Batch Mode): Document how text written to standard streams is
11306         encoded.  Fix inaccuracy regarding which output streams are used
11307         by output functions in batch mode.
11309 2016-01-06  Xue Fuqiao  <xfq.free@gmail.com>
11311         * doc/misc/efaq.texi (Packages that do not come with Emacs):
11312         Update the URI of MELPA and marmalade-repo.  Reported by CHENG Gao
11313         <chenggao@royau.me> in
11314         https://lists.gnu.org/archive/html/emacs-devel/2016-01/msg00390.html.
11316 2016-01-05  Maksim Golubev  <maksim.golubev72@gmail.com>  (tiny change)
11318         * lisp/progmodes/opascal.el (opascal-mode-syntax-table):
11320         Fix backslash.  (Bug#22224)
11322 2016-01-05  Federico Beffa  <beffa@ieee.org>  (tiny change)
11324         * lisp/progmodes/xscheme.el (xscheme-prompt-for-expression-exit):
11326         Make it actually work.  (Bug#22265)
11328 2016-01-05  Alan Mackenzie  <acm@muc.de>
11330         Remove function wrongly on AWK Mode value of context fontification hook.
11332         * lisp/progmodes/cc-langs.el (c-before-context-fontification-functions):
11333         swap order of entries so that awk's entry isn't superseded by the default.
11335         * lisp/progmodes/cc-mode.el (c-before-context-fl-expand-region): Correct
11336         to handle nil value of c-before-context-fontification-functions.
11338 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11340         * src/buffer.c: Stick with ASCII in doc string.
11342 2016-01-05  Paul Eggert  <eggert@cs.ucla.edu>
11344         Reword transient-mark-mode doc string
11346         * src/buffer.c (syms_of_buffer): Reword doc string to avoid confusion.
11347         The value 'lambda (literally) can be interpreted as (quote lambda),
11348         which is not intended here; we want just the lambda symbol.
11350 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
11352         Update doc string of 'selective-display'
11354         * src/buffer.c (syms_of_buffer) <selective-display>: Say that
11355         using it with the value of 't' is obsolete.  (Bug#1092)
11357 2016-01-05  Alan Mackenzie  <acm@muc.de>
11359         Make C++ buffers writeable when writing their initial text properties.
11361         This is a correction to yesterday's CC Mode patch.
11363         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Put
11364         c-save-buffer-state around the function rather than a mere `let'.
11366 2016-01-05  Michael Albinus  <michael.albinus@gmx.de>
11368         Additional changes for "make check-expensive"
11370         * CONTRIBUTE : Encourage use of ":tags '(:expensive-test)".
11371         Explain make target `check-expensive'.
11373         * etc/NEWS: Mention new make target `check-expensive'.
11375         * test/automated/Makefile.in (check-doit): New target.
11376         (check, check-expensive): Use it.
11378 2016-01-04  Alan Mackenzie  <acm@muc.de>
11380         Apply text properties for <, > in new after-change function (C++ Java Modes).
11382         These are category/syntax-table properties to give < and > paren syntax.
11383         Also apply certain `c-type' text properties to the insides of <..> constructs
11384         to ensure that identifiers contained by them get fontified.  This patch fixes
11385         bug #681.
11387         * lisp/progmodes/cc-cmds.el (c-electric-lt-gt): Reformulate due to new
11388         after-change action.
11390         * lisp/progmodes/cc-engine.el (c-before-change-check-<>-operators): Expand
11391         change region to include <s and >s which might not be already marked as
11392         parens, rather than just when paren text properties are removed.
11393         (c-restore-<>-properties): New after-change function, which applies text
11394         properties marking < and > with paren syntax.
11396         * lisp/progmodes/cc-fonts.el (c-font-lock-declarations): Ensure `c-type'
11397         properties are applied to the interiors of <...> constructs, to ensure
11398         fontification of identifiers there.
11400         * lisp/progmodes/cc-langs.el (c-before-font-lock-functions): Add
11401         c-restore-<>-properties to this list for C++ and Java.
11403         * lisp/progmodes/cc-mode.el (c-common-init): When invoking
11404         c-before-font-lock-functions, exclude c-restore-<>-properties from the
11405         functions invoked.
11406         (c-before-change): Initialize c-new-BEG/END here (rather than c-after-change)
11407         to allow modification by before-change functions.
11408         (c-after-change): Amend c-new-END here, rather than initializing it and
11409         c-new-BEG.
11411 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11413         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
11415 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11417         Introduce check-expensive tests.
11419         * Makefile.in (check-expensive):
11420         * test/automated/Makefile.in (check-expensive): New target.
11422         * test/automated/auto-revert-tests.el
11423         (auto-revert-test01-auto-revert-several-files):
11424         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
11425         * test/automated/tramp-tests.el (tramp-test26-process-file)
11426         (tramp-test27-start-file-process, tramp-test28-shell-command)
11427         (tramp-test29-vc-registered)
11428         (tramp-test31-special-characters-with-stat)
11429         (tramp-test31-special-characters-with-perl)
11430         (tramp-test31-special-characters-with-ls)
11431         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
11432         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
11433         (tramp-test35-unload): Tag the tests as :expensive-test.
11435 2016-01-04  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11437         shr-tag-video bug fix
11439         * shr.el (shr-tag-video): Protect against the `poster' being
11440         empty.
11442 2016-01-04  Michael Albinus  <michael.albinus@gmx.de>
11444         Minor fixes in tramp-tests.el
11446         * test/automated/tramp-tests.el (tramp-test26-process-file):
11447         Move point properly.
11448         (tramp-test29-vc-registered): Work with relative file names.
11450 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11452         Ensure redisplay when 'truncate-lines' is set
11454         * lisp/frame.el (redisplay--variables): Add 'truncate-lines'.
11455         (Bug#22303)
11457 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11459         Fix a doc string of 'transient-mark-mode'
11461         * src/buffer.c (syms_of_buffer) <transient-mark-mode>: Prevent
11462         "lambda" in doc string from becoming a link to lambda expressions.
11464 2016-01-04  Eli Zaretskii  <eliz@gnu.org>
11466         MS-Windows followup to latest gnulib update
11468         * nt/gnulib.mk (EXTRA_DIST): Add ignore-value.h.
11470 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11472         Spelling fix
11474 2016-01-03  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11476         Do secure signed Bcc handling
11478         * lisp/gnus/message.el (message-send): Do secure signed Bcc handling
11479         (bug#18718).
11481 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
11483         Avoid stdio in SIGINT handler
11485         * admin/merge-gnulib (GNULIB_MODULES): Add ignore-value.
11486         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11487         * lib/ignore-value.h: New file, from gnulib.
11488         * src/keyboard.c: Include it.
11489         (write_stdout, read_stdin): New functions.
11490         (handle_interrupt): Use them instead of printf and getchar,
11491         and avoid fflush when handling signals.
11493 2016-01-03  Paul Eggert  <eggert@cs.ucla.edu>
11495         * doc/misc/texinfo.tex: Revert unwanted copyright change.
11497 2016-01-03  Artur Malabarba  <bruce.connor.am@gmail.com>
11499         * lisp/align.el (align): Simplify a lambda
11501         * lisp/align.el (align): Fix arg order in call to `align-region'
11503 2016-01-03  Eli Zaretskii  <eliz@gnu.org>
11505         Fix compilation next-error in buffers with selective-display
11507         * lisp/progmodes/compile.el (compilation-beginning-of-line): New
11508         function.
11509         (compilation-internal-error-properties)
11510         (compilation-next-error-function, compilation-set-window): Use
11511         it.  (Bug#1092)
11513 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11515         * nsm.el (nsm-check-protocol): Fix typo in the message.
11517 2016-01-03  Lars Magne Ingebrigtsen  <larsi@gnus.org>
11519         Add SHA1 warnings for high network security settings
11521         * nsm.el (nsm-check-protocol): When using high security, warn
11522         about SHA1 certificates, which are now believed to be open to
11523         spoofing.
11525 2016-01-02  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
11527         Refactor mml-smime.el, mml1991.el, mml2015.el
11529         (Maybe this is the last merge from Gnus git to Emacs git)
11531         Cf. discussion on ding mailing list, messages in
11532         <http://thread.gmane.org/gmane.emacs.gnus.general/86228>.
11533         Common code from the three files mml-smime.el, mml1991.el, and
11534         mml2015.el is moved to mml-sec.el.  Auxiliary functions are added
11535         to gnus-util.el.
11537         The code is supported by test cases with necessary test keys.
11539         Documentation in message.texi is updated.
11541         * doc/misc/message.texi (Security, Using S/MIME):
11542         Update for refactoring mml-smime.el, mml1991.el, mml2015.el.
11543         (Using OpenPGP): Rename from "Using PGP/MIME"; update contents.
11544         (Passphrase caching, Encrypt-to-self, Bcc Warning): New sections.
11546         * lisp/gnus/gnus-util.el (gnus-test-list, gnus-subsetp, gnus-setdiff):
11547         New functions.
11549         * lisp/gnus/mml-sec.el: Require gnus-util and epg.
11550         (epa--select-keys): Autoload.
11551         (mml-signencrypt-style-alist, mml-secure-cache-passphrase): Doc fix.
11552         (mml-secure-openpgp-signers): New user option;
11553         make mml1991-signers and mml2015-signers obsolete aliases to it.
11554         (mml-secure-smime-signers): New user option;
11555         make mml-smime-signers an obsolete alias to it.
11556         (mml-secure-openpgp-encrypt-to-self): New user option;
11557         make mml1991-encrypt-to-self and mml2015-encrypt-to-self obsolete
11558         aliases to it.
11559         (mml-secure-smime-encrypt-to-self): New user option;
11560         make mml-smime-encrypt-to-self an obsolete alias to it.
11561         (mml-secure-openpgp-sign-with-sender): New user option;
11562         make mml2015-sign-with-sender an obsolete alias to it.
11563         (mml-secure-smime-sign-with-sender): New user option;
11564         make mml-smime-sign-with-sender an obsolete alias to it.
11565         (mml-secure-openpgp-always-trust): New user option;
11566         make mml2015-always-trust an obsolete alias to it.
11567         (mml-secure-fail-when-key-problem, mml-secure-key-preferences):
11568         New user options.
11569         (mml-secure-cust-usage-lookup, mml-secure-cust-fpr-lookup)
11570         (mml-secure-cust-record-keys, mml-secure-cust-remove-keys)
11571         (mml-secure-add-secret-key-id, mml-secure-clear-secret-key-id-list)
11572         (mml-secure-cache-passphrase-p, mml-secure-cache-expiry-interval)
11573         (mml-secure-passphrase-callback, mml-secure-check-user-id)
11574         (mml-secure-secret-key-exists-p, mml-secure-check-sub-key)
11575         (mml-secure-find-usable-keys, mml-secure-select-preferred-keys)
11576         (mml-secure-fingerprint, mml-secure-filter-keys)
11577         (mml-secure-normalize-cust-name, mml-secure-select-keys)
11578         (mml-secure-select-keys-1, mml-secure-signer-names, mml-secure-signers)
11579         (mml-secure-self-recipients, mml-secure-recipients)
11580         (mml-secure-epg-encrypt, mml-secure-epg-sign): New functions.
11582         * lisp/gnus/mml-smime.el: Require epg;
11583         refactor declaration and autoloading of epg functions.
11584         (mml-smime-use): Doc fix.
11585         (mml-smime-cache-passphrase, mml-smime-passphrase-cache-expiry):
11586         Obsolete.
11587         (mml-smime-get-dns-cert, mml-smime-get-ldap-cert):
11588         Use format instead of gnus-format-message.
11589         (mml-smime-epg-secret-key-id-list): Remove variable.
11590         (mml-smime-epg-passphrase-callback, mml-smime-epg-find-usable-key)
11591         (mml-smime-epg-find-usable-secret-key): Remove functions.
11592         (mml-smime-epg-sign, mml-smime-epg-encrypt): Refactor.
11594         * lisp/gnus/mml1991.el (mml1991-cache-passphrase)
11595         (mml1991-passphrase-cache-expiry): Obsolete.
11596         (mml1991-epg-secret-key-id-list): Remove variable.
11597         (mml1991-epg-passphrase-callback, mml1991-epg-find-usable-key)
11598         (mml1991-epg-find-usable-secret-key): Remove functions.
11599         (mml1991-epg-sign, mml1991-epg-encrypt): Refactor.
11601         * lisp/gnus/mml2015.el (mml2015-cache-passphrase)
11602         (mml2015-passphrase-cache-expiry): Obsolete.
11603         (mml2015-epg-secret-key-id-list): Remove variable.
11604         (mml2015-epg-passphrase-callback, mml2015-epg-check-user-id)
11605         (mml2015-epg-check-sub-key, mml2015-epg-find-usable-key)
11606         (mml2015-epg-find-usable-secret-key): Remove functions.
11607         (mml2015-epg-decrypt, mml2015-epg-clear-decrypt, mml2015-epg-sign)
11608         (mml2015-epg-encrypt): Refactor.
11610 2016-01-02  Glenn Morris  <rgm@gnu.org>
11612         * lisp/progmodes/fortran.el (fortran-make-syntax-propertize-function):
11614         Explicitly ignore case.  (Bug#22262)
11616 2016-01-02  Stefan Monnier  <monnier@iro.umontreal.ca>
11618         (semantic-symref-derive-find-filepatterns): Return a list
11620         * lisp/cedet/semantic/symref/grep.el
11621         (semantic-symref-derive-find-filepatterns): Return a list.
11622         (semantic-symref-perform-search): Quote the result here once and for all.
11624 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11626         Fix xref-find-references on MS-Windows
11628         * lisp/cedet/semantic/symref/grep.el
11629         (semantic-symref-derive-find-filepatterns): Use
11630         'shell-quote-argument' instead of manually quoting in a way that
11631         only works with Posix shells.  (Bug#22289)
11633 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11635         Document new features of tildify-mode
11637         * lisp/textmodes/tildify.el (tildify-foreach-ignore-environments)
11638         (tildify-mode): Spelling fixes in doc strings.
11640         * etc/NEWS: Reformat the tildify-mode entry.
11642 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11644         Document new features of Whitespace mode
11646         * doc/emacs/display.texi (Useless Whitespace): Document
11647         'whitespace-toggle-options' and the new 'big-indent' style.
11648         Document 'whitespace-big-indent-regexp'.  Document the Global
11649         Whitespace mode.
11651 2016-01-02  Eli Zaretskii  <eliz@gnu.org>
11653         Improve documentation of new Hide-IfDef features
11655         * etc/NEWS: Expand and reword Hide-IfDef section.
11657 2016-01-02  Leo Liu  <sdl.web@gmail.com>
11659         Fix regression in font-locking cl-assert and cl-check-type
11661         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2): Fix
11662           el-errs-re.
11664 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11666         Spelling and grammar fixes
11668 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11670         Fix copyright years by hand
11672         These are dates that admin/update-copyright did not update, or
11673         updated incorrectly.
11675 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11677         Update copyright year to 2016
11679         Run admin/update-copyright.
11681 2016-01-01  Paul Eggert  <eggert@cs.ucla.edu>
11683         Merge from gnulib
11685         This mostly just updates copyright dates of gnulib files.
11686         It also updates to the latest version of texinfo.tex.
11688 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
11690         lisp/emacs-lisp/chart.el (chart-new-buffer): Move to silence byte compiler.
11692 2015-12-31  Mark Oteiza  <mvoteiza@udel.edu>
11694         Port chart.el methods to cl-generic.
11696         cl-call-next-method cannot be used inside EIEIO's defmethod.
11697         * lisp/emacs-lisp/chart.el: Require cl-generic at compile time.
11698         * lisp/emacs-lisp/chart.el (initialize-instance, chart-draw):
11699         (chart-draw-title, chart-size-in-dir, chart-draw-axis):
11700         (chart-axis-draw, chart-translate-xpos, chart-translate-ypos):
11701         (chart-translate-namezone, chart-draw-data, chart-add-sequence):
11702         (chart-trim, chart-sort): Use cl-defmethod instead of defmethod.
11704 2015-12-31  Brian Burns  <bburns.km@gmail.com>
11706         Add nt/INSTALL.W64 build instructions
11708         * nt/INSTALL.W64: New file.
11709         * nt/INSTALL: Point to INSTALL.W64 for 64-bit build instructions.
11711 2015-12-31  Joakim Jalap  <joakim.jalap@fastmail.com>
11713         Add new input method 'programmer-dvorak'
11715         * lisp/leim/quail/programmer-dvorak.el ("programmer-dvorak"): New
11716         input method.
11718         * etc/NEWS: Mention it.
11720 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
11722         Allow to invoke original M-TAB binding in 'flyspell-prog-mode'
11724         * lisp/textmodes/flyspell.el (flyspell-prog-mode): Record the
11725         original M-TAB binding in a buffer-local variable.
11726         (flyspell-auto-correct-word): Invoke the original binding of M-TAB
11727         if that is recorded, when point is in a place where flyspell
11728         should not be active (e.g., because the user turned on
11729         'flyspell-prog-mode').  (Bug#18533)
11731 2015-12-31  Eli Zaretskii  <eliz@gnu.org>
11733         Fix EWW rendering of long RTL lines
11735         * lisp/net/shr.el (shr-insert-document): Undo any previous hscroll
11736         of the selected window before filling its lines.  (Bug#22250)
11738 2015-12-31  Vincent Belaïche  <vincentb1@users.sourceforge.net>
11740         fix  bug#21054
11742         * ses.el (ses-check-curcell): Call `ses-set-curcell' unconditionally
11744 2015-12-31  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11746         Clean up cairo printing code
11748         * src/gtkutil.c (xg_get_page_setup): Use listn.
11749         * src/xfns.c (Fx_export_frames, Fx_print_frames_dialog): Doc fix.  Use
11750         decode_window_system_frame and FRAME_VISIBLE_P.
11751         (Fx_print_frames_dialog): Use redisplay_preserve_echo_area instead
11752         of Fdisplay.
11753         * src/xterm.c (x_cr_export_frames): Use redisplay_preserve_echo_area
11754         instead of Fdisplay.  Temporarily unblock_input around QUIT.
11756 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11758         Add handle_user_signal_hook
11760         * src/keyboard.h (handle_user_signal_hook): New declaration.
11761         * src/keyboard.c (handle_user_signal_hook): New variable.
11762         (handle_user_signal): Call it.
11764 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11766         Avoid writing to purespace
11768         * src/alloc.c (Fmake_string): Don't write to empty string contents.
11769         (allocate_vector): Don't write to empty vector size.
11770         * src/character.h (CHECK_CHARACTER_CAR, CHECK_CHARACTER_CDR):
11771         Don't call unnecessary XSETCAR or XSETCDR.
11772         * src/lisp.h (STRING_SET_UNIBYTE, STRING_SET_MULTIBYTE): Don't
11773         write to empty string size_byte.
11775 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11777         Remove unused variable
11779         * lisp/international/mule-cmds.el: Remove unused variable
11780         `mac-system-coding-system'.
11782 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11784         * configure.ac: Find libxml2 headers in Xcode SDK dir on Darwin.
11786 2015-12-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
11788         Use posix_openpt instead of openpty on Darwin
11790         * configure.ac (PTY_ITERATION, FIRST_PTY_LETTER, PTY_OPEN)
11791         (PTY_NAME_SPRINTF, PTY_TTY_NAME_SPRINTF): Remove
11792         Darwin-specific definitions.  Use posix_openpt instead.
11794 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
11796         Document support for ':documentation' in Lisp mode
11798         * lisp/emacs-lisp/lisp-mode.el (lisp-string-in-doc-position-p)
11799         (lisp-string-after-doc-keyword-p)
11800         (lisp-font-lock-syntactic-face-function): Add doc strings.
11802 2015-12-30  Shakthi Kannan  <shakthimaan@gmail.com>
11804         Document new features of TeX mode
11806         * doc/emacs/text.texi (TeX Print): Document
11807         'tex-print-file-extension'.
11808         * doc/emacs/programs.texi (Misc for Programs): Document support
11809         for Prettify Symbols mode in TeX mode.
11811 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
11813         Clarify docs of hscroll in RTL text
11815         * doc/lispref/windows.texi (Horizontal Scrolling): Clarify the
11816         meaning of a window's horizontal scroll amount for RTL paragraphs.
11818 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
11820         Fix rendering of HTML pages that use character composition
11822         * src/indent.c (Fvertical_motion): Fix the case when point starts
11823         in the middle of a composition, as in shr-vertical-motion.
11824         (Bug#22250)
11826 2015-12-30  Eli Zaretskii  <eliz@gnu.org>
11828         Avoid some compiler warnings in w32.c
11830         * src/w32.c (codepage_for_filenames, crlf_to_lf)
11831         (ansi_encode_filename, socket_to_fd, sys_write)
11832         (check_windows_init_file): Avoid compiler warnings about
11833         differences in pointer signedness.
11835 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
11837         Undo ill-advised change
11839         * lisp/progmodes/xref.el (xref-collect-matches): Undo
11840         ill-advised change.  The hits come in the order that `find'
11841         produces them in, which isn't alphabetical.
11843 2015-12-29  Dmitry Gutov  <dgutov@yandex.ru>
11845         Unbreak completion in python-mode buffers
11847         * lisp/progmodes/python.el (python-shell-completion-at-point):
11848         Unbreak in python-mode buffers.
11850 2016-01-09  Andrew Hyatt  <ahyatt@gmail.com>
11852         Adding example replies to bug-triage.
11854         * admin/notes/bug-triage: Added example replies. Also, as requested,
11855           making the process notes into more of a checklist.
11857 2016-01-08  Andrew Hyatt  <ahyatt@gmail.com>
11859         Rename the notes/admin/triage file to bug-triage.
11861         * CONTRIBUTE: Change reference to the triage file name.
11862         * admin/notes/triage: Rename file to admin/notes/bug-triage.
11864 2016-01-07  Glenn Morris  <rgm@gnu.org>
11866         Allow creation of loaddefs files without timestamps.
11868         * lisp/emacs-lisp/autoload.el (autoload-timestamps): New variable.
11869         (autoload-generate-file-autoloads, update-directory-autoloads):
11870         If autoload-timestamps is nil, write "t" instead of file timestamp.
11871         (autoload-find-destination, update-directory-autoloads):
11872         If timestamp is "t", use the modtime of the output file instead.
11874 2016-01-06  Glenn Morris  <rgm@gnu.org>
11876         Doc tweaks.
11878         * lisp/calendar/cal-hebrew.el (diary-hebrew-list-entries):
11879         * lisp/calendar/cal-iso.el (calendar-iso-to-absolute)
11880         (calendar-iso-from-absolute):
11881         * lisp/calendar/cal-tex.el (cal-tex-comment):
11882         * lisp/calendar/solar.el (calendar-time-display-form): Doc tweaks.
11884 2016-01-06  Glenn Morris  <rgm@gnu.org>
11886         Build tweaks related to tags files.
11888         * lib-src/Makefile.in (tagsfiles): New variable.
11889         (TAGS): Also depend on the source files.  Use our own etags program.
11890         * lisp/Makefile.in (ETAGS): Add EXEEXT.
11891         (lisptagsfiles1, lisptagsfiles2, lisptagsfiles3, lisptagsfiles4):
11892         Remove.
11893         (tagsfiles): New, replacing lisptagsfiles1 etc.
11894         Remove irrelevant source files here rather than in the TAGS rule.
11895         (${ETAGS}): New rule.
11896         (TAGS): Also depend on the etags executable.
11897         * lwlib/Makefile.in (EXEEXT): New, set by configure.
11898         (ETAGS): Add EXEEXT.
11899         (${ETAGS}): New rule.
11900         (ctagsfiles): Use "wildcard".
11901         (TAGS): Also depend on the etags executable.
11902         * nt/Makefile.in (ETAGS, tagsfiles): New variables.
11903         (${ETAGS}): New rule.
11904         (TAGS): Fix dependencies.
11905         * oldXMenu/Makefile.in (EXEEXT): New, set by configure.
11906         (ETAGS): New variable, replacing $TAGS.  Use our own etags program.
11907         Remove "-t" argument.
11908         (${ETAGS}): New rule.
11909         (tagsfiles): New variable.
11910         (TAGS): New rule, with proper dependencies.
11911         * src/Makefile.in (ETAGS): Add EXEEXT.  Add a build rule.
11912         (ctagsfiles1, ctagsfiles2): Use "wildcard".
11913         (ctagsfiles3): Remove.
11914         (TAGS): Depend on etags.
11915         (../lisp/TAGS, $(lwlibdir)/TAGS): Let the rules in the relevant
11916         directories decide if updates are needed.
11918 2016-01-06  Glenn Morris  <rgm@gnu.org>
11920         * lisp/Makefile.in (CAL_SRC): Skip calendar.el.
11922 2016-01-06  Glenn Morris  <rgm@gnu.org>
11924         * test/lisp/emacs-lisp/package-tests.el
11926         (package-test-macro-compilation): Fixup branch merge.
11928 2016-01-05  Eli Zaretskii  <eliz@gnu.org>
11930         Fix fallout from merging emacs-25 branch in test/
11932         * .gitignore: Update for the new place of biditest.txt.
11933         * test/automated/: Directory removed.  All files moved to their
11934         proper places.
11935         * test/etags/: Directory removed.  All files moved to their proper
11936         places.
11937         * test/automated/url-parse-tests.el: File removed; it was an exact
11938         copy of the same file in test/lisp/url/.
11939         * test/automated/url-expand-tests.el: Moved to test/lisp/url/.
11941 2016-01-04  Paul Eggert  <eggert@cs.ucla.edu>
11943         Spelling fixes.
11945 2016-01-04  Daniel Colascione  <dancol@dancol.org>
11947         Let users disable unsafe signal handling code
11949         * src/keyboard.c (syms_of_keyboard): New user variables
11950         `attempt-stack-overflow-recovery' and
11951         `attempt-orderly-shutdown-on-fatal-signal'.
11952         * src/sysdep.c (stack_overflow): Check
11953         `attempt-stack-overflow-recovery'.
11954         * src/emacs.c (terminate_due_to_signal): Check
11955         `attempt-orderly-shutdown-on-fatal-signal'.
11957 2016-01-03  Michael Albinus  <michael.albinus@gmx.de>
11959         * configure.ac: Add error message for gfile on Nextstep.
11961 2016-01-03  John Wiegley  <johnw@newartisans.com>
11963         Merge branch 'emacs-25-merge'
11965 2016-01-02  Vincent Belaïche  <vincentb1@users.sourceforge.net>
11967         Align textually on fix done for emacs-25 branch for bug#21054
11969         * lisp/ses.el (ses-check-curcell): Suppress ``temporary fix'' comment,
11970         and useless `(if t ...)' in order to align textually on fix done for
11971         emacs-25 branch for bug#21054.
11973 2016-01-02  K. Handa  <handa@gnu.org>
11975         support rendering of wider range of combinging characters by ftfont backend
11977         * lisp/language/hebrew.el (hebrew-shape-gstring): If the font backend
11978         supports rendering of combining characters, call
11979         font-shape-gstring.
11981         * src/font.c (Ffont_get): Handle `combining-capability' property.
11982         (syms_of_font): New symbol ":combining-capability'.
11984         * src/font.h (struct font_driver): New member combining_capability.
11986         * src/ftfont.c: Include "category.h".
11987         (ftfont_driver): Initialize combining_capability to
11988         ftfont_combining_capability.
11989         (ftfont_shape_by_flt): If OTF is null, try to find a suitable
11990         FLT in advance.
11991         (ftfont_combining_capability): New function.
11993 2016-01-01  Andrew Hyatt  <ahyatt@gmail.com>
11995         Add notes on bug triage procedure
11997         * CONTRIBUTE: In section on the issue tracker, point to new triage file.
11998         * admin/notes/triage: New file explaining triage procedure.
12000 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12002         Correct ses-rename-cell cursor-intangible text prop updating.
12004         There were two problems:
12006         - First ses-rename-cell has to work when called non interactively
12007           (with non-nil CELL argument), so in this case the start pos of
12008           put-text-property cannot be plainly (point), you need a
12009           ses-goto-print call before
12011         - Second, the range itself was computed erronously, only the first
12012           char was affected instead of the full cell width. This was not
12013           noticeable prior to changes (Deprecate `intangible' and
12014           `point-entered' properties) made by Stefan on 2015-04-13T19:51:15Z
12016         * lisp/ses.el (ses-rename-cell): Correct computation of position range
12017         to which the 'cursor-intangible text property has to be set to cell
12018         new name.
12020 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12022         Don't fake empty cells value by "" when printing with a lambda.
12024         When using a lambda expression printer function the user should be
12025         free to format differently a really empty cell, ie. containing nil,
12026         from a cell containing an empty string "".
12028         * ses.el (ses-call-printer): Replace `(or value "")' by just `value'
12029         in the case of a lambda expression printer function.
12031         * ses.texi (Printer functions): Add example and description about
12032         lambda expression printer function handling all the possible values,
12033         including unexpected ones.
12035 2015-12-30  Vincent Belaïche  <vincentb1@users.sourceforge.net>
12037         Quick temporary hack to fix curcell refreshing.
12039         The problem was caused by change: 2015-04-13 Deprecate `intangible'
12040         and `point-entered' properties. The problem is that this change has
12041         removed the (setq ses--curcell t) setting in the ses-command-hook
12042         function.
12044         * ses.el (ses-check-curcell): replace `(eq ses--curcell t)' by just `t' as
12045         a condition to call function `ses-set-curcell'. Comment this as a quick
12046         temporary hack to make it work, as I don't know yet whether a definite
12047         correction would be to make the ses-set-curcell at every ses-check-curcell,
12048         or to revert to the previous approach, ie marking ses--curcell as out-of-date
12049         at every potentially cursor motion command.
12051 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12053         Restrictive URL checking tweaks
12055         * lisp/net/eww.el (eww): Check whether the domain is
12056         restrictive instead of the string
12057         (http://македонија.icom.museum is restrictive even if each
12058         part is from a different script).
12060 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12062         New function `puny-highly-restrictive-domain-p'
12064         * lisp/net/puny.el (puny-highly-restrictive-string-p): Rename.
12065         (puny-highly-restrictive-domain-p): New function.
12067 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12069         eww build fix (require puny)
12071 2015-12-30  Lars Magne Ingebrigtsen  <larsi@gnus.org>
12073         Transform non-restrictive domains to punycode for display
12075         * lisp/net/eww.el (eww): Check whether the domain is Highly
12076         Restrictive in the Unicode IDNA sense.
12078 2015-12-30  John Wiegley  <johnw@newartisans.com>
12080         Merge emacs-25 into master (using imerge)
12082 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12084         Fix typos in CC Mode manual
12086         * doc/misc/cc-mode.texi (c-offsets-alist, Style Variables): Fix
12087         typos.  (Bug#22267)
12089 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12091         Avoid assertion violations in compact_font_cache_entry
12093         * src/alloc.c (compact_font_cache_entry): Don't use VECTORP to
12094         avoid assertion violation in ASIZE.  (Bug#22263)
12096 2015-12-29  Eli Zaretskii  <eliz@gnu.org>
12098         Fix filling text with bidirectional characters in shr.el
12100         * lisp/net/shr.el (shr-insert-document): Bind
12101         bidi-display-reordering to nil while filling lines.  This is
12102         required for when a line includes characters whose bidi
12103         directionality is opposite to the base paragraph direction,
12104         because columns are counted in the logical order.  (Bug#22250)
12106 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12108         Further Unicode restrictive fixups
12110         * puny.el (puny-highly-restrictive-p): Include the extra
12111         identifier characters from table 3.
12113 2015-12-29  Martin Rudalics  <rudalics@gmx.at>
12115         * src/xfns.c (x_create_tip_frame): Process alpha parameter.
12117 2015-12-29  Michael Albinus  <michael.albinus@gmx.de>
12119         Sync with Tramp 2.2.13
12121         * doc/misc/trampver.texi: Change version to "2.2.13.25.1".
12123         * lisp/net/tramp-compat.el (tramp-compat-delete-dups):
12124         Use `tramp-compat-funcall'.
12126         * lisp/net/tramp-gvfs.el (tramp-gvfs-parse-device-names):
12127         Make `split-string' call compatible with older Emacsen.
12129         * lisp/net/trampver.el: Change version to "2.2.13.25.1".
12131 2015-12-29  Lambda Coder  <sjLambda@gmail.com>
12133         * doc/misc/tramp.texi: Editorial revisions to the Tramp manual
12135 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12137         Mention that tls.el is secure by default, and will fail
12139 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12141         Make tls.el use trustfiles by default
12143         * lisp/net/tls.el (tls-program): Add a certfile by default (bug#21227).
12144         (open-tls-stream): Insert the trustfile by looking at
12145         `gnutls-trustfiles'.
12147 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12149         Refactor out gnutls-trustfiles
12151         * lisp/net/gnutls.el (gnutls-trustfiles): Refactor out for reuse by tls.el.
12153 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12155         Remove --insecure from gnutls-cli invocation
12157         * tls.el (tls-program): Default to using secure TLS
12158         connections (bug#19284).
12160 2015-12-29  Lars Ingebrigtsen  <larsi@gnus.org>
12162         Add a new function to say whether a string is restrictive
12164         * puny.el (puny-highly-restrictive-p): New function.
12166 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
12168         Spelling fix
12170 2015-12-28  Paul Eggert  <eggert@cs.ucla.edu>
12172         Port report-emacs-bug to deterministic builds
12174         * lisp/mail/emacsbug.el (report-emacs-bug): Future-proof the
12175         recent "built on" change to deterministic builds where
12176         emacs-build-system will be nil.  See:
12177         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01369.html
12179 2015-12-28  Jose A. Ortega Ruiz  <jao@gnu.org>  (tiny change)
12181         Fix URL auth error message
12183         * lisp/url/url-http.el (url-http-handle-authentication): Make the error
12184         message more correct (bug#20069).
12186 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12188         Mention the new puny.el library
12190 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12192         IDNA-related fixes for the URL library
12194         * lisp/url/url-http.el (url-http-create-request): IDNA-encode
12195         the Host: header.
12197         * lisp/url/url-util.el (url-encode-url): Don't hex-encode
12198         domain names, but leave them as UTF-8, so that they can be
12199         IDNA-encoded later when contacting the host.
12201 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12203         IDNA-encode all domain names in `open-network-stream'
12205         * network-stream.el (open-network-stream)
12206         (network-stream-open-plain, network-stream-open-starttls):
12207         IDNA-encode all domain names, if needed.
12209 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12211         Fix puny-encoding all-non-ASCII domains
12213         * puny.el (puny-encode-string): Fix the all-non-ASCII encoding case.
12215 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12217         * lisp/net/shr.el (shr-next-link): Don't bug out on adjacent links.
12219 2015-12-28  Tom Tromey  <tom@tromey.com>
12221         set :safe on css-indent-offset
12223         * lisp/textmodes/css-mode.el (css-indent-offset): Add :safe 'integerp.
12225 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12227         * eww.el (eww-mode): Remove superfluous bidi reset.
12229 2015-12-28  James Stout  <james.wolf.stout@gmail.com>  (tiny change)
12231         Make chunked encoding trailer detection more compliant
12233         * lisp/url/url-http.el
12234         (url-http-chunked-encoding-after-change-function): Make
12235         trailer detection more compliant (bug#16345).
12237 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12239         Reconnect erc even on server errors
12241         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Try to
12242         reconnect even if a server error has occurred (bug#18527).
12244 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12246         Fix punycode short circuit logic
12248         * puny.el (puny-encode-domain): Fix short-circuit logic.
12250 2015-12-28  Martin Rudalics  <rudalics@gmx.at>
12252         Fix Bug#10873 in `report-emacs-bug'
12254         * lisp/mail/emacsbug.el (report-emacs-bug): If
12255         `report-emacs-bug-no-explanations' is nil, make sure we can show
12256         mail and warnings buffer on this frame (Bug#10873).
12258 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12260         IDNA speed up
12262         * puny.el (puny-encode-domain): Make the common non-IDNA case faster
12264 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12266         Add IDNA domain encode/decode functions
12268         * puny.el (puny-decode-domain): New function.
12269         (puny-encode-domain): Ditto.
12270         (puny-decode-digit): Fix digit decoding error.
12272 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12274         Rename idna.el to puny.el
12276         * puny.el: Renamed from idna.el to avoid name collisions with
12277         the external idna.el library.
12279 2015-12-28  Lars Ingebrigtsen  <larsi@gnus.org>
12281         Always reset the bidi direction
12283         * eww.el (eww-display-html): Always reset the bidi direction
12284         to `left-to-right' (bug#22257).
12286 2015-12-28  Alan Mackenzie  <acm@muc.de>
12288         Allow line comments ending with escaped NL to be continued to the next line.
12290         Use this in C, C++, and Objective C Modes.  Fixes bug#22246
12292         * src/syntax.c (comment-end-can-be-escaped): New buffer local variable.
12293         (forw-comment, back-comment): On encountering an end of comment character,
12294         test whether it is escaped when `comment-end-can-be-escaped' is non-nil.
12296         * doc/lispref/syntax.texi (Control Parsing): Describe
12297         `comment-end-can-be-escaped'.
12299         * etc/NEWS (Lisp Changes): Describe `comment-end-can-be-escaped'.
12301         * lisp/progmodes/cc-langs.el: New c-lang-setvar `comment-end-can-be-escaped'.
12303 2015-12-28  Katsumi Yamaoka  <yamaoka@jpl.org>
12305         lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Keep old Emacsen compatibility
12307         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe):
12308         Don't use split-string with 4th arg for old Emacsen compatibility.
12310 2015-12-27  Dmitry Gutov  <dgutov@yandex.ru>
12312         Rename project-library-roots to project-external-roots
12314         * lisp/progmodes/project.el (project-library-roots): Rename to
12315         project-external-roots.
12316         (project-library-roots-function): Rename to
12317         project-vc-external-roots-function.  Only use it in the VC
12318         backend, for now.  Update project-external-roots accordingly.
12319         (project-vc-library-roots): Remove.
12320         (project-or-libraries-find-regexp):
12321         Rename to project-or-external-find-regexp.
12323         * lisp/progmodes/elisp-mode.el (elisp-library-roots):
12324         Rename to elisp-load-path-roots.
12326         * lisp/progmodes/etags.el (etags-library-roots): Remove.  Use
12327         an anonymous function for the default value of
12328         project-vc-external-roots-function.
12330 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12332         * idna.el (idna-decode-string-internal): Implement decoding.
12334 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12336         Further IDNA tweaks
12338         (idna-encode-string): Make idna-encode-string safe for
12339         non-ASCII use.
12341 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12343         Clean up the code slightly
12345 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12347         Added basic idna encoding support
12349         * lisp/net/idna.el: New file.
12351 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
12353         Disconnection fixes for erc
12355         * lisp/erc/erc-backend.el (erc-server-reconnect-p): Don't
12356         reconnect if the user has disconnected explicitly (bug#4589).
12358 2015-12-27  Thomas Riccardi  <riccardi.thomas@gmail.com>  (tiny change)
12360         Further erc asynch fixes
12362         * lisp/erc/erc-backend.el (erc-process-sentinel-2): Make
12363         erc-server-connect to return even if the connection is not
12364         ready.  Then erc-open and erc-server-reconnect do the
12365         same. (bug#5650).
12367 2015-12-27  Vivek Dasmohapatra  <vivek@etla.org>
12369         Make erc connect asynchronously
12371         * lisp/erc/erc-backend.el (erc-server-reconnect): Use it to
12372         reconnect asynchronously.
12374         * lisp/erc/erc-backend.el (erc-open-network-stream): New function (bug#5650).
12376 2015-12-27  Deniz Dogan  <deniz@dogan.se>
12378         Clear erc user list upon disconnection
12380         * lisp/erc/erc-backend.el (erc-process-sentinel): Clear channel user
12381         lists upon disconnection.  This prevents invalid channel
12382         user lists when reconnecting (bug#10947).
12384 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12386         Don't bug out in erc after waking from sleep
12388         * erc-backend.el (erc-server-send-ping): If the server has
12389         closed connection, this may already have been detected and
12390         `erc-server-last-received-time' has been set to nil (bug#13608).
12392 2015-12-27  David Edmondson  <dme@dme.org>
12394         Proxy error in erc with multiple clients
12396         * lisp/erc/erc.el (erc-channel-receive-names): Fix errors
12397         generated when multiple IRC clients talk to a single IRC proxy
12398         (bug#19034).
12400 2015-12-27  Dima Kogan  <dima@secretsauce.net>
12402         Ensure that we don't have several timers in erc
12404         * lisp/erc/erc-backend.el (erc-server-setup-periodical-ping): Checks
12405         for existing timers in the alist before adding new ones.  If a
12406         timer already exists, it is cancelled and
12407         overwritten. (bug#19292).
12409 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12411         * lisp/gnus/mml-sec.el: Fix warnings by adding autoloads
12412         (bug#18718).
12414 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12416         * lisp/erc/erc-log.el (erc-log-setup-logging): Insert the previous log
12417         at the start of the buffer, not at the end (bug#20496).
12419 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12421         * lisp/net/eww.el (eww-setup-buffer): Restore left-to-right defaults.
12423 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12425         Don't join erc channels doubly
12427         * erc-join.el (erc-autojoin-channels): Don't join channels
12428         more than once (if you have several nicks) (bug#20695).
12430 2015-12-27  Eli Zaretskii  <eliz@gnu.org>
12432         Avoid leaving "ghost" of mouse pointer on MS-Windows
12434         * src/w32term.c (frame_set_mouse_pixel_position):
12435         * src/w32fns.c (Fw32_mouse_absolute_pixel_position): Momentarily
12436         disable "mouse trails" when moving the mouse pointer.  (Bug#22247)
12437         * src/w32term.c (frame_set_mouse_pixel_position): Include
12438         w32common.h.
12440 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
12442         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): Fix typo in last check-in.
12444 2015-12-27  Jens Lechtenboerger  <jens.lechtenboerger@fsfe.org>
12446         Identify unsafe combinations of Bcc and encryption
12448         * lisp/gnus/gnus-util.el (gnus-subsetp): New function
12449         * lisp/gnus/mml-sec.el (mml-secure-safe-bcc-list): New variable
12450         * lisp/gnus/mml-sec.el (mml-secure-bcc-is-safe): New function
12452 2015-12-27  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
12454         Fix auth source lookups from erc with port numbers
12456         * lisp/erc/erc.el (erc-open): `auth-source' wants strings, not port
12457         numbers (bug#20541).
12459 2015-12-27  Fran Litterio  <flitterio@gmail.com>
12461         Run erc-kill-channel-hook always on exit
12463         * lisp/erc/erc.el (erc-kill-buffer-function): Run erc-kill-channel-hook
12464         when erc-kill-queries-on-quit is set (bug#21187).
12466 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
12468         Spelling fix
12470         * test/automated/url-parse-tests.el:
12471         (url-generic-parse-url/same-document-reference):
12472         Rename from url-generic-parse-url/same-decument-reference.
12474 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
12476         Reword initial *scratch* for brevity, appearance
12478         * lisp/startup.el (initial-scratch-message):
12479         Reword to avoid apostrophes, and to make it shorter.
12480         See the thread starting in:
12481         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg01241.html
12483 2015-12-26  Leo Liu  <sdl.web@gmail.com>
12485         Add ert-deftest to lisp-mode.el
12487         * lisp-mode.el (lisp-imenu-generic-expression,
12488           lisp-el-font-lock-keywords-1): Add ert-deftest.
12490 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12492         Mark imap changes as not needing doc changes
12494         * imap.el (imap-ssl-open): Remove
12496 2015-12-26  Lars Ingebrigtsen  <larsi@gnus.org>
12498         Use built-in encryption in imap.el
12500         * lisp/net/imap.el (imap-ssl-program): Remove (bug#21134).
12501         (imap-starttls-open): Use open-network-stream instead of starttls.el.
12502         (imap-tls-open): Use open-network-stream instead of tls.el.
12504 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12506         Don't try using /bin/sh in artist.el on MS-Windows
12508         * lisp/textmodes/artist.el (artist-figlet-get-font-list-windows):
12509         New function.
12510         (artist-figlet-choose-font): Use it on MS-Windows and MS-DOS.
12511         (Bug#20167)
12513 2015-12-26  Wolfgang Jenkner  <wjenkner@inode.at>
12515         Always define gmalloc etc. in src/gmalloc.c
12517         This is a work-around to prevent the compiler from using semantic
12518         knowledge about malloc for optimization purposes.  E.g., gcc 5.2
12519         with -O2 replaces most of calloc's definition by a call to calloc;
12520         see Bug#22085.
12521         * src/gmalloc.c [!HYBRID_MALLOC] (malloc, realloc, calloc)
12522         (aligned_alloc, free): Do not undef.  Instead, define these as
12523         functions (perhaps renamed to gmalloc etc.) in terms of gmalloc etc.
12525 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12527         Fix documentation of browse-url browser-related functions
12529         * lisp/net/browse-url.el (browse-url)
12530         (browse-url-default-browser, browse-url-default-windows-browser)
12531         (browse-url-default-macosx-browser, browse-url-chromium)
12532         (browse-url-kde, browse-url-text-xterm): Clarify the usage of ARGS
12533         and NEW-WINDOW arguments in these functions.  (Bug#19421)
12535 2015-12-26  Paul Eggert  <eggert@cs.ucla.edu>
12537         Propagate Bug#14412 fix to backtrace_eval_unrewind
12539         * src/eval.c (unbind_to): Redo so that the FALLTHROUGH!! comment
12540         becomes accurate again. This shouldn’t affect behavior.
12541         (backtrace_eval_unrewind): Apply the recent unbind_to fix here, too.
12543 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12545         Don't produce non-ASCII characters in *scratch*
12547         * lisp/startup.el (initial-scratch-message): Quote apostrophes to
12548         avoid producing non-ASCII characters in the *scratch* buffer's
12549         commentary.
12551 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12553         Document changes in 'compare-windows'
12555         * lisp/vc/compare-w.el (compare-windows-removed)
12556         (compare-windows-added): Doc fix.
12558         * doc/emacs/files.texi (Comparing Files): Document the changes in
12559         window selection by 'compare-windows'.
12561 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12563         Document 'vc-annotate-background-mode'
12565         * doc/emacs/maintaining.texi (Old Revisions): Document
12566         'vc-annotate-background-mode'.
12568 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12570         Document 'vc-region-history'
12572         * doc/emacs/maintaining.texi (VC Change Log): Document
12573         'vc-region-history'.
12575 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12577         Improve documentation of 'vc-push'
12579         * doc/emacs/maintaining.texi (Pulling / Pushing): Expand and
12580         improve the documentation of 'vc-push'.
12582         * lisp/vc/vc.el (vc-pull, vc-push): Doc fix.
12584 2015-12-26  Alain Schneble  <a.s@realize.ch>
12586         Include the tests for the URL parsing fixes
12588 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12590         Document 'url-user-agent'.
12592         * lisp/url/url-http.el (url-user-agent): Move from here...
12593         * lisp/url/url-vars.el (url-user-agent): ...to here.  This is to
12594         keep all the URL defcustoms in one place, and also have it defined
12595         whenever the URL library is loaded.
12597         * doc/misc/url.texi (Customization): Document 'url-user-agent'.
12599 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12601         Document protocols supported by URL library via Tramp
12603         * doc/misc/url.texi (Tramp): New node, describes the URL schemes
12604         supported via Tramp.
12605         (Supported URL Types, file/ftp, rlogin/telnet/tn3270): Mention
12606         Tramp.
12608 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12610         Document changes in Shell-script mode
12612         * lisp/progmodes/sh-script.el (sh-mode, sh-set-shell): Document
12613         the 'sh-shell' file-local variable.
12614         (top level): Add an auto-load form to avoid byte-compiler warning
12615         about 'comint-send-string'.
12617 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12619         Fix documentation of 'ses-define-local-printer'
12621         * doc/misc/ses.texi (Printer functions): Fix whitespace between
12622         sentences and punctuation.  Add an index entry for
12623         'ses-define-local-printer'.
12625 2015-12-26  Shakthi Kannan  <shakthimaan@gmail.com>
12627         Document 'ert-summarize-tests-batch-and-exit'
12629         * doc/misc/ert.texi (Running Tests in Batch Mode): Document
12630         'ert-summarize-tests-batch-and-exit'.
12632 2015-12-26  Eli Zaretskii  <eliz@gnu.org>
12634         Avoid assertion violation in unbind_to
12636         * src/eval.c (unbind_to) <SPECPDL_LET>: Avoid assertion violation
12637         if we get here with an object that is not a symbol.  (Bug#14412)
12639 2015-12-25  Andreas Schwab  <schwab@linux-m68k.org>
12641         Don't treat /foo/bar:mumble as ange-ftp address
12642         * lisp/net/browse-url.el (browse-url-filename-alist): Match colons
12643         only in the first component.  (bug#5362)
12645 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12647         Make sure *scratch* etc. use forward slashes in its default-directory
12649         * lisp/startup.el (normal-top-level): On MS-Windows, convert
12650         backslashes to forward slashes while decoding default-directory
12651         of the initially-created buffers.
12653 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12655         Restore info about the build host in bug reports
12657         * lisp/mail/emacsbug.el (report-emacs-bug): Report the system on
12658         which Emacs was built.  This is important information for
12659         investigating bug reports reported by users who don't build their
12660         Emacs.
12662 2015-12-25  Eli Zaretskii  <eliz@gnu.org>
12664         Fix bootstrap broken by changes related to OS X file-name encoding
12666         * lisp/international/ucs-normalize.el (eval-when-compile): Make
12667         sure char-code-property-alist includes elements that allow access
12668         to 'decomposition' and 'canonical-combining-class' Unicode
12669         properties, as compiling ucs-normalize.el requires that.
12670         * lisp/loadup.el (featurep 'ns): Load ucs-normalize and ns-win
12671         only of charprop.el was already loaded.
12673         * src/Makefile.in ($(lispsource)/international/ucs-normalize.elc):
12674         New order-only dependency.
12676 2015-12-25  Leo Liu  <sdl.web@gmail.com>
12678         * lisp/ido.el (ido-add-virtual-buffers-to-list):
12679         Use bookmark-get-filename.
12681 2015-12-25  Michael Albinus  <michael.albinus@gmx.de>
12683         Make tramp-test29-vc-registered more robust
12685         * test/automated/tramp-tests.el (tramp-test29-vc-registered):
12686         Move `bzr' case down.  Skip test when `vc-create-repo' fails.
12687         Remove instrumentation.
12689 2015-12-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12691         * lisp/term/x-win.el (x-gtk-stock-map): Fix typo.
12693 2015-12-23  Katsumi Yamaoka  <yamaoka@jpl.org>
12695         Fix `gnus-union' so as to behave like `cl-union'
12697         * lisp/gnus/gnus-group.el (gnus-group-prepare-flat):
12698         Make gnus-union use `equal' to compare items in lists.
12700         * lisp/gnus/gnus-util.el (gnus-union):
12701         Make it behave like cl-union partially.
12703 2015-12-23  Paul Eggert  <eggert@cs.ucla.edu>
12705         Fix dired.c typo with ptrdiff_t vs Lisp_Object
12707         * src/dired.c (file_name_completion): Don't assume Lisp_Object is
12708         an integer type, fixing a problem introduced in the recent fix for
12709         Bug#22169.
12711 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
12713         Document default process sentinel more prominently
12715         * doc/lispref/processes.texi (Asynchronous Processes): Mention the
12716         defaults for process filter and sentinel.  Provide cross-references.
12717         (Process Information): Provide cross-references to where filters
12718         and sentinels are described.
12719         (Filter Functions): Add an index entry for "default filter".
12720         (Sentinels): Add a few status messages not documented previously.
12721         Resolve the "killed" confusion.  Document and describe the default
12722         sentinel.  (Bug#22220)
12724 2015-12-23  Eli Zaretskii  <eliz@gnu.org>
12726         Fix file-name completion on OS X
12728         * src/dired.c (file_name_completion): Reject false matches due to
12729         file-name-coding-systems that decompose characters when encoding
12730         file names, by comparing decoded file names as well.  (Bug#22169)
12731         (syms_of_dired) <Qdecomposed_characters>: New DEFSYM.
12733         * lisp/international/ucs-normalize.el (utf-8-hfs): Give it a
12734         non-nil 'decomposed-characters' property.
12736 2015-12-23  Anders Lindgren  <andlind@gmail.com>
12738         File-name completion of non-ASCII characters on OS X (bug#22169)
12740         The coding system `utf-8-nfd', locally defined in ns-win.el,
12741         didn't provide a :pre-write-conversion method, causing file name
12742         completion of non-ASCII characters to fail.  Solved by using the
12743         `utf-8-hfs' coding system provided by `ucs-normalize'.
12745         * lisp/loadup.el: Load international/ucs-normalize (when building
12746         for ns).
12748         * lisp/term/ns-win.el (utf-8-nfd): Made `utf-8-nfd' as alias for
12749         `utf-8-hfs' and removed the old implementation.  Set `utf-8-hfs'
12750         as the file name coding system.
12752         * src/nsfns.m (ns-convert-utf8-nfd-to-nfc): Removed.
12754 2015-12-22  Tom Tromey  <tom@tromey.com>
12756         Fix bug #18588 by making bug-reference-bug-regexp more lenient
12758         * lisp/progmodes/bug-reference.el (bug-reference-bug-regexp): Accept
12759         "bug NNNN".  (Bug #18588)
12761 2015-12-22  Tom Tromey  <tom@tromey.com>
12763         add some cl-* aliases to lisp-mode imenu
12765         * (lisp-imenu-generic-expression): Add cl-define-compiler-macro,
12766         cl-defgeneric, and cl-defmethod.
12768 2015-12-22  Tom Tromey  <tom@tromey.com>
12770         Make a variable buffer-local
12772         * lisp/generic-x.el (generic-rul-mode-setup-function): Make
12773         font-lock-syntax-table buffer-local.  (Bug #21627)
12775 2015-12-22  Eli Zaretskii  <eliz@gnu.org>
12777         Fix decoding of text in URLs retrieved by EWW
12779         * lisp/net/eww.el (eww-render): Pass 'charset' to
12780         'eww-display-raw'.  Use the value of 'last-coding-system-used', if
12781         non-nil, to set 'buffer-file-coding-system' of the buffer where we
12782         show the URL.
12783         (eww-display-html, eww-display-raw): Decode the text correctly,
12784         using the charset found in the headers, and defaulting to UTF-8.
12785         If the user told us to use a specific encoding, override the
12786         charset from the headers.  (Bug#22222)
12788 2015-12-22  Alan Mackenzie  <acm@muc.de>
12790         Fix a coding error in c-forward-<>-arglist-recur.  Fixes bug#22156
12792         * lisp/progmodes/cc-engine.el (c-forward-<>-arglist-recur): Remove unused
12793         variable `tmp'.
12794         After a failed search for a matching ">", restore point before continuing.
12796 2015-12-22  Michael Albinus  <michael.albinus@gmx.de>
12798         Instrument Tramp tests
12800         * test/automated/tramp-tests.el (tramp-test29-vc-registered)
12801         (tramp--test-utf8): Instrument tests.
12803 2015-12-22  Martin Rudalics  <rudalics@gmx.at>
12805         Fix `display-buffer' call in `display-message-or-buffer' (Bug#22221)
12807         * lisp/simple.el (display-message-or-buffer): Call
12808         `display-buffer' with ACTION instead of NOT-THIS-WINDOW
12809         (Bug#22221).
12811 2015-12-21  Juri Linkov  <juri@linkov.net>
12813         * lisp/saveplace.el (toggle-save-place, save-place-to-alist)
12815         (save-places-to-alist, save-place-dired-hook):
12816         Check for dired-subdir-alist.  (Bug#19851)
12818 2015-12-21  Paul Eggert  <eggert@cs.ucla.edu>
12820         Add FIXME comment re stack overflow and modules
12822 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
12824         Revert some recent emacs-module commentary
12826         Most of the recently-added commentary was incorrect, due to the
12827         possibility of stack overflow.
12829 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
12831         Spelling fix: prefer "cooperate" to "co-operate"
12833 2015-12-20  Paul Eggert  <eggert@cs.ucla.edu>
12835         Port undo fixes to -fno-common
12837         Port recent fix for Bug#21968 to platforms like 'gcc -fno-common'.
12838         * src/keyboard.c, src/keyboard.h (point_before_last_command_or_undo)
12839         (buffer_before_last_command_or_undo):
12840         Declare in keyboard.h, and define in keyboard.c,
12841         instead of assuming the traditional Unix relaxed ref-def linkage.
12843 2015-12-20  Philipp Stephani  <phst@google.com>
12845         Improve commentary for emacs-module.c
12847         * src/lisp.h: Document emacs-module.c assumptions about EQ and NILP.
12848         * src/emacs-module.c (module_non_local_exit_get): Document that we
12849         cannot use the current implementation.
12850         (module_is_not_nil, module_eq): Document assumptions about EQ and
12851         NILP.
12853 2015-12-20  Michael Albinus  <michael.albinus@gmx.de>
12855         Suppress test on Mac OS X
12857         * test/automated/tramp-tests.el (tramp--test-darwin-p): New defun.
12858         (tramp--test-utf8): Use it.
12860 2015-12-20  Alan Mackenzie  <acm@muc.de>
12862         Merge branch 'scratch/follow' into emacs-25
12864         This allows Isearch, etc., to work well when Follow Mode is active.
12866 2015-12-19  Michael Albinus  <michael.albinus@gmx.de>
12868         * lisp/net/tramp-sh.el (tramp-get-ls-command-with-w-option):
12869         Improve check.
12871 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12873         Fix last commit
12875         * doc/emacs/rmail.texi (Rmail Deletion): Document new behavior of 'u'
12876         with numeric argument.
12878 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12880         Document new features of Rmail
12882         * doc/emacs/rmail.texi (Rmail Summary Edit, Rmail Deletion):
12883         Document new behavior of 'd' and 'C-d' with numeric argument.
12884         (Rmail Display): Document the rendering of HTML MIME parts.
12886 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12888         Improve documentation of new cl-lib functions
12890         * doc/misc/cl.texi (Predicates on Numbers, Numerical Functions):
12891         Fix wording.
12893 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12895         Document the new feature of 'minibuffer-with-setup-hook'
12897         * lisp/files.el (minibuffer-with-setup-hook): Clarify how FUN is
12898         added to `minibuffer-setup-hook'.
12900 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12902         Document new features of Font Lock
12904         * doc/lispref/modes.texi (Other Font Lock Variables): Document
12905         'font-lock-flush-function' and 'font-lock-ensure-function'.
12906         (Font Lock Basics): Document the basic fontification functions
12907         referenced in "Other Font Lock Variables".
12909         * lisp/font-lock.el (font-lock-flush, font-lock-ensure): Doc fix.
12911 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12913         Document new features of Rectangle mode
12915         * doc/emacs/killing.texi (Rectangles): Document "C-x C-x" in
12916         rectangle-mark-mode.
12918 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12920         Manual followup to last change
12922         * doc/lispref/display.texi (Displaying Messages): Sync with the
12923         doc string.  (Bug#22210)
12925 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12927         Clarify doc string of 'display-message-or-buffer'
12929         * lisp/simple.el (display-message-or-buffer): Doc fix.  Suggested
12930         by Sebastian Wiesner <swiesner@lunaryorn.com>.  (Bug#22210)
12932 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12934         * doc/emacs/emacs.texi (Top): Update top-level menus.
12936         * doc/lispref/elisp.texi (Top): Update top-level menus.
12938 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12940         Document how to avoid file-local variables that aren't
12942         * doc/emacs/custom.texi (Specifying File Variables): Describe how
12943         to prevent Emacs from interpreting unrelated text as file-local
12944         variables.  (Bug#22166)
12946 2015-12-19  Dave Thomas  <dave@pragprog.org>  (tiny change)
12948         Fix a typo in eterm-color's termcap entry
12950         * lisp/term.el (term-termcap-format): Fix a typo in the "ue="
12951         entry.  (Bug#22184)
12953 2015-12-19  Eli Zaretskii  <eliz@gnu.org>
12955         Allow 'browse-url-emacs' visit non-existent URLs
12957         * lisp/url/url-handlers.el (url-insert-file-contents): Don't
12958         signal an error if VISIT is non-nil, to more faithfully emulate
12959         the behavior of 'insert-file-contents'.  (Bug#22160)
12961 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
12963         Remove SunOS 4.x cruft
12965         Support for SunOS 4.x was removed in Emacs 23 but some cruft was left behind.
12966         * lib-src/pop.c [sun]: Remove no-longer-needed include.
12967         * lwlib/xlwmenu.c (SUNSO41): Remove.
12969 2015-12-18  Paul Eggert  <eggert@cs.ucla.edu>
12971         Merge from gnulib
12973         This mostly commentary fixes.
12974         * doc/misc/texinfo.tex, lib/intprops.h: Copy from gnulib.
12975         * lib/gnulib.mk: Regenerate with new gnulib-tool.
12977 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
12979         Minor fixes in Tramp
12981         * lisp/net/tramp-sh.el (tramp-do-file-attributes-with-ls):
12982         Reorder ls arguments.
12984         * lisp/net/tramp.el (tramp-dissect-file-name): Fix docstring.
12986 2015-12-18  Michael Albinus  <michael.albinus@gmx.de>
12988         Make tramp a built-in package
12990         * lisp/finder.el (finder-compile-keywords): Update
12991         `package--builtins' also when Version: keyword is available.
12993         * lisp/net/trampver.el: Add Version: keyword.
12994         (tramp-version): Change it to "2.2.13.25.1", in order to be
12995         compatible with `version-to-list'.
12997 2015-12-18  Lele Gaifax  <lele@metapensiero.it>
12999         * etc/tutorials/TUTORIAL.it: Update and fix typos.  (Bug#22187)
13001 2015-12-18  Alan Mackenzie  <acm@muc.de>
13003         Rename `recenter-group' to `recenter-window-group'
13005         * doc/lispref/windows.texi (Textual Scrolling)
13006         * lisp/window.el (top level, recenter-group)
13007         * lisp/follow.el (follow-mode)
13008         * lisp/isearch.el (isearch-back-into-window): Rename `recenter-group' to
13009         `recenter-window-group' and `recenter-group-function' to
13010         `recenter-window-group-function'.
13012 2015-12-18  Eli Zaretskii  <eliz@gnu.org>
13014         Fix vertical-motion in tabulated-list mode
13016         * src/indent.c (Fvertical_motion): When moving from line beginning
13017         to point under line truncation, assume overshoot by one line only
13018         if point actually lies beyond the window's right margin.
13019         (Bug#22194)
13021 2015-12-18  Martin Rudalics  <rudalics@gmx.at>
13023         Don't have help functions call x-display-pixel-width/-height on ttys
13025         * lisp/help.el (temp-buffer-max-height, temp-buffer-max-width):
13026         Don't call x-display-pixel-width/-height on ttys.
13028 2015-12-17  Dmitry Gutov  <dgutov@yandex.ru>
13030         Use 'hg id' in vc-hg-previous-revision
13032         * lisp/vc/vc-hg.el (vc-hg-previous-revision):
13033         Use 'hg id' to retrieve it (bug#22032).
13035 2015-12-17  Alan Mackenzie  <acm@muc.de>
13037         * lisp/follow.el (follow-sit-for): Remove (it's redundant).
13039 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13041         Fix a typo in the Emacs manual
13043         * doc/emacs/trouble.texi (Sending Patches): Fix a typo.  Reported
13044         by Lele Gaifax <lele@metapensiero.it>.  (Bug#22193)
13046 2015-12-17  Eli Zaretskii  <eliz@gnu.org>
13048         Fix parsing netrc entries with ports
13050         * lisp/gnus/auth-source.el (auth-source-ensure-strings): Don't
13051         make a list out of 't'.  (Bug#22188)
13053         * test/automated/auth-source-tests.el
13054         (auth-source-test-netrc-parse-entry): New test.
13056 2015-12-17  Paul Eggert  <eggert@cs.ucla.edu>
13058         Fix typo in Doug Lea malloc configure log
13060         * configure.ac (emacs_cv_var_doug_lea_malloc):
13061         Fix typo that confused the log output of 'configure'.
13063 2015-12-16  Nicolas Petton  <nicolas@petton.fr>
13065         * etc/NEWS: Mention the new pcase patterns `seq' and `map'.
13067 2015-12-16  Alan Mackenzie  <acm@muc.de>
13069         * etc/NEWS: Move entry on pcase to correct section
13071         (Accidentally omitted from previous commit)
13073 2015-12-16  Alan Mackenzie  <acm@muc.de>
13075         Add documentation for changes to Show Paren mode.
13077         * lisp/paren.el (show-paren-highlight-openparen): Enhance doc string.
13079         * doc/emacs/programs.texi (Matching): Add descriptions of some pertinent user
13080         options, including the new show-paren-when-point-inside-paren and
13081         show-paren-when-point-in-periphery.
13083         * etc/NEWS (.. Specialized Modes ...): Add an entry for Show Paren mode.
13084         Move an entry on pcase to the Lisp Changes section.
13086 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13088         Document Eldoc changes
13090         * doc/emacs/programs.texi (Lisp Doc): Document Global Eldoc mode.
13092 2015-12-16  Eli Zaretskii  <eliz@gnu.org>
13094         Fix invocation of Python and Guile interpreters from gdb-mi
13096         * lisp/progmodes/gdb-mi.el (gdb-control-commands-regexp): Add
13097         commands for interactive Python and Guile interpreters.
13098         (gdb-send): Recognize various ways of exiting from Python and
13099         Guile interpreters and returning to GDB.  For details, see
13100         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00693.html
13101         and http://stackoverflow.com/questions/31514741.
13103 2015-12-16  Paul Eggert  <eggert@cs.ucla.edu>
13105         Remove attempt to use C11 threads
13107         C11 threads are not needed for Emacs now, and their use is causing
13108         hassles on FreeBSD 10.x.  Problem reported by Ashish SHUKLA in:
13109         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00648.html
13110         * configure.ac: Do not check for C11 threads. Remove unnecessary
13111         fiddling with CPPFLAGS when configuring pthreads.
13112         * src/emacs-module.c (main_thread, check_main_thread)
13113         (module_init): Do not worry about C11 threads.
13115 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13117         Set utf8 encoding with stty in Tramp
13119         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13120         Move up uname check.  Handle Mac OS X eol encoding.  Set utf8
13121         encoding with stty.
13123 2015-12-15  Alan Mackenzie  <acm@muc.de>
13125         Tidy up documentation associated with window groups.
13127         * doc/lispref/windows.texi (Basic Windows): Add an @anchor for "Window
13128         Groups".  Correct example function to `window-group-start'.
13129         (Window Start and End, Textual scrolling): Point to the new anchor.  State
13130         that (most of) the args in window group functions have the same meaning as for
13131         the corresponding window primitives.
13133         * doc/lispref/positions.texi (Screen Lines).  Same as above.
13135 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13137         Complete last commit
13139         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13140         Move uname check up.  Handle Mac OS X eol encoding.
13142 2015-12-15  Michael Albinus  <michael.albinus@gmx.de>
13144         Handle Mac OS X eol encoding in Tramp
13146         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13147         Handle Mac OS X eol encoding.
13149 2015-12-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13151         Fix variable name typo in compute_tip_xy
13153         * src/w32fns.c (compute_tip_xy):
13154         * src/xfns.c (compute_tip_xy): Modify *root_x instead of *root_y
13155         when `right' is integer.
13157 2015-12-14  foudfou  <foudil.newbie+git@gmail.com>  (tiny change)
13159         * lisp/ibuffer.el: Add ability to (un-)mark or delete buffers in the region.
13161 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13163         Revert "Fix rx matcher overflow without limiting"
13165         This reverts commit fe27e037663d36be3e5741c2ce86ab4ee8017db1.
13167 2015-12-14  Alan Mackenzie  <acm@muc.de>
13169         Ispell: Bind isearch-regexp-function to nil around call to isearch..-new-loop
13171         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay): bind
13172         isearch-regexp-function to nil around call to isearch-lazy-highligh-new-loop.
13174 2015-12-14  Tassilo Horn  <tsdh@gnu.org>
13176         Fix rx matcher overflow without limiting
13178         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve last
13179         change to the regexp without imposing a limit on the length of the
13180         options.
13182 2015-12-14  Alan Mackenzie  <acm@muc.de>
13184         Enhance ispell-skip-region-alist by generating part of it at runtime.
13186         * lisp/textmodes/ispell.el (ispell--\\w-filter, ispell--make-\\w-expression)
13187         (ispell--make-filename-or-URL-re): New functions which generate a regexp.
13188         (ispell-skip-region-alist): Remove the bit that matches a filename/URL, etc.
13189         (ispell-begin-skip-region-regexp, ispell-skip-region-list, ispell-message):
13190         Include the result of ispell--make-filename-or-URL-re in regexps.
13192 2015-12-14  Glenn Morris  <rgm@gnu.org>
13194         * build-aux/gitlog-to-emacslog: Ignore more pointless merge commits.
13196 2015-12-14  Alan Mackenzie  <acm@muc.de>
13198         Replace GROUP argument in six window primitives by new functions.
13200         * doc/lispref/windows.texi (Window Start and End, Textual Scrolling)
13201         * doc/lispref/positions.texi (Screen Lines): Remove optional GROUP argument
13202         from description of six window functions.  Add in description of new functions
13203         window-group-start, window-group-end, set-window-group-start,
13204         pos-visible-in-window-group-p, recenter-group and move-to-window-group-line,
13205         together with the six variables indirecting to the pertinent group
13206         functions.
13208         * src/window.c
13209         * src/keyboard.c: Revert the commit from 2015-11-11 12:02:48, in so far as it
13210         applies to these two files, which added the GROUP argument to six window
13211         primitives.
13213         * lisp/follow.el (follow-mode): Use updated variable names for the indirected
13214         functions.
13216         * lisp/isearch.el (isearch-update, isearch-done, isearch-string-out-of-window)
13217         (isearch-back-into-window, isearch-lazy-highlight-new-loop)
13218         (isearch-lazy-highlight-search, isearch-lazy-highlight-update): Replace calls
13219         to window primitives (e.g. window-start) with a GROUP argument by calls to
13220         new functions (e.g. window-group-start).
13222         * lisp/ispell.el (ispell-command-loop): Replace call to
13223         pos-visible-in-window-p with pos-visible-in-window-group-p.
13225         * lisp/window.el (window-group-start, window-group-end)
13226         (set-window-group-start, recenter-group, pos-visible-in-window-group-p)
13227         (selected-window-group, move-to-window-group-line): New functions.
13228         (window-group-start-function, window-group-end-function)
13229         (set-window-group-start-function, recenter-group-function)
13230         (pos-visible-in-window-group-p-function, selected-window-group-function)
13231         (move-to-window-group-line-function): New variables.
13233 2015-12-14  Vitorio Miguel  <vdrbandeiras@gmail.com>  (tiny change)
13235         * etc/tutorials/TUTORIAL.pt_BR: Fix a typo.  (Bug#22165)
13237 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13239         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
13241 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13243         Improve regex to not trigger stack overflow
13245         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Improve regex in
13246         order not to trigger a stack overflow in regex matcher with unbalanced
13247         brackets (bug#22146).
13249 2015-12-13  Eli Zaretskii  <eliz@gnu.org>
13251         Fix visiting files with raw-text
13253         * src/fileio.c (Finsert_file_contents): Fix setting buffer unibyte
13254         when some stuff was actually read.  (Bug#22162)
13256 2015-12-13  Tassilo Horn  <tsdh@gnu.org>
13258         Fix regex matching keyval labels
13260         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Fix regexp
13261         matching keyval labels.
13263 2015-12-13  Michael Albinus  <michael.albinus@gmx.de>
13265         * lisp/ido.el (ido-file-name-all-completions-1): Do not raise an error
13267         ... in case of Tramp.  (Bug#20821)
13269 2015-12-12  Paul Eggert  <eggert@cs.ucla.edu>
13271         Fix performance regression with gcc -O0
13273         This fixes the smaller performance hit that I noted in:
13274         https://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00357.html
13275         * src/alloc.c (macro_XPNTR_OR_SYMBOL_OFFSET, macro_XPNTR):
13276         * src/puresize.h (puresize_h_PURE_P)
13277         (puresize_h_CHECK_IMPURE):
13278         New macros, with the old contents of the functions.
13279         * src/alloc.c (XPNTR_OR_SYMBOL_OFFSET, XPNTR):
13280         * src/puresize.h (PURE_P, CHECK_IMPURE):
13281         Use the new macros.  Also macros, if DEFINE_KEY_OPS_AS_MACROS.
13282         * src/conf_post.h (ATTRIBUTE_UNUSED):
13283         * src/lisp.h (DEFINE_KEY_OPS_AS_MACROS): New macros.
13285 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13287         * lisp/emacs-lisp/package.el (package-unpack): Security check
13289         Check that we received the package we were offered.
13291 2015-12-12  Artur Malabarba  <bruce.connor.am@gmail.com>
13293         * lisp/emacs-lisp/package.el (package--compile): Don't activate
13295         `package-unpack' takes care of all activations now (other than
13296         `package-initialize).  `package--compile' now only compiles.
13298 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13300         Document the new bindings of <UP> and <DOWN> in the minibuffer
13302         * doc/emacs/mini.texi (Minibuffer History): Describe the new
13303         bindings of <UP> and <DOWN> in the minibuffer.
13305 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13307         Document new features of Ido
13309         * doc/misc/ido.texi (Misc): Document 'C-S-b'.
13311 2015-12-12  Martin Rudalics  <rudalics@gmx.at>
13313         Fix frame height calculations with added menu bar on Windows (Bug#22105)
13315         * doc/lispref/frames.texi (Parameter Access): Mention pitfalls
13316         when simultaneously specifying multiple parameters for
13317         `modify-frame-parameters' that all may change the frame's size.
13318         * src/w32fns.c (x_set_menu_bar_lines): Don't set
13319         windows_or_buffers_changed here.
13320         (my_create_tip_window, Fx_show_tip): Call AdjustWindowRect
13321         with third argument false.
13322         * src/w32menu.c (set_frame_menubar): Set
13323         windows_or_buffers_changed here.
13324         * src/w32term.c (x_set_window_size): Determine third argument of
13325         AdjustWindowRect from whether the frame has a menu bar and not
13326         from whether it wants one.
13328 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13330         Document the change in interactive shell mode
13332         * doc/emacs/misc.texi (Interactive Shell): Document that the
13333         '*shell*' buffer by default displays in a new window.
13335 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13337         Document new features of package.el
13339         * doc/emacs/package.texi (Package Menu): Document the 'external'
13340         status and the new menu commands.
13341         (Package Installation): Document archive priorities.
13343         * lisp/emacs-lisp/package.el (package-archive-priorities): Doc fix.
13344         (package-menu-hide-low-priority): Doc fix.
13346 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13348         Update and document new features of xterm support
13350         * doc/emacs/frames.texi (Text-Only Mouse): Document that
13351         track-mouse is supported by newer xterm versions.
13353 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13355         Document new features of Prettify Mode
13357         * doc/emacs/programs.texi (Misc for Programs): Document
13358         'prettify-symbols-compose-predicate' and
13359         'prettify-symbols-unprettify-at-point'.
13361         * lisp/progmodes/prog-mode.el (prettify-symbols-alist)
13362         (prettify-symbols-default-compose-p)
13363         (prettify-symbols-compose-predicate)
13364         (prettify-symbols--compose-symbol): Doc fixes.
13366 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13368         Document multi-mode indentation facilities
13370         * doc/lispref/text.texi (Mode-Specific Indent): Document
13371         'prog-indentation-context', 'prog-first-column', and 'prog-widen'.
13373         * lisp/progmodes/prog-mode.el (prog-indentation-context)
13374         (prog-widen): Doc fixes.
13376 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13378         Document 'vc-refresh-state'
13380         * doc/emacs/maintaining.texi (Version Control): Document
13381         'vc-refresh-state'.
13383         * lisp/vc/vc-hooks.el (vc-refresh-state): Doc fix.
13385 2015-12-12  Eli Zaretskii  <eliz@gnu.org>
13387         Fix echo for "C-u"
13389         * src/keyboard.c (command_loop_1): Undo last change.  It caused
13390         duplicate echo of C-u.  (Bug#22107)
13392 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13394         Avoid errors when creating files under SVN in new directory
13396         * lisp/vc/vc-svn.el (vc-svn-registered): Use
13397         file-accessible-directory-p, to avoid cd'ing to a non-existing
13398         directory, which signals an error on some systems.  (Bug#21984)
13399         (vc-svn-checkin): Call log-edit-extract-headers with 2 arguments.
13400         Use declare-function to avoid byte-compiler warnings.
13402 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13404         Improve Lua support in etags
13406         * lib-src/etags.c (Lua_functions): Skip spaces before looking for
13407         "function".
13409         * etc/NEWS: Mention improved Lua support by 'etags'.
13411         * test/etags/lua-src/test.lua (test): Add tests for indented
13412         function definitions.
13413         * test/etags/ETAGS.good_1:
13414         * test/etags/ETAGS.good_2:
13415         * test/etags/ETAGS.good_3:
13416         * test/etags/ETAGS.good_4:
13417         * test/etags/ETAGS.good_5:
13418         * test/etags/ETAGS.good_6:
13419         * test/etags/CTAGS.good: Adapt to the modified Lua tests.
13421 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13423         Fix 'this-command-keys' wrt prefix argument
13425         * src/keyboard.c (command_loop_1): Restore the feature whereby C-u
13426         was part of this-command-keys, but not of this-single-command-keys.
13427         (Bug#22107)
13429         * lisp/simple.el (internal-echo-keystrokes-prefix): Add
13430         commentary about the function's return value.
13432 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13434         * lisp/files.el (load-library): Doc fix.  (Bug#22140)
13436 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13438         Improve and document Ruby support in 'etags'
13440         * lib-src/etags.c (Ruby_suffixes): Add ".ruby".
13441         (Ruby_functions): Support "module" and overloaded operators.
13442         (Ruby_help): Mention "module".
13444         * test/etags/ruby-src/test.rb:
13445         * test/etags/ruby-src/test1.ruby: New files.
13446         * test/etags/Makefile (RBSRC): New tests.
13447         (SRCS): Add ${RBSRC}.
13448         * test/etags/ETAGS.good_1:
13449         * test/etags/ETAGS.good_2:
13450         * test/etags/ETAGS.good_3:
13451         * test/etags/ETAGS.good_4:
13452         * test/etags/ETAGS.good_5:
13453         * test/etags/ETAGS.good_6:
13454         * test/etags/CTAGS.good: Adapt to the new Ruby tests.
13456         * doc/man/etags.1: Mention Ruby support.
13457         * etc/NEWS: Mention Ruby support.
13459 2015-12-11  Xi Lu  <lx@shellcodes.org>
13461         Initial support for Ruby in 'etags'
13463         * lib-src/etags.c <Ruby_suffixes>: New variable.
13464         (lang_names): Add an entry for Ruby.
13465         (Ruby_functions): New function.  (Bug#22116)
13467 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13469         Clarify documentation of 'modify-frame-parameters'
13471         * doc/lispref/frames.texi (Parameter Access): Clarify what "ignored
13472         PARMs" mean for 'modify-frame-parameters'.
13474         * src/frame.c (Fmodify_frame_parameters): Clarify what "ignored
13475         PARMs" mean for this function.  (Bug#22104)
13477 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13479         Fix setting buffer unibyte when reading from a device
13481         * src/fileio.c (Finsert_file_contents): Call Fset_buffer_multibyte
13482         to make a (possibly non-empty) buffer unibyte.  (Bug#22096)
13484 2015-12-11  Eli Zaretskii  <eliz@gnu.org>
13486         Clarify documentation of 'values'
13488         * doc/lispref/eval.texi (Eval): Clarify that 'values' are not
13489         updated by any evaluation commands in 'lisp-interaction-mode'.
13490         (Bug#22056)
13492 2015-12-11  Anders Lindgren  <andlind@gmail.com>
13494         Fixed subversion vc error when opening file in new directory (bug#21984).
13496         * lisp/vc/vc-svn.el (vc-svn-registered): Check if directory exists.
13498 2015-12-09  Eli Zaretskii  <eliz@gnu.org>
13500         Yet another fix for when point ends up in invisible text
13502         * src/xdisp.c (redisplay_window): When someone forced
13503         window-start, and honoring that failed to show the cursor, try
13504         moving out of invisible text, before falling back to the middle of
13505         the window.  (Bug#22098)
13507 2015-12-09  Michael Albinus  <michael.albinus@gmx.de>
13509         Fix error in Tramp perl script for cygwin
13511         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not raise an
13512         error if file doesn't exist.
13514 2015-12-09  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
13516         Remove font workaround for limited outdated versions
13518         * src/macfont.m (mac_font_descriptor_get_adjusted_weight): Remove
13519         workaround for HiraginoSans-W7 on OS X 10.11 and 10.11.1.
13521 2015-12-09  Anders Lindgren  <andlind@gmail.com>
13523         Don't add "." to load path (bug#21104)
13525         When configured with --enable-locallisppath=no, which is the
13526         default for OS X, the load-path incorrectly was populated with ".".
13528         * src/lread.c (init_lread): Don't call `decode_env_path' when
13529         PATH_SITELOADSEARCH is empty.
13531 2015-12-08  Artur Malabarba  <bruce.connor.am@gmail.com>
13533         * lisp/emacs-lisp/package.el (package--with-response-buffer):
13535         Search for the blank-line in the right buffer.
13537 2015-12-08  Glenn Morris  <rgm@gnu.org>
13539         * test/automated/simple-test.el (undo-auto-boundary-timer): Update
13540         for recent change.
13542 2015-12-08  Glenn Morris  <rgm@gnu.org>
13544         Fix some display-warning usage.
13546         * lisp/files.el (hack-local-variables, hack-dir-local-variables):
13547         * lisp/calendar/diary-lib.el (diary-include-files, diary-sexp-entry):
13548         * lisp/calendar/holidays.el (calendar-holiday-list):
13549         * lisp/mail/rmailout.el (rmail-output-read-file-name):
13550         Fix display-warning usage.
13552 2015-12-07  Glenn Morris  <rgm@gnu.org>
13554         * lisp/calendar/cal-html.el: Require diary-lib.
13556         (cal-html-list-diary-entries): Handle no diary.  (Bug#21994)
13558 2015-12-07  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13560         Add Obsolete-since header to eudcb-ph.el
13562         * eudcb-ph.el: Add Obsolete-since header.
13564 2015-12-07  Paul Eggert  <eggert@cs.ucla.edu>
13566         Spelling fixes
13568         * doc/misc/calc.texi (Predefined Units): Use the bland modern
13569         scientific style for spelling the units “ampere” and
13570         “angstrom” rather than the older style “Ampere” and
13571         “Ångstrom”.  The latter spelling was wrong anyway (it should
13572         have been “Ångström”).
13573         * lisp/emacs-lisp/ert.el (ert--explain-equal-rec):
13574         Fix misspelling of ‘atom’ in code.
13576 2015-12-07  Eli Zaretskii  <eliz@gnu.org>
13578         Improve documentation of kill commands
13580         * lisp/simple.el (region-extract-function, delete-backward-char)
13581         (delete-forward-char, kill-region, copy-region-as-kill)
13582         (kill-ring-save): Better document the optional argument REGION in
13583         the doc strings.  Mention in the doc strings that text put in the
13584         kill-ring can be filtered by 'filter-buffer-substring'.
13586         * doc/lispref/text.texi (Kill Functions): Mention that functions
13587         described in this subsection can filter text they put in the
13588         kill-ring.  Add a cross-reference to "Buffer Contents" and an
13589         index entry.  Document the optional argument 'region' and its
13590         effect.
13591         (Bug#21315)
13593 2015-12-07  Alan Mackenzie  <acm@muc.de>
13595         Further progress making Isearch, Ispell, Replace work with Follow Mode.
13597         * lisp/follow.el: (follow-mode): Remove references to sit*-for-function, which
13598         no longer exists.  Add follow-post-command-hook to  three special purpose
13599         hooks at setup, and remove them at tear down.
13601         * lisp/isearch.el: (isearch-update): invoke isearch-update-post-hook before
13602         isearch-lazy-highlight-new-loop.
13603         (isearch-lazy-highlight-new-loop): Restore this function to what it previously
13604         was, merging the functionality of isearch-lazy-highlight-maybe-new-loop into
13605         it.
13606         (isearch-lazy-highlight-maybe-new-loop): function removed.
13608         * lisp/replace.el: (replace-update-post-hook): New hook variable.
13609         (perform-replace): Add second (nil) argument to looking-back.  Invoke
13610         replace-update-post-hook before calling replace-highlight.
13612         * lisp/textmodes/ispell.el: (ispell-update-post-hook): New hook variable.
13613         (ispell-command-loop): invoke ispell-update-post-hook.  Add GROUP argument to
13614         call of pos-visible-in-window-p.
13615         (ispell-display-buffer): Place *Choices* window at the top of the last window
13616         in a window group.
13618 2015-12-07  Alan Mackenzie  <acm@muc.de>
13620         Amend doc of `mapconcat': it can take sequences, not merely strings.
13622         * doc/lispref/functions.texi (Mapping Functions): Amend the doc of `mapconcat'
13623         to say that SEPARATOR and the results from FUNCTION may be any character
13624         sequences, not just strings.  Add an @xref to "Sequences Arrays Vectors".
13626 2015-12-07  Michael Albinus  <michael.albinus@gmx.de>
13628         Fix an utf8 problem for Tramp on BSD
13630         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13631         Make lax check for utf8.
13632         (tramp-get-remote-locale): Add "en_US.UTF-8" as candidate.
13634 2015-12-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
13636         Make eudcb-ph.el obsolete
13638         * doc/misc/eudc.texi: Bump version to 1.40.0.
13639         Remove PH/QI sections and mentions.
13640         * lisp/obsolete/eudcb-ph.el: Make obsolete.
13641         * lisp/net/eudc-vars.el (eudc-known-protocols): Remove ph.
13642         (eudc-ph-bbdb-conversion-alist): Make obsolete.
13643         * etc/NEWS: Mention this.  (Bug#21191)
13645 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13647         Remove overenthusiastic eassert
13649         * src/lisp.h (XSYMBOL): Remove eassert incorrectly added in
13650         previous change.  It breaks on MS-Windows --with-wide-int.
13651         Problem reported by Eli Zaretskii in:
13652         http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00275.html
13654 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13656         Pacify gcc -Wparentheses
13658         * src/xdisp.c (row_containing_pos): Reparenthesize.
13660 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13662         Port mod-test to 32-bit Emacs --without-wide-int
13664         * modules/mod-test/test.el (mod-test-sum-test):
13665         Bring back the 2**29 tests, but port them to 32-bit Emacs
13666         --without-wide-int.
13668 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
13670         Fix minor Tramp problems found on BSD
13672         * lisp/net/tramp-sh.el (tramp-perl-file-truename): Do not append
13673         trailing slash.  Quote apostrophes.
13674         (tramp-sh-handle-file-truename): Do not append trailing slash in
13675         the "ls" case.
13676         (tramp-get-ls-command-with-w-option): New defun.
13677         (tramp-do-file-attributes-with-ls)
13678         (tramp-do-directory-files-and-attributes-with-stat): Use it.
13680         * test/automated/tramp-tests.el
13681         (tramp-test31-special-characters-with-perl)
13682         (tramp-test31-special-characters-with-ls)
13683         (tramp-test32-utf8-with-perl, tramp-test32-utf8-with-ls):
13684         Suppress also readlink.
13686 2015-12-06  Eli Zaretskii  <eliz@gnu.org>
13688         Fix cursor display when invisible text is at line beginning
13690         * src/xdisp.c (redisplay_window): When scrolling fails to show
13691         point, prefer using the desired matrix if possible for finding the
13692         fallback glyph row for displaying the cursor.  (Bug#22098)
13693         (row_containing_pos): Exit the loop as soon as we hit the first
13694         disabled glyph row.  Otherwise we risk accessing garbled data and
13695         departing to the no-no land.
13697 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13699         Improve module interface when WIDE_EMACS_INT
13701         * src/emacs-module.c (plain_values): New constant.
13702         (module_nil): Now a constant.
13703         (Finternal_module_call, value_to_lisp_bits, lisp_to_value_bits)
13704         (syms_of_module): Use if, not #ifdef, so that both sides are
13705         checked at compile-time, and so that GCC doesn’t complain
13706         about an unused var in the typical case.  Also, depend on
13707         plain_values, not on WIDE_EMACS_INT; the code shouldn’t assume
13708         that WIDE_EMACS_INT implies !USE_LSB_TAG.
13709         (value_to_lisp_bits, lisp_to_value_bits): New functions.
13710         Sign-extend integers rather than zero-extending them, as small
13711         negative integers are more likely.
13712         (value_to_lisp, lisp_to_value): Rewrite in terms of the new *_bits
13713         functions.
13714         (HAVE_STRUCT_ATTRIBUTE_ALIGNED): Define to 0 if not already defined.
13715         (mark_modules): Remove.  All uses removed.
13716         (lisp_to_value): Don’t assume Fcons returns a pointer aligned
13717         to GCALIGNMENT.
13718         (syms_of_module): Check that module_nil converts to Qnil.
13719         * src/lisp.h (lisp_h_XSYMBOL, XSYMBOL): Use signed conversion, since
13720         we prefer signed to unsigned when either will do.
13721         (TAG_PTR): Sign-extend pointers when USE_LSB_TAG, as this is
13722         a bit better for emacs-module.c.
13724 2015-12-06  Paul Eggert  <eggert@cs.ucla.edu>
13726         Port mod-test to x86-64 GNU/Linux running 32-bit
13728         * modules/mod-test/test.el (mod-test-sum-test):
13729         Don’t attempt to match descriptions to operating systems.
13730         It didn’t work on Fedora x86-64 running a 32-bit executable,
13731         and it’s not worth the trouble anyway.
13732         Port to 32-bit platforms by removing an assumption about
13733         fixnum widths.
13735 2015-12-06  Michael Albinus  <michael.albinus@gmx.de>
13737         Fix auto-revert-tests.el when filenotify isn't used
13739         * test/automated/auto-revert-tests.el (auto-revert--wait-for-revert):
13740         Make it working also when filenotify isn't used.
13742 2015-12-05  Juri Linkov  <juri@linkov.net>
13744         * lisp/textmodes/ispell.el (ispell-highlight-spelling-error-overlay):
13746         Let-bind isearch-regexp-function to nil.  (Bug#22097)
13748 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
13750         * lisp/emacs-lisp/package.el: Don't install bad signatures (bug#22089)
13752         (package--with-response-buffer): NOERROR and ERROR-FORM only
13753         handle connection errors.
13754         (bad-signature): New error type.
13755         (package--check-signature-content): Use it.
13756         (package--check-signature): Properly distinguish connection errors
13757         from bad-signature errors.  Do the check for
13758         `package-check-signature' `allow-unsigned' here instead of forcing
13759         the callbacks to do it.  Add a new argument, UNWIND.
13760         (package--download-one-archive, package-install-from-archive):
13761         Update usage of `package--check-signature'.
13763 2015-12-05  Ulf Jasper  <ulf.jasper@web.de>
13765         Fix Bug#22092.
13767         * lisp/calendar/icalendar.el (icalendar--get-unfolded-buffer):
13768           Clean up inconsistent line endings. (Bug#22092)
13769           (icalendar--clean-up-line-endings): New.
13770         * test/automated/icalendar-tests.el (icalendar-real-world): Add test
13771           for Bug#22092.
13773 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13775         Document 'bookmark-set-no-overwrite'
13777         * doc/emacs/regs.texi (Bookmarks): Document the new command
13778         'bookmark-set-no-overwrite' and its keybinding.
13780 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13782         Document new binding of 'mouse-buffer-menu'
13784         * doc/emacs/buffers.texi (Buffer Menus): 'mouse-buffer-menu' is
13785         now also on C-F10.
13787 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13789         Initial documentation of dynamic modules
13791         * doc/lispref/loading.texi (Dynamic Modules): New section with
13792         initial documentation for dynamic modules.
13793         * doc/lispref/elisp.texi (Top): Add "Dynamic Modules" to the
13794         detailed menu
13796         * etc/NEWS: Fix typos in dynamic modules' entry.
13798 2015-12-05  Artur Malabarba  <bruce.connor.am@gmail.com>
13800         Remove copyright statements from trivial test files
13802 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13804         Add "Preliminaries" section to etc/DEBUG
13806         * etc/DEBUG: Add the "Preliminaries" section for GDB beginners.
13807         Most of the content was suggested by Phillip Lord
13808         <phillip.lord@russet.org.uk>.  Remove the section about debugging
13809         with the Visual Studio, as building Emacs with the Microsoft
13810         compilers is no longer supported.  Minor fixes in some other
13811         sections.
13813 2015-12-05  Alex Dunn  <dunn.alex@gmail.com>  (tiny change)
13815         Improve parsing of version strings
13817         * lisp/subr.el (version-regexp-alist): Allow "." as priority separator
13818         (version-to-list): More helpful error messages.
13819         (version-to-list): ".5" is valid (update docstring).  Make
13820         "22.8X3" invalid, as the doc string says.
13822         * test/automated/subr-tests.el (ert-test-version-parsing): New
13823         tests for version string processing.
13825 2015-12-05  Eli Zaretskii  <eliz@gnu.org>
13827         Fix documentation of 'undo' changes
13829         * doc/lispref/text.texi (Undo): Minor wording changes.  Use US
13830         English conventions for spelling and whitespace between sentences.
13832         * etc/NEWS: Fix wording and spelling of undo-related entries.
13833         Mark them as documented.
13835 2015-12-04  Glenn Morris  <rgm@gnu.org>
13837         * lisp/net/net-utils.el: Small improvements.
13839         (net-utils--executable-find-sbin): New function.
13840         (ifconfig-program): Check sbin directories.
13841         Fallback to "ip".  (Bug#22091)
13842         (ifconfig-program-options): Check the actual program in use.
13843         (arp-program): Check sbin directories.
13845 2015-12-04  Arash Esbati  <esbati@gmx.de>  (tiny change)
13847         Fix wrong-type-argument integer-or-marker-p nil error
13849         * lisp/textmodes/reftex-auc.el (reftex-what-index-tag):
13850         Fix (wrong-type-argument integer-or-marker-p nil) error (bug#22077).
13852 2015-12-04  Alan Mackenzie  <acm@muc.de>
13854         Merge branch 'scratch/follow' of /home/acm/emacs/emacs.git/emacs-25 into scratch/follow
13856         Merge necessitated by a rebase operation.
13858 2015-12-04  Alan Mackenzie  <acm@muc.de>
13860         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
13862 2015-12-04  Alan Mackenzie  <acm@muc.de>
13864         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
13866         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
13867         Windows" and new @defun selected-window-group.
13868         (Window Start and End): Describe new &optional parameter GROUP and
13869         ...-group-function for window-start, window-end, set-window-start, and
13870         pos-visible-in-window-p.
13871         (Textual Scrolling) Describe the same for recenter.
13872         doc/lispref/positions.texi (Screen Lines): Describe the same for
13873         move-to-window-line.
13875         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
13876         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
13877         new optional parameter "group".  At the beginning of each, check whether the
13878         corresponding ...-group-function is set to a function, and if so execute this
13879         function in place of the normal processing.
13880         (syms_of_window): Define symbols for the six new variables below.
13881         (window-start-group-function, window-end-group-function)
13882         (set-window-start-group-function, recenter-group-function)
13883         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
13884         New permanent local buffer local variables.
13885         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
13886         Fpos_visible_in_window_p.
13888         lisp/window.el (selected-window-group-function): New permanent local buffer
13889         local variable.
13890         (selected-window-group): New function.
13892         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
13893         enable, kill them at mode disable.  Add/remove follow-after-change to/from
13894         after-change-functions.
13895         (follow-start-end-invalid): New variable.
13896         (follow-redisplay): Manipulate follow-start-end-invalid.
13897         (follow-after-change, follow-window-start, follow-window-end)
13898         (follow-set-window-start, follow-pos-visible-in-window-p)
13899         (follow-move-to-window-line, follow-sit-for): New functions.
13901         lisp/isearch.el (isearch-call-message): New macro.
13902         (isearch-update, with-isearch-suspended, isearch-del-char)
13903         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
13904         (with-isearch-suspended): Rearrange code such that isearch-call-message is
13905         invoked before point is moved.
13906         (isearch-message): Add comment about where point must be at function call.
13907         (isearch-search): Remove call to isearch-message.
13908         (isearch-lazy-highlight-window-group): New variable.
13909         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
13910         the battery of tests to ...
13911         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
13912         Note: (sit-for 0) is still called.
13913         (isearch-lazy-highlight-update): Check membership of
13914         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
13915         property.
13916         (isearch-update, isearch-done, isearch-string-out-of-window)
13917         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
13918         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
13919         (isearch-lazy-highlight-update): Call the six amended primitives (see
13920         src/window.c above) with the new `group' argument set to t, to cooperate
13921         with Follow Mode.
13923 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
13925         * lisp/emacs-lisp/ert.el: Prefer pcase over cl-typecase
13927         * lisp/emacs-lisp/ert.el (ert--should-error-handle-error)
13928         (ert--explain-format-atom, ert--explain-equal-rec)
13929         (ert--print-backtrace, ert-test-result-type-p, ert-select-tests)
13930         (ert--insert-human-readable-selector): Prefer pcase over cl-typecase.
13932 2015-12-04  Artur Malabarba  <bruce.connor.am@gmail.com>
13934         * lisp/character-fold.el: Remove special case-folding support
13936         (character-fold-to-regexp): Remove special code for
13937         case-folding.  Char-fold search still respects the
13938         `case-fold-search' variable (i.e., f matches F).  This only
13939         removes the code that was added to ensure that f also matched
13940         all chars that F matched.  For instance, after this commit, f
13941         no longer matches 𝔽.
13943         This was necessary because the logic created a regexp with
13944         2^(length of the string) redundant paths.  So, when a very
13945         long string "almost" matched, Emacs took a very long time to
13946         figure out that it didn't.  This became particularly relevant
13947         because isearch's lazy-highlight does a search bounded by (1-
13948         match-end) (which, in most circumstances, is a search that
13949         almost matches).  A recipe for this can be found in bug#22090.
13951 2015-12-04  Stefan Monnier  <monnier@iro.umontreal.ca>
13953         * lisp/emacs-lisp/cl-macs.el (character): Can't be negative
13954         Fixes (bug#21701)
13956 2015-12-04  Daiki Ueno  <ueno@gnu.org>
13958         lisp/gnus/qp.el: Don't replace "from " at bol
13960         * lisp/gnus/qp.el (quoted-printable-encode-region): Bind `case-fold-search'
13961         to nil when looking for "^From ".  Problem reported by Simon Josefsson.
13963 2015-12-03  Phillip Lord  <phillip.lord@russet.org.uk>
13965         Externalize some symbols in undo-auto
13967          * doc/lispref/text.texi: Update symbols.
13968          * lisp/simple.el (undo-auto--amalgamate,
13969            undo-auto--current-boundary-timer): Make symbols public.
13970          * src/cmds.c (Fself_insert_command,Fdelete_char): Call
13971            updated symbol.
13973 2015-12-03  Stefan Monnier  <monnier@iro.umontreal.ca>
13975         * lisp/emacs-lisp/smie.el (smie-next-sexp): Fix BOB "token"
13977 2015-12-03  Michael Albinus  <michael.albinus@gmx.de>
13979         Some error message improvements in tramp-sh.el
13981         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
13982         Suppress error messages for "mesg" and "biff" calls.
13983         (tramp-get-remote-path): Ignore errors when expanding
13984         `tramp-own-remote-path'.  Raise a warning instead.
13986 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
13988         Document 'nacl' value for 'system-type'
13990         * doc/lispref/os.texi (System Environment): Document the 'nacl'
13991         value of 'system-type'.
13993 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
13995         Document 'window-max-chars-per-line'
13997         * doc/lispref/windows.texi (Window Sizes): Document
13998         'window-max-chars-per-line'.
14000 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14002         Fix some file headers for the purpose of `package--builtins'
14004         * lisp/emacs-lisp/cl-preloaded.el
14005         * lisp/emacs-lisp/eieio-compat.el
14006         * lisp/net/sasl-scram-rfc.el: Add a "Package:" header
14008         * lisp/ielm.el: Fix summary line.
14010 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14012         * lisp/emacs-lisp/package.el (package-unpack): Load before compiling
14014         Reload any previously loaded package files before compiling
14015         the package (also reload the same files after compiling).
14016         This ensures that we have the most recent definitions during
14017         compilation, and avoids generating bad elc files when a macro
14018         changes and it is used in a different file from the one it's
14019         defined in.
14021 2015-12-03  Artur Malabarba  <bruce.connor.am@gmail.com>
14023         * lisp/emacs-lisp/package.el: Refactor package activation code
14025         (package-activate): Move code that activates dependencies into
14026         package-activate-1.
14027         (package--load-files-for-activation): New function.
14028         (package-activate-1): Add code for (optionally) activating
14029         dependencies, and move file-loading code into
14030         `package--load-files-for-activation'.
14032 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14034         Document new font-related functionality
14036         * doc/lispref/display.texi (Low-Level Font): Document
14037         'default-font-width', 'default-font-height', 'window-font-width',
14038         and 'window-font-height'.
14040         * etc/NEWS: Move entries for 'default-font-width',
14041         'default-font-height', 'window-font-width', and 'window-font-height'
14042         to their place and mark them documented.
14044 2015-12-03  Eli Zaretskii  <eliz@gnu.org>
14046         Fix documentation and implementation of 'directory-name-p'
14048         * lisp/files.el (directory-name-p): Modify to recognize
14049         backslashes on MS-Windows and MS-DOS.  Adjust the doc string
14050         accordingly.  Use '=', not char-equal, for comparison, as
14051         letter-case cannot possibly be an issue here.
14053         * doc/lispref/files.texi (Directory Names): Move the documentation
14054         of directory-name-p here from "Relative File Names".  Update the
14055         description per the changes in implementation.
14057         * etc/NEWS: Move the entry for 'directory-name-p' to its proper
14058         place and mark it documented.
14060 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14062         Minor copyedit in Emacs manual
14064         * doc/emacs/search.texi (Lax Search): Make wording about character
14065         folding by default less definitive.  (Bug#22043)
14067 2015-12-02  Eli Zaretskii  <eliz@gnu.org>
14069         More emacs-module.c fixes for wide ints
14071         * src/emacs-module.c (value_to_lisp) [WIDE_EMACS_INT]: Use
14072         unsigned data types to manipulate pointers, to avoid sign
14073         extension coming after us with a vengeance.
14075         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14076         Emacs with wide ints that verify integer values near the critical
14077         value that requires us to switch to a cons cell.
14079 2015-12-02  Stephen Leake  <stephen_leake@stephe-leake.org>
14081         Fix bug#22069 in cl-generic.el
14083         * lisp/emacs-lisp/cl-generic.el (cl-no-method): Remove %S; this string is
14084         not run thru `format'.
14086 2015-12-01  Dmitry Gutov  <dgutov@yandex.ru>
14088         APPEND etags--xref-backend to xref-backend-functions
14090         * lisp/progmodes/xref.el (xref-backend-functions):
14091         Use APPEND when adding the default element
14092         (http://lists.gnu.org/archive/html/emacs-devel/2015-12/msg00061.html).
14094 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14096         More accurate documentation of lax whitespace matching
14098         * lisp/isearch.el (isearch-forward-word, isearch-forward-symbol)
14099         (word-search-backward, word-search-forward)
14100         (word-search-backward-lax, word-search-forward-lax): Mention in
14101         doc strings that toggling lax whitespace matching has no effect on
14102         these commands.
14104         * doc/emacs/search.texi (Word Search, Symbol Search): Clarify that
14105         lax whitespace matching has no effect on these commands.
14107 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14109         Fix emacs-module.c for wide ints
14111         * src/emacs-module.c (lisp_to_value): Compare the produced value
14112         with the original Lisp object, not with the one potentially
14113         converted into a Lisp_Cons.  Fixes assertion violations when
14114         working with integers larger than fit into a 32-bit value.
14116         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14117         large integers, to test --with-wide-int.
14119 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14121         Document 'directory-files-recursively'
14123         * lisp/files.el (directory-files-recursively): Doc fix.  Rename
14124         the argument MATCH to REGEXP, to be more explicit about its form.
14126         * doc/lispref/files.texi (Contents of Directories): Improve the
14127         documentation of 'directory-files-recursively'.  Add
14128         cross-references.
14130         * etc/NEWS: Move the entry for 'directory-files-recursively' to
14131         its place and mark it documented.
14133 2015-12-01  Eli Zaretskii  <eliz@gnu.org>
14135         Document 'inhibit-read-only' property
14137         * doc/lispref/text.texi (Special Properties): Describe the new
14138         'inhibit-read-only' text property.  Add cross-reference to where
14139         read-only buffers are described.
14140         * doc/lispref/buffers.texi (Read Only Buffers): Mention that
14141         'inhibit-read-only' property exempts text from being read-only.
14142         Add cross-reference to "Special Properties".
14144         * etc/NEWS: Move the entry about 'inhibit-read-only' property to
14145         its place and mark it documented.
14147 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14149         * lisp/emacs-lisp/package.el: Update header comments
14151 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
14153         * lisp/character-fold.el: Add back multi-char matching
14155         (character-fold-to-regexp): Uncomment recently commented code
14156         and make the algorithm "dummer" by not checking every possible
14157         combination.  This will miss some possible matches, but it
14158         greatly reduces regexp size.
14160         * test/automated/character-fold-tests.el
14161         (character-fold--test-fold-to-regexp): Comment out test of
14162         functionality no longer supported.
14164 2015-12-01  Xue Fuqiao  <xfq.free@gmail.com>
14166         * doc/emacs/ack.texi (Acknowledgments): Update.
14168 2015-12-01  Michael Albinus  <michael.albinus@gmx.de>
14170         Check `file-remote-p' over absolute files names in files.el
14172         * lisp/files.el (directory-files-recursively)
14173         (get-free-disk-space): Check `file-remote-p' over absolute files names.
14175 2015-12-01  Andreas Schwab  <schwab@linux-m68k.org>
14177                 * src/lread.c (syms_of_lread): Doc fix.
14179 2015-11-30  Dmitry Gutov  <dgutov@yandex.ru>
14181         Don't mistake certain JS method calls for keywords
14183         * lisp/progmodes/js.el (js--ctrl-statement-indentation):
14184         Braceless keyword can't come after a period (bug#22063).
14186 2015-11-30  David Reitter  <david.reitter@gmail.com>
14188         Read frame_title_format from buffer-local variable for NS port
14190         * src/nsfns.m (x_implicitly_set_name): Read frame-title-format and
14191         icon-title-format variables from buffer in appropriate window.
14192         (Bug#22048)
14194 2015-11-30  Juri Linkov  <juri@linkov.net>
14196         * lisp/replace.el (occur-engine): Count matches in empty lines.
14198         (Bug#22062)
14200 2015-11-30  Aurélien Aptel  <aurelien.aptel@gmail.com>
14202         * src/emacs-module.h: Fix finalizer typedef for C++11
14204         C++11 standard doesn't allow exception-specification in typedef.
14205         The workaround is to declare a dummy function prototype and use
14206         decltype on it.
14208 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14210         Fix last change
14212         * src/emacs-module.c (lisp_to_value, value_to_lisp)
14213         [WIDE_EMACS_INT]: Avoid compiler warnings.
14215 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
14217         Rely on conservative stack scanning to find "emacs_value"s
14219         * src/emacs-module.c (struct emacs_value_tag)
14220         (struct emacs_value_frame, struct emacs_value_storage): Remove.
14221         (value_frame_size): Remove constant.
14222         (struct emacs_env_private): Use Lisp_Object for non_local_exit info.
14223         (lisp_to_value): Remove first arg.
14224         (module_nil): New constant.
14225         Use it instead of NULL when returning an emacs_value.
14226         (module_make_function): Adjust to new calling convention of
14227         Qinternal_module_call.
14228         (DEFUN): Receive args in an array rather than a list.
14229         Use SAFE_ALLOCA rather than xnmalloc.  Skip the lisp_to_value loop when
14230         we don't have WIDE_EMACS_INT.  Adjust to new type of non_local_exit info.
14231         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14232         Adjust to new type of non_local_exit info.
14233         (ltv_mark) [WIDE_EMACS_INT]: New constant.
14234         (value_to_lisp, lisp_to_value): Rewrite.
14235         (initialize_frame, initialize_storage, finalize_storage): Remove functions.
14236         (allocate_emacs_value): Remove function.
14237         (mark_modules): Gut it.
14238         (initialize_environment): Don't initialize storage any more.
14239         Keep the actual env object on Vmodule_environments.
14240         (finalize_environment): Don't finalize storage any more.
14241         (syms_of_module): Initialize ltv_mark and module_nil.
14243         * src/emacs-module.h (emacs_value): Make it more clear that this type
14244         is really opaque, including the fact that NULL may not be valid.
14246         * modules/mod-test/mod-test.c (Fmod_test_signal, Fmod_test_throw):
14247         Don't assume that NULL is a valid emacs_value.
14249 2015-11-30  Eli Zaretskii  <eliz@gnu.org>
14251         Yet another doc improvement for search commands
14253         * doc/emacs/search.texi (Word Search, Symbol Search)
14254         (Regexp Search): Document commands that don't support lax
14255         whitespace matching or character folding.
14256         (Nonincremental Search): Mention the search commands that can be
14257         invoked from the menu bar.
14259         * lisp/isearch.el (isearch-define-mode-toggle-word)
14260         (isearch-define-mode-toggle-symbol)
14261         (isearch-define-mode-toggle-character-fold): Note in the doc
14262         string that turning these on exits the regexp mode.
14263         (isearch-forward-regexp, isearch-forward-word)
14264         (isearch-forward-symbol, isearch-backward-regexp)
14265         (word-search-backward, word-search-forward)
14266         (word-search-backward-lax, word-search-forward-lax): State in the
14267         doc string which commands don't support character folding and/or
14268         lax-whitespace matching.
14270 2015-11-30  Martin Rudalics  <rudalics@gmx.at>
14272         Run `window-size-change-functions' also when reading from minibuffer
14274         * src/xdisp.c (redisplay_internal): Run `window-size-change-functions'
14275         also when reading from minibuffer.
14277 2015-11-30  Ulf Jasper  <ulf.jasper@web.de>
14279         Fix scrambling of html-rendered item buffers
14281         * lisp/net/newst-treeview.el (newsticker--treeview-render-text): Fix
14282           scrambling of contents by wrapping call to html-renderer in
14283           save-selected-window.
14285 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14287         Fix font typo in previous doc fix.
14289 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14291         A bit more security doc, esp. file local vars
14293         * doc/emacs/emacs.texi (Top):
14294         * doc/emacs/misc.texi (Miscellaneous Commands):
14295         Refer to new Host Security section.
14296         (Host Security): New section.
14297         * doc/lispref/os.texi (Security Considerations):
14298         Mention file local variables.
14300 2015-11-30  Artur Malabarba  <bruce.connor.am@gmail.com>
14302         * lisp/character-fold.el: Comment out branching code
14304         (character-fold-to-regexp): Comment out code that uses multi-char
14305         table.  The branching caused by this induces absurdly long regexps,
14306         up to 10k chars for as little as 25 input characters.
14308 2015-11-30  Paul Eggert  <eggert@cs.ucla.edu>
14310         Spelling and grammar fixes
14312 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
14314         Make lisp-completion-at-point a wrapper instead of an alias
14316         * lisp/progmodes/elisp-mode.el (lisp-completion-at-point):
14317         Turn into an obsolete wrapper around elisp-completion-at-point
14318         (bug#20455).
14320 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14322         * lisp/isearch.el (isearch-search-fun-default): Nicer error
14324         message when the search fails.
14326 2015-11-29  Dmitry Gutov  <dgutov@yandex.ru>
14328         Update menu-bar-goto-uses-etags-p for the current xref API
14330         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Consult
14331         xref-backend-functions, instead of now-nonexistent
14332         xref-find-function.
14334 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14336         * lisp/isearch.el (isearch-define-mode-toggle): Advertise binding
14338 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14340         * lisp/menu-bar.el: Use folding in searches
14342         (nonincremental-search-forward): Use `isearch-search-fun-default'
14343         to determine the search function.
14344         (nonincremental-search-backward)
14345         (nonincremental-repeat-search-forward)
14346         (nonincremental-repeat-search-backward): Use it.
14348 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14350         * lisp/menu-bar.el (menu-bar-goto-uses-etags-p): Fix a warning
14352 2015-11-29  Artur Malabarba  <bruce.connor.am@gmail.com>
14354         * lisp/character-fold.el (character-fold-to-regexp): Be careful
14356         not to return huge regexps.
14358 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14360         Improve documentation of string-collate-* functions
14362         * doc/lispref/strings.texi (Text Comparison): Improve wording and
14363         indexing of 'string-collate-equalp' and 'string-collate-lessp'.
14365         * etc/NEWS: Move the entry of 'string-collate-equalp' and
14366         'string-collate-lessp' to "Lisp Changes" section and mark it as
14367         documented.
14369 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14371         Document truncate-string-ellipsis
14373         * doc/lispref/display.texi (Size of Displayed Text): Document
14374         'truncate-string-ellipsis'.
14376         * lisp/international/mule-util.el (truncate-string-ellipsis): Doc fix.
14377         (truncate-string-to-width): Mention in the doc string that the
14378         default for ELLIPSIS comes from 'truncate-string-ellipsis'.
14380         * etc/NEWS: Move the 'truncate-string-ellipsis' entry to the "Lisp
14381         Changes" section.
14383 2015-11-29  Eli Zaretskii  <eliz@gnu.org>
14385         Fix confusion wrt character folding in the Emacs manual
14387         * doc/emacs/search.texi (Nonincremental Search, Regexp Search):
14388         Document that invoking search-forward/backward and
14389         re-search-forward/backward supports only case folding, but not the
14390         rest of the lax-search features.  Reported by Mike Kupfer
14391         <m.kupfer@acm.org>.
14393 2015-11-29  Ken Brown  <kbrown@cornell.edu>
14395         Update mod-test-sum-test
14397         * modules/mod-test/test.el (mod-test-sum-test): Update to
14398         accommodate the lack of dladdr on Cygwin.
14400 2015-11-29  Alan Mackenzie  <acm@muc.de>
14402         Byte compiler: Catch missing argument to `funcall'.  Fixes bug#22051.
14404         * lisp/emacs-lisp/bytecomp.el (byte-compile-funcall): When there's no argument
14405         to `funcall', (i) Output an error message; (ii) Generate code to signal a
14406         `wrong-number-of-arguments' error.
14408 2015-11-29  Martin Rudalics  <rudalics@gmx.at>
14410         * lisp/window.el (split-window): Don't sanitize sizes when SIZE is non-nil.
14412 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14414         * lisp/character-fold.el (character-fold-to-regexp)
14416         Warn about using long strings.
14418         * test/automated/character-fold-tests.el
14419         (character-fold--test-lax-whitespace)
14420         (character-fold--test-consistency): Reduce string size for tests.
14422 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14424         Document renaming of x-select-enable-* variables
14426         * doc/emacs/killing.texi (Clipboard): Rename
14427         x-select-enable-clipboard to select-enable-clipboard and
14428         x-select-enable-primary to select-enable-primary.  Update index
14429         entries.
14431         * etc/NEWS: Mark entry as documented.
14433 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14435         Document the shorthand hints displayed by M-x
14437         * doc/emacs/m-x.texi (M-x): Document the numeric meaning of
14438         suggest-key-bindings.  Document the shorthand hints for commands
14439         that have no key bindings.  Document that M-x completion ignores
14440         obsolete commands.
14442         * etc/NEWS: Move the M-x entry to "Editing Changes" and mark it as
14443         documented.
14445 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14447         Update docs of character folding
14449         * doc/emacs/search.texi (Lax Search): Update the description of
14450         character folding for the latest changes.
14452 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14454         * lisp/character-fold.el: Also play nice with case-folding
14456         (character-fold-to-regexp): Take `case-fold-search' into account.
14458 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14460         * lisp/character-fold.el: Add support for multi-char matches
14462         (character-fold-table): Now has an extra-slot. This is a second
14463         char-table that holds multi-character matches.  See docstring for
14464         details.
14465         (character-fold-to-regexp): Can build branching regexps when a
14466         character's entry the extra slot of `character-fold-table' matches the
14467         characters that succeed it.
14469 2015-11-28  Artur Malabarba  <bruce.connor.am@gmail.com>
14471         * lisp/character-fold.el: Code simplifications
14473         (character-fold-table): Reduce the scope of a variable.
14474         (character-fold-to-regexp): Change logic to work directly on the
14475         input string.  It's a little easier to understand, probably
14476         faster, and sets us up for implementing multi-char matches.
14478         * test/automated/character-fold-tests.el
14479         (character-fold--test-fold-to-regexp): New test.
14481 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14483         Document changes in "C-h l"
14485         * doc/emacs/help.texi (Misc Help): Document the changes in "C-h l".
14487         * etc/NEWS: mark "C-h l" changes as documented.
14489 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14491         Finalize documentation of 'custom-prompt-customize-unsaved-options'
14493         * doc/emacs/custom.texi (Saving Customizations): Index the new
14494         function 'custom-prompt-customize-unsaved-options'.
14496         * etc/NEWS: Mention when 'custom-prompt-customize-unsaved-options'
14497         is useful.
14499 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14501         Document 'comment-line'
14503         * doc/emacs/programs.texi (Comment Commands): Document
14504         'comment-line'.
14506         * etc/NEWS: Move the entry for 'comment-line' into "Editing Changes".
14508 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14510         Document new checkdoc features
14512         * doc/lispref/tips.texi (Tips, Library Headers): Document the
14513         keyword-checking features of checkdoc and the commands
14514         'checkdoc-file' and 'checkdoc-current-buffer'.
14516         * etc/NEWS: Move the checkdoc-related entries to their own
14517         section.
14519 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14521         Simplify the prologue of emacs-module.c functions
14523         * src/emacs-module.c (MODULE_FUNCTION_BEGIN): New macro.
14524         (module_make_global_ref)
14525         (module_free_global_ref, module_make_function, module_funcall)
14526         (module_intern, module_type_of, module_extract_integer)
14527         (module_make_integer, module_extract_float, module_make_float)
14528         (module_copy_string_contents, module_make_string)
14529         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14530         (module_get_user_finalizer, module_set_user_finalizer)
14531         (module_vec_set, module_vec_get, module_vec_size): Use new helper
14532         macro MODULE_FUNCTION_BEGIN.
14534 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14536         Don't reject module calls with no arguments
14538         * src/emacs-module.c (Finternal_module_call): Allow ARGLIST be nil.
14540 2015-11-28  Philipp Stephani  <p.stephani2@gmail.com>
14542         Make module-call be visible from Lisp
14544         * src/emacs-module.c (module_make_function): Use internal--module-call.
14545         (Finternal_module_call): Renamed from Fmodule_call.  Add safety
14546         checks.
14547         (syms_of_module): DEFSYM save-value-p and save-pointer-p.  Do
14548         defsubr internal--module-call.
14550 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14552         Add etags tests for the recent Lua-related bugfix
14554         * test/etags/lua-src/test.lua: New file, tests the issues raised
14555         by bug#21934.
14556         * test/etags/Makefile (LUASRC): Add test.lua.
14557         * test/etags/ETAGS.good_1:
14558         * test/etags/ETAGS.good_2:
14559         * test/etags/ETAGS.good_3:
14560         * test/etags/ETAGS.good_4:
14561         * test/etags/ETAGS.good_5:
14562         * test/etags/ETAGS.good_6:
14563         * test/etags/CTAGS.good: Adapt to the new Lua test.  Also, an old
14564         regression fix, resolved around 25 May 2015, required changes to
14565         the "good" ETAGS files.
14567 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14569         Fix Lua tags when a function name includes '.' or ':'
14571         * lib-src/etags.c (Lua_functions): Add a tag for the last element
14572         of a function name after a dot or a colon.  (Bug#21934)
14574 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14576         Improve documentation of search and replace commands
14578         * doc/emacs/search.texi (Replacement and Lax Matches): Document
14579         which commands are affected by 'replace-character-fold'.
14580         (Lax Search): Add a cross reference to "Replacement and Lax
14581         Matches".  Improve wording.  Fix lost extra whitespace.
14582         (Search Customizations): Improve wording.  (Bug#22036)
14583         See also comments in
14584         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02376.html.
14586         * lisp/replace.el (query-replace, query-replace-regexp)
14587         (query-replace-regexp-eval, replace-string, replace-regexp):
14588         Mention 'replace-character-fold' in the doc strings.
14590 2015-11-28  Paul Eggert  <eggert@cs.ucla.edu>
14592         Fix minor problems found by static checking
14594         * src/undo.c (prepare_record): Add proper prototype for C.
14596 2015-11-27  Stefan Monnier  <monnier@iro.umontreal.ca>
14598         * src/emacs-module.c (struct env_storage): Delete
14600         (struct emacs_runtime_private): Keep an emacs_env instead.
14601         (Fmodule_load, Fmodule_call): Declare emacs_env_private separately.
14602         (initialize_environment): Split the arg in two.  Adjust all callers.
14603         Only store the private part in Vmodule_environments.
14604         (finalize_environment): Change the arg to only be the private env.
14605         Adjust all callers.
14607 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14609         Improve documentation of 'replace-character-fold'
14611         * lisp/replace.el (replace-character-fold): Clarify which commands
14612         are affected by this variable.
14614 2015-11-27  Dmitry Gutov  <dgutov@yandex.ru>
14616         Autoload etags when using its xref backend
14618         * lisp/progmodes/xref.el (xref--etags-backend):
14619         Rename to etags--xref-backend.  Move to etags.el.  Autoload.
14620         (Bug#22026)
14622 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14624         * lisp/character-fold.el: Allow complex chars to match their decomposition
14626         (character-fold-table): When a character's decomposition does not
14627         involve a formatting tag (i.e., if it has an "exact" description via
14628         other characters), then this character is allowed to match the
14629         decomposition.
14631 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14633         * lisp/character-fold.el: More descriptive variable names
14635         (character-fold-table): Rename a lot of the lexical variables to
14636         make the code easier to read.
14638 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
14640         * lisp/isearch.el: Ensure we still support `isearch-new-word'
14642         (isearch-new-regexp-function): Define variable.
14643         (isearch-new-word): Define as an obsolete alias. (Bug#22018)
14645 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14647         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
14649 2015-11-27  Lee Bochicchio  <lboc.home@gmail.com>
14651         * test/lisp/abbrev-tests.el: Define more tests
14653         (abbrev-table-name-test, kill-all-abbrevs-test)
14654         (clear-abbrev-table-test): New tests.
14656 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14658         Add module tests for wrong-type-argument
14660         * modules/mod-test/test.el (mod-test-sum-test): Add tests for
14661         wrong-type-argument.
14663 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14665         Improve handling of signals and 'throw' in modules
14667         * src/emacs-module.c: Add commentary explaining how to write
14668         functions in this file.
14669         (module_make_global_ref, module_free_global_ref)
14670         (module_non_local_exit_signal, module_non_local_exit_throw)
14671         (module_make_function, module_funcall, module_intern)
14672         (module_type_of, module_is_not_nil, module_eq)
14673         (module_extract_integer, module_make_integer)
14674         (module_extract_float, module_make_float)
14675         (module_copy_string_contents, module_make_string)
14676         (module_make_user_ptr, module_get_user_ptr, module_set_user_ptr)
14677         (module_get_user_finalizer, module_set_user_finalizer)
14678         (module_vec_set, module_vec_get, module_vec_size)
14679         (module_non_local_exit_signal_1, module_non_local_exit_throw_1):
14680         Do nothing and return with failure indication immediately, if some
14681         previous module call signaled an error or wants to throw.  See
14682         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02133.html
14683         for the relevant discussions.
14685 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14687         Add ':version' tag to 'checkdoc-package-keywords-flag'
14689         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
14690         Add a ':version' tag.
14692 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14694         Improve documentation of 'eval-buffer' and 'eval-region'
14696         * src/lread.c (Feval_buffer, Feval_region): Doc fixes.  (Bug#22023)
14698         * doc/lispref/eval.texi (Eval): Mention narrowing to clarify
14699         "accessible portion of buffer".
14701 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14703         Unbreak the Cygwin w32 build
14705         * src/emacs.c (main): Call w32_init_main_thread in the Cygwin w32
14706         build as well.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14708 2015-11-27  Eli Zaretskii  <eliz@gnu.org>
14710         Improve commentary in character-fold.el
14712         * lisp/character-fold.el (character-fold-to-regexp): Move detailed
14713         description from commit log message to comments.  (Bug#22019)
14715 2015-11-26  Alan Mackenzie  <acm@muc.de>
14717         Byte Compiler: generate code to adjust stack count after call to `signal'.
14719         Corrects change from earlier today.
14721         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): supply the current value of
14722         `byte-compile--for-effect' as argument to `byte-compile-form'.
14724 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
14726         Improve commentary of prepare_to_modify_buffer_1
14728         * src/insdel.c (prepare_to_modify_buffer_1): Mention in commentary
14729         that this function runs Lisp.  Suggested by Richard Stallman
14730         <rms@gnu.org>.
14732 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14734         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
14736 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14738         Fix regression after merge.
14740          * src/undo.c (prepare_record): Remove call to run_undoable_change.
14742 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
14744         After delete, record point location in undo.
14746         Addresses Bug #21968.
14748                 * lisp/simple.el (undo-auto--add-boundary): Clean up code to
14749                 better support intercalating calls.
14750                 * src/keyboard.c, src/keyboard.h (command_loop_1): Store value of
14751                 point and current buffer before each command.
14752                 * src/undo.c (record_point): Now only record the point.
14753                 * src/undo.c (prepare_record): Functionality removed form
14754                 record_point.
14755                 * src/undo.c (record_delete): Check if point needs recording.
14756                 * src/undo.c (undo-boundary): Record value of point before each
14757                 boundary.
14758                 * test/automated/simple-test.el: New tests.
14760         Conflicts:
14761                 src/undo.c
14763 2015-11-26  Eli Zaretskii  <eliz@gnu.org>
14765         Fix compiler warnings in w32.c
14767         * src/w32.c (sys_socket): In case of error, use -1 as return
14768         value, not INVALID_SOCKET, which causes compiler warnings.
14769         (maybe_load_unicows_dll): Cast the return value of GetProcAddress
14770         to the appropriate function signature, to avoid compiler errors.
14771         Reported by Andy Moreton <andrewjmoreton@gmail.com>.  (Bug#21953)
14773 2015-11-26  Dmitry Gutov  <dgutov@yandex.ru>
14775         Check if the file exists on disk before producing the revert diff
14777         * lisp/vc/vc-dispatcher.el (vc-buffer-sync): Check if the file
14778         exists on disk (bug#20558).
14780 2015-11-26  Alan Mackenzie  <acm@muc.de>
14782         Byte compiler: on setq with an odd number of arguments, generate a `signal'
14784         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't transform `setq' form when
14785         it has an odd number of arguments, to allow bytecomp to handle the error.
14787         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): In a `setq' form with an
14788         odd number of arguments, generate a `signal' instead of the normal code.
14790 2015-11-25  Dmitry Gutov  <dgutov@yandex.ru>
14792         Use find-tag-default for xref-backend-identifier-at-point
14794         * lisp/progmodes/etags.el (find-tag-tag)
14795         (tags-completion-at-point-function): Extract common code as
14796         find-tag--default.
14797         (xref-backend-identifier-at-point): Define in terms of the new
14798         function.
14800 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
14802         * src/undo.c (record_property_change): Remove now-unused local.
14804 2015-11-25  Phillip Lord  <phillip.lord@russet.org.uk>
14806         run_undoable_changes now called from insdel.
14808         The original calls from inside undo.c are not always at a safe position
14809         to call lisp, as they originate in varied positions within insdel.c.
14810         Calling them directly from prepare_to_modify_buffer_1 ensures that they
14811         are always run at the same point.
14813          * src/undo.c (run_undoable_changes,syms_of_undo): Remove function
14814          and symbol used.
14815          * src/insdel.c (run_undoable_changes): Add function and symbol.
14817 2015-11-25  Eli Zaretskii  <eliz@gnu.org>
14819         Improve and update documentation of search commands
14821         * doc/emacs/search.texi (Lax Search): Renamed from "Search Case";
14822         all references changed.  Move the description of lax-whitespace
14823         here.  Add description of the new character folding features and
14824         additional customizable options.
14825         (Isearch Yank): Move before "Error in Search".
14826         (Basic Isearch): Improve wording.  Add index entries.  Add short
14827         description of how to abandon search, making this subsection a
14828         complete introduction to search basics.
14829         (Repeat Isearch): Add index entries.  Describe additional
14830         customizable options.  Describe mouse clicks.
14831         (Isearch Yank): Add index entries.  Describe mouse-2 click in echo
14832         area.  Describe more customizable options.
14833         (Error in Isearch): Add index entries.
14834         (Special Isearch): Move actual description of some isearch
14835         commands to other sections, leaving here just the summary of the
14836         commands.  Add command that toggles character folding.  Describe
14837         commands, like "C-h C-h", that were previously omitted for some
14838         reason.
14839         (Not Exiting Isearch): Describe search-exit-option.  Add index
14840         entries.
14841         (Word Search): Describe eww-search-word and eww-search-prefix.
14842         (Symbol Search): Add index entries.
14843         (Regexp Search): Describe regexp-search-ring-max.
14844         (Replacement and Lax Matches): Renamed from "Replacement and
14845         Case"; all references changed.  Describe lax-whitespace matching
14846         in replace commands and related options.  Describe character
14847         folding in replace commands and related options.
14848         (Query Replace): Describe query-replace-from-to-separator and the
14849         new history features.  Add index entries for highlighted text.
14850         Describe query-replace-skip-read-only.  Describe more keys
14851         accepted by query-replace.
14852         (Other Repeating Search): More index entries for Occur.  Describe
14853         list-matching-lines-default-context-lines.
14854         (Search Customizations): New section, documents customizable
14855         options that were not documented until now.
14856         * doc/emacs/glossary.texi (Glossary): Add "Case Folding" and
14857         "Character Folding".
14859         * etc/NEWS: Move search- and replace-related entries to a single
14860         parent section.
14862         * lisp/replace.el (query-replace-show-replacement): Doc fix.
14863         * lisp/isearch.el (search-nonincremental-instead)
14864         (isearch-hide-immediately): Doc fixes.
14866 2015-11-25  Katsumi Yamaoka  <yamaoka@jpl.org>
14868         Remove nnml-retrieve-groups that is unnecessary and somewhat problematic
14870         * lisp/gnus/nnml.el (nnml-retrieve-groups): Remove.  See:
14871         <http://thread.gmane.org/gmane.emacs.gnus.general/86308> and
14872         <http://thread.gmane.org/gmane.emacs.gnus.general/86321>
14874 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
14876         Fix module_format_fun_env when dynlib_addr fails
14878         * src/emacs-module.c (module_format_fun_env):
14879         exprintf doesn’t support %p, so use %x.  Reported by Eli Zaretskii in:
14880         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02122.html
14882 2015-11-25  Paul Eggert  <eggert@cs.ucla.edu>
14884         Disambiguate variable help a bit better
14886         * lisp/help-fns.el (describe-variable): Quote the
14887         variable’s value if it is a symbol other than t or nil.
14888         See: T.V Raman in:
14889         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg02147.html
14891 2015-11-24  Dmitry Gutov  <dgutov@yandex.ru>
14893         Pass SVN commit message through log-edit-extract-headers
14895         * lisp/vc/vc-svn.el (vc-svn-checkin): Pass COMMENT through
14896         log-edit-extract-headers (bug#18954).
14898 2015-11-24  Alan Mackenzie  <acm@muc.de>
14900         CC Mode: Eliminate compiler warning messages.
14902         * lisp/progmodes/cc-mode.el (top level): remove compile time declaration of
14903         `font-lock-syntactic-keywords' (which CC Mode doesn't use).
14904         * lisp/progmodes/cc-awk.el (awk-mode-syntax-table)
14905         (c-awk-set-syntax-table-properties): Clarify comments about
14906         `font-lock-syntactic-keywords'.
14908         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-load): Create a dummy declaration
14909         of this before the real (interpreted) one, to satisfy the byte compiler.
14911 2015-11-24  Simen Heggestøyl  <simenheg@gmail.com>
14913         Extend the test suite for json.el
14915         * lisp/json.el (json-plist-p): Clarify docstring.
14917         * test/automated/json-tests.el (json-tests--with-temp-buffer): New
14918         macro.
14919         (test-json-join, test-json-alist-p)
14920         (test-json-plist-p, test-json-advance, test-json-peek)
14921         (test-json-pop, test-json-skip-whitespace)
14922         (test-json-read-keyword, test-json-encode-keyword)
14923         (test-json-read-number, test-json-encode-number)
14924         (test-json-read-escaped-char, test-json-read-string)
14925         (test-json-encode-string, test-json-encode-key)
14926         (test-json-new-object, test-json-add-to-object)
14927         (test-json-read-object, test-json-encode-list)
14928         (test-json-read-array, test-json-encode-array)
14929         (test-json-read, test-json-read-from-string)
14930         (test-json-encode): New tests.
14931         (json-read-simple-alist): Merged into `test-json-read-object'.
14932         (json-encode-string-with-special-chars): Merged into
14933         `test-json-encode-string'.
14934         (json-read-string-with-special-chars): Split into
14935         `test-json-encode-string' and `test-json-read-from-string'.
14937 2015-11-24  Anders Lindgren  <andlind@gmail.com>
14939         Fixed bug#18283: Enable applescript in NextStep.
14941         * nextstep/templates/Info.plist.in: Set NSAppleScriptEnabled to YES.
14943 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14945         Allow completion on dynamic module files in load-library
14947         * lisp/files.el (load-library): Bind completion-ignored-extensions
14948         to nil, to allow completion on dynamic modules typed as file
14949         names.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
14951 2015-11-24  Alan Mackenzie  <acm@muc.de>
14953         CC Mode: eliminate almost all byte compilation warnings
14955         * lisp/progmodes/cc-bytecomp.el (cc-bytecomp-noruntime-functions): Remove.
14956         (cc-require): Remove the crude hack that saved and restored
14957         byte-compile-noruntime-functions.
14958         (cc-conditional-require, cc-conditional-require-after-load): New macros.
14960         * lisp/progmodes/cc-defs.el (top level): Reformulate code which loaded
14961         cc-fix.el using the new macros in cc-bytecomp.el.
14963         * lisp/progmodes/cc-langs.el (c++-template-syntax-table)
14964         (c-no-parens-syntax-table): Add extra "(eval ..)"s around "'(lambda ..)"
14965         forms to remove the superflous quotes.
14967 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14969         Add one more mod-test test
14971         * modules/mod-test/test.el (mod-test-sum-test): Test the error
14972         signaled when the function is invoked with a wrong number of
14973         arguments.
14975 2015-11-24  Philipp Stephani  <phst@google.com>
14977         * modules/mod-test/mod-test.c (Fmod_test_sum): Verify there are 2 args.
14979 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
14981         Implement dynlib_addr for MS-Windows
14983         * src/dynlib.c [WINDOWSNT]: Include w32common.h.
14984         <g_b_init_get_module_handle_ex> [WINDOWSNT]: New static variable.
14985         (GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS)
14986         (GET_MODULE_HANDLE_EX_FLAG_UNCHANGED_REFCOUNT) [WINDOWSNT]: Define
14987         if undefined.
14988         (dynlib_reset_last_error): Reset g_b_init_get_module_handle_ex to
14989         zero.
14990         (dynlib_addr) [WINDOWSNT]: Non-trivial implementation to report
14991         the full file name of the module for a given address.
14993 2015-11-24  Alan Mackenzie  <acm@muc.de>
14995         Merge branch 'emacs-25' of git.sv.gnu.org:/srv/git/emacs into emacs-25
14997 2015-11-24  Alan Mackenzie  <acm@muc.de>
14999         Squashed commit of the following:
15001         commit e1ecf76585bef2eb87995f7a7f92cc12003a6f70
15002         Author: Alan Mackenzie <acm@muc.de>
15003         Date:   Tue Nov 24 16:50:09 2015 +0000
15005             Byte compile: minor amendments.
15007             * lisp/emacs-lisp/bytecomp.el (byte-compile-initial-macro-environment):
15008             add a comment to explain the binding of variables around a subsidiary
15009             compilation.
15010             (byte-compile-new-defuns): Amend the doc string.
15012         commit c537bfed1dda1593d218956ff00c6105a3ff0316
15013         Author: Alan Mackenzie <acm@muc.de>
15014         Date:   Sat Nov 21 18:43:57 2015 +0000
15016             Byte compiler: fix spurious warnings "might not be defined at runtime".
15018             Also initialize byte-compile-noruntime-functions between runs.
15020             * lisp/emacs-lisp/bytecomp.el (byte-compile-new-defuns): New variable.
15021             (byte-compile-initial-macro-environment): For eval-when-compile: bind
15022             byte-compile-unresolved-functions and byte-compile-new-defuns around
15023             byte-compile-top-level, to prevent spurious entries being made.
15024             (byte-compile-warn-about-unresolved-functions): Check whether function is
15025             in byte-compile-new-defuns before emitting a warning about it.
15026             (byte-compile-from-buffer): Initialize new variable and
15027             byte-compile-noruntime-functions to nil.
15028             (byte-compile-file-form-require): record all new functions defined by a
15029             `require' in byte-compile-new-defuns.
15030             (byte-compile-file-form-defmumble): record the new alias in
15031             byte-compile-new-defuns.
15033 2015-11-24  Eli Zaretskii  <eliz@gnu.org>
15035         Fix crash at startup related to GC of font entities
15037         * src/font.h (GC_FONT_SPEC_P, GC_FONT_ENTITY_P)
15038         (GC_FONT_OBJECT_P, GC_XFONT_SPEC, GC_XFONT_ENTITY)
15039         (GC_XFONT_OBJECT): New macros, for use in garbage collector.
15040         * src/alloc.c (compact_font_cache_entry, compact_font_caches):
15041         Don't ifdef away font cache compaction on NT_GUI, as the problems
15042         which led to that seem to have been solved.
15043         (compact_font_cache_entry): Use GC_FONT_SPEC_P, GC_XFONT_SPEC,
15044         GC_XFONT_ENTITY, and GC_XFONT_OBJECT, instead of their non-GC_
15045         cousins.  (Bug#21999)
15047 2015-11-24  Alan Mackenzie  <acm@muc.de>
15049         Byte compile: Output an error, not a warning, for odd number of args to setq
15051         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Amend.
15053 2015-11-24  Ken Raeburn  <raeburn@raeburn.org>
15055         Fix kbd_buffer iteration loop in readable_events
15057         * src/keyboard.c (readable_events): Wrap the event pointer back to the
15058         start of the kbd_buffer array inside the top of the loop instead of
15059         right before checking the loop condition, since kbd_fetch_ptr and
15060         kbd_store_ptr point past the end of the array to mean that element 0
15061         is next. (bug#21935)
15063 2015-11-24  Paul Eggert  <eggert@cs.ucla.edu>
15065         Improve text-quoting-style doc again
15067         * doc/lispref/help.texi (Keys in Documentation):
15068         Omit overkill discussion of ‘setq’.  Mention Emacs versions
15069         where ‘grave’ style was standard.
15071 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15073         Improve text-quoting-style doc
15075 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15077         Simplify module_make_function
15079         * src/emacs-module.c (module_make_function):
15080         Simplify by calling build_unibyte_string.
15082 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15084         Port better to FreeBSD’s dlfunc vs dlsym
15086         This avoids warnings when converting between void * and
15087         function pointers, which strict C11 does not allow.
15088         * configure.ac (dlfunc): Check for existence.
15089         * src/dynlib.c (dlfunc) [!HAVE_DLFUNC]: New macro.
15090         (dynlib_func): New function.
15091         * src/dynlib.h (dynlib_function_ptr, dynlib_func): New decls.
15092         * src/emacs-module.c (Fmodule_load): Use dynlib_func, not
15093         dynlib_sym, for function pointers.
15095 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15097         Simplify use of emacs_finalizer_function type
15099         * src/emacs-module.h (emacs_finalizer_function):
15100         Now EMACS_NOEXCEPT.  All users simplified to omit EMACS_NOEXCEPT.
15101         (struct emacs_env_25): Use emacs_finalizer_function where applicable.
15103 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15105         module_format_fun_env fixes
15107         * src/doprnt.c (exprintf) [HAVE_MODULES]: Also define in this case.
15108         * src/emacs-module.c (module_format_fun_env):
15109         Convert path and sym to UTF-8.
15110         Don’t use VLAs, as the C11 standard says they’re optional,
15111         and anyway they can cause core dumps with large allocations.
15112         Use exprintf rather than snprintf, as exprintf handles arbitrarily
15113         long strings.  Simplify the code a bit.
15115 2015-11-23  Dmitry Gutov  <dgutov@yandex.ru>
15117         Don't use package-user-dir in elisp-library-roots if it's not bound
15119         * lisp/progmodes/elisp-mode.el (elisp-library-roots): Don't
15120         use package-user-dir if it's not bound (bug#19759).
15122 2015-11-23  Anders Lindgren  <andlind@gmail.com>
15124         New visible-bell for NextStep (OS X El Capitan compatible).
15126         Instead of inverting a rectangle in the middle of the frame, use
15127         the standard NextStep image "caution", represented using an
15128         warning sign with an exclamation mark.  (Bug#21662)
15130         Implemented based on a suggestion drafted by Mustafa Kocaturk.
15132         * src/nsterm.m (EmacsBell): New class for managing the caution
15133         image.  Support multiple active bells, the image is removed once
15134         all bells have timed out.
15135         (ns_timeout): Removed, no longer used.
15136         (ns_ring_bell): Reimplemented to use EmacsBell.
15138 2015-11-23  Johan Bockgård  <bojohan@gnu.org>
15140         * lisp/emacs-lisp/nadvice.el (add-function): Fix debug spec.
15142         (remove-function): Ditto. (Bug#20376)
15144 2015-11-23  Mark Oteiza  <mvoteiza@udel.edu>
15146         * lisp/leim/quail/tamil-dvorak.el: Add necessary escapes.
15148 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15150         Improve how non-ASCII strings are accepted from modules
15152         * src/emacs-module.c (module_make_function, module_make_string):
15153         Build a unibyte Lisp string and then decode it by UTF-8, instead
15154         of building a multibyte string without decoding.  This is more
15155         tolerant to deviations from UTF-8.
15157 2015-11-23  Paul Eggert  <eggert@cs.ucla.edu>
15159         Port recent module changes to pickier compilers
15161         * src/emacs-module.c (module_make_function)
15162         (module_make_string): Add casts to fix pointer signedness issues.
15164 2015-11-23  Philipp Stephani  <phst@google.com>
15166         Fix how strings are accepted from modules
15168         * emacs-module.c (module_make_function, module_make_string): Use
15169         make_multibyte_string.
15170         (module_copy_string_contents): Encode before reading the byte
15171         size.  Return false if and only if an error occurred.
15173 2015-11-23  Eli Zaretskii  <eliz@gnu.org>
15175         Merge branch 'emacs-25' of git.savannah.gnu.org:/srv/git/emacs into emacs-25
15177 2015-11-23  Shakthi Kannan  <shakthimaan@gmail.com>
15179         Add the tamil-dvorak input method
15181         * lisp/leim/quail/tamil-dvorak.el: New file.  (Bug#21768)
15183         * etc/NEWS: Mention the new input method.
15185 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15187         Move setting FRAME_WINDOW_SIZES_CHANGED to resize_frame_windows.
15189         * src/frame.c (adjust_frame_size): Don't set
15190         FRAME_WINDOW_SIZES_CHANGED here ...
15191         * src/window.c (resize_frame_windows): ... but here, as suggested
15192         by Stefan Monnier.  Also remove some dead code along the way.
15194 2015-11-23  Alan Mackenzie  <acm@muc.de>
15196         * /etc/NEWS (Incompatible Lisp Changes): Also `setf' needs an even # of args.
15198 2015-11-23  Alan Mackenzie  <acm@muc.de>
15200         Signal an error when `setf' gets an odd number of arguments.
15202         * lisp/emacs-lisp/gv.el (setf): Amend.
15204 2015-11-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15206         * lisp/emacs-lisp/smie.el (smie-backward-sexp): Handle BOB better.
15208 2015-11-23  Alan Mackenzie  <acm@muc.de>
15210         * etc/NEWS (Incompatible Lisp Changes): Document new restriction on `setq'.
15212 2015-11-23  Alan Mackenzie  <acm@muc.de>
15214         Expunge occurrences of `setq' with an odd number of arguments.
15216         * lisp/apropos.el (apropos-documentation):
15217         * lisp/obsolete/complete.el (PC-include-file-all-completions):
15218         * lisp/progmodes/compile.el (compilation-goto-locus):
15219         * lisp/vc/vc-cvs.el (vc-cvs-parse-root): (twice)
15220         Insert missing nil at end of `setq' forms.
15222         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-autoload): Remove an
15223         erroneous trailing variable name from a setq, thus allowing a compilation
15224         properly to track functions not defined at runtime.
15226 2015-11-23  John Wiegley  <johnw@newartisans.com>
15228         Add a note about a questionable use of bool in xdisp.c
15230 2015-11-23  Alan Mackenzie  <acm@muc.de>
15232         Issue a warning from the byte compiler on a malformed `setq' form.
15234         Partly fixes bug#20241.
15235         * lisp/emacs-lisp/bytecomp.el (byte-compile-setq): Issue a warning when a
15236         `setq' form with an odd number of arguments is compiled.
15238 2015-11-23  Alan Mackenzie  <acm@muc.de>
15240         Don't let cconv_convert insert a nil argument into a `setq' form.
15242         Fixes bug#21983.
15243         * lisp/emacs-lisp/cconv.el (cconv-convert): Don't silently insert a nil last
15244         argument into a `setq' when there're an odd number of args.  This enables the
15245         byte compiler to issue a message in this case.
15247 2015-11-23  Alan Mackenzie  <acm@muc.de>
15249         Signal an error when `setq' has an odd number of arguments.  Fixes bug#20241.
15251         * src/eval.c (Fsetq): Signal an error on an odd number of arguments.
15252         (syms_of_eval): Add a DEFSYM for Qsetq.
15254 2015-11-23  Martin Rudalics  <rudalics@gmx.at>
15256         * doc/lispref/windows.texi (Window Sizes): Fix indices and references.
15258         * src/frame.c (adjust_frame_size): Set FRAME_WINDOW_SIZES_CHANGED (Bug#21975).
15260 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15262         Add EUDC BBDB 3 entry in NEWS
15264         * NEWS: Mention EUDC BBDB backend support for BBDB 3.
15266 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15268         Improve EUDC to BBDB 3 export
15270         * eudc-vars.el (eudc-ldap-bbdb-conversion-alist): Change phone
15271         entry to single item.  Add company conversion.
15272         * eudc-export.el (eudc-bbdbify-company): New function.
15273         (bbdb-parse-phone): Declare function.
15274         (eudc-bbdbify-phone): Add BBDB 3 support.
15275         (Bug#21971)
15277 2015-11-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
15279         Add BBDB 3 support for EUDC export
15281         * eudc.el: Add bbdb-version defvar.
15282         (eudc--using-bbdb-3-or-newer-p): New function.
15283         * eudc-export.el (eudc-create-bbdb-record): Add support for
15284         bbdb-create-internal argument list changes introduced in BBDB 3.
15285         * eudcb-bbdb.el: Remove bbdb-version defvar.
15286         (eudc-bbdb-field): Call eudc--using-bbdb-3-or-newer-p.
15287         (Bug#21971)
15289 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15291         Allow loading modules by 'load-file'
15293         * src/lread.c (Fload): Call 'unbind_to' with 'Fmodule_load' as the
15294         2nd arg, to avoid the "binding stack not balanced" error.
15295         (syms_of_lread) <module-file-suffix>: New Lisp variable.
15297         * lisp/files.el (module-file-suffix): Declare.
15298         (load-file): Remove 'module-file-suffix' from
15299         'completion-ignored-extensions', to allow completion on modules.
15301         * etc/NEWS: Mention 'module-file-suffix'.
15303 2015-11-22  Eli Zaretskii  <eliz@gnu.org>
15305         Fix unoptimized builds
15307         * src/lisp.h (XTYPE): Move before XSYMBOL, to fix unoptimized
15308         builds.
15310 2015-11-22  Dmitry Gutov  <dgutov@yandex.ru>
15312         Work around the asynchronous-empty-diff problem
15314         * lisp/vc/vc-rcs.el (vc-rcs-diff):
15315         * lisp/vc/vc-mtn.el (vc-mtn-diff):
15316         * lisp/vc/vc-hg.el (vc-hg-diff):
15317         * lisp/vc/vc-git.el (vc-git-diff): Ignore the ASYNC argument,
15318         do a synchronous process call (bug#21969).
15320 2015-11-21  Karl Fogel  <kfogel@red-bean.com>
15322         Finish excising electric indent from `open-line'
15324         * lisp/simple.el (open-line): Remove INTERACTIVE argument.
15326         * test/automated/simple-test.el (open-line-indent, open-line-hook):
15327           Adjust accordingly.
15329         This change finishes what my commit of Thu Nov 19 17:32:37 2015 -0600
15330         (git commit c59353896) started.  It turns out that having INTERACTIVE
15331         cause `post-self-insert-hook' to run (via `newline') meant `open-line'
15332         still had the electric indent behavior, as `post-self-insert-hook'
15333         normally contains `electric-indent-post-self-insert-function' ever
15334         since `electric-indent-mode' has been on by default.  Tracing the code
15335         change in `open-line' is mildly twisty, because Artur Malabarba's
15336         earliest two commits of 24 Oct 2015 first removed the `interactive'
15337         form entirely (git commit 6939896e2) and then restored it with the new
15338         extra "p" already added (git commit bd4f04f86), such that there is no
15339         single-commit diff in which one sees the second "p" appear.  Thus this
15340         change is effectively a reversion of parts of each of those commits.
15342         This could close bug#21884, at least until further discussion.
15344 2015-11-21  Dmitry Gutov  <dgutov@yandex.ru>
15346         Adhere closer to the "implicit tag name" definition
15348         * lisp/progmodes/etags.el (etags-tags-completion-table):
15349         Adhere closer to the "implicit tag name" definition.  Simplify
15350         the regexp.  Search for the explicit tag name first, and when
15351         not found, search locally for the implicit one.  (Bug#21934)
15353 2015-11-21  Stefan Monnier  <monnier@iro.umontreal.ca>
15355         Unrevert most of regexp reentrancy abort patch
15357         The problem was in:
15358           * src/syntax.c (update_syntax_table_forward): Propertize even when truncated
15359         which is hence not unreverted.
15360         The rest is:
15361         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15362         (UPDATE_SYNTAX_TABLE_FAST): Re-introduce.
15363         All callers in regex.c changed back to the _FAST versions.
15365         * test/automated/message-mode-tests.el: Tweak the test to rely on auto
15366         propertization in backward-sexp.
15368 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15370         Revert regexp reentrancy abort patch
15372         Although the patch does fix Bug#21688 and prevents a core dump,
15373         it also makes the message-mode-propertize test fail; see:
15374         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01667.html
15375         Perhaps someone else can come up with a better fix some day.
15376         * src/syntax.c (update_syntax_table_forward):
15377         Propertize even when truncated.
15378         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
15379         (UPDATE_SYNTAX_TABLE_FAST): Remove.
15380         All callers changed back to the non-_FAST versions.
15382 2015-11-21  Paul Eggert  <eggert@cs.ucla.edu>
15384         Add a few safety checks when ENABLE_CHECKING
15386         This was motivated by the recent addition of module code,
15387         which added some ENABLE_CHECKING-enabled checks that are
15388         useful elsewhere too.
15389         * src/alloc.c (compact_font_cache_entry):
15390         * src/fns.c (sweep_weak_table):
15391         * src/lread.c (oblookup):
15392         Use gc_asize rather than doing it by hand.
15393         * src/emacs-module.c (module_make_global_ref)
15394         (module_free_global_ref, module_vec_size):
15395         Omit assertions that lisp.h now checks.
15396         * src/lisp.h (XFASTINT, ASIZE): In functional implementations,
15397         check that the result is nonnegative.  Use eassume, as this
15398         info can help a bit when optimizing production code.
15399         (XSYMBOL) [!USE_LSB_TAG]: Assert that argument is a symbol,
15400         to be consistent with the USE_LSB_TAG case.
15401         (gc_asize): New function, when ASIZE is needed in the gc.
15402         (gc_aset): Use it.
15403         (HASH_TABLE_P): Move definition up, so that it can be used ...
15404         (XHASH_TABLE): ... here, to assert that the arg is a hash table.
15406 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15408         Simplify recording of main thread's ID on MS-Windows
15410         * src/w32term.c (w32_initialize):
15411         * src/w32console.c (initialize_w32_display):
15412         * src/w32fns.c (globals_of_w32fns): Don't record the main thread
15413         ID independently for each type of session (GUI, TTY, batch).
15414         * src/w32term.c (w32_init_main_thread): New function, records the
15415         main thread's thread ID.
15416         * src/w32term.h: Add prototype for w32_init_main_thread.
15417         * src/emacs.c (main) [WINDOWSNT]: Call w32_init_main_thread.
15419         * src/emacs-module.c [WINDOWSNT]: Rename main_thread_id to
15420         main_thread, for consistency with other threading libraries.  All
15421         users changed.  Include w32term.h.
15422         (check_main_thread) [WINDOWSNT]: Simplify the test: no need to
15423         make sure the main thread is alive, as we hold a handle on it
15424         opened by w32_init_main_thread.
15425         (module_init) [WINDOWSNT]: Reuse the thread ID recorded by
15426         w32_init_main_thread, instead of calling the requisite APIs once
15427         more.
15429 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15431         Call 'window-size-change-functions' for mini-windows
15433         * src/window.c (grow_mini_window, shrink_mini_window): Set the
15434         frame's 'window_sizes_changed' flag.
15435         * src/xdisp.c (redisplay_internal): Call the hooks on
15436         'window-size-change-functions' if the call to 'echo_area_display'
15437         sets the frame's 'window_sizes_changed' flag.
15438         (syms_of_xdisp) <window-size-change-functions>:
15439         Update doc string to indicate the mini-window resizes trigger a
15440         call to the hooks, and don't promise that will happen "before
15441         redisplay".  (Bug#19576, Bug#21333)
15443         * doc/lispref/windows.texi (Window Hooks): Update the description
15444         of 'window-size-change-functions'.
15446 2015-11-21  Eli Zaretskii  <eliz@gnu.org>
15448         Improve documentation of dynamic modules
15450         * src/fns.c (Frequire): Doc fix to include the dynamic module
15451         support.
15452         * src/lread.c (Fload, Vload_suffixes): Doc fixes to include the
15453         dynamic module support.
15454         (Fload): Treat the module suffix the same as '*.el' and '*.elc'
15455         wrt the MUST-SUFFIX argument.
15457         * etc/NEWS: Expand documentation of dynamically loaded modules.
15459 2015-11-21  Philipp Stephani  <phst@google.com>  (tiny change)
15461         Initial documentation for dynamic modules
15463         * etc/NEWS: Mention the new support for dynamically loaded modules.
15465 2015-11-20  Dmitry Gutov  <dgutov@yandex.ru>
15467         Add xref--etags-backend to xref-backing-functions using add-hook
15469         * lisp/progmodes/xref.el (xref-backend-functions): Move the
15470         default value into a separate `add-hook' call (bug#21964).
15472         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15473         Don't declare the xref-backend-functions variable.
15474         It doesn't make any difference.
15476 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15478         Fix double-decrement bug when freeing global refs
15480         * src/emacs-module.c (module_free_global_ref): Add a FIXME
15481         comment about error reporting.  Fix a recently-introduced typo
15482         that double-decremented the refcount.
15484 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15486         Declare emacs_module_init in the module API
15488         * src/emacs-module.h (emacs_module_init): New decl.
15489         Without it, GCC might complain about a module that defines
15490         emacs_module_init without using it.  This also checks the
15491         API better.
15493 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15495         Fix module test to use ptrdiff_t nargs too
15497         * modules/mod-test/mod-test.c (Fmod_test_return_t)
15498         (Fmod_test_sum, Fmod_test_signal, Fmod_test_throw)
15499         (Fmod_test_non_local_exit_funcall, Fmod_test_globref_make)
15500         (Fmod_test_string_a_to_b, Fmod_test_userptr_make)
15501         (Fmod_test_userptr_get, Fmod_test_vector_fill)
15502         (Fmod_test_vector_eq): Arg counts are ptrdiff_t, not int.
15503         (finalizer): Remove; no longer used.
15505 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15507         Fix reindent-introduced typo in module code
15509         * src/emacs-module.c (MODULE_SETJMP_1): Fix typo that I
15510         introduced while reindenting the code earlier, and add a
15511         comment explaining the unusual use of do-while here.
15513 2015-11-20  Anders Lindgren  <andlind@gmail.com>
15515         Fixed bug#19576: `write-file' saves wrong buffer.
15517         If a function on the hook `window-size-change-functions' doesn't
15518         restore the current buffer, functions that save and restore the
15519         current window configuration (like `y-or-no-p') could silently
15520         change the current buffer.  When `write-file' asked the user
15521         confirmation to overwrite a file, `y-or-no-p' changed the current
15522         buffer, and the wrong buffer was saved to the file.
15524         * lisp/follow.el (follow-windows-start-end): Call `select-frame'
15525         using the `norecord' parameter.
15526         (follow-window-size-change): Restore current buffer. Call
15527         `select-frame' using the `norecord' parameter. Cleanup.
15529 2015-11-20  John Wiegley  <johnw@newartisans.com>
15531         Correct a documentation error in frames.texi
15533 2015-11-20  Stephen Leake  <stephen_leake@stephe-leake.org>
15535         * lisp/cedet/mode-local.el: Delete obsolete comment
15537 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15539         Module function arg counts are ptrdiff_t, not int
15541         * src/emacs-module.c (struct module_fun_env)
15542         (module_make_function, module_funcall, Fmodule_call):
15543         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15544         Use ptrdiff_t, not int, for arg counts.
15545         * src/emacs-module.c (module_make_function): Don’t bother
15546         checking arity against MOST_POSITIVE_FIXNUM, as that’s
15547         unnecessary here.  Make the checking clearer by negating it.
15548         (module_make_function, Fmodule_call): No need to use xzalloc
15549         since the storage doesn’t need to be cleared.
15550         (module_funcall): Don’t use VLA, since C11 doesn’t guarantee support
15551         for it, and many implementations are buggy with large VLAs anyway.
15552         Use SAFE_ALLOCA_LISP instead.
15553         (module_vec_set): Don’t crash if i < 0.
15554         (module_vec_get): Don’t crash if i < MOST_NEGATIVE_FIXNUM.
15555         (module_vec_set, module_vec_get): Do fixnum checks only when
15556         i is out of array bounds, for efficiency in the usual case.
15557         (Fmodule_load): Simplify fixnum range check.
15558         (Fmodule_call): Simplify arity check.  Use xnmalloc to detect
15559         integer overflow in array allocation size.
15561 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15563         Minor improvements in module test
15565         * modules/mod-test/mod-test.c: Include stdlib.h, to avoid warnings
15566         about missing prototype of malloc.
15567         * modules/mod-test/Makefile (CFLAGS): Add -std=gnu99, to avoid
15568         compiler warnings.
15570 2015-11-20  Eli Zaretskii  <eliz@gnu.org>
15572         Improve MS-Windows implementation in dynlib.c
15574         * src/dynlib.c [WINDOWSNT]: Include errno.h, lisp.h, and w32.h.
15575         No need to include windows.h, as w32.h already does that.
15576         <dynlib_last_err>: New static variable.
15577         (dynlib_reset_last_error): New function.
15578         (dynlib_open): Convert forward slashes to backslashes.  Convert
15579         file names from UTF-8 to either UTF-16 or the current ANSI
15580         codepage, and call either LoadLibraryW or LoadLibraryA.  If the
15581         argument is NULL, return a handle to the main module, like
15582         'dlopen' does.  Record the error, if any, for use by dynlib_error.
15583         (dynlib_sym): Check the handle for validity. Record the error, if
15584         any, for use by dynlib_error.
15585         (dynlib_error): Call w32_strerror to produce the error string, and
15586         zero out the last error code, like dlerror does.
15587         (dynlib_close): Check the handle for validity.  Record the error,
15588         if any, for use by dynlib_error.  Don't call FreeLibrary with a
15589         handle for the main module.
15590         * src/w32.c (globals_of_w32): Call dynlib_reset_last_error.
15592 2015-11-20  Paul Eggert  <eggert@cs.ucla.edu>
15594         Include-file tweaks for modules
15596         * src/dynlib.c, src/emacs-module.c: Include <config.h> first.
15597         * src/dynlib.h: Do not include config.h.
15598         It’s every .c file’s responsibility to include config.h first.
15599         * src/emacs-module.c: Include emacs-module.h immediately after
15600         config.h, to test that emacs-module.h doesn’t depend on
15601         include files other than config.h.
15603 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15605         Simplify push_handler and profile its malloc
15607         * src/lisp.h (PUSH_HANDLER): Remove.
15608         All callers changed to use push_handler directly.
15609         * src/eval.c (internal_condition_case)
15610         (internal_condition_case_1, internal_condition_case_2)
15611         (internal_condition_case_n):
15612         Use same pattern as for other invokers of push_handler.
15613         (push_handler, push_handler_nosignal): Use call-by-value
15614         instead of call-by-reference.  All uses changed.
15615         (push_handler): Simplify by rewriting in terms of
15616         push_handler_nosignal.
15617         (push_handler_nosignal): Profile any newly allocated memory.
15619 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15621         * src/emacs-module.h: Include stddef.h, not stdlib.h.
15623 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
15625         Discover repository version in linked worktrees (bug#21930)
15627         * lisp/version.el (emacs-repository--version-git-1): Do not assume
15628         HEAD is at .git/HEAD, it can also be at .git/worktrees/<branch>/HEAD.
15629         (emacs-repository-get-version): Grok linked worktrees when EXTERNAL
15630         is nil too.
15632 2015-11-19  Juri Linkov  <juri@linkov.net>
15634         * lisp/replace.el (occur-regexp-descr): New function.
15635         (occur-1, occur-engine): Use it.
15637         * lisp/isearch.el (isearch-occur): Propertize regexp with
15638         isearch-string and isearch-regexp-function-descr for
15639         occur-regexp-descr to display the correct description
15640         message in the header (bug#21176, bug#21180).
15642 2015-11-19  Karl Fogel  <kfogel@red-bean.com>
15644         Revert `open-line' electric-indent sensitivity
15646         * lisp/simple.el (open-line): Remove electric indent code.
15647           (electric-indent-just-newline): Don't declare.
15649         * test/automated/simple-test.el (open-line-indent): Adjust test.
15651         This partly reverts Artur Malabarba's change that added electric
15652         indent sensitivity to `open-line' (Oct 24 22:26:27 2015 +0100, git
15653         commit bd4f04f86), and adjusts a new test he added right afterwards
15654         (Sat Oct 24 23:43:06 2015 +0100, git commit 207f235e3) accordingly.
15655         However, the new INTERACTIVE argument to `open-line', which he also
15656         added in the first commit, is not reverted here.
15658         See the thread "Questioning the new behavior of `open-line'." on the
15659         Emacs Devel mailing list, and in particular this message:
15661           From: Artur Malabarba
15662           Subject: Re: Questioning the new behavior of `open-line'.
15663           To: Karl Fogel
15664           Cc: David Kastrup, Pierpaolo Bernardi, emacs-devel
15665           Date: Wed, 18 Nov 2015 21:03:58 +0000
15666           Message-ID: \
15667             <CAAdUY-KN06pvCMy5bt3+Buk3yeKjf6n9iB2FaSTTOPpCqPwyhA@mail.gmail.com>
15669           https://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01707.html
15671 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15673         Omit unnecessary clear in Fmodule_load
15675         * src/emacs-module.c (Fmodule_load):
15676         Simplify and avoid unnecessary initialization of priv member to 0.
15678         * src/emacs-module.c: (module_vec_set, module_vec_get, module_vec_size)
15680 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15682         Prefer signed integer types in module code
15684         Generally speaking, at the C level the Emacs source code prefers
15685         signed types like ‘ptrdiff_t’ to unsigned types like ‘size_t’,
15686         partly to avoid the usual signedness confusion when comparing values.
15687         Change the module API to follow this convention.
15688         Use ‘int’ for small values that can’t exceed INT_MAX.
15689         * modules/mod-test/mod-test.c (Fmod_test_globref_make)
15690         (Fmod_test_string_a_to_b, Fmod_test_vector_fill)
15691         (Fmod_test_vector_eq):
15692         * src/emacs-module.c (struct emacs_value_frame)
15693         (module_make_global_ref, module_free_global_ref)
15694         (module_copy_string_contents, module_make_string)
15695         (module_vec_set, module_vec_get, module_vec_size):
15696         * src/emacs-module.h (struct emacs_runtime, struct emacs_env_25):
15697         * src/lread.c (suffix_p):
15698         Prefer signed to unsigned integer types.
15700 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15702         Omit ‘const’ on locals
15704         Remove ‘const’ qualifier from locals that were newly added.
15705         We don’t normally bother declaring locals with ‘const’ even
15706         though they are not modified, for the same reason we don’t
15707         bother declaring them with ‘register’ even though their
15708         addresses are not taken; the advantage in compile-time
15709         checking isn’t worth the loss of readability.
15710         * modules/mod-test/mod-test.c (Fmod_test_non_local_exit_funcall)
15711         (Fmod_test_vector_fill, Fmod_test_vector_eq):
15712         * src/emacs-module.c (MODULE_SETJMP_1)
15713         (module_make_global_ref, module_free_global_ref)
15714         (module_non_local_exit_get, module_make_function)
15715         (module_extract_integer, module_extract_float)
15716         (module_get_user_ptr, module_set_user_ptr)
15717         (module_get_user_finalizer, module_set_user_finalizer)
15718         (module_vec_get, Fmodule_call)
15719         (module_non_local_exit_signal_1)
15720         (module_non_local_exit_throw_1, lisp_to_value)
15721         (finalize_storage, allocate_emacs_value, mark_modules)
15722         (module_handle_signal, module_handle_throw)
15723         (module_format_fun_env):
15724         * src/eval.c (push_handler, push_handler_nosignal)
15725         (init_handler):
15726         * src/lread.c (suffix_p):
15727         Omit unnecessary ‘const’.
15729 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15731         Prefer intmax_t to int64_t in module code
15733         * modules/mod-test/mod-test.c (sum, Fmod_test_sum):
15734         * src/emacs-module.c (module_extract_integer)
15735         (module_make_integer):
15736         * src/emacs-module.h (struct emacs_env_25):
15737         Prefer intmax_t to int64_t.  This doesn’t change the generated
15738         code on any of the machines Emacs currently ports to, but it’s
15739         at least in theory more future-proof as C99 doesn’t guarantee
15740         that int64_t exists.
15742 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15744         Rename module.c to emacs-module.c, etc.
15746         * src/emacs-module.c: Rename from src/module.c.
15747         * src/emacs-module.h: Rename from src/module.h.
15748         All uses changed.
15750 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15752         Fix minor module problems found by static checking
15754         * src/dynlib.c (dynlib_close): #ifdef out for now, as it’s not used.
15755         * src/eval.c, src/lisp.h (lisp_eval_depth): Now static.
15756         * src/module.c (Fmodule_load): Fix pointer signedness bug.
15757         (Fmodule_call): Tell GCC that the default case is unreachable.
15759 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15761         Style fixes for indenting etc. in module code
15763         This is mostly indenting and spacing changes.  Also, remove
15764         some unnecessary static decls instead of bothering to reindent them.
15765         * src/module.h (EMACS_EXTERN_C_BEGIN): Remove, and do this inline,
15766         as most other Emacs files do for this sort of thing.
15768 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
15770         Minor improvements in modules testing Makefile
15772         * modules/mod-test/Makefile (EMACS, SO): New variables.
15773         (CFLAGS): When SO = dll, don't use -fPIC.
15774         (check): New target, runs the test.
15776 2015-11-19  Eli Zaretskii  <eliz@gnu.org>
15778         * .gitignore: Add "*.dll".
15780 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15782         Migrate modules/.gitignore into .gitignore
15784         * .gitignore: Add former contents of modules/.gitignore.
15785         * modules/.gitignore: Remove.
15787 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15789         Add copyright notices to module code
15791         Put them in the usual format for GNU Emacs copyright notices.
15793 2015-11-19  Paul Eggert  <eggert@cs.ucla.edu>
15795         Rename emacs_module.h to module.h
15797         * src/module.h: Rename from src/emacs_module.h.
15798         All uses changed.
15800 2015-11-19  Juanma Barranquero  <lekktu@gmail.com>
15802         * src/module.c (Fmodule_load): Remove unused vars `doc_name', `args'
15804         * src/lread.c (Fload): Remove unused variable `size'
15806 2015-11-19  Alan Mackenzie  <acm@muc.de>
15808         src/keyboard.c (pre-command-hook): Fix typo in doc string: "pre" -> "post".
15810 2015-11-18  Dmitry Gutov  <dgutov@yandex.ru>
15812         Prioritize looking inside vc-parent-buffer over log-view-mode fallback
15814         * lisp/vc/vc.el (vc-deduce-fileset): Prioritize looking inside
15815         vc-parent-buffer over log-view-mode fallback (bug#21955).
15817 2015-11-18  Alan Mackenzie  <acm@muc.de>
15819         lisp/isearch.el: Eliminate macro isearch-call-message, replacing with funcall.
15821 2015-11-18  Ken Brown  <kbrown@cornell.edu>
15823         * configure.ac (LIBMODULES): Don’t define on Cygwin
15825 2015-11-18  Eli Zaretskii  <eliz@gnu.org>
15827         Fix MS-Windows build --with-modules
15829         * src/module.c: Reformat copyright commentary.
15830         (module_vec_get): Use explicit cast to size_t to avoid compiler
15831         warning in 32-bit builds.
15832         (check_main_thread) [WINDOWSNT]: Fix letter-case in Windows APIs.
15833         Compare thread IDs directly, as GetThreadId is not available
15834         before Windows Vista.
15835         (check_main_thread) [WINDOWSNT]: Duplicate the thread handle
15836         without using APIs and constants not available on XP and older
15837         systems.  Obtain and store the thread ID as well.
15839 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15840             Philipp Stephani  <phst@google.com>
15842         Add dynamic module test and helper script
15844         Add 'modhelp.py' script (python2) to automate module testing and
15845         module generation.
15847         To build and test all modules in the modules/ dir
15848           $ ./modhelp.py test
15850         To generate a module from template code (good starting point)
15851           $ ./modhelp init mynewtestmodule
15853         See the script -h option for more documentation.
15855         * modules/modhelp.py: New module helper script.
15856         * modules/mod-test/Makefile: New file. Makefile for the test module.
15857         * modules/mod-test/mod-test.c: New file. Test module source file.
15858         * modules/mod-test/test.el: New file. ert test suite for the test module.
15859         * modules/.gitignore: New file. Local .gitignore file.
15861 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15863         Make 'Fload' look for modules
15865         'Fload' can now load dynamic modules. This also makes 'require' work.
15867         * src/lread.c:
15868           (suffix_p): New function.
15869           (Fload): Use 'suffix_p'.  Call 'Fmodule_load' when we try to load a file
15870           with a module suffix.
15871           (syms_of_lread): Append module suffix to 'Vload_suffixes'.
15873 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15874             Philipp Stephani  <phst@google.com>
15876         Add dynamic module module support
15878         * configure.ac: Add '--with-modules' option.  Conditionally add
15879           dynlib.o and module.o to the list of objects.  Add any system
15880           specific flags to the linker flags to support dynamic libraries.
15881         * m4/ax_gcc_var_attribute.m4: Add autoconf extension to test gcc
15882           attributes.
15883         * src/Makefile.in: Conditionally add module objects and linker flags.
15884         * src/alloc.c (garbage_collect_1): protect module local values from
15885           GC.
15886         * src/lisp.h: Add 'module_init' and 'syms_of_module' prototypes.
15887         * src/emacs_module.h: New header file included by modules.  Public
15888           module API.
15889         * src/module.c: New module implementation file.
15891 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15893         Add new User Pointer (User_Ptr) type
15895         * src/lisp.h: Add new Lisp_Misc_User_Ptr type.
15896         (XUSER_PTR): New User_Ptr accessor.
15897         * src/alloc.c (make_user_ptr): New function.
15898         (mark_object, sweep_misc): Handle Lisp_Misc_User_Ptr.
15899         * src/data.c (Ftype_of): Return 'user-ptr' for user pointer.
15900         (Fuser-ptrp): New user pointer type predicate function.
15901         (syms_of_data): New 'user-ptrp', 'user-ptr' symbol.  New 'user-ptrp'
15902         subr.
15903         * src/print.c (print_object): Add printer for User_Ptr type.
15905 2015-11-18  Aurélien Aptel  <aurelien.aptel@gmail.com>
15906             Philipp Stephani  <phst@google.com>
15908         Add portable layer for dynamic loading
15910         * src/dynlib.h: New file.
15911         * src/dynlib.c: New file.
15913 2015-11-18  Philipp Stephani  <phst@google.com>
15915         Add catch-all & no-signal version of PUSH_HANDLER
15917         Ground work for modules. Add a non-signaling version of PUSH_HANDLER and
15918         a new "catch-all" handler type.
15920         * src/eval.c (init_handler, push_handler, push_handler_nosignal): New
15921           functions.
15922         * src/fns.c (hash_remove_from_table): Expose function public.
15923         * src/lisp.h: New handler type, define macro to push_handler call.
15925 2015-11-18  Ken Brown  <kbrown@cornell.edu>
15927         Silence byte-compiler warning
15929         * lisp/server.el (server-process-filter): Silence byte-compiler
15930         warning.
15932 2015-11-18  Paul Eggert  <eggert@cs.ucla.edu>
15934         Quote symbols in docstrings using `'
15936         Be more systematic about quoting symbols `like-this' rather than
15937         `like-this or 'like-this' in docstrings.  This follows up Artur
15938         Malabarba's email in:
15939         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01647.html
15941 2015-11-18  Peder O. Klingenberg  <peder@klingenberg.no>
15943         Fix savegames in dunnet
15945         * lisp/play/dunnet.el (dun-rot13): Use the standard rot13-region instead
15946           of separate implementation.
15948 2015-11-18  Artur Malabarba  <bruce.connor.am@gmail.com>
15950         * lisp/emacs-lisp/package.el (package--with-response-buffer):
15952         Ensure we're at the start of the buffer before searching for
15953         the end of headers.
15955 2015-11-17  Xue Fuqiao  <xfq.free@gmail.com>
15957         * admin/release-process: Improve wording.
15959 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
15961         Fix docstring quoting problems with ‘ '’
15963         Problem reported by Artur Malabarba in:
15964         http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg01513.html
15965         Most of these fixes are to documentation; many involve fixing
15966         longstanding quoting glitches that are independent of the
15967         recent substitute-command-keys changes.  The changes to code are:
15968         * lisp/cedet/mode-local.el (mode-local-augment-function-help)
15969         (describe-mode-local-overload):
15970         Substitute docstrings before displaying them.
15971         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
15972         Quote the generated docstring for later substitution.
15974 2015-11-17  Eli Zaretskii  <eliz@gnu.org>
15976         Improve configure --help text for wide ints
15978         * configure.ac (wide-int): Clarify user-level advantages and
15979         disadvantages.
15981 2015-11-17  Stephen Leake  <stephen_leake@stephe-leake.org>
15983         Improve doc string
15985         * lisp/progmodes/xref.el (xref-backend-references): Improve doc string.
15987 2015-11-17  Paul Eggert  <eggert@cs.ucla.edu>
15989         eval_sub followed dangling pointer when debugging
15991         Problem reported by Pip Cet (Bug#21245).
15992         This bug could occur in eval_sub if the C compiler reused
15993         storage associated with the ‘argvals’ local after ‘argvals’
15994         went out of scope, and if the Elisp debugger stopped on Elisp
15995         function exit and accessed ‘argvals’.  It could also occur if
15996         a variadic function was called with so many arguments (over
15997         2048 args on x86-64) that SAFE_ALLOCA_LISP called malloc, then
15998         SAFE_FREE freed the arguments, then the memory manager used
15999         the storage for other purposes, then the debugger accessed the
16000         arguments.
16001         * src/eval.c (eval_sub): Declare ‘argvals’ at top level of
16002         function body.  Simplify local decls.
16003         When allocating args via SAFE_ALLOCA, call
16004         debugger before invoking SAFE_FREE, as the debugger needs
16005         access to the args.
16006         (eval_sub, apply_lambda): Rework to avoid need for
16007         set_backtrace_debug_on_exit hack.  This is cleaner,
16008         and should work better with buggy custom debuggers.
16010 2015-11-16  Daiki Ueno  <ueno@gnu.org>
16012         * lisp/image-mode.el: Support encrypted file
16014         (image-toggle-display-image): Read content from the buffer instead
16015         of the file, if the buffer holds a decrypted data.  (Bug#21870)
16017 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16019         ELF unexec: align section header
16021         This ports the recent unexelf.c changes to Fedora x86-64
16022         when configured with GCC’s -fsanitize=undefined option.
16023         * src/unexelf.c (unexec): Align new_data2_size to a multiple
16024         of ElfW (Shdr)’s alignment, so that NEW_SECTION_H returns a
16025         pointer aligned appropriately for its type.
16027 2015-11-16  Andreas Schwab  <schwab@linux-m68k.org>
16029         Do more checks on bytecode objects (Bug#21929)
16031         * src/eval.c (funcall_lambda): Check size of compiled function
16032         object.
16033         (Ffetch_bytecode): Likewise.
16035 2015-11-16  Johan Bockgård  <bojohan@gnu.org>
16037         pcase.el: Fix edebugging of backquoted cons patterns
16039         * lisp/emacs-lisp/pcase.el (pcase-QPAT): Fix edebugging of backquoted
16040         cons patterns. (Bug#21920)
16042 2015-11-16  Paul Eggert  <eggert@cs.ucla.edu>
16044         Improve fix for regex reentrancy abort
16046         Suggested by Stefan Monnier (Bug#21688).
16047         * src/syntax.c (update_syntax_table_forward):
16048         Remove recently-added PROPERTIZE arg, and assume it is true.
16049         All callers changed.
16050         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST):
16051         Invoke update_syntax_table directly.
16053 2015-11-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16055         * lisp/faces.el (faces--attribute-at-point): Use `face-list-p'
16057         * lisp/emacs-lisp/package.el (package--with-response-buffer): Missing require
16059         * lisp/emacs-lisp/nadvice.el (add-function): Escape quote
16061 2015-11-15  Vasily Korytov  <vasily.korytov@yahoo.com>
16063         Recognize .rbw and .pyw files (bug#18753)
16065         * lisp/progmodes/python.el (auto-mode-alist):
16066         Recognize .pyw files.
16068         * lisp/progmodes/ruby-mode.el (auto-mode-alist):
16069         Recognize .rbw files.
16071 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16073         Fix ruby-mode auto-mode-alist entry
16075         * lisp/progmodes/ruby-mode.el (auto-mode-alist): Add grouping
16076         around the extensions (bug#21257).
16078 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16080         Fix etags completion near eob
16082         * lisp/progmodes/etags.el (tags-completion-at-point-function):
16083         Use `goto-char', to avoid the end-of-buffer error (bug#20061).
16085 2015-11-15  Alan Mackenzie  <acm@muc.de>
16087         De-pessimize detection of C++ member initialization lists.
16089         list/progmodes/cc-engine.el (c-back-over-list-of-member-inits): New macro.
16090         (c-back-over-member-initializers): Reformulate such that c-at-toplevel-p
16091         is only called when a construct "looks right" rather than continually.
16092         (c-guess-basic-syntax, CASE 5R): Add a check for the mode being C++ Mode.
16094 2015-11-15  Stephen Leake  <stephen_leake@stephe-leake.org>
16096         Improve a few doc strings, comments
16098         * lisp/cedet/cedet-global.el (cedet-gnu-global-expand-filename):
16099         * lisp/cedet/ede/locate.el (ede-locate-base):
16100         * lisp/cedet/semantic/symref.el (semantic-symref-calculate-rootdir):
16101         * src/fns.c (Fdelq): Improve doc string.
16103         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Add FIXME.
16105 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16107         Enhance NSTRACE (trace output for NextStep).
16109         Trace can be disabled for groups of functions. By default, event
16110         functions and functions that generate lots of output are disabled.
16112         Trace output of Objective-C functions now use the "[ClassName
16113         parameter:]" form.
16115         * src/nsterm.h (NSTRACE_ALL_GROUPS, NSTRACE_GROUP_EVENTS)
16116         (NSTRACE_GROUP_UPDATES, NSTRACE_GROUP_FRINGE, NSTRACE_GROUP_COLOR)
16117         (NSTRACE_GROUP_GLYPHS, NSTRACE_GROUP_FOCUS): New macros,
16118         controlling in which function groups trace should be active.
16119         (NSTRACE_WHEN): Support for silencing a function, this also
16120         silencing all called functions.
16121         (NSTRACE_UNSILENCE): New macro, used to re-enable trace.
16122         (NSTRACE_FMT_FSTYPE, NSTRACE_ARG_FSTYPE): New macros, used to
16123         print the full screen state in NSTRACE functions.
16125         * src/nsterm.m (nstrace_depth, nstrace_num): Made volatile as they
16126         can be accessed from multiple threads.
16127         (nstrace_enabled_global): New variable, when FALSE, trace is
16128         silenced.
16129         (nstrace_restore_global_trace_state): New function, used to
16130         restore `nstrace_enabled_global' at end of block.
16131         ([EmacsView setFrame:], [EmacsWindow setFrame:display:])
16132         ([EmacsWindow setFrame:display:animation:])
16133         ([EmacsWindow setFrameTopLeftPoint:]): New functions, print trace
16134         and call corresponding super function.
16135         (Many functions): Add or enhance trace output.
16137         * src/nsimage.m (ns_image_from_file): Enhanced trace output.
16139         * src/nsfns.m (x_set_tool_bar_lines): Add trace output.
16141         * src/nsmenu.m ([EmacsToolbar setVisible:]): New function, print trace
16142         and call corresponding super function.
16144 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16146         Fixed a toolbar related issue on OS X.
16148         Earlier, when toggling the tool-bar in a maximized frame, the
16149         frame size didn't match the number of text lines, leaving an
16150         unused area at the bottom of the frame.
16152         * nsfns.m (x_set_tool_bar_lines): Exit maximized and full height
16153         fullscreen modes when tool bar is disabled.
16155 2015-11-15  Anders Lindgren  <andlind@gmail.com>
16157         Fixed OS X 10.6.8 build issue (bug#21862).
16159         * src/nsterm.h (EmacsView): Add missing declarations.
16160         * src/nsterm.m ([EmacsView windowDidBecomeKey]): New method, like
16161         the standard method but without the notification parameter.
16162         Intended to be used for direct calls.
16163         ([EmacsView windowDidEnterFullScreen]): Call the non-notification
16164         version of `windowDidBecomeKey'. Made the notification method call
16165         the non-notification method instead of the vice versa.
16166         (NSWindowDidEnterFullScreenNotification): Deleted, no longer
16167         needed.
16169 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16171         * lisp/faces.el (faces--attribute-at-point): Fix an issue
16173         Previous code would signal an error when the face at point was
16174         a manually built list of attributes such as '(:foregroud "white").
16176         * test/automated/faces-tests.el (faces--test-color-at-point): Add a test
16178 2015-11-15  Paul Eggert  <eggert@cs.ucla.edu>
16180         Fix regex abort when it tries to reenter itself
16182         Problem reported by Ken Raeburn.
16183         Solution suggested by Stefan Monnier (Bug#21688).
16184         * src/regex.c (re_match_2_internal):
16185         Use new _FAST functions to avoid regex code reentering itself.
16186         * src/syntax.c (update_syntax_table_forward): New arg PROPERTIZE.
16187         All callers changed.
16188         * src/syntax.h (UPDATE_SYNTAX_TABLE_FORWARD_FAST)
16189         (UPDATE_SYNTAX_TABLE_FAST): New inline functions.
16191 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16193         Improve Ruby 1.9-style keyword keys highlighting
16195         * lisp/progmodes/ruby-mode.el (ruby-font-lock-keywords):
16196         Handle required keyword arguments (bug#21367).
16197         And highlight the colon together with the name.
16199 2015-11-15  Dmitry Gutov  <dgutov@yandex.ru>
16201         Unify the absolutely equal xref-backend-references implementations
16203         * lisp/progmodes/elisp-mode.el (xref-backend-references):
16204         Remove.
16206         * lisp/progmodes/etags.el (xref-backend-references):
16207         Remove.
16209         * lisp/progmodes/xref.el (xref-backend-references):
16210         Define the default implementation.
16212 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16214         Update project-find-regexp for the new xref API
16216         * lisp/progmodes/project.el (project--read-regexp):
16217         Update to use the new xref API methods.
16219         * lisp/progmodes/xref.el (xref-find-backend): Autoload.
16221 2015-11-14  Dmitry Gutov  <dgutov@yandex.ru>
16223         Fix replacing a match with a shorter string
16225         In effect, partially reverting fe973fc.
16227         * lisp/progmodes/xref.el (xref-query-replace): Store the end
16228         of each match as a marker again, instead of length.
16229         (xref--query-replace-1): Update accordingly.
16231 2015-11-14  Artur Malabarba  <bruce.connor.am@gmail.com>
16233         * lisp/progmodes/xref.el (xref-pop-marker-stack): Downgrade errors
16235         Signal user-errors instead.
16237 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16239         Document 'describe-symbol'
16241         * doc/emacs/help.texi (Help Summary): Mention "C-h o".
16242         (Name Help): Document "C-h o" and describe-symbol.
16244         * lisp/help-fns.el (describe-symbol): Doc fix.
16246 2015-11-14  Paul Eggert  <eggert@cs.ucla.edu>
16248         Change test name to avoid spellcheck issue.
16250 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16252         Avoid signaling an error in 'describe-symbol'
16254         * lisp/help-fns.el (describe-symbol): Avoid errors when the symbol
16255         exists as a function/variable/face/etc., but is undocumented.
16257         * test/automated/help-fns.el (help-fns-test-describe-symbol): New
16258         test.
16260 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16262         * INSTALL (--with-cairo): Document this new configure option.
16264 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16266         Document that GNU Make >= 3.81 is required to build Emacs
16268         * doc/lispref/internals.texi (Building Emacs): Document that GNU
16269         Make 3.81 or later is now required.
16271 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
16273         * CONTRIBUTE (Branches): Improve wording for back-ported commits.
16275 2015-11-13  l3thal  <kwhite@gnu.org>
16277         Merge branch 'erc-async-reconnect' into emacs-25
16279         Reconnect asynchronously.
16281 2015-11-11  Alan Mackenzie  <acm@muc.de>
16283         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
16285         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
16286         Windows" and new @defun selected-window-group.
16287         (Window Start and End): Describe new &optional parameter GROUP and
16288         ...-group-function for window-start, window-end, set-window-start, and
16289         pos-visible-in-window-p.
16290         (Textual Scrolling) Describe the same for recenter.
16291         doc/lispref/positions.texi (Screen Lines): Describe the same for
16292         move-to-window-line.
16294         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
16295         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
16296         new optional parameter "group".  At the beginning of each, check whether the
16297         corresponding ...-group-function is set to a function, and if so execute this
16298         function in place of the normal processing.
16299         (syms_of_window): Define symbols for the six new variables below.
16300         (window-start-group-function, window-end-group-function)
16301         (set-window-start-group-function, recenter-group-function)
16302         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
16303         New permanent local buffer local variables.
16304         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
16305         Fpos_visible_in_window_p.
16307         lisp/window.el (selected-window-group-function): New permanent local buffer
16308         local variable.
16309         (selected-window-group): New function.
16311         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
16312         enable, kill them at mode disable.  Add/remove follow-after-change to/from
16313         after-change-functions.
16314         (follow-start-end-invalid): New variable.
16315         (follow-redisplay): Manipulate follow-start-end-invalid.
16316         (follow-after-change, follow-window-start, follow-window-end)
16317         (follow-set-window-start, follow-pos-visible-in-window-p)
16318         (follow-move-to-window-line, follow-sit-for): New functions.
16320         lisp/isearch.el (isearch-call-message): New macro.
16321         (isearch-update, with-isearch-suspended, isearch-del-char)
16322         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
16323         (with-isearch-suspended): Rearrange code such that isearch-call-message is
16324         invoked before point is moved.
16325         (isearch-message): Add comment about where point must be at function call.
16326         (isearch-search): Remove call to isearch-message.
16327         (isearch-lazy-highlight-window-group): New variable.
16328         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
16329         the battery of tests to ...
16330         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
16331         Note: (sit-for 0) is still called.
16332         (isearch-lazy-highlight-update): Check membership of
16333         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
16334         property.
16335         (isearch-update, isearch-done, isearch-string-out-of-window)
16336         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
16337         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
16338         (isearch-lazy-highlight-update): Call the six amended primitives (see
16339         src/window.c above) with the new `group' argument set to t, to cooperate
16340         with Follow Mode.
16342 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
16344         * shr.el (shr-descend): Allow using lambdas in external functions.
16346 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
16348         * admin/gitmerge.el: Tweaks that seemed necessary
16350         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
16351         (gitmerge-maybe-resume): Provide explicit empty commit message.
16353 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
16355         Use a different port for TLS erc
16357         * lisp/erc/erc.el (erc-default-port-tls): New variable
16358         (bug#19497).
16359         * lisp/erc/erc.el (erc-tls): Use it.
16361 2015-12-25  Alain Schneble  <a.s@realize.ch>
16363         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
16365         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
16366         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
16367         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
16368         information in URL-struct.
16369         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
16370         path and query into nil path and query, respectively.
16371         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
16372         empty path into an absolute ("/") path.
16373         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
16374         fragment-only URIs. Do not just return them unchanged.
16375         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
16376         reference URI should not drop the last segment.
16378 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16380         Let url use default file modes when copying files
16382         * lisp/url/url-handlers.el (url-copy-file): Use default file
16383         modes when copying files (bug#11400).
16385 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
16387         Doc fix for url-http
16389         * lisp/url/url-http.el (url-http): Document better return values
16390           (bug#13187) (tiny change)
16392 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16394         * eww.el (eww-display-html): Support <button> tags (bug#20485).
16396 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16398         Made ffap-url-p a defun instead of a defsubst
16400         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
16401         since there doesn't seem to be much of a reason for it to be a
16402         defsubst (bug#18203).
16404 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16406         Add a command to view files in the browser to dired
16408         * lisp/dired.el (dired-mode-map): Add the `W' command
16409         (bug#18810).
16411 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16413         Allow http://user:pass@foo/ URLs again
16415         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
16416         user/passwords in URLs (bug#19046).
16418 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16420         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
16422 2015-12-25  Samer Masterson  <samer@samertm.com>
16424         Autoload url-insert-buffer-contents
16426         * lisp/url/url-handlers.el: Add autoload cookie so that
16427         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
16429 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16431         Allow toggling colors in eww
16433         * doc/misc/eww.texi (Basics): Mention "C".
16435         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
16437         * lisp/net/shr.el (shr-use-colors): New variable.
16438         (shr-colorize-region): Use it.
16440 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16442         Follow meta refresh tags in eww
16444         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
16446 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16448         More eww file name coding fixes
16450         * eww.el (eww-decode-url-file-name): Use the base coding
16451         system to check for encodability.
16453 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16455         Always save eww history
16457         * eww.el (eww-setup-buffer): Always save history, even when
16458         called from outside the eww buffer (bug#19638).
16460 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16462         Default web pages to right-to-left
16464         * eww.el (eww-mode): Most web pages are left-to-right, so make
16465         that the default (bug#19801).
16467         * shr.el (shr-tag-html): Respect "dir" attributes
16468         (left-to-right, right-to-left).
16470 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16472         Make toggling checkboxes work again
16474         * eww.el (eww-update-field): Make toggling checkboxes work
16475         again (bug#21881).
16477 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16479         Don't store cookies with empty names
16481         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
16482         cookies with empty names (bug#21936).
16484 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16486         * shr.el (shr-descend): Stop rendering before we run out of
16487         specpdl room (bug#22117).
16489 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16491         Use cl-reduce, not reduce.
16493 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
16495         Allow several <tbody> tags in shr
16497         * shr.el (shr-table-body): New function to find the real body
16498         of a table.
16499         (shr-tag-table): Use it to render several <tbody> tags in a
16500         table (bug#22170).
16502 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
16504         Make prettier unique file names in eww
16506         (eww-make-unique-file-name): Make unique file names by making
16507         files like foo(2).jpg instead of foo(1)(2).jpg.
16509 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
16511         Decode hex-encoded URLs before using them as file names
16513         * eww.el (eww-decode-url-file-name): New function.
16514         (eww-download-callback): Use it to decode file names before
16515         saving them.
16517 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>  (tiny change)
16519         * doc/misc/emacs-gnutls.texi (Help For Users): Document FreeBSD bundle.
16520         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
16522 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
16524         Allow overriding shr functions from eww
16526         * eww.el (eww-display-html): Allow overriding elements in
16527         `shr-external-rendering-functions'.
16529 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
16531         Ignore invalid SVG images
16533         * shr.el (shr-tag-svg): Ignore SVG images that have no width
16534         or height, because these can't be displayed by ImageMagick,
16535         anyway.
16537 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
16539         shr table rendering fix
16541         * shr.el (shr-tag-table): Allow rendering body-less tables
16542         that have headers.
16544 2015-12-22  Sam Steingold  <sds@gnu.org>
16546         clipboard should still work even if interprogram-* is disabled
16548         (clipboard-yank): When `interprogram-cut-function' is nil,
16549         bind it to `gui-selection-value' - the default value.
16550         (clipboard-kill-region, clipboard-kill-ring-save): When
16551         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
16552         the default value.
16554 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
16556         Fix bootstrap issue with dired-loaddefs
16558         * lisp/dired.el: Autoloads for secondary files loaded optionally.
16560 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
16562         dired generate autoloads to non-versioned file.
16564         * lisp/dired.el: Remove autoloads.
16565         * lisp/Makefile.in: Add dired to autogenel.
16566         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
16567         * test/lisp/dired-tests.el: Add new test.
16569 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
16571         eieio generate autoloads to non-versioned file.
16573         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
16574         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
16575           Remove autoloads.
16576         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
16577           lisp/emacs-lisp/eieio-opt.el: Update file local.
16578         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
16580 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
16582         htmlfontify generate autoload to non-versioned file.
16584         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
16585         * lisp/hfy-cmap.el: Update file local.
16586         * lisp/htmlfontify.el: Remove autoloads, add require.
16587         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
16589 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
16591         ibuffer generate autoloads to non-versioned file.
16593         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
16594         * lisp/ibuf-ext.el: Update file local.
16595         * lisp/ibuffer.el: Remove autoloads and add a require.
16596         * test/lisp/ibuffer-tests.el: Test that autoload is working.
16598 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
16600         rmail generate autoloads to non-versioned file.
16602         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
16603         * lisp/mail/rmail.el: Remove autoloads, add require.
16604         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
16605           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
16606           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
16607           lisp/mail/undigest.el: Update file-local.
16608         * test/lisp/mail/rmail-tests.el:
16610 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
16612         Add autoload-force target.
16614         * lisp/Makefile.in (autoload-force): New target.
16616 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
16618         ps-print generate autoloads to non versioned file.
16620         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
16621         * lisp/ps-print.el: Remove autoloads.
16622         * lisp/ps-mule.el: Update file-local.
16623         * test/lisp/ps-print-tests.el: Test autoload functionality.
16625 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
16627         reftex generate autoloads to non versioned file.
16629         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
16630         * lisp/textmodes/reftex.el: Remove autoloads.
16631         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
16632           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
16633           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
16634           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
16635           lisp/textmodes/reftex-toc.el: Update autoload file-local.
16636         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
16637           function.
16639 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
16641         * lisp/calculator.el (calculator-define-key): Undo last change
16643         Make map argument mandatory instead (bug#22106).
16644         (calculator-add-operators): Pass the argument that's not optional any more.
16646 2015-12-03  Glenn Morris  <rgm@gnu.org>
16648         * Makefile.in: Avoid duplication.
16650         (have-tests): New rule.
16651         (check, check-maybe): Use it.
16653 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
16655         make check unconditional, check-maybe top-level.
16657          * Makefile.in: Add check-maybe target.
16658          * test/Makefile.in: Restore unconditional behaviour to make check.
16660 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
16662         Tests now support out-of-source-build.
16664          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
16665            about current working directory.
16667 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
16669         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
16671 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
16673         Improve documentation and clean up.
16675          * test/Makefile.in: Improve documentation, use EMACS variable
16676            correctly, and clean up makefile rules.
16678 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
16680         Update file headers for name change.
16682          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
16684 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
16686         Test files renamed to new scheme.
16688          * (finalizer-tests.el): Now renamed alloc-tests.el
16689          * (zlib-tests.el): Now renamed decompress-tests.el.
16691 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
16693         Tests now depend on source files
16695          * test/Makefile.in: Include dependences from tests to source files.
16696          * test/make-test-deps.emacs-lisp: New file
16697          * .gitignore: Ignore generated make include file
16699 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
16701         * lisp/progmodes/which-func.el: Improve disabling the mode
16703         Use lexical-binding.
16704         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
16705         (which-func, which-func-format): Remove redundant :group arg.
16706         (which-func-try-to-enable): New function.
16707         (which-func-ff-hook, which-function-mode): Use it.
16708         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
16709         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
16711 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
16713         * lisp/calculator.el (calculator-define-key): Silence warning
16715         ...about unknown calculator-mode-map.
16717 2015-11-29  Eli Barzilay  <eli@barzilay.org>
16719         * lisp/calculator.el: more improvements and bugfixes.
16721         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
16722           effect anyway.)
16724         - Simplify `calculator-number-to-string' by throwing most of the work
16725           onto `number-to-string', leaving just some tweaks for decimal inputs.
16726           This leads to some minor changes, for example, pasting "1x1" in hex
16727           mode would warn that "x" is ignored and result in "11" (and it wasn't
16728           done in decimal mode), whereas now it just ignores everything from the
16729           "x" and on and result in a "1" just like in decimal input mode.  Also,
16730           overflows are left for `number-to-string' to deal with.
16732         - `calculator-paste' is very simple as a result.
16734         - Extend the simplified `calculator-paste': with a prefix argument it
16735           pastes a string as if the characters were entered.  This can be used
16736           to reduce expressions, but note that it's a simple literal operation,
16737           so precedence can be messed, a number can be paster while entering a
16738           number, spaces and newlines matter, etc.
16740         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
16741           operator.
16743         - Fix a bug in `calculator-put-value': avoid grouping in the display
16744           that is used to construct `calculator-curnum'.  This would trigger
16745           when pasting or getting a value from a register in some radix mode
16746           with a large enough value.  Another fix: make the output radix equal
16747           the input one, otherwise numbers could be converted twice.
16749 2015-11-29  Eli Barzilay  <eli@barzilay.org>
16751         * lisp/calculator.el: Re-do key bindings.
16753         Use a helper function that arranges a parent keymap that binds alternate
16754         case keys so if some letter key is unbound and it's un/shifted version
16755         is, it will get used.  This makes the global-map trickery unnecessary.
16757         Also switch to passing strings that name keys through `kbd'.
16759 2015-11-29  Eli Barzilay  <eli@barzilay.org>
16761         * lisp/calculator.el: improve radix modes
16763         Fix prompt for some input radix with decimal output (eg, "BD" instead of
16764         the incorrect "B="); also, some minor docstring tweaks for these.
16766 2015-11-29  Eli Barzilay  <eli@barzilay.org>
16768         * lisp/calculator.el: better reading of register names
16770         Use `register-read-with-preview' with a dynamically bound
16771         `register-alist' and a proper preview function to read register names.
16773 2015-11-29  Eli Barzilay  <eli@barzilay.org>
16775         * lisp/calculator.el: General improvements
16777         Use things like `when', `unless', and `push'.
16779         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
16780         non-electric mode.
16782 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
16784         Fix a problem with gfilenotify in filenotify-tests.el
16786         * test/lisp/filenotify-tests.el
16787         (file-notify--test-expected-events): Remove.
16788         (file-notify--test-cleanup): Do not set that variable.
16789         (file-notify--test-with-events): EVENTS can also be a list of lists.
16790         (file-notify-test02-events, file-notify-test04-file-validity):
16791         Adapt expected result.
16793 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
16795         * .gitignore: Adjust to changes in 'test' directory structure.
16797 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
16799         Fix test/manual/etags/Makefile
16801         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
16802         changes in 'test' directory structure.
16804 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
16806         Exclude resource dirs from search for tests.
16808         * test/Makefile.in: Test file locations are now found with find
16809           rather than using finds native functions.
16811 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
16813         Add test targets without directory names.
16815          * (test/Makefile.in): Extend test_template to add two targets for each
16816            file.
16818 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
16820         * lisp/emacs-lisp/package.el: Require url-handlers
16822 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
16824         Move elisp-mode-tests to new function names.
16826          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
16827          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
16829 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
16831         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
16833 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
16835         Merge branch 'feature/standard-test-location'
16837 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
16839         * lisp/emacs-lisp/eieio.el: Add some default implementations
16841         (standard-class): Mark it obsolete.
16842         (slot-missing): Give it a default implementation.
16843         (destructor): Simplify and mark it obsolete.
16844         (object-print): Give it a default implementation.
16845         (eieio-change-class): Rename from change-class.
16846         (change-class): Redefine as obsolete alias.
16848 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16850         Some final fixes in file notification before merging with master
16852         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
16853         (file-notify-callback): Improve check for `stopped' event.  Call
16854         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
16855         (file-notify-add-watch): In case FILE is not a directory, call the
16856         file monitor for the kqueue backend.  Otherwise, call the
16857         directory monitor for the upper directory.
16859         * src/inotify.c (inotifyevent_to_event): Extract file name from
16860         watch_object if the event doesn't provide it.
16861         (Finotify_add_watch): Add file name to watch_object.
16863         * test/automated/file-notify-tests.el (file-notify--test-timeout):
16864         Use different timeouts for different libraries.
16865         (file-notify--test-with-events): Suppress lock files.  Flush
16866         outstanding events before running the body.
16867         (file-notify-test02-events, file-notify-test04-file-validity): Do
16868         not skip cygwin tests.  Add additional test for file creation.
16869         Adapt expected result for different backends.
16870         (file-notify-test03-autorevert): Some of the tests don't work for
16871         w32notify.
16872         (file-notify-test06-many-events): Rename into both directions.
16874 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16876         Rework file notifications, kqueue has problems with directory monitors
16878         * lisp/filenotify.el (file-notify-add-watch): Call the native
16879         add-watch function on the file, not on the dir.
16881         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
16882         about already deleted entries.
16884         * test/automated/auto-revert-tests.el
16885         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
16886         since this deletes the target file first.
16888         * test/automated/file-notify-tests.el (file-notify--test-event-test):
16889         Make stronger checks.
16890         (file-notify-test01-add-watch, file-notify-test02-events)
16891         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
16892         Rewrite in order to call file monitors but directory monitors.
16893         (file-notify-test06-many-events): Ler rename work in both directions.
16895 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16897         Continue with pending events
16899         * src/kqueue.c (pending_events): Remove global variable.
16900         (kqueue_compare_dir_list): Create `write' event for not used
16901         pending events.
16902         (globals_of_kqueue): Remove initialization of pending_events.
16904 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16906         Improve loops in file-notify-test06-many-events
16908         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
16909         Use `read-event' pauses for the `write-file' loops; otherwise
16910         events are lost in inotify and gfilenotify cases.
16912 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16914         Handle more complex rename operation in kqueue
16916         * src/kqueue.c (pending_events): New variable.
16917         (kqueue_compare_dir_list): Handle more complex rename operation.
16918         (globals_of_kqueue): Initialize pending_events.
16920         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
16921         Adapt expected events in the `rename-file' case.
16922         (file-notify-test06-many-events-remote): Declare.
16924 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
16926         New test with a larger number of events
16928         * test/automated/file-notify-tests.el (file-notify--test-with-events):
16929         Make timeout heuristically depend on the number of events.
16931         (file-notify-test06-many-events): Use it for new test.
16933 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16935         Further fixes for kqueue
16937         * lisp/filenotify.el (file-notify-callback): Raise also event if
16938         directory name matches.
16939         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
16941         * src/kqueue.c (kqueue_generate_event): Use watch_object as
16942         argument instead of ident.  Remove callback argument.  Adapt
16943         callees.  Check actions whether they are monitored flags.
16945         * test/automated/file-notify-tests.el (file-notify--test-library):
16946         New defun.
16947         (file-notify-test00-availability, file-notify-test02-events)
16948         (file-notify-test04-file-validity)
16949         (file-notify-test05-dir-validity): Use it.
16950         (file-notify-test02-events, file-notify-test04-file-validity): Add
16951         `read-event' calls between different file actions, in order to
16952         give the backends a chance to rais an event.  Needed especially
16953         for kqueue.  In case of deleting a directory, there are two
16954         `deleted' events.
16956 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16958         Code cleanup of kqueue.c
16960         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
16961         (kqueue_compare_dir_list): Do not loop when calling
16962         directory_files_internal.  Remove checks for "." and "..", this is
16963         done in kqueue_directory_listing now.
16964         (Fkqueue_add_watch): Check for proper emacs_open flags.
16966 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16968         Doc changes for kqueue
16970         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
16971         Fix some glitches in the example.
16973 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16975         Finish implementation in kqueue.c
16977         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
16978         Simplify access to list.
16979         (kqueue_compare_dir_list): Simplify access to list.  Raise
16980         `delete' event if directory does not exist any longer.  Otherwise,
16981         wait until directory contents has changed.  Fix error in check.
16983 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16985         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
16987 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
16989         More work on kqueue
16991         * lisp/filenotify.el (file-notify-callback): Handle also the
16992         `rename' event from kqueue.
16993         (file-notify-add-watch): Do not register an entry twice.
16995         * src/kqueue.c (kqueue_directory_listing): New function.
16996         (kqueue_generate_event): New argument FILE1.  Adapt callees.
16997         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
16999 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17001         Implement directory events
17003         * lisp/filenotify.el (file-notify-handle-event)
17004         (file-notify-callback): Remove traces.
17006         * src/kqueue.c: Include <sys/time.h>.
17007         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
17008         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
17009         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
17010         Compute initial directory listing.  Close file descriptor in case
17011         of errors.
17012         (syms_of_kqueue): Declare Qcreate.
17014 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
17016         Build fixes for kqueue support
17018         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
17019         flag.
17021         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
17022         kqueue on *BSD.
17024 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17026         Continue kqueue implementation
17028         * lisp/filenotify.el (file-notify-handle-event)
17029         (file-notify-callback): Enable trace messages.
17031         * src/kqueue.c: Include also <sys/types.h>.
17032         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
17033         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
17034         (syms_of_kqueue): Add them.
17036 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17038         Work on kqueue
17040         * lisp/filenotify.el (file-notify--library)
17041         (file-notify-descriptors, file-notify-callback)
17042         (file-notify-add-watch, file-notify-rm-watch)
17043         (file-notify-valid-p): Add kqueue support.
17045         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
17047 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
17049         Add kqueue support
17051         * configure.ac (--with-file-notification): Add kqueue.
17052         (top): Remove special test for "${HAVE_NS}" and
17053         ${with_file_notification}, this is handled inside gfilenotify
17054         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
17055         instead of library specific variables.
17057         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
17059         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
17061         * src/kqueue.c: New file.
17063         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
17065 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17067         Update elisp-mode-tests for changed file location.
17069          * test/lisp/progmodes/elisp-mode-tests.el:
17071 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17073         Exclude manual tests from Makefile
17075          * test/Makefile.in:
17077 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17079         Move package test files to new directory.
17081          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
17082          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
17084 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17086         Restore delete Makefiles and fix .gitignore.
17088          * .gitignore: Update Makefiles to changed locations
17089          * test/lisp/progmodes/flymake-resources/Makefile,
17090            test/manual/etags/Makefile,
17091            test/manual/etags/make-src/Makefile,
17092            test/manual/indent/Makefile: Restored and moved to new location.
17094 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17096         Test infrastructure: updates after directory move
17098          * (test/Makefile.in): Support directories several levels deep.
17099          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
17100          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
17102 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
17104         Rename all test files to reflect source layout.
17106          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
17107            test directory moves.
17108          * test/file-organisation.org: New file.
17109          * test/automated/Makefile.in
17110            test/automated/data/decompress/foo.gz
17111            test/automated/data/epg/pubkey.asc
17112            test/automated/data/epg/seckey.asc
17113            test/automated/data/files-bug18141.el.gz
17114            test/automated/data/flymake/test.c
17115            test/automated/data/flymake/test.pl
17116            test/automated/data/package/archive-contents
17117            test/automated/data/package/key.pub
17118            test/automated/data/package/key.sec
17119            test/automated/data/package/multi-file-0.2.3.tar
17120            test/automated/data/package/multi-file-readme.txt
17121            test/automated/data/package/newer-versions/archive-contents
17122            test/automated/data/package/newer-versions/new-pkg-1.0.el
17123            test/automated/data/package/newer-versions/simple-single-1.4.el
17124            test/automated/data/package/package-test-server.py
17125            test/automated/data/package/signed/archive-contents
17126            test/automated/data/package/signed/archive-contents.sig
17127            test/automated/data/package/signed/signed-bad-1.0.el
17128            test/automated/data/package/signed/signed-bad-1.0.el.sig
17129            test/automated/data/package/signed/signed-good-1.0.el
17130            test/automated/data/package/signed/signed-good-1.0.el.sig
17131            test/automated/data/package/simple-depend-1.0.el
17132            test/automated/data/package/simple-single-1.3.el
17133            test/automated/data/package/simple-single-readme.txt
17134            test/automated/data/package/simple-two-depend-1.1.el
17135            test/automated/abbrev-tests.el
17136            test/automated/auto-revert-tests.el
17137            test/automated/calc-tests.el
17138            test/automated/icalendar-tests.el
17139            test/automated/character-fold-tests.el
17140            test/automated/comint-testsuite.el
17141            test/automated/descr-text-test.el
17142            test/automated/electric-tests.el
17143            test/automated/cl-generic-tests.el
17144            test/automated/cl-lib-tests.el
17145            test/automated/eieio-test-methodinvoke.el
17146            test/automated/eieio-test-persist.el
17147            test/automated/eieio-tests.el
17148            test/automated/ert-tests.el
17149            test/automated/ert-x-tests.el
17150            test/automated/generator-tests.el
17151            test/automated/let-alist.el
17152            test/automated/map-tests.el
17153            test/automated/advice-tests.el
17154            test/automated/package-test.el
17155            test/automated/pcase-tests.el
17156            test/automated/regexp-tests.el
17157            test/automated/seq-tests.el
17158            test/automated/subr-x-tests.el
17159            test/automated/tabulated-list-test.el
17160            test/automated/thunk-tests.el
17161            test/automated/timer-tests.el
17162            test/automated/epg-tests.el
17163            test/automated/eshell.el
17164            test/automated/faces-tests.el
17165            test/automated/file-notify-tests.el
17166            test/automated/auth-source-tests.el
17167            test/automated/gnus-tests.el
17168            test/automated/message-mode-tests.el
17169            test/automated/help-fns.el
17170            test/automated/imenu-test.el
17171            test/automated/info-xref.el
17172            test/automated/mule-util.el
17173            test/automated/isearch-tests.el
17174            test/automated/json-tests.el
17175            test/automated/bytecomp-tests.el
17176            test/automated/coding-tests.el
17177            test/automated/core-elisp-tests.el
17178            test/automated/decoder-tests.el
17179            test/automated/files.el
17180            test/automated/font-parse-tests.el
17181            test/automated/lexbind-tests.el
17182            test/automated/occur-tests.el
17183            test/automated/process-tests.el
17184            test/automated/syntax-tests.el
17185            test/automated/textprop-tests.el
17186            test/automated/undo-tests.el
17187            test/automated/man-tests.el
17188            test/automated/completion-tests.el
17189            test/automated/dbus-tests.el
17190            test/automated/newsticker-tests.el
17191            test/automated/sasl-scram-rfc-tests.el
17192            test/automated/tramp-tests.el
17193            test/automated/obarray-tests.el
17194            test/automated/compile-tests.el
17195            test/automated/elisp-mode-tests.el
17196            test/automated/f90.el
17197            test/automated/flymake-tests.el
17198            test/automated/python-tests.el
17199            test/automated/ruby-mode-tests.el
17200            test/automated/subword-tests.el
17201            test/automated/replace-tests.el
17202            test/automated/simple-test.el
17203            test/automated/sort-tests.el
17204            test/automated/subr-tests.el
17205            test/automated/reftex-tests.el
17206            test/automated/sgml-mode-tests.el
17207            test/automated/tildify-tests.el
17208            test/automated/thingatpt.el
17209            test/automated/url-future-tests.el
17210            test/automated/url-util-tests.el
17211            test/automated/add-log-tests.el
17212            test/automated/vc-bzr.el
17213            test/automated/vc-tests.el
17214            test/automated/xml-parse-tests.el
17215            test/BidiCharacterTest.txt
17216            test/biditest.el
17217            test/cedet/cedet-utests.el
17218            test/cedet/ede-tests.el
17219            test/cedet/semantic-ia-utest.el
17220            test/cedet/semantic-tests.el
17221            test/cedet/semantic-utest-c.el
17222            test/cedet/semantic-utest.el
17223            test/cedet/srecode-tests.el
17224            test/cedet/tests/test.c
17225            test/cedet/tests/test.el
17226            test/cedet/tests/test.make
17227            test/cedet/tests/testdoublens.cpp
17228            test/cedet/tests/testdoublens.hpp
17229            test/cedet/tests/testfriends.cpp
17230            test/cedet/tests/testjavacomp.java
17231            test/cedet/tests/testnsp.cpp
17232            test/cedet/tests/testpolymorph.cpp
17233            test/cedet/tests/testspp.c
17234            test/cedet/tests/testsppcomplete.c
17235            test/cedet/tests/testsppreplace.c
17236            test/cedet/tests/testsppreplaced.c
17237            test/cedet/tests/testsubclass.cpp
17238            test/cedet/tests/testsubclass.hh
17239            test/cedet/tests/testtypedefs.cpp
17240            test/cedet/tests/testvarnames.c
17241            test/etags/CTAGS.good
17242            test/etags/ETAGS.good_1
17243            test/etags/ETAGS.good_2
17244            test/etags/ETAGS.good_3
17245            test/etags/ETAGS.good_4
17246            test/etags/ETAGS.good_5
17247            test/etags/ETAGS.good_6
17248            test/etags/a-src/empty.zz
17249            test/etags/a-src/empty.zz.gz
17250            test/etags/ada-src/2ataspri.adb
17251            test/etags/ada-src/2ataspri.ads
17252            test/etags/ada-src/etags-test-for.ada
17253            test/etags/ada-src/waroquiers.ada
17254            test/etags/c-src/a/b/b.c
17255            test/etags/c-src/abbrev.c
17256            test/etags/c-src/c.c
17257            test/etags/c-src/dostorture.c
17258            test/etags/c-src/emacs/src/gmalloc.c
17259            test/etags/c-src/emacs/src/keyboard.c
17260            test/etags/c-src/emacs/src/lisp.h
17261            test/etags/c-src/emacs/src/regex.h
17262            test/etags/c-src/etags.c
17263            test/etags/c-src/exit.c
17264            test/etags/c-src/exit.strange_suffix
17265            test/etags/c-src/fail.c
17266            test/etags/c-src/getopt.h
17267            test/etags/c-src/h.h
17268            test/etags/c-src/machsyscalls.c
17269            test/etags/c-src/machsyscalls.h
17270            test/etags/c-src/sysdep.h
17271            test/etags/c-src/tab.c
17272            test/etags/c-src/torture.c
17273            test/etags/cp-src/MDiagArray2.h
17274            test/etags/cp-src/Range.h
17275            test/etags/cp-src/burton.cpp
17276            test/etags/cp-src/c.C
17277            test/etags/cp-src/clheir.cpp.gz
17278            test/etags/cp-src/clheir.hpp
17279            test/etags/cp-src/conway.cpp
17280            test/etags/cp-src/conway.hpp
17281            test/etags/cp-src/fail.C
17282            test/etags/cp-src/functions.cpp
17283            test/etags/cp-src/screen.cpp
17284            test/etags/cp-src/screen.hpp
17285            test/etags/cp-src/x.cc
17286            test/etags/el-src/TAGTEST.EL
17287            test/etags/el-src/emacs/lisp/progmodes/etags.el
17288            test/etags/erl-src/gs_dialog.erl
17289            test/etags/f-src/entry.for
17290            test/etags/f-src/entry.strange.gz
17291            test/etags/f-src/entry.strange_suffix
17292            test/etags/forth-src/test-forth.fth
17293            test/etags/html-src/algrthms.html
17294            test/etags/html-src/index.shtml
17295            test/etags/html-src/software.html
17296            test/etags/html-src/softwarelibero.html
17297            test/etags/lua-src/allegro.lua
17298            test/etags/objc-src/PackInsp.h
17299            test/etags/objc-src/PackInsp.m
17300            test/etags/objc-src/Subprocess.h
17301            test/etags/objc-src/Subprocess.m
17302            test/etags/objcpp-src/SimpleCalc.H
17303            test/etags/objcpp-src/SimpleCalc.M
17304            test/etags/pas-src/common.pas
17305            test/etags/perl-src/htlmify-cystic
17306            test/etags/perl-src/kai-test.pl
17307            test/etags/perl-src/yagrip.pl
17308            test/etags/php-src/lce_functions.php
17309            test/etags/php-src/ptest.php
17310            test/etags/php-src/sendmail.php
17311            test/etags/prol-src/natded.prolog
17312            test/etags/prol-src/ordsets.prolog
17313            test/etags/ps-src/rfc1245.ps
17314            test/etags/pyt-src/server.py
17315            test/etags/tex-src/gzip.texi
17316            test/etags/tex-src/nonewline.tex
17317            test/etags/tex-src/testenv.tex
17318            test/etags/tex-src/texinfo.tex
17319            test/etags/y-src/atest.y
17320            test/etags/y-src/cccp.c
17321            test/etags/y-src/cccp.y
17322            test/etags/y-src/parse.c
17323            test/etags/y-src/parse.y
17324            test/indent/css-mode.css
17325            test/indent/js-indent-init-dynamic.js
17326            test/indent/js-indent-init-t.js
17327            test/indent/js-jsx.js
17328            test/indent/js.js
17329            test/indent/latex-mode.tex
17330            test/indent/modula2.mod
17331            test/indent/nxml.xml
17332            test/indent/octave.m
17333            test/indent/pascal.pas
17334            test/indent/perl.perl
17335            test/indent/prolog.prolog
17336            test/indent/ps-mode.ps
17337            test/indent/ruby.rb
17338            test/indent/scheme.scm
17339            test/indent/scss-mode.scss
17340            test/indent/sgml-mode-attribute.html
17341            test/indent/shell.rc
17342            test/indent/shell.sh
17343            test/redisplay-testsuite.el
17344            test/rmailmm.el
17345            test/automated/buffer-tests.el
17346            test/automated/cmds-tests.el
17347            test/automated/data-tests.el
17348            test/automated/finalizer-tests.el
17349            test/automated/fns-tests.el
17350            test/automated/inotify-test.el
17351            test/automated/keymap-tests.el
17352            test/automated/print-tests.el
17353            test/automated/libxml-tests.el
17354            test/automated/zlib-tests.el: Files Moved.
17356 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
17358         Rework file notifications, kqueue has problems with directory monitors
17360         * lisp/filenotify.el (file-notify-add-watch): Call the native
17361         add-watch function on the file, not on the dir.
17363         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
17364         about already deleted entries.
17366         * test/automated/auto-revert-tests.el
17367         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
17368         since this deletes the target file first.
17370         * test/automated/file-notify-tests.el (file-notify--test-event-test):
17371         Make stronger checks.
17372         (file-notify-test01-add-watch, file-notify-test02-events)
17373         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
17374         Rewrite in order to call file monitors but directory monitors.
17375         (file-notify-test06-many-events): Ler rename work in both directions.
17377 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
17379         Continie with pending events
17381         * src/kqueue.c (pending_events): Remove global variable.
17382         (kqueue_compare_dir_list): Create `write' event for not used
17383         pending events.
17384         (globals_of_kqueue): Remove initialization of pending_events.
17386 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
17388         Improve loops in file-notify-test06-many-events
17390         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
17391         Use `read-event' pauses for the `write-file' loops; otherwise
17392         events are lost in inotify and gfilenotify cases.
17394 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
17396         Handle more complex rename operation in kqueue
17398         * src/kqueue.c (pending_events): New variable.
17399         (kqueue_compare_dir_list): Handle more complex rename operation.
17400         (globals_of_kqueue): Initialize pending_events.
17402         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
17403         Adapt expected events in the `rename-file' case.
17404         (file-notify-test06-many-events-remote): Declare.
17406 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
17408         New test with a larger number of events.
17410         * test/automated/file-notify-tests.el (file-notify--test-with-events):
17411         Make timeout heuristically depend on the number of events.
17413         (file-notify-test06-many-events): Use it for new test.
17415 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
17417         Further fixes for kqueue.
17419         * lisp/filenotify.el (file-notify-callback): Raise also event if
17420         directory name matches.
17421         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
17423         * src/kqueue.c (kqueue_generate_event): Use watch_object as
17424         argument instead of ident.  Remove callback argument.  Adapt
17425         callees.  Check actions whether they are monitored flags.
17427         * test/automated/file-notify-tests.el (file-notify--test-library):
17428         New defun.
17429         (file-notify-test00-availability, file-notify-test02-events)
17430         (file-notify-test04-file-validity)
17431         (file-notify-test05-dir-validity): Use it.
17432         (file-notify-test02-events, file-notify-test04-file-validity): Add
17433         `read-event' calls between different file actions, in order to
17434         give the backends a chance to rais an event.  Needed especially
17435         for kqueue.  In case of deleting a directory, there are two
17436         `deleted' events.
17438 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
17440         Code cleanup of kqueue.c
17442         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
17443         (kqueue_compare_dir_list): Do not loop when calling
17444         directory_files_internal.  Remove checks for "." and "..", this is
17445         done in kqueue_directory_listing now.
17446         (Fkqueue_add_watch): Check for proper emacs_open flags.
17448 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
17450         Doc changes for kqueue
17452         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
17453         Fix some glitches in the example.
17455 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
17457         Finish implementation in kqueue.c
17459         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
17460         Simplify access to list.
17461         (kqueue_compare_dir_list): Simplify access to list.  Raise
17462         `delete' event if directory does not exist any longer.  Otherwise,
17463         wait until directory contents has changed.  Fix error in check.
17465 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
17467         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
17469 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
17471         More work on kqueue
17473         * lisp/filenotify.el (file-notify-callback): Handle also the
17474         `rename' event from kqueue.
17475         (file-notify-add-watch): Do not register an entry twice.
17477         * src/kqueue.c (kqueue_directory_listing): New function.
17478         (kqueue_generate_event): New argument FILE1.  Adapt callees.
17479         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
17481 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
17483         Implement directory events
17485         * lisp/filenotify.el (file-notify-handle-event)
17486         (file-notify-callback): Remove traces.
17488         * src/kqueue.c: Include <sys/time.h>.
17489         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
17490         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
17491         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
17492         Compute initial directory listing.  Close file descriptor in case
17493         of errors.
17494         (syms_of_kqueue): Declare Qcreate.
17496 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
17498         Build fixes for kqueue support.
17500         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
17501         flag.
17503         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
17504         kqueue on *BSD.
17506 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
17508         Continue kqueue implementation
17510         * lisp/filenotify.el (file-notify-handle-event)
17511         (file-notify-callback): Enable trace messages.
17513         * src/kqueue.c: Include also <sys/types.h>.
17514         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
17515         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
17516         (syms_of_kqueue): Add them.
17518 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
17520         Work on kqueue
17522         * lisp/filenotify.el (file-notify--library)
17523         (file-notify-descriptors, file-notify-callback)
17524         (file-notify-add-watch, file-notify-rm-watch)
17525         (file-notify-valid-p): Add kqueue support.
17527         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
17529 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
17531         Add kqueue support
17533         * configure.ac (--with-file-notification): Add kqueue.
17534         (top): Remove special test for "${HAVE_NS}" and
17535         ${with_file_notification}, this is handled inside gfilenotify
17536         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
17537         instead of library specific variables.
17539         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
17541         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
17543         * src/kqueue.c: New file.
17545         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
17547 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
17549         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
17551         * verilog-mode.el (verilog-save-font-no-change-functions):
17552         Commentary and fix pre-Emacs 21 behavior.
17554 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
17556         Use obarray functions from obarray.
17558         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
17559           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
17560           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
17561           delegate to obarray.el functions.
17562         * lisp/loadup.el: load obarray before abbrev
17563         * test/automated/abbrev-tests.el: new tests
17565 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
17567         epa.el: Add option to replace original text
17569         * lisp/epa.el (epa-replace-original-text): New user option.
17570         (Bug#21947)
17572 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
17574         Add interactive seek command.
17576         * lisp/mpc.el (mpc-cmd-seekcur): New function.
17577         (mpc-seek-current): New command.
17578         (mpc-mode-menu): Add entry for mpc-seek-current
17579         (mpc-mode-map): Bind mpc-seek-current to "g"
17581 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
17583         Fix issue where a new tempfile was created every refresh
17585         * lisp/mpc.el (mpc-format): Leave dir as relative path
17587 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
17589         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
17591         (c-save-buffer-state): Use with-silent-modifications when available.
17592         (c--macroexpand-all): Check macroexpand-all directly rather than
17593         c--mapcan-status.
17595 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
17597         * lisp/loadup.el: Set max-lisp-eval-depth here
17599         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
17600         (BYTE_COMPILE_FLAGS): Adjust accordingly.
17602 2015-11-17  João Távora  <joaotavora@gmail.com>
17604         Minor fix to comment indentation and typo in last commit
17606         * linum.el (linum-update-window): Fix comment indentation and a
17607         typo.
17609 2015-11-17  João Távora  <joaotavora@gmail.com>
17611         linum-mode plays more nicely with other margin-setting extensions
17613         linum.el will only modify the left margin if it needs to, and will
17614         only reset the it back to 0 if it guesses that no-one has touched that
17615         margin in the meantime.
17617         As such, this is a more of a workaround than an actual fix, but fixes
17618         the problems described in bug#20674 regarding the interaction with
17619         modes such as darkroom-mode and olivetti-mode.
17621         A similar fix was commited to nlinum.el in ELPA.git's
17622         e7f5f549fbfb740b911fb7f33b42381ecece56d8
17624         * linum.el (linum-delete-overlays): Restore margins more
17625         criteriously.
17626         (linum-update-window): Set margins more criteriously.
17628 2015-11-16  Daiki Ueno  <ueno@gnu.org>
17630         * lisp/image-mode.el: Support encrypted file
17632         (image-toggle-display-image): Read content from the buffer instead
17633         of the file, if the buffer holds a decrypted data.  (Bug#21870)
17635 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
17637         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
17639 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
17641         * lisp/emacs-lisp/package.el: Fix a decoding issue
17643         (package--with-response-buffer): Use `url-insert-buffer-contents'.
17644         The previous code had some issues with decoding. Refactoring that
17645         function allows us to use the decoding from url-handlers while still
17646         treating both sync and async requests the same.
17648         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
17649         `url-insert-buffer-contents'.
17650         (url-insert-buffer-contents): New function
17652 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
17654         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
17656         (verilog-save-buffer-state): Use with-silent-modifications when available.
17657         (verilog-save-font-no-change-functions): Don't bind
17658         before/after-change-functions if it's not needed.
17660 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
17662         * CONTRIBUTE: Remove information about feature freeze.
17664         Merge branch 'release-process-lowercase'
17666 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
17668         Document the release process
17670         * admin/notes/versioning: Add information about RC releases.
17671         * admin/release-process: Document the release process.
17672         * admin/authors.el (authors-ignored-files):
17673         * admin/README: Change FOR-RELEASE to release-process.
17674         * CONTRIBUTE:
17675         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
17677 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
17679         * admin/release-process: Rename from admin/FOR-RELEASE.
17681 2015-11-14  David Engster  <deng@randomsample.de>
17683         gitmerge: Fix git log command
17685         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
17686         only want commits from the branch that is to be merged.
17687         (gitmerge-setup-log-buffer): Use the same symmetric range as in
17688         `gitmerge-missing'.
17690 2015-11-14  David Engster  <deng@randomsample.de>
17692         gitmerge: Try to detect cherry-picks
17694         * admin/gitmerge.el (gitmerge-default-branch): Change to
17695         origin/emacs-25.
17696         (gitmerge-missing): Use symmetric difference ('...') between
17697         branch and master so that cherry-picks can be detected.
17699 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
17701         Increment Emacs version on master branch
17703         * lisp/cus-edit.el (customize-changed-options-previous-release):
17704         Increase previous version to 24.5.
17706         * configure.ac:
17707         * msdos/sed2v2.inp: Bump version to 25.1.50.
17709 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
17711         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
17712         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
17713         * README: Mention CONTRIBUTE.
17715 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
17717         Update verilog-mode.el to 2015-11-09-b121d60-vpo
17719         * verilog-mode.el (verilog-auto, verilog-delete-auto)
17720         (verilog-modi-cache-results, verilog-save-buffer-state)
17721         (verilog-save-font-no-change-functions): When internally suppressing
17722         change functions, use `inhibit-modification-hooks' and call
17723         `after-change-funtions' to more nicely work with user hooks.
17724         Reported by Stefan Monnier.
17725         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
17726         Create `verilog-delete-auto-buffer' to avoid double-calling
17727         fontification hooks.
17728         (verilog-restore-buffer-modified-p, verilog-auto)
17729         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
17730         set-buffer-modified-p.  Reported by Stefan Monnier.
17731         (verilog-diff-auto, verilog-diff-buffers-p)
17732         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
17733         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
17734         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
17735         by Amol Nagapurkar.
17736         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
17737         properties inside internal structures.  No functional change
17738         intended.
17740 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
17742         Use generic dispatch for xref backends
17744         * lisp/progmodes/xref.el (xref-backend-functions):
17745         New variable.
17746         (xref-find-function): Remove.
17747         (xref-find-backend)
17748         (xref--etags-backend): New functions.
17749         (xref-identifier-at-point-function)
17750         (xref-identifier-completion-table-function): Remove.
17751         (xref-backend-definitions, xref-backend-references)
17752         (xref-backend-apropos, xref-backend-identifier-at-point)
17753         (xref-backend-identifier-completion-table):
17754         New generic functions.
17756         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
17757         Add `elisp--xref-backend' to the beginning of
17758         `xref-backend-functions', locally.  Delete references to
17759         removed functions and vars.
17760         (elisp-xref-find): Remove.
17761         (elisp--xref-backend): New function.
17762         (elisp--xref-find-references, elisp--xref-find-apropos)
17763         (elisp--xref-identifier-completion-table):
17764         Turn into appropriately named generic methods.
17766         * lisp/progmodes/etags.el (etags-xref-find): Remove.
17767         (xref-backend-identifier-completion-table)
17768         (xref-backend-references, xref-backend-definitions)
17769         (xref-backend-apropos): New generic methods.
17771 2015-11-13  Juri Linkov  <juri@linkov.net>
17773         Support rectangular regions for more commands
17775         * lisp/simple.el (region-extract-function): Handle the arg
17776         value ‘bounds’.
17777         (region-insert-function): New function.
17778         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
17779         If non-nil, operate on multiple chunks.
17780         (region-noncontiguous-p): New function.
17782         * lisp/rect.el: Add function rectangle--insert-region
17783         around region-insert-function.
17784         (extract-rectangle-bounds): New function.
17785         (rectangle--extract-region): Handle the arg value ‘bounds’.
17786         (rectangle--insert-region): New function.
17788         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
17789         around region-insert-function.
17790         (cua--extract-rectangle-bounds): New function.
17791         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
17793         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
17794         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
17795         (query-replace-regexp-eval, map-query-replace-regexp)
17796         (replace-string, replace-regexp): Use ‘use-region-p’.
17797         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
17798         (perform-replace): Add arg ‘region-noncontiguous-p’.
17799         If non-nil, operate on multiple chunks.
17801         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
17802         If non-nil, operate on multiple chunks.  (Bug#19829)
17804 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
17806         Handle multiple matches on the same line; add highlighting
17808         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
17809         column value in characters.
17810         (xref--collect-matches): Rename from `xref--collect-match'.
17811         Search for all matches in the hit line.  Add `highlight' face to
17812         the matched region in the summary.  Update both callers.
17814 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
17816         Replace xref-match-bounds with xref-match-length
17818         Relying on xref-location-marker to point to the beginning of the match
17820         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
17821         (xref-match-length): Add.
17822         (xref-make-match): Change the arguments.
17823         (xref--match-buffer-bounds): Remove.
17824         (xref-match-item): Store length, instead of end-column.
17825         (xref-pulse-momentarily)
17826         (xref--collect-match)
17827         (xref--query-replace-1): Update accordingly.
17828         (xref-query-replace): Ditto.  And check that the search results
17829         are up-to-date.
17831 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
17833         Merge from gnulib
17835         This incorporates:
17836         2015-11-13 xalloc-oversized: improve performance with GCC 5
17837         * lib/xalloc-oversized.h: Copy from gnulib.
17839 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
17841         Spruce up ftfont.c memory allocation
17843         * src/ftfont.c (setup_otf_gstring):
17844         Avoid O(N**2) behavior when reallocating.
17845         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
17846         reallocating buffers; this simplifies the code.  Do not trust
17847         mflt_run to leave the output areas unchanged on failure, as
17848         this isn’t part of its interface spec.
17850 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
17852         Port recent XCB changes to 64-bit ‘long int’
17854         For historical reasons, libX11 represents 32-bit values like Atoms as
17855         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
17856         do that, so adapt the recent XCB code to behave properly on 64-bit
17857         platforms.  Also, fix what appears to be a bug in the interpretation
17858         of xcb_get_property_value_length, at least on my Fedora platform
17859         which is running libxcb-1.11-5.fc21.
17860         * src/xfns.c (x_real_pos_and_offsets):
17861         * src/xterm.c (get_current_wm_state):
17862         xcb_get_property_value_length returns a byte count, not a word count.
17863         For 32-bit quantities, xcb_get_property_value returns a vector
17864         of 32-bit words, not of (possibly 64-bit) long int.
17866 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
17868         * src/undo.c (run_undoable_change): Now static.
17870 2016-01-30  Michael Albinus  <michael.albinus@gmx.de>
17872         Adapt Tramp version, do not merge with master
17874         * doc/misc/trampver.texi (trampver):
17875         * lisp/net/trampver.el (tramp-version): Set to "2.2.13-25.1".
17877 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17879         Remove support for ':timeout' from w32 tray notifications
17881         * src/w32fns.c (Fw32_notification_notify): Delete the code that
17882         supports ':timeout'.
17883         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
17884         with dbusbind.c when D-Bus is compiled in.
17886         * doc/lispref/os.texi (Desktop Notifications): Don't mention
17887         ':timeout'.
17889 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
17891         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
17892         (simple-test--transpositions): New macro.
17893         (simple-transpose-subr): New test.
17895 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
17897         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
17899 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
17901         * src/undo.c: Small fixes for previous change
17902         (run_undoable_change): Mark void argument list.
17903         (record_property_change): Remove unused variable `boundary'.
17905 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17907         Add a few more variables to redisplay--variables
17909         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
17910         and bidi-display-reordering to the list.
17912 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17914         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
17916 2015-11-13  Eli Barzilay  <eli@barzilay.org>
17918         Fix point positioning after transposing with negative arg
17920         * lisp/simple.el (transpose-subr): When invoked with a negative
17921         argument, move point to after the transposed text, like we do
17922         when invoked with a positive argument.  (Bug#21885)
17924 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17926         Fix last change in shr.el
17928         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
17929         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
17931 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17933         Fix last change
17935         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
17936         Don't DEFSYM tray notification symbols if D-Bus is being used.
17938 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
17940         Another fix for MinGW64 and Cygwin builds due to notifications
17942         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
17943         being compiled into Emacs.
17944         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
17945         Sw32_notification_notify and Sw32_notification_close if the code
17946         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
17948 2016-01-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17949 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
17951         Remove intern calls and XXX comments from Fx_export_frames
17953         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
17954         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
17955         for consistency with image types.  Remove XXX comments.
17956         (syms_of_xfns) <Qpdf>: DEFSYM it.
17958 2016-01-30  Eric Hanchrow  <eric.hanchrow@gmail.com>
17959 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
17961         shr: don't invoke unbound function (Bug#21895)
17963         * lisp/net/shr.el (have-fringes-p): New function.
17964         (shr-insert-document, shr-fill-text): Use it.
17966 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
17968         * test/automated/keymap-tests.el: Fix test to make it repeatable
17970         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
17971         entry to its initial value to make the test repeatable in interactive
17972         sessions (assuming it doesn't fail and crashes Emacs, of course).
17974 2016-01-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17976         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors): Small fix
17978 2016-01-30  Phillip Lord  <phillip.lord@russet.org.uk>
17980         : Tests for undo-auto functionality.
17981 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
17983         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
17984         Small fix.
17986 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
17988         The heuristic that Emacs uses to add an `undo-boundary' has been
17989         reworked, as it interacts poorly with functions on `post-command-hook'
17990         or `after-change-functions'.
17992         * lisp/simple.el: New section added.
17993         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
17994         (self_insert_command): Calls simple.el to amalgamate.
17995         (delete_char): Calls simple.el to amalgamate.
17996         * src/keyboard.c (last_undo_boundary): Removed.
17997         * src/undo.c (run_undoable_change): New function.
17999 2015-11-12  Juri Linkov  <juri@linkov.net>
18001         Bind [?\S-\ ] to previous line command in Dired-like modes.
18003         * lisp/arc-mode.el (archive-mode-map):
18004         * lisp/dired.el (dired-mode-map):
18005         * lisp/proced.el (proced-mode-map):
18006         * lisp/vc/vc-dir.el (vc-dir-mode-map):
18007         Bind [?\S-\ ] to previous line command.
18008         (Bug#20790)
18010 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
18012         Fix the MinGW64 and Cygwin-w32 builds
18014         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
18015         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
18016         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
18017         which cause trouble with MinGW42 headers.  Ifdef away tray
18018         notifications code for Cygwin.  Reported by Andy Moreton
18019         <andrewjmoreton@gmail.com>.
18021 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
18023         Enable sorting of JSON object keys when encoding
18025         * lisp/json.el (json-encoding-object-sort-predicate): New variable
18026         for specifying a sorting predicate for JSON objects during encoding.
18027         (json--plist-to-alist): New utility function.
18028         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
18029         are to be sorted.
18030         (json-encode-alist): Sort output by
18031         `json-encoding-object-sort-predicate, when set.
18032         (json-encode-plist): Re-use `json-encode-alist' when object keys are
18033         to be sorted.
18034         (json-pretty-print-buffer-ordered): New command to pretty print the
18035         buffer with object keys sorted alphabetically.
18036         (json-pretty-print-ordered): New command to pretty print the region
18037         with object keys sorted alphabetically.
18039         * test/automated/json-tests.el (test-json-plist-to-alist)
18040         (test-json-encode-plist, test-json-encode-hash-table)
18041         (test-json-encode-alist-with-sort-predicate)
18042         (test-json-encode-plist-with-sort-predicate): New tests.
18044         * etc/NEWS: Add an entry for the new commands.
18046 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
18048         * test/automated/keymap-tests.el: New test file.
18050 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
18052         Speed up x_real_pos_and_offsets using XCB
18054         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
18055         all X calls, and pipeline requests when possible, collecting results
18056         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
18058 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
18060         Enable use of XCB for checking window manager state
18062         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
18063         of XGetWindowProperty plus error-catching, since we can explicitly
18064         check for errors in the XCB version.  This eliminates 3 XSync calls on
18065         top of the round-trip actually fetching the information.
18067 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
18069         Detect XCB and save a connection handle
18071         * configure.ac: If using X11, check for XCB libraries and header.
18072         * src/Makefile.in (XCB_LIBS): Define.
18073         (LIBX_EXTRA): Include it.
18075         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
18076         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
18077         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
18079 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
18081         Reduce some data dependencies between X calls
18083         Gains nothing in the traditional-Xlib code, but more closely aligns
18084         with how the XCB version will work.
18086         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
18087         send coordinates (0,0) to the X server and add in the real coordinates
18088         after getting the response.  Move XGetGeometry for outer window inside
18089         error-trapping block.  Use DPY variable more, since it's available.
18091 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
18093         Use color cache for creating bitmap
18095         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
18096         Set attributes to use the caching color allocator.  Initialize and
18097         free the cache.
18099 2015-11-12  Eli Barzilay  <eli@barzilay.org>
18101         Add "^" to the interactive specs of `dired-next/previous-line'
18103         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
18104         to bind these commands to the arrow keys, and that means that they work
18105         better with a "^" in the `interactive' declaration so selection works
18106         as expected.
18108 2016-01-30  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18110         Sync with soap-client repository, version 3.0.2
18112         * lisp/net/soap-client.el: Bump version to 3.0.2.
18114         * lisp/net/soap-client.el (soap-warning): Use format, not format-message.
18116         * lisp/net/soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
18117         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
18119         * lisp/net/soap-client.el: Support Emacs versions that do not have
18120         define-error.
18122         * lisp/net/soap-inspect.el: Remove version header.
18124         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Fix first line header
18125 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18127         Sync with soap-client repository, version 3.0.2
18129         * soap-client.el: Bump version to 3.0.2.
18131         * soap-client.el (soap-warning): Use format, not format-message.
18133         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
18134         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
18136         * soap-client.el: Support Emacs versions that do not have
18137         define-error.
18139         * soap-inspect.el: Remove version header.
18141         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
18142         format.
18144 2015-11-11  Alan Mackenzie  <acm@muc.de>
18146         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start.
18148         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
18149         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
18150         (c-guess-basic-syntax):
18151         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
18152         (c-get-fallback-scan-pos): "New" function (existed several years ago).
18153         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
18154         c-get-fallback-scan-pos.
18155         (c-parse-state-1): Handle 'BOD strategy.
18157         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
18158         (c-font-lock-fontify-region): Remove bindings of
18159         open-paren-in-column-0-is-defun-start to nil.
18161         * doc/misc/cc-mode.texi (Performance Issues)
18162         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
18164 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
18166         * lisp/obarray.el: Fix shadowed variables.
18167         (obarray-map, obarray-remove, obarray-put, obarray-get):
18168         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
18170 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
18172         Avoid error in submitting a form with EWW
18174         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
18175         CHUNK to be nil.  (Bug#21881)
18177 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
18179         Rename seq-p and map-p to seqp and mapp
18181         * lisp/emacs-lisp/seq.el (seqp): New name.
18182         * lisp/emacs-lisp/map.el (mapp): New name.
18183         * doc/lispref/sequences.texi: Update the documentation for seqp.
18184         * test/automated/map-tests.el: Update the tests for mapp.
18186 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
18188         Rename obarray-p to obarrayp
18190         * lisp/obarray.el (obarrayp): New name.
18191         * test/automated/obarray-tests.el: Update the tests.
18193 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
18195         Rename obarray-foreach to obarray-map
18197         * lisp/obarray.el (obarray-map): New name.
18198         * test/automated/obarray-tests.el: Update the corresponding tests.
18200 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
18202         New file with obarray functions.
18204         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
18205         * test/automated/obarray-tests.el: New file.
18207 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
18209         Implement tray notifications for MS-Windows
18211         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
18212         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
18213         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
18214         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
18215         (EMACS_NOTIFICATION_MSG): New macros.
18216         (NI_Severity): New enumeration.
18217         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
18218         (delete_tray_notification, Fw32_notification_notify)
18219         (Fw32_notification_close): New functions.
18220         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
18221         keywords used by w32-notification-notify.
18223         * doc/lispref/os.texi (Desktop Notifications): Describe the native
18224         w32 tray notifications.
18226 2016-01-30  Alan Mackenzie  <acm@muc.de>
18228         First commit to scratch/follow.  Make Isearch work with Follow Mode, etc.
18230         doc/lispref/window.texi (Basic Windows): Add paragraph defining "Group of
18231         Windows" and new @defun selected-window-group.
18232         (Window Start and End): Describe new &optional parameter GROUP and
18233         ...-group-function for window-start, window-end, set-window-start, and
18234         pos-visible-in-window-p.
18235         (Textual Scrolling) Describe the same for recenter.
18236         doc/lispref/positions.texi (Screen Lines): Describe the same for
18237         move-to-window-line.
18239         src/window.c (Fwindow_start, Fwindow_end, Fset_window_start)
18240         (Fpos_visible_in_window_p, Frecenter, Fmove_to_window_line): To each, add ar
18241         new optional parameter "group".  At the beginning of each, check whether the
18242         corresponding ...-group-function is set to a function, and if so execute this
18243         function in place of the normal processing.
18244         (syms_of_window): Define symbols for the six new variables below.
18245         (window-start-group-function, window-end-group-function)
18246         (set-window-start-group-function, recenter-group-function)
18247         (pos-visible-in-window-p-group-function, move-to-window-line-group-function):
18248         New permanent local buffer local variables.
18249         src/keyboard.c (Fposn_at_point): Add extra parameter in call to
18250         Fpos_visible_in_window_p.
18252         lisp/window.el (selected-window-group-function): New permanent local buffer
18253         local variable.
18254         (selected-window-group): New function.
18256         lisp/follow.el (follow-mode): Set the ...-group-function variables at mode
18257         enable, kill them at mode disable.  Add/remove follow-after-change to/from
18258         after-change-functions.
18259         (follow-start-end-invalid): New variable.
18260         (follow-redisplay): Manipulate follow-start-end-invalid.
18261         (follow-after-change, follow-window-start, follow-window-end)
18262         (follow-set-window-start, follow-pos-visible-in-window-p)
18263         (follow-move-to-window-line, follow-sit-for): New functions.
18265         lisp/isearch.el (isearch-call-message): New macro.
18266         (isearch-update, with-isearch-suspended, isearch-del-char)
18267         (isearch-search-and-update, isearch-ring-adjust): Invoke above new macro.
18268         (with-isearch-suspended): Rearrange code such that isearch-call-message is
18269         invoked before point is moved.
18270         (isearch-message): Add comment about where point must be at function call.
18271         (isearch-search): Remove call to isearch-message.
18272         (isearch-lazy-highlight-window-group): New variable.
18273         (isearch-lazy-highlight-new-loop): Unconditionally start idle timer.  Move
18274         the battery of tests to ...
18275         (isearch-lazy-highlight-maybe-new-loop): New function, started by idle timer.
18276         Note: (sit-for 0) is still called.
18277         (isearch-lazy-highlight-update): Check membership of
18278         isearch-lazy-highlight-window-group.  Don't set the `window' overlay
18279         property.
18280         (isearch-update, isearch-done, isearch-string-out-of-window)
18281         (isearch-back-into-window, isearch-lazy-highlight-maybe-new-loop)
18282         (isearch-lazy-highlight-search, isearch-lazy-highlight-update)
18283         (isearch-lazy-highlight-update): Call the six amended primitives (see
18284         src/window.c above) with the new `group' argument set to t, to cooperate
18285         with Follow Mode.
18287 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
18289         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
18291         * lisp/net/tramp.el (tramp-handle-file-equal-p)
18292         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
18293         Harvey Chapman <hchapman@3gfp.com>.
18295         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
18296         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
18297         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
18298         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
18300 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
18302         * CONTRIBUTE: Encourage adding tests.
18304         Based on this post from John Wiegley:
18306           From: "John Wiegley" <johnw@newartisans.com>
18307           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
18308           To: Juanma Barranquero <lekktu@gmail.com>
18309           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
18310               emacs-devel <emacs-devel@gnu.org>
18311           Date: Wed, 28 Oct 2015 18:45:29 -0700
18312           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
18314           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
18316 2015-11-10  David Reitter  <david.reitter@gmail.com>
18318         Avoid creating notification objects when possible
18320         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
18321         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
18322         functions that do not require a notification object.  When needed,
18323         define NSWindowDidEnterFullScreenNotification to allow for compilation
18324         on OS X 10.6.8.
18326 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18328         Move INTEGER_TO_CONS body out of .h file
18330         * src/data.c (INTBIG_TO_LISP): New macro, with most
18331         of the contents of the old INTEGER_TO_CONS.
18332         (intbig_to_lisp, uintbig_to_lisp): New functions.
18333         * src/lisp.h (INTEGER_TO_CONS):
18334         Simplify by using EXPR_SIGNED and the new functions.
18335         This shrinks code size a bit, and makes it easier to
18336         put a breakpoint on handling of large integers.
18338 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18340         Merge from gnulib
18342         This incorporates:
18343         2015-11-10 intprops: new public macro EXPR_SIGNED
18344         2015-11-10 intprops: fix typo in clang port
18345         * lib/intprops.h: Copy from gnulib.
18347 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
18349         Spelling fixes
18351         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
18352         Fix misspelling in output.
18354 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
18356         * doc/lispref/variables.texi (Directory Local Variables):
18357         Document dir-locals wildcards.
18359         * lisp/files.el (dir-locals-file): Point to Info node.
18361         * doc/emacs/custom.texi (Directory Variables):
18362         Document dir-locals wildcards.
18364         * etc/NEWS: Document new functionality.
18366 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
18368         * lisp/files.el: Don't allow customization of dir-locals sorting.
18369         In retrospect, this is not a good idea for the same reason that
18370         `dir-locals-file' is a defconst, because it is important that this
18371         behaviour be "uniform across different environments and users".
18372         Sure, the user can still change the sorting with a hack, but we
18373         shouldn't encourage them to change it.
18374         (dir-locals--all-files): Return list in the order returned by
18375         `file-expand-wildcards'.
18376         (file-expand-wildcards): Document the sorting predicate used.
18377         (dir-locals-sort-predicate): Delete variable.
18379 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
18381         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
18383         * lisp/isearch.el (search-default-regexp-mode): Change default value.
18385 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
18387         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
18388         `locate-dominating-file' will now keep looking if the files it finds in
18389         a given directory are unreadable (or not files).
18391 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
18393         * lisp/files.el (dir-locals-file): Allow wildcards.
18394         (dir-locals-find-file, dir-locals-collect-variables)
18395         (dir-locals-read-from-file): Update accordingly.
18396         (hack-dir-local-variables): Rename a local variable.
18398         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
18400         * lisp/help-fns.el (describe-variable): Update accordingly.
18402         * .gitignore: Add .dir-locals?.el.
18404 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
18406         * lisp/emacs-lisp/map.el (map-merge-with): New function.
18408         * test/automated/map-tests.el (test-map-merge-with): New test.
18410 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
18412         Fix some recently-perturbed bookmark autoloads
18414         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
18415         (bookmark-set): Restore autoload.
18416         (bookmark-set-no-overwrite): Add autoload.
18418         Thanks to Juanma Barranquero for noticing the autoload problems
18419         introduced by my recent commit adding/changing the above functions
18420         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
18422 2016-01-30  Noah Friedman  <friedman@splode.com>
18424         (ydump-buffer): Handle case where gap is at the start of buffer.
18425         I don't recall if older versions of gdb were less strict but you
18426         cannot dump a 0-length range in gdb 7.9.1.
18428 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
18429 2015-11-09  Noah Friedman  <friedman@splode.com>
18431         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
18432         the start of buffer.  I don't recall if older versions of gdb were
18433         less strict but you cannot dump a 0-length range in gdb 7.9.1.
18435 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
18437         * lisp/progmodes/project.el: Update Commentary.
18439         Merge branch 'project-next'
18441 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
18443         Fold `project-ask-user' into `project-current'
18445         * lisp/progmodes/project.el (project-find-functions): Remove
18446         `project-ask-user'.
18447 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
18449         Fold `project-ask-user' into `project-current'
18451         * lisp/progmodes/project.el (project-find-functions):
18452         Remove `project-ask-user'.
18453         (project-ask-user): Remove function and the corresponding
18454         `project-roots' implementation.
18455         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
18456         user in case there's no project in the current directory.  Update
18457         all callers.
18459 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
18461         When VC detects a conflict, specify which file
18463         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
18464         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
18465         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
18466         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
18467         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
18468           to display a standard message that specifies the conflicted file.
18470         Before this change, the message VC used for indicating a conflicted
18471         file was just "There are unresolved conflicts in this file" without
18472         naming the file (and this language was duplicated in several places).
18473         After this change, it's "There are unresolved conflicts in file FOO"
18474         (and this language is now centralized in one function in vc.el).
18476         Justification: It's important for the message to name the conflicted
18477         file because the moment when VC realizes a file is conflicted does not
18478         always come interactively.  For example, some people automatically
18479         find a set of Org Mode files on startup, and may keep those .org files
18480         under version control.  If any of the files are conflicted, the user
18481         just sees some messages fly by, and might later check the "*Messages*"
18482         buffer to find out what files were conflicted.  I'm not saying this
18483         happened to me or anything; it's a purely hypothetical example.
18485 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
18487         Fix assertion violation in define-key
18489         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
18490         objects.  Reported by Drew Adams <drew.adams@oracle.com>
18491         and Juanma Barranquero <lekktu@gmail.com>.
18493 2015-11-09  Dima Kogan  <dima@secretsauce.net>
18495         Fix a memory leak in GC of font cache
18497         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
18498         entities if some of the fonts it references are marked.  This
18499         plugs a memory leak.  (Bug#21556)
18501 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
18503         Use INT_ADD_WRAPV etc. to check integer overflow
18505         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
18506         * src/buffer.c (record_overlay_string, overlay_strings):
18507         * src/casefiddle.c (casify_object):
18508         * src/ccl.c (Fccl_execute_on_string):
18509         * src/character.c (char_width, c_string_width, lisp_string_width)
18510         (count_size_as_multibyte, string_escape_byte8):
18511         * src/coding.c (coding_alloc_by_realloc, produce_chars):
18512         * src/data.c (arith_driver):
18513         * src/dispnew.c (realloc_glyph_pool, init_display):
18514         * src/editfns.c (styled_format):
18515         * src/fns.c (Ffillarray):
18516         * src/ftfont.c (ftfont_shape_by_flt):
18517         * src/gnutls.c (gnutls_hex_string):
18518         * src/gtkutil.c (get_utf8_string):
18519         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
18520         * src/keymap.c (Fkey_description):
18521         * src/lisp.h (SAFE_ALLOCA_LISP):
18522         * src/term.c (encode_terminal_code):
18523         * src/tparam.c (tparam1):
18524         * src/xselect.c (x_property_data_to_lisp):
18525         * src/xsmfns.c (smc_save_yourself_CB):
18526         * src/xterm.c (x_term_init):
18527         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
18528         more-complicated code involving division and/or
18529         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
18530         subtraction and/or INT_ADD_OVERFLOW.
18531         * src/casefiddle.c (casify_object): Simplify multibyte size check.
18532         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
18533         * src/data.c (arith_driver): Also check for division overflow,
18534         as that’s now possible given that the accumulator can now contain
18535         any Emacs integer.
18536         * src/lisp.h (lisp_word_count): Remove; no longer used.
18538 2016-01-30  Dmitry Gutov  <dgutov@yandex.ru>
18539 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
18541         Make sure that the ignore file exists
18543         * lisp/vc/vc.el (vc-default-ignore-completion-table):
18544         Make sure that the ignore file exists.
18546 2016-01-30  Michael Sperber  <mike@xemacs.org>
18548         * lisp/gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
18549 2015-11-08  Michael Sperber  <mike@xemacs.org>
18551         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
18552         `gnus-summary-delete-article` in a way that also works on XEmacs.
18554 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
18556         Add support for retrieving paths to JSON elements
18558         Add support for retrieving the path to a JSON element. This can for
18559         instance be useful to retrieve paths in deeply nested JSON
18560         structures.
18562         * lisp/json.el (json-pre-element-read-function)
18563         (json-post-element-read-function): New variables to hold pre- and post
18564         read callback functions for `json-read-array' and `json-read-object'.
18565         (json--path): New variable used internally by `json-path-to-position'.
18566         (json--record-path, json--check-position): New functions used
18567         internally by `json-path-to-position'.
18568         (json-path-to-position): New function for retrieving the path to a
18569         JSON element at a given position.
18570         (json-read-object, json-read-array): Call
18571         `json-pre-element-read-function' and `json-post-element-read-function'
18572         when set.
18574         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
18575         (test-json-path-to-position-with-arrays)
18576         (test-json-path-to-position-no-match): New tests for
18577         `json-path-to-position'.
18579 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
18581         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
18583         This really should been part of my previous commit
18584         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
18586 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
18588         Offer non-overwrite bookmark setter (Bug#15746)
18590         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
18591         what `bookmark-set' used to do, but with more choices for overwrite
18592         vs push, and with minor changes to the interactive prompt format.
18593         (bookmark-set): Rewrite as wrapper around above.
18594         If overwriting, inform the user of that in the prompt.
18595         (bookmark-set-no-overwrite): New function, also done as wrapper.
18596         Bind to "M" in `ctl-x-r-map' autoloads.
18597         (bookmark-map): Similarly bind "M" here.
18599 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
18601         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
18603 2015-11-08  Alan Modra  <amodra@gmail.com>
18605         ELF unexec: Don't insert a new section
18607         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
18608         don't need to mess with symbol st_shndx, or section sh_link and
18609         sh_info.
18611         This does lead to eu-elflint complaints about symbols defined in .bss
18612         with a needed version, because normally it is undefined symbols that
18613         have needed versions;  Defined symbols have version definitions.
18614         The exception is symbols defined by the linker in .dynbss for
18615         variables copied from a shared library in order to avoid text
18616         relocations, with copy relocs to copy their initial values from the
18617         shared library.  These symbols are both defined and have needed
18618         versions, and eu-elflink only expects to see them in SHT_NOBITS
18619         sections.  Of course there is no real problem with having such symbols
18620         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
18622         * src/unexelf.c: Delete outdated comments.
18623         (PATCH_INDEX): Delete.
18624         (find_section): Delete.
18625         (unexec): Don't add a new section.  Instead reuse the last bss
18626         section, extending it to cover dumped data.  Make bss sections
18627         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
18628         st_shndx.  Rename bss sections.
18630 2015-11-08  Alan Modra  <amodra@gmail.com>
18632         ELF unexec: Drive from PT_LOAD header rather than sections
18634         This rewrites bss handling in the ELF unexec code.  Finding bss
18635         sections by name results in complicated code that
18636         - does not account for all names of possible bss sections,
18637         - assumes specific ordering of bss sections,
18638         - can wrongly choose a SHT_NOBITS section not in the bss segment,
18639         - incorrectly calculates bss size (no accounting for alignment gaps),
18640         - assumes .data and .bss are in the same segment.
18642         All of these problems and more are solved by finding the bss segment
18643         in PT_LOAD headers, ie. the address range included in p_memsz but not
18644         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
18645         in that address range.
18647         * src/unexelf.c: Delete old ppc comment.
18648         (OLD_PROGRAM_H): Define.
18649         (round_up): Delete.
18650         (unexec): Don't search for bss style sections by name.  Instead,
18651         use the last PT_LOAD header address range covered by p_memsz
18652         but not p_filesz and match any SHT_NOBITS section in that
18653         address range.  Simplify initialization of section header vars.
18654         Don't assume that section headers are above bss segment.  Move
18655         copying of bss area out of section loop.  Align .data2 section
18656         to 1, since it now covers the entire bss area.  For SHT_NOBITS
18657         sections in the bss segment, leave sh_addr and sh_addralign
18658         unchanged, but correct sh_offset.  Clear memory corresponding
18659         to SHT_NOBITS .plt section.  Delete comment and hacks for
18660         sections partly overlapping bss range now that the full range
18661         is properly calculated.  Delete now dead .sbss code.
18662         (Bug#20614)
18664 2015-11-08  Alan Modra  <amodra@gmail.com>
18666         ELF unexec: R_*_NONE relocs
18668         These should be ignored on all targets.
18670         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
18671         not just Alpha.  Comment on reloc size assumption.
18673 2015-11-08  Alan Modra  <amodra@gmail.com>
18675         ELF unexec: _OBJC_ symbols in bss sections
18677         This code assumed that there was only one bss section.  Rather than
18678         checking for a particular index, check the section type.  Also, handle
18679         the possibility that the section was SHT_NOBITS originally and is
18680         unchanged, in which case no clearing is needed (and sh_offset isn't
18681         necessarily valid, which can lead to a wild memset).
18683         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
18684         bss sections.
18686 2015-11-08  Alan Modra  <amodra@gmail.com>
18688         ELF unexec: Symbol table patching
18690         No st_shndx value larger than SHN_LORESERVE should be changed.
18691         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
18692         SHN_LORESERVE.  Error on SHN_XINDEX.
18694 2015-11-08  Alan Modra  <amodra@gmail.com>
18696         ELF unexec: Merge Alpha and MIPS COFF debug handling
18698         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
18699         Don't find .mdebug section index, find the section in the loop.
18700         Allow for unlikely possibility that .mdebug is located at sh_offset
18701         before bss segment, by calculating move from difference in
18702         sh_offset rather than just assuming new_data2_size.  Simplify
18703         cbLineOffset handling.
18705 2015-11-08  Alan Modra  <amodra@gmail.com>
18707         ELF unexec: Tidy code
18709         Separate out some of the more mechanical changes so following patches
18710         are smaller.
18712         * src/unexelf.c (unexec): Rearrange initialization of program
18713         header vars.  Use pointer vars in loops rather than indexing
18714         section header array via macros.  Simplify _OBJC_ sym code
18715         and reloc handling code.
18717 2015-11-08  Alan Modra  <amodra@gmail.com>
18719         ELF unexec: Correct section header index
18721         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
18722         it should have been using "NEW_SECTION_H (nn)" to find the name of the
18723         section currently being processed.  Of course, before the bss
18724         sections, n and nn have the same value, so this doesn't matter except
18725         in the case of .sbss.  For .sbss this probably meant .bss (most likely
18726         the next section) was copied from memory.  A later patch removes the
18727         bogus .sbss handling anyway.
18729         * src/unexelf.c (unexec): Use correct index to look up names.
18731 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
18733         Fix Bug#21841
18735         * lisp/filenotify.el (file-notify--rm-descriptor):
18736         Use `descriptor' instead of computing its value.
18737         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
18738         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
18739         (Bug#21841)
18741 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
18743         Remove dirs in vc project roots from the the vc project library roots
18745         * lisp/progmodes/project.el (project-library-roots):
18746         Remove directories inside the project roots from the result.
18747         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
18749 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
18751         Move and rename xref-find-regexp to the project package
18753         * lisp/progmodes/project.el (project-find-regexp)
18754         (project--read-regexp)
18755         (project--find-regexp-in): New functions.
18757         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
18758         xref--show-xrefs.  Use in existing callers in place of that
18759         function.
18760         (xref--show-xrefs): Only do the "show" part.
18761         (xref-find-regexp): Rename, more or less, to
18762         project-or-libraries-find-regexp.
18764 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
18766         Abolish temporary buffer management for xref
18768         * lisp/progmodes/xref.el (xref--temporary-buffers)
18769         (xref--current)
18770         (xref--inhibit-mark-current)
18771         (xref--mark-selected): Remove.  Remove all references.
18772         (xref--show-xrefs): Do not construct the
18773         list of the temporary buffers, nor pass it along.
18775 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
18777         Rename "search path" to "library roots"
18779         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
18780         of the elements from CL-LIST1.
18782         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
18783         Update WRT to the above change.
18785         * lisp/progmodes/project.el (project-search-path-function): Rename
18786         to project-library-roots-function, update the documentation and
18787         references.
18788         (project-search-path): Likewise, to project-library-roots.
18789         (project-roots): Clarify documentation.
18790         (project-vc-search-path): Likewise, to project-vc-library-roots.
18791         (project-library-roots): In addition to the renames, thread the
18792         results through file-name-as-directory.
18793         (project-prune-directories): Accept a variable number of
18794         arguments.  Rename to project-combine-directories.
18795         (project-subtract-directories): New function.
18797         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
18798         Append project-roots and project-library-roots together.
18800         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
18802 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
18804         Prefer xpalloc to doubling buffers by hand
18806         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
18807         (read1): Use it for simplicity.
18808         * src/macros.c (store_kbd_macro_char):
18809         * src/minibuf.c (read_minibuf_noninteractive):
18810         * src/term.c (encode_terminal_code):
18811         * src/xrdb.c (magic_db):
18812         Prefer xpalloc to growing buffers by hand.
18813         This doesn’t fix any bugs, but simplifies the code a bit.
18815 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
18817         Merge from gnulib
18819         This incorporates:
18820         2015-11-05 timespec-sub: fix overflow bug; add tests
18821         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
18822         2015-11-03 intprops: add parentheses
18823         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
18824         Copy from gnulib.
18826 2015-11-07  David Reitter  <david.reitter@gmail.com>
18828         Provide NS notification objects where required to eliminate warnings
18830         * src/nsterm.m (windowDidResize:, toggleFullScreen:):
18831         Call notification functions with notification objects
18832         as per delegate APIs.
18834 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
18836         Add test for bug #21824
18838         * test/automated/buffer-tests.el: New file.
18839         (overlay-modification-hooks-message-other-buf): New test.
18841 2015-11-07  Kelvin White  <kwhite@gnu.org>
18843         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
18845 2015-11-07  David Reitter  <david.reitter@gmail.com>
18847         Ignore fullscreen exit notifications on NS when frame is dead
18849         * src/nsterm.m (windowDidResize:, windowWillExitFullScreen:)
18850         (windowDidExitFullScreen:): Return if frame is dead.
18851         These functions may be called when a fullscreen frame
18852         is closed; they are called before, not after.
18854         May address Bug#21428.
18856 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
18858         Speed up lookup in redisplay--variables
18860         * lisp/frame.el (redisplay--variables): Make it a hash-table.
18862         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
18863         as a hash-table.  This speeds up this function by an order of
18864         magnitude: where previously a setq was slowed down by 100% by
18865         introducing the maybe_set_redisplay test, it is now only 5%
18866         slower.
18867         (syms_of_xdisp) <redisplay--variables>: Doc fix.
18869 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
18871         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
18873         The defsubst was being created as:
18874             (cl-defsubst name (args) ("DOC") ...)
18876         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
18877         Add test.
18879 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
18881         Update doc string of hexl-mode
18883         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
18885 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
18887         Fix error in copy-abbrev-table
18889         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
18890         property of the abbrev-table.  (Bug#21828)
18892         * test/automated/abbrev-tests.el: New file.
18894 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
18896         Add test to auto-revert-tests.el for Bug#21841
18898         * test/automated/auto-revert-tests.el
18899         (auto-revert-test01-auto-revert-several-files): New test.
18900         (auto-revert-test02-auto-revert-tail-mode)
18901         (auto-revert-test03-auto-revert-mode-dired): Rename them.
18903 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
18905         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
18907 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
18909         In x_consider_frame_title don't set title of tooltip frames
18911         * src/xdisp.c (x_consider_frame_title): Return immediately for
18912         tooltip frames to avoid displaying empty tooltips.
18914 2015-11-06  Anders Lindgren  <andlind@gmail.com>
18916         Fixed NextStep fullscreen problem (bug#21770).
18918         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
18919         fullscreen frames.
18921 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
18923         Ensure redisplay after evaluation
18925         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
18926         Revert last change.
18927         * lisp/frame.el (redisplay--variables): Populate the
18928         redisplay--variables list.
18929         * src/xdisp.c (maybe_set_redisplay): New function.
18930         (syms_of_xdisp) <redisplay--variables>: New variable.
18931         * src/window.h (maybe_set_redisplay): Declare prototype.
18932         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
18934 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
18936         * test/automated/subr-tests.el (subr-test-when): Fix again.
18938 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
18940         Don't invoke overlay modification hooks in wrong buffer
18942         * src/buffer.c (report_overlay_modification): When called with
18943         AFTER non-zero, don't invoke overlay modification hooks if the
18944         buffer recorded in last_overlay_modification_hooks is different
18945         from the current buffer.  (Bug#21824)
18947 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
18949         * admin/notes/repo: Fix a few obsolete references to Bazaar.
18951 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
18953         * test/automated/subr-tests.el (subr-test-when): Fix test.
18955 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
18957         Avoid division by zero crash observed by Yuan MEI
18959         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
18961         * src/dispnew.c (required_matrix_height, required_matrix_width):
18962         Avoid division by zero.
18963         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
18964         dpyinfo->smallest_char_width to 1.
18966 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
18968         Ensure redisplay after "C-x C-e"
18970         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
18971         redisplay happens to account for any side effects of the evaluated
18972         sexp.  (Bug#21835)
18974 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
18976         Skip some file notification tests for cygwin
18978         * test/automated/file-notify-tests.el (file-notify--test-with-events):
18979         Remove argument TIMEOUT.  Adapt all callees.
18980         (file-notify-test02-events, file-notify-test04-file-validity):
18981         Skip for cygwin.  (Bug#21804)
18983 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
18985         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
18987 2015-11-05  Daiki Ueno  <ueno@gnu.org>
18989         Suppress redundant Pinentry startup messages
18991         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
18992         * lisp/epg.el: Declare `pinentry-start'.
18993         (epg--start): Call `pinentry-start' with QUIET argument set.
18995 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
18997         * doc/emacs/ack.texi (Acknowledgments): Updates.
18999 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
19001         * test/automated/elisp-mode-tests.el: Silence some run-time warnings.
19002         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
19004 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
19006         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
19007         Add prettification support for \times.
19009 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
19011         * test/automated/process-tests.el: Skip tests when bash is unavailable.
19012         (process-test-sentinel-accept-process-output)
19013         (process-test-sentinel-sit-for): skip-unless bash executable found.
19015 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
19017         Add test for bug #21831
19019         * test/automated/process-tests.el
19020         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
19021         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
19023 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
19025         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
19027         (eieio--generic-static-object-generalizer): Fix typo.
19028         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
19029         like the underlying cause of bug#17852 was fixed in the mean time.
19031 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
19033         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
19035         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
19036         It breaks bootstrapping (duh).
19038 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
19040         * lisp/files.el (report-errors): Obsolete.
19042         (normal-mode, hack-local-variables, dir-locals-find-file):
19043         Use `with-demoted-errors' instead.
19045 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
19047         * lisp/subr.el (when): Use `macroexp-progn'.
19049         * test/automated/subr-tests.el (subr-test-when): New test.
19051 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
19053         * lisp/progmodes/xref.el: Doc fixes.
19054         (xref-make-file-location, xref-make-buffer-location, xref-make)
19055         (xref-make-bogus-location, xref-make-match): Add cross-references.
19056         (xref--insert-xrefs): Fix typo in docstring.
19058 2015-11-04  Anders Lindgren  <andlind@gmail.com>
19060         Render fringe bitmaps correctly on NextStep (bug#21301)
19062         The fringe bitmaps were inverted, the background was not transparent,
19063         the image data was horizontally mirrored, and periodic fringe bitmaps
19064         were not supported.
19066         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
19067         When both background and foreground colors are 0, set the background
19068         alpha channel to 0 (making the background transparent).  When
19069         copying the image data, do this from the most significant bit
19070         (leftmost) to the least (rightmost), to avoid mirroring.
19071         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
19072         Add support for periodic images (e.g. the empty line indicator).
19074 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
19076         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
19078 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
19080         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
19082         * admin/MAINTAINERS: Add thunk.el.
19084 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
19086         * lisp/calc/calc.el (calc-bug-address): Change maintainer address.
19088 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
19090         Fix a stupid error in gfilenotify.c
19092         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
19093         if we've got a `deleted' signal AND the file name is the watched one.
19095 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
19097         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
19099         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
19100         Use case-insensitive string compare for file names.
19101         (emacs-test-dir): Add 'downcase' to cause case differences (at
19102         least on my system).
19104 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
19106         flymake-tests.el (warning-predicate-rx-gcc): Fix check
19108         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
19109         Also check that "make" is available, not just "gcc".
19111 2015-11-02  Ken Brown  <kbrown@cornell.edu>
19113         Document behavior of collation on Cygwin
19115         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
19116         expected failure on Cygwin.
19117         * doc/lispref/strings.texi (Text Comparison): Document that
19118         punctuation and whitespace are not ignored for sorting on Cygwin.
19120 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
19122         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
19124 2015-11-01  Glenn Morris  <rgm@gnu.org>
19126         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
19127         (Bug#21794)
19128         * test/automated/f90.el (f90-test-bug21794): New test.
19130 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
19132         Fix incompatibility with TCC in test for bug#18745
19134         * test/automated/process-tests.el (process-test-quoted-batfile):
19135         Remove spaces unrelated to the bug being tested.
19137 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
19139         Improve completion in tramp-gvfs.el
19141         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
19142         Rename from `tramp-zeroconf-parse-service-device-names'.
19143         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
19144         with `tramp-zeroconf-parse-device-names'.
19145         (tramp-gvfs-parse-device-names): New defun.
19146         (top): Use it when `tramp-zeroconf-parse-device-names' is not
19147         applicable.
19149         * lisp/net/tramp.el (tramp-set-completion-function): The argument
19150         could also be a zeroconf service type.
19152 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19154         * lisp/net/ntlm.el: Change version to 2.0.0.
19156 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
19158         Fix bug#21762
19159         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
19160         `eql' instead of `=' to accommodate the case that (syntax-after (point))
19161         returns nil.
19162         * test/automated/python-tests.el (python-indent-inside-paren-7):
19163         New test.
19165 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
19167         * test/automated/python-tests.el: Avoid warnings.
19168         (python-tests-with-temp-buffer, python-tests-with-temp-file):
19169         Bind `python-indent-guess-indent-offset' to nil.
19171 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
19173         * src/alloc.c: Silence compiler warnings.
19174         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
19176 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
19178         * etc/NEWS: Fix js-jsx-mode entry punctuation.
19180 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
19182         Add JSX indentation via js-jsx-mode  (Bug#21799)
19184         * lisp/progmodes/js.el: Add JSX indentation support.
19185         (js--jsx-end-tag-re)
19186         (js--jsx-after-tag-re): New variables.
19187         (js--jsx-find-before-tag)
19188         (js--jsx-indented-element-p)
19189         (js--as-sgml)
19190         (js--expression-in-sgml-indent-line)
19191         (js-jsx-indent-line)
19192         (js-jsx-mode): New functions.
19193         * test/indent/js-jsx.js: New file.
19194         * etc/NEWS: Add information about js-jsx-mode.
19196 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
19198         Minor fix in filenotify.el
19200         * lisp/filenotify.el (file-notify--event-file-name)
19201         (file-notify--event-file1-name): Normalize result with
19202         `directory-file-name'.
19204 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
19206         Avoid errors in redisplay--pre-redisplay-functions
19208         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
19209         use 'bobp', instead compare window-point with 1.  (Bug#21730)
19211 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
19213         Merge from gnulib
19215         This incorporates:
19216         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
19217         2015-10-25 stdalign: port to Sun C 5.9
19218         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
19219         Copy from gnulib.
19221 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
19223         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
19224         (w32_compare_strings): Adjust for the correction.
19226 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
19228         * test/automated/vc-tests.el (vc-test--state)
19229         (vc-test--working-revision, vc-test--checkout-model):
19230         Add result messages.
19232 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19234         * test/automated/faces-tests.el: Add another test
19236 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19238         * lisp/faces.el (faces--attribute-at-point): Fix bug
19239         introduced by previous commit.
19241 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19243         * test/automated/faces-tests.el: New file.
19245 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19247         * lisp/faces.el: Refactor common code and fix a bug.
19248         (faces--attribute-at-point): New function.  Fix a bug when the
19249         face at point is a list of faces and the desired attribute is not
19250         on the first one.
19251         (foreground-color-at-point, background-color-at-point): Use it.
19253 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
19255         * etc/tutorials/TUTORIAL.translators: Fix PL names.
19257 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
19259         * lisp/character-fold.el: Provide `character-fold'.
19261 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
19263         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
19264         for Gnus and ivy.
19266 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
19268         Some minor fixes for tramp-gvfs.el
19270         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
19271         An attribute returned by gvfs-info might be empty.  In case of
19272         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
19273         (tramp-zeroconf-parse-service-device-names): New defun.
19274         Derived from `tramp-zeroconf-parse-workstation-device-names'.
19275         (top): Add completion functions for "afp" and "smb" methods.
19277 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19279         * test/automated/character-fold-tests.el: New file
19281 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19283         * test/automated/sort-tests.el: New file.
19284         Tests in this file are randomly generated and then tested with
19285         regular, reverse, and case-fold sorting.
19287 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
19289         Describe known problems with pinning Emacs to taskbar
19291         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
19292         on Windows 10.  For the details, see the discussion starting at
19293         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
19295 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
19297         * lisp/isearch.el: Avoid an error that blocks isearch.
19298         (isearch-update): Don't error if `isearch--current-buffer' has
19299         been killed.
19301         * test/automated/isearch-tests.el (isearch--test-update):
19302         New file.
19304 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
19306         Fix documentation of 'beginning/end-of-buffer'
19308         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
19309         conditions under which the mark will be pushed at the previous
19310         position.  (Bug#21748)
19312 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
19314         Add RefTeX feature idea: editing RefTeX TOC buffers
19316         More face defs for ivy, swiper, ace-window, eshell
19318 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19320         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
19321         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
19322         just VAR.
19323         (auth-source-backend-parse): Use make-instance.
19324         (auth-source-search): Remove unused key args.
19325         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
19326         (auth-source-search-backends): Use slot names rather than their initarg.
19327         (auth-source-netrc-create):
19328         (auth-source-delete):
19329         (auth-source-secrets-create, auth-source-plstore-search)
19330         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
19331         (auth-source-plstore-create, auth-source-netrc-search)
19332         (auth-source-netrc-parse): Remove unused key args.
19333         (auth-source-forget+): Simplify the arglist.
19334         (auth-source-macos-keychain-search-items)
19335         (auth-source-token-passphrase-callback-function): Mark unused args.
19336         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
19337         (pp-escape-newlines): Declare.
19338         (auto-source--symbol-keyword): New function.
19339         (auth-source-plstore-create, auth-source-netrc-create)
19340         (auth-source-netrc-normalize): Use it.
19341         (auth-source-netrc-search): Don't pass :delete to
19342         auth-source-netrc-parse since it doesn't use it.
19343         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
19344         symbol-value to index in keyword args.
19345         (auth-source-macos-keychain-result-append): Avoid setq.
19346         (auth-source-netrc-create): Remove unused vars `file' and `add'.
19347         (auth-source-user-or-password): Remove unused var `cname'.
19349 2015-10-29  Juri Linkov  <juri@linkov.net>
19351         * lisp/dired.el (dired-unmark-all-files-query): Declare.
19352         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
19353         (Bug#21746)
19355 2015-10-29  Juri Linkov  <juri@linkov.net>
19357         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
19358         to go to the beginning of text line instead of command line.
19359         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
19361 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
19363         Fix encoding of saving *Help* buffers
19365         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
19366         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
19368 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19370         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
19371         (cl--generic-derived-specializers): New function.
19372         (cl--generic-derived-generalizer): New generalizer.
19373         (cl-generic-generalizers): New specializer (derived-mode MODE).
19374         (cl--generic-split-args): Apply the rewriter, if any.
19375         (cl-generic-define-context-rewriter): New macro.
19376         (major-mode): Use it to define a new context-rewriter, so we can write
19377         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
19379         * lisp/frame.el (window-system): New context-rewriter so we can write
19380         `(window-system VAL)' instead of (window-system (eql VAL)).
19381         (cl--generic-split-args): Apply the rewriter, if any.
19382         (frame-creation-function): Use the new syntax.
19384         * lisp/term/x-win.el (window-system-initialization)
19385         (handle-args-function, frame-creation-function)
19386         (gui-backend-set-selection, gui-backend-selection-owner-p)
19387         (gui-backend-selection-exists-p, gui-backend-get-selection):
19388         * lisp/term/w32-win.el (window-system-initialization)
19389         (handle-args-function, frame-creation-function)
19390         (gui-backend-set-selection, gui-backend-get-selection)
19391         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
19392         * lisp/term/pc-win.el (gui-backend-get-selection)
19393         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
19394         (gui-backend-set-selection, window-system-initialization)
19395         (frame-creation-function, handle-args-function):
19396         * lisp/term/ns-win.el (window-system-initialization)
19397         (handle-args-function, frame-creation-function)
19398         (gui-backend-set-selection, gui-backend-selection-exists-p)
19399         (gui-backend-get-selection):
19400         * lisp/startup.el (handle-args-function):
19401         * lisp/term/xterm.el (gui-backend-get-selection)
19402         (gui-backend-set-selection): Use the new syntax.
19404 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19406         * test/indent/css-mode.css: Add tests for url(...) syntax.
19408 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19410         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
19411         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
19412         (smie-prec2->grammar): Use `declare'.
19414 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19416         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
19417         (cl--generic-generalizer): Add `name' field.
19418         (cl-generic-make-generalizer): Add corresponding `name' argument.
19419         (cl-generic-define-generalizer): New macro.
19420         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
19421         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
19422         (cl--generic-t-generalizer): Use it.
19423         (cl-generic-ensure-function): Add `noerror' argument.
19424         (cl-generic-define): Use it so we don't follow aliases.
19425         (cl-generic-define-method): Preserve pre-existing ordering of methods.
19426         (cl--generic-arg-specializer): New function.
19427         (cl--generic-cache-miss): Use it.
19428         (cl-generic-generalizers): Only fset a temporary definition
19429         during bootstrap.
19430         (cl--generic-struct-tag, cl--generic-struct-specializers):
19431         Allow extra arguments.
19433         * lisp/emacs-lisp/eieio-compat.el
19434         (eieio--generic-static-symbol-generalizer)
19435         (eieio--generic-static-object-generalizer):
19436         Use cl-generic-define-generalizer.
19437         (eieio--generic-static-symbol-specializers): Allow extra arguments.
19439         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
19440         (eieio--generic-subclass-generalizer):
19441         Use cl-generic-define-generalizer.
19442         (eieio--generic-subclass-specializers): Allow extra arguments.
19444 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
19446         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
19448 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
19450         Add "afp" method to Tramp
19452         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
19454         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
19455         (tramp-gvfs-handle-expand-file-name)
19456         (tramp-gvfs-handler-mounted-unmounted)
19457         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
19458         (tramp-gvfs-maybe-open-connection): Support also "afp".
19459         (tramp-gvfs-handle-file-attributes): Handle the case of empty
19460         "owner::user" and "owner::group" entries.
19462 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
19464         Handle negative coordinates in ‘x_calc_absolute_position’
19466         * src/w32term.c (x_calc_absolute_position): Find display origin to
19467         allow for negative coordinates.
19469 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
19471         (internal--syntax-propertize): Save match-data here (bug#21766)
19473         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
19474         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
19476 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
19478         Don't require default-directory to end with a slash
19480         * doc/lispref/files.texi (Magic File Names): Document the change
19481         in unhandled-file-name-directory.
19483         * lisp/url/url-handlers.el
19484         (url-handler-unhandled-file-name-directory): Update accordingly.
19486         * src/buffer.c (default-directory): Update the docsting.
19488         * src/fileio.c (unhandled-file-name-directory): Default to calling
19489         `file-name-as-directory'
19490         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
19492 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
19494         * lisp/isearch.el: Delete some outdated comments.
19496 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
19498         Fix eshell/clear not working if the output has a small line count
19500         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
19501         number of newlines to be inserted. This fixes the issue where
19502         eshell/clear wouldn't work if the prompt was not at the bottom of the
19503         window, and the output wasn't too long.
19505 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
19507         * lisp/files.el (write-file): Use vc-refresh-state.
19509         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
19511         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
19513 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
19515         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
19516         (macroexp-unprogn): Make sure we never return an empty list.
19517         (macroexp-if): Remove unused (and unsafe) optimization.
19518         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
19519         occur occasionally.
19521 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
19523         Fix bug#21766 and add test
19524         * lisp/simple.el (delete-trailing-whitespace): Save match data when
19525         calling `skip-syntax-backward'.
19526         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
19527         New test.
19529 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
19531         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
19533 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
19535         * src/dispnew.c (init_display): Simplify overflow checking.
19537 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
19539         * lisp/character-fold.el (character-fold-to-regexp): Fix case
19540         where string ends in space
19542 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
19544         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
19546         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
19548 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
19550         * lisp/character-fold.el: Make compatible with lax-whitespace.
19551         (character-fold-to-regexp): Rework internals to play nice with
19552         lax-whitespacing.
19554         When the user types a space, we want to match the table entry for
19555         ?\s, which is generally a regexp like "[ ...]".  However, the
19556         `search-spaces-regexp' variable doesn't "see" spaces inside these
19557         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
19558         manually expose a space).
19560         Furthermore, the lax search engine acts on a bunch of spaces, not
19561         on individual spaces, so if the string contains sequential spaces
19562         like "  ", we need to keep them grouped together like this:
19563         "\\(  \\|[ ...][ ...]\\)".
19565 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
19567         * lisp/isearch.el: Refactor momentary messages.
19568         (isearch--momentary-message): New function.
19569         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
19570         (isearch-toggle-invisible): Use it.
19572 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
19574         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
19575         (isearch-define-mode-toggle): New macro.
19576         (isearch-toggle-invisible): Rename to
19577         `isearch-define-mode-toggle'.
19578         (isearch-toggle-case-fold, isearch-toggle-invisible)
19579         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
19580         with `isearch-define-mode-toggle'.
19582 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
19584         Avoid using `add-to-list' on a let-local var in tramp-smb.el
19586         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
19587         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
19589 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
19591         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
19592         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
19593         does not exist in XEmacs 21.4.
19595 2015-10-28  Anders Lindgren  <andlind@gmail.com>
19597         Fixed OS X startup crash
19599         Input events started to arrive before ns_term_init() was finished.
19600         Solved by blocking input.  This also seems to correct the "You
19601         can't open the application "Emacs" because it may be damaged or
19602         incomplete" error issued when double-clicking on the Emacs
19603         application.
19605         * src/nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
19606         * src/nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
19608 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
19610         * src/process.c (Fget_buffer_process): Improve docstring.
19611         Document the fact that it doesn't return dead processes.
19613 2015-10-28  Anders Lindgren  <andlind@gmail.com>
19615         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
19617         * src/nsterm.h (struct ns_output): New flag, in_animation.
19618         * src/nsfns.m (Fx_create_frame): Initialize in_animation flag.
19619         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
19620         in_animation flag around call to "setVisible". Set new tool bar
19621         height before call to setVisible.
19622         * src/nsterm.m (x_set_window_size): Don't call [view setRow:
19623         andColumns:] as this fools the subsequent call to updateFrameSize
19624         from performing the real resize.
19625         (windowDidResize): Don't update anything when in_animation is
19626         non-zero.
19628         Trace output.
19630         * src/nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
19631         (EmacsToolbar):
19632         * src/nsterm.m (x_set_window_size, updateFrameSize)
19633         ([EmacsView setRows: andColumns:])
19635 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
19637         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
19639 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
19641         Prettify TeX macros not ending in a word char
19643         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
19644         Prettify macros which don't end in a word character.
19646 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
19648         Pipe Hg commit descriptions through 'tabindent'
19650         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
19651         through 'tabindent'.
19652         (vc-hg-log-view-mode): Set tab-width to 2 locally.
19653         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
19655 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
19657         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
19658         (tramp-smb-handle-directory-files): Use `delete-dups'.
19660         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
19662 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
19664         * lisp/international/ccl.el: Use lexical-binding.
19665         (ccl-compile-if): Remove unused var `false-ic'.
19666         (ccl-compile-write-repeat): Remove unused var `i'.
19667         (ccl-compile-map-single): Remove unused var `id'.
19668         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
19669         dynamic var `ccl-code'.
19671 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
19673         * lisp/json.el (json-new-object): Optimize trivial `list' call.
19675 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
19677         * lisp/help.el: Fix bug with incorrect arglist string.
19678         (help-add-fundoc-usage): Don't mistake a mis-formatted string
19679         for a list.
19681 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
19683         * lisp/gnus/gnus-topic.el: Silence some warnings.
19684         (gnus-topic-prepare-topic): Remove unused var `topic'.
19685         (gnus-topic-remove-topic): Mark unused arg `hide'.
19686         (gnus-tmp-header): Declare.
19687         (gnus-topic-goto-missing-group): Remove unused var `entry'.
19688         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
19689         (gnus-topic-copy-matching): Mark unused arg `copyp'.
19690         Move initialization of `topic' into its declaration.
19692 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
19694         Minor CEDET fixes
19696         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
19697         Handle warnings from gtags about invalid options.
19698         (cedet-gnu-global-create/update-database): Do incremental update
19699         properly.
19701         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
19702         Get monotone root right.
19704 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
19706         Fall back to polling in autorevert when needed
19708         * lisp/autorevert.el (auto-revert-notify-handler): When a
19709         `stopped' event arrives from file notification, fall back to polling.
19711         * test/automated/file-notify-tests.el
19712         (file-notify-test03-autorevert): Extend test for polling when file
19713         notification ceases to work.
19715 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
19717         Show full commit messages in 'hg log' when appropriate
19719         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
19720         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
19721         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
19723 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
19725         Use a plain SVG file for the icon
19727         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
19728           format instead of the Inkscape SVG format.
19730 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
19732         Fix subtle bug in auto-revert-tests.el
19734         * test/automated/auto-revert-tests.el
19735         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
19736         buffer where it belongs to.  (Bug#21668)
19738 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
19740         * lisp/emacs-lisp/map.el: Better docstrings.
19742         * lisp/emacs-lisp/seq.el: Better docstrings.
19744         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
19746 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
19748         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
19750 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
19752         Clarify that load-path contents should be directory file names
19754         * doc/lispref/files.texi (Directory Names): Define and use "directory
19755         file name".  Recommend `expand-file-name'.
19757         * src/lread.c (load-path): Fix doc string; elements are directory file
19758         names.
19760 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
19762         Fix simple-test.el test
19764         * test/automated/simple-test.el (simple-test--dummy-buffer):
19765         Make sure indentation doesn't use TABs, otherwise the 6th test
19766         might fail.
19768 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
19770         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
19771         `substring' does not account for full width characters.
19773 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
19775         Further work on `stopped' events in filenotify.el
19777         * doc/lispref/os.texi (File Notifications): Rework examples.
19779         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
19780         (file-notify--rm-descriptor, file-notify-callback): Improve check
19781         for sending `stopped' event.
19782         (file-notify-add-watch): Check for more events for `inotify'.
19784         * test/automated/file-notify-tests.el
19785         (file-notify--test-expected-events): New defvar.
19786         (file-notify--test-with-events): Use it.
19787         (file-notify--test-cleanup): Make it more robust when deleting
19788         directories.
19789         (file-notify--test-event-test): Check also for watched directories.
19790         (file-notify--test-event-handler): Suppress temporary .#files.
19791         (file-notify-test02-events, file-notify-test04-file-validity):
19792         Rework `stopped' events.
19793         (file-notify-test05-dir-validity): Wait for events when appropriate.
19795 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
19797         * src/keyboard.c (post-command-hook): Shorten docstring.
19799 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
19801         Fix infinite loop in sh-script's SMIE code
19803         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
19804         loop (bug#21747).
19806 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
19808         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
19809         Character-fold search _still_ doesn't play well with
19810         lax-whitespace.  So disable it by default (again) for now.
19812 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
19814         * lisp/isearch.el: No visual feedback for default search mode.
19815         During an isearch where character-folding is the default, we don't
19816         want to take up minibuffer space just to tell the user that
19817         "Char-fold " is on.  The same goes for other modes, if the user
19818         changes the default.  In contrast, if the user toggles OFF the
19819         default mode, they should see "Literal", to distinguish it from
19820         the default mode.
19821         (isearch--describe-regexp-mode): Return "" if describing the
19822         default mode, and return "literal " if describing a plain search
19823         and it is not default.
19825 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
19827         * test/automated/simple-test.el: New file.
19828         Define tests for `newline' and `open-line'.
19830 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
19832         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
19833         Also run `post-self-insert-hook' when called interactively.
19835 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
19837         * lisp/simple.el (open-line): Fix docstring.
19838         Also explain apparently redundant line.
19840 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19841             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
19843         Sync with soap-client repository, version 3.0.1
19845         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
19846         Bump version to 3.0.1.
19848         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
19850 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
19852         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
19854 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
19856         * src/keyboard.c (post-command-hook): Extend the docstring.
19857         Mainly, explain how to use it without hanging Emacs, or giving the
19858         impression that it is hanging.  Also mention `pre-command-hook'.
19859         (pre-command-hook): Mention `post-command-hook'.
19861 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
19863         * lisp/custom.el (custom-declare-variable): Shorten code again.
19864         Without using pcase this time.  We can't use pcase because it is
19865         loaded after custom in loadup.el.  Also add a comment explaining
19866         this to future dummies like me.
19868 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
19870         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
19872 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
19874         Introduce `stopped' event in file notification
19876         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
19877         (file-notify-rm-watch): Use it.
19878         (file-notify-callback): Implement `stopped' event.
19879         (file-notify-add-watch): Mention `stopped' in the docstring.
19880         Check, that upper directory exists.
19882         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
19883         Add two test cases.
19884         (file-notify-test02-events): Handle also `stopped' event.
19885         (file-notify-test04-file-validity): Add another test case.
19887 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
19889         Revert commit that broke 'make bootstrap'
19891         * lisp/custom.el (custom-declare-variable): Revert commit
19892         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
19893         even when pcase has not been defined yet, when doing bootstrapping.
19895 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
19897         Port recent inline functions fix to Standard C
19899         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
19900         All uses rewritten to define the function directly rather than to
19901         use a macro to define the function.  This conforms to Standard C,
19902         which does not allow stray semicolons at the top level.  I hope it
19903         also avoids the problems with TAGS.  Those macros, though clever,
19904         were pretty confusing anyway, and it wasn’t clear they were worth
19905         the aggravation even without the TAGS problem.
19907 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19909         * lisp/isearch.el: Make character-fold search the default again.
19911 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19913         * lisp/character-fold.el: Many improvements.
19914         (character-fold-search-forward, character-fold-search-backward):
19915         New command.
19916         (character-fold-to-regexp): Remove lax-whitespace hack.
19917         (character-fold-search): Remove variable.  Only isearch and
19918         query-replace use char-folding, and they both have their own
19919         variables to configure that.
19921 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19923         * lisp/isearch.el: Generalize definition of regexp-function toggles.
19924         (isearch-specify-regexp-function): New macro for specifying
19925         possible values of `isearch-regexp-function'.
19926         (isearch-toggle-character-fold, isearch-toggle-symbol)
19927         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
19929 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19931         * lisp/isearch.el (search-default-regexp-mode): New variable.
19932         (isearch-mode): Use it.
19934 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19936         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
19937         (search-slow-speed, search-upper-case)
19938         (search-nonincremental-instead, search-whitespace-regexp)
19939         (search-invisible, isearch-hide-immediately)
19940         (isearch-resume-in-command-history, search-ring-max)
19941         (regexp-search-ring-max, search-ring-update, search-highlight)
19942         (isearch-fail): Delete :group entries.
19944 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
19946         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
19948 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19950         addpm.c: Silence some warnings.
19952         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
19953         to LPBYTE.
19954         (add_registry): Pass NULL to optional lpClass argument of
19955         RegCreateKeyEx, not an empty string.
19957 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19959         addpm.c: Do not add obsolete GTK libraries to the path.
19961         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
19962         (add_registry): Remove variables `size' and `gtk_key'.
19963         Do not add the GTK DLL directory to the library search path; it is
19964         confusing behavior (in particular, the same Emacs version with and
19965         without invoking addpm will use a different path), and the GTK image
19966         libraries are obsolete anyway.
19968 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19970         addpm.c: Replace existing registry entries, but do not create new ones
19972         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
19973         existing values from previous versions, but do not add new ones; the
19974         key could exist for other reasons unrelated to old Emacsen, like X-style
19975         resources, or to set some environment variables like HOME or LANG, and
19976         in that case we don't want to populate it with obsolete values.
19978 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19980         * nt/addpm.c (add_registry): Do not compute unused return value.
19982 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19984         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
19986         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
19987         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
19988         current behavior because REG_OPTION_NON_VOLATILE is defined to
19989         be 0L anyway, but that option is actually documented only for
19990         RegCreateKeyEx.
19992 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
19994         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
19996 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
19998         Update frame title when redisplay scrolls selected window
20000         * src/xdisp.c (redisplay_window): Reconsider the frame's title
20001         when the mode-line of the frame's selected window needs to be
20002         updated.
20004 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
20006         Update frame title when scrolling the selected window
20008         * src/window.c (wset_update_mode_line): New function, sets either
20009         the window's update_mode_line flag or the global update_mode_lines
20010         variable.
20011         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
20012         (window_scroll_line_based): Call it instead of only setting the
20013         window's update_mode_line flag.
20015 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
20017         An even better fix for bug#21739
20019         * src/window.c (set_window_buffer): If the window is the frame's
20020         selected window, set update_mode_lines, not the window's
20021         update_mode_line flag.
20022         * src/buffer.c (Fkill_buffer): Undo last change.
20023         (set_update_modelines_for_buf): Function deleted.
20025 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
20026             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
20028         Sync with soap-client repository, version 3.0.0
20030         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
20031         Bump version to 3.0.0.
20033         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
20035         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
20037         * lisp/net/soap-inspect.el: Shorten first line description.
20039         * lisp/net/soap-client.el: Make a small whitespace fix.
20041         * lisp/net/soap-inspect.el: Update copyright years.
20043         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
20044         first use in soap-encode-xs-element.
20046         * lisp/net/soap-client.el (soap-type-is-array?): new defun
20047         (soap-encode-xs-element): handle array elements in this function
20048         (soap-encode-xs-complex-type): flag error if asked to encode an
20049         array type, this is handled in `soap-encode-xs-element'
20051         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
20052         Do not print type for attribute group.
20054         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
20055         New function.
20056         (soap-inspect-xs-attribute-group): Likewise.
20058         * lisp/net/soap-inspect.el
20059         (soap-resolve-references-for-xs-attribute-group): Resolve
20060         references of attributes in an attribute group.
20062         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
20063         type directly, not through soap-wsdl-get.
20065         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
20066         nil if reference attribute is nil.
20068         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
20069         Convert XML schema attributes to xsd:string.
20071         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
20072         New function.
20073         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
20074         (soap-sample-value-for-xs-complex-type): Likewise.
20075         (soap-inspect-xs-attribute): New function.
20076         (soap-inspect-xs-simple-type): Print attributes.
20077         (soap-inspect-xs-complex-type): Likewise.
20079         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
20080         Resolve references for attributes.
20081         (soap-resolve-references-for-xs-complex-type): Likewise.
20083         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
20084         Rename from soap-xml-node-first-child.
20085         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
20086         (soap-xs-parse-simple-type): Likewise.
20088         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
20090         * lisp/net/soap-client.el (soap-invoke-internal): New function.
20091         (soap-invoke-async): Call soap-invoke-internal.
20092         (soap-invoke): Likewise.
20094         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
20095         url-retrieve callback is killed.
20097         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
20098         Rename function.
20099         (soap-parse-wsdl-phase-fetch-imports): Likewise.
20100         (soap-parse-wsdl-phase-parse-schema): Likewise.
20101         (soap-parse-wsdl-phase-fetch-schema): Likewise.
20102         (soap-parse-wsdl-phase-finish-parsing): Likewise.
20103         (soap-parse-wsdl): Update calls.
20105         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
20107         * lisp/net/soap-client.el (soap-invoke-async): New function.
20108         (soap-invoke): Reimplement using soap-invoke-async.
20110         * lisp/net/soap-client.el (soap-parse-server-response):
20111         Improve docstring.
20112         (soap-invoke): Inline call to soap-parse-server-response.
20114         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
20115         Prevent incorrect warning.
20117         * lisp/net/soap-client.el (soap-parse-server-response):
20118         Rename soap-process-url-response.  Destroy the mime part.
20119         (soap-invoke): Call soap-parse-server-response.
20121         * lisp/net/soap-client.el: Update copyright date.
20123         * lisp/net/soap-client.el: Fix checkdoc issues.
20125         * lisp/net/soap-client.el: Fix indentation and long lines.
20127         * lisp/net/soap-client.el (soap-time-format): Remove variable.
20128         (soap-encode-xs-basic-type): Simplify date-time format detection.
20129         (soap-decode-xs-basic-type): Remove soap-time-format support.
20131         * lisp/net/soap-client.el (soap-process-url-response): New function.
20132         (soap-fetch-xml-from-url): Call soap-process-url-response.
20133         (soap-parse-wsdl-phase-1): New function.
20134         (soap-parse-wsdl-phase-2): Likewise.
20135         (soap-parse-wsdl-phase-3): Likewise.
20136         (soap-parse-wsdl-phase-4): Likewise.
20137         (soap-parse-wsdl-phase-5): Likewise.
20138         (soap-parse-wsdl): Call phase functions.
20140         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
20141         Remove one-argument and call.
20143         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
20145         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
20146         (soap-parse-schema): Add wsdl argument.  Look up XML schema
20147         imports from wsdl.
20148         (soap-load-wsdl): Do not set soap-xmlschema-imports.
20149         (soap-parse-wsdl): Get XML schema imports from wsdl.
20151         * lisp/net/soap-client.el (soap-current-file): Remove variable.
20152         (soap-wsdl): Add current-file slot.
20153         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
20154         file from wsdl.
20155         (soap-fetch-xml-from-file): Likewise.
20156         (soap-fetch-xml): Likewise.
20157         (soap-load-wsdl): Always create wsdl object first.
20158         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
20160         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
20161         (soap-xs-parse-element): Set is-group slot.
20162         (soap-resolve-references-for-xs-element): Skip is-group elements.
20163         (soap-xs-complex-type): Add is-group slot.
20164         (soap-xs-parse-complex-type): Set is-group slot.
20165         (soap-xs-parse-sequence): Parse xsd:group elements.
20166         (soap-resolve-references-for-xs-complex-type): Inline elements
20167         from referenced xsd:group nodes.
20168         (soap-parse-schema): Parse xsd:group nodes.
20170         * lisp/net/soap-client.el (soap-invoke):
20171         Don't set url-http-version to 1.0.
20173         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
20174         Allow choice nodes to accept multiple values.
20176         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
20177         for extra header values.
20179         * lisp/net/soap-client.el (soap-well-known-xmlns):
20180         Add wsa and wsaw tags.
20181         (soap-operation): Add input-action and output-action slots.
20182         (soap-parse-operation): Parse wsaw:Action nodes.
20183         (soap-encode-body): Encode service-url for WS-Addressing.
20184         (soap-create-envelope): Likewise.
20185         (soap-invoke): Update soap-create-envelope call to provide
20186         service-url argument.
20188         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
20189         Support xsi:type override attribute.
20190         (soap-decode-array): Likewise.
20192         * lisp/net/soap-client.el (soap-parse-schema):
20193         Handle location attribute.
20195         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
20196         matched validation regexp.
20198         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
20199         Encode xsd:list nodes.
20200         (soap-decode-xs-simple-type): Decode xsd:list nodes.
20202         * lisp/net/soap-client.el (soap-get-candidate-elements):
20203         Fix reference handling.
20205         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
20206         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
20207         (soap-xs-add-list): New function.
20209         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
20210         expected, interpret nil as "false".
20212         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
20213         gYear, gMonthDay, gDay and gMonth.
20215         * lisp/net/soap-client.el (soap-time-format): New variable.
20216         (soap-encode-xs-basic-type): Handle dateTime, time, date,
20217         gYearMonth, gYear, gMonthDay, gDay and gMonth.
20218         (soap-decode-date-time): New function.
20219         (soap-decode-xs-basic-type): Use soap-decode-date-time.
20221         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
20222         after encoding.
20223         (soap-decode-xs-basic-type): Validate value before decoding.
20225         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
20226         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
20228         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
20229         instead of overwriting it.
20230         (soap-validate-xs-simple-type): Add union support.
20232         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
20233         to Emacs regexp using xsdre-translate.
20234         (soap-validate-xs-simple-type): Validate value against pattern.
20236         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
20237         inline simpleType nodes.
20238         (soap-decode-type): Handle union types.
20240         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
20241         attributes.
20243         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
20244         from soap-xs-attribute-group-consolidate, all callers updated
20245         (soap-get-xs-attributes): Rename from
20246         soap-xs-attributes-consolidate, all callers updated
20248         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
20249         (soap-xs-attribute-group): New type.
20250         (soap-xs-parse-attribute-group): New function.
20251         (soap-resolve-references-for-xs-attribute-group): Likewise.
20252         (soap-xs-add-extension): Handle attribute groups.
20253         (soap-resolve-references-for-xs-simple-type): Likewise.
20254         (soap-xs-parse-complex-type): Likewise.
20255         (soap-xs-parse-extension-or-restriction): Likewise.
20256         (soap-resolve-references-for-xs-complex-type): Likewise.
20257         (soap-xs-attribute-group-consolidate): New function.
20258         (soap-xs-attributes-consolidate): Handle attribute groups.
20259         (soap-parse-schema): Likewise.
20261         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
20262         Fix boolean encoding.
20264         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
20265         element names in warnings.
20267         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
20269         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
20270         Eliminate invalid warnings for choice types.
20272         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
20273         Also encode base type attributes.
20275         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
20276         warning.  Print e-name in warnings, or element if e-name is nil.
20278         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
20279         (soap-xs-parse-element): Set substitution-group.
20280         (soap-resolve-references-for-xs-element): Populate alternatives slot.
20281         (soap-get-candidate-elements): New function.
20282         (soap-encode-xs-complex-type): Iterate through all candidate elements.
20283         Handle types with nil type indicator.  Fix warning logic.
20285         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
20286         earlier in the file to prevent compiler warning.
20288         * lisp/net/soap-client.el (soap-node-optional): New function.
20289         (soap-node-multiple): Likewise.
20290         (soap-xs-parse-element): Call soap-node-optional and
20291         soap-node-multiple.
20292         (soap-xs-complex-type): Add optional? and multiple? slots.
20293         (soap-xml-get-children-fq): New function.
20294         (soap-xs-element-get-fq-name): Likewise.
20295         (soap-xs-complex-type-optional-p): Likewise.
20296         (soap-xs-complex-type-multiple-p): Likewise.
20297         (soap-xs-attributes-consolidate): Likewise.
20298         (soap-decode-xs-attributes): Likewise.
20299         (soap-decode-xs-complex-type): Decode types with nil type indicator.
20300         Support children that use local namespaces.  Decode attributes.
20301         Add type considerations to optional? and multiple? warnings.
20303         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
20304         Store parsed attributes.
20305         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
20307         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
20308         Don't add the xsi:type attribute (Exchange refuses requests which have
20309         this attribute).
20311         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Convert to lexical binding,
20312         correct compiler warnings about unused function arguments and
20313         local variables.
20315         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
20316         type indicator.
20317         (soap-parse-envelope): Handle response headers.
20318         (soap-parse-response): Likewise.  Only return non-nil decoded values.
20320         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
20321         Return validated value.
20323         * lisp/net/soap-client.el (soap-xs-parse-element)
20324         (soap-xs-parse-simple-type)
20325         (soap-xs-parse-complex-type)
20326         (soap-parse-message)
20327         (soap-parse-operation): Add the current namespace to the element
20328         being created.
20329         (soap-resolve-references-for-xs-element)
20330         (soap-resolve-references-for-xs-simple-type)
20331         (soap-resolve-references-for-xs-complex-type)
20332         (soap-resolve-references-for-operation): Resolve the namespace to
20333         the namespace tag.
20334         (soap-make-wsdl): specify a namespace tag when creating the xsd
20335         and soapenc namespaces
20336         (soap-wsdl-resolve-references): don't update namespace tags in
20337         elements here
20338         (soap-parse-port-type): bind the urn: to soap-target-xmlns
20339         (soap-encode-body): don't add nil namespace tags to
20340         soap-encoded-namespaces
20342         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
20343         for registering the soap-inspect method.  Make debbugs tests pass.
20344         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
20345         type name, also skip string only nodes when decoding a structure.
20346         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
20347         types too.
20348         (soap-encode-body): Grab the header value from the param table.
20350         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
20351         New function.
20352         (soap-encode-xs-element): Don't encode nil value unless needed.
20354         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
20355         (soap-parse-binding): Parse the message parts required in the body.
20356         (soap-encode-body): Encode only the parts that are declared to be
20357         part of the body.
20359         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
20360         when writing out the tag.
20361         (soap-encode-body): Remove hack that inserts the xmlns in the
20362         element attributes list.
20364         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
20365         (soap-xs-parse-attribute): Default slot is set from the XML
20366         "fixed" attribute.
20367         (soap-encode-xs-complex-type-attributes): Encode any attributes
20368         that have a default value.  Also, don't put the xsi:nil attribute
20369         when the complex type has no content anyway.
20371         * lisp/net/soap-client.el (soap-well-known-xmlns):
20372         Add the xml namespace.
20373         (soap-local-xmlns): Start with the xml namespace.
20374         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
20375         (soap-make-xs-basic-types): More xsd types added.
20376         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
20377         Handle "language", "time", "date", "nonNegativeInteger".
20378         (soap-resolve-references-for-xs-element): Don't signal an error if
20379         the element does not have a type.
20380         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
20381         added stum for xsd:list.
20382         (soap-xs-add-union): Call soap-l2fq on all union members.
20383         (soap-xs-add-extension): Call soap-l2fq on the base member.
20384         (soap-resolve-references-for-xs-simple-type): Don't signal an
20385         error if the simple type has no base.
20386         (soap-resolve-references-for-xs-simple-type): Bugfix, call
20387         soap-wsdl-get on each type of the base.
20389         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
20390         Referenced type can be eiher a simple type or a basic type.
20391         (soap-xs-add-restriction)
20392         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
20393         (soap-make-xs-basic-types)
20394         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
20395         Add support for more XMLSchema basic types.
20396         (soap-current-file, soap-xmlschema-imports): New defvars.
20397         (soap-parse-schema): Add locations from xsd:import tags to
20398         `soap-xmlschema-imports'.
20399         (soap-wsdl): Make destructor private.
20400         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
20401         (soap-wsdl-add-alias): Check if we try to replace aliases.
20402         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
20403         (soap-fetch-xml): New defuns.
20404         (soap-load-wsdl): Update to load the WSDL from either a file or
20405         an url.
20406         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
20407         (soap-parse-wsdl): Process wsdl:import tags and imports from
20408         `soap-xmlschema-imports'.
20409         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
20410         symbol-name.
20411         (soap-l2fq): Make the name part always a string.
20412         (soap-name-p): New defun, used for name tests.
20414         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
20415         Supply sample values for choice types with a special tag.
20416         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
20417         Handle anonymous elements correctly.
20418         (soap-encode-value): Accept nodes that have no namespace tag.
20420         * lisp/net/soap-client.el (soap-invoke): Encode the string for
20421         `url-request-data' as UTF-8.  Fixes issue 16.
20423 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
20425         Update the new icon
20427         Move the E slightly to the right in the circle.
20429         * etc/images/icons/hicolor/128x128/apps/emacs.png:
20430         * etc/images/icons/hicolor/16x16/apps/emacs.png:
20431         * etc/images/icons/hicolor/24x24/apps/emacs.png:
20432         * etc/images/icons/hicolor/32x32/apps/emacs.png:
20433         * etc/images/icons/hicolor/48x48/apps/emacs.png:
20434         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
20435         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
20436         * nt/icons/emacs.ico: New icom update.
20438 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
20440         Avoid missing inline functions from lisp.h in TAGS
20442         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
20443         need to end each invocation with a semi-colon.
20444         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
20445         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
20446         inline functions defined immediately after each invocation, and
20447         also avoid tagging every invocation of these macros.
20449 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
20451         A better fix for bug#21739
20453         * src/buffer.c (set_update_modelines_for_buf): New function.
20454         (Fkill_buffer): Use it to set the global variable
20455         update_mode_lines if the killed buffer was displayed in some
20456         window.  Don't set windows_or_buffers_changed.  This is a better
20457         fix for bug#21739 than the previous fix, since it will cause only
20458         redisplay of mode lines, not of entire windows, but will still
20459         catch attention of x_consider_frame_title in xdisp.c, which
20460         redraws the frame title.
20462 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
20464         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
20465         tar.bz2 and tar.xz archives.
20467 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
20469         Fix infloop in redisplay introduced by a recent change
20471         * src/xdisp.c (redisplay_internal): Avoid inflooping when
20472         redisplaying the selected window sets the selected frame's
20473         redisplay flag.  (Bug#21745)
20475 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
20477         * lisp/emacs-lisp/thunk.el: Better documentation.
20479 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
20481         Replace the old icon for Windows and Mac OSX
20483         * nt/icons/emacs.ico:
20484         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
20485         Use the new icons.
20487 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
20489         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
20490         `load-path' should contain only directory names.
20492 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
20494         New library thunk.el
20496         thunk.el is extracted from stream.el in ELPA, with additional tests.
20498         * lisp/emacs-lisp/thunk.el: New file.
20499         * test/automated/thunk-tests.el: New file.
20500         * etc/NEWS: Add information about thunk.el
20502 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
20504         Fix bug#21669
20506         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
20507         calling low-level functions.
20509         * test/automated/file-notify-tests.el (file-notify--test-timeout):
20510         Decrase to 6 seconds for remote directories.
20511         (file-notify-test02-events): Expect different number of
20512         `attribute-changed' events for the local and remote cases.  Apply
20513         short delays between the operations, in order to receive all
20514         events in the remote case.  Combine `attribute-change' tests.
20515         (Bug#21669)
20517 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
20519         Decode the HTML source when displaying it in EWW
20521         * lisp/net/eww.el (eww-view-source): Decode the HTML source
20522         according to its headers.
20524 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
20526         New default icon
20528         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
20529         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
20530         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
20531         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
20532         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
20533         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
20534         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
20535         Move the old logo files to emacs23.*.
20536         * etc/images/icons/hicolor/128x128/apps/emacs.png:
20537         * etc/images/icons/hicolor/16x16/apps/emacs.png:
20538         * etc/images/icons/hicolor/24x24/apps/emacs.png:
20539         * etc/images/icons/hicolor/32x32/apps/emacs.png:
20540         * etc/images/icons/hicolor/48x48/apps/emacs.png:
20541         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
20542         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
20543         New files.
20544         * etc/images/icons/README: Update the copyright information.
20546 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
20548         Fix redisplay of frame title when current buffer is killed
20550         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
20551         non-zero value, to redisplay more than just the affected windows.
20552         (Bug#21739)
20554 2015-10-23  Anders Lindgren  <andlind@gmail.com>
20556         NextStep maximization and NSTRACE rewrite
20558         Full-height, full-width, and maximized windows now cover the
20559         entire screen (except the menu bar), including the part where the
20560         system dock is placed.  The system zoom animation is no longer
20561         used.
20563         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
20564         original size.
20566         * src/nsterm.m (ns_menu_bar_height): New function, return height of
20567         the menu bar, or 0 when it's hidden.
20568         (constrain_frame_rect): New function for constraining a frame.
20569         (ns_constrain_all_frames): Set frame size explicitly rather than
20570         relying on the system doing it for us by writing back the current
20571         frame size.
20572         (windowWillUseStandardFrame): Register non-maximized width or
20573         height as new user size.  When entering full width or height,
20574         the other size component is taken from the user size.
20575         (fullscreenState): New method for accessing the fullscreen state.
20576         (constrainFrameRect): Restrict frame to be placed under the menu bar,
20577         if present.  The old version, sometimes, restricted the height of a
20578         frame to the screen, this version never does this.
20579         (zoom): Perform zoom by setting the frame to the full size of the
20580         screen (minus the menu bar).  The default system function, with the
20581         zoom animation, is no longer used, as the final frame size doesn't
20582         cover the entire screen.
20584         Rework how to constrain resizing to the character grid.  The old
20585         system used "resizeIncrements" in NSWindows.  However, once a frame
20586         was resized so that it was not aligned to the text grid, it
20587         remained unaligned even after a resize.  In addition, it conflicted
20588         when resizing a fullheight window.
20590         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
20591         unless when pixelwise frame resizing is enabled.
20592         (updateFrameSize, initFrameFromEmacs)
20593         (toggleFullScreen, handleFS): Don't set resizeIncrements.
20595         Redesign the NS trace system.  The call structure is represented
20596         using indentations and vertical lines.  The NSTRACE macro accepts
20597         printf-style arguments.  New macros for printing various
20598         information.
20600         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
20601         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
20602         block (typically a function), accept printf-style arguments.
20603         (NSTRACE_MSG): Macro for extra information, accepts
20604         printf-style arguments.
20605         (NSTRACE_what): Macros for printing various types.
20606         (NSTRACE_FMT_what): Macro with printf format string snippets.
20607         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
20608         corresponds to NSTRACE_FMT_what.
20609         (NSTRACE_RETURN): Macro to print return value, accept
20610         printf-style arguments.
20611         (NSTRACE_RETURN_what): Macros to print return value for
20612         various types.
20614         * src/nsterm.m: Remove old NSTRACE macro
20615         * src/nsterm.m (nstrace_num): Trace counter.
20616         (nstrace_depth): Current call depth.
20617         (nstrace_leave): NSTRACE support function, called when the
20618         local variable "nstrace_enabled" goes out of scope using the
20619         "cleanup" extension.
20620         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
20621         (constrain_frame_rect, ns_constrain_all_frames)
20622         (ns_update_auto_hide_menu_bar, ns_update_begin)
20623         (ns_update_window_begin, update_window_end, ns_update_end)
20624         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
20625         (ns_frame_rehighlight, x_make_frame_visible)
20626         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
20627         (x_destroy_window, x_set_offset, x_set_window_size)
20628         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
20629         (ns_defined_color, frame_set_mouse_pixel_position)
20630         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
20631         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
20632         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
20633         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
20634         (dumpcursor, ns_draw_vertical_window_border)
20635         (ns_draw_window_divider, ns_draw_relief)
20636         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
20637         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
20638         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
20639         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
20640         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
20641         (ns_create_terminal, ns_term_init, sendEvent)
20642         (applicationDidFinishLaunching, applicationDidBecomeActive)
20643         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
20644         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
20645         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
20646         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
20647         (mouse_autoselect_window, in_window, mouseDragged)
20648         (rightMouseDragged, otherMouseDragged, windowShouldClose)
20649         (updateFrameSize, windowWillResize, windowDidResize)
20650         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
20651         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
20652         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
20653         (windowDidEnterFullScreen, windowWillExitFullScreen)
20654         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
20655         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
20656         (draggingEntered, performDragOperation, validRequestorForSendType)
20657         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
20658         (EmacsScroller_initFrame, EmacsScroller_setFrame)
20659         (EmacsScroller_dealloc, condemn, reprieve, judge)
20660         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
20661         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
20663         * src/nsfns.m: Remove old NSTRACE macro
20664         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
20665         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
20666         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
20668         * src/nsimage.m: Remove old NSTRACE macro
20669         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
20670         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
20672         * src/nsmenu.m: Remove old NSTRACE macro
20673         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
20674         Use new trace system.
20676 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
20678         No need to use eval-and-compile
20680         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
20681         autoload epg functions.
20683 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
20685         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
20687         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
20688         epg-context-set-passphrase-callback, epg-decrypt-string, and
20689         epg-encrypt-string; require epg when compiling for the setf-method
20690         for epg-context-armor. (bug#21724)
20692 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
20694         Include file cleanup for w32 files in src directory
20696         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
20697         fontset.h, blockinput.h.
20698         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
20699         charset.h, fontset.h.
20700         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
20701         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
20702         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
20703         in an ifdef-ed away block.
20704         Include fcntl.h for CYGWIN.
20705         (set_frame_param): Remove unused function.
20706         * src/w32select.c: Don't include charset.h and composite.h.
20707         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
20708         due to pointer signedness mismatches.
20709         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
20710         due to pointer signedness mismatches.
20711         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
20712         process.h, dispextern.h.
20713         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
20714         (Fw32_application_type): Avoid compiler warnings due to pointer
20715         signedness mismatches.
20716         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
20717         character.h, charset.h, dispextern.h.
20718         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
20719         to pointer signedness mismatches.
20720         * src/w32inevt.c: Don't include dispextern.h, window.h,
20721         termhooks.h, w32heap.h.
20722         * src/w32font.c: Don't include dispextern.h, character.h,
20723         charset.h, fontset.h, font.h.
20724         (intern_font_name, add_font_entity_to_list)
20725         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
20726         (list_all_matching_fonts): Avoid compiler warnings due to pointer
20727         signedness mismatches.
20728         * src/w32fns.c: Don't include character.h, intervals.h,
20729         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
20730         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
20731         (w32_color_map_lookup, add_system_logical_colors_to_map)
20732         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
20733         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
20734         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
20735         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
20736         compiler warnings, mainly due to pointer signedness mismatches.
20737         (unwind_create_frame_1): Remove unused function.
20738         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
20739         window.h, termhooks.h, dispextern.h.
20740         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
20741         signedness mismatch.
20742         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
20743         w32heap.h.
20745 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
20747         Improve doc-view wrt. auto-revert-mode
20749         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
20750         is corrupted (bug#21729).
20751         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
20753 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
20755         Describe dired-do-compress-to in the manual
20757         * etc/NEWS: Update.
20759         * lisp/dired-aux.el: Fix typo.
20761         * doc/emacs/dired.texi: Add entry.
20763 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
20765         Further fix for proper locale handling in tramp-gvfs.el
20767         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
20768         Just suppress LC_MESSAGES locale category settings.
20770 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
20772         New lispref section “Security Considerations”
20774         This attempts to document some of the issues recently discussed
20775         on emacs-devel, and to indicate other such issues.  The section
20776         could be a lot longer.
20777         * doc/lispref/os.texi (Security Considerations):
20778         New node.
20779         * doc/lispref/elisp.texi (Top):
20780         * doc/lispref/processes.texi (Shell Arguments):
20781         * lisp/subr.el (shell-quote-argument):
20782         * src/callproc.c (syms_of_callproc):
20783         Reference it.
20785 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
20787         Merge from gnulib
20789         This incorporates:
20790         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
20791         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
20792         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
20793         Copy from gnulib.
20795 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
20797         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
20798         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
20800 2015-10-21  Ken Brown  <kbrown@cornell.edu>
20802         Further include-file cleanup
20804         * src/sheap.c: Include stdlib.h.
20805         * src/unexcw.c: Include string.h.
20807 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
20809         Fix logic in 'server-kill-emacs-query-function'
20811         * lisp/server.el (server-kill-emacs-query-function): Correct the
20812         logic that controls whether the user is asked for confirmation.
20813         (Bug#21723)
20815 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
20817         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
20818         (isearch--lax-regexp-function-p): New function.
20820 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
20822         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
20823         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
20824         around `isearch-regexp-function'.
20826 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
20828         * lisp/isearch.el: Rename word search to regexp-function search.
20829         `isearch-word' went well beyond its original purpose, and the name
20830         no longer makes sense.  It is now called
20831         `isearch-regexp-function', and its value should always be a function
20832         that converts a string to a regexp (though setting it to t is still
20833         supported for now).
20834         (isearch-word): Make obsolete.
20835         (isearch-regexp-function): New variable.
20836         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
20837         (with-isearch-suspended, isearch-toggle-regexp)
20838         (isearch-toggle-word, isearch-toggle-symbol)
20839         (isearch-toggle-character-fold, isearch-query-replace)
20840         (isearch-occur, isearch-highlight-regexp)
20841         (isearch-search-and-update, isearch-message-prefix)
20842         (isearch-search-fun-default, isearch-search)
20843         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
20844         Use it.
20845         (isearch-lazy-highlight-regexp-function): New var.
20846         (isearch-lazy-highlight-word): Make obsolete.
20847         (isearch--describe-regexp-mode): New function.
20848         (isearch--describe-word-mode): Make obsolete.
20850         * lisp/info.el (Info-isearch-search):
20851         * lisp/replace.el (replace-search, replace-highlight):
20852         * lisp/obsolete/longlines.el (longlines-search-function):
20853         * lisp/hexl.el (hexl-isearch-search-function):
20854         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
20855         Use the new var.
20857 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
20859         Add dired-do-compress-to command bound to "c"
20861         * lisp/dired-aux.el (dired-shell-command): Use the caller's
20862           `default-directory', return the result of `process-file'.
20863         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
20864         used by default.
20865         (dired-compress-files-alist): New defvar.
20866         (dired-do-compress-to): New command.
20868         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
20869         (dired-do-compress-to): Add an autoload entry.
20871         * etc/NEWS: Add two entries.
20873 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
20875         Make RefTeX work with LaTeX subfiles package
20877         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
20878         document class argument as master file for referencing purposes.
20880 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
20882         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
20884 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
20886         Include-file cleanup for src directory
20888         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
20889         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
20890         but does not include it directly.  As a general rule, a source
20891         file should include foo.h if it needs the interfaces that foo.h
20892         defines.
20893         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
20894         systime.h.
20895         * src/atimer.c: Don’t include blockinput.h.
20896         * src/buffer.c: Include coding.h, systime.h.  Don’t include
20897         keyboard.h, coding.h.
20898         * src/callint.c: Don’t include commands.h, keymap.h.
20899         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
20900         systty.h, termhooks.h.
20901         * src/casetab.c: Don’t include character.h.
20902         * src/category.c: Don’t include charset.h, keymap.h.
20903         * src/ccl.h: Don’t include character.h.
20904         * src/character.c: Don’t include charset.h.
20905         * src/charset.c: Don’t include disptab.h.
20906         * src/chartab.c: Don’t include ccl.h.
20907         * src/cm.c: Don’t include frame.h, termhooks.h.
20908         * src/cmds.c: Don’t include window.h, dispextern.h.
20909         * src/coding.c: Don’t include window.h, frame.h.
20910         * src/composite.c: Include composite.h.  Don’t include window.h,
20911         font.h.
20912         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
20913         * src/dbusbind.c: Don’t include frame.h.
20914         * src/decompress.c: Don’t include character.h.
20915         * src/dired.c: Don’t include character.h, commands.h, charset.h.
20916         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
20917         process.h, timespec.h.  Include systime.h.
20918         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
20919         * src/editfns.c: Include composite.h.  Don’t include frame.h.
20920         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
20921         commands.h, systty.h..
20922         * src/fileio.c: Don’t include intervals.h, dispextern.h.
20923         Include composite.h.
20924         * src/filelock.c: Don’t include character.h, systime.h.
20925         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
20926         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
20927         * src/font.c: Include termhooks.h.
20928         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
20929         struct composition_it, struct face, struct glyph_string.
20930         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
20931         intervals.h, window.h, termhooks.h.
20932         * src/frame.c: Don’t include character.h, commands.h, font.h.
20933         * src/frame.h: Don’t include dispextern.h.
20934         * src/fringe.c: Don’t include character.h.
20935         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
20936         character.h, charset.h, fontset.h.
20937         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
20938         fontset.h.
20939         * src/ftxfont.c: Don’t include dispextern.h, character.h,
20940         charset.h, fontset.h.
20941         * src/gfilenotify.c: Don’t include frame.h, process.h.
20942         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
20943         Don’t include syssignal.h, buffer.h, charset.h, font.h.
20944         * src/gtkutil.h: Don’t include frame.h.
20945         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
20946         Don’t include character.h.
20947         * src/indent.c: Don’t include keyboard.h, termchar.h.
20948         * src/inotify.c: Don’t include character.h, frame.h.
20949         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
20950         * src/intervals.c: Don’t include character.h, keyboard.h.
20951         * src/intervals.h: Don’t include dispextern.h, composite.h.
20952         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
20953         Include coding.h.
20954         * src/keyboard.h: Don’t incldue systime.h.
20955         * src/keymap.c: Don’t include charset.h, frame.h.
20956         * src/lread.c: Include dispextern.h and systime.h.
20957         Don’t include frame.h.  Include systime.h.
20958         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
20959         * src/menu.c: Include character.h, coding.h.  Don’t include
20960         dispextern.h.
20961         * src/menu.h: Don’t include systime.h.
20962         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
20963         intervals.h, termhooks.h.
20964         * src/print.c: Include coding.h.  Don’t include keyboard.h,
20965         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
20966         Add forward decl of struct terminal.
20967         * src/process.c: Don’t include termhooks.h, commands.h,
20968         dispextern.h, composite.h.
20969         * src/region-cache.c: Don’t include character.h.
20970         * src/scroll.c: Don’t include keyboard.h, window.h.
20971         * src/search.c: Don’t include category.h, commands.h.
20972         * src/sound.c: Don’t include dispextern.h.
20973         * src/syntax.c: Don’t include command.h, keymap.h.
20974         * src/sysdep.c: Don’t include window.h, dispextern.h.
20975         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
20976         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
20977         * src/terminal.c: Include character.h.
20978         Don’t include charset.h, coding.h.
20979         * src/textprop.c: Don’t include character.h.
20980         * src/undo.c: Don’t include character.h, commands.h, window.h.
20981         * src/unexsol.c: Don’t include character.h, charset.h.
20982         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
20983         window.h, dispextern.h, blockinput.h, character.h, font.h.
20984         * src/widgetprv.h: Don’t include widget.h.
20985         * src/window.c: Don’t include character.h, menu.h, intervals.h.
20986         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
20987         macros.h, process.h.
20988         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
20989         intervals.h.
20990         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
20991         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
20992         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
20993         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
20994         * src/xgselect.c: Don’t include timespec.h, frame.h.
20995         Include systime.h.
20996         * src/xgselect.h: Don’t include time.h.
20997         Use a forward decl to struct timespec instead.
20998         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
20999         dispextern.h.  Include systime.h.
21000         * src/xml.c: Don’t include character.h.
21001         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
21002         * src/xselect.c: Don’t include dispextern.h, character.h,
21003         buffer.h, process.h.
21004         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
21005         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
21006         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
21008 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
21010         (/ N) now returns the reciprocal of N
21012         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
21013         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
21014         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
21015         (color-xyz-to-srgb, color-xyz-to-lab):
21016         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
21017         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
21018         (shr-color-hsl-to-rgb-fractions):
21019         Exploit the change to simplify the code a bit.
21020         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
21021         Don’t complain about single-argument calls to ‘/’.
21022         * src/data.c (arith_driver, float_arith_driver):
21023         Implement the change.
21025 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
21027         Call vc-dir-refresh after stash operations
21029         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
21030         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
21032         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
21033         since it can be abbreviated (as returned by vc-find-root).
21035 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
21037         * lisp/vc/vc-svn.el:
21038         * lisp/vc/vc-mtn.el:
21039         * lisp/vc/vc-hg.el:
21040         * lisp/vc/vc-cvs.el:
21041         * lisp/vc/vc-git.el:
21042         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
21043         Its usages have been replaced with vc-run-delayed.
21045 2015-10-20  Dima Kogan  <dima@secretsauce.net>
21047         Fix memory leak in fontset handling
21049         * src/font.c (copy_font_spec): Make a deep copy of the input
21050         argument FONT.  (Bug#21651)
21052 2015-10-20  Michael Sperber  <mike@xemacs.org>
21054         * lisp/gnus/mailcap.el (mailcap-mime-data):
21055         Conditonalize `doc-view-mode', which does not exist on XEmacs.
21057 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
21059         Update the way directories are compressed
21061         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
21062         for *.tar.gz decompression to use a pipe.
21063         Add an entry for the default directory compression (to *.tar.g).
21064         (dired-compress-file): Update.
21066         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
21068 2015-10-20  Michael Sperber  <mike@xemacs.org>
21070         Unbreak `group' option for `mail-sources'
21072         * lisp/gnus/nnml.el (nnml-retrieve-groups, nnml-request-scan):
21073         * lisp/gnus/nnmail.el (nnmail-get-new-mail-per-group)
21074         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
21076 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
21078         New function seq-position
21080         * lisp/emacs-lisp/seq.el (seq-position): New function.
21081         * test/automated/seq-tests.el: New tests for seq-position.
21082         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
21084 2015-10-19  Ken Brown  <kbrown@cornell.edu>
21086         Enable --with-wide-int build on 32-bit Cygwin
21088         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
21089         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
21091 2015-10-19  Glenn Morris  <rgm@gnu.org>
21093         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
21095 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
21097         Resurrect image loading under auto-image-file-mode
21099         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
21100         'openp' specially.  This special case was lost in the changes on
21101         2015-08-18.  (Bug#21685)
21103 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
21105         Fix return value of 'set-file-extended-attributes'
21107         * lisp/files.el (set-file-extended-attributes): Return non-nil
21108         when setting either ACLs or SELinux context succeeds.  Document
21109         the return value.  (Bug#21699)
21111         * doc/lispref/files.texi (Changing Files): Document the return
21112         value of set-file-extended-attributes.
21114 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
21116         Improve documentation of functions that change files
21118         * doc/lispref/files.texi (Changing Files): Document that these
21119         functions signal an error on failure.
21121 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
21123         Fix doc string of 'shell-quote-argument'
21125         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
21127 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
21129         Some minor Tramp changes
21131         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
21133         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
21134         Expand `tramp-auto-save-directory'.
21136 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
21138         Minor edits in Tramp
21140         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
21141         Declare it.
21143         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
21144         Remove declaration.
21146 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
21148         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
21150 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
21152         Avoid crashes when redisplayng a window changes faces or fonts
21154         * src/xdisp.c (redisplay_internal): If redisplaying the selected
21155         window or one of the frames turns on the frame's 'redisplay' flag,
21156         redisplay again.  (Bug#21428)
21158         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
21160 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
21162         Solve timimg issues in file-notify-tests.el
21164         * test/automated/file-notify-tests.el (file-notify-test02-events):
21165         Rectify `attribute-change' tests.  There are timing issues with
21166         gfilenotify.  (Bug#21669)
21168 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
21170         Fix quoting of data within htmlfontify doc
21172         * doc/misc/htmlfontify.texi (Data Structures, Customization):
21173         Fix quoting of data structures.  A Lisp quote is needed only
21174         when data appears within Lisp code.
21176 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
21178         * lisp/emacs-lisp/package.el: Reload archive-contents if
21179         priorities change.
21180         (package--old-archive-priorities): New variable.
21181         (package-read-all-archive-contents, package-menu--refresh): Use it
21182         to decide when the `package-archive-contents' needs to be read
21183         again.
21185 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
21187         Make src headers idempotent and standalone
21189         Redo src/*.h so that each include file is idempotent (that is, can
21190         be included multiple times with the latter inclusions having no
21191         effect) and standalone (that is, can be included by itself,
21192         with no include file other than config.h needed as a prerequisite).
21193         This is standard practice in GNU programs nowadays.
21194         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
21195         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
21196         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
21197         * src/regex.h [emacs]:
21198         * src/syntax.h, src/systty.h, src/termhooks.h:
21199         Include lisp.h, for Lisp_Object.
21200         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
21201         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
21202         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
21203         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
21204         * src/termopts.h, src/tparam.h, src/unexec.h:
21205         Protect against multiple inclusion.
21206         * src/buffer.h: Include character.h, for STRING_CHAR.
21207         * src/emacsgtkfixed.h (struct frame):
21208         * src/fontset.h (struct face):
21209         * src/region-cache.h (struct buffer):
21210         * src/termhooks.h (struct glyph):
21211         * src/xsettings.h (struct x_display_info):
21212         Add possibly-forward decl.
21213         * src/syntax.h: Include buffer.h, for BVAR.
21214         * src/sysselect.h: Include lisp.h, for eassume.
21215         * src/termchar.h: Include <stdio.h>, for FILE.
21216         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
21217         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
21219 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
21221         Handle symlink targets containing spaces in tramp-gvfs.el
21223         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
21224         Handle symlink targets containing spaces.
21226 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
21228         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
21230         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
21231         same reason that `load-path' shouldn't.  Setting it via the customize
21232         interface is a trap for the user.
21234         Installed themes commonly add themselves to this variable, which means
21235         its value is not fit for being saved (it will permanently remember dirs
21236         that don't exist anymore).
21238         This is aggravated by the fact that Emacs always applies the `user'
21239         theme on top of any theme that's loaded, since this will apply the old
21240         variable value and remove any new directories that had been recently
21241         added by themes themselves.
21243         Not to mention, we already have `custom-theme-directory', which is safe
21244         to customize.
21246 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
21248         * lisp/mpc.el: Rename the new toggling commands.
21249         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
21250         (mpc-toggle-shuffle): Add "-toggle" in the name.
21252 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
21254         Improve the doc string of 'completion-boundaries'
21256         * lisp/minibuffer.el (completion-boundaries): Rename the argument
21257         TABLE to COLLECTION, for consistency with other high-level
21258         completion functions.  Document how COLLECTION is called if it
21259         is a function.  (Bug#21644)
21261 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
21263         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
21265 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
21267         Make dired-do-compress work for *.zip files
21269         * lisp/dired-aux.el (dired-check-process): Transform the top-level
21270           comment into a docstring.
21271         (dired-shell-command): New command.  This mirrors
21272         `dired-check-process', but is more user-friendly for passing
21273         arguments.
21274         (dired-compress-file-suffixes): Allow to specify the command switches
21275         along with input (%i) and output (%o) inside the PROGRAM part.
21276         Add an entry for *.zip files, and update the entry for *.tar.gz files
21277         to the new style.  Update the docstring.
21278         (dired-compress-file): When PROGRAM matches %i or %o, use the new
21279         logic.
21280         (dired-update-file-line): Avoid an error when at end of buffer.
21282         Fixes bug#21637.
21284 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
21286         Minor improvement in documentation of internals
21288         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
21290 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
21292         Improve documentation of COLLECTION in completion functions
21294         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
21295         cross-reference to "Programmed Completion".
21297         * src/minibuf.c (Fcompleting_read): Improve the doc string.
21298         (Bug#21644)
21300 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
21302         Add more release info to etc/HISTORY
21304         * etc/HISTORY: Add more release information about 19.x and 20.x
21305         versions.
21307 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
21309         New file etc/HISTORY
21311         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
21312         * etc/HISTORY: New file.
21313         * etc/NEWS: Mention it.
21315 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
21317         js-mode: Don't misindent generator methods
21319         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
21320         generator methods from multiplication operator
21321         (https://github.com/mooz/js2-mode/issues/275).
21323 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
21325         Fix animation timeout delay calculation
21327         * lisp/image.el (image-animate-timeout):
21328         Don’t assume speed is floating-point.
21330 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
21332         Add commands for controlling MPD modes
21334         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
21335         (mpc-cmd-single): New functions.
21336         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
21337         (mpc-mode-menu): Add new commands as menu items.
21339 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
21341         Refer to `(elisp)Basic Completion' in completing-read docstring
21343         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
21344         Completion' in the docstring (bug#21644).
21346 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
21348         * lisp/mpc.el (mpc-format): Always push form to pred
21350 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
21352         Spelling fixes
21354         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
21355         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
21356         Fix misspelling of nonexistent file name.
21358 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
21360         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
21362 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
21364         Some editing fixes in Tramp
21366         * lisp/net/tramp-gvfs.el:
21367         * doc/misc/tramp.texi: "customer option" -> "custom option".
21369         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
21371 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
21373         Use proper localization in tramp-gvfs.el
21375         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
21376         Suppress localized settings in order to proper parse gfvs output.
21378 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
21380         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
21381         Quote argument in proper order.  (Bug#21562)
21383 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
21385         Fix typos in docstrings
21387         * lisp/emacs-lisp/map.el:
21388         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
21389           macros.
21391 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
21393         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
21395 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
21397         Make dired-jump work with tar-subfile-mode
21399         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
21400           emitting an error, switch to `tar-superior-buffer'.
21402 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
21404         * .gitignore: Add build-aux/ar-lib.
21406 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
21408         Better docstrings in seq.el and map.el
21410         * lisp/emacs-lisp/map.el:
21411         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
21413 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
21415         Merge from gnulib
21417         This incorporates:
21418         2015-10-13 binary-io, u64, unistd: port to strict C
21419         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
21420         2015-09-25 c-ctype: port better to z/OS EBCDIC
21421         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
21422         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
21423         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
21424         Copy from gnulib.
21426 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
21428         Take XPNTR private
21430         * src/alloc.c (PURE_POINTER_P): Remove.
21431         All uses replaced with PURE_P.
21432         (XPNTR_OR_SYMBOL_OFFSET): New function.
21433         (XPNTR): Move here from lisp.h.
21434         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
21435         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
21436         Remove unnecessary cast.
21437         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
21438         to avoid an unnecessary runtime test for symbols.
21439         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
21440         Only alloc.c needs XPNTR now.
21442 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
21444         Add MPC play/pause command
21446         * lisp/mpc.el (mpc-toggle-play): New command.
21447         (mpc-mode-map): Bind it to "s".
21448         (mpc-mode-menu): Add corresponding menu item.
21450 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
21452         Add bindings and menu items for prev and next tracks
21454         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
21455         "<" to mpc-prev.
21456         (mpc-mode-menu): Add corresponding menu items
21458 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
21460         Reduce face-related consing during frame creation.
21462         * lisp/faces.el (face--attributes-unspecified): Compute the "unspecified"
21463         attribute list once.
21464         (face-spec-reset-face): Use it instead of building the list.
21466 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
21468         Do process ConfigureNotify events indicating size changes.
21470         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
21471         events don't have the same size, process each one.
21473 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
21475         Derive mpc-mode from special-mode
21477         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
21478         (mpc-mode): Derive from special mode.
21479         (mpc-songs-mode-map): Don't set parent keymap.
21481 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
21483         Fix error messages for when covers are not found.
21485         The last change to mpc-format let the binding to file call
21486         mpc-file-local-copy with nil argument.  Instead, employ if-let here
21487         so nil bindings don't result in needless computation and errors.
21488         * lisp/mpc.el: Require 'subr-x at compile time.
21489         * lisp/mpc.el (mpc-format): Use if-let.
21491 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
21493         Make dired-do-compress work for *.tar.gz files
21495         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
21496           "tar -zxvf" to *.tar.gz; update docstring.
21498         (dired-compress-file): Allow to specify switches after the command in
21499         `dired-compress-file-suffixes'.
21501 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
21503         Make dired-do-compress work for directories
21505         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
21506           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
21507         Also convert the top comment into a docstring.
21509 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
21511         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
21513         ... since it might come straight from the memoizing table.
21515 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
21517         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
21519 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
21521         Use special-mode in eww list modes
21523         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
21524         (eww-buffers-mode): Derive from special-mode and remove redundant
21525         setting of buffer-read-only.
21526         (eww-mode-map): Remove redundant keymap parent setting.
21527         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
21528         Remove redundant keymap suppressions and mappings.
21530 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
21532         Allow setting frame pixel sizes from frame parameters (Bug#21415)
21534         Also fix some misfeatures in frame (re-)sizing code, add more
21535         debugging information and remove some dead code.
21537         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
21538         parameter names when setting `frame-size-history'.
21539         (frame--size-history): New function.
21541         * src/frame.c (frame_inhibit_resize): If frame has not been made
21542         yet, return t if inhibit_horizontal_resize or
21543         inhibit_vertical_resize bit have been set.
21544         (adjust_frame_size): Simplify.
21545         (make_frame): Initialize inhibit_horizontal_resize,
21546         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
21547         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
21548         inhibit_vertical_resize slots.
21549         (x_set_frame_parameters): Handle `text-pixels' specification for
21550         width and height parameters.  Don't consider new_height or
21551         new_width changes.  Call adjust_frame_size instead of
21552         Fset_frame_size.
21553         (x_figure_window_size): Two new arguments x_width and y_width
21554         returning frame's figures width and height.  Calculate tool bar
21555         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
21556         Handle `text-pixels' specification for width and height
21557         parameters.
21558         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
21559         (Qx_set_window_size_1, Qx_set_window_size_2)
21560         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
21561         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
21562         (Qfree_frame_menubar_2): New symbols.
21563         * src/frame.h (structure frame): New booleans
21564         tool_bar_redisplayed, tool_bar_resized,
21565         inhibit_horizontal_resize, inhibit_vertical_resize.
21566         (x_figure_window_size): Update external declaration.
21567         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
21568         calling gtk_window_resize.
21569         (update_frame_tool_bar): Make inhibiting of frame resizing more
21570         discriminative.  Set tool_bar_resized bit.
21571         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
21572         resizing more discriminative.  Call adjust_frame_size instead of
21573         x_set_window_size.
21574         (Fx_create_frame): Handle x_width and x_height if
21575         set by x_figure_window_size.
21576         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
21577         subtract 3 from tool bar height.
21578         (x_set_window_size): Add frame_size_history_add call.
21579         (x_new_font): Call adjust_frame_size instead of
21580         x_set_window_size.
21581         * src/w32fns.c (x_change_tool_bar_height): Reset
21582         tool_bar_redisplayed and tool_bar_resized bits when adding tool
21583         bar.  Make inhibiting of frame resizing more discriminative.
21584         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
21585         (Fx_create_frame): Handle x_width and x_height if set by
21586         x_figure_window_size.  Set size hints before adjusting frame size.
21587         (x_create_tip_frame): Adjust x_figure_window_size call.
21588         * src/w32term.c (x_set_window_size): Add frame_size_history_add
21589         call.
21590         * src/widget.c (set_frame_size): Remove dead code.  Add
21591         frame_size_history_add call.  When frame_resize_pixelwise is t
21592         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
21593         pixel_width and pixel_height.
21594         (update_various_frame_slots): Remove dead code.
21595         (EmacsFrameResize): Add more information in
21596         frame_size_history_add call.
21597         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
21598         is not set.
21599         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
21600         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
21601         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
21602         tool_bar_resized bits when adding tool bar.  Make inhibiting of
21603         frame resizing more discriminative.
21604         (Fx_create_frame): Handle x_width and x_height if set by
21605         x_figure_window_size.  Set size hints before adjusting frame size.
21606         (x_create_tip_frame): Adjust x_figure_window_size call.
21607         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
21608         (set_frame_menubar): On Lucid never add core-border-width to
21609         avoid that adding XtNinternalBorderWidth adds it again.
21610         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
21611         * src/xterm.c (x_new_font): In non-toolkit case handle size
21612         change of menu bar.
21613         (x_set_window_size_1): Fix calls to frame_size_history_add.
21614         (x_wm_set_size_hint): Remove dead code.  Set
21615         size_hints.min_width and size_hints.min_height to base_width and
21616         base_height.
21618 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
21620         * test/automated/file-notify-tests.el (file-notify--test-timeout):
21621         Add docstring.  Increase to 10 seconds for remote
21622         directories.  (Bug#21669)
21624 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
21626         Unmacroize ebrowse.c and etags.c a bit
21628         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
21629         (streq, filename_eq, set_flag, has_flag): Now inline functions.
21630         (set_flag): First arg is now an address, not an lvalue.
21631         All callers changed.
21632         (filename_eq, set_flag, has_flag):
21633         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
21634         All callers changed.
21635         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
21636         Now inline functions.  Remove asserts that are unnecessary these
21637         days (and in some cases were too-generous anyway).
21639 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
21641         Use highlight for current items
21643         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
21644         Apply highlight face instead of region face.
21646 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
21648         Search for more cover image names in MPC
21650         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
21651         case insensitively
21653 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
21655         Remove or comment out unused variables
21657         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
21658         nontext_cursor, mode_cursor, hand_cursor and count.
21659         (x_change_tool_bar_height): Remove variable old_text_height.
21660         (deliver_wm_chars): Remove variable strip_Alt.
21661         (Fw32_shell_execute): Remove variable document_a.
21662         (Fw32_frame_geometry): Remove variable fullboth.
21663         * src/w32term.c (w32_setup_relief_color): Comment out variable
21664         w32_display_info.
21665         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
21666         (w32_read_socket): Comment out variables rows, columns.
21667         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
21669 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
21671         * src/w32proc.c (sys_select): Fix bitwise test.
21673 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
21675         Minor typo corrections in doc strings
21677         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
21678         Doc fixes.
21680 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
21682         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
21684 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
21686         Attempt to avoid crashes in plist-member
21688         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
21689         and a call to XCDR.  (Bug#21655)
21691 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
21693         * lisp/select.el (gui-get-primary-selection): In
21694         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
21696 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
21698         Support RTF in doc-view
21700         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
21702 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
21704         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
21706 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
21708         Replace the usage of an obsolete function in auth-source.el
21710         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
21711         Replace an usage of `epg-context-set-armor' with `setf'.
21713 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
21715         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
21717 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
21719         Have calc-yank recognize numbers in different bases.
21721         * lisp/calc/calc-yank.el (math-number-regexp): New function.
21722         (calc-yank): Use `math-number-regexp' to recognize numbers.
21724 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
21726         Handle an opaque-move X11 window manager operation more efficiently
21728         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
21729         followed by more ConfigureNotify events for the same window, process
21730         only the last one.
21732 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
21734         Fix cursor setting for tip frame; re-enable cursor generation
21736         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
21737         attributes sent when creating the new X window.  Don't skip setting
21738         the pointerColor parameter.
21740 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
21742         Rewrite x_set_mouse_color to sync less
21744         We can track serial numbers of X requests and correlate error events
21745         with the associated requests.  This way we can identify errors for
21746         specific calls without having to use XSync after every one.
21748         * src/xfns.c (enum mouse_cursor): New type.
21749         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
21750         (mouse_cursor_types): New array listing the Lisp variables and default
21751         cursor appearances for each cursor type.
21752         (x_set_mouse_color_handler): New function; checks error event serial
21753         number against submitted requests.
21754         (x_set_mouse_color): Updated to use the new error handler callback,
21755         and to be more table-driven, to simplify repetitious code.
21757 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
21759         Add x_catch_errors_with_handler
21761         * src/xterm.c (struct x_error_message_stack): Add new fields for a
21762         callback function and associated data pointer.
21763         (x_error_catcher): If the callback function is set, call it after
21764         saving the error message string.
21765         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
21766         accepts a callback function and data pointer.
21767         (x_catch_errors): Now a wrapper function.
21768         * src/xterm.h (x_special_error_handler): New typedef.
21769         (x_catch_errors_with_handler): Declare.
21771 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
21773         Introduce x_uncatch_errors_after_check to reduce XSync calls
21775         Both x_had_errors_p and x_check_errors call XSync, so if they're
21776         immediately followed by x_uncatch_errors, its XSync call will be
21777         redundant, resulting in a wasted round trip to the X server.
21779         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
21780         x_uncatch_errors without the XSync call.
21781         (XTmouse_position, x_wm_supports):
21782         * src/xfns.c (x_set_mouse_color):
21783         * src/xmenu.c (Fx_menu_bar_open_internal):
21784         * src/xselect.c (x_own_selection, x_get_foreign_selection):
21785         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
21786         * src/xterm.h (x_uncatch_errors_after_check): Declare.
21788 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
21790         Document the optional prefix to `calc-yank'
21792         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
21793         prefix to `calc-yank'.
21794         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
21795         the Calc buffer are yanked back unchanged.
21797 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
21799         * lisp/calendar/calendar.el: Display buffer before executing body.
21801         In each use of this macro, the modeline is derived from a window width
21802         calculation, which will be wrong if (display-buffer) splits the window
21803         horizontally.
21805 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
21807         Use ‘echo’ safely with ‘\’ or leading ‘-’
21809         POSIX says that ‘echo FOO’ produces implementation-defined output
21810         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
21811         behavior in that case.
21812         * Makefile.in (removenullpaths): Remove.
21813         (epaths-force): Rewrite to avoid the need for ‘echo’.
21814         (install-etc): Be clearer about escaping the shell metacharacters
21815         ‘\’ and ‘$’.
21816         * Makefile.in (install-arch-indep, install-etcdoc):
21817         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
21818         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
21819         * configure.ac, lib-src/rcs2log, make-dist:
21820         * src/Makefile.in (lisp.mk):
21821         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
21822         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
21823         if $foo can contain arbitrary characters.
21824         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
21825         * doc/lispref/two-volume.make (vol1.pdf):
21826         * test/etags/make-src/Makefile (web ftp publish):
21827         Use ‘printf’ rather than ‘echo -e’.
21829 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
21831         Allow numbers with different radixes to be yanked.
21833         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
21834         default base 10.
21836 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
21838         Improve CHECK_IMPURE and PURE_P speedup
21840         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
21842 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
21844         Use events instead of chars to keep track of steps.
21846         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
21847         to keep track of steps.
21849 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
21851         Fix --enable-gcc-warnings problem with older GCC
21853         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
21854         This is for building with --enable-gcc-warnings with
21855         GCC 4.6 through 5.0.
21857 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
21859         Fix vertical-motion in truncated lines that end in a stretch
21861         * src/indent.c (Fvertical_motion): Expect overshoot when point is
21862         beyond window margin and lines are truncated, even if we have a
21863         stretch at point.  (Bug#21468)
21865 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
21867         Avoid link-time errors due to inline functions
21869         * src/emacs.c: Include puresize.h, to avoid link-time errors in
21870         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
21871         inline functions.
21873 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
21875         * src/data.c (Faset): Fix last change.
21877 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
21879         CHECK_IMPURE and PURE_P speedup
21881         * src/intervals.c (create_root_interval):
21882         Do CHECK_IMPURE only for strings; not needed for buffers.
21883         Prefer ! STRINGP to BUFFERP, for a tad more speed.
21884         * src/puresize.h (CHECK_IMPURE, PURE_P):
21885         Now inline functions instead of macros.
21886         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
21887         All callers changed.
21888         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
21889         All callers changed.
21891 2015-10-09  Noah Friedman  <friedman@splode.com>
21893         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
21895 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
21897         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
21899         our after-change-function, rather than re-adding it if it was removed.
21901 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
21903         * lisp/cedet/ede: Silence some compiler warnings
21905         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
21906         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
21907         (ede-apply-object-keymap, ede-reset-all-buffers)
21908         (ede-auto-add-to-target): Use dolist.
21909         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
21910         Use field names rather than initarg names in `oref'.
21911         (ede-load-project-file): Remove unused var `file'.
21912         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
21913         (ede-set): Remove unused var `a'.
21915         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
21916         (ede-project-autoload): Avoid the old-style "name" argument.
21917         (ede-emacs-find-matching-target): Use field names rather than initarg
21918         names in `oref'.
21920         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
21921         (ede-linux-load, ede-project-autoload): Avoid the old-style
21922         "name" argument.
21923         (ede-linux-find-matching-target): Use field names rather than initarg
21924         names in `oref'.
21926 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
21928         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
21930 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
21932         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
21933         indenting too far after ":-".
21935 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
21937         Update case-table and categories of recently added characters
21939         * lisp/international/characters.el: Update information about Latin
21940         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
21941         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
21942         blocks.  (Byug#21654)
21944 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
21946         * src/frame.c (adjust_frame_size): In minibuffer-only windows
21947         don't count minibuffer height twice.  (Bug#21643)
21949 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
21951         Avoid inflooping in font-lock
21953         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
21954         inhibit-field-text-motion around the call to
21955         line-beginning-position, to avoid inflooping.  (Bug#21615)
21957 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
21959         Refactor duplicated code; ensure default is in completions
21961         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
21962         New function.
21963         (reftex-extract-bib-entries): Use it.
21964         (reftex-extract-bib-entries-from-thebibliography): Use it.
21966 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
21968         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
21969         in the example.
21971 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
21973         * lisp/calc/calc.el: Silence byte-compiler warnings.
21974         (calc-scan-for-dels): Use ignore-errors.
21975         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
21976         (calc-read-key-sequence): Remove unused var `prompt2'.
21977         (calc-kill-stack-buffer): Remove unused var `buflist'.
21978         (calc): Remove unused var `oldbuf'.
21979         (calc-refresh): Use inhibit-read-only.
21980         (calc-can-abbrev-vectors): Declare.
21981         (calc-record): Remove unused var `mainbuf'.
21982         (math-sub-bignum): Remove unused var `sum'.
21983         (math-svo-c, math-svo-wid, math-svo-off): Declare.
21985 2015-10-08  Daiki Ueno  <ueno@gnu.org>
21987         Use g_clear_error instead of g_error_free
21989         * src/image.c: Define g_clear_error instead of g_error_free.
21990         (init_svg_functions): Resolve symbol g_clear_error instead of
21991         g_error_free.
21992         (svg_load_image): Use g_clear_error instead of g_error_free, to
21993         suppress GLib warnings when ERR is not set.  See bug#21641.
21995 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
21997         * src/image.c (image_size_error): Simplify.
21999 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
22001         Fix problems caught with --enable-gcc-warnings
22003         * src/image.c (lookup_rgb_color):
22004         * src/xfns.c (x_defined_color):
22005         * src/xterm.c (x_parse_color):
22006         Remove unused locals.
22008 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
22010         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
22012 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
22014         Format initial input uniformly
22016         * lisp/calc/calc.el (calc-digit-start-entry): New function.
22017         * lisp/calc/calc.el (calcDigit-start):
22018         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
22019         Use `calc-digit-start-entry' to format input.
22021 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
22023         Disable non-working pointerColor setting for X tooltip frame
22025         It generates a bunch of server traffic, but there's some bug wherein
22026         the new mouse cursor settings don't seem to get used.  In most
22027         situations the cursor isn't likely to be seen anyway, so it's not
22028         urgent to fix.
22030         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
22032 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
22034         Reduce some unnecessary X calls
22036         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
22037         call.  If border width is wanted, get it from the XGetGeometry call
22038         instead of calling XGetWindowAttributes on the same window.  Skip some
22039         X calls if we've already detected an error from the X server.
22040         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
22041         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
22043 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
22045         Reduce color allocation/query traffic in the TrueColor case
22047         When working with an X visual with TrueColor class, pixel values can
22048         be generated from the RGB values according to mask value provided by
22049         the server on connection.  Some of the image-handling code was already
22050         doing this.
22052         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
22053         lookup_rgb_color.
22054         (x_mutable_colormap): New function.
22055         * src/image.c (lookup_rgb_color): Move pixel composition code to
22056         x_make_truecolor_pixel.
22057         (x_kill_gs_process): Call x_mutable_colormap.
22058         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
22059         x_mutable_colormap.
22060         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
22061         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
22062         pixel value into RGB values directly, and don't send a request to the
22063         server.
22064         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
22065         value with x_make_truecolor_pixel.
22066         (x_copy_color): For an immutable color map, just return the provided
22067         pixel value.
22069 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
22071         Cache XParseColor results in the X display info structure
22073         With repeated lookups of foreground and background colors for multiple
22074         faces per frame, we issue a lot of redundant color name lookups to the
22075         X server, waiting every time for the response.  On a remote network
22076         with, say, 30ms round-trip time, this can add nearly a full second to
22077         creation of a new frame.
22079         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
22080         * src/image.c (get_spec_bg_or_alpha_as_argb):
22081         (xpm_init_color_cache, xpm_lookup_color):
22082         * src/xfns.c (x_defined_color):
22083         * src/xterm.c (x_parse_color): New function; caches color names not
22084         starting with "#" in the display-info structure.
22085         (x_delete_display): Delete the cache content.
22086         * src/xterm.h (struct color_name_cache_entry): New type.
22087         (x_parse_color): Declare.
22088         (struct x_display_info): Add a new field for the cache.
22090 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
22092         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
22094 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
22096         Fix segfault in image_size_error
22098         * src/image.c (image_size_error): Pass a Lisp string to
22099         image_error, not a C string.  (Bug#21641)
22101 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
22103         Highlight CSS variable definitions
22105         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
22106         CSS variables.  (Bug#21638)
22108 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
22110         * test/automated/tabulated-list-test.el: New file.
22111         Test bug#21639 and some basic functionality.
22113 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
22115         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
22116         Check if column can be sorted before trying.  (Bug#21639)
22118 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
22120         Add test for `self-insert-command' (bug#21633)
22122         * test/automated/cmds-tests.el: New file.
22124 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
22126         * src/window.c (resize_frame_windows): Don't set root window's
22127         top position when resizing horizontally.
22129 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
22131         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
22132         Document more possible values.
22134 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
22136         * lisp/textmodes/tex-mode.el: Use lexical-binding.
22138 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
22140         * lisp/indent.el (indent--default-inside-comment): New function.
22141         (indent-for-tab-command): Use it for `noindent' indentation.
22143 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
22145         Fix bug in GC_CHECK_MARKED_OBJECTS check
22147         * src/alloc.c (mark_object): Fix bug in checking code.
22148         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
22149         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
22150         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
22151         bucket.  The bug did not affect behavior either in the normal case
22152         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
22153         not have an internal error that a properly-written
22154         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
22156 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
22158         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
22159         Add prettified version for \\Bbb{Q}.
22161 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
22163         * test/automated/package-test.el (package-test-install-single):
22164         Add a test for bug#21625.
22166 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
22168         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
22169           not a package-desc object.  Also clarify documentation.  (Bug#21625)
22171 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
22173         Fix display of characters adjacent to ZWJ and ZWNJ
22175         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
22176         characters the same as directional formatting controls.
22177         (bidi_level_of_next_char): Include all Bn characters in rule L1,
22178         as mandated by the UBA.
22180 2015-10-06  Andreas Schwab  <schwab@suse.de>
22182         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
22183         number.  (Bug#21633)
22185 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
22187         * doc/lispref/objects.texi (Window Type): Add a cross reference.
22189         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
22191 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
22193         * lisp/language/misc-lang.el (composition-function-table):
22194         Fix entries for Arabic and Syriac.
22196 2015-10-05  Damien Cassou  <damien@cassou.me>
22198         Add first unit tests for auth-source.el
22200         * test/automated/auth-source-tests.el: New file.
22202 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
22204         Remove redundant redisplay code
22206         * src/xdisp.c (redisplay_internal, try_cursor_movement)
22207         (try_window_reusing_current_matrix, try_window_id): Remove
22208         redundant restrictions on redisplay optimizations based on the
22209         frame's 'redisplay' flag.  See
22210         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
22211         discussions.
22213 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
22215         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
22217 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
22219         Update tutorials/TUTORIAL.cn
22221         * etc/tutorials/TUTORIAL.cn: Improve translation.
22223 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22225         * src/macfont.m (macfont_encode_char, syms_of_macfont):
22226         Remove unused vars.
22228 2015-10-04  Stefan Merten  <stefan@merten-home.de>
22230         Pull in version numbers from rst.el upstream release.
22232         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
22233         (rst-svn-timestamp, rst-official-version)
22234         (rst-official-cvs-rev, rst-package-emacs-version-alist):
22235         Update version numbers.
22237 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
22239         * test/automated/coding-tests.el: New file.
22241 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
22243         Improve XEmacs compatibility of Tramp
22245         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
22246         Declare if it doesn't exist.
22247         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
22248         (redisplay): Make it an alias if it doesn't exist.
22250         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
22251         `file-remote-p' (due to XEmacs compatibility).
22253         * lisp/net/trampver.el (locate-dominating-file)
22254         (tramp-compat-replace-regexp-in-string): Autoload.
22255         (tramp-repository-get-version): Do not dupe byte-compiler.
22257 2015-09-02  K. Handa  <handa@gnu.org>
22259         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
22261         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
22262         Adjusted for the change of type of elements in the array
22263         MFLTGlyphString.glyphs.
22265 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
22266             Michael Heerdegen  <michael_heerdegen@web.de>
22268         shr: fix too long lines in rendered buffers (Bug#21012)
22270         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
22271         Correct calculation of available width.
22272         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
22273         is nil.
22275 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
22277         Restore blank line before next section, erroneously erased
22278         in my previous commit
22280         * etc/compilation.txt (symbol ant): Add an additional trailing blank
22281         line to this section, so that there are two of them immediately before
22282         the next section.
22284 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
22286         Support MSW filename style for ant compilation error regexp
22288         * etc/compilation.txt (symbol ant):
22289         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
22290         Support MSW filename style.
22292 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
22294         * nt/INSTALL: Minor spelling and quote fixes.
22296         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
22298 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
22300         Maintain ordering of JSON object keys by default
22302         * lisp/json.el (json-object-type): Mention order handling in doc-string.
22303         (json--plist-reverse): New utility function.
22304         (json-read-object): Maintain ordering for alists and plists.
22305         (json-pretty-print): Ensure that ordering is maintained.
22307         * test/automated/json-tests.el (test-json-plist-reverse): New test for
22308         `json--plist-reverse'.
22309         (json-read-simple-alist): Update test to accommodate for changes in
22310         `json-read-object'.
22312         * etc/NEWS: Document the new behavior of the pretty printing functions.
22314 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
22316         * src/coding.c (complement_process_encoding_system): Revert last change.
22318 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
22320         * admin/MAINTAINERS: Add entry for Ulf Jasper.
22322 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
22324         Doc fix for `defmacro'
22326         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
22328 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
22330         More validatation of coding systems
22332         * src/fileio.c (Finsert_file_contents): Remove redundant
22333         coding-system check.
22334         (choose_write_coding_system): Likewise.
22335         * src/coding.c (complement_process_encoding_system): Check argument
22336         for valid coding system.
22338 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
22340         Avoid crashes in coding_inherit_eol_type
22342         * src/coding.c (coding_inherit_eol_type): Check the validity of
22343         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
22344         (Bug#21602)
22346 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
22348         More validatation of coding system in 'write-region'
22350         * src/coding.c (choose_write_coding_system): More validation of
22351         coding-system from various sources.  Suggested by Andreas Schwab
22352         <schwab@linux-m68k.org>.  (Bug#21602)
22354 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
22356         Avoid crashes due to invalid coding-system
22358         * src/fileio.c (choose_write_coding_system)
22359         (Finsert_file_contents): Check validity of coding-system-for-write
22360         and coding-system-for-read bound by the caller.  (Bug#21602)
22362 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
22364         Adapt to new prettify-symbols-unprettify-at-point default
22366         * etc/NEWS: Mention that unprettication of symbol at point is off
22367         by default.
22369 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
22371         Revert my two recent process.c changes
22373         Revert "Improve last commit to process.c" and "Remove callback-handled
22374         channels from Available set" because they did not fix bug#21313.
22376         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
22377         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
22379 2015-10-02  Markus Triska  <triska@metalevel.at>
22381         * lisp/progmodes/prolog.el: Update and extend operator table.
22382         (prolog-smie-grammar): Add multifile, public etc.
22384 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
22386         Allow autogen even when Git is not installed
22388         * autogen.sh: Test ‘git status’ before trying to use Git.
22390 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
22392         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
22393         Adjust lto/lfrom when we have uncommitted changes.
22395 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
22397         Fix problems found by clang 3.5.0
22399         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
22400         * src/font.c (font_parse_family_registry):
22401         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
22403 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
22405         * nt/INSTALL: Update instructions for running autogen.sh.
22407         * nt/INSTALL: Point to ezwinports for libXpm binaries.
22409 2015-10-02  Daniel Colascione  <dancol@dancol.org>
22411         Fix winner in cl-lib not loaded case
22413         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
22414         without requiring CL
22416 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
22418         Fix a few problems with directed quotes
22420         This is in response to a problem report by Kaushal Modi in:
22421         http://bugs.gnu.org/21588#25
22422         * lisp/cedet/mode-local.el (describe-mode-local-overload):
22423         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
22424         * lisp/info-xref.el (info-xref-check-all-custom):
22425         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
22426         Prefer directed to undirected single quotes in diagnostics.
22428 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
22430         Revert "Attempt to fix slow redisplay caused by last changes"
22432         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
22433         (try_cursor_movement): Don't relax requirements for redisplay
22434         optimizations for the selected frame.  (Bug#21597)
22436         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
22438 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
22440         Fix slow redisplay when daemon frame exists
22442         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
22443         when looking for frames that need to be redisplayed.  (Bug#21597)
22445 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
22447         Attempt to fix slow redisplay caused by last changes
22449         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
22450         (try_cursor_movement): Relax requirements for redisplay
22451         optimizations for the selected frame.  (Bug#21597)
22453 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
22455         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
22456         Improve doc string.
22458 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
22460         * lisp/minibuffer.el (minibuffer-completion-help):
22461         Set default base-size, in case completion table does not set it.
22463 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
22465         Fix GUD display of GDB output with non-ASCII text
22467         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
22468         (gdb-mi-decode): New function.
22469         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
22470         decode octal escapes in GDB output.  (Bug#21572)
22472 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
22474         * nt/INSTALL: Document where to find XPM support files.
22476 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
22478         Un- and re-prettification are not exclusive
22480         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
22481         Re-apply prettification to previous symbol also when unprettifying
22482         next one.
22484 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
22486         Don't unprettify symbol at point by default
22488         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
22489         Default to disabled (nil).
22491 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
22493         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
22494         Support unprettifying when point is after a symbol.
22496         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
22498 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
22500         Avoid assertion violations in push_prefix_prop
22502         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
22503         a line that has a line-prefix defined starts with an image.  (Bug#21428)
22505 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
22507         Disable some display optimizations when frames need redisplay
22509         These optimizations were previously disabled by the
22510         windows_or_buffers_changed flag, which now is not set
22511         when only some frames need to be redrawn.
22512         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
22513         'redisplay' flag is set.
22514         (try_window_reusing_current_matrix, try_window_id)
22515         (try_cursor_movement): Disable these optimizations when the
22516         frame's 'redisplay' flag is set.
22518 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
22520         Don't modify buffer by unprettification
22522         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
22523         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
22524         modify buffer when setting/removing custom prettify-symbols-start/end
22525         text properties.  Add them to font-lock-extra-managed-props, too.
22527 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
22529         Try to avoid redisplaying all frames when creating a new one
22531         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
22532         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
22533         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
22534         * src/frame.c (x_set_screen_gamma): Set the specific frame's
22535         `redisplay' bit rather than windows_or_buffers_changed.
22537         * src/window.c (apply_window_adjustment): Remove redundant setting of
22538         windows_or_buffers_changed.
22540         * src/xdisp.c (redisplay_internal): Set the specific frame's
22541         `redisplay' bit rather than update_mode_lines in response to
22542         cursor_type_changed.
22543         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
22544         (AINC): Adjust accordingly.
22546 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
22548         Implement unprettification of symbol at point
22550         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
22551         symbol at point.
22552         (prettify-symbols--current-symbol-bounds): New variable.
22553         (prettify-symbols--post-command-hook): New function.
22554         (prettify-symbols-unprettify-at-point): New defcustom.
22555         (prettify-symbols-mode): Use it.
22556         (prettify-symbols--compose-symbol): Use them.
22558 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22560         * src/macfont.m (mac_font_descriptor_supports_languages):
22561         Regard "zh" as synonym of "zh-Hans".
22563 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22565         Work around crash when displaying etc/HELLO on OS X 10.11
22567         * src/macfont.m (mac_font_get_weight)
22568         (mac_font_descriptor_get_adjusted_weight): New functions.
22569         (macfont_store_descriptor_attributes): Adjust weight.
22571 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
22573         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
22575 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
22577         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
22578         of the columns.
22580 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
22582         Use unar and lsar to handle RAR archives in arc-mode
22584         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
22585         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
22587 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
22589         Clarify :create in auth-source's docs
22591         * lisp/gnus/auth-source.el (auth-source-search):
22592         Clarify :create's meaning.
22594 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
22596         Avoid empty -path arguments in rgrep
22598         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
22599         the list produced according to grep-find-ignored-directories,
22600         before passing it to Find/Grep invocation.  (Bug#21548)
22602 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
22604         Clarify documentation of pos-visible-in-window-p
22606         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
22607         t for POS.  See
22608         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
22609         for the original report.
22611         * doc/lispref/windows.texi (Window Start and End): Clarify the
22612         meaning of t for the POSITION argument of pos-visible-in-window-p.
22614 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
22616         * lisp/progmodes/prolog.el: Fix various indentation cases.
22617         (prolog-operator-chars): New const (add \\).
22618         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
22619         (prolog-smie-rules): Add rules according to bug#21526.
22621 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
22623         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
22624         (sh-indent-after-continuation): Add new value `always' (bug#17620)
22625         (sh-smie-sh-rules): Remove old handling of continued lines.
22626         (sh-smie--indent-continuation): New function.
22627         (sh-set-shell): Use it.
22629 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
22631         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
22632         Remove redundant :group keyword args.
22633         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
22634         Remove variables.
22635         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
22636         turn them into compile-time variables.
22637         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
22638         Add rules for break, continue, return, global, and persistent.
22639         Refine the rule for "until".
22640         (octave-smie--funcall-p, octave-smie--end-index-p)
22641         (octave-smie--in-parens-p): New functions.
22642         (octave-smie-backward-token, octave-smie-forward-token): Use them to
22643         distinguish the "enumeration" function and the "end" index from
22644         their corresponding keywords.
22645         (octave--block-offset-keywords): New constant.
22646         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
22647         parsing.
22648         (octave-reserved-words): Redefine using octave-smie-grammar.
22649         (octave-font-lock-keywords): Use octave-smie--funcall-p and
22650         octave-smie--end-index-p.
22652 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
22654         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
22656 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
22658         * nt/INSTALL: Remove references to GTK site.
22659         That site no longer offers Windows downloads.
22661 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
22663         * nt/INSTALL: Add instructions for installing Git.
22665 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
22667         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
22668         use colors.  Suggested by Eli Zaretskii.
22670 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
22672         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
22673         not supporting 256 above colors (bug#21557).
22675 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
22677         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
22679         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
22681 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
22683         Add documentation for seq.el
22685         * doc/lispref/sequences.texi: Add documentation regarding extending
22686         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
22687         seq-do and seq-map.
22689 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
22691         Better documentation for seq-some
22693         * doc/lispref/sequences.texi:
22694         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
22695         guarantee that the returned value is the first non-nil value that
22696         resulted from applying the predicate.
22698 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
22700         * lisp/arc-mode.el: Sharp-quote function arguments.
22702 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
22704         Avoid redisplay error in ediff-regions-wordwise
22706         * lisp/vc/ediff-util.el
22707         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
22708         set before activating it.  (Bug#21567)
22710 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
22712         Another attempt to fix crashes due to prematurely freed faces
22714         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
22715         faces for as long as we might have desired matrices that reference
22716         those faces.  (Bug#21428)
22718 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
22720         Add auctex development list email address
22722 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
22724         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
22726 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
22728         Improve wrapfig package support and caption parsing
22730         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
22731         Correct description string and add wraptable environment.
22732         (reftex-default-context-regexps): Improve caption regexp.
22734 2015-09-28  Anders Lindgren  <andlind@gmail.com>
22736         Respect value of frame_resize_pixelwise when handling fullscreen state
22738         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
22739         setting size increments.
22741 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
22743         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
22745 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
22747         Add prettify-symbols-alist for js-mode
22749         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
22750         (js-mode): Use it.
22752 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
22754         * nt/subdirs.el: File deleted (no longer used).
22756 2015-09-26  Alan Mackenzie  <acm@muc.de>
22758         Fix follow-scroll-up/down, making them replacements for scroll-up/down
22760         1. Allow point to move between follow windows in scroll operations.
22761         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
22762         when EOB was isolated in the last follow window.
22764         * lisp/follow.el (follow-fixed-window): New variable.
22765         (follow-get-scrolled-point): New function.
22766         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
22767         Reformulate the code.  Put `scroll-command' properties on the functions.
22768         Correct minor errors in ...-down's doc string and code.
22769         (follow-calc-win-end): Amend incomplete doc string.  Use
22770         `pos-visible-in-window-p' to check whether EOB is in the window.
22771         (follow-estimate-first-window-start): Correct an off-by-1 error.
22772         (follow-adjust-window): Add handling for explicit scrolling operations.
22774 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
22776         * admin/MAINTAINERS: Add self, plus list some more files
22777         sans maintaners.
22779 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
22781         New DWIM commands for changing letter-case
22783         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
22784         New functions.  (Bug#21501)
22786 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
22788         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
22790 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
22792         Make face realization be more frame-specific
22794         * src/frame.h (struct f): New flag face_change.
22795         * src/xfaces.c (Finternal_make_lisp_face)
22796         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
22797         (update_face_from_frame_parameter): Set the face_change flag only
22798         for the frame whose faces are affected.
22799         * src/xdisp.c (init_iterator): If a frame's face_change flag is
22800         set, free faces only on that frame.
22801         (redisplay_internal): Disable "display optimization 1" if the
22802         frame's face_change flag is set.
22803         (redisplay_window): Don't allow skipping a window's redisplay if
22804         its frame's face_change flag is set.
22805         * src/frame.c (x_set_screen_gamma): Instead of calling
22806         Fclear_face_cache, call clear_face_cache and set
22807         windows_or_buffers_changed to a non-zero value.  This avoids
22808         setting the global face_change flag that triggers face realization
22809         on all frames and thorough redisplay of all of them.
22811         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
22812         clear face cache if the selected frame is a GUI frame.
22814 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
22816         Remove font-latex specific check
22818         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
22819         Use syntax-ppss data to identify verbatim contents.
22821 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
22823         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
22824         Fix some false negatives.
22826 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
22828         Reorder Windows version in Emacs manifests
22830         * nt/emacs-x64.manifest:
22831         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
22832         highest.
22834 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
22836         Update Emacs manifest files for Windows 10
22838         * nt/emacs-x86.manifest:
22839         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
22841 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
22843         Avoid non-ASCII decoding errors in C src files
22845         * src/nsterm.m:
22846         * src/lisp.h:
22847         * src/editfns.c:
22848         * src/doprnt.c: Add 'coding' cookies -- these files include
22849         Unicode characters and should be decoded as UTF-8.
22851 2015-09-25  Alan Mackenzie  <acm@muc.de>
22853         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
22855         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
22856         amend to match current modes and functions.
22857         (edebug-set-initial-mode): Uncomment and change from setting a defun's
22858         `edebug-initial-mode''s property to setting the variable
22859         `edebug-initial-mode'.
22860         (top level): Create new binding C-x C-a C-m for
22861         `edebug-set-initial-mode'.
22863         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
22864         `edebug-set-initial-mode' and its new key binding.
22865         (Edebug Options): Mention the new command in the pertinent place.
22867         * etc/NEWS: Write entry for this change.
22869 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
22871         Avoid non-ASCII decoding errors in Texinfo files
22873         * doc/misc/tramp.texi:
22874         * doc/lispref/strings.texi:
22875         * doc/lispref/positions.texi:
22876         * doc/lispref/help.texi:
22877         * doc/lispref/functions.texi:
22878         * doc/lispintro/emacs-lisp-intro.texi:
22879         * doc/emacs/text.texi:
22880         * doc/emacs/modes.texi:
22881         * doc/emacs/mini.texi:
22882         * doc/emacs/display.texi:
22883         * doc/emacs/custom.texi:
22884         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
22885         Unicode characters and should be decoded as UTF-8.
22886         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
22887         apostrophe unnecessarily.
22889 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
22891         Merge from gnulib
22893         This incorporates:
22894         2015-09-25 c-ctype: rewrite to use inline functions
22895         2015-09-24 maint: add coding cookies to non-ASCII sources
22896         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
22897         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
22898         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
22899         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
22900         * lib/set-permissions.c:
22901         Copy from gnulib.
22903 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
22905         Update publicsuffix.txt from upstream
22907         * etc/publicsuffix.txt: Update from
22908         https://publicsuffix.org/list/effective_tld_names.dat
22909         dated 2015-09-24 17:29:21 UTC.
22911 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
22913         Prevent timers from messing up TTY menus
22915         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
22916         the TTY menu is open.  (Bug#21530)
22918 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
22920         No need to mention K&R C in c-mode intro
22922 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
22924         Fix recent bootstrap problems
22926         * src/syntax.c (parse_sexp_propertize): Fix last fix.
22927         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
22928         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
22930 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
22932         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
22934 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
22936         Properly quote nested xml comments (Bug#6267) (Bug#20001)
22938         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
22939         (nxml-mode): Set comment-quote-nested-function.
22941 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
22943         Allow major-modes full control over quoting nested comments
22945         * lisp/newcomment.el (comment-quote-nested-function): New variable.
22946         (comment-quote-nested-default): New function.
22947         (comment-quote-nested): Use `comment-quote-nested-function'.
22949 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
22951         Prefer CALLN in a few more places
22953         * src/macfont.m (macfont_set_family_cache):
22954         * src/nsterm.m (append2):
22955         * src/xterm.c (x_cr_export_frames):
22956         Prefer CALLN to allocating the arg arrays by hand.
22958 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
22960         Adapt file-notify-test02-events test case
22962         * test/automated/file-notify-tests.el (file-notify-test02-events):
22963         Create a new watch for every test.
22965 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
22967         Continue gfilenotify.c implementation of missing parts
22969         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
22970         `gfile-add-watch' call.
22971         (file-notify-rm-watch): Modify `file-notify-descriptors' only
22972         after calling the low level functions.
22974         * src/gfilenotify.c (dir_monitor_callback): Check, whether
22975         event_type is expected.
22976         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
22977         (Fgfile_rm_watch): Fix typo.
22978         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
22980 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
22982         * src/syntax.c (parse_sexp_propertize): Handle spurious
22983         e_property_truncated flag.
22984         (update_syntax_table_forward): Remove invalid assertion.
22986 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
22988         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
22989         space display spec on text-mode terminals, by calling
22990         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
22991         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
22992         test for a GUI frame.
22994 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
22996         Move let-when-compile to lisp-mode.el
22998         This fixes the bootstrapping problem of `let-when-compile' using
22999         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
23001 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
23003         * lisp/url/url-http.el (url-http-parse-headers): Do not
23004         automatically include Authorization header in redirect.
23005         (Bug#21350)
23007 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
23009         Clarify documentation of ':relative-width'
23011         * doc/lispref/display.texi (Specified Space): Document that
23012         ':relative-width' is only supported on GUI frames.
23014 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
23016         Fix 'current-column' in presence of :relative-width
23018         * src/indent.c (check_display_width): Support ':relative-width'
23019         in a display spec that specifies a stretch glyph.  (Bug#21533)
23021 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
23023         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
23025         ... to conform better to CONTRIBUTE guidelines.
23027 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
23029         * lisp/progmodes/prolog.el: Fix indentation of empty line
23031         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
23032         `empty-line-token' element.
23033         (smie-indent-empty-line): New function.
23034         (smie-indent-functions): Add it.
23036         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
23037         behavior and use the new `empty-line-token' element (bug#21526).
23038         (prolog-mode-variables): Fix comment-start-skip setting to match
23039         comment-start.
23041         * test/indent/prolog.prolog: Add nested indentation tests.
23043         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
23044         comment-start-skip not to misuse submatch 1.
23046 2015-09-22  Alan Mackenzie  <acm@muc.de>
23048         Make description of `edebug-initial-mode' user friendly
23050         Fixes bug#21365.
23052         * doc/lispref/edebug.texi (Edebug Execution Modes): Change the
23053         description of `edebug-initial-mode' from that of its implementation
23054         to that of its visual effect and use.  Move the paragraph higher up.
23056 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
23058         lisp/progmodes/gud.el (gud-format-command): Fix last commit
23060         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
23061         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
23063 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
23065         Improve last commit to process.c
23067 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
23069         Implement gfile-valid-p
23071         * lisp/filenotify.el (file-notify-callback): Fix typo.
23072         (gfile-valid-p): Remove defalias.
23074         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
23075         the file or directory to be watched is deleted.
23076         (Fgfile_add_watch): Make watch_object a triple.
23077         (Fgfile_rm_watch): Check, whether watch is cancelled already.
23078         (Fgfile_valid_p): New defun.
23079         (syms_of_gfilenotify): Declare Sgfile_valid_p.
23081 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
23083         Remove callback-handled channels from Available set
23085         * src/process.c (wait_reading_process_output): Remove channel from
23086         Available set if it is handled by a callback, e.g., dbus or
23087         inotify (bug#21313).
23089 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
23091         Use lunate epsilon for TeX \epsilon
23093         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
23094         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
23095         \epsilon to use GREEK LUNATE EPSILON SYMBOL
23097 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
23099         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
23101         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
23102         rather than outermost paren (bug#21526).
23104 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
23106         Improve git diff hunk headers for .el, .texi
23108         Problem reported by Alan Mackenzie in:
23109         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
23110         * .gitattributes (*.el, *.texi): New patterns.
23111         * autogen.sh: Configure diff.elisp.xfuncname and
23112         diff.texinfo.xfuncname if using Git.
23114 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
23116         Don't rely on defaults in decoding UTF-8 encoded Lisp files
23118         * lisp/replace.el:
23119         * lisp/textmodes/rst.el:
23120         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
23122 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
23124         Clarify or replace a few \u escapes
23126         * doc/lispref/nonascii.texi (Character Properties)
23127         More-detailed commentary for \u escapes.
23128         * lisp/progmodes/python.el (python--prettify-symbols-alist):
23129         * lisp/replace.el (query-replace-from-to-separator):
23130         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
23131         (rst-mode-syntax-table):
23132         * lisp/whitespace.el (whitespace-display-mappings):
23133         Prefer actual character to \u escape when this makes the code
23134         easier to follow in the usual case where Unicode chars can be
23135         displayed.
23137 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
23139         Pacify GCC -Wmaybe-uninitialized in xdisp.c
23141         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
23142         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
23143         charpos.  The loop should always execute at least once anyway.
23145 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
23147         Signal error on invalid regexp
23149         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
23150         Signal an error when the user tries searching with a regexp
23151         matching the empty string.
23153 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
23155         Another fix of file-notify-tests for w32notify
23157         * test/automated/file-notify-tests.el (file-notify-test02-events):
23158         Further adaptation for w32notify: reduce the number of expected
23159         'changed' events.  (Bug#21435)
23161 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
23163         Adapt tests and manual for w32notify
23165         * doc/lispref/os.texi (File Notifications): w32notify does not
23166         send `attribute-changed' events.
23168         * test/automated/file-notify-tests.el (file-notify--test-with-events):
23169         Simplify parameters.  Adapt all callees.
23170         (file-notify-test02-events): w32notify does not send
23171         `attribute-changed' events.
23172         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
23173         Do not skip in case of w32notify.  Simply ignore this part of the test.
23175 2015-09-21  Dima Kogan  <dima@secretsauce.net>
23177         Fix setting breakpoints when remote-debugging
23179         * lisp/progmodes/gud.el (gud-format-command): Send localized file
23180         names to the debugger running on the remote.  (Bug#13304)
23182 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
23184         Better docstring and parameter name for seq-find
23186         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
23187         the parameter `sentinel' to `default'.
23189         * doc/lispref/sequences.texi (Sequence Functions): Update the
23190           documentation for `seq-find' accordingly.
23192 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
23194         Avoid infinite recursion while displaying box face
23196         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
23197         the previous string/buffer character position under bidi
23198         iteration.  (Bug#21428)
23200 2015-09-21  Anders Lindgren  <andlind@gmail.com>
23202         Keep upper edge unchanged when changing size of NS frame
23204         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
23205         (Bug#21415).
23207 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
23209         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
23210         (prolog-smie-rules): Accommodate standard if/then/else special
23211         indentation.
23212         (prolog-mode): Add . to electric-indent-chars.
23213         (prolog-electric--if-then-else): Re-indent the line before adding space
23214         after the new char (bug#21526).
23216 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
23218         Add prettify symbols to python-mode
23220         * lisp/progmodes/python.el (python-prettify-symbols-alist):
23221         New variable.
23222         (python-mode): Use it
23224 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
23226         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
23228 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
23230         (compilation-error-regexp-alist-alist): Tone down guile-file
23232         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
23233         Make guile-file a bit less enthusiastic (bug#21496).
23235 2015-09-20  Drew Csillag  <drew@thecsillags.com>
23237         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
23238         Fix m4_* highlighting.
23240         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
23241         of commands when they have a "m4_" prefix.
23243 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
23245         '.' -> `.' in doc string
23247         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
23248         individual chars with grave quotes instead of straight quotes, as
23249         this works better when they are translated to curved quotes.
23251 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
23253         Improve file notifications, especially for Tramp
23255         * doc/lispref/files.texi (Magic File Names):
23256         Mention `file-notify-valid-p'.
23258         * doc/lispref/os.texi (File Notifications):
23259         Describe `file-notify-valid-p'.
23261         * etc/NEWS: Add `file-notify-valid-p'.
23263         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
23264         Improve implementation.
23265         (tramp-gvfs-monitor-file-process-filter): Rename from
23266         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
23267         process if appropriate.
23269         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
23270         Improve implementation.
23271         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
23272         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
23273         if appropriate.
23274         (tramp-sh-inotifywait-process-filter): Rename from
23275         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
23276         appropriate.
23278         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
23279         Use `delete-process'.
23280         (tramp-handle-file-notify-valid-p): Check also, that file or
23281         directory to be watched still exists.
23283         * test/automated/file-notify-tests.el (file-notify--test-timeout):
23284         New defun.  Use it at all places a timeout is needed.
23285         (file-notify--test-cleanup): Delete directories recursively.
23286         Cleanup also Tramp connections.
23287         (file-notify-test02-events): Add tests for `attribute-change'.
23288         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
23289         Add tests for `file-notify-rm-watch'.
23291 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
23293         Use %s to format strings instead of splicing them
23295         If FOO might contain quotes that are part of a file or variable
23296         name, the quotes should not be translated when showing FOO’s name
23297         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
23298         is not quite right, as it would translate FOO’s quotes.
23299         Change it to (message "%s: bar" FOO) instead.
23300         * lisp/allout.el (allout-process-exposed):
23301         * lisp/calc/calc-ext.el (calc-do-prefix-help):
23302         * lisp/calc/calc-store.el (calc-store-into):
23303         * lisp/calendar/todo-mode.el (todo-category-completions):
23304         * lisp/cedet/semantic/complete.el (semantic-completion-message):
23305         * lisp/org/ob-latex.el (convert-pdf):
23306         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
23307         * lisp/org/ox-latex.el (org-latex-compile):
23308         * lisp/org/ox-man.el (org-man-compile):
23309         * lisp/org/ox-odt.el (org-odt--export-wrap):
23310         * lisp/org/ox-texinfo.el (org-texinfo-compile):
23311         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
23312         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
23313         (verilog-signals-combine-bus, verilog-read-defines)
23314         (verilog-getopt-file, verilog-expand-dirnames)
23315         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
23316         * lisp/term/ns-win.el (ns-spi-service-call):
23317         Use %s to avoid translating quotes of file names etc. in diagnostics.
23319 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
23321         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
23322         (js-mode): Don't set syntax-begin-function.
23324 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
23326         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
23327         syntax-begin-function is a symbol.
23329 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
23331         Improve documentation of 'run-at-time'
23332         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
23333         In particular, don't refer to 'diary-entry-time', because it is
23334         unavailable until diary-lib is loaded.  Also, refer to
23335         'timer-duration-words', not 'timer-duration', as the latter's doc
23336         string says nothing about the accepted strings.
23338 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
23340         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
23342 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
23344         Repair pdbtrack remote file tracking
23345         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
23346         Rectify pdbtrack so it follows transitions from one remote source
23347         file to the next.
23349 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
23351         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
23353 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
23355         Adapt vc-src to the old-new vc-checkin API
23356         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
23357         additional optional parameter.
23359 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
23361         Add overflow module to CSS property list
23362         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
23363         from CSS Overflow Module Level 3.
23365 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
23367         Fix documentation of "C-u C-x v v"
23368         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
23369         documentation of "C-u C-x v v" match what the code does.
23371         Resurrect the ability to specify a revision in vc-next-action
23372         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
23373         * lisp/vc/vc-dav.el (vc-dav-checkin):
23374         * lisp/vc/vc-git.el (vc-git-checkin):
23375         * lisp/vc/vc-hg.el (vc-hg-checkin):
23376         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
23377         an additional optional argument, the revision to checkin.
23378         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
23379         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
23380         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
23381         a revision to checkin.
23382         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
23383         revision when checking in files.
23384         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
23385         for the details.
23387 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
23389         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
23390         (verilog-decls-princ, verilog-modport-princ)
23391         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
23393 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
23395         Fix the routine for help on Calc's prefixes
23396         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
23397         (calc-do-prefix-help): Use `read-char' to determine the next Calc
23398         command.
23400 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
23402         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
23403         (font-lock-fontify-block): Don't let-bind it.
23404         (font-lock-compile-keywords): Don't use it.
23405         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
23406         start one slot earlier, instead.
23407         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
23408         Don't declare.
23409         (syntax-ppss): Don't use it either.
23410         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
23411         from docstring.
23412         * doc/emacs/display.texi (Font Lock): Don't mention
23413         font-lock-beginning-of-syntax-function.
23414         * doc/lispref/modes.texi (Font Lock Basics): Update description of
23415         font-lock-defaults.
23416         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
23417         * lisp/loadhist.el (unload-feature-special-hooks):
23418         Remove font-lock-beginning-of-syntax-function.
23419         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
23420         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
23421         font-lock-beginning-of-syntax-function.
23423 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
23425         Backslash cleanup in Elisp source files
23426         This patch should not change behavior.  It typically omits backslashes
23427         where they are redundant (e.g., in the string literal "^\$").
23428         In a few places, insert backslashes where they make regular
23429         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
23430         "^\\*", which has the same effect as a regular expression.
23431         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
23432         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
23433         RCS IDs, as that makes it clearer that the backslash is intended.
23435         Some more minor backslash fixes
23436         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
23437         * test/automated/info-xref.el (info-xref-test-write-file):
23438         Double backslashes in strings.
23440         Fix several backslash typos in Elisp strings
23441         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
23442         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
23443         (todo-reset-done-string, todo-reset-comment-string)
23444         (todo-reset-highlight-item):
23445         * lisp/erc/erc-networks.el (erc-networks-alist):
23446         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
23447         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
23448         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
23449         (nntp-telnet-shell-prompt):
23450         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
23451         * lisp/image-dired.el (image-dired-rotate-original):
23452         (image-dired-get-exif-file-name):
23453         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
23454         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
23455         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
23456         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
23457         * lisp/net/shr-color.el (shr-color->hexadecimal):
23458         * lisp/org/org-bibtex.el (org-bibtex-fields):
23459         * lisp/org/org-docview.el (org-docview-export):
23460         * lisp/org/org-entities.el (org-entities):
23461         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
23462         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
23463         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
23464         (ebnf-style-database):
23465         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
23466         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
23467         * lisp/progmodes/sql.el (sql-product-alist):
23468         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
23469         (verilog-error-font-lock-keywords)
23470         (verilog-assignment-operator-re):
23471         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
23472         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
23473         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
23474         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
23475         For example, to get the regular expression ‘\.’ use the string
23476         literal "\\.", not "\." (which is equivalent to ".").
23477         * lisp/emulation/viper-util.el (viper-glob-unix-files):
23478         Remove stray ‘\j’ from string.
23479         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
23480         (nntp-telnet-shell-prompt):
23481         Treat > like $ when matching a shell prompt.
23482         * lisp/progmodes/make-mode.el (makefile-browse):
23483         Properly quote a diagnostic.
23485         Fix minor quoting problems in diagnostics
23486         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
23487         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
23488         Follow text-quoting-style in diagnostic, and quote a file name.
23490 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
23492         * doc/lispref/frames.texi (Cursor Parameters):
23493         Document 'x-stretch-cursor'.
23495 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
23497         Omit unnecessary \ before paren in C docstrings
23498         Although \( is needed in docstrings in Elisp code, it is not needed in
23499         docstrings in C code, since C function definitiions do not start with
23500         a parenthesis.  The backslashes made the docstrings a bit harder to
23501         read and to format in columns.  Also, some C docstrings had ( in
23502         column 1 and this did not appear to be causing any problems.  So,
23503         simplify C docstrings by replacing \( with ( and \) with ).
23505         A few more minor quoting fixes in a script and a text file
23507         Minor quoting fixes in scripts and doc
23508         Prefer straight quotes in random script files, as they are not
23509         converted.  Prefer grave quotes in a couple of places in the manual
23510         that were missed earlier, as these quotes are converted.
23512         Minor backslash fixes in manuals and scripts
23513         * Makefile.in (install-arch-indep):
23514         * admin/charsets/compact.awk:
23515         * admin/charsets/gb180302.awk (gb_to_index):
23516         * admin/charsets/gb180304.awk (gb_to_index):
23517         Avoid undefined behavior in Awk regular expression backslashes.
23518         * doc/misc/efaq.texi (Matching parentheses):
23519         Omit unnecessary backslashes.
23520         * doc/misc/gnus-faq.texi (FAQ 5-8):
23521         Avoid undefined behavior in suggested sed backslash usage.
23523         Add -Wswitch to --enable-gcc-warnings
23524         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
23525         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
23526         * lib-src/etags.c (main, consider_token, C_entries):
23527         * src/coding.c (encode_invocation_designation):
23528         * src/data.c (Ftype_of):
23529         * src/eval.c (Fdefvaralias, default_toplevel_binding)
23530         (Fbacktrace__locals, mark_specpdl):
23531         * src/lisp.h (record_xmalloc):
23532         * src/syntax.c (scan_lists, scan_sexps_forward):
23533         * src/window.c (window_relative_x_coord):
23534         * src/xdisp.c (push_it, pop_it):
23535         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
23536         Error out or do nothing (as appropriate) if a switch statement
23537         with an enum value does not cover all of the enum.
23538         * src/dispextern.h (struct iterator_stack_entry.u.comp):
23539         Remove unused member discovered by using -Wswitch.
23540         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
23541         * src/vm-limit.c (check_memory_limits):
23542         Simplify warning-diagnostic computation by using a table.
23544         etags ‘fatal’ function is now printf-like
23545         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
23546         Also, now static; not clear why it needed to be extern.
23547         (verror): New function, with most of the old contents of ‘error’.
23548         (fatal, error): Use it.
23550 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
23552         More adaptations in file-notify-tests.el
23553         * test/automated/file-notify-tests.el
23554         (file-notify-test05-dir-validity): Skip for w32notify in
23555         batch-mode.  (Bug#21432)
23557 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
23559         Adapt test in file-notify-tests.el
23560         * test/automated/file-notify-tests.el
23561         (file-notify-test04-file-validity): Skip for w32notify in
23562         batch-mode.  Add test lost last commit.
23564 2015-09-16  Dima Kogan  <dima@secretsauce.net>
23566         winner no longer holds on to dead frames
23567         * lisp/winner.el (winner-change-fun): Cull dead frames.
23568         This prevents a potentially massive memory leak.  See:
23569         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
23571 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
23573         Use common report_file_notify_error function
23574         * src/fileio.c (report_file_notify_error): New function.
23575         * src/inotify.c (report_inotify_error): Remove function.
23576         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
23577         (Finotify_rm_watch): Use report_file_notify_error.
23578         * src/lisp.h (report_file_notify_error): Declare external function.
23579         * src/w32notify.c (report_w32notify_error): Remove function.
23580         (Fw32notify_add_watch, Fw32notify_rm_watch):
23581         Use report_file_notify_error.
23583 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
23585         Fix documentation.
23586         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
23587         the documentation of the root mean square.
23589 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
23591         Remove tool_bar_redisplayed_once and associated code.
23592         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
23593         * src/frame.c (make_frame, x_set_font): Remove initialization of
23594         f->tool_bar_redisplayed_once.
23595         * src/w32fns.c (x_change_tool_bar_height):
23596         * src/xfns.c (x_change_tool_bar_height): Don't check for
23597         f->tool_bar_redisplayed_once.
23598         * src/xdisp.c (redisplay_internal): Remove handling of
23599         f->tool_bar_redisplayed_once.
23601 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
23603         Restore some of the quoting in the manuals
23604         * doc/lispref/windows.texi (Coordinates and Windows)
23605         (Coordinates and Windows):
23606         * doc/lispref/variables.texi (Lexical Binding)
23607         (File Local Variables):
23608         * doc/lispref/text.texi (Format Properties):
23609         * doc/lispref/symbols.texi (Symbol Components):
23610         * doc/lispref/strings.texi (Creating Strings):
23611         * doc/lispref/sequences.texi (Sequence Functions):
23612         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
23613         (Search and Replace):
23614         * doc/lispref/processes.texi (Bindat Spec):
23615         * doc/lispref/os.texi (Idle Timers):
23616         * doc/lispref/objects.texi (Basic Char Syntax):
23617         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
23618         * doc/lispref/nonascii.texi (Character Properties):
23619         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
23620         (Mode Line Variables):
23621         * doc/lispref/minibuf.texi (Text from Minibuffer):
23622         * doc/lispref/loading.texi (Autoload):
23623         * doc/lispref/keymaps.texi (Controlling Active Maps):
23624         * doc/lispref/frames.texi (Frame Layout, Size and Position)
23625         (Size Parameters, Implied Frame Resizing):
23626         * doc/lispref/files.texi (Changing Files, Magic File Names):
23627         * doc/lispref/eval.texi (Self-Evaluating Forms):
23628         * doc/lispref/display.texi (Progress, Abstract Display)
23629         (Abstract Display Example, Bidirectional Display):
23630         * doc/lispref/commands.texi (Event Mod):
23631         * doc/emacs/windows.texi (Displaying Buffers):
23632         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
23633         * doc/emacs/text.texi (Enriched Text):
23634         * doc/emacs/programs.texi (MixedCase Words):
23635         * doc/emacs/picture-xtra.texi (Insert in Picture)
23636         (Tabs in Picture):
23637         * doc/emacs/misc.texi (Emacs Server, Printing):
23638         * doc/emacs/mini.texi (Minibuffer History):
23639         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
23640         (Pulling / Pushing):
23641         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
23642         * doc/emacs/help.texi (Help, Help Echo):
23643         * doc/emacs/glossary.texi (Glossary):
23644         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
23645         (Frame Commands):
23646         * doc/emacs/files.texi (Reverting, Saving, Directories):
23647         * doc/emacs/entering.texi (Exiting):
23648         * doc/emacs/emacs.texi (Top):
23649         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
23650         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
23651         appropriate or replace quoting with @dfn.
23652         * doc/misc/ediff.texi (Window and Frame Configuration):
23653         * doc/lispref/processes.texi (Network Feature Testing):
23654         * doc/lispref/display.texi (Display Margins): Quote the phrase
23655         after "a.k.a." where appropriate.
23657 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
23659         Clarify reftex-extra-bindings docs
23660         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
23661         * doc/misc/reftex.texi (Key Bindings): Document that the variable
23662         only has an effect at load-time.
23664 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
23666         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
23667         search argument.  (Bug#21492) (Bug#21493)
23669 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
23671         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
23672         Add pretty symbols for \qquad and \varrho.
23674 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
23676         Add new functions for the root mean square of a (Calc) vector
23677         * lisp/calc/calc-stat.el (calcFunc-rms, calc-vector-rms):
23678         New functions.
23679         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
23680         `calc-vector-rms', add autoloads for `calc-vector-rms' and
23681         `calcFunc-rms'.
23682         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
23683         `calcFunc-rms'.
23684         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
23685         `calc-vector-rms'.
23686         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
23687         command.
23689 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
23691         Add monotone EDE generic project
23692         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
23693         Add monotone generic project.
23695         Revert premature commit
23696         * doc/lispref/files.texi: Revert premature commit of change to
23697         file-name-all-completions.
23699         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
23700         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
23701         with cl-generic defaults.
23702         (elisp--xref-find-references): Add doc string.
23703         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
23704         tests to find bug.
23706         Fix bugs in eieio-oref-default related to class symbols
23707         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
23708         (eieio-oref-default): Handle class properly.
23710 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
23712         Quote “fullboth” when defining it
23713         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
23714         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
23716 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
23718         Minor doc fix in emacs/ack.texi
23719         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
23720         first argument.
23722 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
23724         Adapt tests in auto-revert-tests.el
23725         * test/automated/auto-revert-tests.el (auto-revert--timeout):
23726         Make it a defconst.
23727         (auto-revert--wait-for-revert): New defun.
23728         (auto-revert-test00-auto-revert-mode)
23729         (auto-revert-test01-auto-revert-tail-mode)
23730         (auto-revert-test02-auto-revert-mode-dired): Use it.
23732 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
23734         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
23735         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
23736         (cl-lib-fdefs): Add defgeneric.
23737         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
23738         (eieio-kw, cl-lib-kw, el-kw): Remove.
23740 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
23742         Quote less in manuals
23743         The manuals often used quotes ``...'' when it is better to use @dfn or
23744         @code or capitalized words or no quoting at all.  For example, there is
23745         no need for the `` and '' in “if a variable has one effect for
23746         @code{nil} values and another effect for ``non-@code{nil}'' values”.
23747         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
23748         unnecessary quoting like this, and to use @dfn etc. instead when called
23749         for (Bug#21472).
23751 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
23753         * lisp/custom.el (load-theme): Only compute hash when needed.
23755 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
23757         Pacify --enable-gcc-warnings
23758         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
23760 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
23762         Improve error reports in inotify.c
23763         * src/inotify.c (report_inotify_error): New function.  Clone of
23764         report_w32notify_error.
23765         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
23766         (Finotify_rm_watch): Use it.
23768 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
23770         Fix the file-notify tests for watch validation on w32
23771         * test/automated/file-notify-tests.el
23772         (file-notify-test04-file-validity): Move the directory deletion
23773         out of the file-notify--test-with-events macro.
23774         (file-notify-test04-file-validity)
23775         (file-notify-test05-dir-validity): Enlarge the timeout of
23776         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
23778 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
23780         Use OPEN BOX instead of space for \quad.
23781         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
23782         character for \quad instead of a space.
23784 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
23786         Add missing *.pbm images
23787         * etc/images/connect.pbm: New file.
23788         * etc/images/custom/down-pushed.pbm: New file.
23789         * etc/images/custom/down.pbm: New file.
23790         * etc/images/custom/right-pushed.pbm: New file.
23791         * etc/images/custom/right.pbm: New file.
23792         * etc/images/describe.pbm: New file.
23793         * etc/images/disconnect.pbm: New file.
23794         * etc/images/ezimage/bits.pbm: New file.
23795         * etc/images/ezimage/bitsbang.pbm: New file.
23796         * etc/images/ezimage/box-minus.pbm: New file.
23797         * etc/images/ezimage/box-plus.pbm: New file.
23798         * etc/images/ezimage/box.pbm: New file.
23799         * etc/images/ezimage/checkmark.pbm: New file.
23800         * etc/images/ezimage/dir-minus.pbm: New file.
23801         * etc/images/ezimage/dir-plus.pbm: New file.
23802         * etc/images/ezimage/dir.pbm: New file.
23803         * etc/images/ezimage/doc-minus.pbm: New file.
23804         * etc/images/ezimage/doc-plus.pbm: New file.
23805         * etc/images/ezimage/doc.pbm: New file.
23806         * etc/images/ezimage/info.pbm: New file.
23807         * etc/images/ezimage/key.pbm: New file.
23808         * etc/images/ezimage/label.pbm: New file.
23809         * etc/images/ezimage/lock.pbm: New file.
23810         * etc/images/ezimage/mail.pbm: New file.
23811         * etc/images/ezimage/page-minus.pbm: New file.
23812         * etc/images/ezimage/page-plus.pbm: New file.
23813         * etc/images/ezimage/page.pbm: New file.
23814         * etc/images/ezimage/tag-gt.pbm: New file.
23815         * etc/images/ezimage/tag-minus.pbm: New file.
23816         * etc/images/ezimage/tag-plus.pbm: New file.
23817         * etc/images/ezimage/tag-type.pbm: New file.
23818         * etc/images/ezimage/tag-v.pbm: New file.
23819         * etc/images/ezimage/tag.pbm: New file.
23820         * etc/images/ezimage/unlock.pbm: New file.
23821         * etc/images/gnus/important.pbm: New file.
23822         * etc/images/gnus/mail-send.pbm: New file.
23823         * etc/images/gnus/receipt.pbm: New file.
23824         * etc/images/gnus/toggle-subscription.pbm: New file.
23825         * etc/images/gnus/unimportant.pbm: New file.
23826         * etc/images/gud/all.pbm: New file.
23827         * etc/images/gud/rcont.pbm: New file.
23828         * etc/images/gud/recstart.pbm: New file.
23829         * etc/images/gud/recstop.pbm: New file.
23830         * etc/images/gud/rfinish.pbm: New file.
23831         * etc/images/gud/rnext.pbm: New file.
23832         * etc/images/gud/rnexti.pbm: New file.
23833         * etc/images/gud/rstep.pbm: New file.
23834         * etc/images/gud/rstepi.pbm: New file.
23835         * etc/images/gud/thread.pbm: New file.
23836         * etc/images/lock-broken.pbm: New file.
23837         * etc/images/lock-ok.pbm: New file.
23838         * etc/images/lock.pbm: New file.
23839         * etc/images/mail/copy.pbm: New file.
23840         * etc/images/mail/forward.pbm: New file.
23841         * etc/images/mail/not-spam.pbm: New file.
23842         * etc/images/mail/outbox.pbm: New file.
23843         * etc/images/mail/preview.pbm: New file.
23844         * etc/images/mail/save-draft.pbm: New file.
23845         * etc/images/mh-logo.pbm: New file.
23846         * etc/images/mpc/add.pbm: New file.
23847         * etc/images/mpc/ffwd.pbm: New file.
23848         * etc/images/mpc/next.pbm: New file.
23849         * etc/images/mpc/pause.pbm: New file.
23850         * etc/images/mpc/play.pbm: New file.
23851         * etc/images/mpc/prev.pbm: New file.
23852         * etc/images/mpc/rewind.pbm: New file.
23853         * etc/images/mpc/stop.pbm: New file.
23854         * etc/images/redo.pbm: New file.
23855         * etc/images/smilies/braindamaged.pbm: New file.
23856         * etc/images/smilies/cry.pbm: New file.
23857         * etc/images/smilies/dead.pbm: New file.
23858         * etc/images/smilies/evil.pbm: New file.
23859         * etc/images/smilies/forced.pbm: New file.
23860         * etc/images/smilies/grin.pbm: New file.
23861         * etc/images/smilies/indifferent.pbm: New file.
23862         * etc/images/sort-ascending.pbm: New file.
23863         * etc/images/sort-column-ascending.pbm: New file.
23864         * etc/images/sort-criteria.pbm: New file.
23865         * etc/images/sort-descending.pbm: New file.
23866         * etc/images/sort-row-ascending.pbm: New file.
23867         * etc/images/unchecked.pbm: New file.
23868         * etc/images/zoom-in.pbm: New file.
23869         * etc/images/README: Update instructions for PBM files.
23871         Add separator.pbm tool-bar image
23872         * etc/images/separator.pbm: New file.  Having it avoids the side
23873         effect of changing the tool-bar height when the default font's size
23874         changes and XPM image support is not available, due to the SPC
23875         characters that are left in the Lisp string used to display the tool
23876         bar, because there are no images to display instead of those SPC
23877         characters.
23879         Make show-paren-match face visible on mono-color displays
23880         * lisp/faces.el (show-paren-match): Use the underline face for
23881         mono-color displays.  (Bug#21481)
23883 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
23885         Don’t double-encode non-ASCII mail clipboard
23886         * lisp/mail/mailclient.el (mailclient-send-it):
23887         Also fix the case when mailclient-place-body-on-clipboard-flag
23888         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
23890 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
23892         Adapt file-notify-tests.el test cases
23893         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
23894         * src/inotify.c (Finotify_valid_p): Adapt docstring.
23895         * test/automated/file-notify-tests.el
23896         (file-notify-test03-autorevert)
23897         (file-notify-test04-file-validity)
23898         (file-notify-test04-file-validity-remote)
23899         (file-notify-test05-dir-validity)
23900         (file-notify-test05-dir-validity-remote): Adapt docstring.
23901         (file-notify-test04-file-validity): Let events arrive before
23902         calling final `file-notify-valid-p'.  Do not ignore errors.
23903         (file-notify-test05-dir-validity): Do not manipulate
23904         `temporary-file-directory', it isn't necessary.  Let events arrive
23905         before calling final `file-notify-valid-p'.  Do not ignore errors.
23907 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
23909         Don’t double-encode non-ASCII for mail client
23910         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
23911         Use RFC 6068’s list of unreserved characters.
23912         (mailclient-send-it): When encoding the body as a URL,
23913         first decode it as per Content-Type: and Content-Transfer-Encoding:,
23914         as URLs must use percent-encoded UTF-8 (Bug#21471).
23915         * doc/misc/url.texi (mailto): Update RFC number.
23917 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
23919         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
23921 2015-09-14  Alan Mackenzie  <acm@muc.de>
23923         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
23924         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
23925         `cadr/car'.
23927 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
23929         Clarify documentation of char-table extra slots
23930         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
23931         slot numbers are zero-based.  (Bug#21467)
23933 2015-09-14  Alan Mackenzie  <acm@muc.de>
23935         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
23936         Fixes bug#21449.
23937         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
23938         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
23939         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
23940         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
23941         Insert "\\|\\\\." into regexps which match symbols.
23943 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
23945         Improve the doc string of w32notify-valid-p
23946         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
23947         that removing a watch makes its object invalid.
23949 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
23951         Fix tests for file-notify-valid-p
23952         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
23953         Use delete-directory to delete file-notify--test-tmpfile if it is
23954         a directory.  Likewise for file-notify--test-tmpfile1.
23955         (file-notify-test04-file-validity)
23956         (file-notify-test05-dir-validity): Delete the parent directory of
23957         the test.  Ignore errors when cleaning up after the test.
23959 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
23961         Report file-notify-error in w32notify.c
23962         * src/w32notify.c (report_w32notify_error): New function.
23963         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
23964         errors, instead of calling report_file_error.  (Bug#21432)
23966         Implement w32notify-valid-p
23967         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
23968         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
23969         'identity'.
23971 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
23973         Test file-notify-valid-p
23974         * test/automated/file-notify-tests.el
23975         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
23976         New tests.
23978 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
23980         Fix markup in ELisp manual
23981         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
23982         of the 'alpha' parameter value.  (Bug#21470)
23984 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
23986         Introduce `file-notify-valid-p'
23987         * lisp/filenotify.el (file-notify-valid-p): New defun.
23988         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
23989         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
23990         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
23991         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
23992         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
23993         <file-notify-valid-p>: Add handler.
23994         * lisp/net/tramp.el (tramp-file-name-for-operation):
23995         Add `file-notify-valid-p'.
23996         (tramp-handle-file-notify-valid-p): New defun.
23997         * src/inotify.c (Finotify_valid_p): New defun.
23998         (syms_of_inotify): Declare Sinotify_valid_p.
24000 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
24002         Port Unicode char detection to FreeBSD+svgalib
24003         Problem reported by Ashish SHUKLA in:
24004         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
24005         * configure.ac: Check for struct unipair.unicode instead of for
24006         <linux/kd.h>, since that’s more specific to what the code
24007         actually needs.
24008         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
24010         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
24012 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
24014         Fix vertical cursor motion across overlay strings with newlines
24015         * src/indent.c (Fvertical_motion): Don't leave point in the middle
24016         of an overlay string with newlines, as that will position the
24017         cursor after the string at whatever column is there.  (Bug#21468)
24019 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
24021         Fix tests in file-notify-tests.el
24022         * test/automated/file-notify-tests.el: Remove Tramp declarations.
24023         (file-notify-test00-availability): Print remote command w/o Tramp
24024         internal functions.
24025         (file-notify-test02-events, file-notify-test02-events-remote):
24026         Adapt docstring.
24027         (file-notify-test03-autorevert): Use `format-message' when
24028         inspecting *Messages* buffer.
24030 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
24032         Bind inhibit-modification-hooks rather than a/b-c-f
24033         * lisp/wid-edit.el (widget-editable-list-insert-before)
24034         (widget-editable-list-delete-at):
24035         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
24036         (cperl-font-lock-unfontify-region-function):
24037         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
24038         * lisp/obsolete/longlines.el (longlines-mode):
24039         * lisp/obsolete/fast-lock.el (save-buffer-state):
24040         * lisp/mouse.el (mouse-save-then-kill-delete-region):
24041         * lisp/gnus/message.el (message-hide-headers):
24042         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
24043         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
24044         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
24045         than after/before-change-functions to nil.
24047 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
24049         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
24050         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
24051         the buffers, even if the forced redisplay is interrupted.
24053         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
24055         Merge syntax-propertize--done and parse-sexp-propertize-done
24056         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
24057         (syntax-propertize): Set syntax-propertize--done even if
24058         syntax-propertize-function is nil.  Avoid recursive invocations.
24059         (syntax-propertize-chunks): New var.
24060         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
24061         Simplify.
24062         (parse-sexp-propertize-function): Don't set any more.
24063         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
24064         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
24065         Call Qinternal__syntax_propertize instead of
24066         Vparse_sexp_propertize_function.  Truncate e_property if needed.
24067         (update_syntax_table_forward): Streamline.
24068         (syms_of_syntax): Define Qinternal__syntax_propertize.
24069         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
24071 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
24073         Prefer straight quoting in some text files
24074         Mostly this just changes ` to ' in static text.  Some exceptions:
24075         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
24076         typically does that now.
24077         * admin/quick-install-emacs (TRY, top level):
24078         Use straight quoting in diagnostics.
24079         * src/README: Fix working-directory confusion.
24081         * CONTRIBUTE: Move send-email here from git-workflow.
24083 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
24085         Improve file notifications in Tramp
24086         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
24087         Set proper events to watch for.
24088         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
24089         watched events.
24091 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
24093         Fix NS build with --enable-checking='glyphs'
24094         * src/nsfns.m (unwind_create_frame): Make the preprocessor
24095         conditionals for referencing 'dpyinfo' consistent throughout the
24096         function.  (Bug#21426)
24098 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
24100         Add seq-find
24101         This function is similar to `seq-some' but returns the found element.
24102         In the cases where nil can be the found element, a sentinel optional
24103         argument can be provided to avoid ambiguities.
24104         * lisp/emacs-lisp/seq.el (seq-find): New function.
24105         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
24106         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
24107         seq-find.
24109 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
24111         Document file-notify--test-with-events.
24112         * test/automated/file-notify-tests.el (file-notify--test-with-events):
24113         Add docstring.
24115 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
24117         Report used native library in file-notify-tests.el
24118         * test/automated/file-notify-tests.el
24119         (tramp-get-remote-gvfs-monitor-dir)
24120         (tramp-get-remote-inotifywait): Declare them.
24121         (file-notify-test00-availability): Print used native library.
24123 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
24125         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
24126         (mpc-file-local-copy): Check for absolute path.  Check more config
24127         locations.
24129 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
24131         Improve documentation of categories
24132         * doc/lispref/syntax.texi (Categories): Clarify the example of
24133         using define-category and modify-category-entry.  (Bug#21448)
24135 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
24137         Revert some stray curved quotes I missed earlier
24138         Problem reported by David Kastrup in:
24139         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
24140         * lisp/international/mule-cmds.el (leim-list-header):
24141         Use format-message with an ASCII-only format.
24143         Prefer NUMBERP to spelling it out
24144         * src/editfns.c (styled_format):
24145         * src/frame.h (NUMVAL):
24146         * src/image.c (parse_image_spec):
24147         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
24148         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
24149         * src/process.c (Fsignal_process):
24150         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
24151         * src/xfaces.c (check_lface_attrs):
24152         * src/xselect.c (x_fill_property_data, x_send_client_event):
24153         Use NUMBERP rather than INTEGERP || FLOATP.
24155 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
24157         Improve file-notify-tests
24158         * test/automated/file-notify-tests.el: Use lexical-binding.
24159         (file-notify--test-cleanup): New function.
24160         (file-notify-test00-availability, file-notify-test01-add-watch)
24161         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
24162         (file-notify--test-with-events): New macro.
24163         (file-notify-test02-events): Use it.
24165 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
24167         Add patch-sending instructions to git-workflow
24168         From a suggestion by Mitchel Humpherys in:
24169         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
24170         * admin/notes/git-workflow (Sending patches): New section.
24172         Port to GIFLIB 5.0.6 and later
24173         Problem reported by Mitchel Humpherys in:
24174         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
24175         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
24176         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
24177         (gif_load) [HAVE_GIF]: Use it.
24179 2015-09-10  Glenn Morris  <rgm@gnu.org>
24181         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
24183 2015-09-09  Glenn Morris  <rgm@gnu.org>
24185         * test/automated/file-notify-tests.el (file-notify-test02-events):
24186         Fix recent change.
24188 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
24190         Refix movemail GCC pacification
24191         Problem reported by Ken Brown in:
24192         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
24193         * lib-src/movemail.c (main): Fix previous change.
24195 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24197         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
24198         Mark unused vars with underscore.
24200         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
24201         (parse_sexp_propertize): ...from here.
24203         * lisp/filenotify.el: Use lexical-binding
24204         (file-notify-add-watch): Avoid add-to-list.
24206 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
24208         Start checking event types in file-notify tests
24209         * test/automated/file-notify-tests.el (file-notify--test-events):
24210         New variable.
24211         (file-notify--test-event-handler): Append received event to
24212         file-notify--test-events for later analysis.
24213         (file-notify-test02-events): Assert that the expected notifications have
24214         arrived in the expected order.
24216 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
24218         Merge from gnulib and texinfo
24219         This incorporates:
24220         2015-08-03 Improve port of stdalign to C++11
24221         * lib/stdalign.in.h: Copy from gnulib.
24222         * doc/misc/texinfo.tex: Copy from texinfo.
24224 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24226         Make syntax.c call syntax-propertize on demand
24227         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
24228         (parse-sexp-propertize-function): Use it.
24229         (syntax-propertize): Disable parse-sexp-propertize-function.
24230         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
24231         New functions.
24232         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
24233         `parse-sexp-propertize-function'.
24234         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
24235         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
24236         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
24237         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
24238         Don't assume `point' is set.
24240 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
24242         Fix indentation of an @example in ELisp manual
24243         * doc/lispref/syntax.texi (Categories): Untabify the example.
24244         (Bug#21448)
24246 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
24248         Define internal-char-font even if --without-x
24249         The function is used now even in non-graphical environments.
24250         Problem reported by Glenn Morris in:
24251         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
24252         * src/font.c (Finternal_char_font): Move here ...
24253         * src/fontset.c (Finternal_char_font): ... from here.
24255 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
24257         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
24258         Remove warning.
24260 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
24262         Fix display of complex local data types in GDB-MI
24263         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
24264         variable has no value, display "<complex data type>" as a
24265         placeholder, instead of a confusing "nil".  (Bug#21438)
24267 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
24269         Remove redundant redefinition of seq-drop-while from seq.el
24270         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
24272 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
24274         * lisp/emacs-lisp/package.el (package--ensure-init-file):
24275         More robust check for `package-initialize' calls in init file.
24276         This function accepts an optional argument, but calls passing
24277         an argument would not have been detected.
24279 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
24281         Port movemail to RHEL 6 with --enable-gcc-warnings
24282         * lib-src/movemail.c (main): Declare local only if needed.
24284         Port recent Linux console changes to RHEL 6
24285         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
24287         Improvements for curved quotes on Linux consule
24288         This should help Emacs work better out-of-the-box on Linux consoles,
24289         which have only limited support for displaying Unicode characters.
24290         Also, undo the recent change that caused text-quoting-style to
24291         affect quote display on terminals, so that the two features are
24292         independent.  See Alan Mackenzie in:
24293         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
24294         Finally, add a style parameter to startup--setup-quote-display,
24295         so that this function can also be invoked after startup, with
24296         different styles depending on user preference at the time.
24297         * configure.ac: Check for linux/kd.h header.
24298         * doc/emacs/display.texi (Text Display): Document quote display.
24299         * doc/lispref/display.texi (Active Display Table):
24300         * etc/NEWS:
24301         * lisp/startup.el (startup--setup-quote-display, command-line):
24302         text-quoting-style no longer affects quote display.
24303         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
24304         * lisp/international/mule-util.el (char-displayable-p):
24305         * lisp/startup.el (startup--setup-quote-display):
24306         On a text terminal supporting glyph codes, use the reported
24307         glyph codes instead of the terminal coding system, as this
24308         is more accurate on the Linux console.
24309         * lisp/startup.el (startup--setup-quote-display):
24310         New optional arg STYLE.
24311         * src/fontset.c (Finternal_char_font):
24312         Report glyph codes for a text terminal, if they are available.
24313         Currently this is supported only for the Linux console.
24314         * src/termhooks.h (struct terminal): New member glyph-code-table.
24315         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
24316         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
24317         (terminal_glyph_code): New function.
24319 2015-09-08  Juri Linkov  <juri@linkov.net>
24321         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
24322         underline.  (Bug#21433)
24324 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
24326         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
24328 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
24330         Fix double-reporting of rename events with inotify
24331         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
24332         of rename events with inotify (bug#21435).
24334 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
24336         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
24337         (tetris-mode-map): Use it.
24339 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
24341         Remove a few simple cases of global redisplay
24342         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
24343         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
24344         rather than returning a "resized_p" boolean.
24345         (redisplay_internal): Adjust call accordingly.
24346         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
24347         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
24348         tracking of this undesirable situation.
24350         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
24351         * src/process.c (status_notify): Only set the update_mode_line on the
24352         relevant buffers rather than setting it globally.
24354 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24356         * lisp/electric.el (electric-quote-post-self-insert-function):
24357         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
24358         (electric-quote-mode): Activate everywhere in message-mode.
24360 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
24362         Go back to grave quoting in source-code docstrings etc.
24363         This reverts almost all my recent changes to use curved quotes
24364         in docstrings and/or strings used for error diagnostics.
24365         There are a few exceptions, e.g., Bahá’í proper names.
24366         * admin/unidata/unidata-gen.el (unidata-gen-table):
24367         * lisp/abbrev.el (expand-region-abbrevs):
24368         * lisp/align.el (align-region):
24369         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
24370         (outlineify-sticky):
24371         * lisp/apropos.el (apropos-library):
24372         * lisp/bookmark.el (bookmark-default-annotation-text):
24373         * lisp/button.el (button-category-symbol, button-put)
24374         (make-text-button):
24375         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
24376         * lisp/calc/calc-embed.el (calc-do-embedded):
24377         * lisp/calc/calc-ext.el (calc-user-function-list):
24378         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
24379         * lisp/calc/calc-help.el (calc-describe-key)
24380         (calc-describe-thing, calc-full-help):
24381         * lisp/calc/calc-lang.el (calc-c-language)
24382         (math-parse-fortran-vector-end, math-parse-tex-sum)
24383         (math-parse-eqn-matrix, math-parse-eqn-prime)
24384         (calc-yacas-language, calc-maxima-language, calc-giac-language)
24385         (math-read-giac-subscr, math-read-math-subscr)
24386         (math-read-big-rec, math-read-big-balance):
24387         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
24388         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
24389         (calc-auto-recompute):
24390         * lisp/calc/calc-prog.el (calc-fix-token-name)
24391         (calc-read-parse-table-part, calc-user-define-invocation)
24392         (math-do-arg-check):
24393         * lisp/calc/calc-store.el (calc-edit-variable):
24394         * lisp/calc/calc-units.el (math-build-units-table-buffer):
24395         * lisp/calc/calc-vec.el (math-read-brackets):
24396         * lisp/calc/calc-yank.el (calc-edit-mode):
24397         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
24398         * lisp/calendar/appt.el (appt-display-message):
24399         * lisp/calendar/diary-lib.el (diary-check-diary-file)
24400         (diary-mail-entries, diary-from-outlook):
24401         * lisp/calendar/icalendar.el (icalendar-export-region)
24402         (icalendar--convert-float-to-ical)
24403         (icalendar--convert-date-to-ical)
24404         (icalendar--convert-ical-to-diary)
24405         (icalendar--convert-recurring-to-diary)
24406         (icalendar--add-diary-entry):
24407         * lisp/calendar/time-date.el (format-seconds):
24408         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
24409         (timeclock-make-hours-explicit, timeclock-log-data):
24410         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
24411         (todo-item-mark, todo-check-format)
24412         (todo-insert-item--next-param, todo-edit-item--next-key)
24413         (todo-mode):
24414         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
24415         * lisp/cedet/mode-local.el (describe-mode-local-overload)
24416         (mode-local-print-binding, mode-local-describe-bindings-2):
24417         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
24418         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
24419         * lisp/cus-start.el (standard):
24420         * lisp/cus-theme.el (describe-theme-1):
24421         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
24422         (custom--sort-vars-1, load-theme):
24423         * lisp/descr-text.el (describe-text-properties-1, describe-char):
24424         * lisp/dired-x.el (dired-do-run-mail):
24425         * lisp/dired.el (dired-log):
24426         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
24427         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
24428         (ad-disable-advice, ad-remove-advice, ad-set-argument)
24429         (ad-set-arguments, ad--defalias-fset, ad-activate)
24430         (ad-deactivate):
24431         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
24432         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
24433         (byte-optimize-while, byte-optimize-apply):
24434         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
24435         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
24436         (byte-compile-log-file, byte-compile-format-warn)
24437         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
24438         (byte-compile-cl-warn)
24439         (byte-compile-warn-about-unresolved-functions)
24440         (byte-compile-file, byte-compile--declare-var)
24441         (byte-compile-file-form-defmumble, byte-compile-form)
24442         (byte-compile-normal-call, byte-compile-check-variable)
24443         (byte-compile-variable-ref, byte-compile-variable-set)
24444         (byte-compile-subr-wrong-args, byte-compile-setq-default)
24445         (byte-compile-negation-optimizer)
24446         (byte-compile-condition-case--old)
24447         (byte-compile-condition-case--new, byte-compile-save-excursion)
24448         (byte-compile-defvar, byte-compile-autoload)
24449         (byte-compile-lambda-form)
24450         (byte-compile-make-variable-buffer-local, display-call-tree)
24451         (batch-byte-compile):
24452         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
24453         * lisp/emacs-lisp/chart.el (chart-space-usage):
24454         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
24455         (check-declare-warn, check-declare-file)
24456         (check-declare-directory):
24457         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
24458         (checkdoc-message-text-engine):
24459         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
24460         (cl--describe-class):
24461         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
24462         (cl--generic-describe, cl-generic-generalizers):
24463         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
24464         (cl-symbol-macrolet):
24465         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
24466         * lisp/emacs-lisp/copyright.el (copyright)
24467         (copyright-update-directory):
24468         * lisp/emacs-lisp/edebug.el (edebug-read-list):
24469         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
24470         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
24471         (eieio-oref):
24472         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
24473         * lisp/emacs-lisp/eieio-speedbar.el:
24474         (eieio-speedbar-child-make-tag-lines)
24475         (eieio-speedbar-child-description):
24476         * lisp/emacs-lisp/eieio.el (defclass, change-class):
24477         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
24478         (elint-init-form, elint-check-defalias-form)
24479         (elint-check-let-form):
24480         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
24481         (ert-results-pop-to-backtrace-for-test-at-point)
24482         (ert-results-pop-to-messages-for-test-at-point)
24483         (ert-results-pop-to-should-forms-for-test-at-point)
24484         (ert-describe-test):
24485         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
24486         (find-function-library):
24487         * lisp/emacs-lisp/generator.el (iter-yield):
24488         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
24489         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
24490         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
24491         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
24492         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
24493         (advice--make, define-advice):
24494         * lisp/emacs-lisp/package-x.el (package-upload-file):
24495         * lisp/emacs-lisp/package.el (package-version-join)
24496         (package-disabled-p, package-activate-1, package-activate)
24497         (package--download-one-archive)
24498         (package--download-and-read-archives)
24499         (package-compute-transaction, package-install-from-archive)
24500         (package-install, package-install-selected-packages)
24501         (package-delete, package-autoremove, describe-package-1)
24502         (package-install-button-action, package-delete-button-action)
24503         (package-menu-hide-package, package-menu--list-to-prompt)
24504         (package-menu--perform-transaction)
24505         (package-menu--find-and-notify-upgrades):
24506         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
24507         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
24508         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
24509         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
24510         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
24511         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
24512         (rx-form):
24513         * lisp/emacs-lisp/smie.el (smie-config-save):
24514         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
24515         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
24516         * lisp/emacs-lisp/testcover.el (testcover-1value):
24517         * lisp/emacs-lisp/timer.el (timer-event-handler):
24518         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
24519         (viper-toggle-search-style, viper-kill-buffer)
24520         (viper-brac-function):
24521         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
24522         * lisp/env.el (setenv):
24523         * lisp/erc/erc-button.el (erc-nick-popup):
24524         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
24525         * lisp/eshell/em-dirs.el (eshell/cd):
24526         * lisp/eshell/em-glob.el (eshell-glob-regexp)
24527         (eshell-glob-entries):
24528         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
24529         * lisp/eshell/esh-opt.el (eshell-show-usage):
24530         * lisp/facemenu.el (facemenu-add-new-face)
24531         (facemenu-add-new-color):
24532         * lisp/faces.el (read-face-name, read-face-font, describe-face)
24533         (x-resolve-font-name):
24534         * lisp/files-x.el (modify-file-local-variable):
24535         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
24536         (set-auto-mode, hack-one-local-variable--obsolete)
24537         (dir-locals-set-directory-class, write-file, basic-save-buffer)
24538         (delete-directory, copy-directory, recover-session)
24539         (recover-session-finish, insert-directory)
24540         (file-modes-char-to-who, file-modes-symbolic-to-number)
24541         (move-file-to-trash):
24542         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
24543         * lisp/find-cmd.el (find-generic, find-to-string):
24544         * lisp/finder.el (finder-commentary):
24545         * lisp/font-lock.el (font-lock-fontify-buffer):
24546         * lisp/format.el (format-write-file, format-find-file)
24547         (format-insert-file):
24548         * lisp/frame.el (get-device-terminal, select-frame-by-name):
24549         * lisp/fringe.el (fringe--check-style):
24550         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
24551         * lisp/help-fns.el (help-fns--key-bindings)
24552         (help-fns--compiler-macro, help-fns--parent-mode)
24553         (help-fns--obsolete, help-fns--interactive-only)
24554         (describe-function-1, describe-variable):
24555         * lisp/help.el (describe-mode)
24556         (describe-minor-mode-from-indicator):
24557         * lisp/image.el (image-type):
24558         * lisp/international/ccl.el (ccl-dump):
24559         * lisp/international/fontset.el (x-must-resolve-font-name):
24560         * lisp/international/mule-cmds.el (prefer-coding-system)
24561         (select-safe-coding-system-interactively)
24562         (select-safe-coding-system, activate-input-method)
24563         (toggle-input-method, describe-current-input-method)
24564         (describe-language-environment):
24565         * lisp/international/mule-conf.el (code-offset):
24566         * lisp/international/mule-diag.el (describe-character-set)
24567         (list-input-methods-1):
24568         * lisp/mail/feedmail.el (feedmail-run-the-queue):
24569         * lisp/mouse.el (minor-mode-menu-from-indicator):
24570         * lisp/mpc.el (mpc-playlist-rename):
24571         * lisp/msb.el (msb--choose-menu):
24572         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
24573         * lisp/net/imap.el (imap-interactive-login):
24574         * lisp/net/mairix.el (mairix-widget-create-query):
24575         * lisp/net/newst-backend.el (newsticker--sentinel-work):
24576         * lisp/net/newst-treeview.el (newsticker--treeview-load):
24577         * lisp/net/rlogin.el (rlogin):
24578         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
24579         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
24580         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
24581         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
24582         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
24583         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
24584         (org-babel-goto-named-result):
24585         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
24586         * lisp/org/ob-ref.el (org-babel-ref-resolve):
24587         * lisp/org/org-agenda.el (org-agenda-prepare):
24588         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
24589         (org-clock-resolve):
24590         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
24591         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
24592         * lisp/org/org-habit.el (org-habit-parse-todo):
24593         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
24594         (org-mouse-context-menu):
24595         * lisp/org/org-table.el (org-table-edit-formulas):
24596         * lisp/org/ox.el (org-export-async-start):
24597         * lisp/proced.el (proced-log):
24598         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
24599         (ada-check-matching-start, ada-goto-matching-start):
24600         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
24601         * lisp/progmodes/ada-xref.el (ada-find-executable):
24602         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
24603         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
24604         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
24605         (flymake-start-syntax-check-process):
24606         * lisp/progmodes/python.el (python-shell-get-process-or-error)
24607         (python-define-auxiliary-skeleton):
24608         * lisp/progmodes/sql.el (sql-comint):
24609         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
24610         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
24611         * lisp/recentf.el (recentf-open-files):
24612         * lisp/replace.el (query-replace-read-from)
24613         (occur-after-change-function, occur-1):
24614         * lisp/scroll-bar.el (scroll-bar-columns):
24615         * lisp/server.el (server-get-auth-key):
24616         * lisp/simple.el (execute-extended-command)
24617         (undo-outer-limit-truncate, list-processes--refresh)
24618         (compose-mail, set-variable, choose-completion-string)
24619         (define-alternatives):
24620         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
24621         (command-line-1):
24622         * lisp/subr.el (noreturn, define-error, add-to-list)
24623         (read-char-choice, version-to-list):
24624         * lisp/term/common-win.el (x-handle-xrm-switch)
24625         (x-handle-name-switch, x-handle-args):
24626         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
24627         * lisp/textmodes/reftex-ref.el (reftex-label):
24628         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
24629         * lisp/textmodes/two-column.el (2C-split):
24630         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
24631         (tutorial--find-changed-keys):
24632         * lisp/type-break.el (type-break-noninteractive-query):
24633         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
24634         (wdired-do-perm-changes):
24635         * lisp/whitespace.el (whitespace-report-region):
24636         Prefer grave quoting in source-code strings used to generate help
24637         and diagnostics.
24638         * lisp/faces.el (face-documentation):
24639         No need to convert quotes, since the result is a docstring.
24640         * lisp/info.el (Info-virtual-index-find-node)
24641         (Info-virtual-index, info-apropos):
24642         Simplify by generating only curved quotes, since info files are
24643         typically that ways nowadays anyway.
24644         * lisp/international/mule-diag.el (list-input-methods):
24645         Don’t assume text quoting style is curved.
24646         * lisp/org/org-bibtex.el (org-bibtex-fields):
24647         Revert my recent changes, going back to the old quoting style.
24649 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
24651         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
24652         (package--autoloads-file-name)
24653         (package--activate-autoloads-and-load-path): New function.
24654         (package-activate-1): Delegate autoloading and load-path
24655         configuration to `package--activate-autoloads-and-load-path'.
24656         (package--compile): Before compilation, call
24657         `package--activate-autoloads-and-load-path' instead of
24658         `package-activate-1'.
24660 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
24662         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
24664 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
24666         Fix deletion of symlinks to directories on MS-Windows
24667         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
24668         symlink to a directory, try again with 'rmdir'.
24669         (is_symlink): If the argument is a symlink to a directory, set a
24670         bit in the return value to indicate that fact.
24672 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
24674         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
24675         When `package-initialize' is called as part of loading the init file,
24676         the user probably doesn't want it to be called again afterwards.
24677         In this situation, `package-initialize' now sets
24678         `package-enable-at-startup' to nil to prevent that.  The user can have
24679         the old behavior by setting this variable to t after the call to
24680         `package-initialize'.  (Bug#21423)
24681         * doc/emacs/package.texi (Package Installation): Document it.
24682         * doc/lispref/package.texi (Packaging Basics): Document it.
24683         * etc/NEWS: Document it.
24685 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
24687         Bump version of ntlm.el to 2.00
24688         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
24689         Add comm keyword.
24691 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
24693         * doc/misc/gnus.texi (Mail Source Specifiers):
24694         Allow :mailbox to be a list.
24696 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
24698         * lisp/progmodes/etags.el (etags-tags-completion-table):
24699         Allow even one non-regular character before the implicit tag name.
24700         Reported at http://emacs.stackexchange.com/questions/15269/.
24702 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
24704         Add support for NTLMv2 authentication
24705         * lisp/net/ntlm.el (ntlm): New customization group.
24706         (ntlm-compatibility-level): New defcustom.
24707         (ntlm-compute-timestamp): New function.
24708         (ntlm-generate-nonce): Likewise.
24709         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
24711 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
24713         * lisp/emacs-lisp/package.el: Rename custom faces.
24714         All of the recently introduced faces, like `package-name-face', have
24715         been renamed to no end in `-face' to comply with the convention
24716         described in (info "(elisp) Defining Faces").
24717         (package-name, package-description)
24718         (package-status-built-in, package-status-external)
24719         (package-status-available, package-status-new)
24720         (package-status-held, package-status-disabled)
24721         (package-status-installed, package-status-dependency)
24722         (package-status-unsigned, package-status-incompat)
24723         (package-status-avail-obso): New faces.
24724         (package-menu--print-info-simple): Use them.
24726 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
24728         mail-source.el: Make the imap mail-source's :mailbox handle a list
24729         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
24730         Allow :mailbox to be  a list.
24732 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
24734         nnimap.el: Handle nil arg to nnimap-request-group
24735         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
24736         This arg isn't always passed in, check it's not nil before making it
24737         into a list.  The active arg will also be nil if the group is new,
24738         check for that.
24740 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
24742         File notifications: Support renaming over directory boundaries
24743         * lisp/filenotify.el (file-notify-handle-event):
24744         (file-notify--pending-event): Adapt docstring.
24745         (file-notify--descriptor, file-notify-callback): Reimplement in
24746         order to support renaming over directory boundaries.
24747         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
24748         * doc/lispref/os.texi (File Notifications): Remove limitation of
24749         file renaming to the same directory.
24751 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
24753         Spelling fix (Bug#21420)
24755 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
24757         Improve the semantic of map-some
24758         Update map-some to return the returned by the predicate, similar to
24759         seq-some.
24760         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
24761           return value of the predicate.
24762         * test/automated/map-tests.el (test-map-some): Update the test to check
24763           for non-nil values only.
24765         Rename map-contains-key-p and map-some-p
24766         Remove the "-p" suffix from both function names.
24767         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
24768           Rename the functions.
24769         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
24770           Update both test functions.
24772         Improve the semantic of seq-some
24773         Update seq-some to return non-nil if the predicate returns non-nil for
24774         any element of the seq, in which case the returned value is the one
24775         returned by the predicate.
24776         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
24777           docstring.
24778         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
24779         * doc/lispref/sequences.texi (Sequence Functions): Update the
24780           documentation for seq-some.
24782         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
24783         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
24784           without the "-p" prefix.
24785         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
24786           the tests accordingly.
24787         * doc/lispref/sequences.texi (Sequence Functions): Update the
24788           documentation for seq.el.
24790 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
24792         text-quoting-style for usage of fn names with ‘’
24793         * lisp/help.el (help--docstring-quote): Don’t assume
24794         text-quoting-style is ‘curve’ when generating usage strings for
24795         functions whose names contain curved quotes.
24797 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
24799         Fix fix for describe-function keybinding confusion
24800         This fixes a bug introduced by the previous patch.
24801         * lisp/help-fns.el (help-fns--signature):
24802         Last arg of help-fns--signature is now a buffer, or nil if a
24803         raw signature is wanted.  All callers changed.
24804         (describe-function-1): Use this to do the right thing with signatures.
24806 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
24808         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
24810         Use PAT rather than UPAT in pcase macros
24811         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
24812         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
24813           than UPAT.
24815 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
24817         Fix describe-function keybinding confusion
24818         * lisp/help-fns.el (describe-function-1): Compute signature
24819         in the original buffer, not in standard-output, so that
24820         substitute-command-keys uses the proper keybindings.
24821         This fixes Bug#21412, introduced in commit
24822         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
24824 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
24826         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
24828 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
24830         Avoid read error messages from 'inotify'
24831         * src/process.c (wait_reading_process_output): Add a
24832         'tls_available' set and manipulate it instead of 'Available' when
24833         checking TLS inputs.  Assign the value to 'Available' only if we
24834         find any TLS data waiting to be read.  This avoids error messages
24835         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
24837 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
24839         Avoid errors in thing-at-point with 2nd argument non-nil
24840         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
24841         sequences.  (Bug#21391)
24843 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
24845         Fix segfaults due to using a stale face ID
24846         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
24847         (display_echo_area_1, redisplay_internal): Call it to avoid
24848         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
24849         faces, which could case a segfault if the frame's face cache was
24850         freed since the last redisplay.  (Bug#21394)
24851         * src/xfaces.c (free_realized_faces):
24852         Call forget_escape_and_glyphless_faces.
24853         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
24855 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
24857         Fix minor problems with " in manual
24859 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
24861         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
24862         multi-hop files.
24864 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
24866         Support automated ‘make check’ in non-C locale
24867         This lets the builder optionally test Emacs behavior in other locales.
24868         The C locale is still the default for tests.
24869         * test/automated/Makefile.in (TEST_LOCALE): New macro.
24870         (emacs): Use it.
24871         * test/automated/flymake-tests.el (flymake-tests--current-face):
24872         Use C locale for subprocesses so that tests behave as expected.
24873         * test/automated/python-tests.el:
24874         (python-shell-prompt-validate-regexps-1)
24875         (python-shell-prompt-validate-regexps-2)
24876         (python-shell-prompt-validate-regexps-3)
24877         (python-shell-prompt-validate-regexps-4)
24878         (python-shell-prompt-validate-regexps-5)
24879         (python-shell-prompt-validate-regexps-6)
24880         (python-shell-prompt-set-calculated-regexps-1):
24881         Adjust expected output to match locale.
24882         * test/automated/tildify-tests.el (tildify-test--test)
24883         (tildify-space-test--test, tildify-space-undo-test--test):
24884         This test assumes UTF-8 encoding.
24886 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
24888         Fix some more docstring etc. quoting problems
24889         Mostly these fixes prevent the transliteration of apostrophes
24890         that should stay apostrophes.  Also, prefer curved quotes in
24891         Bahá’í proper names, as that’s the preferred Bahá’í style and
24892         these names are chock-full of non-ASCII characters anyway.
24893         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
24894         (eieio-defclass-internal):
24895         * lisp/emacs-lisp/eieio.el (defclass):
24896         * lisp/hi-lock.el (hi-lock-mode):
24897         Don’t transliterate Lisp apostrophes when generating a
24898         doc string or diagnostic.
24899         * lisp/international/mule-diag.el (list-coding-systems-1):
24900         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
24901         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
24902         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
24903         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
24904         Substitute quotes before putting them in the help buffer.
24906 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
24908         Re-add the notion of echo_prompt lost in the translation
24909         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
24910         echo_prompt which contains the actual string.  Update all uses.
24911         * src/keyboard.c (kset_echo_prompt): New function.
24912         (echo_update): Add echo_prompt at the very beginning.
24913         (read_char): Remove workaround for bug#19875, not needed any more.
24914         (read_key_sequence): Set echo_prompt rather than echo_string
24915         (bug#21403).
24916         (mark_kboards): Mark echo_prompt.
24918         Fix disassembly of non-compiled lexical functions (bug#21377)
24919         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
24920         * lisp/emacs-lisp/disass.el: Use lexical-binding.
24921         (disassemble): Recognize `closure's as well.
24922         (disassemble-internal): Use indirect-function and
24923         help-function-arglist, and accept `closure's.
24924         (disassemble-internal): Use interactive-form.
24925         (disassemble-1): Use functionp.
24927         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
24928         Don't compose inside verbatim blocks!
24930 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
24932         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
24933         (bug#19441).
24935         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
24937 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
24939         vc-git-mode-line-string: Explicitly re-apply the face
24940         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
24941         the face (bug#21404).
24943 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
24945         Treat initial-scratch-message as a doc string
24946         * doc/emacs/building.texi (Lisp Interaction):
24947         * doc/lispref/os.texi (Startup Summary):
24948         * etc/NEWS: Document this.
24949         * lisp/startup.el (initial-scratch-message):
24950         Look up find-file’s key rather than hardcoding it.
24951         (command-line-1): Substitute the doc string.
24952         This also substitutes the quotes, which will help test display
24953         quoting at startup.
24955         Fix describe-char bug with glyphs on terminals
24956         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
24957         buffers too, so don’t treat them differently from graphic displays.
24958         Without this fix, describe-char would throw an error on a terminal
24959         if given a glyph with a non-default face.
24961         Follow text-quoting-style in display table init
24962         This attempts to fix a problem reported by Alan Mackenzie in:
24963         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
24964         * doc/lispref/display.texi (Active Display Table):
24965         Mention how text-quoting-style affects it.
24966         * doc/lispref/help.texi (Keys in Documentation):
24967         Say how to set text-quoting-style in ~/.emacs.
24968         * etc/NEWS: Document the change.
24969         * lisp/startup.el (startup--setup-quote-display):
24970         Follow user preference if text-quoting-style is set.
24971         (command-line): Setup quote display again if user expresses
24972         a preference in .emacs.
24974 2015-09-02  K. Handa  <handa@gnu.org>
24976         Fix typo
24977         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
24978         -> OTF_positioning_type_components_mask.
24980         Fix previous change
24981         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
24982         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
24984 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
24986         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
24987         Rename from vc-find-file-hook and make interactive.
24988         (vc-find-file-hook): Redefine as obsolete alias.
24990 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
24992         Escape ` and ' in doc
24993         Escape apostrophes and grave accents in docstrings if they are
24994         are supposed to stand for themselves and are not quotes.  Remove
24995         apostrophes from docstring examples like ‘'(calendar-nth-named-day
24996         -1 0 10 year)’ that confuse source code with data.  Do some other
24997         minor docstring fixups as well, e.g., insert a missing close quote.
24999 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
25001         Generalize the prefix-command machinery of C-u
25002         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
25003         (prefix-command-preserve-state-hook): New hooks.
25004         (internal-echo-keystrokes-prefix): New function.
25005         (prefix-command--needs-update, prefix-command--last-echo): New vars.
25006         (prefix-command-update, prefix-command-preserve): New functions.
25007         (reset-this-command-lengths): New compatibility definition.
25008         (universal-argument--mode): Call prefix-command-update.
25009         (universal-argument, universal-argument-more, negative-argument)
25010         (digit-argument): Call prefix-command-preserve-state.
25011         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
25012         the "prefix argument" to echo.
25013         (this_command_key_count_reset, before_command_key_count)
25014         (before_command_echo_length): Delete variables.
25015         (echo_add_key): Always add a space.
25016         (echo_char): Remove.
25017         (echo_dash): Don't give up when this_command_key_count is 0, since that
25018         is now the case after a prefix command.
25019         (echo_update): New function, extracted from echo_now.
25020         (echo_now): Use it.
25021         (add_command_key, read_char, record_menu_key): Remove old disabled code.
25022         (command_loop_1): Don't refrain from pushing an undo boundary when
25023         prefix-arg is set.  Remove other prefix-arg special case, now handled
25024         directly in the prefix commands instead.  But call echo_now if there's
25025         a prefix state to echo.
25026         (read_char, record_menu_key): Use echo_update instead of echo_char.
25027         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
25028         (Freset_this_command_lengths): Delete function.
25029         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
25030         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
25031         * lisp/simple.el: Use those new hooks for C-u.
25032         (universal-argument--description): New function.
25033         (prefix-command-echo-keystrokes-functions): Use it.
25034         (universal-argument--preserve): New function.
25035         (prefix-command-preserve-state-hook): Use it.
25036         (command-execute): Call prefix-command-update if needed.
25037         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
25038         (kmacro-step-edit-prefix-index): Delete variables.
25039         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
25040         support for prefix arg commands.
25041         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
25042         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
25043         (cua--shift-control-prefix): Use prefix-command-preserve-state.
25044         Remove now unused arg `arg'.
25045         (cua--prefix-override-handler, cua--prefix-repeat-handler)
25046         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
25047         Update accordingly.
25048         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
25049         any more.
25050         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
25051         if the mark is not set.
25053 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25055         Rework quoting in Emacs Lisp Introduction
25056         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
25057         (if in more detail, type-of-animal in detail, else): Rework the
25058         early example to use " rather than ' so that we don’t burden
25059         complete novices with the low-priority detail of text quoting style.
25060         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
25061         (kill-new function, kill-ring-yank-pointer)
25062         (Complete forward-sentence, Loading Files)
25063         (Code for current-kill, Code for current-kill, yank):
25064         Resurrect the Emacs 22 versions of the code, which uses grave
25065         quoting style in doc strings.
25066         (Complete zap-to-char): Mention how quoting works in doc strings.
25068         Setup quote display only if interactive
25069         * lisp/startup.el (command-line):
25070         Skip call to startup--setup-quote-display if noninteractive.
25071         Without this change, python-shell-prompt-validate-regexps-1
25072         fails in test/automated/python-tests.el when run in an
25073         en_US.utf8 locale on Fedora.
25075 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
25077         Use defalias at the top level
25078         * lisp/gnus/gnus-util.el (gnus-format-message):
25079         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
25080         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
25082 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25084         terminal-init-w32console mimics command-line
25085         Problem reported by Eli Zaretskii.
25086         * lisp/startup.el (startup--setup-quote-display):
25087         New function, refactored from a part of ‘command-line’.
25088         (command-line): Use it.
25089         * lisp/term/w32console.el (terminal-init-w32console):
25090         Use it, so that this function stays consistent with ‘command-line’.
25092         Display replacement quotes with shadow glyphs
25093         * lisp/startup.el (command-line): When displaying ASCII
25094         replacements for curved quotes, use a shadow glyph instead of a
25095         regular one, to avoid ambiguity.
25097 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
25099         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
25101 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
25103         Docstring fixes re quotes in C code
25104         Fix some docstring quoting problems, mostly by escaping apostrophe.
25106 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
25108         Some Tramp password fixes
25109         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
25110         of the hops.
25111         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
25112         at the beginning of the command.  Otherwise, it could be
25113         interpreted as password prompt if the remote host echoes the
25114         command.
25115         (tramp-remote-coding-commands): Add "openssl enc -base64".
25117 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
25119         Make vc-git-working-revision always return the commit hash
25120         * lisp/vc/vc-git.el (vc-git-working-revision):
25121         Return the commit hash (bug#21383).
25122         (vc-git--symbolic-ref): New function, extracted from above.
25123         (vc-git-mode-line-string): Use it.
25125 2015-09-01  K. Handa  <handa@gnu.org>
25127         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
25128         * src/ftfont.c (MFLTGlyphFT): New type.
25129         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
25130         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
25131         elements in the array MFLTGlyphString.glyphs.
25133 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
25135         Improve comments in elisp-mode.el, elisp-mode-tests.el
25136         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
25138         Delete Emacs 25 test in mode-local.el
25139         * lisp/cedet/mode-local.el (describe-mode-local-overload):
25140         Fix missed an edit in previous commit.
25142         Show all known mode-local overrides in *Help*
25143         * lisp/cedet/mode-local.el (describe-mode-local-overload):
25144         Assume Emacs 25. Add all known mode-local overrides.
25146 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
25148         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
25149         Ensure that the article where the search word is found is displayed
25150         and pointed to in the summary buffer.
25152 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
25154         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
25155         When the region is active, but is empty (length 0), act as though
25156         the region was not active; that is, put a comment at the end of
25157         the line.  (Bug#21119)
25159 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
25161         Port tls.el to older Emacs
25162         * lisp/net/tls.el (tls-format-message):
25163         Alias to format-message, or format if not available.
25164         (open-tls-stream): Use it.
25166 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
25168         hideif.el: Recognize .h++ as C++ header
25169         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
25171         isearch: Document character folding mode
25172         * lisp/isearch.el (isearch-forward):
25173         Mention `isearch-toggle-character-fold' in doc string.
25175 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
25177         Quoting fixes in ERC and Eshell
25178         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
25179         * lisp/erc/erc-backend.el (define-erc-response-handler):
25180         * lisp/erc/erc-fill.el (erc-fill-static-center):
25181         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
25182         * lisp/eshell/em-glob.el (eshell-glob-entries):
25183         * lisp/eshell/em-hist.el (eshell-save-some-history):
25184         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
25185         (eshell-shuffle-files):
25186         * lisp/eshell/esh-cmd.el (eshell-do-eval):
25187         * lisp/eshell/esh-proc.el (eshell-process-interact)
25188         (eshell-query-kill-processes):
25189         Respect ‘text-quoting-style’ in diagnostics and doc strings.
25191         Quoting fixes in Gnus
25192         * lisp/gnus/gnus-agent.el:
25193         (gnus-agent-possibly-synchronize-flags-server):
25194         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
25195         * lisp/gnus/gnus-eform.el (gnus-edit-form):
25196         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
25197         (gnus-group-nnimap-edit-acl):
25198         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
25199         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
25200         * lisp/gnus/message.el (message-strip-subject-encoded-words)
25201         (message-check-recipients, message-send-form-letter):
25202         * lisp/gnus/mm-decode.el (mm-display-part):
25203         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
25204         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
25205         (mml-smime-get-ldap-cert):
25206         * lisp/gnus/spam-report.el (spam-report-process-queue):
25207         Respect ‘text-quoting-style’ in diagnostics.
25208         * lisp/gnus/gnus-art.el (article-display-face)
25209         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
25210         Use straight quoting in email.
25211         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
25212         Escape apostrophes in doc strings.
25214         Quoting fixes in lisp mail, mh-e, net, url
25215         * lisp/mail/emacsbug.el (report-emacs-bug)
25216         (report-emacs-bug-hook): Use straight quotes in outgoing email,
25217         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
25218         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
25219         * lisp/mail/rmailout.el (rmail-output-read-file-name):
25220         * lisp/net/imap.el (imap-interactive-login):
25221         * lisp/net/tls.el (open-tls-stream):
25222         * lisp/url/url-auth.el (url-register-auth-scheme):
25223         Respect ‘text-quoting-style’ in diagnostics.
25224         * lisp/mh-e/mh-e.el (mh-sortm-args):
25225         Quote docstring example using text quotes, not as a Lisp quote.
25227 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
25229         Fix some byte-compiler warnings in EDE
25230         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
25231         existing autoloader list, rather than add to it.
25232         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
25233         argument to eieio class constructor.
25234         (ede-show-supported-projects): New.
25235         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
25236         with (oref ... name).
25237         (ede-auto-load-project): Use slot name, not initarg key.
25238         * lisp/cedet/ede/generic.el (ede-generic-load)
25239         (ede-generic-find-matching-target): Use slot name, not initarg key.
25240         (ede-find-target): Use oref-default on class name.
25241         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
25242         class constructor.
25243         (ede-enable-generic-projects): Make project type names unique.
25245 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
25247         Fix directory accessibility tests for w32 network volumes
25248         * src/w32.c (faccessat): Don't fail with network volumes without a
25249         share.
25250         (w32_accessible_directory_p): Handle network volumes without a
25251         share.
25253         Fix handling long file names in readdir on MS-Windows
25254         * src/w32.c (sys_readdir): Append "\*" to the directory after
25255         converting it to UTF-16/ANSI, not before, to avoid overflowing the
25256         260-character limit on file names in filename_to_utf16/ansi.
25258         Make file-accessible-directory-p reliable on MS-Windows
25259         * src/w32.c (w32_accessible_directory_p): New function.
25260         * src/w32.h (w32_accessible_directory_p): Add prototype.
25261         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
25262         w32_accessible_directory_p to test a directory for accessibility
25263         by the current user.  (Bug#21346)
25264         (Ffile_accessible_directory_p): Remove the w32 specific caveat
25265         from the doc string.
25267 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
25269         Don't call do_pending_window_change in signal handlers (Bug#21380)
25270         * src/gtkutil.c (xg_frame_resized):
25271         * src/xterm.c (x_set_window_size):
25272         * src/w32term.c (x_set_window_size): Don't call
25273         do_pending_window_change.
25275 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
25277         Quoting fixes in lisp/org
25278         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
25279         (org-tags-view):
25280         * lisp/org/org-capture.el (org-capture-mode)
25281         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
25282         (org-ctags-ask-append-topic):
25283         * lisp/org/org.el (org-time-string-to-time)
25284         (org-time-string-to-absolute):
25285         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
25286         (org-ctags-ask-append-topic):
25287         * lisp/org/org.el (org-time-string-to-time)
25288         (org-time-string-to-absolute):
25289         Respect ‘text-quoting-style’ in diagnostics.
25290         * lisp/org/org-agenda.el (org-agenda-custom-commands)
25291         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
25292         * lisp/org/org-capture.el (org-capture-fill-template):
25293         Avoid contraction in output file that might be ASCII.
25294         * lisp/org/org-compat.el (format-message):
25295         Define if not already defined, for backward compatibility.
25296         * lisp/org/org-src.el (org-edit-src-save):
25297         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
25298         Escape apostrophes in diagnostics.
25300         Treat “instead” strings as docstrings
25301         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
25302         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
25303         Substitute quotes in instead strings.
25305 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
25307         Better documentation of seq-let
25308         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
25309         documentation of seq-let.
25311 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
25313         * lisp/international/ccl.el: Fix quoting.
25315         Quoting fixes in lisp/international and lisp/leim
25316         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
25317         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
25318         * lisp/international/mule-cmds.el:
25319         (select-safe-coding-system-interactively, leim-list-file-name):
25320         * lisp/international/quail.el (quail-use-package, quail-help):
25321         * lisp/international/titdic-cnv.el (tit-process-header)
25322         (miscdic-convert):
25323         Respect text quoting style in doc strings and diagnostics.
25324         * lisp/international/quail.el (lisp/international/quail.el):
25325         * lisp/leim/quail/ethiopic.el ("ethiopic"):
25326         Escape apostrophes in doc strings.
25328         Make ‘text-quoting-style’ a plain defvar
25329         It doesn’t need customization, as it’s likely useful only by experts.
25330         Suggested by Stefan Monnier in:
25331         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
25332         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
25334         Quoting fixes in lisp/textmodes
25335         * lisp/textmodes/bibtex.el (bibtex-validate)
25336         (bibtex-validate-globally, bibtex-search-entries):
25337         * lisp/textmodes/ispell.el (ispell-command-loop):
25338         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
25339         * lisp/textmodes/texinfmt.el (texinfmt-version)
25340         (texinfo-format-region, texinfo-format-buffer-1):
25341         * lisp/textmodes/two-column.el (2C-split):
25342         Respect text quoting style in doc strings and diagnostics.
25343         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
25344         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
25345         Escape apostrophes in doc strings.
25347         Documentation fixes re quotes
25348         Prefer curved quotes in examples if users will typically see
25349         curved quotes when the examples run.
25350         Mention format-message when appropriate.
25351         Don’t use @code in examples.
25352         Quote an apostrophe with @kbd.
25354         Quoting fixes in lisp/progmodes
25355         * lisp/progmodes/cc-engine.el (c-bos-report-error):
25356         * lisp/progmodes/cpp.el (cpp-edit-reset):
25357         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
25358         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
25359         (etags-tags-apropos, list-tags, tags-apropos):
25360         * lisp/progmodes/executable.el (executable-set-magic):
25361         * lisp/progmodes/octave.el (octave-sync-function-file-names)
25362         (octave-help, octave-find-definition-default-filename)
25363         (octave-find-definition):
25364         Respect text quoting style in doc strings and diagnostics.
25365         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
25366         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
25367         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
25368         Escape apostrophes in doc strings.
25369         * lisp/progmodes/cmacexp.el (c-macro-expansion):
25370         Use straight quoting in ASCII comment.
25371         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
25372         (idlwave-pad-keyword):
25373         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
25374         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
25375         (vhdl-electric-semicolon, vhdl-electric-comma)
25376         (vhdl-electric-period, vhdl-electric-equal):
25377         Use directed quotes in diagnostics and doc strings.
25379 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
25381         Minor documentation and NEWS tweak
25382         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
25383         Add an index entry.
25384         * etc/NEWS: Fix a typo in character-fold-to-regexp.
25386 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
25388         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
25389         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
25390         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
25391         Adapt test.
25393 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
25395         Text quoting fixes in cedet, emulation, emacs-lisp
25396         * lisp/cedet/ede.el (ede-check-project-directory):
25397         * lisp/cedet/semantic/analyze/debug.el
25398         (semantic-analyzer-debug-insert-include-summary):
25399         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
25400         * lisp/cedet/semantic/decorate/include.el
25401         (semantic-decoration-unknown-include-describe)
25402         (semantic-decoration-all-include-summary):
25403         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
25404         * lisp/emulation/edt.el (edt-load-keys):
25405         * lisp/emulation/viper-cmd.el
25406         (viper-display-current-destructive-command)
25407         (viper-query-replace, viper-brac-function):
25408         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
25409         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
25410         Respect text quoting style in doc string or diagnostic.
25411         * lisp/cedet/mode-local.el (describe-mode-local-overload):
25412         Use format-message to avoid overtranslating quotes.
25413         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
25414         Escape an apostrophe in a docstring.
25415         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
25417 2015-08-29  Daniel Colascione  <dancol@dancol.org>
25419         Fix which-func for curly quotes: look for symbol, not message
25420         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
25421         imenu-unavailable error symbol instead of trying to match message
25422         exactly.
25423         * lisp/imenu.el (imenu-unavailable): New error.
25424         (imenu-unavailable-error): New function.
25426 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
25428         Fix Python tests on MS-Windows
25429         * test/automated/python-tests.el
25430         (python-shell-calculate-command-1): Run python-shell-interpreter
25431         through shell-quote-argument before comparing with what
25432         python-shell-calculate-command returns.
25433         (python-shell-calculate-pythonpath-1)
25434         (python-shell-calculate-pythonpath-2)
25435         (python-shell-calculate-process-environment-2): Use path-separator
25436         instead of a literal ':'.
25437         (python-shell-calculate-exec-path-2)
25438         (python-shell-calculate-exec-path-3)
25439         (python-shell-calculate-exec-path-4)
25440         (python-shell-with-environment-1)
25441         (python-shell-with-environment-2): Run "/env/bin" through
25442         expand-file-name before comparing with exec-path.  (Bug#21375)
25444 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25446         Use Core Text types/functions/variables/enumerators directly
25447         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
25448         (CharacterCollection): Remove typedefs.  All uses replaced with
25449         definitions.
25450         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
25451         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
25452         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
25453         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
25454         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
25455         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
25456         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
25457         definitions.
25458         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
25459         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
25460         (MAC_FONT_FORMAT_BITMAP)
25461         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
25462         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
25463         All uses replaced with definitions.
25464         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
25465         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
25466         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
25467         Add compatibility enumerators for older versions.
25468         (mac_font_descriptor_create_with_attributes)
25469         (mac_font_descriptor_create_matching_font_descriptors)
25470         (mac_font_descriptor_create_matching_font_descriptor)
25471         (mac_font_descriptor_copy_attribute)
25472         (mac_font_descriptor_supports_languages)
25473         (mac_font_create_with_name, mac_font_get_size)
25474         (mac_font_copy_family_name, mac_font_copy_character_set)
25475         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
25476         (mac_font_get_descent, mac_font_get_leading)
25477         (mac_font_get_underline_position)
25478         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
25479         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
25480         replaced with definitions.
25481         (mac_font_create_preferred_family_for_attributes)
25482         (mac_font_get_advance_width_for_glyph)
25483         (mac_font_get_bounding_rect_for_glyph)
25484         (mac_font_create_available_families, mac_font_shape):
25485         Remove macros for renamed functions.
25486         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
25487         * src/macfont.m (mac_font_descriptor_supports_languages):
25488         Rename from mac_ctfont_descriptor_supports_languages.
25489         (mac_font_create_preferred_family_for_attributes): Rename from
25490         mac_ctfont_create_preferred_family_for_attributes.
25491         (mac_font_get_advance_width_for_glyph): Rename from
25492         mac_ctfont_get_advance_width_for_glyph.
25493         Use kCTFontOrientationDefault also for older versions.
25494         (mac_font_get_bounding_rect_for_glyph): Rename from
25495         mac_ctfont_get_bounding_rect_for_glyph.
25496         Use kCTFontOrientationDefault also for older versions.
25497         (mac_font_create_available_families): Rename from
25498         mac_ctfont_create_available_families.
25499         (mac_font_equal_in_postscript_name): Rename from
25500         mac_ctfont_equal_in_postscript_name.  All uses changed.
25501         (mac_font_create_line_with_string_and_font): Rename from
25502         mac_ctfont_create_line_with_string_and_font.  All uses changed.
25503         (mac_font_shape): Rename from mac_ctfont_shape.
25504         (mac_font_family_compare): Remove unused declaration.
25506 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
25508         Fix minor text quoting in calc, calendar, vc
25509         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
25510         * lisp/calc/calc-help.el (calc-j-prefix-help):
25511         * lisp/calc/calc-misc.el (calc-help):
25512         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
25513         Escape an apostrophe in a docstring.
25514         * lisp/calc/calc-forms.el (calc-hms-notation):
25515         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
25516         Escape an apostrophe in a diagnostic.
25517         * lisp/calc/calc-misc.el (calc-help):
25518         * lisp/calendar/diary-lib.el (diary-include-files):
25519         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
25520         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
25521         * lisp/vc/ediff-diff.el (ediff-same-contents):
25522         * lisp/vc/ediff-merg.el (ediff-re-merge):
25523         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
25524         * lisp/vc/ediff-util.el (ediff-test-save-region)
25525         (ediff-status-info):
25526         * lisp/vc/ediff.el (ediff-merge-revisions)
25527         (ediff-merge-revisions-with-ancestor):
25528         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
25529         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
25530         Respect text quoting style in doc string or diagnostic.
25531         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
25532         * lisp/vc/add-log.el (change-log-goto-source):
25533         Avoid double-formatting.
25534         * lisp/vc/ediff-init.el (format-message):
25535         New backward-compatibility alias.
25537 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
25539         Fix minor text quoting problems in lisp top level
25540         * lisp/apropos.el (apropos-describe-plist):
25541         * lisp/cus-theme.el (customize-themes):
25542         * lisp/dired.el (dired-log):
25543         * lisp/help-fns.el (describe-variable):
25544         * lisp/hexl.el (hexl-insert-multibyte-char):
25545         * lisp/info.el (Info-finder-find-node):
25546         * lisp/json.el (json-read-string):
25547         * lisp/novice.el (disabled-command-function)
25548         (disabled-command-function):
25549         * lisp/startup.el (normal-mouse-startup-screen):
25550         * lisp/woman.el (WoMan-log, WoMan-warn):
25551         Respect text quoting style in doc string or diagnostic.
25552         * lisp/replace.el (replace-character-fold):
25553         * src/syntax.c (Fmodify_syntax_entry):
25554         Escape an apostrophe in a docstring.
25555         * lisp/tempo.el (tempo-define-template):
25556         Remove confusing apostrophe from docstring.
25557         * lisp/whitespace.el (whitespace-mark-x):
25558         Use directed quotes in docstring.
25560 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
25562         Fix indentation rule in css-mode
25563         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
25564         brackets in presence of pseudo-selectors.  (Bug#21328)
25566 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
25568         Fix a bug in recording a macro while flyspell-mode is active
25569         * lisp/subr.el (sit-for): Don't call read-event when recording a
25570         macro.  (Bug#21329)
25572 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
25574         Tweak startup screen quoting
25575         * lisp/startup.el (normal-splash-screen): Use standard
25576         "M-" abbrevation rather than a confusingly-different one.
25577         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
25579 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
25581         Add test case for ‘format’ bug and refactor
25582         * src/editfns.c (styled_format): Refactor internally, mostly by
25583         moving declarations closer to uses.  This should not affect behavior.
25584         * test/automated/textprop-tests.el (textprop-tests-format): New test.
25586         Fix ‘format’ bug with property offsets
25587         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
25588         bug in calculating string property offsets (Bug#21351).
25590         Use straight quotes in lib-src diagnostics
25591         These auxiliary programs can’t use Emacs’s text-quoting-style,
25592         and it’s too much trouble to redo that mechanism by hand.
25593         So just use straight quotes for now.
25594         * lib-src/ebrowse.c (main):
25595         * lib-src/emacsclient.c (decode_options, main):
25596         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
25597         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
25598         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
25599         (none_help, print_language_names, print_help, add_regex)
25600         (suggest_asking_for_help):
25601         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
25602         Use straight quotes in diagnostics.
25604         ‘text-quoting-style’ fixes for admin
25605         * admin/admin.el (cusver-scan, cusver-check):
25606         * admin/authors.el (authors-canonical-file-name):
25607         * admin/bzrmerge.el (bzrmerge-missing):
25608         Respect ‘text-quoting-style’ in diagnostics.
25610 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
25612         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
25613         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
25614         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
25615         * doc/lispref/internals.texi (Writing Emacs Primitives):
25616         * etc/NEWS:
25617         Document the change.
25618         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
25619         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
25620         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
25621         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
25622         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
25623         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
25624         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
25625         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
25626         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
25627         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
25628         Remove.  All uses removed.  The code now assumes
25629         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
25630         * src/bytecode.c (relocate_byte_stack):
25631         Rename from unmark_byte_stack, since it now only relocates.
25632         All callers changed.
25633         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
25634         with GCPROs removed.
25635         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
25636         * test/automated/finalizer-tests.el (finalizer-basic)
25637         (finalizer-circular-reference, finalizer-cross-reference)
25638         (finalizer-error):
25639         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
25640         Remove tests, as they depend on gc-precise.
25642 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
25644         Improve seq-concatenate for new sequence types
25645         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
25646         ensure that concatenation happens on sequences only.  This makes it
25647         possible to use `seq-concatenate' for new types of seqs.
25648         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
25649         New function used in `seq-concatenate'.
25650         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
25651         for seq-into-sequence.
25653 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
25655         Add mode local overrides to xref-find-definitions
25656         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
25657         (xref-mode-local-overload): New; add mode local overrides to
25658         xref-find-definitions.
25659         * test/automated/elisp-mode-tests.el: Add mode local override tests.
25660         (xref-elisp-test-run): Handle indented defuns.
25661         (xref-elisp-generic-*): Improve doc strings.
25662         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
25663         (elisp--xref-find-definitions): Use it.
25665         Add mode local overrides to describe-function
25666         * lisp/cedet/mode-local.el (describe-mode-local-overload):
25667         New; add mode local overrides to describe-function.
25668         * etc/NEWS: Document change.
25670 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
25672         Prefer straight quoting in some etc text files
25673         These files are plain text and might be used by non-Emacs apps.
25674         They’re mostly ASCII, so just use straight quotes.
25676         Fix quoting in ‘message_with_string’
25677         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
25678         should work now.
25679         * src/xdisp.c (message_to_stderr): New function, refactored from
25680         part of ‘message3_nolog’.
25681         (message3_nolog): Use it.
25682         (message_with_string): Use it.  Don’t mishandle NUL bytes when
25683         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
25684         Use ‘format-message’, not ‘format’, so that quotes are translated.
25686 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
25688         Mention false positives of file-accessible-directory on w32
25689         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
25690         (Bug#21346)
25692 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
25694         Treat error strings as help
25695         * src/print.c (print_error_message): Translate quotes and command
25696         keys in errmsg so that users see, e.g., "Symbol’s value as
25697         variable is void: foo" when text-quoting-style is curved.
25699 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
25701         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
25703 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
25705         Top-level elisp files respect ‘text-quoting-style’
25706         In top-level elisp files, use format-message in diagnostic formats,
25707         so that they follow user preference as per ‘text-quoting-style’
25708         rather than being hard-coded to quote `like this'.
25709         * lisp/allout.el (allout-get-configvar-values):
25710         * lisp/apropos.el (apropos-symbols-internal):
25711         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
25712         (dired-do-create-files-regexp, dired-create-files-non-directory):
25713         * lisp/dired-x.el (dired-do-run-mail):
25714         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
25715         * lisp/disp-table.el (standard-display-european):
25716         * lisp/find-dired.el (find-dired):
25717         * lisp/forms.el (forms-mode):
25718         * lisp/ido.el (ido-buffer-internal):
25719         * lisp/info.el (Info-index-next):
25720         * lisp/outline.el (outline-invent-heading):
25721         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
25722         * lisp/proced.el (proced-log):
25723         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
25724         * lisp/recentf.el (recentf-open-files, recentf-save-list):
25725         * lisp/savehist.el (savehist-save):
25726         * lisp/server.el (server-ensure-safe-dir):
25727         * lisp/ses.el (ses-rename-cell):
25728         * lisp/simple.el (list-processes--refresh):
25729         * lisp/startup.el (command-line):
25730         * lisp/strokes.el (strokes-unset-last-stroke)
25731         (strokes-execute-stroke):
25732         Use format-message so that quotes are restyled.
25733         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
25734         Don’t quote ‘raised’.
25735         * lisp/descr-text.el (describe-char):
25736         * lisp/dirtrack.el (dirtrack-debug-message):
25737         * lisp/hexl.el (hexl-insert-multibyte-char):
25738         Apply substitute-command-keys to help string.
25739         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
25740         (wdired-do-perm-changes):
25741         Let dired-log do the formatting.
25743 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
25745         Go back to grave quoting in Tramp
25746         * lisp/net/tramp-adb.el:
25747         * lisp/net/tramp-cache.el:
25748         * lisp/net/tramp-compat.el:
25749         * lisp/net/tramp-gvfs.el:
25750         * lisp/net/tramp-gw.el:
25751         * lisp/net/tramp-sh.el:
25752         * lisp/net/tramp-smb.el:
25753         * lisp/net/tramp.el:
25754         Stick with grave quoting in diagnostics strings.  This is more
25755         portable to older Emacs, desirable for Tramp.
25756         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
25757         for diagnostic that needs requoting.
25758         * lisp/net/tramp-compat.el (format-message):
25759         Fall back on simple ‘format’, since that’s good enough now.
25761         Go back to grave quoting in Gnus
25762         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
25763         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
25764         (gnus-agent-fetch-headers):
25765         * lisp/gnus/gnus-int.el (gnus-start-news-server):
25766         * lisp/gnus/gnus-registry.el:
25767         (gnus-registry--split-fancy-with-parent-internal)
25768         (gnus-registry-post-process-groups):
25769         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
25770         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
25771         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
25772         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
25773         * lisp/gnus/spam.el (spam-check-blackholes):
25774         Stick with grave quoting in diagnostics strings.  This is more
25775         portable to older Emacs, desirable for Gnus.
25777         Fix customization of text-quoting-style
25778         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
25779         * lisp/wid-edit.el (widget-docstring):
25780         Get raw docstring here since it’s cooked later and should not be
25781         cooked twice.
25782         * lisp/cus-edit.el (custom-group-value-create):
25783         Cook the docstring before inserting it.
25784         * lisp/cus-start.el (text-quoting-style): Quote the customization
25785         docstrings according to the new rules.  Give curved examples.
25787         format-message now curves ` and '
25788         That way, the caller doesn’t have to use curved quotes to
25789         get diagnostics that match the text-quoting-style preferences.
25790         Suggested by Dmitry Gutov in:
25791         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
25792         This means we no longer need %qs, so remove that format.
25793         While we’re at it, fix an unlikely bug and lessen the pressure
25794         on the garbage collector by processing the string once rather
25795         than twice in the usual case.
25796         * doc/lispref/strings.texi (Formatting Strings):
25797         * etc/NEWS: Document this.
25798         * lisp/subr.el (format-message): Remove; now done in C.
25799         * src/callint.c (Fcall_interactively):
25800         * src/editfns.c (Fmessage, Fmessage_box):
25801         Use Fformat_message instead of Finternal__text_restyle
25802         followed by Fformat.
25803         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
25804         uLSQM and uRSQM.
25805         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
25806         when pure ASCII now suffices.  Fix unlikely bug when parsing
25807         unibyte string containing non-ASCII bytes.  Use inline code
25808         rather than memcpy, as it’s a tiny number of bytes.
25809         (Finternal__text_restyle): Remove; no longer used.
25810         (syms_of_doc): Don’t declare it.
25811         * src/editfns.c (Fformat): Rewrite in terms of new function
25812         ‘styled_format’.
25813         (Fformat_message): New function, moved here from subr.el.
25814         (styled_format): New function, with the old guts of Fformat,
25815         except it now optionally transliterates quotes, and it transliterates
25816         traditional grave accent and apostrophe quoting as well.
25817         Remove recently-added q flag; no longer needed or used.
25818         (syms_of_editfns): Define format-message.
25819         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
25820         Remove; no longer need to be global symbols.
25821         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
25822         so that callers can use `%s'.
25823         * src/image.c (image_size_error, xbm_load_image, xbm_load)
25824         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
25825         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
25826         (svg_load_image, gs_load, x_kill_gs_process):
25827         * src/lread.c (load_warn_old_style_backquotes):
25828         * src/xfaces.c (load_pixmap):
25829         * src/xselect.c (x_clipboard_manager_error_1):
25830         Use `%s' instead of %qs in formats.
25832 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
25834         Minor fixes in doc/emacs/search.texi
25835         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
25836         (Special Isearch): Use @w{} to generate several consecutive spaces
25837         with Texinfo 6.  (Bug#21345)
25839 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
25841         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
25842         (tramp-awk-coding-test): New defconsts.
25843         (tramp-remote-coding-commands): Use them.
25844         (tramp-find-inline-encoding): Check for Perl only if necessary.
25846 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
25848         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
25849         index entries for the special form `quote'.
25851 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
25853         Spelling fixes
25855         Gnus format-message typo fix
25856         * lisp/gnus/gnus-util.el (gnus-format-message):
25857         Fix typo when running in older Emacs.
25859         Prefer directed to neutral quotes in docstings and diagnostics.
25860         In docstrings, escape apostrophes that would otherwise be translated
25861         to curved quotes using the newer, simpler rules.
25862         * admin/unidata/unidata-gen.el (unidata-gen-table):
25863         * lisp/align.el (align-region):
25864         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
25865         * lisp/bookmark.el (bookmark-default-annotation-text):
25866         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
25867         * lisp/calc/calc-lang.el (math-read-giac-subscr)
25868         (math-read-math-subscr):
25869         * lisp/calc/calc-misc.el (report-calc-bug):
25870         * lisp/calc/calc-prog.el (calc-fix-token-name)
25871         (calc-read-parse-table-part):
25872         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
25873         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
25874         * lisp/dabbrev.el (dabbrev-expand):
25875         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
25876         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
25877         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
25878         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
25879         * lisp/erc/erc-button.el (erc-nick-popup):
25880         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
25881         * lisp/eshell/em-dirs.el (eshell/cd):
25882         * lisp/eshell/em-glob.el (eshell-glob-regexp):
25883         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
25884         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
25885         * lisp/eshell/esh-opt.el (eshell-show-usage):
25886         * lisp/files-x.el (modify-file-local-variable):
25887         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
25888         (filesets-update-pre010505):
25889         * lisp/find-cmd.el (find-generic, find-to-string):
25890         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
25891         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
25892         (gnus-agent-fetch-headers):
25893         * lisp/gnus/gnus-int.el (gnus-start-news-server):
25894         * lisp/gnus/gnus-registry.el:
25895         (gnus-registry--split-fancy-with-parent-internal):
25896         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
25897         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
25898         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
25899         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
25900         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
25901         * lisp/gnus/spam.el (spam-check-blackholes):
25902         * lisp/mail/feedmail.el (feedmail-run-the-queue):
25903         * lisp/mpc.el (mpc-playlist-rename):
25904         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
25905         * lisp/net/mairix.el (mairix-widget-create-query):
25906         * lisp/net/tramp-cache.el:
25907         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
25908         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
25909         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
25910         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
25911         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
25912         (org-babel-goto-named-result):
25913         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
25914         * lisp/org/ob-ref.el (org-babel-ref-resolve):
25915         * lisp/org/org-agenda.el (org-agenda-prepare):
25916         * lisp/org/org-bibtex.el (org-bibtex-fields):
25917         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
25918         (org-clock-resolve):
25919         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
25920         * lisp/org/org-habit.el (org-habit-parse-todo):
25921         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
25922         (org-mouse-context-menu):
25923         * lisp/org/org-table.el (org-table-edit-formulas):
25924         * lisp/org/ox.el (org-export-async-start):
25925         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
25926         (dun-rooms, dun-endgame-questions):
25927         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
25928         * lisp/progmodes/ada-xref.el (ada-find-executable):
25929         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
25930         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
25931         (flymake-start-syntax-check-process):
25932         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
25933         * lisp/progmodes/sql.el (sql-comint):
25934         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
25935         * lisp/server.el (server-get-auth-key):
25936         * lisp/subr.el (version-to-list):
25937         * lisp/textmodes/reftex-ref.el (reftex-label):
25938         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
25939         * lisp/vc/ediff-diff.el (ediff-same-contents):
25940         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
25941         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
25942         Use directed rather than neutral quotes in diagnostics.
25944         Treat ' like ’ even when not matching `
25945         This is simpler and easier to explain, and should encourage better
25946         typography.  Do this in Electric Quote mode and when translating
25947         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
25948         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
25949         * doc/emacs/text.texi (Quotation Marks):
25950         * doc/lispref/help.texi (Keys in Documentation):
25951         * etc/NEWS:
25952         Document this.
25953         * lisp/electric.el (electric-quote-post-self-insert-function):
25954         * src/doc.c (Fsubstitute_command_keys):
25955         Always treat ' like ’ even when not matched by an open quote.
25957 2015-08-25  Glenn Morris  <rgm@gnu.org>
25959         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
25960         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
25962 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
25964         * src/macfont.m (macfont_create_family_with_symbol):
25965         Accept localized names.
25967 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
25969         Tramp diagnostics as per ‘text-quoting-style’
25970         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
25971         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
25972         (tramp-adb-handle-delete-directory)
25973         (tramp-adb-handle-delete-file)
25974         (tramp-adb-handle-file-local-copy)
25975         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
25976         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
25977         (tramp-adb-maybe-open-connection):
25978         * lisp/net/tramp-cache.el:
25979         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
25980         (tramp-compat-octal-to-decimal)
25981         (tramp-compat-coding-system-change-eol-conversion):
25982         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
25983         (tramp-gvfs-do-copy-or-rename-file)
25984         (tramp-gvfs-handle-delete-directory)
25985         (tramp-gvfs-handle-delete-file)
25986         (tramp-gvfs-handle-expand-file-name)
25987         (tramp-gvfs-handle-file-local-copy)
25988         (tramp-gvfs-handle-file-notify-add-watch)
25989         (tramp-gvfs-handle-make-directory)
25990         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
25991         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
25992         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
25993         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
25994         (tramp-sh-handle-set-visited-file-modtime)
25995         (tramp-sh-handle-set-file-modes)
25996         (tramp-sh-handle-file-name-all-completions)
25997         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
25998         (tramp-do-copy-or-rename-file-directly)
25999         (tramp-do-copy-or-rename-file-out-of-band)
26000         (tramp-sh-handle-make-directory)
26001         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
26002         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
26003         (tramp-sh-handle-start-file-process)
26004         (tramp-sh-handle-file-local-copy)
26005         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
26006         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
26007         (tramp-find-file-exists-command, tramp-open-shell)
26008         (tramp-find-shell)
26009         (tramp-open-connection-setup-interactive-shell)
26010         (tramp-find-inline-encoding, tramp-find-inline-compress)
26011         (tramp-compute-multi-hops, tramp-maybe-open-connection)
26012         (tramp-wait-for-output, tramp-send-command-and-check)
26013         (tramp-send-command-and-read, tramp-get-remote-path)
26014         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
26015         (tramp-get-ls-command-with-quoting-style)
26016         (tramp-get-test-command, tramp-get-remote-ln)
26017         (tramp-get-remote-perl, tramp-get-remote-stat)
26018         (tramp-get-remote-readlink, tramp-get-remote-trash)
26019         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
26020         (tramp-get-remote-inotifywait, tramp-get-remote-id)
26021         (tramp-get-remote-python):
26022         * lisp/net/tramp-smb.el (tramp-smb-errors)
26023         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
26024         (tramp-smb-handle-delete-directory)
26025         (tramp-smb-handle-delete-file)
26026         (tramp-smb-handle-file-local-copy)
26027         (tramp-smb-handle-make-directory)
26028         (tramp-smb-handle-make-directory-internal)
26029         (tramp-smb-handle-make-symbolic-link)
26030         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
26031         (tramp-smb-handle-set-file-modes)
26032         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
26033         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
26034         (tramp-process-actions):
26035         Generate diagnostics according to ‘text-quoting-style’, by
26036         using curved quotes in format strings and ‘format-message’
26037         when appropriate.
26038         * lisp/net/tramp-compat.el (format-message):
26039         Define a replacement, if it’s an older version of Emacs
26040         that doesn’t have it already.
26042         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
26044 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
26046         Fix documentation for `save-excursion'
26047         * doc/lispref/positions.texi (Excursions):
26048         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
26049         (Template for save-excursion, Point and mark): `save-excursion'
26050         does not save&restore the mark any more.
26052 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
26054         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
26055         New defconsts.
26056         (tramp-do-file-attributes-with-stat)
26057         (tramp-do-directory-files-and-attributes-with-stat): Use them.
26058         (tramp-convert-file-attributes): Remove double slashes in symlinks.
26059         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
26060         Handle symlinks with "//" in the file name.
26062         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
26064 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
26066         Fix cl-subseq and cl-concatenate
26067         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
26068         seq functions.
26069         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
26070         seq-concatenate.
26072 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
26074         Fix full-screen code when there is no window manager (Bug#21317)
26075         * src/xterm.h (x_wm_supports): Declare external.
26076         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
26077         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
26078         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
26079         `fullscreen' frame parameter.
26080         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
26081         without a window manager.
26083 2015-08-24  Glenn Morris  <rgm@gnu.org>
26085         * lisp/version.el (emacs-version): No longer include build host.
26086         * doc/lispref/intro.texi (Version Info): Update example.
26088 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
26090         * doc/lispref/elisp.texi: Fix typo in previous change.
26092         More-conservative ‘format’ quote restyling
26093         Instead of restyling curved quotes for every call to ‘format’,
26094         create a new function ‘format-message’ that does the restyling,
26095         and using the new function instead of ‘format’ only in contexts
26096         where this seems appropriate.
26097         Problem reported by Dmitry Gutov and Andreas Schwab in:
26098         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
26099         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
26100         * doc/lispref/commands.texi (Using Interactive):
26101         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
26102         * doc/lispref/display.texi (Displaying Messages, Progress):
26103         * doc/lispref/elisp.texi:
26104         * doc/lispref/help.texi (Keys in Documentation):
26105         * doc/lispref/minibuf.texi (Minibuffer Misc):
26106         * doc/lispref/strings.texi (Formatting Strings):
26107         * etc/NEWS:
26108         Document the changes.
26109         * lisp/abbrev.el (expand-region-abbrevs):
26110         * lisp/apropos.el (apropos-library):
26111         * lisp/calc/calc-ext.el (calc-record-message)
26112         (calc-user-function-list):
26113         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
26114         * lisp/calc/calc-lang.el (math-read-big-balance):
26115         * lisp/calc/calc-store.el (calc-edit-variable):
26116         * lisp/calc/calc-units.el (math-build-units-table-buffer):
26117         * lisp/calc/calc-yank.el (calc-edit-mode):
26118         * lisp/calendar/icalendar.el (icalendar-export-region)
26119         (icalendar--add-diary-entry):
26120         * lisp/cedet/mode-local.el (mode-local-print-binding)
26121         (mode-local-describe-bindings-2):
26122         * lisp/cedet/semantic/complete.el (semantic-completion-message):
26123         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
26124         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
26125         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
26126         * lisp/descr-text.el (describe-text-properties-1, describe-char):
26127         * lisp/dframe.el (dframe-message):
26128         * lisp/dired-aux.el (dired-query):
26129         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
26130         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
26131         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
26132         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
26133         (cconv-analyze-form):
26134         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
26135         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
26136         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
26137         * lisp/emacs-lisp/edebug.el (edebug-format):
26138         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
26139         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
26140         (eldoc-message):
26141         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
26142         * lisp/emacs-lisp/find-func.el (find-function-library):
26143         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
26144         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
26145         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
26146         * lisp/emacs-lisp/package.el (package-compute-transaction)
26147         (package-install-button-action, package-delete-button-action)
26148         (package-menu--list-to-prompt):
26149         * lisp/emacs-lisp/timer.el (timer-event-handler):
26150         * lisp/emacs-lisp/warnings.el (lwarn, warn):
26151         * lisp/emulation/viper-cmd.el:
26152         (viper-toggle-parse-sexp-ignore-comments)
26153         (viper-kill-buffer, viper-brac-function):
26154         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
26155         * lisp/facemenu.el (facemenu-add-new-face):
26156         * lisp/faces.el (face-documentation, read-face-name)
26157         (face-read-string, read-face-font, describe-face):
26158         * lisp/files.el (find-alternate-file, hack-local-variables)
26159         (hack-one-local-variable--obsolete, write-file)
26160         (basic-save-buffer, delete-directory):
26161         * lisp/format.el (format-write-file, format-find-file)
26162         (format-insert-file):
26163         * lisp/help-fns.el (help-fns--key-bindings)
26164         (help-fns--compiler-macro, help-fns--obsolete)
26165         (help-fns--interactive-only, describe-function-1)
26166         (describe-variable):
26167         * lisp/help.el (describe-mode):
26168         * lisp/info-xref.el (info-xref-output):
26169         * lisp/info.el (Info-virtual-index-find-node)
26170         (Info-virtual-index, info-apropos):
26171         * lisp/international/kkc.el (kkc-error):
26172         * lisp/international/mule-cmds.el:
26173         (select-safe-coding-system-interactively)
26174         (select-safe-coding-system, describe-input-method):
26175         * lisp/international/mule-conf.el (code-offset):
26176         * lisp/international/mule-diag.el (describe-character-set)
26177         (list-input-methods-1):
26178         * lisp/international/quail.el (quail-error):
26179         * lisp/minibuffer.el (minibuffer-message):
26180         * lisp/mpc.el (mpc--debug):
26181         * lisp/msb.el (msb--choose-menu):
26182         * lisp/net/ange-ftp.el (ange-ftp-message):
26183         * lisp/net/gnutls.el (gnutls-message-maybe):
26184         * lisp/net/newst-backend.el (newsticker--sentinel-work):
26185         * lisp/net/newst-treeview.el (newsticker--treeview-load):
26186         * lisp/net/nsm.el (nsm-query-user):
26187         * lisp/net/rlogin.el (rlogin):
26188         * lisp/net/soap-client.el (soap-warning):
26189         * lisp/net/tramp.el (tramp-debug-message):
26190         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
26191         * lisp/nxml/nxml-parse.el (nxml-parse-error):
26192         * lisp/nxml/rng-cmpct.el (rng-c-error):
26193         * lisp/nxml/rng-match.el (rng-compile-error):
26194         * lisp/nxml/rng-uri.el (rng-uri-error):
26195         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
26196         * lisp/org/org-ctags.el:
26197         (org-ctags-ask-rebuild-tags-file-then-find-tag):
26198         * lisp/proced.el (proced-log):
26199         * lisp/progmodes/ebnf2ps.el (ebnf-log):
26200         * lisp/progmodes/flymake.el (flymake-log):
26201         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
26202         * lisp/replace.el (occur-1):
26203         * lisp/simple.el (execute-extended-command)
26204         (undo-outer-limit-truncate, define-alternatives):
26205         * lisp/startup.el (command-line):
26206         * lisp/subr.el (error, user-error, add-to-list):
26207         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
26208         (tutorial--find-changed-keys):
26209         * src/callint.c (Fcall_interactively):
26210         * src/editfns.c (Fmessage, Fmessage_box):
26211         Restyle the quotes of format strings intended for use as a
26212         diagnostic, when restyling seems appropriate.
26213         * lisp/subr.el (format-message): New function.
26214         * src/doc.c (Finternal__text_restyle): New function.
26215         (syms_of_doc): Define it.
26217 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
26219         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
26221 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26223         python.el: Fix python-shell-buffer-substring on indented code
26224         (Bug#21086)
26225         * lisp/progmodes/python.el (python-shell-buffer-substring):
26226         Respect current line indentation when calculating string.
26227         * test/automated/python-tests.el
26228         (python-shell-buffer-substring-10)
26229         (python-shell-buffer-substring-11)
26230         (python-shell-buffer-substring-12): New tests.
26232 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
26234         Fix minor glitches from ‘format’ reversion
26235         * doc/lispref/strings.texi (Formatting Strings):
26236         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
26237         Documentation’, not below.
26238         * src/syntax.c (Finternal_describe_syntax_value):
26239         Prefer AUTO_STRING to build_string where either will do, as
26240         AUTO_STRING is a bit faster.
26242 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26244         python.el: Defer shell setup code until first interactive prompt
26245         * lisp/progmodes/python.el
26246         (python-shell-comint-watch-for-first-prompt-output-filter):
26247         New function.
26248         (inferior-python-mode): Use it.
26249         (python-shell-first-prompt-hook): New hook.
26250         (python-shell-send-setup-code)
26251         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
26252         this hook instead of inferior-python-hook.
26254 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
26256         Remove the calls to `seq-into` from `seq-concatenate`
26257         Since most new types of seq would have to be defined as sequences (cons
26258         cells or CL structs, mostly), there is no need to convert the seqs to
26259         sequences (which can be a fairly expensive operation).
26260         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
26261         sequences.
26263 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26265         python.el: Fix completion for pdb interactions
26266         * lisp/progmodes/python.el (python-shell-completion-setup-code):
26267         Simplify.  Toggle print_mode for native wrapped completer.
26268         (python-shell-completion-native-setup): Ensure process buffer.
26269         Add print_mode attribute to completer wrapper to toggle returning
26270         or printing candidates.
26271         (python-shell-completion-native-get-completions): Cleanup.
26272         (python-shell-completion-get-completions): Cleanup.
26273         (python-shell-completion-at-point): Perform prompt checks.
26274         Force fallback completion in pdb interactions.
26276 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
26278         Make seq.el more extensible by using cl-defmethod
26279         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
26280         make it easier to extend seq.el with new "seq types".
26281         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
26282         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
26283         subseq in cl-extra.el, and use it in seq.el.
26285 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26287         python.el: Fix prompt detection with user overridden interpreter
26288         * lisp/progmodes/python.el (python-shell-prompt-detect):
26289         Honor buffer local python-shell-interpreter and
26290         python-shell-interpreter-interactive-arg.
26292 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
26294         Support exec-directory with non-ASCII characters on Windows
26295         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
26296         in the system's ANSI codepage, when it is used for invoking
26297         cmdproxy.
26299 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
26301         Revert "Extend ‘format’ to translate curved quotes"
26302         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
26304         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
26305         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
26307 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
26309         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
26310         Clarify "invisible window".
26312 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
26314         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
26315         magic-fallback-mode-alist.
26317 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26319         python.el: fallback completion, ffap and eldoc setup enhancements
26320         Setup codes are now sent continuously so that the current frame is
26321         always taken into account.  This allows working within debuggers
26322         and always keeping a fresh version of setup codes that will return
26323         proper results.
26324         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
26325         (python-shell-send-setup-code): Send code only when
26326         python-shell-setup-codes is non-nil.
26327         (python-shell-completion-string-code): Cleanup trailing newline.
26328         (python-shell-completion-get-completions): Always use
26329         python-shell-completion-setup-code.
26330         (python-ffap-setup-code): Work with any object, not only modules.
26331         (python-ffap-string-code): Cleanup trailing newline.
26332         (python-ffap-module-path): Always use python-ffap-setup-code.
26333         (python-eldoc-string-code): Cleanup trailing newline.
26334         (python-eldoc--get-doc-at-point): Always use
26335         python-eldoc-setup-code.  Return non-nil only if docstring is
26336         found.
26338         python.el: Increase native completion robustness
26339         * lisp/progmodes/python.el (python-shell-completion-native-setup):
26340         Make completer print real candidates and just return dummy ones to
26341         avoid input modification.
26342         (python-shell-completion-native-get-completions): Set
26343         comint-redirect-insert-matching-regexp to non-nil and make
26344         comint-redirect-finished-regexp match the last dummy candidate.
26345         Use python-shell-accept-process-output to wait for the full list
26346         of candidates.
26348 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
26350         Fix invocation of programs via cmdproxy.exe
26351         * src/w32proc.c (sys_spawnve): Use exec-directory, not
26352         invocation-directory, for finding cmdproxy.exe.  When Emacs is
26353         run from the source tree, look for cmdproxy.exe in the same source
26354         tree.  (Bug#21323)
26356 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
26358         Handle comments inside unquoted URIs in css-mode
26359         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
26360         (css-syntax-propertize-function): New defconst.
26361         (css--font-lock-keywords): Handle parens around unquoted URIs.
26362         (css-mode): Set `syntax-propertize-function'.
26364 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
26366         Support invocation of Hunspell with multiple dictionaries
26367         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
26368         Support lists of dictionaries of the form "DICT1,DICT2,...".
26369         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
26371         Minor formatting changes in ispell.el
26372         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
26373         (ispell-print-if-debug, ispell-aspell-find-dictionary)
26374         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
26375         (ispell-hunspell-dictionary-alist)
26376         (ispell-hunspell-fill-dictionary-entry)
26377         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
26378         (ispell-buffer-with-debug, ispell-complete-word)
26379         (ispell-current-dictionary, ispell-current-personal-dictionary)
26380         (ispell-accept-output, ispell-minor-mode)
26381         (ispell-personal-dictionary, ispell-dictionary-alist)
26382         (ispell-really-aspell, ispell-really-hunspell)
26383         (ispell-encoding8-command, ispell-aspell-supports-utf8)
26384         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
26385         Fix whitespace, inconsistent capitalization, and arguments in doc
26386         strings.
26388 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
26390         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
26391         function refused to resize a size-preserved window.
26393 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
26395         * doc/lispref/windows.texi (Selecting Windows): Improve
26396         documentation and indexing of 'window-use-time'.
26398 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
26400         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
26401         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
26402         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
26403         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
26404         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
26405         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
26406         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
26407         Fix up commenting style.
26409 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
26411         text-quoting-style in emacs-lisp diagnostics
26412         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
26413         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
26414         (ad-disable-advice, ad-remove-advice, ad-set-argument)
26415         (ad-set-arguments):
26416         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
26417         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
26418         (byte-optimize-while, byte-optimize-apply):
26419         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
26420         (byte-compile-log-file, byte-compile-format-warn)
26421         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
26422         (byte-compile-cl-warn)
26423         (byte-compile-warn-about-unresolved-functions)
26424         (byte-compile-file, byte-compile-fix-header)
26425         (byte-compile--declare-var, byte-compile-file-form-defmumble)
26426         (byte-compile-form, byte-compile-normal-call)
26427         (byte-compile-variable-ref, byte-compile-variable-set)
26428         (byte-compile-subr-wrong-args, byte-compile-setq-default)
26429         (byte-compile-negation-optimizer)
26430         (byte-compile-condition-case--old)
26431         (byte-compile-condition-case--new, byte-compile-save-excursion)
26432         (byte-compile-defvar, byte-compile-autoload)
26433         (byte-compile-lambda-form)
26434         (byte-compile-make-variable-buffer-local, display-call-tree)
26435         (batch-byte-compile):
26436         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
26437         (cconv-analyze-form):
26438         * lisp/emacs-lisp/chart.el (chart-space-usage):
26439         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
26440         (check-declare-warn, check-declare-file)
26441         (check-declare-directory):
26442         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
26443         (checkdoc-message-text-engine):
26444         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
26445         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
26446         (cl-symbol-macrolet):
26447         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
26448         * lisp/emacs-lisp/copyright.el (copyright)
26449         (copyright-update-directory):
26450         * lisp/emacs-lisp/edebug.el (edebug-read-list):
26451         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
26452         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
26453         (eieio-oref, eieio-oset-default):
26454         * lisp/emacs-lisp/eieio-speedbar.el:
26455         (eieio-speedbar-child-make-tag-lines)
26456         (eieio-speedbar-child-description):
26457         * lisp/emacs-lisp/eieio.el (defclass, change-class):
26458         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
26459         (elint-init-form, elint-check-defalias-form)
26460         (elint-check-let-form):
26461         * lisp/emacs-lisp/ert.el (ert-get-test):
26462         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
26463         (find-function-library):
26464         * lisp/emacs-lisp/generator.el (iter-yield):
26465         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
26466         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
26467         * lisp/emacs-lisp/package-x.el (package-upload-file):
26468         * lisp/emacs-lisp/package.el (package-version-join)
26469         (package-disabled-p, package-activate-1, package-activate)
26470         (package--download-one-archive)
26471         (package--download-and-read-archives)
26472         (package-compute-transaction, package-install-from-archive)
26473         (package-install, package-install-selected-packages)
26474         (package-delete, package-autoremove)
26475         (package-install-button-action, package-delete-button-action)
26476         (package-menu-hide-package, package-menu--list-to-prompt)
26477         (package-menu--perform-transaction)
26478         (package-menu--find-and-notify-upgrades):
26479         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
26480         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
26481         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
26482         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
26483         * lisp/emacs-lisp/smie.el (smie-config-save):
26484         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
26485         * lisp/emacs-lisp/testcover.el (testcover-1value):
26486         Use curved quotes in diagnostic format strings.
26488 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
26490         python.el: Ensure remote process-environment on non-interactive processes
26491         * lisp/progmodes/python.el
26492         (python-shell-tramp-refresh-process-environment): New function.
26493         (python-shell-with-environment): Use it.
26494         * test/automated/python-tests.el (python-shell-with-environment-2):
26495         Update.
26497         python.el: Enhancements to process environment setup.
26498         * lisp/progmodes/python.el (python-shell-process-environment)
26499         (python-shell-extra-pythonpaths, python-shell-exec-path)
26500         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
26501         (python-shell-setup-codes): Remove :safe.
26502         (python-shell-remote-exec-path): New defcustom.
26503         (python-shell--add-to-path-with-priority): New macro.
26504         (python-shell-calculate-pythonpath): Give priority to
26505         python-shell-extra-pythonpaths.  Update docstring.
26506         (python-shell-calculate-process-environment): Give priority to
26507         python-shell-process-environment.  Update docstring.
26508         (python-shell-calculate-exec-path): Give priority to
26509         python-shell-exec-path and calculated virtualenv bin directory.
26510         Update docstring.
26511         (python-shell-tramp-refresh-remote-path): New function.
26512         (python-shell-with-environment): Use it when working remotely and
26513         do not modify tramp-remote-path.  Allow nesting.
26514         (python-shell-calculate-command): Remove useless
26515         python-shell-with-environment call.
26516         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
26517         (python-shell-calculate-pythonpath-2)
26518         (python-shell-calculate-process-environment-6)
26519         (python-shell-calculate-process-environment-7)
26520         (python-shell-calculate-process-environment-8)
26521         (python-shell-calculate-exec-path-3)
26522         (python-shell-calculate-exec-path-4)
26523         (python-shell-calculate-exec-path-5)
26524         (python-shell-calculate-exec-path-6)
26525         (python-shell-with-environment-3): New tests.
26526         (python-shell-calculate-process-environment-2)
26527         (python-shell-calculate-process-environment-3)
26528         (python-shell-calculate-process-environment-4)
26529         (python-shell-calculate-process-environment-5)
26530         (python-shell-calculate-exec-path-1)
26531         (python-shell-calculate-exec-path-2)
26532         (python-shell-with-environment-1)
26533         (python-shell-with-environment-2): Update and simplify.
26535 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
26537         Avoid hard-coding "M-x command" in docstrings
26538         * lisp/calendar/todo-mode.el (todo-mode):
26539         * lisp/desktop.el (desktop-save-mode):
26540         * lisp/edmacro.el (edit-kbd-macro):
26541         * lisp/emacs-lisp/package.el (package-menu-execute):
26542         * lisp/emulation/viper-cmd.el (viper-ask-level):
26543         * lisp/emulation/viper-init.el (viper-expert-level):
26544         * lisp/filesets.el (filesets-add-buffer):
26545         * lisp/follow.el (follow-mode):
26546         * lisp/gnus/auth-source.el (auth-sources):
26547         * lisp/international/ogonek.el (ogonek-informacja)
26548         (ogonek-information):
26549         * lisp/net/tramp.el (tramp-process-actions):
26550         * lisp/org/org-gnus.el (org-gnus-no-new-news):
26551         * lisp/org/org.el (org-ellipsis):
26552         * lisp/progmodes/python.el (python-shell-get-process-or-error):
26553         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
26554         * lisp/server.el (server-start):
26555         * lisp/type-break.el (type-break-noninteractive-query):
26556         * lisp/userlock.el (ask-user-about-supersession-help):
26557         * lisp/whitespace.el (whitespace-report-region):
26558         Prefer (substitute-command-keys "`\\[foo-command]'")
26559         to "`M-x foo-command'" in docstrings and the like.
26561 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
26563         Use add-function for prettify-symbols-compose-predicate
26564         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
26565         prettify-symbols-compose-predicate in terms of add-function.
26566         * etc/NEWS: Mention prettify-symbols-compose-predicate and
26567         prettify-symbols-mode support in tex-mode.
26569 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
26571         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
26572         (smie-indent-exps, smie-indent-keyword): Use it.
26573         * test/indent/css-mode.css: Test alignment with leading comment.
26575 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
26577         Respect text-quoting-style in (*Finder*) menus
26578         * lisp/info.el (info--prettify-description):
26579         Treat description as a docstring, so that it's requoted as
26580         per text-quoting-style.
26582 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
26584         Document `window-use-time' in Elisp manual
26585         * doc/lispref/windows.texi (Selecting Windows): Document
26586         `window-use-time'.
26588 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
26590         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
26591         This is a cleaner fix for Bug#21260 than the previous change.
26593 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
26595         Respect text-quoting-style in calc
26596         In calc, tespect text-quoting-style preference in diagnostic
26597         formats and fix a few similar problems in docstrings.
26598         * lisp/calc/calc-aent.el (math-read-factor):
26599         * lisp/calc/calc-embed.el (calc-do-embedded):
26600         * lisp/calc/calc-ext.el (calc-user-function-list)
26601         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
26602         * lisp/calc/calc-help.el (calc-describe-key)
26603         (calc-describe-thing):
26604         * lisp/calc/calc-lang.el (calc-c-language)
26605         (math-parse-fortran-vector-end, math-parse-tex-sum)
26606         (math-parse-eqn-matrix, math-parse-eqn-prime)
26607         (calc-yacas-language, calc-maxima-language, calc-giac-language)
26608         (math-read-big-rec, math-read-big-balance):
26609         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
26610         (calc-auto-recompute):
26611         * lisp/calc/calc-prog.el (calc-user-define-invocation)
26612         (math-do-arg-check):
26613         * lisp/calc/calc-store.el (calc-edit-variable):
26614         * lisp/calc/calc-units.el (math-build-units-table-buffer):
26615         * lisp/calc/calc-vec.el (math-read-brackets):
26616         * lisp/calc/calc-yank.el (calc-edit-mode):
26617         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
26618         Use curved quotes in diagnostic format strings.
26619         * lisp/calc/calc-help.el (calc-describe-thing):
26620         Format docstrings with substitute-command-keys.
26621         * lisp/calc/calc-help.el (calc-j-prefix-help):
26622         * lisp/calc/calc-misc.el (calc-help):
26623         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
26624         Escape a docstring "`".
26626 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
26628         Fix documentation of 'menu-set-font' and 'set-frame-font'
26629         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
26630         * doc/lispref/frames.texi (Frame Font): Document that
26631         set-frame-font with the last argument 't' will also make the font
26632         the default for the future GUI frames.
26634         Document '--create-frame' option to emacsclient
26635         * doc/emacs/misc.texi (emacsclient Options): Document the
26636         '--create-frame' option.  (Bug#21308)
26638 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
26640         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
26642 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
26644         Document 'get-mru-window' in the ELisp manual
26645         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
26646         'get-mru-window'.  (Bug#21306)
26648         Clarify documentation of 'get-buffer-window-list'
26649         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
26650         current window, if relevant, will be the first in the list
26651         returned by 'get-buffer-window-list'.
26652         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
26654 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
26656         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
26657         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
26658         `switch-to-buffer'.
26660 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
26662         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
26663         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
26664         `display-buffer' instead of `switch-to-buffer'.
26666 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
26668         Follow user preference in calendar diagnostics
26669         Respect text-quoting-style preference in diagnostic formats by
26670         using curved quotes (which are translated as per text-quoting-style)
26671         instead of grave accent and apostrophe (which are not).
26672         * lisp/calendar/appt.el (appt-display-message):
26673         * lisp/calendar/diary-lib.el (diary-check-diary-file)
26674         (diary-mail-entries, diary-from-outlook):
26675         * lisp/calendar/icalendar.el (icalendar-export-region)
26676         (icalendar--convert-float-to-ical)
26677         (icalendar--convert-date-to-ical)
26678         (icalendar--convert-ical-to-diary)
26679         (icalendar--convert-recurring-to-diary)
26680         (icalendar--add-diary-entry):
26681         * lisp/calendar/time-date.el (format-seconds):
26682         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
26683         (timeclock-make-hours-explicit):
26684         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
26685         (todo-item-mark, todo-check-format)
26686         (todo-insert-item--next-param, todo-edit-item--next-key)
26687         (todo-mode):
26688         Use curved quotes in diagnostic format strings.
26689         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
26690         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
26691         Just use straight quoting for simple test case.
26693 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
26695         * src/gfilenotify.c (Fgfile_add_watch):
26696         Handle errors from g_file_monitor.
26698 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
26700         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
26701         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
26702         frame" instead of "non-minibuffer frame".
26704         Fix frame geometry related text
26705         * doc/lispref/frames.texi (Frame Layout):
26706         Rename `x-frame-geometry' to `frame-geometry'.
26707         * doc/lispref/frames.texi (Mouse Position):
26708         * doc/lispref/windows.texi (Coordinates and Windows):
26709         Use `set-mouse-absolute-pixel-position' instead of
26710         `x-set-mouse-absolute-pixel-position'.
26712         Sanitize frame geometry related functions
26713         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
26714         (Fx_frame_edges): Rename to Fns_frame_edges.
26715         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
26716         (Fx_frame_edges): Rename to Fw32_frame_edges.
26717         (Fx_mouse_absolute_pixel_position): Rename to
26718         Fw32_mouse_absolute_pixel_position.
26719         (Fx_set_mouse_absolute_pixel_position): Rename to
26720         Fw32_set_mouse_absolute_pixel_position.
26721         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
26722         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
26723         (ns-frame-edges, w32-mouse-absolute-pixel-position)
26724         (x-mouse-absolute-pixel-position)
26725         (w32-set-mouse-absolute-pixel-position)
26726         (x-set-mouse-absolute-pixel-position): Declare.
26727         (frame-geometry, mouse-absolute-pixel-position)
26728         (set-mouse-absolute-pixel-position): New functions.
26729         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
26731 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
26733         Fix MinGW64 build broken by latest w32uniscribe.c changes
26734         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
26735         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
26736         (Bug#21260)
26738 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
26740         Add TeX defaults for prettify-symbol-mode
26741         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
26742         Rename from tex-prettify-symbols-alist.
26743         (tex--prettify-symbols-compose-p): New function.
26744         (tex-common-initialization): Use them as prettify-symbols-alist
26745         and prettify-symbols-compose-predicate.
26747         Generalize prettify-symbols to arbitrary modes
26748         * lisp/progmodes/prog-mode.el
26749         (prettify-symbols-default-compose-p): New function.
26750         (prettify-symbols-compose-predicate): New variable.
26751         (prettify-symbols--compose-symbol): Use it.
26753 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
26755         Don't quote symbols 'like-this' in docstrings etc.
26756         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
26757         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
26758         * lisp/allout.el (allout-add-resumptions, allout-mode):
26759         * lisp/calculator.el (calculator-operators):
26760         * lisp/cedet/data-debug.el (dd-propertize):
26761         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
26762         * lisp/cedet/semantic/analyze/debug.el:
26763         (semantic-analyzer-debug-global-miss-text):
26764         * lisp/cedet/semantic/lex-spp.el:
26765         (semantic-lex-spp-replace-or-symbol-or-keyword):
26766         * lisp/cedet/semantic/symref.el:
26767         (semantic-symref-cleanup-recent-buffers-fcn):
26768         * lisp/cedet/semantic/tag.el (semantic-tag-class):
26769         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
26770         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
26771         * lisp/gnus/pop3.el (pop3-authentication-scheme):
26772         * lisp/help-fns.el (describe-function-orig-buffer):
26773         * lisp/imenu.el (imenu--history-list):
26774         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
26775         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
26776         (feedmail-queue-default-file-slug)
26777         (feedmail-queue-buffer-file-name):
26778         * lisp/net/mairix.el (mairix-searches-mode-map):
26779         * lisp/net/newst-backend.el (newsticker-retrieval-method)
26780         (newsticker-auto-mark-filter-list):
26781         * lisp/obsolete/vi.el (vi-mode):
26782         * lisp/progmodes/cc-engine.el (c-literal-type):
26783         * lisp/progmodes/cpp.el (cpp-face):
26784         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
26785         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
26786         * lisp/progmodes/pascal.el (pascal-auto-lineup):
26787         * lisp/progmodes/prog-mode.el (prog-widen):
26788         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
26789         (verilog-auto-lineup, verilog-auto-reset-widths)
26790         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
26791         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
26792         (flyspell-maybe-correct-doubling):
26793         * lisp/textmodes/table.el (table-justify, table-justify-cell)
26794         (table-justify-row, table-justify-column, table-insert-sequence)
26795         (table--justify-cell-contents):
26796         * lisp/url/url-auth.el (url-get-authentication):
26797         * lisp/window.el (display-buffer-record-window):
26798         * lisp/xml.el (xml-parse-file, xml-parse-region):
26799         * src/gfilenotify.c (Fgfile_add_watch):
26800         Don't quote symbols with apostrophes in doc strings.
26801         Use asymmetric quotes instead.
26802         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
26803         Likewise for symbol in diagnostic.
26804         * lisp/image.el (image-extension-data):
26805         * lisp/register.el (frame-configuration-to-register):
26806         * src/buffer.c (syms_of_buffer):
26807         Remove bogus apostrophes after symbols.
26808         * lisp/thumbs.el (thumbs-conversion-program):
26809         Quote Lisp string values using double-quotes, not apostrophes.
26811 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
26813         Describe frame geometry and related functions in Elisp manual
26814         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
26815         (Showing Images): Update references.
26816         * doc/lispref/elisp.texi (Top): Update node listing.
26817         * doc/lispref/frames.texi (Frame Geometry): New node.
26818         Move `Size and Position' section here.
26819         (Size Parameters): Update references.
26820         (Mouse Position): Update references and nomenclature.
26821         Describe new functions `x-mouse-absolute-pixel-position' and
26822         `x-set-mouse-absolute-pixel-position'.
26823         * doc/lispref/windows.texi (Window Sizes): Update references.
26824         (Resizing Windows): Update references.  Move description of
26825         `fit-frame-to-buffer' here.
26826         (Coordinates and Windows): Update nomenclature and references.
26827         Describe new arguments of `window-edges'.  Comment out
26828         descriptions of `window-left-column', `window-top-line',
26829         `window-pixel-left' and `window-pixel-top'.  Describe
26830         `window-absolute-pixel-position'.
26832 2015-08-20  Alan Mackenzie  <acm@muc.de>
26834         Handling of `c-parse-state'.  Fix low level bug.
26835         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
26836         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
26838 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
26840         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
26841         window instead of deleting it.
26843 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
26845         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
26846         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
26847         determine whether frame has a titlebar.
26848         Suggested by Eli Zaretskii <eliz@gnu.org>
26850 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
26852         Add a prettify-symbols-alist for (La)TeX
26853         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
26854         New variable holding an alist suitable as prettify-symbols-alist in
26855         (La)TeX modes.
26857 2015-08-19  Alan Mackenzie  <acm@muc.de>
26859         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
26860         Fixes debbugs#21275.
26861         In Emacs >= 25, let electric-pair-mode take precedence over
26862         delete-selection-mode.
26863         * lisp/delsel.el (delete-selection-uses-region-p): New function,
26864         previously a lambda expression in a property value for
26865         `self-insert-command'.
26866         (top-level): Set the `delete-selection' property of
26867         `self-insert-command' to `delete-selection-uses-region-p'.
26868         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
26869         property for c-electric-\(brace\|paren\) the value
26870         `delete-selection-uses-region-p' when the latter function exists.
26872 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26874         Fix key binding quoting in tutorial *Help*
26875         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
26876         When generating help for custom key bindings, use the user-preferred
26877         quoting style rather than hardcoding the grave style.
26879 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
26881         Improve and future-proof OTF fonts support in w32uniscribe.c
26882         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
26883         about the expected results and why the new Uniscribe APIs are not
26884         used in this function.
26885         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
26886         (ScriptGetFontFeatureTags_Proc): New function typedefs.
26887         (uniscribe_new_apis): New static variable.
26888         (uniscribe_check_features): New function, implements OTF features
26889         verification while correctly accounting for features in the list
26890         after the nil member, if any.
26891         (uniscribe_check_otf_1): New function, retrieves the features
26892         supported by the font for the requested script and language using
26893         the Uniscribe APIs available from Windows Vista onwards.
26894         (uniscribe_check_otf): If the new Uniscribe APIs are available,
26895         use them in preference to reading the font data directly.  Call
26896         uniscribe_check_features to verify that the requested features are
26897         supported, replacing the original incomplete code.
26898         (syms_of_w32uniscribe): Initialize function pointers for the new
26899         Uniscribe APIs.  (Bug#21260)
26900         (otf_features): Scan the script, langsys, and feature arrays back
26901         to front, so that the result we return has them in alphabetical
26902         order, like ftfont.c does.
26903         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
26904         New variable for debugging w32uniscribe.c code.
26906 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
26908         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
26909         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
26910         clause of `isearch-search-fun-default'.  That lax variable does not
26911         refer to lax-whitespacing.  Related to (bug#21777).
26912         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
26913         * lisp/character-fold.el (character-fold-search): Set to nil.
26914         Default to nil for now, until someone implements proper
26915         lax-whitespacing with char-fold searching.
26917 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
26919         Fix doc-string of `help-mode-finish'.
26920         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
26922         In nsimage.m include coding.h (Bug#21292)
26923         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
26925         Move window edge functions to Elisp.
26926         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
26927         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
26928         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
26929         Move to window.el.
26930         (calc_absolute_offset): Remove.
26931         * lisp/frame.el (frame-edges): New function.
26932         * lisp/window.el (window-edges, window-pixel-edges)
26933         (window-absolute-pixel-edges): Move here from window.c.
26934         (window-body-edges, window-body-pixel-edges)
26935         (window-absolute-body-pixel-edges): Move here from window.c and
26936         rename "inside" to "body".  Keep old names as aliases.
26937         (window-absolute-pixel-position): New function.
26939 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
26941         [Gnus]: Use overlay functions directly
26942         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
26943         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
26944         (gnus-article-highlight-signature, gnus-article-extend-url-button)
26945         (gnus-article-add-button, gnus-insert-prev-page-button)
26946         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
26947         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
26948         (gnus-cite-add-face):
26949         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
26950         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
26951         (gnus-tree-recenter, gnus-highlight-selected-tree):
26952         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
26953         (gnus-summary-show-thread, gnus-summary-hide-thread)
26954         (gnus-highlight-selected-summary):
26955         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
26956         * lisp/gnus/message.el (message-fix-before-sending)
26957         (message-toggle-image-thumbnails):
26958         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
26959         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
26960         Use overlay functions directly instead of using gnus-overlay-*,
26961         message-overlay-*, and sieve-overlay-*.
26962         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
26963         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
26964         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
26965         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
26966         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
26967         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
26968         (message-overlay-get, message-overlay-put, message-overlays-in):
26969         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
26970         (sieve-overlays-at): Remove.
26972 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
26974         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
26975         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
26976         builds can use the declaration from the system headers.
26977         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
26978         definition of TITLEBAR_INFO.
26979         Suggested by Eli Zaretskii  <eliz@gnu.org>
26981 2015-08-19  Glenn Morris  <rgm@gnu.org>
26983         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
26985 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
26987         Use new q ‘format’ flag when fixing quotes in C
26988         * src/image.c (image_size_error): New function.  All uses of
26989         image_error with "Invalid image size ..."  changed to use it.
26990         * src/image.c (image_size_error, xbm_load_image, xbm_load)
26991         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
26992         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
26993         (imagemagick_load, svg_load, svg_load_image, gs_load)
26994         (x_kill_gs_process):
26995         * src/lread.c (load_warn_old_style_backquotes):
26996         * src/xfaces.c (load_pixmap):
26997         * src/xselect.c (x_clipboard_manager_error_1):
26998         Use %qs, not uLSQM and uRSQM.
26999         * src/syntax.c (Finternal_describe_syntax_value):
27000         Prefer Fsubstitute_command_keys to Fformat, as this lets
27001         us use AUTO_STRING.
27002         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
27003         as it's now guaranteed to be ASCII.
27004         * src/xselect.c (x_clipboard_manager_error_2):
27005         Avoid grave accent in low-level stderr diagnostic.
27007 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
27009         New q flag for ‘format’
27010         * doc/lispref/processes.texi (Sentinels):
27011         Don't hardwire grave quoting style in example.
27012         * doc/lispref/strings.texi (Formatting Strings):
27013         * etc/NEWS:
27014         Document new q flag.
27015         * src/editfns.c (Fformat): Implement it.
27017 2015-08-18  Daiki Ueno  <ueno@gnu.org>
27019         pinentry.el: Add debugging support
27020         * lisp/net/pinentry.el (pinentry-debug): New variable.
27021         (pinentry-debug-buffer): New variable.
27022         (pinentry--process-filter): Send input to the debug buffer, if
27023         `pinentry-debug' is set.
27025         pinentry.el: Improve multiline prompt
27026         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
27027         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
27028         command.
27030 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
27032         Fix multibyte confusion in diagnostics
27033         * src/print.c (print_error_message):
27034         Don't assume that the caller's name is unibyte.
27035         * src/xdisp.c (vadd_to_log):
27036         Don't assume that the formatted diagnostic is unibyte.
27038         Fix file name encodings in diagnostics
27039         Also, close some minor races when opening image files, by opening
27040         them once instead of multiple times.
27041         * src/gtkutil.c (xg_get_image_for_pixmap):
27042         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
27043         (svg_load):
27044         * src/nsimage.m (allocInitFromFile:):
27045         * src/xfns.c (xg_set_icon):
27046         Encode file name, since x_find_image_file no longer does that.
27047         * src/image.c (x_find_image_fd): New function.
27048         (x_find_image_file): Use it.  Do not encode resulting file name,
27049         since callers sometimes need it decoded.
27050         (slurp_file): File arg is now a fd, not a file name.
27051         All callers changed.  This saves us having to open the file twice.
27052         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
27053         (svg_load):
27054         Use x_find_image_fd and fdopen to save a file-open.
27055         Report file name that failed.
27056         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
27058 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
27060         Allow blink-matching-paren to jump off screen
27061         * doc/emacs/programs.texi (Matching): Mention the
27062         `blink-matching-paren' value `jump-offscreen'.
27063         * lisp/simple.el (blink-matching-paren): New possible value.
27064         (blink-matching-paren-on-screen): Clarify the docstring.
27065         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
27067         Refine the previous change
27068         * lisp/simple.el (blink-matching-open): Use minibuffer-message
27069         outside of save-excursion (bug#21286).
27071 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
27073         Rewrite and add frame geometry related functions.
27074         * src/frame.c (Fframe_position): New function.
27075         (Fset_frame_position): Rename parameters and rewrite doc-string.
27076         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
27077         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
27078         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
27079         Qtitle_bar_size.
27080         * src/nsfns.m (frame_geometry): New function.
27081         (Fx_frame_geometry): Call frame_geometry.
27082         (Fx_frame_edges): New function.
27083         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
27084         (GetTitleBarInfo_Proc): Define these so we can use the
27085         GetTitleBarInfo API.
27086         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
27087         (Fx_frame_geometry): Rewrite.
27088         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
27089         (Fx_set_mouse_absolute_pixel_position): New functions.
27090         * src/xfns.c (frame_geometry): New function.
27091         (Fx_frame_geometry): Call frame_geometry.
27092         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
27093         (Fx_set_mouse_absolute_pixel_position): New functions.
27095 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
27097         Improve Tramp's compatibility
27098         * lisp/net/tramp.el (tramp-get-method-parameter):
27099         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
27100         (tramp-adb-get-device):
27101         * lisp/net/trampver.el (tramp-repository-get-version):
27102         Use `tramp-compat-replace-regexp-in-string'.
27104 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
27106         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
27107         Encode/decode string.
27109 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
27111         Clarify what happens to match data on failure
27112         Problem reported by Ernesto Alfonso (Bug#21279).
27113         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
27114         Document more carefully what happens to match data after a failed
27115         search.
27116         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
27117         the return value is undefined if the last search failed.
27118         (Fmatch_data): Simplify doc string line 1.
27120 2015-08-18  Daiki Ueno  <ueno@gnu.org>
27122         Revert "pinentry.el: Support external passphrase cache"
27123         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
27124         pinentry.el shouldn't directly interact with the secrets service,
27125         but ask the caller to cache the passphrase.
27127 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
27129         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
27130         Message mode hooks.
27132 2015-08-17  Daiki Ueno  <ueno@gnu.org>
27134         epg.el: Make gpgconf output parsing future proof
27135         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
27136         --list-options" output.
27138         pinentry.el: Support external passphrase cache
27139         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
27140         (pinentry--allow-external-password-cache): New local variable.
27141         (pinentry--key-info): New local variable.
27142         (secrets-enabled, secrets-search-items, secrets-get-secret):
27143         Declare.
27144         (pinentry--send-passphrase): New function, split from
27145         `pinentry--process-filter'.
27146         (pinentry--process-filter): Use secrets.el to retrieve passphrase
27147         from login keyring.
27149         pinentry.el: Popup window for multiline prompt
27150         * lisp/net/pinentry.el (pinentry): New custom group.
27151         (pinentry-popup-prompt-window): New user option.
27152         (pinentry-prompt-window-height): New user option.
27153         (pinentry--prompt-buffer): New variable.
27154         (pinentry-prompt-mode-map): New variable.
27155         (pinentry-prompt-mode): New function.
27156         (pinentry--prompt): New function.
27157         (pinentry--process-filter): Use `pinentry--prompt' instead of
27158         `read-passwd' and `y-or-n-p'.
27160 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
27162         message.el: Silent the byte compiler
27163         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
27164         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
27165         (message-delete-overlay, message-window-inside-pixel-edges):
27166         Declare before using.
27168         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
27169         (message-window-inside-pixel-edges): XEmacs compatible functions.
27171 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
27173         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
27175 2015-08-17  Noah Friedman  <friedman@splode.com>
27177         * lisp/simple.el (blink-matching-open): Restore point before
27178         calling minibuffer-message.
27180 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
27182         * lisp/play/dunnet.el: Update version number in header (now
27183         matches help).
27185 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
27187         Curved quotes in --batch diagnostics in non-UTF-8
27188         When run with --batch, check that curved quotes are compatible with
27189         the system locale before outputting them in diagnostics.
27190         Problem reported by Eli Zaretskii in:
27191         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
27192         * lisp/startup.el (command-line): Set internal--text-quoting-flag
27193         after the standard display table is initialized.
27194         * src/doc.c (default_to_grave_quoting_style): New function.
27195         (text_quoting_style): Use it.
27196         (text_quoting_flag): New static var, visible to Lisp as
27197         internal--text-quoting-flag.
27198         * src/emacs.c: Include <wchar.h> if available.
27199         (using_utf8): New function.
27200         (main): Use it to initialize text_quoting_flag.
27201         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
27202         Don't define, as it's not needed and it clashes with wchar.h.
27204 2015-08-17  Glenn Morris  <rgm@gnu.org>
27206         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
27207         from makeinfo about spurious "Note:" cross-reference, and for grammar.
27209 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
27211         Minor change in variable initialization on MS-Windows
27212         * src/w32fns.c <after_dead_key>: Initialize to -1.
27213         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
27214         non-zero.
27216         Fix a bug with LWindow key remapping on MS-Windows
27217         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
27219 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
27221         Improve fontset support for latest OTF script tags
27222         * lisp/international/fontset.el (otf-script-alist): Add some
27223         missing script tags.
27224         (setup-default-fontset): Include settings for v2 versions of the
27225         script tags used by some modern OTF/TTF fonts.
27227 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
27229         Spelling fixes
27231 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
27233         Use curved quotes in core elisp diagnostics
27234         In the core elisp files, use curved quotes in diagnostic formats,
27235         so that they follow user preference as per ‘text-quoting-style’
27236         rather than being hard-coded to quote `like this'.
27237         * lisp/abbrev.el (expand-region-abbrevs):
27238         * lisp/button.el (button-category-symbol, button-put)
27239         (make-text-button):
27240         * lisp/cus-start.el:
27241         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
27242         (custom--sort-vars-1, load-theme):
27243         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
27244         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
27245         (cl-generic-generalizers):
27246         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
27247         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
27248         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
27249         (advice--make, define-advice):
27250         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
27251         * lisp/emacs-lisp/timer.el (timer-event-handler):
27252         * lisp/env.el (setenv):
27253         * lisp/facemenu.el (facemenu-add-new-face)
27254         (facemenu-add-new-color):
27255         * lisp/faces.el (face-documentation, read-face-name)
27256         (face-read-string, read-face-font, face-spec-set-match-display)
27257         (read-color, x-resolve-font-name):
27258         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
27259         (set-auto-mode, hack-local-variables)
27260         (hack-one-local-variable--obsolete)
27261         (dir-locals-set-directory-class, write-file)
27262         (basic-save-buffer, delete-directory, copy-directory)
27263         (recover-session, recover-session-finish, insert-directory)
27264         (file-modes-char-to-who, file-modes-symbolic-to-number)
27265         (move-file-to-trash):
27266         * lisp/font-lock.el (font-lock-fontify-buffer):
27267         * lisp/format.el (format-write-file, format-find-file)
27268         (format-insert-file):
27269         * lisp/frame.el (get-device-terminal, select-frame-by-name):
27270         * lisp/fringe.el (fringe--check-style):
27271         * lisp/help.el (describe-minor-mode-from-indicator):
27272         * lisp/image.el (image-type):
27273         * lisp/international/fontset.el (x-must-resolve-font-name):
27274         * lisp/international/mule-cmds.el (prefer-coding-system)
27275         (select-safe-coding-system-interactively)
27276         (select-safe-coding-system, activate-input-method)
27277         (toggle-input-method, describe-current-input-method):
27278         * lisp/international/mule-conf.el (code-offset):
27279         * lisp/mouse.el (minor-mode-menu-from-indicator):
27280         * lisp/replace.el (query-replace-read-from)
27281         (occur-after-change-function, occur-1):
27282         * lisp/scroll-bar.el (scroll-bar-columns):
27283         * lisp/simple.el (execute-extended-command)
27284         (undo-outer-limit-truncate, compose-mail, set-variable)
27285         (choose-completion-string, define-alternatives):
27286         * lisp/startup.el (site-run-file, tty-handle-args)
27287         (command-line, command-line-1):
27288         * lisp/subr.el (noreturn, define-error, add-to-list)
27289         (read-char-choice):
27290         * lisp/term/common-win.el (x-handle-xrm-switch)
27291         (x-handle-name-switch, x-handle-args):
27292         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
27293         Use curved quotes in diagnostics.
27294         * lisp/international/mule.el (find-auto-coding):
27295         Use " to quote in a diagnostic, to be consistent with the rest of
27296         this file.
27298         Convert lisp/term/x-win.el to UTF-8
27299         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
27300         runtime behavior, and the file is multilingual so compile-time
27301         appearance shouldn't be an issue.
27302         * admin/notes/unicode: Document this.
27304 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
27306         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
27307         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
27308         issues and comments, bug#943.
27309         (verilog-type-font-keywords): Cycle delay operators like ##1 and
27310         ##[0:$] are now highlighted in their entirety similarly to the #
27311         delay-control operator.  Likewise, the followed-by operators #-#
27312         and #=# are no longer partially highlighed.
27313         (verilog-backward-syntactic-ws-quick)
27314         (verilog-skip-backward-comments): Minor performance improvements
27315         to buffer traversal functions for reduced latency.
27316         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
27317         keyword 'final' follows 'assert/assume/cover', then it is part of
27318         a deferred immediate assertion item and should not be treated as a
27319         final construct for indentation.  Reported by Yuri Sugihara.
27320         (verilog-do-indent): Virtual task/function/class definition lines
27321         should not be considered as declarations.  Reported by Enzo Chi.
27322         (verilog-do-indent): Do not falsely indent to '=' of
27323         property/sequence operators on subsequent lines of a multi-line
27324         statement.
27325         (verilog-assignment-operator-re): Fix '!==' operator and add
27326         support for '<->', ':/', '#-#', and '#=#' operators.
27327         (verilog-calculate-indent, verilog-label-be): Enable
27328         case-sensitive regular expression parsing when looking for
27329         keywords.
27330         (verilog-calc-1): Detect 'pure virtual method' declarations which
27331         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
27332         (verilog-backward-ws&directives): When moving back to the start of
27333         a line and the preceeding line ended with an escaped-newline, then
27334         jump up one line.  This properly consumes a multi-line
27335         pre-processor directive.  Reported by Kaushal Modi.
27336         (verilog-dpi-import-export-re, verilog-extended-complete-re)
27337         (verilog-calc-1): Teach verilog-mode to properly indent after a
27338         DPI import/export statement that resides outside of a module.
27339         Reported by Kaushal Modi.
27340         (verilog-extended-complete-re): Update regexp to match both
27341         "DPI-C" and "DPI".  Reported by Kaushal Modi.
27343 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27345         substitute-command-keys a few more doc strings
27346         * lisp/allout.el (outlineify-sticky):
27347         * lisp/files.el (hack-one-local-variable--obsolete):
27348         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
27349         Use substitute-command-keys on some doc strings so that
27350         they don't use hard-coded key bindings or quoting styles.
27352         Fix quoting in Fformat calls
27353         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
27354         (xpm_load, xpm_load_image, pbm_load, png_load_body)
27355         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
27356         (imagemagick_load, svg_load, svg_load_image, gs_load)
27357         (x_kill_gs_process):
27358         * src/lread.c (load_warn_old_style_backquotes):
27359         * src/xfaces.c (load_pixmap):
27360         * src/xselect.c (x_clipboard_manager_error_1):
27361         Quote diagnostics according to user preference when calling
27362         Fformat or its derivatives.
27364 2015-08-15  Glenn Morris  <rgm@gnu.org>
27366         * admin/admin.el (set-version, set-copyright): Remove deleted files.
27368 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
27370         Allow describe-function helpers to access buffer-local values
27371         This will be used by cedet/mode-local.el `describe-mode-local-override'
27372         on `help-fns-describe-function-functions' in upstream CEDET.
27373         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
27374         `describe-function'.
27375         (describe-function): Bind it, save it on the help xref stack.
27377         Handle pulse-background being nil
27378         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
27379         pulse-background, handle it being nil.
27381 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27383         Fix "\`" confusion in Lisp strings
27384         * admin/authors.el (authors-canonical-author-name):
27385         Fix typo by using "\\`" not "\`" in string RE.
27386         * lisp/obsolete/complete.el (PC-complete-as-file-name):
27387         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
27388         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
27389         Use plain "`", not the equivalent-but-confusing "\`", in strings.
27390         * lisp/textmodes/texinfmt.el: Fix comment likewise.
27392 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
27394         * nt/zipdist.bat: Remove -- no longer used.
27396 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
27398         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
27399         rather than "getenforce".
27400         (tramp-sh-handle-set-file-selinux-context): Do not
27401         cache SELinux context if not all context components are given.
27403 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
27405         Add doc strings to 2 help-mode.el functions
27406         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
27407         strings.  (Bug#21263)
27409         Remove files used by the old MS-Windows specific build procedure
27410         * admin/unidata/makefile.w32-in:
27411         * doc/emacs/makefile.w32-in:
27412         * doc/lispintro/makefile.w32-in:
27413         * doc/lispref/makefile.w32-in:
27414         * doc/misc/makefile.w32-in:
27415         * leim/makefile.w32-in:
27416         * lib-src/makefile.w32-in:
27417         * lib/makefile.w32-in:
27418         * lisp/makefile.w32-in:
27419         * nt/INSTALL.OLD:
27420         * nt/config.nt:
27421         * nt/emacs-src.tags:
27422         * nt/envadd.bat:
27423         * nt/gmake.defs:
27424         * nt/makefile.w32-in:
27425         * nt/multi-install-info.bat:
27426         * nt/nmake.defs:
27427         * nt/paths.h:
27428         * src/makefile.w32-in: Files deleted.
27429         * nt/configure.bat: Remove everything except the blurb about the
27430         new build procedure.
27431         * make-dist: Remove references to makefile.w32-in in various
27432         directories, and to files in nt/ that were deleted.
27433         * etc/NEWS: Mention the fact that the files were dropped.
27435 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
27437         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
27438         (Bug#21248)
27440 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
27442         Default to inotify instead of gfile
27443         * configure.ac (with_file_notification): Fix typo that
27444         prevented suppression of file notification if HAVE_NS.
27445         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
27446         with_file_notification is 'yes' (Bug#21241).
27447         * etc/NEWS: Mention this.
27449         Fix broken URLs for ISO-IR
27450         * doc/emacs/mule.texi (Charsets):
27451         * lisp/international/mule-conf.el:
27452         Fix broken URL (Bug#21248).
27454         Low-level diagnostics now use ‘text-quoting-style’
27455         * src/doprnt.c (doprnt):
27456         Format ` and ' as per ‘text-quoting-style’.
27457         * src/xdisp.c (vmessage, message): Mention that the format should
27458         not contain ` or '.
27460         Prefer ‘format’ to ‘substitute-command-keys’
27461         * src/character.h (uLSQM, uRSQM): Move here ...
27462         * src/doc.c (uLSQM, uRSQM): ... from here.
27463         * src/doc.c (Fsubstitute_command_keys):
27464         * src/syntax.c (Finternal_describe_syntax_value):
27465         * lisp/cedet/mode-local.el (mode-local-print-binding)
27466         (mode-local-describe-bindings-2):
27467         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
27468         * lisp/cus-theme.el (describe-theme-1):
27469         * lisp/descr-text.el (describe-text-properties-1, describe-char):
27470         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
27471         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
27472         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
27473         * lisp/emacs-lisp/package.el (describe-package-1):
27474         * lisp/faces.el (describe-face):
27475         * lisp/help-fns.el (help-fns--key-bindings)
27476         (help-fns--compiler-macro, help-fns--parent-mode)
27477         (help-fns--obsolete, help-fns--interactive-only)
27478         (describe-function-1, describe-variable):
27479         * lisp/help.el (describe-mode):
27480         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
27481         to implement quoting style.  This generally makes the code simpler.
27483         Extend ‘format’ to translate curved quotes
27484         This is a followup to the recent doc string change, and deals with
27485         diagnostics and the like.  This patch is more conservative than
27486         the doc string change, in that the behavior of ‘format’ changes
27487         only if its first arg contains curved quotes and the user prefers
27488         straight or grave quotes.  (Come to think of it, perhaps we should
27489         be similarly conservative with doc strings too, but that can wait.)
27490         The upside of this conservatism is that existing usage is almost
27491         surely unaffected.  The downside is that we'll eventually have to
27492         change Emacs's format strings to use curved quotes in places where
27493         the user might want curved quotes, but that's a simple and
27494         mechanical translation that I'm willing to do later.  (Bug#21222)
27495         * doc/lispref/help.texi (Keys in Documentation):
27496         Move description of text-quoting-style from here ...
27497         * doc/lispref/strings.texi (Formatting Strings):
27498         ... to here, and describe new behavior of ‘format’.
27499         * etc/NEWS: Describe new behavior.
27500         * lisp/calc/calc-help.el (calc-describe-thing):
27501         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
27502         * lisp/info.el (Info-find-index-name):
27503         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
27504         of recently-added curved quotes.
27505         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
27506         Move from here ...
27507         * src/lisp.h: ... to here.
27508         * src/doc.c (text_quoting_style): New function.
27509         (Fsubstitute_command_keys): Use it.
27510         * src/editfns.c (Fformat): Implement new behavior.
27511         * src/lisp.h (enum text_quoting_style): New enum.
27513 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
27515         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
27516         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
27518 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
27520         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
27521         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
27523 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
27525         Flush file properties in Tramp
27526         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
27527         (tramp-sh-handle-set-file-times):
27528         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
27529         (tramp-adb-handle-set-file-times): Flush the file properties of
27530         the directory.
27532 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
27534         * doc/emacs/misc.texi (Amusements): Fixed typo.
27536 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
27538         Don't miss warnings about removing string text properties while dumping
27539         * src/alloc.c (purecopy): Warn about removing a string's text
27540         properties even when the same string was already pure-copied
27541         earlier.
27542         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
27543         (elisp--xref-format-extra): Fix the commentary.
27545 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
27547         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
27549 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
27551         * lisp/progmodes/compile.el: Use lexical-binding.
27552         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
27554 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
27556         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
27557         * lisp/uniquify.el: Remove redundant `:group's.
27559 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
27561         * lisp/net/tramp-adb.el
27562         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
27563         result to prevent modification of the tramp-cache by side effects.
27564         Use the correct cache key.
27566 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
27568         Make add_to_log varargs
27569         * src/alloc.c (run_finalizer_handler):
27570         * src/charset.c (load_charset_map_from_vector):
27571         * src/nsimage.m (ns_load_image):
27572         * src/xfaces.c (load_pixmap, load_color2):
27573         Simplify, now that add_to_log has a variable number of args.
27574         * src/image.c (image_error): Take a variable number of args.
27575         Callers simplified.
27576         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
27577         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
27578         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
27579         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
27581         Optional args for holiday-greek-orthodox-easter
27582         * etc/NEWS: Document this.
27583         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
27584         Add optional args N and STRING, mimicking the API and code of
27585         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
27587 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
27589         xref-find-definitions: Exclude more generic function items.
27590         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
27591         Add doc string.
27592         (cl--generic-find-defgeneric-regexp): New.
27593         (find-function-regexp-alist): Add it.
27594         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
27595         elisp-mode.el, change to search for ";;; Code:"
27596         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
27597         (find-function-regexp-alist): Add them.
27598         * lisp/progmodes/elisp-mode.el:
27599         (elisp--xref-format, elisp--xref-format-extra): Change back to
27600         defvar due to bug#21237.
27601         (elisp--xref-find-definitions): Exclude co-located default methods for
27602         generic functions.  Also exclude implicitly declared defgeneric.
27603         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
27604         mode variables defined by 'define-minor-mode'.
27605         * test/automated/elisp-mode-tests.el: Declare generic functions, add
27606         tests for them.
27607         (xref-elisp-test-run): Fix bug.
27608         (emacs-test-dir): Improve initial value.
27609         (find-defs-defun-defvar-el): Don't expect defvar.
27610         (find-defs-feature-el): Match change to find-feature-regexp.
27612 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
27614         Improve warning about purecopy of strings with properties
27615         * src/alloc.c (purecopy): Show the offending string with the
27616         warning about removing its text properties.
27618 2015-08-12  Alan Mackenzie  <acm@muc.de>
27620         Introduce new macros to cover Emacs's new names in cl-lib.el
27621         This also eliminates `mapcan' warnings in XEmacs.
27622         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
27623         characterise [X]Emacs versions.
27624         (top-level): Require either 'cl or 'cl-lib, depending on
27625         c--mapcan-status.
27626         Change this back to cc-external-require from an eval-when-compile
27627         require.
27628         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
27629         (c--delete-duplicates): New macros which expand into either old or new
27630         names.
27631         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
27632         rather than the old names.
27633         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
27634         rather than mapcan.
27635         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
27636         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
27637         depending on c--mapcan-status.
27638         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
27639         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
27640         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
27641         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
27642         (c-decl-block-key, c-keywords, c-keywords-obarray)
27643         (c-regular-keywords-regexp, c-primary-expr-regexp)
27644         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
27645         (c-known-type-key, c-nonlabel-token-key)
27646         (c-make-init-lang-vars-fun): Use the new macros rather than the old
27647         names.
27649 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
27651         loadhist.el (read-feature): Conform to completing-read
27652         * lisp/loadhist.el (read-feature): According to `completing-read'
27653         documentation, if collection is a list, then it must be a list of
27654         strings, not a list of symbols like before.
27656 2015-08-12  David Kastrup  <dak@gnu.org>
27658         Deal gracefully with up-events (Bug#19746)
27659         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
27660         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
27661         those may easily be injected by user-level Lisp code.
27662         (read_key_sequence): Discard unbound up-events like unbound
27663         down-events: they are even more likely only relevant for special
27664         purposes.
27665         While Emacs will not produce up-events on its own currently (those are
27666         converted to drag or click events before being converted to
27667         Lisp-readable structures), the input queue can be made to contain them
27668         by synthesizing events to `unread-command-events'.  Emacs should deal
27669         consistently with such events.
27671 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
27673         Fix display of thin lines whose newline has line-height property of t
27674         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
27675         and descent values of non-empty glyph rows, since they could have
27676         forced low values deliberately.  (Bug#21243)
27678 2015-08-12  Richard Stallman  <rms@gnu.org>
27680         Offer to combine multiple To or CC fields.
27681         * lisp/mail/sendmail.el (mail-combine-fields): New function.
27682         (mail-send): Call 'mail-combine-fields'.
27684         Don't decrypt encrypted files.
27685         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
27687         Handle encrypted mbox files.
27688         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
27689         the mbox file if necessary.
27691         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
27692         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
27693         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
27694         In a mime message, reenable Mime and show the parts that
27695         were shown before.
27696         Add keyword "decrypt" if anything decrypted.
27698         epa-inhibit inhibits auto-recognition of .gpg files
27699         * lisp/epa-file.el (epa-inhibit): New variable.
27700         (epa-file-handler): Check epa-inhibit.
27702 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
27704         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
27706 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
27708         Respect python.el imenu when semantic-mode is off
27709         Fixes bug#21220
27710         * lisp/cedet/semantic/wisent/python.el: Do not force
27711         wisent-python-default-setup on python-mode-hook.
27713 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
27715         Give names to Unicode code points in C code
27716         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
27717         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
27718         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
27719         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
27720         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
27721         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
27722         (OBJECT_REPLACEMENT_CHARACTER):
27723         New named constants for Unicode code points.
27724         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
27725         * src/composite.c (char_composable_p):
27726         * src/lread.c (readevalloop, read1):
27727         * src/xdisp.c (get_next_display_element):
27728         Use them.
27729         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
27730         Remove; now in character.h.
27732 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
27734         elisp--xref-find-definitions handle cl-defstuct default constructor
27735         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
27736         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
27737         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
27738         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
27739         from xref-elisp-test for ease of debugging.
27740         (xref-elisp-deftest): Rename from xref-elisp-test.
27741         (find-defs-constructor): New test.
27742         (find-defs-defgeneric-el): Match batch test config.
27743         (compile): Required for find-defs compilation-minor-mode test.
27744         (find-defs-defvar-el): Match code change.
27745         (find-defs-face-el): Match code change.
27746         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
27747         Improve doc string.
27749 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
27751         * lisp/replace.el (perform-replace): Document `replacements'.
27752         (perform-replace): Move the description of the format of `replacements'
27753         from the body's comment to the doc string.
27755 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
27757         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
27758         sequence.  Recent adb version send initial escape sequences, even
27759         when terminal type is set to TERM=dumb.
27761 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
27763         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
27764         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
27765         Function deleted.
27766         (elisp--xref-format-cl-defmethod): New defconst.
27767         (find-feature-regexp, find-alias-regexp): New defcustoms.
27768         (elisp--xref-make-xref): New function.
27769         (elisp--xref-find-definitions): Rewrite using the above, handle many
27770         more cases.  Always output all available definitions.
27771         (xref-location-marker): No need for special cases.
27772         * test/automated/elisp-mode-tests.el: Add more tests of
27773         elisp--xref-find-definitions, improve current tests.
27775 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
27777         Fix recording of events pushed onto unread-command-events
27778         * src/keyboard.c (read_char): Make sure events read from
27779         unread-command-events and unread-post-input-method-events are
27780         always recorded by record_char.  Reported by David Kastrup
27781         <dak@gnu.org>, see
27782         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
27784 2015-08-10  Samer Masterson  <samer@samertm.com>
27786         Set file buffer as current for "--file"
27787         * lisp/startup.el (command-line-1): Set file buffer as current before
27788         it is displayed so it can be used with options like "--eval".
27789         (Bug#21095)
27791 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
27793         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
27794         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
27795         after setting LC_ALL to the desired locale, to avoid affecting how
27796         numbers are read and printed.  (Bug#21223)
27798 2015-08-10  Alan Mackenzie  <acm@muc.de>
27800         Fix "Invalid search bound (wrong side of point)" in fontification
27801         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
27802         an initialization expression, check point is not beyond the
27803         fontification limit.
27805 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27807         Fix DPI calculation when Xft/DPI is default
27808         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
27809         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
27810         Remove unnecessary cast while we're in the neighborhood.
27812 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
27814         Add project-vc-search-path and project-vc-ignores
27815         * lisp/progmodes/project.el (project-vc): New group.
27816         (project-vc-search-path, project-vc-ignores): New variables.
27817         (project--value-in-dir): Utility function.
27818         (project-search-path, project-ignores): Use them.
27819         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
27820         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
27822 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27824         Fix some minor quoting issues with grave accent
27825         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
27826         Remove redundant quotes.
27827         * src/doc.c (uLSQM, uRSQM): New macros.
27828         * src/doc.c (Fsubstitute_command_keys):
27829         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
27830         preference for quotes rather than hardcoding the ‘grave’ style.
27831         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
27832         (re_match_2_internal) [DEBUG]: In debugging output, quote C
27833         strings with "...", not `...'.
27835         ChangeLog.2 ignores remote-tracking merges
27836         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
27837         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
27838         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
27840 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
27842         Use kpsewhich in ffap-latex-mode, if available
27843         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
27844         (ffap-latex-mode): Use kpsewhich if available.
27846         ffap: disallow braces in filenames for tex modes
27847         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
27848         braces in tex-related modes.
27850         Remove useless backslashes from ffap-string-at-point-mode-alist
27851         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
27852         misleading backslashes from default value.
27854         Augment docstring of ffap-string-at-point-mode-alist
27855         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
27856         and END are handled.
27858 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
27860         * lisp/org/org-src.el (org-edit-src-code)
27861         (org-edit-fixed-width-region):
27862         * lisp/simple.el (completion-setup-function):
27863         Remove calls to substitute-command-keys that always just return
27864         their argument.
27866 2015-08-09  Daiki Ueno  <ueno@gnu.org>
27868         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
27869         (Bug#21210)
27871 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
27873         Fix link to source code in help window
27874         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
27875         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
27876         'No longer include timestamp in header of .elc files'.  Add code
27877         that will return .el source file in load-path.
27879 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
27881         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
27882         Respect `isearch-lax-whitespace' when searching through
27883         `isearch-word'.
27885 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
27887         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
27889         * lisp/org/org.el: Fix up some lexical scoping warnings, and use dolist
27890         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
27891         (org-set-regexps-and-options, org-assign-fast-keys)
27892         (org-contextualize-keys, org-contextualize-validate-key)
27893         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
27894         (org-find-olp, org-find-exact-heading-in-directory)
27895         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
27896         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
27897         (org-replace-escapes): Use dolist.
27898         (org-mode): Optimize away XEmacs-only code.
27899         (org-refile-get-targets): Remove unused var `f'.
27900         (org-fast-todo-selection): Remove unused var `e'.
27901         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
27902         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
27903         (org-format-latex): Use dolist.  Remove unused var `e'.
27904         (org-toggle-heading): Access vars lexically rather than dynamically.
27905         (org-backward-sentence, org-forward-sentence, org-meta-return)
27906         (org-kill-line): Mark arg as unused.
27907         (org-submit-bug-report): Silence compiler warning.
27908         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
27909         (org-get-cursor-date): Remove unused var `tm'.
27910         (org-comment-or-uncomment-region): Use standard name `_'.
27911         (reftex-docstruct-symbol, reftex-cite-format): Declare to
27912         silence byte-compiler.
27913         (org-reftex-citation): Add `org--' prefix to dynamically scoped
27914         `rds' var.
27916 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
27918         Electric quote if coding is undecided or no conv
27919         * lisp/electric.el (electric--insertable-p): Also say that a
27920         string is insertable if the buffer file coding system is undecided
27921         or uses no conversion, as curved quotes will work in either case.
27923         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
27925 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
27927         Fix overlay string display regressions introduced in Emacs 24.5
27928         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
27929         buffer position, if we move the iterator to a new position as
27930         result of jumping over text covered by a "replacing" display
27931         property.
27932         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
27934         Support recovery from C stack overflow on MS-Windows
27935         * src/w32fns.c (w32_reset_stack_overflow_guard)
27936         (stack_overflow_handler): New functions for handling C stack
27937         overflow exceptions.
27938         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
27939         specially, and zero out except_addr if we do.
27940         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
27941         mode.
27942         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
27943         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
27944         the MinGW build, but the code guarded by that is for Posix hosts.
27945         * src/keyboard.c (command_loop) [WINDOWSNT]:
27946         Call w32_reset_stack_overflow_guard.
27947         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
27948         (sigsetjmp): New macro.
27949         (w32_reset_stack_overflow_guard): Declare the prototype.
27950         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
27952 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
27954         Improve error signalling for seq-subseq
27955         * lisp/emacs-lisp/seq.el (seq-subseq): The existing behavior is to error
27956         when indexes are too large, but to silently ignore numbers which
27957         are too negative for lists.  String and vector handling errors in
27958         both cases.  This has been regularized.  Error signaling behavior
27959         has been explicitly added to the doc string.
27961         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
27962         therefore also impacted by this change.  Update the doc string
27963         to reflect this.
27965         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
27966         added for these exceptional cases, as well as one non exceptional
27967         base case.
27969 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
27971         Improve error checking in tramp-adb.el
27972         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
27973         Improve error checking.  "ls -l" on Android in Enforcing mode can
27974         print "lstat './FILENAME failed: Permission denied".
27976 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
27978         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
27979         non-struct vectors.
27981 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
27983         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
27984         * lisp/window.el: Fix typo that broke build.
27985         (display-buffer--action-function-custom-type):
27986         Add `display-buffer-use-some-frame'.
27987         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
27989         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
27990         * lisp/window.el (display-buffer-use-some-frame): Add support for
27991         'inhibit-same-window in alist.
27992         * doc/lispref/windows.texi (display-buffer-use-some-frame):
27993         Doc support for 'inhibit-same-window in alist.
27995 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
27997         Avoid infinite loop in display of invisible text in strings
27998         * src/xdisp.c (handle_invisible_prop): If the next change of
27999         invisibility spec does not mean the beginning of a visible text,
28000         update the string position from which to start the search for the
28001         next invisibility change.  This avoids an infinite loop when we
28002         have more than one invisibility spec that are made inactive by
28003         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
28004         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
28005         for the situation that caused bug #21200.
28007 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
28009         * lisp/emacs-lisp/package.el: Simplify describe-package-1
28010         (package-help-section-name-face): New face.
28011         (package--print-help-section): New function.
28012         (describe-package-1): Refactor section printing.
28013         (package-make-button): Use face instead of font-lock-face, which
28014         doesn't work on buttons.
28016         * lisp/emacs-lisp/package.el: Define custom faces
28017         (package-name-face, package-description-face)
28018         (package-status-built-in-face, package-status-external-face)
28019         (package-status-available-face, package-status-new-face)
28020         (package-status-held-face, package-status-disabled-face)
28021         (package-status-installed-face, package-status-dependency-face)
28022         (package-status-unsigned-face, package-status-incompat-face)
28023         (package-status-avail-obso-face): New faces.
28024         (package-menu--print-info-simple): Use them.
28026 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
28028         Fix some confusion with ‘format’
28029         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
28030         (allout-graphics-modification-handler):
28031         Protect arbitrary string in a format context with "%s" format.
28032         * lisp/avoid.el:
28033         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
28034         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
28035         * lisp/erc/erc-button.el (erc-button-beats-to-time):
28036         * lisp/gnus/message.el (message-send-form-letter):
28037         * lisp/org/ob-core.el (org-babel-check-evaluate)
28038         (org-babel-confirm-evaluate):
28039         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
28040         * lisp/org/ox-latex.el (org-latex-compile):
28041         * lisp/org/ox-man.el (org-man-compile):
28042         * lisp/org/ox-odt.el (org-odt-template):
28043         * lisp/org/ox-texinfo.el (org-texinfo-compile):
28044         * lisp/progmodes/prolog.el (prolog-help-info)
28045         (prolog-view-predspec):
28046         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
28047         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
28048         * lisp/textmodes/rst.el (rst-replace-lines):
28049         Change (message (format ...)) to (message ...), and likewise
28050         for ‘error’.  This lessens the probability of confusion when the
28051         output of ‘format’ contains ‘%’.
28053 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
28055         * lisp/replace.el (replace-character-fold): Default to nil.
28057         * lisp/character-fold.el: Fix lax whitespace.
28058         (character-fold-table): Don't make space match other whitespace chars.
28059         (character-fold-to-regexp): Simplify lax behavior.
28061 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
28063         Preserve window point in xref-find-definitions-other-window
28064         Fix the problem reported by Ingo Logmar in
28065         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
28066         * lisp/progmodes/xref.el (xref--goto-char): Extract from
28067         xref--goto-location.
28068         (xref--pop-to-location): Use it.  Replace xref--goto-location with
28069         a direct xref-location-marker call.
28070         (xref--show-location): Likewise.
28071         (xref--display-position): Use xref--goto-char.
28073         * lisp/progmodes/project.el: Add a paragraph to the front matter.
28075 2015-08-04  David Kastrup  <dak@gnu.org>
28077         * lisp/vc/emerge.el (emerge-show-file-name):
28078         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
28079         (vhdl-comment-insert, vhdl-hooked-abbrev):
28080         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
28081         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
28082         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
28083         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
28084         * lisp/obsolete/vip.el (vip-escape-to-emacs)
28085         (vip-prefix-arg-value, vip-prefix-arg-com):
28086         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
28087         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
28088         (quail-tibkey-update-translation):
28089         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
28090         * lisp/leim/quail/lao.el (quail-lao-update-translation):
28091         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
28092         (quail-japanese-self-insert-and-switch-to-alpha):
28093         * lisp/leim/quail/hangul.el (hangul2-input-method)
28094         (hangul3-input-method, hangul390-input-method):
28095         * lisp/language/hanja-util.el (hangul-to-hanja-char):
28096         * lisp/international/robin.el (robin-input-method):
28097         * lisp/international/quail.el (quail-start-translation)
28098         (quail-start-conversion):
28099         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
28100         (gnus-article-describe-key-briefly):
28101         * lisp/eshell/em-hist.el (eshell-list-history):
28102         * lisp/term.el (term-dynamic-list-input-ring)
28103         (term-dynamic-list-completions):
28104         * lisp/subr.el (momentary-string-display):
28105         * lisp/simple.el (read-quoted-char):
28106         * lisp/pcomplete.el (pcomplete-show-completions):
28107         * lisp/kmacro.el (kmacro-repeat-on-last-key):
28108         * lisp/info.el (Info-summary):
28109         * lisp/ehelp.el (electric-help-command-loop):
28110         * lisp/ebuff-menu.el (electric-buffer-list)
28111         (Electric-buffer-menu-exit):
28112         * lisp/double.el (double-translate-key):
28113         * lisp/comint.el (comint-dynamic-list-input-ring)
28114         (comint-dynamic-list-completions): Do not overwrite preexisting
28115         contents of `unread-command-events' when putting new events into it.
28117 2015-08-04  Daniel Colascione  <dancol@dancol.org>
28119         Improve ansi-color filtering of unrecognized escape sequences
28120         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
28121         escape sequences.
28122         (ansi-color-filter-apply, ansi-color-apply): Filter out
28123         unrecognized escape sequences.
28125 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
28127         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
28128         definitions to `easy-menu-define', improve a couple to account for
28129         async, and add a couple of new commands.
28131 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
28133         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
28135 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
28137         Add new 'calendar-weekend-days' option
28138         Make the days receiving the 'calendar-weekend-header' face freely
28139         customizable, as they differ by region/culture.
28140         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
28141         new variable.
28142         * lisp/calendar/calendar.el (calendar-generate-month): New variable
28143         calendar-weekend-days to customize day header fontification.
28145 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
28147         Redo text-quoting-style variable
28148         Rename help-quote-translation to text-quoting-style,
28149         and use symbols rather than characters as values.
28150         This follows suggestions along these lines by Alan Mackenzie in:
28151         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
28152         and by Drew Adams in:
28153         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
28154         * doc/lispref/help.texi (Keys in Documentation)
28155         * etc/NEWS:
28156         * lisp/cus-start.el (standard):
28157         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
28158         Document and/or implement the new behavior instead of the old.
28159         (syms_of_doc): New symbols 'grave' and 'straight'.
28161 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
28163         nnimap.el: Use IMAP MOVE extension if available
28164         * lisp/gnus/nnimap.el (nnimap-request-move-article)
28165         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
28166         Use MOVE extension if available.
28168         nnimap.el: Explicitly ask for server capabilities
28169         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
28170         capabilities will be returned in the login-result.
28172 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
28174         Treat help strings like other doc strings
28175         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
28176         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
28177         substitute-command-keys.
28178         * src/keyboard.c (show_help_echo, parse_menu_item): Call
28179         substitute-command-keys on the help string before displaying it.
28181         Also mention "curly quotes"
28182         See Drew Adams's email in:
28183         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
28184         * doc/lispref/help.texi (Keys in Documentation):
28185         Add index entry "curly quotes".
28186         * etc/NEWS: Use the phrase "curly quotes" too.
28188         ede-proj-target-makefile docstring tweaks
28189         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
28190         Consistently use "all:" to describe the all: target,
28191         replacing three different and confusingly-quoted usages.
28193 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
28195         Don't abort emacsclientw when -a was specified
28196         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
28197         out if we are in emacsclientw and -a was specified.
28199 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
28201         Fix handling of 1st keystroke on MS-Windows
28202         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
28203         This is needed to correctly handle the session's first keystroke,
28204         if it has any modifiers.  (Bug#19994)
28206 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
28208         Substitute some customization etc. doc strings
28209         These changes apply substitute-command-keys to some
28210         doc strings that were going through untranslated
28211         when creating customization or other widgets.
28212         * lisp/cus-edit.el (custom-group-value-create):
28213         * lisp/wid-edit.el (widget-default-create):
28214         (widget-push-button-value-create):
28215         Treat the widget tag as a doc string.
28216         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
28217         Treat the :documentation value as a doc string.
28218         * lisp/wid-edit.el (widget-choose):
28219         Treat the choice names as doc strings.
28220         (widget-default-create): Treat the :doc value as a doc string.
28221         (widget-toggle-value-create): Treat the :on and :off values
28222         as doc strings.
28223         (widget-documentation-string-value-create):
28224         Substitute the doc string.
28226 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
28228         Add a second argument to project-ignores
28229         * lisp/progmodes/project.el (project-ignores): Add a second
28230         argument DIR.
28231         * lisp/progmodes/project.el (project-ignores): Only include the VC
28232         ignores if DIR is the VC root.
28233         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
28235 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
28237         Prevent incorrect display when 'line-spacing' variable is set
28238         * src/xdisp.c (try_window_id): Give up this optimization if the
28239         buffer has its 'line-spacing' variable set non-nil.
28241 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
28243         Don't pass NOVISIT to find-file
28244         * lisp/progmodes/etags.el (next-file):
28245         Don't pass NOVISIT to find-file (bug#21175).
28247         Ignore buffer restriction for tags-loop-eval
28248         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
28249         restriction (bug#21167).
28251 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
28253         Fix a thinko in 'ffap-gopher-at-point'
28254         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
28256         Honor 'line-spacing' for empty lines
28257         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
28258         property and 'line-spacing' frame parameter or variable or
28259         property for empty lines, by doing the same processing as in
28260         x_produce_glyph for newline characters.  (Bug#21165)
28262 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
28264         Simplify by assuming C99 integer division
28265         * src/floatfns.c (ceiling2, floor2, truncate2):
28266         Assume C99 (i.e., Fortran) semantics for integer division.
28267         This simplifies the code.
28269 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
28271         Don't overflow if computing approximate percentage
28272         * lisp/align.el (align-region):
28273         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
28274         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
28275         * lisp/cus-edit.el (custom-buffer-create-internal):
28276         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
28277         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
28278         (checkdoc-next-message-error):
28279         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
28280         * lisp/epa.el (epa-progress-callback-function):
28281         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
28282         * lisp/ffap.el (ffap-menu-rescan):
28283         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
28284         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
28285         * lisp/gnus/nneething.el (nneething-retrieve-headers):
28286         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
28287         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
28288         * lisp/gnus/nnml.el (nnml-retrieve-headers):
28289         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
28290         * lisp/gnus/nntp.el (nntp-retrieve-headers)
28291         (nntp-retrieve-articles):
28292         * lisp/imenu.el (imenu--relative-position):
28293         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
28294         (skkdic-convert-okuri-nasi):
28295         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
28296         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
28297         * lisp/org/org-list.el (org-update-checkbox-count):
28298         * lisp/org/org.el (org-table-map-tables)
28299         (org-update-parent-todo-statistics):
28300         * lisp/play/decipher.el (decipher-insert-frequency-counts)
28301         (decipher-analyze-buffer):
28302         * lisp/profiler.el (profiler-format-percent):
28303         * lisp/progmodes/cc-cmds.el (c-progress-update):
28304         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
28305         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
28306         (idlwave-list-load-path-shadows):
28307         * lisp/progmodes/opascal.el (opascal-step-progress):
28308         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
28309         (vhdl-scan-directory-contents):
28310         * lisp/textmodes/bibtex.el (bibtex-progress-message):
28311         * lisp/textmodes/flyspell.el (flyspell-small-region)
28312         (flyspell-external-point-words):
28313         * lisp/textmodes/table.el (table-recognize):
28314         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
28315         progress-report percentages and the like.  This avoids problems
28316         if (* 100 NUMERATOR) would overflow.
28317         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
28318         * lisp/gnus/registry.el (registry-reindex):
28319         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
28320         * lisp/descr-text.el (describe-char):
28321         * lisp/org/org-colview.el (org-nofm-to-completion):
28322         * lisp/ps-print.el (ps-plot):
28323         * lisp/simple.el (what-cursor-position):
28324         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
28325         more-complicated and less-accurate approximation.
28327         Fix some int overflows in profiler.c
28328         * src/profiler.c (make_log): Make args EMACS_INT, not int,
28329         to avoid unwanted behavior on 'int' overflow.
28330         (make_log, evict_lower_half, record_backtrace):
28331         Use ptrdiff_t, not int, for object indexes.
28333         Port to pedantic memcpy
28334         * src/keyboard.c (menu_bar_items, tool_bar_items):
28335         * src/xrdb.c (magic_db):
28336         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
28338         Merge from gnulib
28339         This incorporates:
28340         2015-07-29 time_rz: port to pedantic memcpy
28341         * lib/time_rz.c: Copy from gnulib.
28343 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
28345         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
28346         When updating the very last entry, tabulated-list-print would
28347         erase it and then try to look at the next one (which obviously
28348         isn't there).
28350 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
28352         Allow to use the old key processing code on MS-Windows
28353         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
28354         New variable.
28355         (w32_wnd_proc): Use it to invoke the old code that processed
28356         character keys, as fallback, when this variable is non-nil.
28357         Fix typos in comments.  (Bug#19994)
28359 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
28361         Improve handling of Unicode keyboard input on MS-Windows
28362         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
28363         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
28364         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
28365         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
28366         successful, don't call TranslateMessage.  (Bug#19994)
28368 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
28370         Fix default-directory in changeset diffs after vc-print-log
28371         * lisp/vc/log-view.el (log-view-diff-common): Move the
28372         revision-granularity check back into log-view-diff-changeset.
28373         (log-view-diff-changeset): Bind default-directory to the current
28374         VC root.
28376         Rename project-directories to project-roots
28377         * lisp/progmodes/project.el (project-search-path-function)
28378         (project-search-path): Update the docstring.
28379         (project-directories): Rename to `project-roots', update all
28380         callers and implementations accordingly.
28381         (project-root): Remove.
28382         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
28383         as the default file mask.
28385 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
28387         Support long URLs in w32-shell-execute
28388         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
28389         and filename_to_ansi to convert the DOCUMENT argument, as it could
28390         be a URL that is not limited to MAX_PATH characters.  Instead, use
28391         MultiByteToWideChar directly, and allocate heap storage as
28392         required to accommodate the converted string.  Likewise with
28393         non-Unicode operation.  Ensure OPERATION is null-terminated, even
28394         if it is longer than 32K bytes.  (Bug#21158)
28396 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
28398         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
28400 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
28402         Add docs for display-buffer action display-buffer-use-some-frame
28403         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
28404         * doc/lispref/windows.texi (Display Action Functions):
28405         Add display-buffer-use-some-frame.
28406         * etc/NEWS: Mention display-buffer-use-some-frame.
28408         Add display-buffer action display-buffer-use-some-frame
28409         * lisp/window.el (display-buffer-use-some-frame): New.
28411         Handle vc-mtn error more gently
28412         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
28413         branch is nil.
28415 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
28417         Fix Tramp problems with multihops, and nc
28418         * lisp/net/tramp-cache.el (tramp-get-file-property)
28419         (tramp-set-file-property, tramp-flush-file-property)
28420         (tramp-get-connection-property, tramp-set-connection-property)
28421         (tramp-flush-connection-property): Remove hop from vector.
28422         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
28423         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
28424         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
28425         netstat to 60".
28426         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
28427         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
28428         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
28429         Keep hop in result.
28430         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
28431         Add hop tests.
28433 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
28435         Resurrect highlighting of repeated words by Flyspell Mode
28436         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
28437         characters between point and the doublon candidate, so that
28438         flyspell-word-search-backward finds it.  (Bug#21157)
28440         Fix redisplay of large images on expose events
28441         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
28442         between signed negative values and unsigned values.  This
28443         prevented redisplay on expose events when the window showed a very
28444         large image.
28446 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
28448         Remove unnecessary stack overflow dependency
28449         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
28450         Don't worry about $ac_cv_header_sys_resource_h and
28451         $ac_cv_func_getrlimit, as they're no longer needed for this.
28452         Problem reported by Eli Zaretskii in:
28453         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
28455 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
28457         Pacify compilation -Wincompatible-pointer-types warnings
28458         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
28459         warning.
28460         (CompareStringW_Proc): New typedef.
28461         (w32_compare_strings): Use it, to pacify compiler warnings under
28462         "-Wincompatible-pointer-types".
28463         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
28464         (GetDiskFreeSpaceExA_Proc): New typedefs.
28465         (Ffile_system_info): Use them, to pacify compiler warnings under
28466         "-Wincompatible-pointer-types".
28468 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
28470         Fix subscript error in calculate_direct_scrolling
28471         Use slightly-longer cost vectors.  Without this change,
28472         calculate_direct_scrolling can have a subscript violation when
28473         FRAME_LINES (frame) <= delta.
28474         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
28475         (line_ins_del, do_line_insertion_deletion_costs):
28476         Allocate and use slightly-larger cost vectors, ones based on
28477         FRAME_TOTAL_LINES instead of FRAME_LINES.
28479         Fix uninitalized value in encode_coding_object
28480         * src/coding.c (encode_coding_object): Also initialize
28481         coding->src_pos and coding->src_pos_byte when NILP (src_object).
28482         This avoids later use of uninitialized storage.
28484 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
28486         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
28487         (Bug#21141)
28489 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
28491         Merge from gnulib
28492         This incorporates:
28493         2015-07-27 time_rz: port better to MinGW
28494         2015-07-27 time: port __need_time_t to MinGW
28495         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
28496         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
28497         * lib/time-internal.h: New file, from gnulib.
28499 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
28501         Handle NULL pointers in w32heap.c allocation routines
28502         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
28503         freeable".
28504         (realloc_after_dump, realloc_before_dump, free_before_dump):
28505         Handle NULL pointers gracefully, as Emacs now seems to expect that.
28507         Fix Cairo build without PNG
28508         * src/image.c: Define PNG function when USE_CAIRO is defined, even
28509         if HAVE_PNG is not.  (Bug#21133)
28511         MS-Windows follow-up for recent TZ-related changes
28512         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
28513         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
28514         picking up 'struct timespec' from pthread.h, if it is installed on
28515         the user's system.  We want either the definitions from MinGW
28516         system headers, if available, or the Gnulib replacements if not.
28517         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
28518         lib/time.h.
28519         * lib/time.in.h: Don't let __need_* symbols affect what happens on
28520         MinGW.  These symbols are defined by MinGW system headers, but we
28521         don't want that to affect whether Gnulib portions of the header
28522         are or aren't used.
28524 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
28526         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
28528         New optional ZONE arg for format-time-string etc.
28529         This simplifies time conversions in other time zones.
28530         It also prevents display-time-world tampering with TZ (Bug#21020).
28531         * admin/admin.el (add-release-logs):
28532         Use improved add-log-time-format API.
28533         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
28534         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
28535         * configure.ac (tzalloc): Remove test for this, since
28536         Emacs no longer uses HAVE_TZALLOC directly.
28537         * doc/lispref/os.texi (Time of Day, Time Conversion)
28538         (Time Parsing):
28539         * etc/NEWS: Document the new behavior.
28540         Merge from gnulib, incorporating:
28541         2015-07-25 strftime: fix newly-introduced bug on Solaris
28542         2015-07-23 fprintftime, strftime: use timezone_t args
28543         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
28544         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
28545         * m4/time_h.m4:
28546         Update from gnulib.
28547         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
28548         New files from gnulib.
28549         * lisp/time-stamp.el (time-stamp-string):
28550         * lisp/time.el (display-time-world-list)
28551         (display-time-world-display):
28552         Use new API, with time zone arg.
28553         * lisp/time.el (display-time-world-display):
28554         Fix race when current-time advances while we're running.
28555         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
28556         (add-log-iso8601-time-string): Accept optional time zone arg.
28557         * lisp/vc/add-log.el (add-change-log-entry):
28558         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
28559         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
28560         Add rules for the time module, since they're now needed
28561         for tzalloc etc.
28562         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
28563         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
28564         * src/editfns.c: Include errno.h.
28565         (set_time_zone_rule): Omit unnecessary forward decl.
28566         (initial_tz): Remove, replacing with ...
28567         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
28568         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
28569         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
28570         (tzlookup): New static functions.
28571         (init_editfns): New arg DUMPING.  All uses changed.
28572         (init_editfns): Omit most initialization if dumping, not if
28573         !initialized.  Initialize wall_clock_tz and local_tz.
28574         (emacs_nmemftime, format_time_string): Time zone argument can now
28575         be any time zone, not just a boolean for UTC or local time.  All
28576         callers changed.
28577         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
28578         (Fcurrent_time_zone): New optional arg ZONE.
28579         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
28580         the same form as with the other new additions.
28581         (decode_time_zone): Remove; no longer needed.
28582         (tzvalbuf): Now file-scope.
28583         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
28584         (syms_of_editfns): Define Qwall.
28585         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
28586         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
28587         [!HAVE_TZALLOC]:
28588         Remove; now supplied by gnulib.
28589         * src/emacs.c (main):
28590         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
28592 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
28594         Fix infinite loop in delete-consecutive-dups
28595         * lisp/subr.el (delete-consecutive-dups): Work even if the last
28596         element is nil (Bug#20588).  Avoid rescan of a circular list in
28597         deletion of last element.
28599 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
28601         Have `x-frame-geometry' return nil for terminal and initial
28602         frames (Bug#21132)
28603         * src/nsfns.m (Fx_frame_geometry):
28604         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
28605         terminal frames.
28606         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
28607         (Fx_frame_geometry): Return nil for terminal frames
28609 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
28611         * etc/tutorials/TUTORIAL.ja: Improve translation.
28613 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
28615         Avoid crashes when w32 GUI functions are called in -batch
28616         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
28617         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
28618         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
28620         Fix flyspell-check-previous-highlighted-word
28621         * lisp/textmodes/flyspell.el
28622         (flyspell-check-previous-highlighted-word): Really accept a
28623         numeric argument, as the doc string describes.  Fix an off-by-one
28624         error in looking up overlays, so invocation with point immediately
28625         after a word would check that word.  Clarify the doc string as
28626         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
28628 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
28630         Minor cleanup in tramp-tests.el
28631         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
28632         Implement using the documented interface
28633         `tramp-connection-properties', rather than with internal functions.
28635 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
28637         Pass lambdas to `skeleton-read'
28638         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
28639         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
28640         lambdas to `skeleton-read' (bug#20386).
28642 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
28644         * INSTALL (DETAILED BUILDING AND INSTALLATION):
28645         Mention --without-imagemagick.
28647         Don't require GUI frames and mouse for Flyspell menus
28648         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
28649         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
28650         support, since pop-up menus work with text terminals and can be
28651         controlled via the keyboard.
28653         Improve documentation of Flyspell commands
28654         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
28655         can be invoked via the keyboard.  Mention those commands by name
28656         and add them to the fn index.  (Bug#21125)
28658 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
28660         Fix some Tramp problems with HP-UX
28661         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
28662         Add "tab0" to stty call.
28663         * test/automated/tramp-tests.el (tramp-persistency-file-name):
28664         Set to nil.
28665         (tramp--test-hpux-p): New defun.
28666         (tramp--test-utf8): Use it.
28668 2015-07-22  Glenn Morris  <rgm@gnu.org>
28670         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
28672 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
28674         Fix point positioning in ffap-next-guess
28675         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
28676         as our callers expect.  This was clobbered as part of fixing
28677         bug#5673.  (Bug#21107)
28678         (ffap-gopher-at-point): Set ffap-string-at-point-region.
28680 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
28682         * lisp/window.el (even-window-sizes): Fix customization type.
28684         Optionally even widths of `display-buffer' windows.  (Bug#21100)
28685         * lisp/window.el (quit-restore-window): Restore width if
28686         requested.
28687         (display-buffer-record-window): Record width when window is
28688         reused and horizontally combined.
28689         (even-window-sizes): New option to allow evening window widths.
28690         (even-window-heights): Defalias to `even-window-sizes'.
28691         (window--even-window-heights): Rename to
28692         `window--even-window-sizes'.  Handle side-by-side windows.
28693         (display-buffer-use-some-window): Call `window--even-window-sizes'
28694         instead of `window--even-window-heights'.
28695         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
28696         * doc/lispref/windows.texi (Choosing Window Options): Describe
28697         `even-window-sizes'.
28698         (Coordinates and Windows): Fix typo.
28700 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
28702         Add file name to autoload error messages
28703         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
28704         Add condition-case to add file name to error message.
28706 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
28708         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
28709         Use 0.0.0.1 as test host.
28711 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
28713         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
28714         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
28715         Fix inf-loop (bug#21083).
28717 2015-07-21  Glenn Morris  <rgm@gnu.org>
28719         * test/automated/package-test.el (package-test-signed):
28720         Update for recent changes.
28722         * test/automated/elisp-mode-tests.el
28723         (elisp-xref-finds-both-function-and-variable)
28724         (elisp-xref-finds-only-function-for-minor-mode):
28725         Update for recent xref name changes.
28727 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
28729         Make eldoc timer non-repeatable
28730         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
28731         non-repeatable.  Since it's on post-command hook, that just wasted
28732         CPU cycles.
28734 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
28736         Mention `tramp-connection-properties' in NEWS
28738         Sync with Tramp repository
28739         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
28740         required prior changing its configuration.
28741         (Connection caching, Predefined connection information)
28742         (Remote shell setup): Fix typos.
28743         (Predefined connection information): Describe, how to overwrite
28744         parameters of `tramp-methods'.
28745         (Remote programs, Remote processes, Traces and Profiles):
28746         Simplify example.
28747         (Remote programs): Remove superfluous comment.
28748         * doc/misc/trampver.texi: Update release number.
28749         * lisp/net/tramp-cache.el (tramp-connection-properties):
28750         Adapt docstring.
28751         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
28752         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
28753         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
28754         "gvfs-mkdir -p ..." does not work robust.
28755         (tramp-gvfs-maybe-open-connection):
28756         Adapt `tramp-get-method-parameter' call.
28757         * lisp/net/tramp-sh.el (tramp-methods):
28758         Add `tramp-remote-shell-login' parameter where it fits.
28759         (tramp-get-remote-path): Use it.
28760         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
28761         (all): Adapt `tramp-get-method-parameter' calls.
28762         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
28763         (tramp-get-method-parameter): Replace argument METHOD by VEC.
28764         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
28765         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
28766         (all): Adapt `tramp-get-method-parameter' calls.
28767         * lisp/net/trampver.el: Update release number.
28768         * test/automated/tramp-tests.el (tramp--instrument-test-case):
28769         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
28770         (tramp-test13-make-directory, tramp--test-adb-p)
28771         (tramp--test-smb-or-windows-nt-p): Simplify.
28772         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
28773         (tramp--test-special-characters): Fix docstring.  Add gvfs and
28774         ftp tests.
28775         (tramp--test-utf8): Fix docstring.
28777 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
28779         Add new xref-query-replace command
28780         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
28781         New function, extracted from xref-pulse-momentarily.
28782         (xref-query-replace): New command.
28783         (xref--query-replace-1): New helper function.
28784         (xref--xref-buffer-mode-map): Add `r' binding.
28786 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
28788         Simplify icalendar decoding of Z dates
28789         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
28790         Simplify calculation of time strings with trailing "Z".
28792 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
28794         Do not corrupt grep-find-ignored-files
28795         * lisp/progmodes/project.el (project-ignores): Change the order of
28796         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
28798         Add xref-match-item, and use it
28799         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
28800         (xref-file-location): Add reader for the column slot.
28801         (xref-match-item): New class.
28802         (xref-match-bounds): A method implementation for it.
28803         (xref-make-match): New constructor function.
28804         (xref--current-item): New private variable.
28805         (xref-pulse-momentarily): Use it.
28806         (xref--pop-to-location): Change the first argument to an xref
28807         item, instead of location, bind xref--current-item.
28808         Update all callers.
28809         (xref-next-line, xref-prev-line, xref--next-error-function)
28810         (xref--mouse-2): Look for the property `xref-item',
28811         instead of `xref-location'.
28812         (xref--item-at-point): Likewise.  This function replaces
28813         `xref-location-at-point'.  Update all callers.
28814         (xref--insert-xrefs): Add the `xref-item' text property, instead
28815         of `xref-location'.
28816         (xref--collect-match): Use xref-make-match.
28818         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
28819         Update all references.
28821         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
28822         slot to `summary'.
28824         vc-hg: Perform the print-log call asynchronously
28825         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
28826         asynchronously (bug#21067).
28828         Add xref-after-jump-hook and xref-after-return-hook
28829         * lisp/progmodes/xref.el (xref-after-jump-hook)
28830         (xref-after-return-hook): New hooks.
28831         (xref-pulse-on-jump): Remove, in favor of the above.
28832         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
28833         (xref--pop-to-location, xref--display-position)
28834         (xref-pop-marker-stack): Use the new hooks, as requested in
28835         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
28837 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
28839         * lisp/progmodes/js.el (js-mode): Correct the lighter.
28841 2015-07-19  Leo Liu  <sdl.web@gmail.com>
28843         Fix a bug in cfengine3-mode
28844         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
28845         eldoc-documentation-function.
28847 2015-07-18  Julien Danjou  <julien@danjou.info>
28849         sieve-mode: support "body" test command
28850         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
28851         Add missing "body" test command.
28853 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
28855         Fix info-apropos when the default encoding is Latin-N
28856         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
28857         'undecided', so that it is set to the encoding of the Info file we
28858         are about to insert.  Otherwise, 'info-apropos' will fail to find
28859         some index nodes in some UTF-8 encoded files, if the buffer's
28860         previous encoding is Latin-N or some such.
28862 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
28864         * lisp/epg.el (epg--start): Check that gpgconf can be found
28865         before calling it.
28867         Expose more file types to OS X that Emacs understands
28868         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
28869         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
28871 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
28873         Fix visual-order cursor movement when lines are truncated
28874         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
28875         simulate display in a window of infinite width, to allow move_it_*
28876         functions reach positions outside of normal window dimensions.
28877         Remove code that tried to handle a subset of these situations by
28878         manual iteration of buffer text.  (Bug#17777)
28880         Fix following Info cross-references to anchors
28881         * lisp/info.el (Info-read-subfile): Add to the returned value the
28882         length of subfile preamble, after converting it to file's byte
28883         offset, as expected by the caller.  Use bufferpos-to-filepos.
28884         (Info-find-node-2): If searching for a node with a
28885         1000-character slop fails, try again with a 10000-character slop,
28886         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
28887         * lisp/international/mule-util.el (bufferpos-to-filepos): New
28888         function.
28889         * etc/NEWS: Mention bufferpos-to-filepos.
28891         Fix scrolling backwards on TTY frames under scroll-conservatively
28892         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
28893         in moving backwards on TTY frames.  (Bug#21080)
28895 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
28897         Consider a jsdoc tag to be a beginning of a paragraph as well
28898         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
28899         consider a jsdoc tag to be a beginning of a paragraph as well.
28901 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
28903         * lisp/emacs-lisp/package.el: Fix warnings.
28905         * lisp/emacs-lisp/package.el (package-buffer-info):
28906         Add author and maintainers to `package-buffer-info'.
28908         * lisp/emacs-lisp/package.el: Many small changes.
28909         Replace all instances of 'face with 'font-lock-face.
28910         (describe-package-1): Improve some strings and move the summary
28911         up the list.
28912         (package-install-file): Update docstring.
28913         (package-menu-hide-package): Bind to `H'.
28915         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
28916         Fix error handling.
28918 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
28920         Fix hang with large yanks This should fix the bug fixed by Mike
28921         Crowe's patch in:
28922         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
28923         A problem in this area has been reported by several users; see
28924         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
28925         This fix differs from Mike Crowe's patch in that it should avoid a
28926         race condition that could lose SIGIO signals.  ignore_sigio dates
28927         back to the 1980s when some platforms couldn't block signals, and
28928         could only ignore them, which led to races when signals arrived
28929         while being ignored.  We shouldn't have to worry about those old
28930         platforms now.
28931         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
28932         * src/emacs.c (shut_down_emacs):
28933         Don't call ignore_sigio; unrequest_sigio should suffice.
28934         * src/keyboard.c (kbd_buffer_store_buffered_event):
28935         Use unrequest_sigio, not ignore_sigio.
28936         (kbd_buffer_get_event):
28937         Call request_sigio when getting the ball rolling again.
28939 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
28941         * lisp/obsolete/longlines.el (longlines-search-function):
28942         Fallback on `isearch-search-fun-default'.
28944 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
28946         Support @-mentions
28947         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
28948         of mentions/messages with @nick instead of just nick.
28950 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
28952         Fix bug#20943
28953         * lisp/autorevert.el (auto-revert-handler): Do not check for
28954         `buffer-modified-p'.
28955         * lisp/files.el (buffer-stale--default-function): Check for
28956         `buffer-modified-p'.
28957         * test/automated/auto-revert-tests.el
28958         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
28960 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
28962         Fix delete-dups bug on long lists
28963         * lisp/subr.el (delete-dups):
28964         Don't mistakenly keep some dups when applied to long lists.
28966 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
28968         Better heuristic for C stack overflow
28969         Improve the heuristic for distinguishing stack overflows from
28970         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
28971         the getrlimit method wasn't portable to Cygwin; see:
28972         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
28973         Corinna suggested pthread_getattr_np but this also has problems.
28974         Instead, replace the low-level system stuff with a simple
28975         heuristic based on known good stack addresses.
28976         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
28977         * src/sysdep.c: Don't include <sys/resource.h>.
28978         (stack_direction): Remove.  All uses removed.
28979         (stack_overflow): New function.
28980         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
28981         Make SEGV fatal in non-main threads.
28983 2015-07-16  Daiki Ueno  <ueno@gnu.org>
28985         epg: Automatically start pinentry server
28986         * lisp/epg-config.el (epg-gpgconf-program): New variable.
28987         * lisp/epg.el (epg--start): Call `pinentry-start' if
28988         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
28990 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
28992         * lisp/gnus/nnimap.el: Fix my last bogus change.
28993         Reinstall Stefan Monnier's change that was made in
28994         <83d824bc4041332f338ad7e5e830f443535aa300>.
28996 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
28998         Merge from gnulib
28999         This incorporates:
29000         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
29001         2015-07-05 acl-permissions: Fix on FreeBSD
29002         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
29003         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
29004         * lib/set-permissions.c: Copy from gnulib.
29006         Port to stricter C99
29007         * src/keyboard.h (kbd_buffer_store_event_hold):
29008         Don't return a void expression.
29010 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
29012         * doc/emacs/frames.texi (Creating Frames):
29013         Fix the command `C-x 5 m' runs.
29015 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
29017         New autorevert tests
29018         * test/automated/auto-revert-tests.el: New file.
29020 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
29022         Clear gcprolist etc. after stack overflow
29023         After stack overflow, command_loop calls init_eval, and this needs to
29024         clear gcprolist and byte_stack_list (Bug#20996).
29025         * src/alloc.c (init_alloc):
29026         Move gcprolist and byte_stack_list initialization from here ...
29027         * src/eval.c (init_eval): ... to here.
29029 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
29031         * doc/emacs/windows.texi (Pop Up Window): Fix the description
29032         of `C-x 4 m'.
29034 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29036         Avoid deprecated enums in mac-ct font backend driver
29037         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
29038         (mac_ctfont_get_advance_width_for_glyph)
29039         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
29041         Cache font family in mac-ct font backend driver
29042         * src/macfont.m (macfont_family_cache): New variable.
29043         (syms_of_macfont): Initialize it.
29044         (macfont_available_families_cache): New variable.
29045         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
29046         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
29047         (macfont_handle_font_change_notification)
29048         (macfont_init_font_change_handler)
29049         (macfont_copy_available_families_cache): New functions.
29050         (macfont_create_family_with_symbol): Use font family caches.
29051         (macfont_list, macfont_list_family):
29052         Use macfont_copy_available_families_cache instead of
29053         mac_font_create_available_families.
29055 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
29057         Show the default value in the prompt
29058         * lisp/progmodes/xref.el: Add `M-?' binding for
29059         xref-find-references.  Declare functions `grep-read-files' and
29060         `grep-expand-template'.
29061         (xref--read-identifier): Show the default value in the prompt.
29063         * lisp/progmodes/xref.el (xref-find-regexp): When called with
29064         prefix argument, ask for file patterns to search as well.  When
29065         prompting for the directory, require an existing one.
29066         (xref-collect-matches): Add a new argument, FILES.  Use it in the
29067         above function.
29069         Add `project-ignores'
29070         * lisp/progmodes/project.el (project-ignores): New generic
29071         function, and an implementation for the VC project type.
29072         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
29073         variant of rgrep-default-command that handles a generic list of
29074         ignores.
29075         (xref-collect-matches): Use it, and pass through to it the value
29076         of the newly added argument.
29077         (xref-find-regexp): Handle ignored paths within the project.
29078         Remove outdated comment.
29079         * lisp/vc/vc.el (vc-default-ignore-completion-table):
29080         Skip the comments and the empty lines.
29082 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
29084         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
29086 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
29088         gnus-registry.el: Correct function argument order
29089         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
29090         Reverse the order of function arguments.
29092 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
29094         Bind grep-highlight-matches to nil
29095         * lisp/progmodes/xref.el (xref-collect-matches):
29096         Bind grep-highlight-matches to nil (bug#20728).
29098 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
29100         nnimap.el: Fix IMAP message size parsing
29101         * lisp/gnus/nnimap.el (nnimap-transform-headers):
29102         Don't assume that UID comes before RFC822.SIZE.
29104 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
29106         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
29107         (auth-source-creation-prompts): Declare.
29108         (nnimap-retrieve-headers, nnimap-status-message)
29109         (nnimap-request-create-group, nnimap-request-delete-group)
29110         (nnimap-close-group, nnimap-request-move-article)
29111         (nnimap-request-accept-article, nnimap-request-newgroups)
29112         (nnimap-request-post, nnimap-dummy-active-number)
29113         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
29114         (nnimap-parse-flags): Remove unused var `p'.
29115         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
29116         (nnimap-flags-to-marks): Remove unused var `totalp'.
29118 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
29120         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
29122 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
29124         * src/macfont.m (macfont_list): Ignore font families lacking
29125         font descriptors.
29127 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
29129         Don't check the exit status, it can be misleading
29130         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
29131         exit status, it can be misleading.
29133         Introduce a Project API
29134         * lisp/progmodes/project.el: New file.
29135         * lisp/cedet/ede.el (project-try-ede): New function.
29136         (project-root): New implementation.
29137         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
29138         Set project-search-path-function.
29139         (elisp--xref-find-references): Delegate some logic to
29140         project-search-path.
29141         (elisp-search-path): New function.
29142         (elisp-xref-find): Don't implement `matches' anymore.
29143         * lisp/progmodes/etags.el: Don't implement `matches'.
29144         Delegate some logic to project-search-path.
29145         (etags-search-path): New function.
29146         * lisp/progmodes/xref.el (xref-find-function):
29147         Remove `matches' from the API.
29148         (xref-find-regexp): Move whatever common logic was in elisp and
29149         etags implementations, and search the directories returned by
29150         project-directories and project-search-path.
29152 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
29154         * test/automated/map-tests.el (test-map-delete-return-value):
29155         Uncomment test.
29157         Add support for gv.el in map.el
29158         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
29159         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
29160         * test/automated/map-tests.el: Update tests to work with the new
29161         implementations of map-elt and map-put.
29163 2015-07-09  Glenn Morris  <rgm@gnu.org>
29165         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
29167 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
29169         Syntax-propertize until the end of the line first
29170         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
29171         until the end of the line first.
29173 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
29175         * doc/emacs/files.texi (File Archives): Add a cross reference.
29177 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
29179         nnimap.el: Handle plain value for nnimap-stream
29180         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
29181         capabilities, so that a 'plain value for the `nnimap-stream' server
29182         variable is handled correctly.
29183         * doc/misc/gnus.texi (Customizing the IMAP Connection):
29184         Document the 'plain option.
29186 2015-07-08  Leo Liu  <sdl.web@gmail.com>
29188         Fix bug in thing-at-point--bounds-of-well-formed-url
29189         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
29190         sure boundary contains current point.
29192 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
29194         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
29195         in the end.
29197         Declare whitespace-line-column a safe file-local
29198         * lisp/whitespace.el (whitespace-line-column): Declare to be a
29199         safe file-local when the value is an integer.
29201 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
29203         gnus-group.el: Check if group names are already strings
29204         * lisp/gnus/gnus-group.el (gnus-group-group-name):
29205         The group name may already be a string.
29206         Specifically, in the group list reached from the *Server* buffer,
29207         the 'gnus-group text property returns a string.  Everywhere else
29208         it returns a symbol.
29210         nnimap.el: Remove unused let variables
29211         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
29213 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
29215         Support "maximized" property of runemacs's shortcut
29216         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
29217         the '--maximized' switch to Emacs.
29219         Support "minimized" property of runemacs's shortcut
29220         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
29221         pass the '--iconic' switch to Emacs.  (Bug#20991)
29223 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
29225         Doc fixes
29226         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
29227         C-w' in Diff mode.
29228         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
29229         Add a cross reference.
29231 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
29233         * lisp/obsolete/landmark.el: Add Obsolete-since header.
29235 2015-07-07  Glenn Morris  <rgm@gnu.org>
29237         * test/automated/ert-tests.el (ert-test-deftest):
29238         Update for recent changes.
29240 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
29242         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
29243         * lisp/emacs-lisp/gv.el (gv-setter): New function.
29244         (gv-invalid-place): New error.
29245         (gv-get): Use them.
29246         (gv-synthetic-place, gv-delay-error): New places.
29247         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
29248         (cl-defgeneric, cl-defmethod): Use gv-setter.
29250 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
29252         Make vc-tests work with MSYS svn program
29253         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
29254         svn is an MSYS program.
29256 2015-07-07  Ken Brown  <kbrown@cornell.edu>
29258         Improve recent change to emacsclient on Cygwin
29259         * lisp/server.el (server-process-filter): Remove redundant check
29260         that 'cygwin-convert-file-name-from-windows' is defined as a
29261         function on Cygwin.  Don't call that function unless its argument
29262         starts with a drive letter.
29264 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
29266         * lisp/emacs-lisp/package.el (package-compute-transaction):
29267         Fix void variable due to `found-something' being in the wrong `let'.
29269 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
29271         * lisp/play/landmark.el: Move to lisp/obsolete/.
29273 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
29275         Have `x-show-tip' handle `right' and `bottom' frame parameters
29276         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
29277         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
29278         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
29279         tooltips also via `right' and `bottom' frame parameters.
29281 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
29283         Add online-help support to describe types
29284         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
29285         (describe-symbol): Improve the selection of default.
29286         * lisp/help-mode.el: Require cl-lib.
29287         (describe-symbol-backends): Move from help-fns.el.
29288         (help-make-xrefs): Use it.
29289         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
29290         for types.
29291         (cl--typedef-regexp): New const.
29292         (find-function-regexp-alist): Add entry for types.
29293         (cl-help-type, cl-type-definition): New buttons.
29294         (cl-find-class): New function.
29295         (cl-describe-type): New command.
29296         (cl--describe-class, cl--describe-class-slot)
29297         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
29298         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
29299         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
29300         New functions.  Moved from eieio-opt.el.
29301         (cl--generic-class-parents): New function, extracted from
29302         cl--generic-struct-specializers.
29303         (cl--generic-struct-specializers): Use it.
29304         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
29305         Improve constructor's docstrings.
29306         (cl-struct-unknown-slot): New error.
29307         (cl-struct-slot-offset): Use it.
29308         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
29309         definition in current-load-list.
29310         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
29311         (eieio--add-new-slot): Set it.
29312         (eieio-defclass-internal): Use new name for current-load-list.
29313         (eieio-oref): Add compiler-macro to warn about unknown slots.
29314         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
29315         as compile-time as well.  Improve constructor docstrings.
29316         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
29317         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
29318         (eieio-class-def): Remove button.
29319         (eieio-help-constructor): Use new name for load-history element.
29320         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
29321         (eieio-method-documentation): Move to cl-generic.el.
29322         (eieio-display-method-list): Use new names.
29323         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
29324         Add "define-linline".
29325         (lisp-fdefs): Remove "defsubst".
29326         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
29327         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
29328         (macroexp--warn-and-return): Use it to avoid inf-loops.
29329         Add `compile-only' argument.
29331 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
29333         python.el: Fix local/remote shell environment setup
29334         * lisp/progmodes/python.el (python-shell-with-environment):
29335         Fix remote/local environment setup.
29336         * test/automated/python-tests.el (python-shell-with-environment-1)
29337         (python-shell-with-environment-2): New tests.
29339 2015-07-06  Glenn Morris  <rgm@gnu.org>
29341         * lisp/simple.el (set-variable): Tweak recent doc fix.
29343 2015-07-06  Ken Brown  <kbrown@cornell.edu>
29345         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
29347 2015-07-06  Glenn Morris  <rgm@gnu.org>
29349         * lisp/simple.el (set-variable): Use user-error for type mismatch.
29351 2015-07-06  Ken Brown  <kbrown@cornell.edu>
29353         * src/emacs.c (main): Don't increase the stack size on Cygwin.
29355 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
29357         (describe-symbol): Rewrite describe-function-or-variable
29358         * lisp/help-fns.el (describe-symbol-backends): New var.
29359         (help-xref-stack-item): Declare.
29360         (describe-symbol): Rename from describe-function-or-variable.
29361         Rewrite using describe-symbol-backends instead of help-xref-interned.
29362         * lisp/help.el (help-map): Use it.
29363         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
29364         (help-xref-interned): Make it into an obsolete alias.
29366         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
29367         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
29368         and cl-letf.
29370 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
29372         Fix parsing glitches in dired-mark-sexp (bug#13575)
29373         * lisp/dired-x.el (dired-x--string-to-number): New function.
29374         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
29375         of directory-listing-before-filename-regexp.  Consider
29376         forward-word harmful and replace it.  Add more verbiage in
29377         comments and doc string.
29379 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
29381         python.el: Respect process environment for remote shells
29382         * lisp/progmodes/python.el
29383         (python-shell-calculate-process-environment): Calculate
29384         process-environment or tramp-remote-process-environment depending
29385         whether current file is remote.
29386         (python-shell-calculate-exec-path): Calculate exec-path or
29387         tramp-remote-path depending whether current file is remote.
29388         (python-shell-with-environment): New macro.
29389         (python-shell-prompt-detect, python-shell-calculate-command)
29390         (python-shell-make-comint, python-check): Use it.
29392         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
29393         * lisp/progmodes/python.el (python-shell--interpreter)
29394         (python-shell--interpreter-args): New vars.
29395         (inferior-python-mode, python-shell-make-comint): Use them.
29397         python.el: Fixes for IPython 3.x  (Bug#20580)
29398         * lisp/progmodes/python.el:
29399         (python-shell-completion-native-setup): Fix IPython 3.x setup.
29400         (python-shell-completion-native-get-completions): Fix timeout
29401         logic.
29403         python.el: Fix mark-defun behavior  (Bug#19665)
29404         * lisp/progmodes/python.el (python-mark-defun): New function.
29405         * test/automated/python-tests.el (python-mark-defun-1)
29406         (python-mark-defun-2, python-mark-defun-3): New tests.
29408 2015-07-05  Glenn Morris  <rgm@gnu.org>
29410         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
29411         such as "extends(parent), private".  (Bug#20969)
29412         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
29413         New tests.
29415 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
29417         Avoid duplicate calls to current_timespec
29418         * src/process.c (wait_reading_process_output):
29419         Cache current_timespec results as long as we're not waiting.
29421 2015-07-05  Ian Kelling  <ian@iankelling.org>
29423         Avoid returning early reading process output due to SIGIO
29424         * src/process.c (wait_reading_process_output): Extend the behavior of
29425         not breaking due to not finding output when a timer has lowered the
29426         timeout to include when SIGIO lowers the timeout.
29428         Don't return as fast reading any process output
29429         * src/process.c (wait_reading_process_output):
29430         The patch for Bug#17647 returns too fast sometimes when reading
29431         from any processes.  Revert part of it, and limit the timeout more
29432         sensibly (Bug#20978).
29434         Refactor timeouts in wait_reading_process_output
29435         * src/process.c (wait_reading_process_output):
29436         Simplify timeouts with an enum.  Remove a redundant condition.
29437         (Bug#20978)
29439         Remove ADAPTIVE_READ_BUFFERING ifdef
29440         * src/process.c (make-process, make-pipe-process, deactivate_process)
29441         (wait_reading_process_output, read_process_output, send_process)
29442         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
29443         added in case there was an operating system in which it was not
29444         useful.  That was 11 years ago and it hasn't happened.  Make
29445         development easier by not considering the effect of changes on a
29446         theoretical OS where this is disabled (Bug#20978).
29448 2015-07-05  Glenn Morris  <rgm@gnu.org>
29450         * lisp/simple.el (set-variable): Doc fix.
29452         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
29454 2015-07-05  Ian Kelling  <ian@iankelling.org>
29456         accept-process-output fix
29457         This is a followon to the fix for bug#17647 (Bug#20976).
29458         * src/process.c (status_notify): Fix too high return in some cases.
29460 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
29462         * lisp/character-fold.el (character-fold-table):
29463         Only fold decompositions if at least one character is non-spacing.
29464         (Bug#20975)
29466 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
29468         Merge from gnulib
29469         This incorporates:
29470         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
29471         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
29472         2015-07-02 update-copyright: fix test failure with perl >= 5.22
29473         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
29474         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
29475         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
29476         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
29478 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
29480         Respect `prog-indentation-context' in python.el
29481         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
29482         (python-indent-context, python-indent--calculate-indentation)
29483         (python-info-current-defun)
29484         (python-info-dedenter-opening-block-message)
29485         (python-info-line-ends-backslash-p)
29486         (python-info-beginning-of-backslash)
29487         (python-info-continuation-line-p): Use `prog-widen'.
29488         (python-indent--calculate-indentation)
29489         (python-indent--calculate-levels)
29490         (python-indent-calculate-indentation): Use `prog-first-column'.
29491         (python-indent--calculate-levels): Simplify.
29492         Ignore also initial empty lines for syntax calculation.
29493         * lisp/progmodes/python.el (python-indent-context): Return
29494         :no-indent for first non-empty line, not just in line 1.
29495         * test/automated/python-tests.el (python-indent-base-case)
29496         (python-indent-inside-paren-1, python-indent-inside-paren-2)
29497         (python-indent-inside-paren-3, python-indent-inside-paren-4)
29498         (python-indent-inside-paren-5, python-indent-inside-paren-6)
29499         (python-indent-after-backslash-1)
29500         (python-indent-after-backslash-2)
29501         (python-indent-after-backslash-3)
29502         (python-indent-after-backslash-4, python-indent-inside-string-1):
29503         Expect :no-indent for first non-empty line.
29505 2015-07-04  Daniel Colascione  <dancol@dancol.org>
29507         Factor isearch word description into new function
29508         * lisp/isearch.el (isearch--describe-word-mode): New function.
29509         (isearch-message-prefix, isearch-query-replace): Use it.
29511 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
29513         Fix mouse pointer on w32 when a menu is active
29514         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
29515         shape while a menu is in use.  This started happening since we now
29516         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
29518 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
29520         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
29521         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
29522         parameter.  (Bug#17344)
29524         Have `compilation-set-window' use right window for getting fringes
29525         (Bug#20829)
29526         * lisp/progmodes/compile.el (compilation-set-window):
29527         Take `window-fringes' from argument window.
29529 2015-07-03  Glenn Morris  <rgm@gnu.org>
29531         Update eieio tests for recent eieio-core change.
29532         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
29533         * test/automated/eieio-tests.el
29534         (eieio-test-32-slot-attribute-override-2):
29535         Replace the deleted eieio--class-v with cl--find-class.
29537 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
29539         Fix some issues with `window-divider-mode'
29540         * lisp/frame.el (window-divider-default-places): New option.
29541         (window-divider-mode): Remove option.
29542         (window-divider-mode): Make it a "regular" minor mode.
29543         (window-divider-width-valid-p): Drop frame- prefix.
29544         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
29545         prefix.  Handle `window-divider-default-places'.
29546         (frame--window-divider-mode-set-and-apply): Remove.
29547         (window-divider-default-bottom-width)
29548         (window-divider-default-right-width): Drop :group entries.
29549         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
29550         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
29551         (menu-bar-no-window-divider): Set `window-divider-default-places'
29552         and call `window-divider-mode'.
29553         * doc/emacs/frames.texi (Window Dividers): Document
29554         `window-divider-default-places'.
29556 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
29558         * doc/emacs/display.texi (Displaying Boundaries):
29559         * doc/emacs/search.texi (Word Search): Add cross references.
29561 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
29563         -batch should not affect ‘’ -> `' display
29564         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
29565         -batch (Bug#20926).
29567 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
29569         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
29570         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
29571         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
29572         Use cl--find-class instead.
29574         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
29576 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
29578         Some further fixes in Change Window node (Bug#20183)
29579         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
29580         by "resizing" in section title.  Add some concept indices.
29581         Suggested by N. Jackson (Bug#20183).
29583         * doc/emacs/windows.texi (Change Window): Reference window
29584         dividers.
29586         Document new `window-divider-mode'.
29587         * lisp/frame.el (window-divider-mode): Fix doc-string.
29588         * doc/emacs/frames.texi (Window Dividers): New section.
29590         Improve accessibility of window dividers (Bug#20183)
29591         * lisp/faces.el (window-divider)
29592         (window-divider-first-pixel, window-divider-last-pixel): Change
29593         membership from `frames' to `window-divider' customization group.
29594         * lisp/frame.el (window-divider): New customization group.
29595         (window-divider-mode): New minor mode.
29596         (window-divider-default-bottom-width)
29597         (window-divider-default-right-width): New options.
29598         (frame--window-divider-previous-mode): New variable.
29599         (frame-window-divider-width-valid-p)
29600         (frame--window-divider-mode-apply)
29601         (frame--window-divider-mode-set-and-apply): New functions.
29602         * lisp/menu-bar.el (menu-bar-options-save): Save
29603         window-divider-mode settings.
29604         (menu-bar-window-divider-customize)
29605         (menu-bar-bottom-and-right-window-divider)
29606         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
29607         (menu-bar-no-window-divider): New functions.
29608         (menu-bar-showhide-window-divider-menu): New variable.
29609         (menu-bar-showhide-menu): Show/hide window divider menu.
29610         * lisp/mouse.el (mouse-split-window-vertically)
29611         (mouse-split-window-horizontally): Replace `error' by
29612         `user-error'.  Bind `window-combination-resize' to nil.
29613         (top-level): Add/reorder mouse key bindings on mode- and
29614         vertical-line.
29616 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
29618         Don't display ‘’ as `' under X in en_GB
29619         The curved quote setup code invokes (char-displayable-p ?‘),
29620         but this isn’t reliable until after the X frame replaces the
29621         terminal frame (Bug#20926).
29622         * lisp/international/mule-cmds.el (set-locale-environment):
29623         Move curved quote setup code from here ...
29624         * lisp/startup.el (command-line): ... to here, after creating
29625         the X frame.
29627 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
29629         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
29631         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
29632         to reverse the meaning (Bug#15631).
29634 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
29636         Be more tolerant to fonts named "Foobar-12"
29637         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
29638         don't barf; instead, request a new fontset to be generated.  This
29639         avoids unnecessarily rejecting fonts named against XLFD rules.  See
29640         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
29641         for the description of the original problem.
29642         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
29643         by a hyphen in a font's name.
29645         Fix value of posn-at-pont in R2L lines
29646         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
29647         coordinate of -1, for a newline in a right-to-left line that
29648         overflowed into the left fringe.
29650 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
29652         (cl--copy-slot-descriptor): Copy the `props' alist as well
29653         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
29654         Rename from cl--copy-slot-descriptor.
29655         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
29657 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
29659         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
29660         (xterm-query-timeout): New var.
29661         (xterm--query): Use it.  Fallback on async method if we timeout before
29662         getting the first byte of the reply (bug#12354).
29664 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
29666         Spelling fixes
29667         * lisp/character-fold.el (character-fold-search):
29668         * lisp/emacs-lisp/package.el (package-hidden-regexps):
29669         Fix typos.
29671 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
29673         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
29675 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
29677         In strings, prefer plain ` and ' to \` and \'
29678         * lisp/allout.el (allout-insert-listified):
29679         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
29680         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
29681         (ls-lisp-string-lessp):
29682         * lisp/menu-bar.el (menu-bar-open):
29683         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
29684         * lisp/progmodes/compile.el (compile):
29685         * lisp/progmodes/etags.el (tags-loop-scan):
29686         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
29687         * lisp/subr.el (posn-actual-col-row):
29688         * lisp/term/pc-win.el (x-list-fonts):
29689         * lisp/textmodes/texinfmt.el (texinfmt-version):
29690         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
29691         * lisp/time.el (display-time-world-list):
29692         * lisp/tmm.el (tmm-menubar):
29693         * src/buffer.c (syms_of_buffer):
29694         * src/fileio.c (syms_of_fileio):
29695         Omit unnecessary and confusing backslash before quote.
29696         * lisp/erc/erc.el (erc-cmd-LASTLOG):
29697         * lisp/progmodes/flymake.el (flymake-fix-file-name):
29698         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
29699         Fix string that was intended to escape a backslash and not a quote.
29701 2015-06-30  Glenn Morris  <rgm@gnu.org>
29703         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
29705         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
29706         Replace hard-coded lists with wildcard + filter-out.
29708         * configure.ac (system-configuration-features): Add X11, NS.
29710         Improve reproducibility of generated loaddefs file
29711         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
29712         Make the return value the modtime of the input file (if no autoloads).
29713         (update-directory-autoloads): In the "no autoloads" section,
29714         use "most recent modtime" rather than "current time".
29716 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
29718         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
29719         (Bug#20930)
29721 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
29723         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
29725         Add seq-min and seq-max
29726         Bump version number.
29727         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
29728         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
29730 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
29732         Make sure sleep-for always delays for as long as it's told
29733         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
29734         a loop, to ensure we always wait exactly the required amount of
29735         time.  (Bug#15990)
29737 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
29739         Fix pointer signedness glitch
29740         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
29742 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
29744         Don't block changes in mouse pointer inside 'track-mouse'
29745         * etc/NEWS:
29746         * doc/lispref/frames.texi (Mouse Tracking): Document the special
29747         effect of setting 'track-mouse' to 'dragging'.
29748         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
29749         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
29750         * lisp/mouse-drag.el (mouse-drag-throw):
29751         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
29752         to avoid changes in the shape of the mouse pointer.
29753         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
29754         pointer shape when do_mouse_tracking has the value of 'dragging',
29755         not just any non-nil value.  (Bug#20934)
29756         (syms_of_xdisp): DEFSYM 'dragging'.
29758 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
29760         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
29762         * lisp/emacs-lisp/package.el (package-compute-transaction):
29763         Don't assume version sorting.
29765         * lisp/emacs-lisp/package.el (package--save-selected-packages):
29766         Don't save before init time, to avoid overwriting configurations.
29767         (Bug#20855)
29769 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
29771         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
29772         references.
29774 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
29776         Update for the upcoming CFEngine 3.7 release: support macros and
29777         quoted context strings; reformat JSON; indent promise attributes 2
29778         units by default; give function parameter descriptions in the eldoc
29779         glue.
29780         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
29781         Autoload `json-pretty-print'.  Support new features in 3.7.
29782         (cfengine-parameters-indent): Set default promise attribute indent to
29783         2 more than the promise itself.
29784         (cfengine3-macro-regex): New variable to match the new macro syntax.
29785         (cfengine3-font-lock-keywords): Use it to highlight macros.
29786         (cfengine3-indent-line): Use it to indent macros to column 0.
29787         (cfengine3-class-selector-regex): Update for the new quoted strings
29788         format.
29789         (cfengine3-reformat-json-string): New function to reformat a JSON
29790         string using `json-pretty-print'.
29791         (cfengine3-format-function-docstring): Use function parameter
29792         description if it's provided by the cf-promises syntax dump.
29794 2015-06-29  Michael R. Mauger  <michael@mauger.com>
29796         Cygwin emacsclient handles w32 file names
29797         * lisp/server.el (server-process-filter): Allow Cygwin's
29798         emacsclient to be used as a file handler on MS-Windows.
29800 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
29802         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
29803         (bug#20925).
29805 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
29807         * doc/lispref/text.texi (Sticky Properties): Improve wording.
29808         (Bug#20924)
29810         Allow font names that end in "-NN", where NN is a number
29811         * src/font.c (font_load_for_lface): If the font-spec didn't match
29812         any available fonts, try again without interpreting trailing "-NN"
29813         as the font size.  For the description of the original problem, see
29814         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
29816         .gdbinit followup to changes in !USE_LSB_TAG
29817         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
29818         !USE_LSB_TAG, as Emacs no longer does.
29820 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
29822         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
29823         Otherwise `s p' of f and F will stomp on each other's value.
29824         (Bug#20916)
29826 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
29828         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
29829         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
29831 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
29833         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
29834         as additional guess.
29836         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
29837         to a string.
29839 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
29841         apropos-library quoting fix
29842         * lisp/apropos.el (apropos-library): Quote library consistently
29843         with the rest of the quoting used by apropos.
29845         Clarify interpreter-mode-alist doc
29846         * lisp/files.el (interpreter-mode-alist):
29847         Reword to avoid confusing quoting that wasn't working anyway.
29849 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
29851         Sync with Tramp 2.2.12
29852         * doc/misc/trampver.texi:
29853         * lisp/net/trampver.el: Update release number.
29854         * test/automated/tramp-tests.el (tramp-test13-make-directory):
29855         Fix cleanup.
29857 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
29859         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
29861 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
29863         Bind grep-highlight-matches around the rgrep call
29864         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
29865         around the rgrep call (bug#20728).
29867         Put "--color" before the other options in grep-command
29868         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
29869         before the other options in grep-command (bug#20912).
29871         Add --color Grep option to the command dynamically
29872         * lisp/progmodes/grep.el (grep-template, grep-find-template):
29873         Update the description for <C>.  (Bug#20728)
29874         (grep-compute-defaults): Don't add the --color option to
29875         grep-options.  Only add it to grep-command.
29876         (grep-expand-keywords): Expand the env value opts into <C>.
29877         (grep-expand-template): Replace cf in the env with the opts list,
29878         that can include -i and --color.
29879         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
29880         "--color=always" from the template, because we don't have to.
29882 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
29884         cl-extra fixes for most-negative-fixnum
29885         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
29886         Don't mishandle an argument equal to most-negative-fixnum,
29887         whose absolute value equals itself.
29888         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
29890         Initialize cl--gensym-counter to 0
29891         Previously it was initialized to a random value, which made it
29892         harder to reproduce earlier Emacs runs.  The need for a random
29893         value went away when Emacs introduced and used the #: syntax for
29894         uninterned symbols (Bug#20862).
29895         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
29896         Document that cl--gensym-counter now starts with 0.
29897         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
29898         (cl--random-time): Move to near only remaining use.
29899         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
29901         Improve docstring for macroexp-let2
29902         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
29903         Improve as per suggestion by RMS in:
29904         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
29905         Also, rename args to match new doc string.
29907 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
29909         Fix VC test suite on MS-Windows
29910         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
29911         always starts with 3 slashes after the colon.
29912         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
29913         'w32-application-type' to invoke CVS on MS-Windows with properly
29914         formatted CVSROOT directory name.
29916         Add a new function w32-application-type
29917         * src/w32proc.c (Fw32_application_type): New function.
29919         Avoid error in TLS connections due to incorrect format
29920         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
29921         the call to 'error', instead of the unsupported %u.  Reported by
29922         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
29924 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
29926         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
29928 2015-06-26  Leo Liu  <sdl.web@gmail.com>
29930         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
29931         `with-output-to-string' in elisp.
29933         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
29934         with-output-to-string".
29935         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
29937 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
29939         Minor corrections in ELisp manual
29940         * doc/lispref/nonascii.texi (Character Properties): Correct
29941         inaccuracies in description of values of the Unicode properties.
29943         Fix invisible mouse pointers on Windows.
29944         * src/w32fns.c: Include windowsx.h.
29945         (w32_wnd_proc): If the mouse moved and the mouse pointer is
29946         invisible, make it visible again even when the main (Lisp)
29947         thread is busy.
29948         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
29949         garbaging the frame have the input thread call SetCursor.
29951 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
29953         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
29954         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
29955         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
29956         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
29957         (w32_toggle_invisible_pointer): New function.
29958         (w32_create_terminal): Add w32_toggle_invisible_pointer as
29959         toggle_invisible_pointer_hook for this terminal.
29961 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
29963         Doc fix for deletion commands
29964         'delete-char' does not respect the value of 'delete-active-region'.
29965         * doc/emacs/killing.texi (Deletion):
29966         Fix documentation for some single-char deletion commands.
29968         * doc/emacs/help.texi (Apropos):
29969         Improve documentation of 'apropos-do-all'.
29971         * doc/emacs/help.texi (Help Summary):
29972         Improve documentation of 'describe-mode'.
29974 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
29976         Fix submake dependency bug with .h files
29977         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
29978         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
29979         before the submake in $(libsrc) would spin off a subsubmake
29980         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
29982 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
29984         * lisp/character-fold.el (character-fold-table): Reuse `table'.
29986 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
29988         Translate undisplayable ‘ to `
29989         * doc/lispref/help.texi (Keys in Documentation):
29990         * lisp/international/mule-cmds.el (set-locale-environment):
29991         * lisp/term/w32console.el (terminal-init-w32console):
29992         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
29993         If ‘ is not displayable, transliterate it to `, not to '.  See:
29994         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
29996         Fix C99 incompatibilities in Cairo code
29997         * src/image.c (xpm_load) [USE_CAIRO]:
29998         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
29999         Fix pointer signedness problem.
30001 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
30003         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
30004         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
30005         `with-output-to-string' should have the same indent as `progn'.
30006         This is in line with the declaration of `with-output-to-string'.
30008 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
30010         Get ‘./configure; make -C src emacs’ to work
30011         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
30012         * lib-src/Makefile.in (../lib/libgnu.a):
30013         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
30015 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
30017         Fix GC bugs --with-wide-int and Qnil == 0
30018         Use the same alignment for the !USE_LSB_TAG case as for the
30019         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
30020         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
30021         once we changed the representation of symbols so that Qnil == 0.
30022         Problem reported by Eli Zaretskii (Bug#20862).
30023         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
30024         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
30025         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
30026         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
30027         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
30028         This optimization in the !USE_LSB_TAG case is no longer valid when
30029         symbols are represented via offsets.  Change the only use to
30030         assume that pointers might hide in objects.
30031         * src/lisp.h (alignas) [!USE_LSB_TAG]:
30032         Require support in this case, too.
30033         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
30034         This is OK, because the !USE_LSB_TAG case now applies only when
30035         Lisp_Object is wider than void *, so there's no longer any need
30036         to shift the offset.  Not shifting the offset means that
30037         symbol representations have the same alignment as pointers,
30038         which the GC assumes.
30040 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
30042         * doc/lispintro/emacs-lisp-intro.texi (Data types):
30043         Improve documentation of 'substring'.
30045 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
30047         * lisp/character-fold.el (character-fold-table): Fix table generation.
30049 2015-06-24  Glenn Morris  <rgm@gnu.org>
30051         * nextstep/Makefile.in (all): Make it the first target.
30052         (../src/emacs${EXEEXT}): Add rule for making it.
30054 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
30056         * etc/NEWS: Fix mention to old function name.
30058         * lisp/character-fold.el: New file (Bug#20887)
30059         (character-fold-to-regexp): New function.
30060         * lisp/replace.el (replace-search): Check value of
30061         `character-fold-search'.
30062         * lisp/isearch.el: Move character-folding code to
30063         character-fold.el
30064         (isearch-toggle-character-fold): New command.
30065         (isearch-mode-map): Bind it to "\M-sf".
30066         (isearch-mode): Check value of `character-fold-search'.
30068 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
30070         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
30071         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
30072         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
30074         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
30075         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
30077 2015-06-24  Glenn Morris  <rgm@gnu.org>
30079         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
30081 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
30083         lisp/gnus/nnmaildir.el: Silence lexical warnings
30084         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
30085         functional style.
30086         (nnmaildir--update-nov): Remove unused var `numdir'.
30087         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
30088         (nnmaildir-request-group, nnmaildir-request-create-group)
30089         (nnmaildir-request-post, nnmaildir-request-move-article)
30090         (nnmaildir-request-accept-article, nnmaildir-active-number):
30091         Mark unused args.
30092         (nnmaildir-get-new-mail, nnmaildir-group-alist)
30093         (nnmaildir-active-file): Declare.
30094         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
30095         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
30096         `mark', `end', `new-mark', and `mark-sym'.
30097         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
30098         `nlist2'.
30099         (nnmaildir-request-expire-articles):
30100         Remove unused vars `article', `stop' and `nlist2'.
30101         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
30102         `end'.  Use nnmaildir--article when dyn-binding is needed.
30103         Give the value directly in the `let' for `del-mark', `del-action',
30104         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
30105         (nnmaildir-close-server): Declare those local vars that need to be
30106         dyn-bound.
30108 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
30110         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
30112         Port selection info fix to clang
30113         * src/keyboard.h (kbd_buffer_store_event_hold):
30114         Don't assume C11 semantics for alignof (Bug#20756).
30116         Fix bug that munged selection info
30117         On some optimizing C compilers, copying a structure did not
30118         copy the padding bytes between elements, and the type punning
30119         between struct input_data and struct selection_input_data did
30120         not work.  Change the C code to use a proper union type instead.
30121         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
30122         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
30123         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
30124         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
30125         (mark_kboards):
30126         Use union buffered_input_event, not struct input_event.
30127         (clear_event, deliver_input_available_signal, process_special_events):
30128         Remove unnecessary forward decls.
30129         (kbd_buffer_store_buffered_event): New function, mostly just the
30130         old kbd_buffer_store_event_hold, except its argument is of type
30131         union buffered_input_event, not struct input_event.
30132         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
30133         not needed otherwise.  Argument is now of type
30134         struct selection_input_event *, not struct input_event *.
30135         All callers changed.
30136         (clear_event): Arg is now of type union buffered_input_event *,
30137         not struct input_event *.  All callers changed.
30138         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
30139         (union buffered_input_event): New type.
30140         (kbd_buffer_store_event_hold): Now an inline function,
30141         defined here.
30142         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
30143         (struct input_event): Use it.
30144         * src/xselect.c (struct selection_event_queue):
30145         Make elements be of type struct selection_input_event,
30146         not struct input_event.
30147         (selection_input_event_equal): New static function.
30148         (x_queue_event): Use it.
30149         (x_queue_event, x_decline_selection_request)
30150         (x_selection_current_request, x_reply_selection_request)
30151         (x_handle_selection_request, x_handle_selection_clear)
30152         (x_handle_selection_event): Use struct selection_input_event,
30153         not struct input_event.  All callers changed.
30154         (x_convert_selection): Omit unused first arg.  All callers changed.
30155         (Fx_disown_selection_internal): Omit unnecessary union.
30156         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
30157         rather than rolling our own equivalent.  Prefer sie.kind when
30158         setting up that kind of structure.
30159         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
30160         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
30161         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
30162         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
30163         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
30164         (SELECTION_EVENT_TIME, x_handle_selection_event):
30165         Arg is now of type struct selection_input_event *)
30166         not struct input_event *.  All callers changed.
30168 2015-06-23  Glenn Morris  <rgm@gnu.org>
30170         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
30172 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
30174         * lisp/isearch.el: Fold many unicode characters to ASCII.
30175         (isearch-character-fold-search, isearch--character-fold-extras)
30176         (isearch--character-fold-table): New variable.
30177         (isearch--character-folded-regexp): New function.
30178         (isearch-search-fun-default): Use them.
30179         * lisp/replace.el (replace-character-fold): New variable.
30180         (replace-search): Use it.
30181         * etc/NEWS: Document it.
30183 2015-06-23  Glenn Morris  <rgm@gnu.org>
30185         Check for an input event before showing a dialog box.  (Bug#20813)
30186         * lisp/subr.el (y-or-n-p):
30187         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
30188         as last-nonmenu-event.
30190 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
30192         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
30193         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
30194         (switch-to-prev-buffer, switch-to-next-buffer): Respect
30195         switch-to-visible-buffer independent of the windows history.
30197 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
30199         * src/keyboard.c (last_timer_event): Remove unused var.
30201 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
30203         * test/automated/package-test.el (package-test-update-listing):
30204         Fix test.
30206 2015-06-23  Glenn Morris  <rgm@gnu.org>
30208         Revert 2014-06-25 nextstep/Makefile change.
30209         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
30210         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
30211         not as an order-only prerequisite.
30213         * configure.ac (--with-ns): Enable by default on OS X.
30215 2015-06-23  Leo Liu  <sdl.web@gmail.com>
30217         Fix shell-for/backward-command to exclude spaces
30218         * lisp/shell.el (shell-forward-command, shell-backward-command):
30219           Handle the 'move case from re-search-forward/backward.
30220           fixes debbugs:20873
30222 2015-06-22  Juri Linkov  <juri@linkov.net>
30224         * lisp/replace.el (query-replace-read-from): Add separator to
30225         the local binding of text-property-default-nonsticky.  (Bug#20690)
30227         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
30228         (Bug#20785)
30230 2015-06-22  Ken Brown  <kbrown@cornell.edu>
30232         Enable CPU profiling on Cygwin
30233         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
30234         change that undefined this.
30235         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
30236         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
30237           Cygwin.
30239         Improve diagnostics of profiler-cpu-start
30240         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
30241         return -1 if the sampling interval is invalid.
30242         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
30243         fails.  (Bug#20843)
30245 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
30247         * lisp/emacs-lisp/package.el: Exclude packages by name.
30248         (package-hidden-regexps): New variable.
30249         (package-menu--refresh): Use it.
30250         (package-menu-hide-package): New command.
30252         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
30254 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
30256         Fix debug-timer-check on systems without HAVE_TIMERFD
30257         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
30258         the expired timers, since wait_reading_process_output doesn't.
30259         (debug_timer_callback): Enlarge the tolerance to 20 msec.
30261         Fix RCS crashes in vc-test
30262         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
30263         ports of 'ci' on MS-Windows by always passing the -t- switch.
30265 2015-06-22  Glenn Morris  <rgm@gnu.org>
30267         * doc/emacs/package.texi (Packages):
30268         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
30270         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
30272 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
30274         Port tests to help-quote-translation
30275         * test/automated/ert-x-tests.el (ert-test-describe-test):
30276         * test/automated/package-test.el (package-test-describe-package)
30277         (package-test-signed): Allow straight quotes, too.
30279 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
30281         Make find-function-on-key use the current window
30282         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
30283         Extract from `find-function-on-key', add a second argument.
30284         (find-function-on-key): Use it (bug#19679).
30285         (find-function-on-key-other-window)
30286         (find-function-on-key-other-frame): New commands.
30288 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
30290         Revert "Define `map-elt' as a generalized variable"
30291         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
30293 2015-06-21  Ken Brown  <kbrown@cornell.edu>
30295         Drop support for CPU profiling on Cygwin
30296         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
30297         (Bug#20843)
30299 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
30301         Fix some “nested” quoting confusion in doc strings
30302         * lisp/emacs-lisp/advice.el (ad-map-arglists):
30303         * lisp/kermit.el (kermit-clean-on):
30304         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
30305         * src/keyboard.c (Frecursive_edit):
30306         Use curved quotes when quoting text containing apostrophe,
30307         so that the apostrophe isn't curved in the output.
30309 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
30311         Define `map-elt' as a generalized variable
30312         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
30313         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
30314         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
30315         `setf' with `map-elt'.
30316         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
30318 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
30320         Improve error handling in tramp-adb.el
30321         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
30322         Improve error handling.
30324 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
30326         Reuse `alist-get' in map.el
30327         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
30328         elements.
30330 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
30332         Fix bytecomp-tests--warnings when $TMPDIR has a long name
30333         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
30334         Allow the warning to begin on the 3rd, not only 2nd line, which
30335         happens if temporary-file-directory has a very long name.
30337         Expect 2 icalendar tests to fail on MS-Windows
30338         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
30339         (icalendar-real-world): Make them expected failures on MS-Windows.
30341 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
30343         Improve port of settings UI to older displays
30344         * lisp/cus-start.el (standard): Don't assume curved quotes are
30345         easily distinguishable when users are tinkering with a setting
30346         that affects how curved quotes are generated.
30348         Fix quoting in electric-quote-mode doc string
30349         * lisp/electric.el (electric-quote-mode): Fix quoting.
30350         This is a fallout from the recent change introducing
30351         ‘help-quote-translation’.
30353         Spelling fix
30355         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
30357         * src/doc.c (syms_of_doc): Remove unused symbols.
30359 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
30361         * lisp/window.el (window-state-put): Undedicate target window
30362         before putting STATE into it.  (Bug#20848)
30364 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
30366         Merge from origin/emacs-24
30367         a5e6f33 Fixes: debbugs:20832
30368         b9f02cf Fixes: debbugs:20832
30370 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
30372         Fix file-in-directory-p when the directory is UNC
30373         * lisp/files.el (file-in-directory-p): Support files and
30374         directories that begin with "//".  (Bug#20844)
30376 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
30378         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
30379         in the minibuffer.  (Bug#20832)
30381 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
30383         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
30384         for adding new todo file is empty but modified.  (Bug#20832)
30386 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
30388         (filepos-to-bufferpos): Further tweaks to the utf-16 code
30389         * lisp/international/mule-util.el (filepos-to-bufferpos):
30390         Fix typo.  Move non-exact check to the utf-16 branch (the only one
30391         affected).  Don't use byte-to-position for the utf-16 case.
30393 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
30395         Minor fixes in filepos-to-bufferpos
30396         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
30397         test for utf-8-emacs.  Exempt single-byte encodings from the
30398         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
30399         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
30400         UTF-16 encoded files for CR-LF EOLs.
30402 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
30404         Improve the optional translation of quotes
30405         Fix several problems with the recently-added custom variable
30406         help-quote-translation where the code would quote inconsistently
30407         in help buffers.  Add support for quoting 'like this', which
30408         is common in other GNU programs in ASCII environments.  Change
30409         help-quote-translation to use more mnemonic values: values are now the
30410         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
30411         traditional Emacs help-buffer quoting style `like this'.  Change the
30412         default behavior of substitute-command-keys to match what's done in
30413         set-locale-environment, i.e., quote ‘like this’ if displayable,
30414         'like this' otherwise.
30415         * doc/lispref/help.texi (Keys in Documentation): Document
30416         new behavior of substitute-command-keys, and document
30417         help-quote-translation.
30418         * doc/lispref/tips.texi (Documentation Tips):
30419         Mention the effect of help-quote-translation.
30420         * etc/NEWS: Mention new behavior of substitute-command-keys,
30421         and merge help-quote-translation news into it.
30422         When talking about doc strings, mention new ways to type quotes.
30423         * lisp/cedet/mode-local.el (overload-docstring-extension):
30424         Revert my recent change to this function, which shouldn't be
30425         needed as the result is a doc string.
30426         * lisp/cedet/mode-local.el (mode-local-print-binding)
30427         (mode-local-describe-bindings-2):
30428         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
30429         * lisp/cus-theme.el (describe-theme-1):
30430         * lisp/descr-text.el (describe-text-properties-1, describe-char):
30431         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
30432         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
30433         (eieio-help-constructor):
30434         * lisp/emacs-lisp/package.el (describe-package-1):
30435         * lisp/faces.el (describe-face):
30436         * lisp/help-fns.el (help-fns--key-bindings)
30437         (help-fns--compiler-macro, help-fns--parent-mode)
30438         (help-fns--obsolete, help-fns--interactive-only)
30439         (describe-function-1, describe-variable):
30440         * lisp/help.el (describe-mode):
30441         Use substitute-command-keys to ensure a more-consistent quoting
30442         style in help buffers.
30443         * lisp/cus-start.el (standard):
30444         Document new help-quote-translation behavior.
30445         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
30446         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
30447         (help-xref-url-regexp):
30448         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
30449         * lisp/wid-edit.el (widget-documentation-link-regexp):
30450         Also match 'foo', in case we're in a help buffer generated when
30451         help-quote-translation is ?'.
30452         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
30453         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
30454         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
30455         (Fsubstitute_command_keys): Document and implement new behavior.
30456         (Vhelp_quote_translation): Document new behavior.
30458 2015-06-18  Glenn Morris  <rgm@gnu.org>
30460         * lisp/cus-start.el (help-quote-translation): Add :version.
30462         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
30464 2015-06-18  Alan Mackenzie  <acm@muc.de>
30466         Make translation of quotes to curly in doc strings optional.
30467         * src/doc.c (traditional, prefer-unicode): New symbols.
30468         (help-quote-translation): New variable.
30469         (Fsubstitute_command_keys): Make translation of quotes dependent on
30470         `help-quote-translation'; also translate curly quotes back to ASCII
30471         ones.
30472         * lisp/cus-start.el (top-level): Add a customization entry for
30473         `help-quote-translation'.
30475 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
30477         * lisp/emacs-lisp/package.el: Don't always propagate async errors
30478         (package--with-work-buffer-async): Only propagate the error if the
30479         callback returns non-nil.
30480         (package--download-one-archive): Return nil on the signature
30481         checking callback if we accept unsigned.
30482         (package--download-and-read-archives): Return non-nil on the
30483         archive download callback.
30485 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
30487         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
30488         * src/nsfns.m (Fx_create_frame):
30489         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
30490         image_cache_refcount before first x_default_parameter call.
30492 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
30494         Improve and extend filepos-to-bufferpos
30495         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
30496         Don't barf if F returns nil for some argument.
30497         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
30498         that every encoding of type 'charset' is single-byte.
30500 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
30502         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
30503         Properly delete packages.  (Bug#20836)
30505 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
30507         Update data files from just-released Unicode 8.0
30508         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
30509         status.
30510         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
30511         * admin/unidata/BidiMirroring.txt:
30512         * admin/unidata/BidiBrackets.txt:
30513         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
30515 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
30517         Document curved quotes a bit better
30518         * doc/emacs/basic.texi (Inserting Text):
30519         Mention C-x 8.  Change example to use curved quote rather
30520         than infinity, as this lets us give more ways to do it.
30521         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
30522         and quotation marks.
30523         * doc/emacs/text.texi (Quotation Marks):
30524         * doc/lispref/tips.texi (Documentation Tips):
30525         Add "curly quotes" and "curved quotes" to the index.
30526         * doc/emacs/text.texi (Quotation Marks):
30527         Give the C-x 8 shorthands for curved quotes.
30528         Cross-reference to "Quotation Marks".
30530 2015-06-17  Daiki Ueno  <ueno@gnu.org>
30532         Add pinentry.el for better GnuPG integration
30533         * lisp/pinentry.el: New file.
30534         * etc/NEWS: Add entry about pinentry.el.
30535         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
30536         (Bug#20550)
30538 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
30540         * lisp/emacs-lisp/package.el: Slightly better error reporting.
30542 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
30544         (define-minor-mode): Use setq-default for :global minor modes
30545         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
30546         Use setq-default for :global minor modes (bug#20712).
30548 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
30550         Avoid infloop in redisplay with tall images
30551         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
30552         down near ZV.  (Bug#20808)
30553         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
30554         instead of CHARPOS.
30556 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
30558         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
30559         Fix error reporting.
30561         * lisp/emacs-lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
30563         * lisp/emacs-lisp/package.el: Revert buffer after any operation
30564         Call `package-menu--post-refresh' after any operation that changes
30565         the package database (`package-install' and `package-delete').  To
30566         avoid performance issues in large transactions, these functions
30567         add `post-refresh' to `post-command-hook' instead of calling it
30568         immediately.
30569         (package-menu--mark-or-notify-upgrades): New function.
30570         (list-packages): Add it to `package--post-download-archives-hook'.
30571         (package-menu--post-refresh): Lose the upgrade-checking code, add
30572         code to remove itself from `post-command-hook'.
30573         (package-install, package-delete): Add it to `post-command-hook'.
30574         (package-menu-execute): Don't call `package-menu--post-refresh'.
30576 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
30578         Add missing function xref-location-group for elisp-mode.
30579         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
30581 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
30583         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
30584         The behavior now matches the description in the manual.  (Bug#20783)
30586 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
30588         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
30590 2015-06-17  Glenn Morris  <rgm@gnu.org>
30592         Generate char-script-table from Unicode source.  (Bug#20789)
30593         * admin/unidata/Makefile.in (AWK): New, set by configure.
30594         (all): Add charscript.el.
30595         (blocks): New variable.
30596         (charscript.el, ${unidir}/charscript.el): New targets.
30597         (extraclean): Also remove generated charscript.el.
30598         * admin/unidata/blocks.awk: New script.
30599         * admin/unidata/Blocks.txt: New data file, from unicode.org.
30600         * lisp/international/characters.el: Load charscript.
30601         * src/Makefile.in (charscript): New variable.
30602         (${charscript}): New target.
30603         (${lispintdir}/characters.elc): Depend on charscript.elc.
30604         (temacs$(EXEEXT)): Depend on charscript.
30606         * lisp/international/characters.el (char-script-table): Tweak
30607         some ranges to better match the source.  (Bug#20789#17)
30609         Remove "no-byte-compile: t" from a few files.
30610         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
30611         * lisp/obsolete/patcomp.el: No reason not to compile these.
30613 2015-06-16  Glenn Morris  <rgm@gnu.org>
30615         Fix some typos in copied Unicode data.  (Bug#20789)
30616         * lisp/international/characters.el (char-script-table):
30617         * lisp/international/fontset.el (script-representative-chars)
30618         (setup-default-fontset): Fix typos.
30620         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
30621         Don't print filename twice (it's in the prefix now).
30623         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
30624         No longer needed.
30626         Address a compilation warning.
30627         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
30628         Replace 't' with '_' in pcase.
30630         Address some check-declare warnings.
30631         * lisp/simple.el (tabulated-list-print):
30632         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
30633         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
30634         (ns-get-selection): Update declarations.
30636         Address some compilation warnings.
30637         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
30638         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
30639         Replace 't' with '_' in pcase.
30641         Address some compilation warnings.
30642         * lisp/face-remap.el (text-scale-adjust):
30643         * lisp/menu-bar.el (popup-menu-normalize-position):
30644         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
30645         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
30646         * lisp/emacs-lisp/generator.el (cps--transform-1):
30647         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
30648         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
30649         * lisp/progmodes/octave.el (octave-goto-function-definition)
30650         (octave-find-definition-default-filename):
30651         Replace 't' with '_' in pcase.
30653         * lisp/emacs-lisp/pcase.el (pcase--u1):
30654         Paper-over today's bootstrap failure.
30656 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
30658         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
30660         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
30662         Better confirmation message in `find-alternate-file' (Bug#20830)
30663         * lisp/files.el (find-alternate-file'): Improve the confirmation
30664         message to show the buffer name.
30666         Better docstring for null.  (Bug#20815)
30667         * src/data.c (null): Improves the docstring, saying what null returns
30668         when OBJECT is non-nil.
30670 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
30672         * lisp/net/newst-treeview.el: Use lexical-binding.
30674         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
30675         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
30676         New auxiliary function, extracted from filepos-to-bufferpos.
30677         Make sure it terminates.
30678         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
30679         Add support for the `exact' quality.
30681 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
30683         Identify feeds in newsticker treeview with :nt-feed property
30684         * lisp/net/newst-treeview.el:
30685         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
30687 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
30689         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
30690         (pcase--self-quoting-p): Floats aren't self-quoting.
30691         (pcase): Tweak docstring.
30692         (pcase--u1): Deprecate the t pattern.  Improve error detection for
30693         the nil pattern.
30694         (\`): Tweak docstring.  Signal an error for unrecognized cases.
30695         (bug#20784)
30697 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
30699         Fix infloop in filepos-to-bufferpos
30700         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
30701         offset calculation, and make it conditional on the eol-type of the
30702         file's encoding.  (Bug#20825)
30704 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
30706         Fix handling of image cache refcounts.  (Bug#20802)
30707         This backports Eli Zaretskii's solution of this problem for W32
30708         to X and NS.
30709         * src/nsfns.m (image_cache_refcount): Define unconditionally.
30710         (unwind_create_frame): If the image cache's reference count
30711         hasn't been updated yet, do that now.
30712         (Fx_create_frame): Set image_cache_refcount unconditionally.
30713         * src/xfns.c (image_cache_refcount): Define unconditionally.
30714         (unwind_create_frame): If the image cache's reference count
30715         hasn't been updated yet, do that now.
30716         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
30717         unconditionally.
30718         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
30719         X and NS.
30721 2015-06-16  Nils Ackermann  <nils@ackermath.info>
30723         Improve reftex-label-regexps default value
30724         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
30725         keyvals label regexp more strict to better cope with unbalanced
30726         brackets common in math documents.
30728 2015-06-16  Glenn Morris  <rgm@gnu.org>
30730         * doc/emacs/calendar.texi (Format of Diary File):
30731         Move "nonmarking" from here...
30732         (Displaying the Diary): ... to here.
30734         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
30735         Swap the order of these nodes.
30736         * doc/emacs/emacs.texi: Update detailed menu for the above change.
30738         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
30739         Update date of examples.
30740         (Diary, Format of Diary File): Move example from former to latter.
30741         Reduce duplication.
30743         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
30744         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
30745         Don't set no-byte-compile in the outputs.
30746         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
30748 2015-06-15  Glenn Morris  <rgm@gnu.org>
30750         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
30751         * doc/emacs/calendar.texi (Diary, Format of Diary File):
30752         Update for above diary-file change.
30754         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
30755         (apply-macro-to-region-lines): Use user-error.
30757         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
30758         (pages-directory-for-addresses): Doc fixes.
30760 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
30762         * lisp/info.el: Cleanup bytepos/charpos issues
30763         * lisp/international/mule-util.el: Use lexical-binding.
30764         (filepos-to-bufferpos): New function.
30765         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
30766         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
30767         (Info-read-subfile, Info-search): Use 0-based file positions.
30769         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
30770         (perl--syntax-exp-intro-keywords): New var.
30771         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
30772         (bug#20800).
30774 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
30776         Fix quoting when making derived mode docstring
30777         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
30778         Nest regexp-quote inside format, not the reverse.
30779         Problem reported by Artur Malabarba in:
30780         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
30782 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
30784         Fix current-iso639-language on MS-Windows
30785         * lisp/international/mule-cmds.el (set-locale-environment):
30786         Downcase the locale name before interning it.  This is so the
30787         'current-iso639-language' on MS-Windows matches the ':lang'
30788         property of font-spec objects.
30790         Limit Symbola usage some more
30791         * lisp/international/fontset.el (setup-default-fontset): Limit
30792         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
30793         (Bug#20727)
30795 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
30797         * lisp/emacs-lisp/map.el (map-let): Better docstring.
30799 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
30801         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
30802         (help-fns-test-funny-names): Spelling fixes.
30804 2015-06-14  Glenn Morris  <rgm@gnu.org>
30806         * lisp/version.el (emacs-repository-version-git): Demote errors.
30807         Check result is a hash.
30809 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
30811         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
30812         Catch errors that happen before going async.  (Bug#20809)
30814 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
30816         Another improvement of documentation of set-fontset-font
30817         * doc/lispref/display.texi (Fontsets): Say explicitly that
30818         CHARACTER can be a single codepoint.
30819         * src/fontset.c (Fset_fontset_font): Doc fix.
30821         Another improvement for symbol and punctuation characters
30822         * lisp/international/fontset.el (setup-default-fontset): Exclude
30823         from Symbola character ranges for symbols and punctuation covered
30824         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
30825         installed and where its coverage of symbols and punctuation is
30826         known to be good.  (Bug#20727)
30828 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
30830         Some generic support for multi-mode indentation.
30831         * lisp/progmodes/prog-mode.el (prog-indentation-context):
30832         New variable.
30833         (prog-first-column, prog-widen): New convenience functions.
30835 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
30837         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
30838         Don't assume that `tabulated-list-printer' will leave point at the
30839         end of the buffer.  (Bug#20810)
30841 2015-06-13  Glenn Morris  <rgm@gnu.org>
30843         Tweaks for getting repository version; a bit more like it was for bzr
30844         * lisp/version.el (emacs-repository-version-git)
30845         (emacs-repository--version-git-1): New functions,
30846         split from emacs-repository-get-version.
30847         (emacs-repository-get-version): Make the second argument meaningful.
30849         * lisp/startup.el (command-line-1): Inform if skipping relative
30850         file names due to deleted PWD.
30852         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
30853         when starup directory is missing.  (Bug#18851)
30854         (errno.h): Include it.
30856 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
30858         Better fix for documenting `X as "`X"
30859         Fix suggested by Stefan Monnier.
30860         * lisp/help-fns.el (help-fns--signature):
30861         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
30862         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
30863         Don't treat `X specially, as help-fns--signature now handles this.
30865 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
30867         Improve the default fontset when Symbola is not installed
30868         * lisp/international/fontset.el (setup-default-fontset): Only
30869         prepend Symbola and FreeMono font specs for symbols and
30870         punctuation; do not replace the default spec for them.  This
30871         should have better results when Symbola/FreeMono are not
30872         installed.  (Bug#20727)
30874         Improve documentation of ':lang' in font specs
30875         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
30876         use of the ':lang' property of the font spec.
30877         * doc/emacs/frames.texi (Fonts): Document the language names that
30878         can be in the STYLE part of XLFD.
30879         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
30880         property.
30882         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
30884         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
30886         Revert last change in fontset.el
30887         * lisp/international/fontset.el (setup-default-fontset): Revert
30888         the change "Configure Symbola font only if installed", since font
30889         search is evidently not yet set up when this function is called.
30890         (Bug#20727)
30892 2015-06-12  Glenn Morris  <rgm@gnu.org>
30894         Ensure early startup warnings are visible at the end.  (Bug#20792)
30895         * lisp/emacs-lisp/warnings.el (display-warning):
30896         If startup isn't complete, delay the warning.
30897         * lisp/startup.el (normal-top-level, command-line):
30898         Let display-warning automatically handle the needed delays.
30899         Run delayed-warnings-hook.
30901         * lisp/version.el (emacs-repository-get-version):
30902         Avoid calling external executable if possible.  (Bug#20799)
30904 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
30906         Document `X as "`X", not as "(` X)"
30907         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
30908         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
30910         * src/print.c (print_object): Minor simplification.
30912 2015-06-12  Glenn Morris  <rgm@gnu.org>
30914         * src/buffer.c (init_buffer): Add final newline to message.
30916 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
30918         Configure Symbola font only if installed
30919         * lisp/international/fontset.el (setup-default-fontset):
30920         Don't specify the Symbola font if it's not installed.
30921         Likewise for FreeMono.  (Bug#20727)
30923 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
30925         Configure Symbola font only for symbols and punctuation
30926         * lisp/international/fontset.el (setup-default-fontset): Leave
30927         only symbols and punctuation in the fontset setup for Symbola
30928         font; remove "Greek and Coptic" and "Cyrillic Supplement".
30929         (Bug#20798)
30931 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
30933         Fix crash in fontset-info
30934         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
30935         non-nil.
30937 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
30939         Port to Solaris 10 sparc + Sun C 5.13
30940         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
30941         Adjust to process.c change.
30942         * src/process.c (create_process): Declare volatile variables at
30943         top level of this function, so that they're less likely to be
30944         reused later in the function in the code executed by the vforked
30945         child.  Do not declare locals used only in the vforked child, as
30946         they might share memory with locals still live in the parent.
30947         Instead, use the same variables in the child as in the parent.
30948         This works around a subtle bug that causes a garbage collector
30949         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
30951 2015-06-12  Glenn Morris  <rgm@gnu.org>
30953         * lisp/startup.el (normal-top-level): Don't let *Messages* get
30954         a nil default-directory.
30956 2015-06-11  Glenn Morris  <rgm@gnu.org>
30958         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
30960         Some progress towards starting with PWD deleted.  (Bug#18851)
30961         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
30962         * lisp/startup.el (normal-top-level, command-line-1):
30963         * lisp/minibuffer.el (read-file-name-default):
30964         Handle default-directory being nil.
30966 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
30968         Fix "not a tty" bug on Solaris 10
30969         * configure.ac (PTY_OPEN): Define to plain 'open'
30970         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
30971         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
30972         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
30973         hosts that call grantpt which does its work via a setuid subcommand
30974         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
30975         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
30976         seems relevant in that case too.
30978 2015-06-11  Juri Linkov  <juri@linkov.net>
30980         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
30981         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
30982         (Bug#20785)
30984 2015-06-11  Glenn Morris  <rgm@gnu.org>
30986         * lisp/international/characters.el (char-script-table): Fix typo.
30988 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
30990         Fix quoting of help for functions with odd names
30991         While investigating Bug#20759, I discovered other quoting problems:
30992         C-h f mishandled characters like backslash and quote in function names.
30993         This fix changes the behavior so that 'C-h f pcase RET' now
30994         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
30995         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
30996         in src/lread.c's read1 function says that the backslash will be
30997         needed starting in Emacs 25, which implies that 'format' is
30998         correct and the old pcase documention was wrong to omit the backslash.
30999         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
31000         * lisp/help-fns.el (help-fns--signature):
31001         * lisp/help.el (help-add-fundoc-usage):
31002         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
31003         Use help--make-usage-docstring rather than formatting
31004         help-make-usage.
31005         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
31006         Return raw docstring.
31007         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
31008         raw docstring.  Take more care to distinguish raw from cooked dstrings.
31009         (describe-function-1): Let help-fns--signature substitute
31010         command keys.
31011         * lisp/help.el (help--docstring-quote): New function.
31012         (help-split-fundoc): Use it, to quote funny characters more
31013         systematically.
31014         (help--make-usage): Rename from help-make-usage, since this
31015         should be private.  Leave an obsolete alias for the old name.
31016         (help--make-usage-docstring): New function.
31017         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
31019 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
31021         * lisp/thingatpt.el (in-string-p): Revert last change,
31022         since in-string-p is not used in thingatpt.el but only from outside.
31023         Also, use lexical binding.
31025 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
31027         * lisp/emacs-lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
31028         * test/automated/let-alist.el (let-alist-cons): Test it.
31030 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
31032         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
31034 2015-06-10  Glenn Morris  <rgm@gnu.org>
31036         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
31038         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
31039         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
31040         * admin/gitmerge.el (gitmerge-commit-message):
31041         Exclude "skipped" messages from ChangeLog once again.
31043         Slight namespace cleanup for thingatpt.el.
31044         * lisp/thingatpt.el (thing-at-point--in-string-p)
31045         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
31046         (thing-at-point--read-from-whole-string): Rename from
31047         old versions without "thing-at-point--" prefix.
31048         Keep old versions as obsolete aliases.  Update all uses.
31050         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
31051         Move requiring of finder from here...
31052         (checkdoc-package-keywords): ... to here.
31054         Use 'user-error' in a few calendar files.
31055         * lisp/calendar/appt.el (appt-add):
31056         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
31057         (calendar-generate):
31058         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
31059         Replace 'error' with 'user-error'.
31061         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
31063         * lisp/files-x.el (add-file-local-variable):
31064         Special-case 'lexical-binding'.  (Bug#20641)
31066         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
31067         No longer autoload.
31068         * doc/misc/autotype.texi (Executables):
31069         Undocument executable-self-display.
31071         * lisp/progmodes/executable.el (executable-self-display):
31072         Use non-obsolete tail syntax.  (Bug#20779)
31073         (executable-self-display): Doc update.
31075 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
31077         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
31078         (finder-known-keywords): Silence byte-compiler.
31080 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
31082         * lisp/simple.el (eval-expression): Macroexpand before evaluating
31083         (bug#20730).
31085         * lisp/progmodes/sh-script.el: Better handle nested quotes.
31086         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
31087         (sh-font-lock-quoted-subshell): Make sure double quotes within single
31088         quotes don't mistakenly end prematurely the surrounding string.
31090         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
31092 2015-06-09  Glenn Morris  <rgm@gnu.org>
31094         * test/automated/Makefile.in (ELFILES): Sort.
31096         * Makefile.in (SUBDIR_MAKEFILES):
31097         * lwlib/Makefile.in (WARN_CFLAGS):
31098         Use built-in Make functions rather than echo+sed.
31100 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
31102         Update char-script-table
31103         * lisp/international/characters.el (char-script-table): Update
31104         from Unicode 8.0 Draft.
31106         Improve font selection for punctuation and other symbols
31107         * src/fontset.c (face_for_char): If the character's script is
31108         'symbol', and the font used for ASCII face has a glyph for it, use
31109         the font for the ASCII face instead of searching the fontsets.
31110         This comes instead of NS-specific code that used the current
31111         face's font instead, which is now disabled due to undesirable
31112         consequences.  (Bug#20727)
31114 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
31116         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
31117         Skip past `#' to find BEG (bug#20771).
31118         * test/automated/elisp-mode-tests.el
31119         (elisp-completes-functions-after-hash-quote): New test.
31121 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
31123         Fix compilation warning/error in --without-x builds
31124         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
31125         code on HAVE_WINDOW_SYSTEM.
31127         Improve the default fontset wrt symbols
31128         * lisp/international/fontset.el (setup-default-fontset): Better
31129         setup of fontset-default for symbols: use Symbola and FreeMono.
31130         (Bug#20727)
31132 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
31134         Add new command checkdoc-package-keywords
31135         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
31136         New defcustom.
31137         (checkdoc-list-of-strings-p): Add doc.
31138         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
31139         non-nil, call `checkdoc-package-keywords'.
31140         (checkdoc-get-keywords): New defun.
31141         (checkdoc-package-keywords): New command.  Warns if the current file
31142         has package.el-style keywords that aren't in `finder-known-keywords'.
31143         * etc/NEWS: Add entry.
31145 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
31147         Avoid crashes when key-binding is called from a timer
31148         * src/keymap.c (Fkey_binding): Don't segfault if called with an
31149         empty vector as KEY.  (Bug#20705)
31151         Fix a thinko in arc-mode.el
31152         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
31153         non-Zip64 case.  (Bug#20769)
31155 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
31157         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
31159 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
31161         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
31162         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
31163         "*warn*", print the warning to the standard output.  (bug#20754)
31165 2015-06-07  Glenn Morris  <rgm@gnu.org>
31167         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
31169         * src/font.c (syms_of_font) <font-log>: Doc fix.
31171         Remove the obsolete leading "*" from some C doc strings.
31172         * src/coding.c (syms_of_coding):
31173         * src/font.c (syms_of_font): Remove leading "*" from docs.
31174         * lisp/cus-start.el (enable-character-translation): Add it.
31176 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
31178         Move gen_origin from program to data
31179         That way, 'make change-history' needs to change only ChangeLog.2,
31180         instead of having to change two files.
31181         * ChangeLog.2: Add commit info for range that this file covers.
31182         * Makefile.in (new_commit_regexp): New macro.
31183         (change-history-nocommit): Simplify, by putting what used to be
31184         the gen_origin value into the data (ChangeLog.2) rather than
31185         into the program (gitlog-to-emacslog).
31186         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
31187         the input file (e.g., ChangeLog.2) rather than by having a
31188         constant in the program.  Substitute it into the output.
31190 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
31192         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
31193         function name (bug#20759).
31195 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
31197         Adapt 'struct timespec' to next release of MinGW runtime
31198         * nt/inc/ms-w32.h (struct timespec): Don't declare if
31199         __struct_timespec_defined is defined.
31201 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
31203         Merge from gnulib
31204         This incorporates:
31205         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
31206         2015-06-05 stdio: Don't redefine gets when using C++
31207         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
31208         2015-06-02 file-has-acl: fix build on Mac OS X 10
31209         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
31210         2015-06-01 pthread_sigmask: discount system version if a simple macro
31211         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
31212         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
31213         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
31214         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
31215         * lib/gnulib.mk: Regenerate.
31217 2015-06-06  Juri Linkov  <juri@linkov.net>
31219         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
31220         before calling grep-compute-defaults because now it affects the
31221         command lines computed in grep-compute-defaults.  (Bug#20728)
31223 2015-06-06  Glenn Morris  <rgm@gnu.org>
31225         Address some compilation warnings.
31226         * lisp/international/mule-cmds.el (w32-get-console-codepage)
31227         (w32-get-console-output-codepage):
31228         * lisp/progmodes/elisp-mode.el (xref-collect-references):
31229         * lisp/version.el (cairo-version-string): Declare.
31230         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
31232 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
31234         Fix display when a font claims large values of ascent and descent
31235         This fixes bug#20628.
31236         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
31237         coordinate of a hollow cursor glyph when the original glyph's
31238         ascent is too small.
31239         (get_font_ascent_descent, normal_char_ascent_descent)
31240         (normal_char_height): New functions.
31241         (handle_single_display_spec, append_space_for_newline)
31242         (calc_pixel_width_or_height, produce_stretch_glyph)
31243         (calc_line_height_property): Use normal_char_ascent_descent and
31244         normal_char_height.
31245         (x_produce_glyphs): When font-global values of ascent and descent
31246         are too large, use per-character glyph metrics instead, if
31247         possible.  But don't allow the glyph row's ascent and descent
31248         values become smaller than the values from the metrics of the
31249         font's "normal" character.
31250         * src/xftfont.c (xftfont_draw):
31251         * src/w32font.c (w32font_draw): Correct the values of ascent and
31252         descent used to draw glyphless characters' hex code in a box.
31253         * src/xterm.c (x_draw_glyph_string_background):
31254         * src/xdisp.c (x_produce_glyphs):
31255         * src/w32term.c (x_draw_glyph_string_background):
31256         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
31257         to detect fonts whose global ascent and descent values are too
31258         large to be used in layout decision, and redraw the background
31259         when that happens.
31260         * src/dispextern.h (FONT_TOO_HIGH): New macro.
31261         (get_font_ascent_descent): Add prototype.
31262         * src/xterm.c (x_new_font):
31263         * src/w32term.c (x_new_font):
31264         * src/nsterm.m (x_new_font):
31265         * src/font.c (font_open_entity):
31266         * src/composite.c (composition_gstring_width):
31267         Use get_font_ascent_descent to obtain reasonable values for ascent
31268         and descent of a font.
31270 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
31272         Add assertion in adjust_point_for_property
31273         * src/keyboard.c (adjust_point_for_property): Add eassert for
31274         current buffer being shown in selected window.
31276 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
31278         Replace uses of in-string-p; make it obsolete
31279         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
31280         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
31282 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
31284         Fix Dired display of an explicit list of files by ls-lisp.el
31285         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
31286         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
31287         correct for when displaying individual files separately, not as
31288         part of listing a directory, in which case these values are not
31289         recomputed by 'ls-lisp-insert-directory', but used verbatim.
31291         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
31293 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
31295         Do not adjust point in a non-selected window
31296         * src/keyboard.c (command_loop_1): Do not adjust point when
31297         current buffer is not shown in selected window (Bug#20590).
31299         * etc/DEBUG: Mention 'maybe_call_debugger'
31301 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
31303         Fix a unit test for map.el
31304         * test/automated/map-tests.el (test-map-let): Fix the test to work
31305         with the new syntax of `map-let'.
31307         * lisp/emacs-lisp/map.el (map-let): Better docstring.
31309         Better syntax for the map pcase pattern
31310         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
31311         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
31313         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
31315         Fix a byte-compiler error in map-put and map-delete
31316         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
31317         called with a symbol.
31319 2015-06-05  Glenn Morris  <rgm@gnu.org>
31321         * admin/gitmerge.el (gitmerge-commit-message):
31322         Revert to including "skipped" messages in ChangeLog once again.
31324 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
31326         Use string> instead of equiv lambda with string<
31327         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
31328         lambda with string<.
31330 2015-06-05  Glenn Morris  <rgm@gnu.org>
31332         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
31333         (map--delete-array): Fix typo.
31335         * test/automated/map-tests.el: Replace "assert" with "should".
31337         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
31338         (SUBDIRS_REL): Derive from SUBDIRS.
31340         Tweak some build messages.
31341         * lisp/Makefile.in ($(lisp)/loaddefs.el):
31342         * lisp/cus-dep.el (custom-make-dependencies):
31343         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
31344         * lisp/international/titdic-cnv.el (batch-titdic-convert):
31345         Don't say how to compile.
31347 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
31349         Omit U+0332 COMBINING LOW LINE in previous change
31350         It turns out that it does not work on Ubuntu 15.04.
31352         Fix transliteration of Bahá'í months
31353         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
31354         Improve quality of Latin transliteration of Bahá'í month names.
31356         Fix curved quotes in a few places
31357         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
31358         The strings in question are not doc strings, so this partially
31359         undoes the recent change that assumed they were doc strings.
31360         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
31361         * lisp/info.el (Info-finder-find-node):
31362         Use curved quotes.
31363         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
31364         Also allow curved quotes in doc strings.
31366 2015-06-04  Glenn Morris  <rgm@gnu.org>
31368         * lisp/Makefile.in (AM_V_at): Add missing definition.
31370         * lisp/Makefile.in: Quieten output a bit.
31371         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
31372         Don't echo directories, since the commands we invoke print them.
31374         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
31375         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
31376         (SUBDIRS_SUBDIRS): New variables.
31377         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
31378         Remove.
31379         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
31380         (update-subdirs, compile-main, compile-clean):
31381         Replace "setwins" usage with new "SUBDIRS" variables.
31383         * lisp/vc/compare-w.el (compare-windows-get-window-function):
31384         Fix :version tag.
31386 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31388         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
31390         Undo removal of x_clear_area call on expose for GTK3 or cairo
31391         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
31392         Clear exposed area.  (Bug#20677)
31394 2015-06-04  Glenn Morris  <rgm@gnu.org>
31396         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
31398         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
31400         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
31401         Rename from quail-lao-update-translation, since lao.el defines that.
31403 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
31405         Handle new-style advice in find-funct
31406         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
31407         Handle new-style advice.  Return the symbol's function definition.
31408         (Bug#20718)
31409         (find-function-library): Update accordingly.
31411 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
31413         Merge branch 'map'
31415         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
31417         Add new function string-greaterp
31418         * lisp/subr.el (string-greaterp): New function.  Also aliased to
31419         `string>'.
31420         * test/automated/subr-tests.el (string-comparison-test): Add unit
31421         tests for `string>'and `string<'.
31422         * src/fns.c (string-lessp): Better docstring.
31424 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
31426         Fix timezone-related functions on MS-Windows
31427         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
31428         'xputenv', even if no reallocation of tzvalbuf was necessary.
31429         This fixes a bug in timezone-related functions on MS-Windows.
31430         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
31432 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
31434         Don't pass raw directory name to 'error'
31435         * lisp/files.el (basic-save-buffer-2): Avoid format error if
31436         a directory name contains a string like "%s".
31438 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
31440         Override 'grep --color=always'
31441         * lisp/progmodes/xref.el (xref-collect-matches):
31442         Override --color=always in grep-find-template.
31444 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
31446         Fix error introduced recently in file-notify-tests.el
31447         * test/automated/file-notify-tests.el
31448         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
31449         (file-notify--deftest-remote): Revert previous patch, not
31450         necessary anymore.
31452 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
31454         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
31455         Starting from a display string after a newline, point went to the
31456         previous line.  Also, fix an inadvertent use of a buffer position
31457         with FETCH_BYTE.  (Bug#20701)
31459 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
31461         Instrument file-notify-test.el in order to catch hydra error
31462         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
31463         Wrap body by `ignore-case', in order to trap non-local errors.
31465 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
31467         Undo previous changes in non-toolkit scroll bar drawing
31468         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
31469         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
31471 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
31473         * .gitignore: Also ignore doc/*/*/*.html and .ps.
31475         Support quotes 'like this' in info files
31476         This is possible when 'makeinfo --disable-encoding' is used
31477         in Texinfo 5.
31478         * lisp/calc/calc-help.el (calc-describe-thing):
31479         * lisp/gnus/gnus-art.el (gnus-button-alist):
31480         * lisp/info.el (Info-find-index-name):
31481         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
31482         Also support quotes 'like this'.
31483         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
31484         * lisp/finder.el (finder-font-lock-keywords): Remove var that
31485         hasn't been used in years, instead of bothering to fix its quoting.
31487 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
31489         * .gitignore: Remove !test/etags/html-src/*.html.
31490         It's no longer needed, since *.html was removed.  Sort.
31492 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
31494         Restore <D> instead of '.' in grep-find-template
31495         * lisp/cedet/semantic/symref/grep.el
31496         (semantic-symref-grep-use-template): Update a comment.
31497         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
31498         instead of '.' in grep-find-template (bug#20719).
31499         (rgrep): Pass nil as the directory to rgrep-default-command.
31500         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
31501         default value for DIR.
31502         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
31503         workaround.
31505 2015-06-02  Glenn Morris  <rgm@gnu.org>
31507         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
31509         * configure.ac (emacs_config_features): Add Cairo.
31511         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
31513 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
31515         Ensure that autorevert works for remote files in file-notify-tests.el
31516         * test/automated/file-notify-tests.el (file-notify--test-desc):
31517         New defvar.
31518         (file-notify--test-remote-enabled)
31519         (file-notify-test00-availability, file-notify-test01-add-watch)
31520         (file-notify-test02-events): Use it.
31521         (file-notify--test-event-test): Check proper descriptor.
31522         (file-notify-test03-autorevert): Ensure that
31523         `visited-file-modtime' has changed.  (Bug#20392)
31525 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
31527         Add a pcase pattern for maps and `map-let' based on it
31528         * lisp/emacs-lisp/map.el (map-let): New macro.
31529         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
31530         * test/automated/map-tests.el: New test for `map-let'.
31532 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
31534         Reuse rgrep mechanics in xref-find-regexp
31535         * lisp/progmodes/grep.el (rgrep-default-command):
31536         Extract from `rgrep'.
31537         * lisp/progmodes/xref.el (xref-collect-references): Split from
31538         `xref-collect-matches'.  Only handle the case of symbol search.
31539         (xref-collect-matches): Instead of Semantic Symref, use
31540         `rgrep-default-command', to take advantage of its directory and
31541         file ignore settings.
31542         (xref--collect-match): Remove the last argument, leaving the
31543         regexp construction up to the caller.
31544         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
31545         Change to take the xref-collect- function to use as an argument.
31546         (elisp-xref-find): Update accordingly.
31547         * lisp/progmodes/etags.el (etags--xref-find-matches)
31548         (etags-xref-find): Same.
31550         Move xref-elisp-location to elisp-mode.el
31551         * lisp/progmodes/xref.el (xref-elisp-location)
31552         (xref-make-elisp-location, xref-location-marker): Remove here.
31553         (xref--xref): Don't limit the type of the location slot.
31554         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
31555         Define as a cl-struct here.
31556         (xref-location-marker): Move here.
31558 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
31560         Minor tweaks for .gitignore
31561         * .gitignore: Don't ignore versioned *.html and *.ps files.
31562         Don't ignore admin/notes/tags that might be ignored as TAGS
31563         on case-insensitive filesystems.  (Bug#20710)
31565 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
31567         Generate curved quotes in ert doc
31568         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
31569         (ert-results-mode-menu)
31570         (ert-results-pop-to-backtrace-for-test-at-point)
31571         (ert-results-pop-to-messages-for-test-at-point)
31572         (ert-results-pop-to-should-forms-for-test-at-point)
31573         (ert-describe-test):
31574         Quote ‘like this’, not `like this', when generating doc strings
31575         and the like.
31576         * test/automated/ert-x-tests.el (ert-test-describe-test):
31577         Allow quoting ‘like this’.
31579 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
31581         Add test for previous commit
31582         * test/automated/replace-tests.el: New file.
31583         (query-replace--split-string-tests): Add test for previous commit.
31585         Avoid confusion in query-replace history when replacing NUL chars
31586         * lisp/replace.el (query-replace--split-string): New function.
31587         (query-replace-read-from): Rely on the 'separator' property
31588         instead of searching for the NUL character (Bug#20690).
31590 2015-06-02  Glenn Morris  <rgm@gnu.org>
31592         Merge from origin/emacs-24
31593         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
31595         * admin/gitmerge.el (gitmerge-commit-message):
31596         Exclude "skipped" messages from ChangeLog.
31598 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
31600         Sync with Tramp repository
31601         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
31602         messages.
31603         (tramp-handle-make-auto-save-file-name): When calling
31604         `make-auto-save-file-name' internally, make sure it uses Unix-like
31605         behavior, not Windows-like behavior.
31606         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
31607         the local case, because "chown" might fail on w32.
31608         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
31609         for XEmacs.
31611 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
31613         MS-Windows followup for batch stdout/stderr output changes
31614         * lisp/international/mule-cmds.el (set-locale-environment):
31615         In batch mode, use console codepages for keyboard and terminal
31616         encoding.  (Bug#20545)
31618         Update .gitattributes for DOS EOL files
31619         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
31620         CRLF end-of-line format.
31622         NS equivalents of xterm.c and w32term.c changes
31623         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
31624         glyph string background also when the font in use claims
31625         preposterously large global height value.  Helps to remove
31626         artifacts left from previous displays when glyphless characters
31627         are displayed as hex code in a box.
31628         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
31629         value for FRAME_LINE_HEIGHT, even when a font claims very large
31630         value for its height.
31632 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
31634         Avoid grave accent quoting in stderr diagnostics
31635         A few Emacs diagnostics go directly to stderr, and so can't easily
31636         contain curved quotes (as non-UTF-8 locales might mishandle them).
31637         Instead of bothering to add support for this rarity, reword the
31638         diagnostics so that they don't use grave accent to quote.
31639         * src/alloc.c (mark_memory): Fix comment.
31640         * src/buffer.c (init_buffer):
31641         * src/dispnew.c (init_display):
31642         * src/emacs.c (main, sort_args):
31643         * src/lread.c (dir_warning):
31644         * src/term.c (init_tty):
31645         * src/unexmacosx.c (unexec):
31646         * src/xfns.c (select_visual):
31647         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
31648         Reword stderr diagnostics to avoid quoting `like this'.
31649         * src/unexmacosx.c: Include errno.h.
31650         * src/xfns.c (select_visual): Encode value for locale.
31652 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
31654         Treat batch stdout/stderr like standard display
31655         Calls like (print FOO) could generate improperly encoded or
31656         hard-to-read output if FOO contains characters outside the system
31657         locale.  Fix this by treating batch stdout and stderr like
31658         interactive standard display, when it comes to transliterating and
31659         encoding characters (Bug#20545).
31660         * doc/emacs/mule.texi (Communication Coding):
31661         * doc/lispref/display.texi (Active Display Table):
31662         * doc/lispref/nonascii.texi (Locales):
31663         * etc/NEWS:
31664         * src/coding.c (syms_of_coding):
31665         * src/dispnew.c (syms_of_display):
31666         Document this.
31667         * src/print.c: Include disptab.h.
31668         (printchar_to_stream): New function, with much of the guts of the
31669         old Fexternal_debugging_output, except this one also uses the
31670         standard display table.
31671         (printchar, strout, Fexternal_debugging_output): Use it.
31673 2015-05-31  Glenn Morris  <rgm@gnu.org>
31675         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
31677 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
31679         Remove DEFSYMs that aren't used at the C level.  Also:
31680         * src/decompress.c (Qzlib_dll):
31681         * src/font.c (Qunicode_sip):
31682         * src/frame.c (Qtip_frame):
31683         * src/ftfont.c (Qserif):
31684         * src/gnutls.c (Qgnutls_dll):
31685         * src/xml.c (Qlibxml2_dll):
31686         Move from here ...
31687         * src/w32fns.c (syms_of_w32fns): ... to here,
31688         as these are used only on MS-Windows.
31690 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
31692         Use another default value for tramp-histfile-override
31693         * lisp/net/tramp-sh.el (tramp-histfile-override):
31694         Use ".tramp_history" as default.
31695         Fixes bug#20446
31697 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
31699         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
31701 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
31703         * etc/NEWS: Add an entry about map.el.
31705         Improve the docstring of functions in map.el
31706         Since a map is not a data structure but a concept, adding information
31707         about the possible types of maps can be useful information.
31708         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
31709         each public function.
31711 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
31713         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
31714         specific tests depending on the type of the map.
31716         * lisp/emacs-lisp/map.el: Better docstrings.
31718 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
31720         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
31722 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
31724         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
31726         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
31728         Fix a false negative in `map-elt' with alists and values being nil
31729         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
31730         found but its associated value is nil, do not return the default
31731         value.
31732         * test/automated/map-tests.el: Add a regression test.
31734 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
31736         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
31738         Do not signal an error when trying to delete a key from an array
31739         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
31740         the key is present to avoid signaling an error.
31741         * test/automated/map-tests.el: Add a test for deleting non-existing
31742         keys from maps.
31744         * lisp/emacs-lisp/map.el: Better docstring.
31746         Minor improvement in map-elt
31747         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
31748         doing a lookup in arrays, but check the boundaries of the array
31749         instead.
31750         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
31751         and a negative integer as key.
31753 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
31755         * test/automated/map-tests.el: Refactoring of test methods.
31757         * test/automated/map-tests.el: Renamed from map-test.el.
31759 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
31761         * lisp/emacs-lisp/map.el (map-into): Better error message.
31763         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
31765         Throw an error when converting a map into an unknown map type
31766         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
31767         not valid.
31768         * test/automated/map-tests.el: Add a regression test.
31770         New library map.el similar to seq.el but for mapping data structures.
31771         * test/automated/map-tests.el: New file.
31772         * lisp/emacs-lisp/map.el: New file.
31774 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
31776         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
31777         there's no explicit tag name (bug#20629).
31779 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
31781         Remove format2
31782         * src/editfns.c, src/lisp.h (format2): Remove.
31783         It is more trouble than it's worth, now that we have CALLN.
31784         This is just a minor refactoring.
31785         * src/buffer.c (Fkill_buffer):
31786         * src/dbusbind.c (XD_OBJECT_TO_STRING):
31787         * src/fileio.c (barf_or_query_if_file_exists):
31788         Adjust to format2 going away.
31790         Don't misencode C-generated messages
31791         Also, be more consistent about calls to 'Fmessage' vs 'message'.
31792         * src/alloc.c (Fgc_status):
31793         Prefer AUTO_STRING to build_string for Fmessage call.
31794         * src/data.c (Fmake_variable_buffer_local)
31795         (Fmake_local_variable, Fmake_variable_frame_local):
31796         * src/doc.c (store_function_docstring):
31797         Use Fmessage, not message, since the argument can contain
31798         non-ASCII characters, and this can cause the resulting message
31799         to be incorrectly encoded for the current environment.
31800         * src/fns.c (maybe_resize_hash_table):
31801         * src/xselect.c (x_clipboard_manager_save_all):
31802         Use message, not Fmessage, since Fmessage's power isn't needed here.
31803         * src/process.c (Fmake_network_process): Reword message to avoid %s.
31804         * src/xdisp.c (vmessage): Document restrictions on message contents.
31805         (message_nolog) [false]: Remove unused code.
31807         Use \r rather than ^M in string literals
31808         This is less likely to cause problems on platforms that
31809         use CRLF (or CR!) termination for lines.
31811         Update .gitattributes to match current sources
31812         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
31813         * .gitattributes: Accommodate tests that insist on DOS format.
31814         Remove test/automated/data/decompress/foo-gzipped.
31815         Add etc/e/eterm-color.
31817 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
31819         * doc/emacs/mule.texi (Modifying Fontsets):
31820         Document face-ignored-fonts.  (Bug#20628)
31822         Add etags test for the new -Q option
31823         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
31824         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
31825         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
31826         test-case changes below.
31827         * test/etags/ETAGS.good_6: New file.
31828         * test/etags/cp-src/x.cc: New file.
31829         * test/etags/Makefile (CPSRC): Add x.cc.
31830         (check): Add one more test, for -Q.
31832 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
31834         Use list for the tags completion table, not obarray
31835         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
31836         list instead of an obarray
31837         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
31838         (tags-completion-table): Combine those lists.
31839         (tags-completion-table): Update the docstring.
31841 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
31843         Restore EOL format testing in etags
31844         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
31845         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
31846         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
31847         test-case changes below.
31848         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
31849         * test/etags/cp-src/c.C (B): Add back stray CR character.
31850         * test/etags/c-src/dostorture.c: Add back.
31851         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
31853 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
31855         Declare Emacs on MS-Windows to be DPI-aware
31856         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
31857         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
31858         This avoids Windows entering compatibility mode for Emacs,
31859         which causes fonts to look less nice.
31861 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
31863         Improve Tramp traces
31864         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
31865         * lisp/net/tramp.el (tramp-debug-message): Use it.
31867 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
31869         backup-buffer minor reworking of internals
31870         * lisp/files.el (backup-buffer): Rework to avoid a couple of
31871         unused locals inadvertently introduced in the previous change.
31873         backup-buffer now reports .emacs.d/%backup% ills
31874         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
31875         fails due to disk space exhaustion or whatever, do not pretend
31876         that it succeeded.  More generally, do a better job of checking
31877         for I/O failures, and limit the scope of the condition-case to
31878         just the operations where file errors should be caught and ignored
31879         (Bug#20595).  Also, don't bother trying to delete later backups if
31880         an earlier deletion fails, as this is a sign of trouble and it's
31881         better to stop when there's trouble.
31883         copy-file now truncates output after writing
31884         * src/fileio.c (Fcopy_file): Truncate output after writing rather
31885         than before.  This is more likely to work than truncation before
31886         writing, if the file system is out of space or the user is over
31887         disk quota (Bug#20595).  Also, check for read errors.
31889 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
31891         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
31892         Don't load descriptors from directories above the package directories.
31894 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
31896         Merge from gnulib
31897         This incorporates the following (Bug#20681):
31898         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
31899         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
31900         * lib/set-permissions.c: Copy from gnulib.
31902 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
31904         Improve Tramp traces
31905         * lisp/net/tramp.el (tramp-call-process-region): New defun.
31906         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
31908 2015-05-29  Glenn Morris  <rgm@gnu.org>
31910         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
31912 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
31914         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
31915         The signature was changed in the cairo branch, merged on 2015-05-23.
31916         This oversight broke compiling only the non-toolkit X version.
31918 2015-05-29  Samer Masterson  <samer@samertm.com>
31920         * doc/lispref/os.texi: Update initial-buffer-choice docs.
31922 2015-05-29  Glenn Morris  <rgm@gnu.org>
31924         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
31925         Mark as an expected failure.
31927 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
31929         Change package test to look for curved quotes
31930         * test/automated/package-test.el (package-test-describe-package)
31931         (package-test-signed): Search for curved single quotes as well as
31932         for grave accent and apostrophe.
31934 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
31936         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
31937         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
31939 2015-05-28  Samer Masterson  <samer@samertm.com>
31941         Show files when `initial-buffer-choice' is non-nil
31942         * lisp/startup.el (command-line-1): When Emacs is given a file as an
31943         argument and `initial-buffer-choice' is non-nil, display both the file
31944         and `initial-buffer-choice'.  For more than one file, show
31945         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
31946         commands out of the command line arg parser.
31947         (initial-buffer-choice): Clarify docstring.
31949 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
31951         Fix last commit
31952         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
31953         (gnulib module qcopy-acl): Add back, as it is harmless.  This
31954         minimizes differences wrt lib/gnulib.mk.
31956         Fix the MS-Windows build as followup to gnulib update
31957         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
31958         set-permissions.c, as they don't compile on MinGW.
31959         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
31961 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
31963         Revert my change to gnus-art.el
31964         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
31965         It wasn't that important, and it caused a Gnus build to fail.  See:
31966         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
31968         New minor mode Electric Quote
31969         This lets you easily insert quotes ‘like this’ by typing
31970         quotes `like this', and similarly you can easily insert
31971         quotes “like this” by typing quotes ``like this'' (Bug#20545).
31972         * doc/emacs/basic.texi (Inserting Text):
31973         * doc/emacs/modes.texi (Minor Modes):
31974         * etc/NEWS: Document it.
31975         * doc/emacs/text.texi (Quotation Marks): New section.
31976         * lisp/electric.el (electric-quote-comment)
31977         (electric-quote-string, electric-quote-paragraph):
31978         New custom vars.
31979         (electric--insertable-p)
31980         (electric-quote-post-self-insert-function): New functions.
31981         (electric-quote-mode, electric-quote-local-mode): New minor modes.
31982         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
31983         Add curved single quotes to electric-pair-text-pairs.
31984         Set electric-quote-string in this buffer.
31986         A few more doc string fixes (Bug#20385)
31988         Accept curved quotes in doc strings
31989         * lisp/info-look.el (info-lookup-guess-custom-symbol):
31990         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
31992         Generate curved quotes in pseudo-info nodes
31993         * lisp/info.el (Info-virtual-index-find-node)
31994         (Info-virtual-index, Info-apropos-find-node, info-apropos):
31995         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
31997         Fix minor quoting problems in doc strings
31998         Most of these fixes involve escaping grave accents that are
31999         actually intended to be grave accents, not left quotes.
32000         (Bug#20385)
32002         Support curved quotes in doc strings
32003         Emacs's traditional doc string style has been to quote symbols
32004         `like this'.  This worked well on now-obsolete terminals where
32005         ` and ' were symmetric quotes, but nowadays curved quotes
32006         ‘like this’ look better.  Support quoting the new way too.
32007         (Bug#20385)
32008         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
32009         ‘like-this’ as well as `like-this'.
32010         * etc/NEWS: Mention this.
32011         * lisp/cedet/mode-local.el (overload-docstring-extension)
32012         (mode-local-print-binding, mode-local-describe-bindings-2):
32013         * lisp/cus-theme.el (describe-theme-1):
32014         * lisp/descr-text.el (describe-text-properties-1, describe-char):
32015         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
32016         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
32017         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
32018         (eieio-help-constructor):
32019         * lisp/emacs-lisp/package.el (describe-package-1):
32020         * lisp/faces.el (describe-face):
32021         * lisp/help-fns.el (help-fns--key-bindings)
32022         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
32023         (help-fns--interactive-only, describe-function-1):
32024         (describe-variable):
32025         * lisp/help.el (describe-mode):
32026         * lisp/international/mule-cmds.el (describe-input-method)
32027         (describe-language-environment):
32028         * lisp/international/mule-diag.el (describe-character-set)
32029         (print-coding-system-briefly, list-input-methods)
32030         (list-input-methods-1):
32031         Insert curved quotes rather than grave accent and apostrophe.
32032         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
32033         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
32034         (checkdoc-proper-noun-region-engine):
32035         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
32036         (lisp-cl-font-lock-keywords-2):
32037         * lisp/finder.el (finder-font-lock-keywords):
32038         * lisp/gnus/gnus-art.el (gnus-button-alist):
32039         * lisp/help-fns.el (help-do-arg-highlight)
32040         (describe-function-1, describe-variable):
32041         * lisp/help-mode.el (help-xref-symbol-regexp)
32042         (help-xref-info-regexp, help-xref-url-regexp):
32043         * lisp/help.el (describe-mode):
32044         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
32045         * lisp/wid-edit.el (widget-documentation-link-regexp):
32046         Parse symbols quoted ‘like-this’ as well as `like-this'.
32047         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
32048         Add "‘" and "’" to electric-pair-text-pairs.
32049         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
32050         (elisp-completion-at-point, elisp--preceding-sexp):
32051         Also treat "‘" and "’" as quoting chars.
32053         substitute-command-keys now curves quotes
32054         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
32055         * doc/lispref/help.texi (Keys in Documentation):
32056         * etc/NEWS: Document this.
32057         * src/doc.c (Fsubstitute_command_keys): Implement it.
32059 2015-05-28  Glenn Morris  <rgm@gnu.org>
32061         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
32062         (rmail-summary-by-topic, rmail-summary-by-senders):
32063         No longer strip leading/trailing whitespace.
32065         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
32066         (f90-no-block-limit): Add "enum".  (Bug#20680)
32067         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
32068         New tests.
32070 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
32072         * lisp/isearch.el (isearch--current-buffer): Give a default value.
32073         Un-revert changes mistakenly dropped by f9fabb2b.
32075 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
32077         Merge from gnulib
32078         This incorporates:
32079         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
32080         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
32081         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
32082         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
32083         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
32084         2015-05-26 stdio: fix probe on mingw under gcc 5.1
32085         * admin/merge-gnulib (GNULIB_MODULES):
32086         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
32087         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
32088         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
32089         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
32090         Get latest versions from gnulib.
32091         * lib/get-permissions.c, lib/set-permissions.c: New files.
32092         * lib/gnulib.mk, m4/gnulib-comp.m4:
32093         Regenerate.
32094         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
32096 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
32098         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
32099         process here.
32100         (vc-do-command): Rather than here (bug#20608).
32102 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
32104         Avoid gratuitous delete-dups in face-at-point
32105         * lisp/faces.el (face-at-point): Do not compute the properly
32106         ordered, duplicate-free list if only a single value is
32107         requested anyway.  (Bug#20519)
32109         Show the exact C-x 8 RET invocation in describe-char
32110         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
32111         invocation instead of a template.  (Bug#20522)
32113 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
32115         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
32116         (package-menu--post-refresh): Call `tabulated-list-print' with the
32117         UPDATE argument.  This only affects the refresh action, the revert
32118         action still erases tags.
32119         (package-menu-get-status): Change `assq' to `assoc'.
32120         (package-menu--mark-upgrades-1): New function.
32121         (package-menu--mark-upgrades-pending): New variable.
32122         (package-menu-mark-upgrades): Use them to delay marking until
32123         after refresh is done.
32124         (package-menu--post-refresh): Call mark-upgrades-1 if
32125         mark-upgrades-pending is non-nil.
32127 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
32129         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
32130         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
32131         (commit 3953c4be2816537be95520605d45b866dc731f4b).
32133 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
32135         * lisp/isearch.el (isearch--current-buffer): New var.
32136         (isearch-update): Set cursor-sensor-inhibit here.
32137         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
32138         (bug#20532).
32140         Change inhibit-point-motion-hooks to t
32141         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
32142         to t and document it as obsolete.
32144 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
32146         Support ZIP files that use Zip64 extensions
32147         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
32148         format of central directory offsets used by Zip64 extensions.
32149         (Bug#20665)
32151 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
32153         New test tramp-test30-make-auto-save-file-name
32154         * test/automated/tramp-tests.el
32155         (tramp-test30-make-auto-save-file-name): New test.
32156         (tramp-test31-special-characters)
32157         (tramp-test31-special-characters-with-stat)
32158         (tramp-test31-special-characters-with-perl)
32159         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
32160         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
32161         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
32162         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
32164         Improve tramp-handle-make-auto-save-file-name
32165         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
32166         (tramp-handle-make-auto-save-file-name): Let native
32167         `make-auto-save-file-name' use `auto-save-file-name-transforms',
32168         if `tramp-auto-save-directory' is not set.
32170 2015-05-27  Glenn Morris  <rgm@gnu.org>
32172         No longer set dired-directory in eshell.  (Bug#16477)
32173         * lisp/eshell/esh-mode.el (eshell-mode):
32174         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
32176         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
32178         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
32179         * lisp/progmodes/cc-mode.el (c-mode-help-address):
32180         Change to submit@debbugs.
32181         (c-mode-bug-package): New constant.
32182         (mail-position-on-field): Declare.
32183         (c-submit-bug-report): Insert X-Debbugs-Package header.
32184         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
32185         Mention debbugs.gnu.org.
32187 2015-05-26  Glenn Morris  <rgm@gnu.org>
32189         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
32190         (rmail-summary-by-recipients, rmail-summary-by-topic)
32191         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
32192         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
32194 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
32196         Handle curved quotes in info files
32197         * lisp/calc/calc-help.el (calc-describe-thing):
32198         * lisp/info.el (Info-find-index-name)
32199         (Info-try-follow-nearest-node, Info-fontify-node):
32200         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
32201         In info files, process quotes ‘like this’ the same way we process
32202         quotes `like this'.  This catches a few places we missed earlier.
32204 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
32206         xref-prompt-for-identifier: Use a list value
32207         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
32208         value, to be interpreted as a list of commands.
32209         (xref--prompt-p): New function.
32210         (xref--read-identifier): Use it.
32212 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
32214         Teach MS-Windows font back-end return per-glyph ascent/descent
32215         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
32216         values.
32217         * src/w32font.c (w32font_text_extents): Compute, cache, and
32218         accumulate per-glyph ascent and descent values, instead of copying
32219         global values from the font.  If the values are not available from
32220         the font data, i.e., non-TTF fonts, fall back on font-global values.
32221         (compute_metrics): Compute and return per-glyph ascent and descent
32222         values, if returned by GetGlyphOutlineW, falling back on
32223         font-global values.  (Bug#20628)
32224         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
32225         height of rectangle to be drawn, to be compatible with
32226         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
32227         box, when per-glyph ascent/descent values are used.
32229 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
32231         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
32232         Don't sort if sorter is nil.
32234 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
32236         Fix Bug#20621
32237         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
32238         are major modes which set `auto-save-mode' on their own rules;
32239         Tramp shall not overwrite such settings.
32241 2015-05-26  Glenn Morris  <rgm@gnu.org>
32243         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
32244         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
32245         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
32246         Doc updates.
32247         (vc-dir-mode): Remove unnecessary autoload.
32249 2015-05-25  Philipp Stephani  <phst@google.com>
32251         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
32252         (xterm--extra-capabilities-type): Add `getSelection'.
32253         (xterm--query): Add `no-async' argument.
32254         (xterm--init-activate-get-selection): New function.
32255         (terminal-init-xterm): Use it.
32256         (xterm--init-modify-other-keys): Rename from
32257         terminal-init-xterm-modify-other-keys.
32258         (xterm--init-bracketed-paste-mode): Rename from
32259         terminal-init-xterm-bracketed-paste-mode.
32260         (xterm--init-activate-set-selection): Rename from
32261         terminal-init-xterm-activate-set-selection.
32262         (xterm--selection-char): New function.
32263         (gui-backend-set-selection): Use it.  Use the &context to only apply
32264         this method in terminals where we enabled the feature.
32265         (gui-backend-get-selection): New method.
32267 2015-05-25  Daniel Colascione  <dancol@dancol.org>
32269         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
32270         keyword constants to C++.
32272 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
32274         Make TAGS files more portable to MS-Windows
32275         * etc/NEWS: Document this.
32276         * lib-src/etags.c (readline_internal) [DOS_NT]:
32277         Don't treat CRs differently from GNUish hosts.
32278         * lisp/progmodes/etags.el (etags-goto-tag-location):
32279         Adjust STARTPOS to account for the skipped CRs in dos-style files.
32281 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
32283         Improve fix of bug#20634 in tramp-sh.el
32285 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
32287         Fix a typo in last commit
32288         * lib-src/etags.c (C_entries): Fix a typo.
32289         * test/etags/ETAGS.good_1:
32290         * test/etags/ETAGS.good_2:
32291         * test/etags/ETAGS.good_3:
32292         * test/etags/ETAGS.good_4:
32293         * test/etags/ETAGS.good_5:
32294         * test/etags/CTAGS.good: Update due to the change in etags.c.
32296         Fix tagging of class members in C-like OO languages
32297         * lib-src/etags.c (longopts): Add new option --class-qualify and
32298         its shorthand -Q.
32299         (print_help): Add help text for --class-qualify.
32300         (main): Add handling of -Q.
32301         (consider_token, C_entries) <omethodparm>: Append argument types
32302         to Objective C methods only if --class-qualify was specified.
32303         Qualify C++, Objective C, and Java class members with their class
32304         names only if --class-qualify was specified.
32305         (C_entries): If --class-qualify was not specified, remove the
32306         namespace and class qualifiers from tag names of C++ methods.
32307         This allows to use etags.el as xref back-end without the
32308         tag-symbol-match-p method, which greatly increases the number of
32309         potentially false positives.  (Bug#20629)
32310         * doc/man/etags.1: Update to document the new --class-qualify
32311         option.
32312         * test/etags/ETAGS.good_1:
32313         * test/etags/ETAGS.good_2:
32314         * test/etags/ETAGS.good_3:
32315         * test/etags/ETAGS.good_4:
32316         * test/etags/ETAGS.good_5:
32317         * test/etags/CTAGS.good: Update due to changes in etags.c.
32319 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
32321         (cl-generic-define-method): Side effects are evil (bug#20644)
32322         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
32323         cons-cells that might be used as keys in an `equal' hash-table.
32325 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
32327         Make erc timestamps visible again
32328         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
32329         Make timestamps visible again (if requested).
32331 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
32333         Fix last change in etags.c that broke tagging compresed files
32334         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
32335         quoting of decompression shell command for MS-Windows/MS-DOS.
32337 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
32339         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
32340         (Bug#20639)
32342 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
32344         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
32345         Fix typo in "Inhibit `epa-file-handler' in Tramp"
32346         (commit 89035e247591c8d688fce922b7079881aa110f33).
32348 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
32350         Fix IPv6 addresses in Tramp
32351         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
32352         Add square brackets around host name.
32354 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
32356         Inhibit `epa-file-handler' in Tramp (Bug#20634)
32357         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
32358         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
32359         `epa-file-handler'.
32361 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
32363         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
32364         (pcase-let): Document the behavior in case the pattern doesn't match.
32366 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
32368         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
32369         (tabulated-list-print): New optional argument, UPDATE.  If
32370         non-nil, the list is printed by only adding and deleting the
32371         changed entries, instead of erasing the whole buffer.  This method
32372         is much faster when few or no entries have changed.
32373         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
32374         * etc/NEWS: Document it.
32376         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
32377         (tabulated-list--get-sorter): New function.
32378         (tabulated-list-print): Restore window-line when remember-pos is
32379         passed and optimize away the `nreverse'.
32381 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
32383         Simpilify etags TEX mode scanning
32384         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
32385         Remove static vars.
32386         (TeX_commands): Deduce escapes here instead.
32387         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
32388         This removes the need for a reset_input call.
32390         Improve etags I/O error reporting
32391         * lib-src/etags.c:
32392         Don't include sys/types.h and sys/stat.h; no longer needed.
32393         (infilename): New static var.
32394         (process_file_name): Don't call 'stat'.  Instead, just open the
32395         file for reading and report any errors.  Don't bother making
32396         a copy of the file argument; it's not needed.  Be more careful to
32397         use the failing errno when reporting an error.
32398         Quote the real name better (though no perfectly)
32399         when passing it to the shell.
32400         (reset_input): New function, which reports I/O errors.
32401         All uses of 'rewind' changed to use this function.
32402         (perhaps_more_input): New function, which also checks for
32403         I/O errors.  All uses of 'feof' changed to use this function.
32404         (analyze_regex): Report an error if fclose fails.
32405         (readline_internal): Report an error if getc fails.
32406         (etags_mktmp): Return an error if close fails.
32408         etags.c: avoid side effects in 'if'
32409         * lib-src/etags.c (process_file_name, Perl_functions)
32410         (TEX_decode_env): Hoist side effects into previous statement.
32412         .gitignore tweaks
32413         * .gitignore: Ignore all *.stamp files.  Sort.
32414         Ignore [0-9]*.txt (commonly used name for git patches)
32415         and /vc-dwim-log-* (vc-dwim temporary).
32417 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
32419         Fix last change in etags.c, which failed the test suite
32420         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
32421         before the last change.
32423 2015-05-23  Glenn Morris  <rgm@gnu.org>
32425         Remove charset map files from repository, generate in first bootstrap
32426         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
32427         (all): Create the stamp file.
32428         (extraclean): Delete the stamp file.
32429         * src/Makefile.in (lispintdir, charsets): New variables.
32430         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
32431         New rules.
32432         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
32433         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
32434         * etc/charsets/*.map: Remove from repository.
32436 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
32438         Cleanup etags.c to use locale-independent code
32439         Although this doesn't alter behavior (as etags doesn't use
32440         setlocale), the new version is more clearly locale-independent and
32441         the executable is a bit smaller on my platform.
32442         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
32443         Include <c-ctype.h> instead of <ctype.h>.
32444         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
32445         (begtk, midtk):
32446         Remove; no longer needed.
32447         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
32448         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
32449         c_islower, c_tolower, respectively.
32450         (notinname, begtoken, intoken, endtoken): Rewrite as functions
32451         instead of macros, and initialize the tables at compile-time
32452         rather than at run-time.
32454         Put default action first in src/Makefile
32455         * src/Makefile.in (all): Put this rule before lisp.mk.
32456         That way, plain 'make' works in the src directory again.
32458 2015-05-23  Glenn Morris  <rgm@gnu.org>
32460         * Makefile.in: Fix extraclean rule.
32461         (extraclean_dirs): New.
32462         (extraclean): Use it.
32464 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
32466         Avoid compiler warning in image.c on MS-Windows
32467         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
32468         warning in image.c.
32470 2015-05-23  Glenn Morris  <rgm@gnu.org>
32472         Fix --without-toolkit-scroll-bars builds.
32473         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
32474         Add new argument to x_clear_area1.
32475         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
32476         Update x_clear_area arguments.
32478         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
32479         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
32480         Change to included version.
32481         (LOCAL, local, totalclean): Remove.
32482         (extraclean): Delete all generated files.
32484 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
32486         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
32487         CVS/Entries exists.
32489         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
32491         * lisp/progmodes/etags.el (tags-completion-at-point-function):
32492         Don't trust the find-tag function.
32494 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
32496         Pacify --enable-gcc-warnings
32497         * src/frame.h (x_query_color): Remove redundant extern decl.
32498         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
32499         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
32500         (ftcrfont_text_extents, ftcrfont_draw):
32501         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
32502         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
32503         (x_ins_del_lines, frame_highlight, frame_unhighlight)
32504         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
32505         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
32506         (x_update_window_begin, x_connection_closed)
32507         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
32508         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
32509         (*x_gc_get_ext_data, x_extension_initialize)
32510         (x_cr_accumulate_data):
32511         Remove redundant static decl.  Many of these GCC doesn't complain
32512         about, but we might as well clean out the duplication while we're
32513         in the neighborhood.
32514         * src/xterm.c (x_fill_trapezoid_for_relief):
32515         Remove decl of nonexistent function.
32517 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
32519         Replace gui-method macros with cl-generic with &context
32520         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
32521         (gui-method-declare, gui-call): Remove.
32522         (frame-creation-function): Use cl-defgeneric.
32523         (make-frame): Adjust callers.
32524         * lisp/menu-bar.el (menu-bar-edit-menu):
32525         Use gui-backend-selection-exists-p.
32526         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
32527         (gui-backend-get-selection): New cl-generic to replace
32528         gui-get-selection method.
32529         (gui-backend-set-selection): New cl-generic to replace
32530         gui-set-selection method.
32531         (gui-selection-owner-p): New cl-generic to replace
32532         gui-selection-owner-p method.
32533         (gui-backend-selection-exists-p): New cl-generic to replace
32534         gui-selection-exists-p method.  Adjust all callers.
32535         * lisp/server.el (server-create-window-system-frame): Don't ignore
32536         window-system spec even when unsupported.
32537         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
32538         * lisp/startup.el (handle-args-function, window-system-initialization):
32539         Use cl-defgeneric.
32540         (command-line): Adjust calls accordingly.
32541         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
32542         a window-system-initialization method.
32543         (handle-args-function, frame-creation-function): Use cl-defmethod.
32544         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
32545         (gui-get-selection): Use cl-defmethod on the new functions instead.
32546         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
32547         a gui-backend-get-selection method.
32548         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
32549         Use cl-defmethod on the new functions instead.
32550         (msdos-window-system-initialization): Turn into
32551         a window-system-initialization method.
32552         (frame-creation-function, handle-args-function): Use cl-defmethod.
32553         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
32554         a window-system-initialization method.
32555         (handle-args-function, frame-creation-function): Use cl-defmethod.
32556         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
32557         (gui-get-selection): Use cl-defmethod on the new functions instead.
32558         * lisp/term/x-win.el (x-window-system-initialization): Turn into
32559         a window-system-initialization method.
32560         (handle-args-function, frame-creation-function): Use cl-defmethod.
32561         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
32562         (gui-get-selection): Use cl-defmethod on the new functions instead.
32563         * lisp/term/xterm.el (xterm--set-selection): Turn into
32564         a gui-backend-set-selection method.
32565         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
32566         (Fns_selection_owner_p): Remove unused arg `terminal'.
32567         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
32569 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
32571         Revert "Fix etags Bug#20629 that broke C++ support"
32572         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
32574 2015-05-23  Jan D  <jan.h.d@swipnet.se>
32576         Fix etags Bug#20629 that broke C++ support
32577         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
32578         Revert commit from Sun May 10 (Bug#20629).
32580         Merge branch 'cairo'.
32581         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
32582         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
32584         Merge branch 'master' into cairo
32586         Fixes to compile cairo branch without cairo
32587         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
32588         first argument.
32589         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
32590         USE_CAIRO.
32592 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
32594         * lisp/emacs-lisp/package.el: Always update selected-packages.
32595         (package--update-selected-packages): New function.
32596         (package-menu-execute): Use it before starting the transaction,
32597         this way the list of selected packages is updated even when the
32598         transaction fails.
32599         (package-menu--perform-transaction): Don't edit selected-packages.
32601 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
32603         Fix etags reading of compressed files
32604         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
32605         Include fcntl.h, for O_CLOEXEC.
32606         (process_file_name): Don't use 'popen', whose streams cannot be
32607         rewound.  Instead, uncompress the file to a temporary file,
32608         created by 'etags_mktmp', and read from that as usual.
32609         (etags_mktmp): New function.
32610         * test/etags/ETAGS.good_1:
32611         * test/etags/ETAGS.good_2:
32612         * test/etags/ETAGS.good_3:
32613         * test/etags/ETAGS.good_4:
32614         * test/etags/ETAGS.good_5: Update to be consistent with latest
32615         changes in etags.c regarding reading compressed files.
32617         Improve documentation of 'set-fontset-font'
32618         * doc/lispref/display.texi (Fontsets): Document the value of nil
32619         for the 3rd argument of 'set-fontset-font'.
32621         Fix documentation of forward-line
32622         * src/cmds.c (Fforward_line): Clarify the return value if the line
32623         at end of accessible portion of the buffer has no newline.
32624         * doc/lispref/positions.texi (Text Lines): Document what happens
32625         if the line at end of accessible portion of buffer has no newline.
32626         (Bug#20587)
32628 2015-05-22  Glenn Morris  <rgm@gnu.org>
32630         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
32632         * admin/charsets/mapconv (LC_ALL): Set to C.
32634         * Makefile.in: Add admin/charsets into top-level clean rules.
32635         (clean): Add admin/charsets.
32636         (maybeclean_dirs): New variable.
32637         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
32639         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
32641 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
32643         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
32645 2015-05-22  Glenn Morris  <rgm@gnu.org>
32647         Generate admin/charsets Makefile via configure, and make more portable
32648         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
32649         (admin/charsets/Makefile): Generate it.
32650         * admin/charsets/Makefile.in: Rename from Makefile.
32651         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
32652         New variables, set by configure.
32653         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
32654         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
32655         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
32656         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
32657         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
32658         (all): Declare PHONY.
32659         (local): New PHONY target.
32660         (map_template): New template.  Use to define short PHONY aliases.
32661         (*.map): Add directory prefixes to targets and prerequisites.
32662         Respect make verbosity.
32663         (JISC6226.map): Replace non-portable sed append without newline.
32664         (install): Remove rule.
32665         (clean): Only delete temporary sedscript.
32666         (bootstrap-clean, distclean, maintainer-clean, extraclean)
32667         (totalclean): New PHONY rules.
32668         * admin/charsets/mapconv (BASE): Replace basename with expr.
32669         (FILE): Add "mapfiles" subdirectory.
32670         (AWK): New variable.  Use throughout in place of "awk".
32671         (main): Use "gunzip -c" in place of "zcat".
32672         Don't leave whitespace before "p", for older sed.
32673         * admin/charsets/mapfiles/PTCP154: Add final newline,
32674         to make older sed versions happy.
32676 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
32678         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
32679         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
32680         (auto-revert-notify-watch-descriptor): Use defvar-local.
32681         (find-file-hook, auto-revert-tail-mode)
32682         (auto-revert-notify-add-watch): Use setq-local.
32683         (auto-revert-notify-add-watch): Don't call make-local-variable on
32684         kill-buffer-hook (bug#20601).
32686 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
32688         Change defgeneric so it doesn't completely redefine the function
32689         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
32690         previously defined methods.
32691         (cl-generic-define-method): Let-bind purify-flag instead of
32692         using `fset'.
32693         (cl--generic-prefill-dispatchers): Only define during compilation.
32694         (cl-method-qualifiers): Remove redundant alias.
32695         (help-fns-short-filename): Silence byte-compiler.
32696         * test/automated/cl-generic-tests.el:
32697         Adjust to new defgeneric semantics.
32699 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
32701         * lisp/emacs-lisp/package.el (package-menu-execute):
32702         Remove reference to remove-dups.
32704 2015-05-21  kwhite  <kwhite@gnu.org>
32706         * lisp/erc/erc.el: Hide network/channel messages.
32707         (erc-network-hide-list, erc-channel-hide-list): New lists to define
32708         message types per network/channel.
32709         (erc-add-targets): New function to parse list of targets.
32710         (erc-hide-current-message-p): Modify to check for new targets.
32712 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
32714         Don't quote nil and t in doc strings
32715         This is as per "Tips for Documentation Strings" in the elisp manual.
32716         For consistency, do the same in diagnostics and comments.
32718 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
32720         Fix a minor problem with mouse-face on mode line
32721         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
32722         mouse face also if the mouse pointer hovers above mode-line glyphs
32723         that don't come from any Lisp string.  (Bug#20620)
32725 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
32727         * lisp/emacs-lisp/package.el: Fix selected-package logic.
32728         (package-menu-execute): Mark as selected all non-upgrade packages
32729         being installed.
32730         (package-menu--perform-transaction): Don't mark anything.
32732         * lisp/emacs-lisp/package.el: Mode-line progress report.
32733         (package-menu--transaction-status): New variable.
32734         (package-menu-mode, package-menu--perform-transaction): Use it.
32736         * lisp/emacs-lisp/package.el: Better transaction messages.
32737         (package-menu--partition-transaction): New function.
32738         (package-menu--prompt-transaction-p, package-menu-execute):
32739         Use it.
32740         (package-menu--perform-transaction): Don't do any messaging.
32742         * lisp/emacs-lisp/package.el: Revert async package transactions.
32743         (package-menu-async): Update doc.
32744         (package-install-from-archive, package-download-transaction)
32745         (package-install, package-menu--perform-transaction)
32746         (package-menu-execute): Remove asynchronous functionality.
32748 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
32750         Revert doc string changes to f90.el
32751         Problem reported by Glenn Morris in:
32752         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
32753         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
32754         Revert recent changes to doc strings, as it's intended that they
32755         use grave accent, not quote.
32757 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
32759         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
32760         Improve parameter name.
32762         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
32764 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
32766         Don't require help-fns when not needed
32767         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
32768         * lisp/emacs-lisp/elint.el:
32769         Don't require help-fns at the top level
32770         * lisp/emacs-lisp/advice.el (ad-arglist):
32771         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
32772         Don't require help-fns.  (Bug#17001)
32774 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
32776         Fix slash collapsing in etags on MS-Windows
32777         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
32778         MS-Windows code from the Posix code, and support collapsing both
32779         forward- and back-slashes on MS-Windows.  Fixes a regression found
32780         by the test suite.
32782         Improve documentation of glyphless-char-display
32783         * doc/lispref/display.texi (Glyphless Chars): Improve
32784         documentation of glyphless character display.
32786         Fix "acronym" display of glyphless characters on w32
32787         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
32788         ignore "acronym" substitutes of 1 character for glyphless characters.
32790 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
32792         Add an automated test for let-when-compile
32793         * test/automated/subr-tests.el (let-when-compile): New test.
32795         Add let-when-compile macro instead of using pcase-let
32796         * lisp/subr.el (let-when-compile): New let-like macro that makes its
32797         bindings known to macros like `eval-when-compile' in the body.
32798         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
32799         a `let-when-compile'.  Also comment out the unused lexical var
32800         `el-kws-re'.
32801         The change greatly improves readability, while providing almost the
32802         same (even shorter) byte code: instead of pre-evaluating 10 variables,
32803         tossing them into a list, and destructuring that list a full screen
32804         page later, the variables are simply bound as they are evaluated,
32805         wrapped individually in `eval-when-compile'.
32807 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
32809         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
32810         (package-delete-button-action): New function.
32811         (describe-package-1): Add Delete button.
32813         * lisp/emacs-lisp/package.el: Better dependency description.
32814         (package--used-elsewhere-p): New optional arg, ALL, and return
32815         package-desc objects instead of names.
32816         (package-delete): Update accordingly.
32817         (describe-package-1): Describe which packages require the package.
32819 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
32821         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
32822         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
32823         Fix doc-string.
32825         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
32826         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
32827         (switch-to-buffer): If the selected window is strongly dedicated
32828         to its buffer, signal error before prompting for buffer name.
32829         Handle `switch-to-buffer-in-dedicated-window'.
32830         * doc/lispref/windows.texi (Switching Buffers):
32831         Document `switch-to-buffer-in-dedicated-window'.
32833 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
32835         Prefer "this" to “this” in doc strings
32836         This mostly just straightens quotes introduced in my previous patch.
32837         Suggested by Dmitry Gutov in:
32838         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
32839         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
32840         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
32841         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
32842         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
32843         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
32844         Prefer straight double quotes to curved double quotes in doc strings.
32846         Fix minor quoting problems in doc strings
32847         These were glitches regardless of how or whether we tackle the
32848         problem of grave accent in doc strings.
32849         * lisp/calc/calc-aent.el (math-restore-placeholders):
32850         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
32851         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
32852         * lisp/leim/quail/hebrew.el ("hebrew-new")
32853         ("hebrew-biblical-sil"):
32854         * lisp/leim/quail/thai.el ("thai-kesmanee"):
32855         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
32856         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
32857         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
32858         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
32859         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
32860         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
32861         (semantic-tag-components):
32862         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
32863         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
32864         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
32865         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
32866         * lisp/emacs-lisp/generator.el (iter-next):
32867         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
32868         (gnus-article-mode-syntax-table):
32869         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
32870         * lisp/net/soap-client.el (soap-wsdl-get):
32871         * lisp/net/telnet.el (telnet-mode):
32872         * lisp/org/org-compat.el (org-number-sequence):
32873         * lisp/org/org.el (org-remove-highlights-with-change)
32874         (org-structure-template-alist):
32875         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
32876         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
32877         (handwrite-12pt, handwrite-13pt):
32878         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
32879         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
32880         * lisp/progmodes/verilog-mode.el (verilog-tool)
32881         (verilog-string-replace-matches, verilog-preprocess)
32882         (verilog-auto-insert-lisp, verilog-auto-insert-last):
32883         * lisp/textmodes/makeinfo.el (makeinfo-options):
32884         * src/font.c (Ffont_spec):
32885         Fix minor quoting problems in doc strings, e.g., missing quote,
32886         ``x'' where `x' was meant, etc.
32887         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
32888         Fix minor quoting problem in other string.
32889         * lisp/leim/quail/ethiopic.el ("ethiopic"):
32890         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
32891         Omit unnecessary quotes.
32892         * lisp/faces.el (set-face-attribute, set-face-underline)
32893         (set-face-inverse-video, x-create-frame-with-faces):
32894         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
32895         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
32896         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
32897         * lisp/net/tramp.el (tramp-methods):
32898         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
32899         * lisp/textmodes/artist.el (artist-ellipse-right-char)
32900         (artist-ellipse-left-char, artist-vaporize-fuzziness)
32901         (artist-spray-chars, artist-mode, artist-replace-string)
32902         (artist-put-pixel, artist-text-see-thru):
32903         * lisp/vc/ediff-util.el (ediff-submit-report):
32904         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
32905         Use double-quotes rather than TeX markup in doc strings.
32906         * lisp/skeleton.el (skeleton-pair-insert-maybe):
32907         Reword to avoid the need for grave accent and apostrophe.
32908         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
32909         Don't use grave and acute accents to quote.
32911 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
32913         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
32914         Silence compiler.
32916 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
32918         Try to port new etags tests to MS-Windows
32919         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
32920         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
32921         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
32922         Adjust to test-case changes below.
32923         * test/etags/Makefile (CSRC): Remove dostorture.c.
32924         Whatever it was trying to test, wasn't working portably.
32925         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
32926         just a line-ending problem.
32927         * test/etags/c-src/dostorture.c: Remove.
32928         * test/etags/cp-src/c.C: Remove stray CR.
32929         * test/etags/html-src/algrthms.html: Remove trailing CRs.
32930         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
32931         but if someone edits it later it should stay UTF-8-compatible.
32933 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
32935         Fix display of overlapping window-specific overlays
32936         * src/keyboard.c (adjust_point_for_property): When adjusting point
32937         due to display strings, ignore overlays that are specific to
32938         windows other than the currently selected one.
32939         * src/xdisp.c (handle_single_display_spec): If the display
32940         property comes from an overlay, arrange for buffer iteration to
32941         resume only after the end of that overlay.  (Bug#20607)
32943 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
32945         New command icomplete-force-complete-and-exit
32946         * lisp/icomplete.el (icomplete-force-complete-and-exit):
32947         New command
32948         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
32949         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
32950         (icomplete-minibuffer-map): Bind C-j to it.
32951         (icomplete-forward-completions, icomplete-backward-completions):
32952         Mention the new command in the docstring.
32953         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
32954         Revert the previous fix for bug#17545.
32956 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
32958         Fix last commit
32960         In Elisp manual explain how to override window manager positioning
32961         (Bug#20552)
32962         * doc/lispref/frames.texi (Position Parameters): Give example of
32963         how to override a window manager positioning decision.
32965         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
32966         * src/frame.c (Fdelete_frame): In doc-string mention that frame
32967         can't be deleted if it has a surrogate minibuffer.
32968         * doc/lispref/frames.texi (Minibuffers and Frames)
32969         (Deleting Frames): Explain "surrogate minibuffer frames".
32971         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
32973 2015-05-18  Glenn Morris  <rgm@gnu.org>
32975         Add option to ignore commit lines matching a pattern in ChangeLog
32976         * build-aux/gitlog-to-changelog: Add --ignore-line option.
32977         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
32979 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
32981         Don't skip new etags tests on non-UTF-8 hosts
32982         Problem reported by Eli Zaretskii for MS-Windows.
32983         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
32984         (LC_ALL): Set to C if the current locale isn't UTF-8.
32985         (.PHONY): Remove ediff_1 thru ediff_5.
32986         (check): Always run.
32988 2015-05-18  Glenn Morris  <rgm@gnu.org>
32990         * lisp/calculator.el (calculator-funcall):
32991         * lisp/textmodes/artist.el (artist-spray-random-points):
32992         Use standard degree/radian conversion utilities.
32994         Further lisp-complete-symbol related cleanup.
32995         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
32996         Unadvertise non-functional argument.  Replace obsolete alias.
32998 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
33000         Add a test case for Maven warning ouput
33001         * test/automated/compile-tests.el
33002         (compile-tests--test-regexps-data): Add a case for Maven warning
33003         ouput.
33004         (compile--test-error-line): Check the compilation message type, if
33005         it's specified in the test data.
33007 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
33009         Update Maven compilation-mode entry to distinguish warnings
33010         * lisp/progmodes/compile.el
33011         (compilation-error-regexp-alist-alist): Update Maven entry to
33012         distinguish warnings (bug#20556).
33014 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
33016         * test/automated/sgml-mode-tests.el: New file.
33018 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
33020         Improve handling of the first Git revision
33021         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
33022         there's no next entry, delete until the end of the buffer.
33023         (log-view-end-of-defun-1): Stop at eob.
33024         * lisp/vc/vc-annotate.el
33025         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
33026         when previous-revision is nil.
33027         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
33028         with `--' to avoid ambiguity.
33029         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
33030         returned revision string.
33031         (vc-git-annotate-time): Expect `^' before the first revision.
33032         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
33033         REV1 is nil, and REV2 is not.
33034         * lisp/vc/vc.el: Update the description of the `diff' function.
33036 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
33038         Allow checkdoc to be called in batch
33039         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
33040         is non-nil, echo the error with `warn'.
33041         How it can be used in -batch:
33042         (with-current-buffer (find-file "checkdoc.el")
33043           (checkdoc-current-buffer t))
33045 2015-05-18  Glenn Morris  <rgm@gnu.org>
33047         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
33049 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
33051         * admin/notes/unicode: New section "binary files".
33053         Change new etags test to use UTF-8 encoding
33054         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
33055         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
33056         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
33057         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
33058         * test/etags/html-src/softwarelibero.html:
33059         Switch to UTF-8 encoding.
33060         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
33061         Remove Makefile, as it's too incestuous to have the test input
33062         include the build procedure.
33063         (UTF8_LOCALE, UTF_ENCODING): New macros.
33064         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
33065         (check): Skip if not UTF-8.
33066         (.PHONY): New rule.
33067         (FRC): Remove, as superseded by .PHONY.  All uses removed.
33068         (regexfile): Prefer printf to echo when outputting oddball chars.
33069         (.PRECIOUS): Remove, as these files are not built.
33071         Rename 'foo-gzipped' to 'foo.gz'
33072         * test/automated/data/decompress/foo.gz:
33073         Rename from test/automated/data/decompress/foo-gzipped,
33074         to make it easier for other tools to tell that it's compressed.
33075         * test/automated/zlib-tests.el (zlib--decompress):
33076         Adjust to renamed file.
33078 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
33080         Set up default-directory
33081         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
33082         binding for `v'.
33083         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
33084         appropriate value for default-directory.
33086 2015-05-17  Samer Masterson  <samer@samertm.com>
33088         * lisp/eshell/em-term.el (eshell-term-sentinel):
33089         No-op by default, only kills term buffer if
33090         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
33091         (eshell-destroy-buffer-when-process-dies): New custom to preserve
33092         previous behavior.
33094         eshell: Introduce new buffer syntax
33095         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
33096         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
33097         needed (Bug#19319).
33098         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
33099         (eshell-get-target): Remove shorthand-specific code.
33100         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
33101         '#<buffer-name>'.
33103 2015-05-17  Jan D  <jan.h.d@swipnet.se>
33105         Merge branch 'master' into cairo
33107 2015-04-26  Jan D  <jan.h.d@swipnet.se>
33109         Merge branch 'master' into cairo
33111         Add PBM support for cairo
33112         * src/image.c (xcolor_to_argb32): New function.
33113         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
33114         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
33115         XImagePtr if ! USE_CAIRO.
33116         (pbm_load): Add cairo support.
33118 2015-04-12  Jan D  <jan.h.d@swipnet.se>
33120         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
33121         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
33122         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
33123         x_free_cr_resources.
33125         Handle specified bg in images.  Use generic libpng code for PNGs.
33126         * src/image.c (get_spec_bg_or_alpha_as_argb)
33127         (create_cairo_image_surface): New functions when USE_CAIRO.
33128         (xpm_load): Call the above functions.  Handle XPM without mask
33129         when USE_CAIRO.
33130         (png_load_body): Handle USE_CAIRO case.
33131         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
33132         instead.
33133         (jpeg_load_body): Call create_cairo_image_surface.
33134         (gif_load, svg_load_image): Handle specified background, call
33135         create_cairo_image_surface.
33136         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
33138 2015-04-11  Jan D  <jan.h.d@swipnet.se>
33140         Support GIF and TIFF with cairo
33141         * configure.ac: Allow jpeg with cairo.
33142         Allow tiff and gif with cairo.
33143         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
33144         (tiff_load): Create cairo image surface if USE_CAIRO.
33145         (gif_load): Ditto.
33147         Support JPEG with USE_CAIRO
33148         * configure.ac: Allow jpeg with cairo.
33149         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
33151 2015-04-05  Jan D  <jan.h.d@swipnet.se>
33153         Support RSVG and cairo
33154         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
33155         * src/dispextern.h (struct image): Add cr_data2 if cairo.
33156         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
33157         (x_clear_image): Free cr_data and cr_data2 if set.
33158         (xpm_load): Assign data to cr_data2.
33159         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
33161 2015-04-03  Jan D  <jan.h.d@swipnet.se>
33163         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
33164         * configure.ac (HAVE_RSVG): Move after cairo.
33165         (USE_CAIRO): Disable rsvg, don't disable Xpm.
33166         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
33167         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
33168         don't return early.
33169         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
33170         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
33171         and create a surface.
33173         Tool tips for menus did not show any text.
33174         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
33175         tip frames, the geometry may be wrong.
33177         Merge branch 'master' into cairo, fixes tooltips not shown.
33179         Merge branch 'master' into cairo
33181         Add CAIRO_CFLAGS to lwlib/Makefile.in
33182         * Makefile.in (CAIRO_CFLAGS): Add.
33184 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33186         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
33188 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33190         Draw outermost line using black relief and erase corners also for cairo.
33191         * src/xterm.c [USE_CAIRO]: Include math.h.
33192         (enum corners) [USE_CAIRO]: New enum.
33193         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
33194         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
33195         than 1, draw the outermost line using the black relief.
33197         * src/xterm.c (x_fill_trapezoid_for_relief):
33198         Remove unnecessary cairo_close_path.
33200 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33202         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
33204         * src/xterm.c (x_draw_stretch_glyph_string):
33205         Call x_reset_clip_rectangles instead of XSetClipMask.
33207         Use int instead of unsigned int for width and height args.
33208         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
33209         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
33210         width and height args.
33212         Modernize k&r cairo-related function declarations.
33213         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
33214         (xg_print_frames_dialog): Modernize k&r declarations.
33215         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
33216         (Fx_print_frames_dialog): Modernize k&r declarations.
33217         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
33218         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
33219         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
33220         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
33221         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
33222         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
33223         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
33224         (x_clear_area): Modernize k&r declarations.
33226         Implement wave-style variant of underlining for cairo.
33227         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
33228         (x_draw_underwave) [USE_CAIRO]: Use it.
33230         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
33231         instead of XFillRectangle.
33233 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
33235         Fix fringe bitmap initialization for cairo
33236         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
33237         data for cairo image surface.
33238         * src/xterm.c (x_cr_define_fringe_bitmap):
33239         Call cairo_surface_mark_dirty.
33241 2015-02-11  Jan D  <jan.h.d@swipnet.se>
33243         Add cairo drawing
33244         * configure.ac (with-cairo): New option.
33245         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
33246         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
33247         Output "Does Emacs use cairo?".
33248         * lisp/version.el (emacs-version): Add cairo version.
33249         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
33250         (FONT_OBJ): Add comment about ftcrfont.
33251         (ALL_CFLAGS): Add CAIRO_CFLAGS.
33252         (LIBES): Add CAIRO_LIBS.
33253         * src/dispextern.h (struct image): Add cr_data for cairo.
33254         (x_cr_init_fringe): Declare.
33255         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
33256         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
33257         * src/fringe.c (x_cr_init_fringe): New function name that shares code
33258         with w32_init_fringe.
33259         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
33260         * src/ftfont.c (ftfont_info_size); New global variable.
33261         (ftfont_open2): New extern function almost the same as old ftfont_open,
33262         but takes the font_object as argument.
33263         (ftfont_open): Build font object and call ftfont_open2.
33264         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
33265         * src/gtkutil.c (xg_clear_under_internal_border)
33266         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
33267         Only queue_draw if not cairo.  Change args to x_clear_area.
33268         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
33269         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
33270         (xg_print_frames_dialog): New functions for printing.
33271         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
33272         (xg_print_frames_dialog): Declare.
33273         * src/image.c: Add defined (USE_CAIRO) for PNG.
33274         Add !defined USE_CAIRO for W32 PNG code.
33275         (x_clear_image): If cairo, destroy the surface in cr_data.
33276         (png_load): Add new cairo compatible implementation.
33277         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
33278         * src/xfns.c: New section Printing.
33279         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
33280         (x-print-frames-dialog): New printing functions.
33281         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
33282         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
33283         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
33284         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
33285         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
33286         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
33287         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
33288         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
33289         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
33290         Declare.
33291         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
33292         (max_fringe_bmp, fringe_bmp): New variables.
33293         (x_gc_get_ext_data, x_extension_initialize)
33294         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
33295         (x_set_cr_source_with_gc_foreground)
33296         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
33297         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
33298         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
33299         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
33300         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
33301         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
33302         (x_update_begin): Create cairo surface if needed.
33303         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
33304         (x_update_end): Paint cairo drawing surface to xlib surface.
33305         (x_clear_under_internal_border, x_after_update_window_line): Adjust
33306         arguments to x_clear_area.
33307         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
33308         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
33309         of XSetClipMask.
33310         (x_set_glyph_string_clipping)
33311         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
33312         instead of XSetClipRectangles.
33313         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
33314         Use x_fill_rectangle instead of XFillRectangle.
33315         (x_draw_glyph_string_foreground)
33316         (x_draw_composite_glyph_string_foreground)
33317         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
33318         instead of XDrawRectangle.
33319         (x_draw_relief_rect): Add code for USE_CAIRO.
33320         Call x_reset_clip_rectangles instead of XSetClipMask.
33321         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
33322         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
33323         instead of XSetClipMask.
33324         (x_draw_image_foreground, x_draw_image_foreground_1):
33325         x_draw_rectangle instead of XDrawRectangle.
33326         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
33327         XFillRectangle.
33328         (x_draw_image_glyph_string): If img has cr_data, use it as
33329         a cairo surface.
33330         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
33331         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
33332         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
33333         x_reset_clip_rectangles instead of XSetClipMask.
33334         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
33335         (x_clear_area1): New function that calls XClearArea.
33336         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
33337         non-cairo.
33338         (x_clear_frame): x_clear_window instead of XClearWindow.
33339         (x_scroll_run): Set frame garbaged if cairo.
33340         (XTmouse_position): Initialize *part to 0.
33341         (x_scroll_bar_create): Adjust arguments to x_clear_area.
33342         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
33343         x_fill_rectangle instead of XFillRectangle.
33344         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
33345         arguments to x_clear_area.
33346         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
33347         (handle_one_xevent): Adjust arguments to x_clear_area.
33348         Destroy cairo surface for frame if ConfigureNotify.
33349         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
33350         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
33351         x_reset_clip_rectangles instead of XSetClipMask.
33352         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
33353         x_reset_clip_rectangles instead of XSetClipMask.
33354         (x_clear_frame_area): Adjust arguments to x_clear_area.
33355         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
33356         (x_term_init): Call x_extension_initialize if cairo.
33357         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
33358         x_cr_destroy_fringe_bitmap for cairo.
33359         (x_initialize): Call x_cr_init_fringe for cairo.
33360         * src/xterm.h: Add include of cairo header files.
33361         (x_bitmap_record): Add img if cairo.
33362         (x_gc_ext_data): New struct for cairo.
33363         (x_display_info): Add ext_codes for cairo.
33364         (x_output): Add cr_context and cr_surface for cairo.
33365         (x_clear_area): Change arguments from Display*/Window to frame pointer.
33366         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
33367         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
33368         (x_cr_draw_frame, x_cr_export_frames): Declare.
33370 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
33372         Fix integer-valued `mouse-highlight' (Bug#20590)
33373         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
33375 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
33377         MS-Windows followup for ASCIIfication of curved quotes
33378         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
33379         test for curved quotes being displayable, after switching the
33380         terminal encoding.  (Bug#20545)
33382 2015-05-17  Jan D  <jan.h.d@swipnet.se>
33384         Add comment that x_shift_glyphs_for_insert is never called
33385         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
33386         Add comment that this function is never called.
33388 2015-05-16  Glenn Morris  <rgm@gnu.org>
33390         * src/lisp.mk: Remove from repository and generate at build-time.
33391         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
33392         (shortlisp_filter): New variable.
33393         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
33394         (distclean): Remove lisp.mk.
33395         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
33396         * lisp/loadup.el: Tweak layout to make it easier to parse.
33397         * make-dist: Do not distribute src/lisp.mk.
33399 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
33401         Display shorter dates in Git annotate output
33402         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
33403         format (when not overridden with vc-git-annotate-switches).
33404         (vc-git-annotate-time): Support the short format, as well as ISO
33405         8601 that has been used until now (bug#5428).
33407 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
33409         ASCIIfy curved quotes on displays lacking them
33410         * lisp/international/mule-cmds.el (set-locale-environment):
33411         If curved quotes don't work, display straight ASCII approximations
33412         (Bug#20545).
33414 2015-05-16  Glenn Morris  <rgm@gnu.org>
33416         Small src/Makefile simplification
33417         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
33418         * src/Makefile.in (lisp): Derive from shortlisp.
33419         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
33421 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
33423         * lisp/help-mode.el (help-go-forward): Doc fix.
33424         (Bug#20577)
33426         * doc/lispref/debugging.texi (Profiling): Improve indexing.
33427         (Bug#20576)
33429 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
33431         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
33432         have one fewer `not'.
33434         * lisp/vc/vc-git.el (vc-git-diff-switches)
33435         (vc-git-annotate-switches, vc-git-resolve-conflicts)
33436         (vc-git-program, vc-git-root-log-format): Remove the redundant
33437         :group declarations.
33439 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
33441         Removes the predicate from lisp-complete-symbol (Bug#20456)
33442         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
33443         and remove it from the docstring.
33445 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
33447         Add new option vc-git-resolve-conflicts
33448         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
33449         (vc-git-find-file-hook): Add to after-save-hook only when the
33450         above is non-nil.
33451         (vc-git-resolve-when-done): Update to honor the new variable.
33452         (Bug#20292)
33454 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
33456         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
33457         (tabulated-list-init-header): Document new behavior.
33458         (tabulated-list-print-fake-header): Do nothing if
33459         `tabulated-list--header-string' is nil.
33460         (tabulated-list--header-string): Add a docstring.
33461         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
33462         * etc/NEWS: Document it.
33464 2015-05-15  Leo Liu  <sdl.web@gmail.com>
33466         Revert "Fix cps--gensym"
33467         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
33468         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
33470 2015-05-15  Glenn Morris  <rgm@gnu.org>
33472         Replace AC_SUBST_FILE in configure with include in Makefiles
33473         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
33474         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
33475         (AUTO_DEPEND): New output variable.
33476         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
33477         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
33478         (lwlib_deps_frag): Replace by conditional include.
33479         * lwlib/autodeps.mk: Remove file.
33480         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
33481         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
33482         (oldxmenu_deps_frag): Replace by conditional include.
33483         * oldXMenu/autodeps.mk: Remove file.
33484         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
33485         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
33486         (lisp_frag): Replace by an include.
33487         (deps_frag): Replace by conditional include.
33488         * src/autodeps.mk: Remove file.
33490         Tweak japanese.el's loading of dependencies
33491         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
33492         * lisp/language/japanese.el: Use require rather than load.
33493         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
33494         Provide a feature.
33495         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
33496         Provide a feature in the generated file.
33498 2015-05-15  Jan D  <jan.h.d@swipnet.se>
33500         Fix NS warnings
33501         * src/nsmenu.m (ns_popup_dialog)
33502         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
33503         * src/nsfns.m (Fx_create_frame): Remove unused variables.
33504         (Fns_read_file_name): Initialize fname, remove ret.
33505         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
33506         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
33507         Remove unused variable.
33508         (init): Add parantesis in if.
33509         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
33511 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
33513         Fix a enum conversion warning in macfont.m
33514         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
33515         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
33517 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
33519         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
33520         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
33522 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
33524         * lisp/cus-start.el: Add ns-confirm-quit.
33526         Fix warnings on OSX 10.10
33527         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
33528         OSX versions.
33529         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
33530         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
33531         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
33532         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
33533         setScalesWhenResized for OSX < 10.6.
33534         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
33535         * src/nsterm.m (ns_copy_bits): New function that does not use
33536         deprecated NSCopyBits.
33537         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
33538         (runAlertPanel): New function.
33539         (applicationShouldTerminate:): Call runAlertPanel.
33540         (initFrameFromEmacs, toggleFullScreen:): Only call
33541         useOptimizedDrawing for OSX < 10.10.
33542         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
33543         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
33544         (draggingEntered:): Returns NSDragOperation.
33545         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
33547 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
33549         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
33550         (package--init-file-ensured): New variable.
33551         (package-initialize, package--ensure-init-file): Use it.
33553 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
33555         Honor :fore/background for XBM on NS (Bug#14969)
33556         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
33557         initFromXBM takes bg, fg args, remove flip arg.
33558         (ns_image_from_XBM): Add bg, fg args.
33559         * src/image.c (x_create_bitmap_from_data)
33560         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
33561         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
33562         initFromXBM.  Remove flip arg.
33563         (initFromSkipXBM): Move code to initFromXBM.
33564         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
33565         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
33566         always false.
33567         Remove bit flipping (bitPat, swt), generated incorrect images when
33568         width/height wasn't a multiple of 8.
33569         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
33570         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
33571         remove flip arg.
33573 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
33575         * lisp/emacs-lisp/package.el: Be more careful with the init file.
33576         (package--ensure-init-file): Check that user-init-file is set,
33577         exists, is readable, and is writable.  (Bug#20584)
33578         Also expand the docstring.
33580 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
33582         Sync with upstream verilog-mode revision 6232468
33583         * lisp/progmodes/verilog-mode.el
33584         (verilog-font-lock-grouping-keywords-face)
33585         (verilog-highlight-grouping-keywords): Fix use of face when
33586         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
33587         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
33588         parent is reset, bug906.  Reported by Ken Schmidt.
33589         (verilog-auto-inout-module): Add fourth regexp argument to
33590         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
33591         Reported by John Tillema.
33592         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
33593         modport if signal attachment is itself a modport.  Reported by
33594         Matthew Lovell.
33595         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
33596         always_comb and always_latch, bug844.  Reported by Greg Hilton.
33597         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
33598         with many curly-bracket pairs, bug663.
33599         (verilog-set-auto-endcomments): Fix end comments for functions of
33600         type void, etc.  Reported by Alex Reed.
33601         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
33602         caused by indent-line-to deleting tabls pre 24.5.
33603         (verilog-nameable-item-re): Fix nameable items that can have an
33604         end-identifier to include endchecker, endgroup, endprogram,
33605         endproperty, and endsequence.  Reported by Alex Reed.
33606         (verilog-label-be): When auto-commenting a buffer, consider
33607         auto-comments on all known keywords (not just a subset thereof).
33608         Reported by Alex Reed.
33609         (verilog-auto-end-comment-lines-re)
33610         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
33611         Automatically comment property/endproperty blocks to match other
33612         similar blocks like sequence/endsequence, function/endfunction, etc.
33613         Reported by Alex Reed.
33614         (verilog-set-auto-endcomments): Detect the function- or task-name
33615         when auto-commenting blocks that lack an explicit portlist.
33616         Reported by Alex Reed.
33617         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
33618         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
33619         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
33620         is nil, fix indenting initial/final to match always statements,
33621         bug825.  Reported by Tim Clapp.
33622         (verilog-extended-complete-re): Fix indentation of DPI-C imports
33623         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
33624         Mao and Jason Forkey.
33625         (verilog-read-decls): Fix parsing typed interfaces.  Fix
33626         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
33627         Fix localparam not being ignored in AUTOINSTPARAM,
33628         bug889.  Reported by Shannon Hill.
33629         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
33630         bug793.  Reported by Pierre-David Pfister.
33631         (verilog-auto-arg-format, verilog-auto-arg-ports):
33632         Add verilog-auto-arg-format to support newlines in AUTOARG.
33633         Reported by Jie Xiao.
33634         (verilog-batch-execute-func): Do not batch re-auto files loaded by
33635         Local Variables.  Fix printing "no changes to be saved" with
33636         verilog-batch.  Reported by Dan Dever.
33637         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
33638         interface-only modules, bug721.  Reported by Dean Hoyt.
33639         Author: Alex Reed <acreed4@gmail.com>
33640         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
33641         Don't treat '<keyword>:<identifier>' as the start of a labeled
33642         statement, bug905.  Reported by Enzo Chi.
33643         (verilog-directive-re, verilog-compiler-directives)
33644         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
33645         directives (plus some extras) when determining indentation, bug
33646         901.  Reported by Bernd Beuster.
33647         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
33648         iff expression doesn't start with word-character, bug900.
33649         (verilog-optional-signed-range-re, verilog-optional-signed-re):
33650         Fix incorrect indentation/alignment of unsigned declarations,
33651         bug897.
33652         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
33653         always constructs, bug895.
33654         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
33655         Reported by Eric Mastromarchi.
33656         (verilog-beg-of-statement): Fix indenting for some forms of
33657         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
33658         continued assignment incorrect if first line ends with ']', bug437.
33659         Reported by Dan Dever.  Fix indention of cover inside an
33660         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
33661         blocks, bug842.
33662         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
33663         Reported by Kaushal Modi.
33664         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
33665         (verilog-backward-token): Fix indenting sensitivity lists with
33666         named events, bug840.  Reed.
33667         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
33668         nil not honoring 'forever', 'foreach', and 'do' keywords.
33670 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
33672         Check for invalid GTK+ monitor scales
33673         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
33674         INT_MAX for too-large scales.  All callers changed to assume the
33675         result is valid (Bug#20432).
33676         (xg_frame_set_char_size, xg_update_scrollbar_pos):
33677         Calculate scale only if needed.
33678         Show ASCII approximations instead.
33680 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
33682         Fix daemon crashes when linum-mode is turned on early on
33683         * src/window.c (Fwindow_end): Don't try calling display engine
33684         functions on initial-frame frame.  (Bug#20565)
33686         Fix selective diff browsing in Ediff
33687         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
33688         Go to the beginning of the region before searching for the
33689         ediff-regexp-focus-* regexps.  (Bug#20568)
33691 2015-05-14  Jan D  <jan.h.d@swipnet.se>
33693         Fixes bug#20142
33694         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
33695         arrive in the main loop, even for Gtk 3 (Bug#20142).
33697         Don't access display after i/o error (Bug#19147).
33698         * src/xterm.c (x_connection_closed): Add third arg ioerror.
33699         If ioerror, set display to 0 (Bug#19147).
33700         (x_error_quitter): Call x_connection_closed with third arg false.
33701         (x_io_error_quitter): Call x_connection_closed with third arg true.
33703         Handle GTK_SCALE, fixes Bug#20432.
33704         * src/gtkutil.c (xg_get_gdk_scale): New function.
33705         (xg_frame_set_char_size)
33706         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
33707         (xg_get_default_scrollbar_height)
33708         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
33709         when setting sizes (Bug#20432).
33711 2015-05-13  Leo Liu  <sdl.web@gmail.com>
33713         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
33715 2015-05-13  Glenn Morris  <rgm@gnu.org>
33717         Fix bootstrap (void function cl-member).
33718         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
33719         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
33721 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
33723         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
33724         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
33725         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
33726         Avoid defalias for closures which are not immutable.
33727         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
33728         the dispatchers table with various entries.
33729         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
33730         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
33732 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
33734         Improve tagging of C bindings in DEFVAR_*
33735         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
33736         from DEFVAR_*.
33738 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
33740         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
33742 2015-05-12  Glenn Morris  <rgm@gnu.org>
33744         * lisp/progmodes/tcl.el (tcl-filter):
33745         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
33747         Add basic VC push support
33748         * lisp/vc/vc.el (vc-push): New autoloaded command.
33749         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
33750         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
33751         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
33752         (vc-bzr-push): New.
33753         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
33754         (vc-git-pull): Reimplement using vc-git--pushpull.
33755         (vc-git-push): New.
33756         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
33757         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
33758         * doc/emacs/maintaining.texi (Pulling / Pushing):
33759         Rename from "VC Pull".  Mention pushing.
33760         (VC With A Merging VCS, VC Change Log): Update xrefs.
33761         (Branches): Update menu.
33762         * doc/emacs/emacs.texi: Update menu.
33763         * etc/NEWS: Mention this.
33765 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
33767         Improve the seq pcase pattern and the `seq-let' macro
33768         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
33769         object is a sequence, and binds each element of ARGS to the
33770         corresponding element of the sequence.
33772 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
33774         Fix tags created from DEFVAR_* declarations in C
33775         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
33776         to make tags extracted from DEFVAR_* declarations more accurate.
33778         Add a test suite for etags
33779         * test/etags/: New test suite, adapted from
33780         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
33781         whose original author is Francesco Potortì <pot@gnu.org>.
33783         Fix tagging of symbols in C enumerations
33784         * lib-src/etags.c (consider_token): Don't tag symbols in
33785         expressions that assign values to enum constants.  See
33786         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
33787         for details.
33788         (C_entries): Reset fvdef to fvnone after processing a preprocessor
33789         conditional and after a comma outside of parentheses.
33791 2015-05-12  Glenn Morris  <rgm@gnu.org>
33793         * lisp/url/url-handlers.el (url-file-name-completion)
33794         (url-file-name-all-completions): Silence compiler.
33796         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
33798         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
33800 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
33802         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
33803         (cl--generic-mandatory-args): Remove.
33804         (cl--generic-split-args): New function.
33805         (cl-generic-define, cl--generic-lambda): Use it.
33806         (cl-generic-define-method): Use it as well, and add support for
33807         context args.
33808         (cl--generic-get-dispatcher): Handle &context dispatch.
33809         (cl--generic-cache-miss): `dispatch-arg' can now be a
33810         context expression.
33811         (cl--generic-dispatchers): Pre-fill.
33812         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
33813         New test.
33815 2015-05-11  Glenn Morris  <rgm@gnu.org>
33817         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
33819 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
33821         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
33822         * lisp/term/rxvt.el: Require term/xterm.
33823         (rxvt-function-map): Use xterm-rxvt-function-map.
33824         (rxvt-standard-colors): Move before first use.
33825         (terminal-init-rxvt): Use xterm--push-map and
33826         xterm-register-default-colors.
33827         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
33828         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
33829         Move shared bindings between rxvt and xterm to it.
33830         (xterm-function-map): Use it.  Move the xterm-paste binding to
33831         xterm-rxvt-function-map (bug#20444).
33832         (xterm-standard-colors): Move before first use.
33833         (xterm--push-map): New function.
33834         (xterm-register-default-colors): Take standard colors as argument.
33835         (terminal-init-xterm): Use it.  Adjust call to
33836         xterm-register-default-colors.
33838 2015-05-11  Glenn Morris  <rgm@gnu.org>
33840         * lisp/term/x-win.el: Quieten --without-x compilation.
33841         (x-own-selection-internal, x-disown-selection-internal)
33842         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
33843         Declare.
33845         * Makefile.in (emacslog): Remove srcdir.
33846         (ChangeLog): Update for the above.
33848 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
33850         python.el: better limit for looking-back calls
33851         * lisp/progmodes/python.el (python-shell-accept-process-output):
33852         Use last comint prompt start as limit for looking-back.
33854 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
33856         CEDET (srecode-insert-fcn): Fix use of oref on a class
33857         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
33858         on a class.  Reported by Pierre Lorenzon.
33859         (srecode-template-inserter-point): Remove declaration.
33861         CEDET (srecode-create-dictionary): Avoid obsolete object name
33862         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
33863         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
33865 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
33867         C-x 8 shorthands for curved quotes, Euro, etc.
33868         Although C-x 8 lets you insert arbitrary Unicode characters,
33869         it's awkward to use this to insert commonly used symbols such as curved
33870         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
33871         characters commonly found in English text and in basic math.
33872         For example, assuming the Alt key works on your keyboard and iso-transl
33873         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
33874         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
33875         (Bug#20499)
33876         * doc/emacs/mule.texi (Unibyte Mode):
33877         A few other printing characters now work too.
33878         * etc/NEWS: Document this.
33879         * lisp/international/iso-transl.el (iso-transl-char-map):
33880         Also support the following characters:
33881         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
33883 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
33885         Add xref-find-regexp
33886         * lisp/progmodes/xref.el (xref-find-function): Describe the
33887         `matches' action.
33888         (xref-find-regexp): New command, using it.
33889         (xref-collect-references): Rename to xref-collect-matches.
33890         (xref--collect-reference): Rename to xref--collect-match.
33891         (xref-collect-matches, xref--collect-match): Accept new argument,
33892         KIND.  Update accordingly.
33893         (xref--regexp-to-extended): New function.
33894         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
33895         `matches' action.
33896         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
33897         * lisp/progmodes/etags.el (etags-xref-find):
33898         Support the `matches' action.
33899         (etags--xref-find-matches): New function.
33901 2015-05-10  Glenn Morris  <rgm@gnu.org>
33903         * Makefile.in: Fixes for recent change-history changes.
33904         (change-history-nocommit): Update footer regexp.
33905         Ensure output script stays executable.
33907 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
33909         New version of `seq-let' based on a pcase pattern
33910         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
33911         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
33913 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
33915         Add basic HTML5 tags and a template
33916         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
33917         (html-tag-alist): Add HTML5 tags.
33918         (html-tag-help): Add new tags descriptions.
33919         (html-navigational-links): Template for nav links.
33920         (html-html5-template): Template for a HTML5 page.
33922 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
33924         semantic/symref/grep: Don't use word boundaries
33925         * lisp/cedet/semantic/symref/grep.el
33926         (semantic-symref-perform-search): Instead of wrapping input in
33927         word boundaries, check that the characters before and after are
33928         not word constituents.
33930         semantic/symref/grep: Support regexp search
33931         * lisp/cedet/semantic/symref.el
33932         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
33933         the search type is regexp.
33934         * lisp/cedet/semantic/symref/grep.el
33935         (semantic-symref-perform-search): Support the regexp search type.
33936         Pass -E to Grep when it's used.
33938         semantic-symref-regexp: Allow to input an arbitrary string
33939         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
33940         Allow to input an arbitrary string interactively.
33942         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
33943         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
33944         Remove tag-symbol-match-p from the default value
33945         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
33947         Declare find-tag obsolete
33948         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
33949         xref-find-definitions.
33951 2015-05-10  Jan D  <jan.h.d@swipnet.se>
33953         Draw composite string correctly (Bug#20537)
33954         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
33955         New function.
33956         (ns_draw_glyph_string): Call it.
33958 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
33960         Avoid infloop in ERC
33961         * lisp/simple.el (line-move-to-column): Ignore field boundaries
33962         while computing line beginning position.  (Bug#20498)
33964 2015-05-08  Glenn Morris  <rgm@gnu.org>
33966         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
33967         * build-aux/gitlog-to-emacslog: Check called from right directory.
33968         (srcprefix): Remove.
33970         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
33971         * Makefile.in (ChangeLog): No longer pass "distprefix".
33972         * make-dist: Update "make ChangeLog" syntax for the above change.
33974         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
33975         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
33977         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
33979         Add command-line option-parsing to gitlog-to-emacslog
33980         * build-aux/gitlog-to-emacslog: Add command-line options.
33981         By default, refuse to remove an existing output file.
33982         * Makefile.in (CHANGELOG): Update default.
33983         (ChangeLog): Do not test for existing file.
33984         (change-history-nocommit): Ensure temp file does not exist.
33986         Quieten --without-x compilation
33987         * lisp/term/common-win.el: Provide a feature.
33988         * lisp/term/x-win.el (term/common-win): Require it.
33990         * lisp/dired-aux.el (dired-do-print): Require lpr.
33992         Quieten compilation, eg in --without-x builds
33993         * lisp/dired-aux.el (lpr-printer-switch):
33994         * lisp/frame.el (tool-bar-height):
33995         * lisp/linum.el (font-info):
33996         * lisp/window.el (font-info, overflow-newline-into-fringe)
33997         (tool-bar-height):
33998         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
33999         * lisp/gnus/gnus-util.el (iswitchb-mode):
34000         * lisp/mail/rmailmm.el (libxml-parse-html-region):
34001         * lisp/net/nsm.el (gnutls-peer-status)
34002         (gnutls-peer-status-warning-describe):
34003         * lisp/net/shr.el (libxml-parse-xml-region):
34004         * lisp/url/url-http.el (gnutls-peer-status): Declare.
34006 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
34008         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
34009         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
34010         `subclass' since they're never called with a class.
34011         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
34012         srecode-dictionary-child-p.
34014 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
34016         * lisp/help.el (help--binding-locus): Document argument POSITION.
34017         (Bug#20530)
34019 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
34021         Merge from gnulib
34022         * doc/misc/texinfo.tex: Get latest version.
34024 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
34026         ffap.el (ffap-read-file-or-url): Fix completing-read call
34027         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
34028         `completing-read' should be a symbol.
34030 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
34032         Verify file modifications by other programs
34033         * src/filelock.c (lock_file): Check whether the file was modified
34034         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
34036         Fix keyboard macros that include function keys
34037         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
34038         keys in the macro before returning.  (Bug#20454)
34040 2015-05-08  Glenn Morris  <rgm@gnu.org>
34042         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
34043         "Copyright-paperwork-exempt".  (Bug#20324)
34045         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
34046         (log-edit-rewrite-tiny-change): New variable.
34047         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
34048         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
34049         * etc/NEWS: Mention this.
34051         * lisp/calc/calc.el (math-zerop): Declare.
34053         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
34055 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
34057         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
34058         Support the case when BINDINGS is a single tuple.  (Bug#20525)
34060         * etc/NEWS: Fix typo in previous commit
34061         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
34063 2015-05-07  Jan D  <jan.h.d@swipnet.se>
34065         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
34066         Output URL to Gtk+ bug (Bug#20452).
34068         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
34070 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
34072         * lisp/emacs-lisp/package.el: New "external" package status.
34073         An external package is any installed package that's not built-in
34074         and not from `package-user-dir', which usually means it's from an
34075         entry in `package-directory-list'.  They are treated much like
34076         built-in packages, in that they cannot be through the Package Menu
34077         deleted and are not considered for upgrades.
34078         (package-desc-status): Identify if a package is installed outside
34079         `package-user-dir'.
34080         (package-menu--print-info-simple)
34081         (package-menu--status-predicate): Add support for it.
34082         * etc/NEWS: Document it.
34084 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
34086         * lisp/mail/rmail.el: Use lexical-binding.
34087         (rmail-bury): Remove unused var `buffer-to-bury'.
34088         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
34089         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
34090         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
34091         (rmail-insert-inbox-text): Remove unused var `movemail'.
34092         (rmail-add-mbox-headers): Remove unused var `limit'.
34093         (rmail-undelete-previous-message): Remove unused var `value'.
34094         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
34095         `resent-reply-to'.
34096         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
34097         (rmail-restore-desktop-buffer): Rename arguments.
34099 2015-05-06  Glenn Morris  <rgm@gnu.org>
34101         * Makefile.in (change-history-commit): Add missing piece of previous.
34103         Avoid unnecessary bumping of Makefile.in's timestamp
34104         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
34105         (emacslog): New variable.
34106         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
34107         (unchanged-history-files): Use $emacslog rather than Makefile.in.
34108         (change-history-nocommit): Store hash in $emacslog.
34109         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
34110         * admin/update_autogen (changelog_files): Update for the above.
34112         * Makefile.in: Don't always insist on removing existing "ChangeLog".
34113         (CHANGELOG): New variable.
34114         (no-ChangeLog): Remove.
34115         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
34116         (change-history-nocommit): Use a temp file rather than insisting
34117         on deletion of any existing "ChangeLog".
34119         * build-aux/gitlog-to-emacslog: Allow specification of output.
34121         * admin/update_autogen: Add option to update ChangeLog.
34122         (usage): Mention -H.
34123         (changelog_flag, changelog_n, changelog_files): New variables.
34124         (main): Check for -H, and maybe run change-history-nocommit.
34126 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
34128         * lisp/subr.el (delete-dups): Pre-size the hashtable.
34130         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
34131         cl--arglist-args is defined (bug#20517).
34133 2015-05-06  Glenn Morris  <rgm@gnu.org>
34135         * Makefile.in (change-history-nocommit): New.
34137 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
34139         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
34140         timer when it is non-nil
34141         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
34143 2015-05-06  Glenn Morris  <rgm@gnu.org>
34145         Quieten CEDET compilation
34146         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
34147         Invert fboundp test to quieten on current Emacs.
34148         * lisp/cedet/ede/config.el (ede-shell-run-something)
34149         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
34150         (semanticdb-refresh-table): Declare.
34151         (ede-preprocessor-map): Require semantic/db.
34153         Quieten cc-mode compilation
34154         * lisp/progmodes/cc-awk.el (c-forward-sws):
34155         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
34156         Declare.
34158 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
34160         * lisp/subr.el (delete-dups): Avoid nreverse.
34162 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
34164         * lisp/subr.el (delete-dups): Make it destructive again.
34166 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
34168         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
34170 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
34172         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
34173         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
34174         (testcover--read): Rename from testcover-read.  Change calling
34175         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
34176         is gone.
34177         (testcover-start): Use add-function.  Move edebug-all-defs binding to
34178         testcover--read.
34179         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
34180         (testcover-mark): Remove unused var `item'.
34181         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
34183 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
34185         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
34186           use a hash table.  This can result in ~500 times speed-up for typical
34187           collections of size 5000, like that of `load-library'.
34189 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
34191         CEDET: Avoid `oref' on classes in a few more cases
34192         * lisp/cedet/ede/generic.el (ede-find-target):
34193         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
34194         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
34195         var `prefix'.
34197         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
34198         (grepflags, greppattern): Declare.
34199         (semantic-symref-perform-search): Remove unused var `pat'.
34201         CEDET (srecode-compile-inserter): Avoid `oref' on classes
34202         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
34203         Avoid `oref' on classes (bug#20491).
34204         (srecode-compile-split-code): Remove unused var `key'.
34206 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
34208         Clean up pulse.el a little
34209         * lisp/cedet/pulse.el (pulse): Remove.
34210         (pulse-momentary-timer): Save instead of the stop time.
34211         (pulse-momentary-highlight-overlay):
34212         Call pulse-momentary-unhighlight first thing.
34213         Treat pulse-momentary-overlay as a single value, not a list.
34214         Save the created timer.  Only pass the stop time to the timer.
34215         (pulse-tick): Update accordingly.
34216         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
34217         single value.  Cancel the timer.
34219 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
34221         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
34222         Support the biblatex journaltitle field.
34224 2015-05-05  Glenn Morris  <rgm@gnu.org>
34226         Minor declare-function improvement
34227         * lisp/emacs-lisp/bytecomp.el
34228         (byte-compile-macroexpand-declare-function):
34229         Handle declarations after calls.  (Bug#20509)
34231         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
34233         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
34235 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
34237         Pulse using a timer
34238         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
34239         (pulse-momentary-highlight-overlay): Set up the timer instead of
34240         calling `pulse'
34241         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
34242         (pulse-tick): New function.
34243         (pulse-momentary-unhighlight): Cut off the stop time.
34244         (pulse-delay): Update the docstring WRT to not using sit-for.
34246         Add semantic/symref/grep file patterns for ruby-mode
34247         * lisp/cedet/semantic/symref/grep.el
34248         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
34249         Clarify the docstring.
34251         Don't require match
34252         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
34253         match.  That doesn't work for every command, and some identifier
34254         completion tables are bound to be imperfect anyway.
34256 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
34258         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
34259         (semantic-grammar--template-expand): New function.
34260         (semantic-grammar-header, semantic-grammar-footer): Use it.
34261         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
34262         (semantic-grammar-file-regexp): Refine regexp.
34263         (semantic-grammar-eldoc-get-macro-docstring):
34264         Use elisp-get-fnsym-args-string when available.
34265         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
34266         instead of the old eldoc-* names.
34267         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
34268         from elisp-mode.el.  Tweak calling convention.
34269         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
34270         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
34271         elisp--get-fnsym-args-string.
34272         (elisp--highlight-function-argument): Add `prefix' arg.
34273         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
34274         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
34276 2015-05-05  Glenn Morris  <rgm@gnu.org>
34278         * lisp/help-fns.el (describe-function-1):
34279         Handle builtins with advertised calling conventions.  (Bug#20479)
34281 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
34283         Merge branch 'seq-let'
34285         Update `seq-let' documentation
34286         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
34287         with the support of  `&rest'.
34289         Add support for &rest in `seq-let'
34290         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
34291         in the argument list.
34292         * test/automated/seq-tests.el: Add a test for parsing and binding
34293         `&rest' in `seq-let'.
34295 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
34297         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
34298         Add missing increment (Bug#20467).
34299         (eieio-object-value-create): Adjust to new slots representation
34300         (Bug#20467).
34301         (eieio-object-value-create): Fix missed adjustment to new
34302         representation of slots metadata.
34304 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
34306         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
34308 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
34310         Work around "Attempt to modify read-only object"
34311         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
34312         elisp--xref-find-definitions, to work around "Attempt to modify
34313         read-only object" error.
34315         Only skip some variables that have function counterparts
34316         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
34317         Only skip minor-mode-named variable if it's defined in a Lisp
34318         file, and it's in minor-mode-list (bug#20506).
34319         * test/automated/elisp-mode-tests.el
34320         (elisp-xref-finds-both-function-and-variable)
34321         (elisp-xref-finds-only-function-for-minor-mode): New tests.
34323 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
34325         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
34326         previous change.
34327         (xref--insert-xrefs): Buttonize the whole line, including the
34328         number at the beginning.
34330         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
34331         Make sure we're inside the let bindings.
34332         * test/automated/elisp-mode-tests.el
34333         (elisp-completes-functions-after-let-bindings): New test.
34335 2015-05-04  Glenn Morris  <rgm@gnu.org>
34337         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
34338         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
34339         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
34340         Remove outdated declarations.
34342         Replace instances of "(eval-when-compile (autoload ...))"
34343         * lisp/gnus/gnus-art.el (nneething-get-file-name):
34344         Declare rather than autoload.
34345         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
34346         Remove pointless autoload.
34347         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
34348         (gnus-topic-create-topic, gnus-topic-enter-dribble):
34349         Declare rather than autoload.
34350         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
34351         (mailcap-extension-to-mime): Autoload at run-time.
34352         * lisp/gnus/mm-util.el (latin-unity-massage-name)
34353         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
34354         (latin-unity-representations-present-region):
34355         Declare rather than autoload.
34356         * lisp/gnus/mml-smime.el (epg-make-context)
34357         (epg-passphrase-callback-function): Autoload at run-time.
34358         (epg-context-set-signers, epg-context-result-for)
34359         (epg-new-signature-digest-algorithm)
34360         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
34361         (epg-sign-string, epg-encrypt-string)
34362         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
34363         (epg-configuration, epg-expand-group, epa-select-keys):
34364         Declare rather than autoload.
34365         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
34366         Autoload at run-time.
34367         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
34368         (gnus-registry-get-id-key, gnus-registry-action):
34369         Declare rather than autoload.
34370         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
34371         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
34372         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
34373         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
34374         (spam-stat-split-fancy): Remove pointless autoloads.
34375         * lisp/net/mairix.el: Load gnus-util when compiling.
34376         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
34377         (message-field-value): Declare rather than autoload.
34378         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
34379         Check gnus-alive-p is fbound.
34380         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
34381         (vm-check-for-killed-summary, vm-error-if-folder-empty)
34382         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
34383         Declare rather than autoload.
34385         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
34387         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
34388         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
34390         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
34392         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
34394         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
34395         * lisp/emacs-lisp/package.el (epg-signature-status):
34396         Fix declarations.
34398         * lisp/play/gametree.el (gametree-show-children-and-entry)
34399         (gametree-apply-layout, gametree-mouse-show-subtree)
34400         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
34402         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
34403         Handle cl-defgeneric, cl-defmethod.
34405 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
34407         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
34408         Highlight both type and symbol name.
34410         Insert, highlight and align line numbers in xref output
34411         * lisp/progmodes/etags.el (xref-location-line): Specialize for
34412         xref-etags-location.
34413         * lisp/progmodes/xref.el (xref-location-line): New generic method.
34414         (xref-file-location): Add reader for the line slot.
34415         (xref--location-at-point): Skip to the `xref-location' property.
34416         (xref--collect-reference): Drop the line number from description.
34417         (xref--insert-xrefs): Insert, highlight and align line numbers.
34419 2015-05-04  Daniel Colascione  <dancol@dancol.org>
34421         * lisp/simple.el (save-mark-and-excursion--save)
34422         (save-mark-and-excursion--restore): Fix previous commit
34423         (255a011f0ecf004b31c59945b10154b10fac3af1).
34425 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
34427         Don't pulse the indentation, or the newline
34428         * lisp/cedet/pulse.el (pulse-lighten-highlight)
34429         (pulse-reset-face): Fall back to the inherited background
34430         attribute in FACE.
34431         (pulse-momentary-highlight-region): Add autoload cookie.
34432         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
34433         indentation, or the newline, if the line's non-empty
34434         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
34436 2015-05-04  Daniel Colascione  <dancol@dancol.org>
34438         Add `save-mark-and-excursion', which has the old
34439         `save-excursion' behavior
34440         * doc/lispref/positions.texi (Excursions):
34441         Document `save-mark-and-excursion'.
34442         * lisp/font-lock.el (font-lock-fontify-block):
34443         Use `save-mark-and-excursion' instead of `save-excursion',
34444         restoring Emacs 24 behavior.
34445         * lisp/simple.el (save-mark-and-excursion--save)
34446         (save-mark-and-excursion--restore): New functions.
34447         (save-mark-and-excursion): New user macro.
34448         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
34449         in `save-excursion' documentation.
34451 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
34453         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
34454         Classify lone symbol inside let varlist as variable.
34455         * test/automated/elisp-mode-tests.el
34456         (completest-variables-in-let-bindings): New test.
34458         Add xref-pulse-on-jump
34459         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
34460         Add autoload cookie.
34461         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
34462         (xref--maybe-pulse): New function.
34463         (xref-pop-marker-stack, xref--pop-to-location)
34464         (xref--display-position): Use it.
34465         (xref--location-at-point): Use back-to-indentation.
34467 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
34469         lisp/org/org-{macs,list}.el: Fix lexical warnings
34470         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
34471         (org-list-get-next-item, org-list-get-prev-item)
34472         (org-list-get-children): Mark unused arg `struct'.
34473         (org-list-use-alpha-bul-p): Remove unused var `bul'.
34474         (org-toggle-checkbox): Mark unused var.
34475         (org-update-checkbox-count): Remove unused var `box-num'.
34476         (org-adapt-indentation): Declare.
34477         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
34478         (org-list-send-list): Remove unused var `txt'.
34479         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
34480         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
34481         * lisp/org/org-macs.el: Use `declare'.
34482         (org-with-limited-levels): Declare dyn-bound vars.
34484 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
34486         Fix minor issues with CEDET on MS-Windows
34487         * lisp/cedet/semantic/symref/idutils.el
34488         (semantic-symref-parse-tool-output-one-line): Fix the search
34489         regexp to match MS-Windows file names with drive letters.
34490         (Bug#19468)
34491         * lisp/cedet/semantic/symref/grep.el
34492         (semantic-symref-grep-use-template): Remove "--color=always" from
34493         Grep switches on MS-Windows.
34494         (semantic-symref-grep-shell): Use shell-file-name as the default
34495         value, so this works not only on Posix platforms.
34496         (semantic-symref-perform-search): Use shell-quote-argument instead
34497         of literal '..' for portable quoting of Grep command-line
34498         argument.  Use shell-command-switch instead of a literal "-c".
34499         * lisp/cedet/semantic/bovine/gcc.el
34500         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
34501         for an absolute file name in a portable way.
34503 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
34505         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
34506         (package-import-keyring, package-refresh-contents)
34507         (package-compute-transaction, package--save-selected-packages)
34508         (package-install-from-archive, package-delete)
34509         (package-menu--perform-transaction): Use `inhibit-message' instead.
34510         (package--compile): Set `warning-minimum-level' to :error.
34512 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
34514         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
34515         (terminal-init-screen): Use it (bug#20356).
34516         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
34517         (xterm--extra-capabilities-type): New const.
34518         (xterm-extra-capabilities): Use it.
34519         (xterm--version-handler): Lower the pseudo-version for `screen'.
34521 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
34523         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
34524         Always insert a newline at the end (to avoid mouse-face background
34525         tail at the last line).
34527         elisp-completion-at-point: Prioritize being quoted over funpos
34528         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
34529         Only consider function position when not inside quoted form
34530         (bug#20425).
34531         * test/automated/elisp-mode-tests.el: New file.
34533         Stop vc-print-log from jumping to the top
34534         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
34535         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
34536         is not specified.
34537         (vc-incoming-outgoing-internal): Always pass nil.
34538         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
34539         call it, and don't set vc-sentinel-movepoint (bug#15322).
34540         (vc-print-root-log): Don't fetch the root working revision, nor
34541         pass it to vc-print-log-internal.
34543 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
34545         Fix display of keyboard layouts for right-to-left scripts
34546         * lisp/international/quail.el (quail-insert-kbd-layout):
34547         Force left-to-right paragraph direction.
34549 2015-05-02  K. Handa  <handa@gnu.org>
34551         * src/cmds.c (internal_self_insert): When we insert spaces for
34552         padding, set point before the padding spaces, not after them.
34554 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
34556         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
34558 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
34560         Fix etags-xref-find for references
34561         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
34562         Use `cl-mapcan'.
34563         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
34564         directory if no tags tables are loaded (bug#19468).
34566 2015-05-02  Philipp Stephani  <phst@google.com>
34568         Update the options in whitespace-style defcustom
34569         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
34570         `repeat' because the option is really set-like.  Add missing
34571         options.  Reorder options to match the order in the
34572         documentation.  (Bug#20346)
34574 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
34576         Fix error diagnostics of c-macro-expand
34577         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
34578         too early if no start-marker string was found -- that generally
34579         means cpp exited abnormally, and we still want to show its error
34580         messages to the user.
34582         Don't require Texinfo 5.0 for Emacs documentation
34583         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
34584         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
34585         "@codequoteundirected on", respectively, to avoid requiring
34586         Texinfo 5.x for Emacs documentation.
34588 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
34590         * lisp/files.el (pwd):
34591         When called with a prefix argument, insert the current default
34592         directory at point.
34594 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
34596         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
34597         * lisp/isearch.el (isearch-mode-map): Don't inhibit
34598         function-key-map remapping for backspace (bug#20466).
34600 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
34602         Implement xref-find-references in etags and elisp-mode
34603         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
34604         (elisp-xref-find): Use it.
34605         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
34606         * lisp/progmodes/xref.el (xref-collect-references):
34607         (xref--collect-reference): New functions.
34609 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
34611         Prefer plain characters to Texinfo circumlocutions
34612         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
34613         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
34615         Fix single-quoting style in PDF manuals
34616         The PDF versions of the GNU manuals used curved single quotes to
34617         represent grave accent and apostrophe, which made it a pain to cut
34618         and paste code examples from them.  Fix the PDF versions to use
34619         grave accent and apostrophe for Lisp source code, keystrokes, etc.
34620         This change does not affect the info files, nor does it affect
34621         ordinary uses of curved single quotes in PDF.
34622         * doc/emacs/docstyle.texi: New file, which specifies treatment for
34623         grave accent and apostrophe, as well as the document encoding.
34624         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
34625         * doc/lispintro/emacs-lisp-intro.texi:
34626         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
34627         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
34628         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
34629         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
34630         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
34631         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
34632         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
34633         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
34634         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
34635         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
34636         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
34637         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
34638         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
34639         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
34640         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
34641         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
34642         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
34643         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
34644         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
34645         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
34646         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
34647         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
34648         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
34649         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
34650         * doc/misc/woman.texi:
34651         Use it instead of '@documentencoding UTF-8', to lessen the need for
34652         global changes like this in the future.
34653         * doc/emacs/Makefile.in (EMACS_XTRA):
34654         * doc/lispintro/Makefile.in (srcs):
34655         * doc/lispref/Makefile.in (srcs):
34656         Add dependency on docstyle.texi.
34657         * doc/misc/Makefile.in (style): New macro.
34658         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
34659         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
34660         Use it.
34662 2015-05-01  Glenn Morris  <rgm@gnu.org>
34664         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
34666         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
34667         (help-fns--signature): Declare.
34669         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
34671 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
34673         New macro seq-let, providing destructuring support to seq.el
34674         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
34675         to `cl-destructuring-bind' but works on all sequence types supported
34676         by `seq.el'.  Bump version number to 1.6.
34677         * test/automated/seq-tests.el: Add tests for seq-let.
34678         * doc/lispref/sequences.texi: Add documentation for seq-let.
34680 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
34682         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
34684 2015-05-01  Glenn Morris  <rgm@gnu.org>
34686         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
34688 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
34690         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
34691         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
34692         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
34693         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
34694         (Bug#20445).
34696 2015-05-01  K. Handa  <handa@gnu.org>
34698         * lisp/international/mule-cmds.el (input-method-use-echo-area):
34699         Change :type to 'boolean.
34701 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
34703         Start using proportional fonts in eww by default
34704         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
34705         it seems to work well.
34707         Fix links in tables in shr
34708         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
34709         makes (some) links in tables not work.
34711 2015-05-01  Jan D  <jan.h.d@swipnet.se>
34713         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
34715 2015-04-30  Glenn Morris  <rgm@gnu.org>
34717         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
34718         Update for 2015-02-08 change to indirect-function.
34720         * lisp/term/ns-win.el (ns-get-selection-internal):
34721         Remove declaration for function deleted 2014-10-21.
34723         * lisp/dom.el: Load subr-x when compiling, for when-let.
34725         Silence some compilation warnings
34726         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
34727         * lisp/emulation/cua-base.el (delete-active-region):
34728         * lisp/net/net-utils.el (w32-get-console-output-codepage):
34729         * lisp/term/ns-win.el (ns-own-selection-internal)
34730         (ns-disown-selection-internal, ns-selection-owner-p)
34731         (ns-selection-exists-p, ns-get-selection):
34732         Declare for compiler.
34734         Function declaration updates prompted by 'make check-declare'
34735         * lisp/emacs-lisp/package.el (lm-homepage):
34736         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
34737         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
34738         * lisp/gnus/mml.el (libxml-parse-html-region):
34739         * lisp/gnus/nnrss.el (libxml-parse-html-region):
34740         * lisp/net/eww.el (libxml-parse-html-region):
34741         * lisp/net/shr.el (libxml-parse-html-region):
34742         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
34743         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
34744         * lisp/vc/vc-git.el (vc-annotate-convert-time):
34745         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
34746         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
34747         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
34748         Update declaration.
34750         Remove compatibility code for 20-year old function renaming
34751         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
34752         Make it an obsolete alias.
34753         (idlwave-shell-filter): Change all uses to comint-output-filter.
34755 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
34757         Add ace-window face config
34758         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
34759         configuration.
34761 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
34763         Unclutter 'make doc' output a bit
34764         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
34765         Use make subst rather than sh IFS to split target string apart.
34766         This makes 'make' output easier to follow.
34768         Merge from gnulib
34769         * doc/misc/texinfo.tex: Update from gnulib.
34771 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
34773         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
34774         (package-menu--print-info): Obsolete.
34775         (package-menu--print-info-simple): New function.
34776         (package-menu--refresh): Use it, simplify code, and improve
34777         performance.
34778         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
34779         Tiny performance improvement.
34781         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
34783 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
34785         Omit -Wstrict-overflow workaround in GCC 5
34786         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
34787         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
34789         Merge from gnulib
34790         This incorporates:
34791         2015-04-29 extern-inline: no need for workaround in GCC 5.1
34792         2015-04-26 file-has-acl: port to CentOS 6
34793         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
34795 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
34797         Set next-error-* in xref--xref-buffer-mode
34798         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
34799         Set `next-error-function' and `next-error-last-buffer'.
34800         (xref--next-error-function): New function.
34801         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
34803 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
34805         python.el: Fix warnings on looking-back calls missing LIMIT
34806         * lisp/progmodes/python.el (python-shell-accept-process-output):
34807         Pass LIMIT arg to looking-back.
34809 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
34811         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
34812         (package--download-and-read-archives): Use pushnew instead of
34813         append.  If something terrible happened during a previous
34814         download, simply refreshing should now make things work again.
34816 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
34818         Introduce etags-xref-find-definitions-tag-order
34819         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
34820         New variable.
34821         (etags--xref-find-definitions): Use it (bug#19468).
34823 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
34825         PATH- and completion-related fixes in Eshell on MS-Windows
34826         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
34827         MS-Windows, prepend "." to list of directories produced from PATH,
34828         as Windows always implicitly searches the current directory first.
34829         (eshell-force-execution): Make it have a non-nil default value on
34830         MS-Windows and MS-DOS.
34831         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
34832         eshell-force-execution is non-nil, complete on readable files and
34833         directories, not only executables.  When running on MS-Windows,
34834         prepend "." to list of directories produced from PATH, as Windows
34835         always implicitly searches the current directory first.
34837 2015-04-29  Sam Steingold  <sds@gnu.org>
34839         Bury RCIRC buffers when there is no activity
34840         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
34841         (rcirc-bury-buffers): New function.
34842         (rcirc-next-active-buffer): When there is no new activity, use
34843         `rcirc-bury-buffers' to hide all RCIRC buffers.
34845 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
34847         Fix DBUS query result parsing for secrets-search-items
34848         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
34849         parsing.  The function assumed that return value of the
34850         SearchItems method called on a collection is a list of two lists,
34851         however this is true only when no collection is specified.  GNOME
34852         had used to incorrectly return a list of two lists in both cases,
34853         but this was already fixed:
34854         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
34855         incorrect information in the secrets-search-items’ docstring.
34856         (Bug#20449)
34858 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
34860         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
34861         Use `inhibit-message' instead of hiding the previous message
34862         with (message nil).
34864 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
34866         Remove the deprecated INTERNAL_FIELD macro by expanding it
34867         * src/lisp.h (INTERNAL_FIELD): Remove.
34868         (DEFVAR_KBOARD): Modify accordingly.
34869         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
34870         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
34871         * src/buffer.c (compact_buffer): Use BVAR.
34873 2015-04-29  Glenn Morris  <rgm@gnu.org>
34875         Replace an obsolete function alias
34876         * lisp/isearch.el (isearch-yank-x-selection):
34877         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
34878         (mouse-drag-secondary-moving):
34879         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
34880         Replace obsolete alias x-get-selection with gui-get-selection.
34882 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
34884         * lisp/mail/rmailsum.el: Use lexical-binding.
34886 2015-04-29  Glenn Morris  <rgm@gnu.org>
34888         * test/automated/package-test.el (package-test-update-archives-async):
34889         Skip test on hydra.nixos.org.
34891 2015-04-28  Glenn Morris  <rgm@gnu.org>
34893         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
34894         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
34895         (foldout-mouse-hide-or-exit): Use new names for outline functions.
34897         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
34898         Update for 2014-06-26 hideif.el change.
34900         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
34901         (rmail--decode-and-apply): New function.
34902         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
34904         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
34906 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
34908         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
34909         (package-menu--refresh): Delegate obsolete-hiding to
34910         `package--remove-hidden'.
34911         (package--remove-hidden): Disregard high-priority package if it is
34912         older than the installed one.
34914 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
34916         Update source file encoding list
34917         Update admin/notes/unicode, along with coding system cookies in
34918         other files, so that the two match each other better.
34919         * admin/notes/unicode: lisp/language/ethio-util.el and
34920         lisp/language/ethiopic.el also use utf-8-emacs.
34921         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
34922         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
34923         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
34924         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
34925         * etc/refcards/sk-survival.tex:
34926         Add "coding: utf-8" so that this file is not mishandled in a
34927         Latin-1 or Big-5 locale.
34928         * lisp/international/robin.el, lisp/org/ox-ascii.el:
34929         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
34930         * lisp/language/ethio-util.el: Fix trailer.
34932 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
34934         Fix synchronous invocation of Ispell
34935         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
34936         value to ispell-process-directory before calling ispell-init-process.
34937         Don't call set-process-coding-system if ispell-async-processp is nil.
34938         (Bug#20448)
34940 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
34942         * lisp/emacs-lisp/package.el: Skip space and comments in init file
34943         (package--ensure-init-file): Insert snippet at first
34944         non-whitespace non-comments line.  Respects local-vars at the top
34945         of the file.
34947 2015-04-28  Glenn Morris  <rgm@gnu.org>
34949         * lisp/mail/rmail.el (rmail-copy-headers):
34950         Handle rmail-nonignored-headers being nil.  (Bug#18878)
34952         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
34954         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
34955         Don't get confused by a bzrlib version mismatch warning.
34957 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
34959         Change default location of EUDC options file
34960         * etc/NEWS: Document change to EUDC options file's default location.
34961         * lisp/net/eudc-vars.el (eudc-options-file): Use
34962         `locate-user-emacs-file' to change default options file location.
34964 2015-04-27  Glenn Morris  <rgm@gnu.org>
34966         * test/automated/package-test.el (package-test-update-archives-async):
34967         Try to handle the test server script dying.
34969 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
34971         * lisp/saveplace.el (save-place-mode): New minor mode.
34972         (save-place): Redefine as an obsolete alias.
34974         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
34975         * lisp/midnight.el: Use lexical-binding.
34976         (midnight-mode): Make it a proper minor mode.
34977         (midnight-buffer-display-time): Make arg non-optional.
34978         (midnight-find): Remove.
34979         (clean-buffer-list-kill-never-regexps)
34980         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
34981         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
34982         contain functions.
34983         (clean-buffer-list): Use cl-find.
34984         Allow clean-buffer-list-kill-never-regexps to contain functions.
34986 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
34988         Bump version of seq.el to 1.5
34989         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
34990         from seq-doseq.  Bump version number of seq.el.
34992 2015-04-27  Glenn Morris  <rgm@gnu.org>
34994         * lisp/mail/rmail.el (rmail-reply):
34995         Decode subject before matching "Re:" prefix.  (Bug#20396)
34997 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
34999         * lisp/emacs-lisp/package.el: Small improvements
35000         (package--with-work-buffer-async): More informative error.
35001         (package-install-user-selected-packages): Rename to
35002         `package-install-selected-packages'.
35004 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
35006         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
35007         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
35008         (eieio--class-make): Remove leftover `tag'.
35010 2015-04-27  Glenn Morris  <rgm@gnu.org>
35012         * lisp/gnus/message.el (gnus-extract-address-components):
35013         Remove bogus declaration that was masking previous problem.
35015 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
35017         * lisp/gnus/message.el (message-insert-formatted-citation-line):
35018         Fix typo.  (Bug#20318)
35020 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
35022         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
35024         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
35025         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
35026         the buffer in yet another frame.
35027         (reftex-toc-visit-location): Make sure toc-window has focus at the end
35028         when `final' is nil.
35029         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
35030         silence warnings.  Use `--' to clarify that it's internal.
35031         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
35032         (reftex-toc-promote): Clarify unused argument.
35033         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
35034         Add `reftex--' prefix.  Fix all users.
35035         (reftex-toc-promote-prepare): Use _ for dummy variable.
35036         (reftex-toc-restore-region): Rename `m.
35038 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
35040         Fix a typo in bibtex.el
35041         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
35042         last change.  (Bug#20429)
35044         Fix redisplay of frame after loading new fonts
35045         * src/xdisp.c (redisplay_internal): When retrying redisplay of
35046         a frame because new fonts were loaded, disable all redisplay
35047         optimizations on that frame by calling SET_FRAME_GARBAGED.
35048         (Bug#20410)
35050 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
35052         * lisp/info.el (Info-menu): Properly provide the `default'
35053         (Bug#20391)
35055         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
35056         Catch errors from documentation (bug#20418).
35057         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
35059 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
35061         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
35062         Remove redundant ":group 'package".
35064 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
35066         Fix a typo in rmail.el
35067         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
35068         last commit.  (Bug#20429)
35070 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
35072         Introduce xref-prompt-for-identifier
35073         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
35074         (xref--read-identifier): Use it
35075         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
35077 2015-04-26  João Távora  <joaotavora@gmail.com>
35079         `tex-insert-quote' after single `'' opens quotes instead of closing
35080         Without this, it's very hard to precede double quotes with the
35081         apostrophe character, i.e. insert the sequence '``
35082         (quote-backquote-backquote), commonly useful in portuguese, for
35083         instance.
35084         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
35085         preceding chars making `tex-insert-quote' be in the "opening" context.
35087 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
35089         Pass `id' to `completing-read' as def instead of initial input
35090         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
35091         `completing-read' as the default value instead of initial input
35092         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
35094 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
35096         Don't freeze with unreadable processes
35097         Don't freeze if an exiting process can't be read from.  (Bug#19860).
35098         This fixes a bug I introduced in
35099         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
35100         "* process.c: Add sanity checks for file descriptors."
35101         Dmitry Gutov did most of the legwork in finding the problem.
35102         * src/process.c (wait_reading_process_output):
35103         Treat non-running processes that can't be read from
35104         the same as other non-running processes.
35106 2015-04-25  Alan Mackenzie  <acm@muc.de>
35108         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
35109         * lisp/subr.el (remove-yank-excluded-properties): Put
35110         `with-silent-modifications' around only the last three lines of code.
35112 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
35114         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
35115         (package--all-keywords): Deleted variable.
35117         * etc/NEWS: Document package-hiding functionality.
35119 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
35121         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
35123         Clarify the doc string of 'replace-regexp-in-string'
35124         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
35126         Improve doc string of 'insert-buffer-substring'
35127         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
35129         MS-Windows followup for the recent gnulib update
35130         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
35131         acl-internal.c.
35133 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
35135         Spelling fixes
35137         Merge from gnulib
35138         This incorporates:
35139         2015-04-24 file-has-acl: new module, split from acl
35140         2015-04-24 manywarnings: add GCC 5.1 warnings
35141         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
35142         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
35143         2015-04-15 acl: On Linux, check for acls without libacl
35144         2015-04-14 tempname: avoid unused parameter warnings (trivial)
35145         * lib/acl-internal.c: New file, from gnulib.
35146         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
35147         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
35148         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
35149         Update from gnulib.
35151         Port --enable-gcc-warnings to GCC 5.1 x86-64
35152         * lib-src/ebrowse.c (dump_sym):
35153         * lib-src/hexl.c (main):
35154         * src/ccl.c (ccl_driver):
35155         * src/character.c (string_escape_byte8):
35156         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
35157         * src/gnutls.c (Fgnutls_boot):
35158         * src/gtkutil.c (xg_check_special_colors):
35159         * src/image.c (x_build_heuristic_mask):
35160         * src/print.c (safe_debug_print, print_object):
35161         * src/term.c (produce_glyphless_glyph):
35162         * src/xdisp.c (get_next_display_element)
35163         (produce_glyphless_glyph):
35164         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
35165         Don't use a signed format to print an unsigned integer, or vice
35166         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
35167         * src/image.c (png_load_body, jpeg_load_body):
35168         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
35170 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
35172         Add new faces to tsdh-light-theme
35173         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
35174         definitions for Info-quoted, ace-jump-face-foreground,
35175         hl-paren-face, show-paren-match, and show-paren-mismatch.
35177 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
35179         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
35181 2015-04-24  Glenn Morris  <rgm@gnu.org>
35183         * build-aux/gitlog-to-emacslog:
35184         Use raw log format rather than wrapped one.
35186 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
35188         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
35189         (seq-doseq): Fix out-of-scope binding.
35190         Don't call `seq-length at every iteration.
35191         Reduce `if's from 3 to 2 per iteration.
35192         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
35194 2015-04-24  Glenn Morris  <rgm@gnu.org>
35196         * lisp/textmodes/text-mode.el (text-mode-hook):
35197         Move text-mode-hook-identify to default.
35199         * lisp/mouse.el (minor-mode-menu-from-indicator):
35200         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
35202         * lisp/help-fns.el (describe-function): More type checking.
35203         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
35205         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
35206         (Bug#20325)
35208 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
35210         shr: strip leading whitespace when expanding URLs
35211         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
35213 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
35215         Clarify "co-authored" some more
35217         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
35219         Clarify doc strings of functions that search for properties
35220         * src/textprop.c (Fnext_char_property_change)
35221         (Fprevious_char_property_change)
35222         (Fnext_single_char_property_change)
35223         (Fprevious_single_char_property_change, Fnext_property_change)
35224         (Fnext_single_property_change, Fprevious_property_change)
35225         (Fprevious_single_property_change): Clarify doc strings wrt return
35226         value and the optional LIMIT argument.  (Bug#20411)
35228 2015-04-24  Glenn Morris  <rgm@gnu.org>
35230         * test/automated/message-mode-tests.el (message-mode-propertize):
35231         Handle non-writable HOME; eg on hydra.nixos.org.
35233 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
35235         Avoid starting threads by w32-shell-execute
35236         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
35237         local file names, before invoking ShellExecute.  (Bug#20220)
35239 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
35241         Fix following doc-links in `widget-documentation-link-action'
35242         * lisp/wid-edit.el (widget-documentation-link-action): Make
35243         following doc-links less simplistic (Bug#20398).
35245 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
35247         Improve EUDC manual
35248         * doc/misc/eudc.texi (Troubleshooting):
35249         New LDAP troubleshooting subsection.
35251 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
35253         Omit needless "\ " after multibyte then newline
35254         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
35255         (print_object): When print-escape-multibyte is non-nil and a
35256         multibyte character is followed by a newline or formfeed, followed
35257         by a hex digit, don't output a needless "\ " before the hex digit.
35258         * test/automated/print-tests.el (print-hex-backslash): New test.
35260 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
35262         Add a new `inhibit-message' variable
35263         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
35264         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
35265         `inhibit_message' is non-zero.
35266         * etc/NEWS: Add an entry.
35267         * doc/lispref/display.texi: Add an entry for `inhibit-message',
35268         mention it in `message'.
35270 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
35272         Fix last fix in `display-buffer-record-window'.
35273         * lisp/window.el (display-buffer-record-window): Fix last fix.
35275 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
35277         Minor edits in CONTRIBUTE
35278         * CONTRIBUTE: Rearrange instructions about log messages.
35279         Use "Git" capitalized all over.
35280         Use 2 spaces between sentences.
35282 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
35284         * lisp/files.el (basic-save-buffer): Fix argument.
35286         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
35287         In case `(and (null custom-file) init-file-had-error)' do the same
35288         thing we'd do if `(null user-init-file)', which is to either error out
35289         or return nil.  This is in line with `custom-save-all' which would
35290         throw an error in that situation.  (Bug#20355)
35292         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
35293         (package-menu-hide-low-priority): New variable, see its doc.
35294         (package-archive-priorities): Update doc.
35295         (package-desc-priority): New function.
35296         (package-desc-priority-version): Use it.
35297         (package--remove-hidden): New function.
35298         (package-menu--refresh): Use it.
35300         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
35301         (package-menu--hide-obsolete): New variable.
35302         (package--remove-hidden): Use it.
35303         (package-menu-hide-obsolete): New interactive function to toggle
35304         the variable.
35305         (package--quick-help-keys): Document it.
35306         (package-menu-async): Add :version tag.
35307         (package-menu-mode-map): Bind package-menu-hide-obsolete.
35308         (package-desc-status): Indicate non-installed obsolete packages as
35309         avail-obso.
35310         (package-menu-mark-install): Allow installation of avail-obso.
35311         (package-menu--status-predicate): Sort avail-obso with available.
35313 2015-04-22  Alan Mackenzie  <acm@muc.de>
35315         On C-y, stop some text property entries being written into buffer-undo-list
35316         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
35317         `with-silent-modifications'.
35319 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
35321         In display-buffer-record-window record selected window if necessary
35322         * lisp/window.el (display-buffer-record-window): Store selected window
35323         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
35325 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
35327         Fix reftex-citation bug
35328         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
35329         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
35330         integration is enabled and there are no citations in the document
35331         so far.
35333 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
35335         Add or reset based on the presence of MERGE_HEAD
35336         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
35337         `vc-git-resolve-when-done' to `after-save-hook' in either case.
35338         (vc-git-conflicted-files): Add a TODO.
35339         (vc-git-resolve-when-done): Depending on the presence of
35340         MERGE_HEAD, either update the resolved file in the index, or
35341         remove it from there.  (Bug#20292)
35343 2015-04-21  Glenn Morris  <rgm@gnu.org>
35345         * lisp/custom.el (custom-declare-group): No need to purecopy
35346         custom-current-group-alist members following recent change to set
35347         it to nil before dumping.
35349         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
35350         (Bug#20399)
35352 2015-04-21  Daniel Colascione  <dancol@dancol.org>
35354         Unbreak no-op buffer save message
35355         * lisp/files.el (basic-save-buffer): Accept called-interactively as
35356         an argument instead of directly invoking called-interactively-p,
35357         which will always yield nil in that context.
35359 2015-04-21  Alan Mackenzie  <acm@muc.de>
35361         CC Mode: Do nothing in before/after-change-functions for text
35362         property changes
35363         Fixes bug#20266.
35364         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
35365         yank-handled-properties buffer local, and remove 'category from it.
35366         (c-called-from-text-property-change-p): New function.
35367         (c-before-change): Don't do anything if a call of the new function
35368         returns non-nil.
35369         (c-after-change): Don't do much if a call of the new function returns
35370         non-nil.
35371         (c-extend-after-change-region): Put changes to text property 'fontified
35372         inside c-save-buffer-state.
35374 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
35376         Fix byte-compiler warnings about looking-back
35377         * lisp/vc/log-view.el (log-view-end-of-defun-1):
35378         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
35379         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
35380         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
35381         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
35382         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
35383         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
35384         * lisp/org/org.el (org-insert-heading, org-sort-entries):
35385         * lisp/org/org-mouse.el (org-mouse-end-headline)
35386         (org-mouse-context-menu):
35387         * lisp/org/org-clock.el (org-clock-cancel):
35388         * lisp/man.el (Man-default-man-entry):
35389         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
35390         (rmail-ensure-blank-line):
35391         * lisp/mail/footnote.el (Footnote-delete-footnote):
35392         * lisp/mail/emacsbug.el (report-emacs-bug):
35393         * lisp/info.el (Info-follow-reference, Info-fontify-node):
35394         * lisp/info-look.el (info-lookup-guess-custom-symbol):
35395         * lisp/help-fns.el (help-fns--key-bindings):
35396         * lisp/files.el (hack-local-variables):
35397         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
35398         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
35399         (viper-complete-filename-or-exit):
35400         * lisp/emulation/viper-cmd.el (viper-backward-indent):
35401         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
35402         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
35403         * lisp/cus-edit.el (custom-face-edit-value-create):
35404         * lisp/calendar/todo-mode.el (todo-set-item-priority)
35405         (todo-filter-items-1, todo-convert-legacy-files)
35406         (todo-prefix-overlays): Add explicit second arg to looking-back.
35408 2015-04-20  Glenn Morris  <rgm@gnu.org>
35410         Avoid non-nil current-load-list at startup
35411         * src/process.c (init_process_emacs): Move Fprovide statement...
35412         (syms_of_process): ... to here.
35414         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
35416         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
35417         in emacs -Q.
35419 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
35421         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
35422         (Bug#20330)
35424 2015-04-20  Glenn Morris  <rgm@gnu.org>
35426         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
35428         Tweak exec-path in uninstalled case
35429         * src/callproc.c (init_callproc): If running uninstalled, do not
35430         include eventual installation libexec directory in exec-path.
35432 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
35434         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
35435         cache keywords.
35436         (package-menu-filter): Accept a list of keywords.
35437         (package--all-keywords): New variable to cache known keywords.
35438         (package-all-keywords): Populate it if necessary.
35439         (package-refresh-contents): Reset it.
35441         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
35442         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
35443         as special keywords which match agains package archive and status
35444         respectively.
35445         * etc/NEWS: Document it.
35447 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
35449         Describe and index "empty overlays".
35450         * doc/lispref/display.texi (Overlays): Improve indexing.
35451         (Managing Overlays): Describe "empty" overlays.
35452         (Overlay Properties, Finding Overlays): Add cross-reference to
35453         where empty overlays are described.
35455 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
35457         Spelling fixes
35459         Quote 'like this' in top-level files
35460         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
35461         Prefer to single-quote 'like this' (instead of the older style
35462         `like this').
35463         * configure.ac: Fix some space-before-tab problems that 'git commit'
35464         complained about.
35466         Use bool for boolean in textprop.c, undo.c
35467         * src/textprop.c (soft, hard): Now constants instead of macros.
35468         (validate_plist): Rewrite to avoid need for boolean local.
35469         (interval_has_all_properties, interval_has_some_properties)
35470         (interval_has_some_properties_list, add_properties)
35471         (remove_properties, get_char_property_and_overlay)
35472         (Fnext_single_char_property_change)
35473         (Fprevious_single_char_property_change, add_text_properties_1)
35474         (Fremove_text_properties, Fremove_list_of_text_properties)
35475         (copy_text_properties):
35476         * src/tparam.c (tparam1):
35477         * src/undo.c (record_change, record_property_change)
35478         (syms_of_undo):
35479         Use 'true' and 'false' for booleans.
35481 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
35483         * lisp/vc/vc-git.el (vc-git-find-file-hook):
35484         Call `smerge-start-session' even when dealing with a stash
35485         conflict (bug#20292).
35487 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
35489         Add option to eshell/clear to clear scrollback.
35490         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
35491         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
35492         scrollback contents are cleared.
35493         * etc/NEWS: Describe change.
35494         * doc/misc/eshell.texi: Add entry for `clear'.
35496 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
35498         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
35499         where either will do.
35501 2015-04-19  Steve Purcell  <steve@sanityinc.com>
35503         Assume package archive-contents are UTF8-encoded
35504         * lisp/emacs-lisp/package.el (package--read-archive-file):
35505         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
35506         downloaded and cached archive-contents files, so that non-ASCII
35507         characters in package descriptions are displayed correctly in the
35508         `list-packages' menu.  (Bug#20231)
35510 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
35512         Abort when looking at stashed changes
35513         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
35514         stashed changes (bug#20292).
35516 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
35518         Refactor low-level printing for simplicity
35519         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
35520         PRINTPREPARE; doable now that we assume C99.  All callers changed.
35521         (PRINTCHAR): Remove, as it adds more mystery than clarity.
35522         All callers changed.
35523         (strout): Assume that caller computes length.  All callers changed.
35524         (print_c_string): New function.
35525         (write_string, write_string_1): Compute length instead of asking
35526         the caller to compute it.  All callers changed.
35527         (write_string): Simplify by using write_string_1.
35528         (write_string_1): Simplify by using print_c_string.
35529         (Fterpri): Compute default val more clearly.
35530         (Fprin1_to_string, print_object):
35531         Assume C99 to avoid unnecessary nesting.
35532         (print_object): Prefer print_c_string to multiple printchar, or
35533         to calling strout with -1 length.  Coalesce into sprintf when
35534         this is easy.
35536 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
35538         Prefer "Bug#1234" in commit messages (Bug#20325)
35539         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
35540         as this isn't useful for Git.
35541         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
35543 2015-04-18  Glenn Morris  <rgm@gnu.org>
35545         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
35546         (Bug#19506)
35548 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
35550         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
35551         Do not use `chomp' as a function.  (Bug#19505)
35553 2015-04-18  Glenn Morris  <rgm@gnu.org>
35555         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
35557         * doc/emacs/misc.texi (Sorting): Small edit.
35558         (Bug#19896)
35560         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
35562 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
35564         css-mode.el: Support multi-line comment filling
35565         (Bug#20256)
35566         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
35567         comment filling.
35568         (css-adaptive-fill): New function.
35569         (css-mode): Set `adaptive-fill-function'.
35570         (scss-mode): Set `comment-continue'.
35572 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
35574         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
35575         Better error messages.
35577 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
35579         Minor improvements in Bulgarian input methods
35580         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
35581         Replace U+042C with U+045D, as the former character is not used in
35582         the modern Bulgarian language.
35583         (Bug#20350)
35585 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
35587         Improve EUDC manual
35588         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
35589         authentication schemes.  Add index items.  Shorten example server
35590         name.
35592 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
35594         Don't show both feature and function with the same name
35595         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
35596         Don't show both feature and function with the same name.
35598         (elisp--xref-identifier-location): Skip variable, if it's also
35599         a function
35600         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
35601         Avoid returning both the variable and the function for the same
35602         minor mode.
35604 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
35606         Fix fontification of keywords clobbered by the prompt
35607         * lisp/comint.el (comint-output-filter): Remove the uses of
35608         with-silent-modifications I introduced as part of the last change.
35609         This fixes, e.g., erratically missing highlighting when running
35610         ./configure --help; ./configure in a shell-mode buffer with
35611         compilation-shell-minor-mode turned on.
35613 2015-04-17  Glenn Morris  <rgm@gnu.org>
35615         * admin/authors.el (authors-valid-file-names)
35616         (authors-renamed-files-alist): Additions.
35618 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
35620         * lisp/indent.el (indent-region): Don't deactivate the mark.
35621         (Bug#20357)
35623 2015-04-17  Sam Steingold  <sds@gnu.org>
35625         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
35627 2015-04-16  Leo Liu  <sdl.web@gmail.com>
35629         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
35631 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
35633         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
35634         Don't use `pcomplete' any more.
35636 2015-04-16  Glenn Morris  <rgm@gnu.org>
35638         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
35640 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
35642         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
35643         * configure.ac (LIBJPEG): Leave it empty for MinGW.
35645 2015-04-16  Glenn Morris  <rgm@gnu.org>
35647         * lisp/replace.el (query-replace-from-to-separator):
35648         Delay initialization to avoid rogue setting after startup.
35650 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
35652         Pre-4.6 GCC succeeds with unknown option
35653         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
35654         (Bug#20338)
35656 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
35658         '[:graph:]' now excludes whitespace, not just ' '
35659         * doc/lispref/searching.texi (Char Classes):
35660         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
35661         sans whitespace (not sans space).
35662         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
35663         not just space.
35664         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
35666 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
35668         * lisp/subr.el (substitute-key-definition-key, special-form-p)
35669         (macrop): Drop deprecated second arg to indirect-function.
35670         (looking-back): Make the second arg non-optional.
35672         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
35673         command is actually sent to the shell.
35675 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
35677         Port jpeg configuration to Solaris 10 with Sun C
35678         * configure.ac: Check for jpeglib 6b by trying to link it, instead
35679         of relying on cpp magic that has problems in practice.  Check for
35680         both jpeglib.h and jerror.h features.  Remove special case for
35681         mingw32, which should no longer be needed (and if it were needed,
35682         should now be addressable by hotwiring emacs_cv_jpeglib).
35683         (Bug#20332)
35685 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
35687         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
35688         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
35689         Move to elisp-mode.el.
35690         (lisp-mode-variables): (Re)move elisp-specific settings.
35691         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
35692         from lisp-mode-variables.
35693         (elisp--font-lock-flush-elisp-buffers): New function, moved from
35694         lisp-mode.el.
35696         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
35697         Avoid pathological slowdown at top-level in large file.
35699 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
35701         Standardize names of ChangeLog history files
35702         Suggested by Glenn Morris in:
35703         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
35704         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
35705         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
35706         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
35707         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
35708         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
35709         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
35710         Remove.
35712         Split top-level entries into pre- and post-April 7
35713         This more clearly distingiushes pre-April-7 ChangeLog entries (which
35714         are for top-level files only) from post-April-7 entries (which are
35715         about files at all levels.  Problem reported by Glenn Morris in:
35716         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
35717         * ChangeLog.1: Move post-April-7 entries from here ...
35718         * ChangeLog.2: ... to this new file.
35719         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
35721 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
35723         Fix recent cus-start changes that added customize-rogues
35724         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
35725         vars early.
35726         * lisp/loadup.el ("cus-start"): Move to the end to reduce
35727         customize-rogue.
35729 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
35731         Define cl-concatenate as an alias to seq-concatenate
35732         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
35733           code by making cl-concatenate an alias to seq-concatenate.
35735 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
35737         * src/lread.c (intern_1): Make sure we'd find the symbol we add
35738         (Bug#20334)
35739         * src/xfaces.c (resolve_face_name): Don't use `intern' with
35740         Lisp_Strings.
35742 2015-04-15  Glenn Morris  <rgm@gnu.org>
35744         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
35746 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
35748         Clean up gnus-uu saving code slightly
35749         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
35750         save-restriction/widen calls make more sense.
35752 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
35754         Make [:graph:] act like [:print:] sans space
35755         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
35756         [:graph:] so that it matches everything that [:print:] does,
35757         except for space.
35758         * doc/lispref/searching.texi (Char Classes):
35759         * etc/NEWS:
35760         * lisp/emacs-lisp/rx.el (rx):
35761         Document [:graph:] to be [:print:] sans ' '.
35762         * src/character.c, src/character.h (graphicp): New function.
35763         * src/regex.c (ISGRAPH) [emacs]: Use it.
35764         (BIT_GRAPH): New macro.
35765         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
35766         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
35767         Return BIT_GRAPH for RECC_GRAPH.
35768         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
35769         and ISPRINT if BIT_PRINT.
35771 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
35773         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
35774         Don't use call-next-method in a cl-defmethod.
35776         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
35777         (eieio--class-p): Remove, provided by cl-defstruct.
35779 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
35781         Add seq-intersection and seq-difference to the seq library
35782         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
35783         New functions.
35784         * test/automated/seq-tests.el: Add tests for seq-intersection and
35785         seq-difference.
35786         * doc/lispref/sequences.texi: Add documentation for seq-intersection
35787         and seq-difference.
35789 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
35791         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
35792         to avoid leaking internals.
35794 2015-04-14  Sam Steingold  <sds@gnu.org>
35796         package--ensure-init-file: widen requires save-restriction
35798 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
35800         Improve the commit-msg Git hook for unibyte environments
35801         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
35802         in unibyte environments.  (Suggested by Paul Eggert
35803         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
35804         [:print:], based on UTF-8 sequences of the unprintable characters.
35806         Describe problems with cursor caused by Windows Magnifier
35807         * etc/PROBLEMS: Describe the problem with cursor shape on
35808         MS-Windows due to Windows Magnifier.
35809         (Bug#20271)
35811         Make [:print:] support non-ASCII characters correctly
35812         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
35813         (BIT_PRINT): New bit mask.
35814         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
35815         * src/character.c (printablep): New function.
35816         * src/character.h (printablep): Add prototype.
35817         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
35818         of 'print', 'alnum', and 'alphabetic'.
35819         * doc/lispref/searching.texi (Char Classes): Document the new
35820         behavior of [:print:].
35821         * etc/NEWS: Mention the new behavior of [:print:].
35823         Assign correct general-category and names to surrogates
35824         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
35825         surrogates.  This avoids assigning them the default
35826         general-category of 'Cn', i.e. unassigned codepoints.
35827         (unidata-get-name): Give surrogates synthetic names.
35829 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
35831         Assume C89 offsetof in xterm.c, xlwmenu.c
35832         * lwlib/xlwmenu.c (offset):
35833         * src/xterm.c (cvt_string_to_pixel_args):
35834         Use offsetof, not XtOffset.
35836 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
35838         Assume C89 offsetof in widget.c
35839         * src/widget.c (XtOffset): Remove; no longer needed.
35840         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
35842         Fix think-o in previous patch
35843         * src/window.c (count_windows, get_leaf_windows):
35844         Don't optimize count_windows incorrectly.
35846 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
35848         Avoid some int overflows in window.c
35849         * src/print.c (print_object):
35850         * src/window.c (sequence_number):
35851         * src/window.h (struct window.sequence_number):
35852         Don't assume window sequence number fits in int.
35853         * src/window.c (window_select_count):
35854         * src/window.h (struct window.use_time, window_select_count):
35855         Don't assume window use time fits in int.
35856         * src/window.c (Fsplit_window_internal):
35857         Don't assume user-supplied integer, or sum, fits in int.
35858         (Fset_window_configuration, count_windows, get_leaf_windows)
35859         (save_window_save, Fcurrent_window_configuration):
35860         Use ptrdiff_t for object counts.
35861         (Fset_window_configuration): Omit unused local 'n'.
35862         (count_windows): Simplify by writing in terms of get_leaf_windows.
35863         (get_leaf_windows): Don't store through FLAT if it's null.
35864         (extract_dimension): New static function.
35865         (set_window_margins, set_window_fringes, set_window_scroll_bars):
35866         Use it to avoid undefined behavior when converting user-supplied
35867         integer to 'int'.
35869 2015-04-13  Glenn Morris  <rgm@gnu.org>
35871         Minor doc copyedits
35872         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
35873         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
35875 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
35877         [Gnus] Catch the invalid-operation that idna.el will issue
35878         * lisp/gnus/gnus-art.el (gnus-use-idna):
35879         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
35880         * lisp/gnus/message.el (message-use-idna):
35881         Catch the invalid-operation that idna.el will issue.
35883 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
35885         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
35887 2015-04-13  Sam Steingold  <sds@gnu.org>
35889         package--ensure-init-file: widen before looking for
35890         "(package-initialize)"
35892 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
35894         Change diff-switches default to `-u' (Bug#20290)
35895         * doc/emacs/files.texi (Comparing Files): Document the new default
35896         value of `diff-switches'.
35897         * doc/emacs/trouble.texi (Sending Patches): Document the preference
35898         for unified diff format.  Escape the plus in the suggested `-F' regexp
35899         value.
35900         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
35902 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
35904         (gnus-group--setup-tool-bar-update): Fix last change
35905         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
35906         cursor-sensor-functions should be a list of functions.
35908 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
35910         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
35911         Use gmm-called-interactively-p.
35913 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
35915         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
35916         (Bug#20321)
35917         * lisp/cus-start.el (read-buffer-function): Don't advertise
35918         iswitchb-read-buffer any more.
35919         (iswitchb): Don't tweak this obsolete group any more.
35921 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
35923         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
35925         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
35926         Adding a string after a constructor's argument list will use
35927         that string as the constructor function docstring.  If this string
35928         is absent but the struct itself was given a docstring, use that as
35929         the constructor's docstring.
35930         Fixes bug#17284.
35932 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
35934         Deprecate `intangible' and `point-entered' properties
35935         * lisp/emacs-lisp/cursor-sensor.el: New file.
35936         * lisp/simple.el (pre-redisplay-functions): New hook.
35937         (redisplay--pre-redisplay-functions): New function.
35938         (pre-redisplay-function): Use it.
35939         (minibuffer-avoid-prompt): Mark obsolete.
35940         (redisplay--update-region-highlight): Adapt it to work as a function on
35941         pre-redisplay-functions.
35942         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
35943         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
35944         than point-entered to make the prompt intangible.
35945         * lisp/forms.el: Move `provide' calls to the end.
35946         (forms-mode): Don't use `run-hooks' on a local var.
35947         (forms--make-format, forms--make-format-elt-using-text-properties):
35948         Use cursor-intangible rather than `intangible'.
35949         (forms-mode): Enable cursor-intangible-mode.
35950         * lisp/isearch.el (isearch-mode): Use defvar-local.
35951         (cursor-sensor-inhibit): Declare.
35952         (isearch-mode): Set cursor-sensor-inhibit.
35953         (isearch-done): Set it back.
35954         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
35955         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
35956         any more.
35957         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
35958         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
35959         Add Edebug spec.
35960         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
35961         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
35962         inhibit-point-motion-hooks any more.
35963         (ses--cell-at-pos, ses--curcell): New functions, extracted from
35964         ses-set-curcell.
35965         (ses-set-curcell): Use them.
35966         (ses-print-cell, ses-setup): Use cursor-intangible instead of
35967         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
35968         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
35969         Use ses--cell-at-pos.
35970         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
35971         extracted from ses-command-hook.  Make them work with multiple windows
35972         displaying the same buffer.
35973         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
35974         Enable cursor-intangible-mode.
35975         (ses-command-hook): Remove cell highlight and mode-line update code.
35976         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
35977         Update for new name of text-property holding the cell name.
35978         (ses-rename-cell): Don't mess with mode-line-process.
35979         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
35980         cursor-sensor-functions property instead of point-entered.
35981         (erc-insert-timestamp-right, erc-format-timestamp):
35982         Use cursor-intangible rather than `intangible'.
35983         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
35984         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
35985         cursor-sensor-mode if needed.
35986         (erc-echo-timestamp): Adapt to calling convention of
35987         cursor-sensor-functions.
35988         (erc-insert-timestamp-right): Remove unused vars `current-window' and
35989         `indent'.
35990         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
35991         (gnus-update-group-mark-positions): Remove unused `topic' var.
35992         (gnus-group-insert-group-line): Remove unused var `header'.
35993         (gnus-group--setup-tool-bar-update): New function.
35994         (gnus-group-insert-group-line): Use it.
35995         (gnus-group-update-eval-form): Declare local
35996         dynamically-bound variables.
35997         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
35998         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
35999         (gnus-group-prepare-topics, gnus-topic-update-topic)
36000         (gnus-topic-change-level, gnus-topic-catchup-articles)
36001         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
36002         Use inhibit-read-only.
36003         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
36004         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
36005         * lisp/textmodes/reftex-index.el (reftex-display-index):
36006         Use cursor-intangible-mode if available.
36007         (reftex-index-post-command-hook): Check cursor-intangible.
36008         * lisp/textmodes/reftex-toc.el (reftex-toc):
36009         Use cursor-intangible-mode if available.
36010         (reftex-toc-recenter, reftex-toc-post-command-hook):
36011         Check cursor-intangible.
36012         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
36013         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
36014         (sgml-tags-invisible): Use with-silent-modifications and
36015         inhibit-read-only.  Enable cursor-sensor-mode.
36016         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
36017         calling convention of cursor-sensor-functions.
36018         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
36019         (table-point-entered-cell-hook, table-point-left-cell-hook):
36020         Don't autoload.
36021         (table-cell-entered-state): Remove var.
36022         (table--put-cell-point-entered/left-property)
36023         (table--remove-cell-properties):
36024         Use cursor-sensor-functions rather than point-entered/left.
36025         (table--point-entered/left-cell-function): Merge
36026         table--point-entered-cell-function and table--point-left-cell-function
36027         and adjust to calling convention of cursor-sensor-functions.
36029         Update ldef-boots.el
36031         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
36033         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
36035         Collapse successive char deletions in the undo log
36036         * src/cmds.c (remove_excessive_undo_boundaries): New function,
36037         extracted from Fself_insert_command.
36038         (Fdelete_char, Fself_insert_command): Use it.
36039         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
36040         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
36042         xterm and OSC 52: Add NEWS entry, and tweak the code
36043         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
36044         to top-level.
36045         (terminal-init-xterm-activate-set-selection): Set a terminal property.
36046         (xterm--set-selection): Use it instead of checking the value of
36047         `terminal-initted'.  Don't use string-bytes.
36049 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
36051         xterm.el: Implement OSC-52 functionality for setting the X selection
36052         * lisp/term/xterm.el (xterm-max-cut-length): New var.
36053         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
36054         New funs.
36055         (terminal-init-xterm, xterm--version-handler): Use them.
36057 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
36059         Remove left over code from when we used an obsolete/loaddefs.el file
36060         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
36061         when we used an obsolete/loaddefs.el file.
36063         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
36064         (semanticdb-without-unloaded-file-searches): Use declare.
36065         (semantic-fw-add-edebug-spec): Remove.
36067         * lisp/completion.el (completion-lisp-mode-hook):
36068         Use completion-separator-chars rather than local key binding.
36070         * src/*.c: Set deactivate_mark buffer-locally
36071         (Bug#20260)
36072         * src/insdel.c (prepare_to_modify_buffer_1):
36073         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
36074         buffer-locally.
36076 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
36078         python.el: Keep symmetry on sexp navigation with parens
36079         (Bug#19954)
36080         * lisp/progmodes/python.el
36081         (python-nav--forward-sexp): Add argument skip-parens-p.
36082         (python-nav-forward-sexp, python-nav-backward-sexp)
36083         (python-nav-forward-sexp-safe)
36084         (python-nav-backward-sexp-safe): Use it.
36085         * test/automated/python-tests.el
36086         (python-nav-forward-sexp-1): Fix test.
36088 2015-04-12  João Távora  <joaotavora@gmail.com>
36090         Don't use `setq-local' in Gnus code
36091         This might break upstream builds with older Emacsen
36092         * lisp/gnus/message.el (message-mode): Use `set' and
36093         `make-local-variable' instead of `setq-local'.
36095 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
36097         Update Makefile.in's .PHONY dependencies
36098         * Makefile.in (change-history-commit, master-branch-is-current)
36099         (no-ChangeLog): Now phony.
36101         Remove configure's --with-mmdf option
36102         * configure.ac (MAIL_USE_MMDF): Remove.
36103         * etc/NEWS: Document this.
36104         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
36105         (Bug#20308)
36107         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
36108         That way, 'make install' won't think it's a man page.
36109         Reported by Ashish SHUKLA in:
36110         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
36112         Improve 'make change-history' prereq tests
36113         * Makefile.in (gen_origin): Fix to match what's in the master branch.
36114         (no-ChangeLog, master-branch-is-current): New rules.
36115         (change-history): Depend on them, to avoid similar future problems.
36116         Escape the local-variables string to pacify Emacs when editing
36117         Makefile.in.
36119 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
36121         * test/automated/package-test.el (with-package-test):
36122         Kill Packages buffer.
36124         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
36125         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
36126         "Upgrade" last, and use capitalized instead of all-caps.
36128         * lisp/emacs-lisp/package.el: Completely silence async operations.
36129         (package--make-autoloads-and-stuff): Silence autoloads.
36130         (package--save-selected-packages): New function, silences
36131         `customize-save-variable'.
36132         (package--user-selected-p, package-install-from-buffer)
36133         (package-delete, package-install): Use it.
36134         (package-install-from-archive)
36135         (package-menu--perform-transaction): Silence.
36136         (package-menu-execute): Feedback when operation starts.
36138         Use delay-mode-hooks when visiting the init-file
36139         * lisp/emacs-lisp/package.el (package--ensure-init-file):
36140         delay-mode-hooks.
36141         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
36143         * lisp/files.el: Only message when saving if save-silently is nil.
36144         (save-silently): New variable.
36145         (files--message): New function.
36146         (find-file-noselect, save-buffer, basic-save-buffer)
36147         (basic-save-buffer-2, save-some-buffers, not-modified)
36148         (append-to-file): Use them.
36150 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
36152         Support debug declarations in pcase macros
36153         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
36154         (pcase-UPAT): Use it.  Remove "`".
36155         (pcase--edebug-match-macro): New function.
36156         (pcase-defmacro): Support debug declarations.
36157         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
36158         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
36159         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
36160         Add debug declaration.
36162         pcase.el: Edebug support for `app' and vector patterns
36163         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
36164         (pcase-UPAT): Use it.  Support `app' patterns.
36165         (pcase-QPAT): Support vector patterns.
36167         edebug.el: Disambiguate vector specifications
36168         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
36169         `(vector ...)' as a vector specification, not as a sublist.
36171         (gnus-summary-refer-thread): Don't clobber unread articles
36172         This fixes a bug where `A T' causes "random" articles to become marked
36173         as read.
36174         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
36175         gnus-newsgroup-unreads remains sorted.
36177         mouse-sel.el: Fix mouse-sel-get-selection-function
36178         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
36179         Use gui--last-selected-text-primary instead of no longer existing
36180         gui-last-selected-text.
36182         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
36184         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
36186 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
36188         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
36190         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
36191         right buffer.
36193         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
36194         (byte-compile--interactive): New var.
36195         (byte-compile--message): New function.
36196         (byte-compile-log-1, byte-force-recompile)
36197         (byte-recompile-directory, byte-recompile-file)
36198         (byte-compile-file, compile-defun)
36199         (byte-compile-file-form-defmumble, byte-compile)
36200         (byte-compile-file-form-defalias, display-call-tree): Use it.
36202         * lisp/files.el: Don't message when nothing happened.
36203         (save-some-buffers, basic-save-buffer): Before messaging to say
36204         "nothing was saved" check if (called-interactively-p 'any).
36206 2015-04-12  João Távora  <joaotavora@gmail.com>
36208         Summary: Improve sexp-based movement in message-mode
36209         Works by giving citations and smileys a different syntax.  This helps
36210         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
36211         sexp-based movement.
36212         * lisp/gnus/message.el (message--syntax-propertize): New function.
36213         (message-mode): Set syntax-related vars.
36214         (message-smileys): New variable.
36215         * test/automated/message-mode-tests.el: New file
36217 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
36219         Use bool for boolean in window.c
36220         * src/window.c: Omit unnecessary static function decls.
36221         (adjust_window_count, select_window, Fselect_window)
36222         (window_body_width, Fwindow_body_height, Fwindow_body_width)
36223         (set_window_hscroll, check_window_containing, Fwindow_at)
36224         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
36225         (unshow_buffer, replace_window, recombine_windows)
36226         (add_window_to_list, candidate_window_p, next_window)
36227         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
36228         (Fget_buffer_window, Fdelete_other_windows_internal)
36229         (replace_buffer_in_windows_safely, set_window_buffer)
36230         (Fset_window_buffer, Fforce_window_update)
36231         (temp_output_buffer_show, make_parent_window)
36232         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
36233         (resize_frame_windows, Fsplit_window_internal)
36234         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
36235         (Fresize_mini_window_internal, mark_window_cursors_off)
36236         (window_scroll, window_scroll_pixel_based)
36237         (window_scroll_line_based, scroll_command, Fscroll_other_window)
36238         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
36239         (Fmove_to_window_line, Fset_window_configuration)
36240         (delete_all_child_windows, apply_window_adjustment)
36241         (set_window_fringes, set_window_scroll_bars)
36242         (Fset_window_vscroll, foreach_window, foreach_window_1)
36243         (compare_window_configurations, Fcompare_window_configurations):
36244         Prefer 'bool', 'true', and 'false' for booleans.
36245         * src/window.h (WINDOW_MODE_LINE_LINES)
36246         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
36248 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
36250         Speed up byte-compilation and autoload generation by avoiding mode-hooks
36251         This prevents emacs-lisp-mode-hook from being run everytime an
36252         autoload file is generated, which can account for a fraction of
36253         package installation time depending on the hooks the user has
36254         configured.
36255         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
36256         * lisp/emacs-lisp/autoload.el (autoload-find-file)
36257         (autoload-find-generated-file): Use delay-mode-hooks.
36259         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
36260         (package-menu-refresh): Respect async and do new package checking.
36261         (list-packages): Use `package-menu-refresh' instead of repeating code.
36263         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
36264         (package--quick-help-keys): New variable.
36265         (package--prettify-quick-help-key): New function.
36266         (package-menu-quick-help): Use it.
36268         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
36269         (package--build-compatibility-table): Require finder.
36271         * test/automated/package-test.el: Fix new test.
36273         * lisp/emacs-lisp/package.el: Silence async operations.
36274         (package--silence): New variable.
36275         (package--message): New function.
36276         (package-import-keyring, package-refresh-contents)
36277         (package-compute-transaction, package-install, package-delete)
36278         (package-menu--perform-transaction, package-menu-execute): Use it.
36280         * test/automated/package-test.el: Test async functionality.
36281         (package-test-update-archives-async): New test.
36283 2015-04-11  Daiki Ueno  <ueno@gnu.org>
36285         Utilize `make-process' in epg.el
36286         * lisp/epg.el (epg-error-output): Abolish.
36287         (epg-context): New slot `error-buffer'.
36288         (epg--start): Use `make-process' and `make-pipe-process'.
36289         (epg--process-filter): Remove code separating stderr from stdout.
36290         (epg-wait-for-completion): Simplify `error-output' handling.
36291         (epg-reset): Dispose error buffer.
36293 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
36295         * .gitignore: Ignore doc temps and outputs.
36297         Port commit-msg to MSYS Bash+Gawk
36298         See Eli Zaretskii in:
36299         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
36300         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
36301         (cent_sign, print_at_sign, at_sign): Revert previous change.
36302         (print_at_sign): Prepend "BEGIN".
36303         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
36305         Port commit-msg to broken MS-Windows shell
36306         * build-aux/git-hooks/commit-msg (cent_sign):
36307         Just use UTF-8 here rather than ASCII + printf, as the latter fails
36308         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
36309         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
36311 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
36313         Support GnuTLS v3.4 and later on MS-Windows
36314         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
36315         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
36316         GnuTLS DLL to load according to value of libgnutls-version.
36317         (Bug#20294)
36319 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
36321         Minor quoting etc. fixes to misc manuals
36322         Fix some minor quoting and spacing issues.  Distinguish more
36323         clearly among grave accent and apostrophe (which are ASCII) and
36324         single quote (which is not).  Prefer the standard terms
36325         "apostrophe" and "grave accent" to alternative names that can be
36326         confusing.  Use apostrophes to single-quote ASCII text.
36327         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
36328         rather than approximating it in ASCII with grave accent.
36330 2015-04-11  Daiki Ueno  <ueno@gnu.org>
36332         Respect more keyword args in `make-process'
36333         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
36334         keywords as documented.
36336 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
36338         Extract ChangeLog entries when committing a directory
36339         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
36340         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
36341         Add a FIXME comment.
36342         (log-edit-changelog-entries): Extract from
36343         `log-edit-changelog-entries', handle FILE being a directory
36344         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
36346 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
36348         Fix problems found by --enable-gcc-warnings
36349         * src/process.c (create_process, Fmake_pipe_process)
36350         (Fmake_network_process): Omit unused locals.
36352         Fix commit-msg to handle scissors lines
36353         * build-aux/git-hooks/commit-msg:
36354         Ignore every line after a scissors line, such as a line generated
36355         by 'git commit -v'.  Problem reported by Johan Bockgård in:
36356         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
36358         port commit-msg to Gawk 3.0.4 (1999)
36359         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
36360         (print_at_sign, at_sign): New vars.  Use them to avoid problems
36361         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
36362         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
36364         Have commit-msg report commit failure
36365         * build-aux/git-hooks/commit-msg: If the commit is aborted,
36366         say so.  Simplify by doing this at the end.  Problem reported
36367         by Eli Zaretskii in:
36368         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
36370 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
36372         Clean up LDAP Configuration section of EUDC manual
36373         * doc/misc/eudc.texi: Combine indices.
36374         (LDAP Configuration): Use command markup.  Add index entries.
36375         Change formatting.  Wrap long lines.  Add noindent markup.
36377 2015-04-10  Daiki Ueno  <ueno@gnu.org>
36379         Add facility to collect stderr of async subprocess
36380         * src/w32.h (register_aux_fd): New function declaration.
36381         * src/w32.c (register_aux_fd): New function.
36382         * src/process.h (struct Lisp_Process): New member stderrproc.
36383         * src/process.c (PIPECONN_P): New macro.
36384         (PIPECONN1_P): New macro.
36385         (Fdelete_process, Fprocess_status, Fset_process_buffer)
36386         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
36387         (Fcontinue_process): Handle pipe process specially.
36388         (create_process): Respect p->stderrproc.
36389         (Fmake_pipe_process): New function.
36390         (Fmake_process): Add new keyword argument :stderr.
36391         (wait_reading_process_output): Specially handle a pipe process when
36392         it gets an EOF.
36393         (syms_of_process): Register Qpipe and Smake_pipe_process.
36394         * doc/lispref/processes.texi (Asynchronous Processes): Document
36395         `make-pipe-process' and `:stderr' keyword of `make-process'.
36396         * lisp/subr.el (start-process): Suggest to use `make-process' handle
36397         standard error separately.
36398         * test/automated/process-tests.el (process-test-stderr-buffer)
36399         (process-test-stderr-filter): New tests.
36400         * etc/NEWS: Mention new process type `pipe' and its usage with the
36401         `:stderr' keyword of `make-process'.
36403 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
36405         Minor quoting etc. fixes to lispref manual
36406         * doc/lispref/tips.texi (Documentation Tips):
36407         Distinguish more clearly among grave accent, apostrophe,
36408         and single quote.
36409         * doc/lispref/README, doc/lispref/buffers.texi:
36410         * doc/lispref/commands.texi, doc/lispref/control.texi:
36411         * doc/lispref/customize.texi, doc/lispref/display.texi:
36412         * doc/lispref/elisp.texi, doc/lispref/files.texi:
36413         * doc/lispref/frames.texi, doc/lispref/hash.texi:
36414         * doc/lispref/help.texi, doc/lispref/internals.texi:
36415         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
36416         * doc/lispref/markers.texi, doc/lispref/modes.texi:
36417         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
36418         * doc/lispref/os.texi, doc/lispref/positions.texi:
36419         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
36420         * doc/lispref/text.texi, doc/lispref/tips.texi:
36421         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
36422         Use American-style double quoting in ordinary text,
36423         and quote 'like this' when single-quoting in ASCII text.
36424         Also, fix some minor spacing issues.
36426 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
36428         Handle symlinked test directory in tramp-tests.el
36429         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
36430         (tramp--test-check-files): Use `file-truename' for directories.
36432 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
36434         Fix 'recenter' when visual-line-mode is turned on
36435         * src/window.c (Frecenter): Use the same code for GUI and TTY
36436         frames alike; use vmotion only for "initial" frames.  This is
36437         because vmotion doesn't support visual-line-mode.  Rewrite the
36438         'iarg >= 0' case to use move_it_* functions instead of using
36439         vmotion, for the same reason.  Fix the clipping of the argument
36440         value to support scroll-margin in all cases and avoid unwarranted
36441         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
36442         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
36443         which see.
36445 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
36447         * lisp/abbrev.el (define-abbrev-table): Refine last change.
36449         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
36450         use of c[ad]+r", so as to keep the "cl-" prefix on all
36451         cl-lib definitions.
36453         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
36454         Use inhibit-point-motion-hooks.
36456         * lisp/cedet/semantic: Remove some dead code.
36457         * lisp/cedet/semantic/util-modes.el
36458         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
36459         any more.
36460         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
36461         not supported any more.
36462         (semantic-safe): Use `declare'.
36463         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
36464         (semantic-tag-intangible-p): Remove unused functions.
36465         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
36466         Remove unused function.
36468         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
36469         (gnus-article-hide-text, gnus-article-unhide-text)
36470         (gnus-article-unhide-text-type): Remove special handling of
36471         `intangible' since that property is not used any more.
36472         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
36474 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
36476         Use the VC root in `log-edit-listfun'
36477         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
36478         `log-edit-listfun'.
36480 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
36482         Fix description of Unix time, mention new function.
36483         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
36484         Unix time.
36485         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
36486         (Basic Operations on Units): Mention `calc-convert-exact-units'.
36488 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
36490         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
36492 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
36494         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
36495         Don't add newline after the last entry.
36497 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
36499         css-mode.el: Add "not" pseudo-class
36500         (Bug#20267)
36501         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
36502         list of CSS pseudo-classes.
36504 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
36506         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
36508 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
36510         Stop messing with the EMACS env var
36511         * doc/emacs/misc.texi (Interactive Shell): Remove description of
36512         EMACS env var.
36514 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36516         Adapt 'make change-history' to coding cookie
36517         * Makefile.in (change-history): Adjust to change of format of
36518         ChangeLog file, which now has a coding cookie before an indented
36519         copyright notice.
36521 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
36523         Adapt 'make change-history' to coding cookie
36524         * Makefile.in (change-history): Adjust to change of format of
36525         ChangeLog file, which now has a coding cookie before an indented
36526         copyright notice.
36528         gitlog-to-changelog coding cookie and mv -i
36529         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
36530         for copyright notice prototype, so that we get a proper "coding:"
36531         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
36532         existing ChangeLog.  Problems reported by Eli Zaretskii in:
36533         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
36535         Merge from gnulib
36536         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
36537         2015-04-09 gitlog-to-changelog: port to MS-Windows
36539 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
36541         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
36542         (Bug#20212)
36544 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
36546         Stop messing with the EMACS env var
36547         (Bug#20202)
36548         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
36549         * lisp/comint.el (comint-exec-1):
36550         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
36551         * lisp/progmodes/compile.el (compilation-start): Same and bring
36552         INSIDE_EMACS's format in line with other users.
36554         css-mode.el (css-smie-rules): Fix indentation after complex selectors
36555         (Bug#20282)
36556         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
36557         inner structure of selectors.
36559 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
36561         python.el: Indent docstring lines to base-indent
36562         (Bug#19595)
36563         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
36564         an initial patch.
36565         * lisp/progmodes/python.el
36566         (python-indent-context): Add :inside-docstring context.
36567         (python-indent--calculate-indentation): Handle :inside-docstring.
36568         (python-indent-region): Re-indent docstrings.
36569         * test/automated/python-tests.el (python-indent-region-5)
36570         (python-indent-inside-string-2): Fix tests.
36572         python.el: Increase native completion robustness
36573         (Bug#19755)
36574         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
36575         this and providing useful ideas.
36576         * lisp/progmodes/python.el
36577         (python-shell-completion-native-output-timeout): Increase value.
36578         (python-shell-completion-native-try-output-timeout): New var.
36579         (python-shell-completion-native-try): Use it.
36580         (python-shell-completion-native-setup): New readline setup avoids
36581         polluting current context, ensures output when no-completions are
36582         available and includes output end marker.
36583         (python-shell-completion-native-get-completions): Trigger with one
36584         tab only.  Call accept-process-output until output end is found or
36585         python-shell-completion-native-output-timeout is exceeded.
36587 2015-04-08  Samer Masterson  <samer@samertm.com>
36589         * lisp/eshell: Make backslash a no-op in front of normal chars
36590         (Bug#8531)
36591         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
36592         (eshell-parse-backslash): Return escaped character after backslash
36593         if it is special.  Otherwise, if the backslash is not in a quoted
36594         string, ignore the backslash and return the character after; if
36595         the backslash is in a quoted string, return the backslash and the
36596         character after.
36597         * test/automated/eshell.el (eshell-test/escape-nonspecial)
36598         (eshell-test/escape-nonspecial-unicode)
36599         (eshell-test/escape-nonspecial-quoted)
36600         (eshell-test/escape-special-quoted): Add tests for new
36601         `eshell-parse-backslash' behavior.
36603 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
36605         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
36606         after the file name.
36607         (Bug#20276)
36609 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
36611         Minor quoting etc. fixes to Emacs manual
36612         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
36613         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
36614         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
36615         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
36616         * doc/emacs/indent.texi, doc/emacs/macos.texi:
36617         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
36618         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
36619         * doc/emacs/search.texi, doc/emacs/trouble.texi:
36620         * doc/emacs/vc1-xtra.texi:
36621         Use American-style double quoting in ordinary text,
36622         and quote 'like this' when single-quoting in ASCII text.
36623         Also, fix some minor spacing issues.
36625         Minor quoting etc. fixes to elisp intro
36626         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
36627         American-style double quoting in ordinary text.  In ASCII text,
36628         consistently quote 'like this' instead of `like this', unless
36629         Emacs requires the latter.
36631 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
36633         * CONTRIBUTE: Mention log-edit-insert-changelog.
36635         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
36637 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
36639         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
36641 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
36643         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
36644         Fix inheritance of initargs.  (Bug#20270)
36646 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
36648         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
36649         while dowloading information.
36651         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
36652         (package--ensure-init-file): Check file contents before visiting.
36653         (package-initialize): Call it.
36654         (package-install-from-buffer, package-install): Don't call it.
36656 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
36658         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
36659         (Bug#17517)
36661 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
36663         * lisp/net/tramp-cache.el (tramp-flush-file-property):
36664         Fix nasty scoping bug.
36666 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
36668         Add notice to visual commands section
36669         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
36670         such as git call less with its -F option which omits pagination if
36671         the contents is less than one page long.  This interferes with
36672         eshell's visual (sub-)commands.
36674 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
36676         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
36677         environment variable expansion in file names.  (Bug#19839)
36679 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
36681         Prefer double-quote to accent-grave in man pages
36683 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
36685         (Bug#20257)
36686         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
36688 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
36690         Update etc/PROBLEMS.
36691         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
36692         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
36693         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
36694         respectively); other minor updates and tweaks.  (Bug#20011)
36696 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
36698         Add doc strings for some Isearch state vars
36699         * lisp/misearch.el (multi-isearch-buffer-list)
36700         (multi-isearch-file-list): Add doc strings.
36701         (Bug#20232)
36703 2015-04-07  Alan Mackenzie  <acm@muc.de>
36705         Always mark "<" and ">" in #include directives with text properties.
36706         * lisp/progmodes/cc-fonts.el (c-cpp-matchers): Replace a font-lock
36707         "anchored matcher" with an invocation of
36708         c-make-font-lock-search-function to allow fontification when there's
36709         no trailing space on an "#include <..>" line.
36711 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
36713         Generate a ChangeLog file from commit logs
36714         * .gitignore: Add 'ChangeLog'.
36715         * build-aux/gitlog-to-changelog: New file, from Gnulib.
36716         * build-aux/gitlog-to-emacslog: New file.
36717         * CONTRIBUTE: Document the revised workflow.
36718         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
36719         instead of just special cases.
36720         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
36721         (ChangeLog, unchanged-history-files, change-history)
36722         (change-history-commit): New rules.
36723         * admin/admin.el (make-manuals-dist--1):
36724         Don't worry about doc/ChangeLog.
36725         * admin/authors.el: Add a FIXME.
36726         * admin/make-tarball.txt:
36727         * lisp/calendar/icalendar.el:
36728         * lisp/gnus/deuglify.el:
36729         * lisp/obsolete/gulp.el:
36730         * lwlib/README:
36731         Adjust to renamed ChangeLog history files.
36732         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
36733         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
36734         Remove obsolete discussion of merging ChangeLog files.
36735         New section "Maintaining ChangeLog history".
36736         * build-aux/git-hooks/pre-commit:
36737         Reject attempts to commit files named 'ChangeLog'.
36738         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
36739         * make-dist: Make and distribute top-level ChangeLog if there's a
36740         .git directory.  Distribute the new ChangeLog history files
36741         instead of scattered ChangeLog files.  Distribute the new files
36742         gitlog-to-changelog and gitlog-to-emacslog.
36743         (Bug#19113)
36745         Rename ChangeLogs for gitlog-to-changelog
36746         This patch was implemented via the following shell commands:
36747         find * -name ChangeLog |
36748         sed 's,.*,git mv & &.1,
36749         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
36750         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
36751         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
36752         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
36753         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
36754         sh
36755         git commit -am"[this commit message]"
36757 This file records repository revisions from
36758 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
36759 2016-06-19d77d8dbd5b051bb681bacaee4a6faffbbdde9 (inclusive).
36760 2016-03-04a00c6cfb5f3cafbad92bd4584a0f50343a568 (inclusive).
36761 2016-02-15decb15e0496cec0c48d980c88a5a9d7cc00da (inclusive).
36762 2016-02-04b6d89ff9288a49099f041752908b5eb9613e (inclusive).
36763 commit ba1422e12f80ae1eb2aa9d0ce80c14e3ee4b3950 (inclusive).
36764 See ChangeLog.1 for earlier changes.
36766 ;; Local Variables:
36767 ;; coding: utf-8
36768 ;; End:
36770   Copyright (C) 2015-2016 Free Software Foundation, Inc.
36772   This file is part of GNU Emacs.
36774   GNU Emacs is free software: you can redistribute it and/or modify
36775   it under the terms of the GNU General Public License as published by
36776   the Free Software Foundation, either version 3 of the License, or
36777   (at your option) any later version.
36779   GNU Emacs is distributed in the hope that it will be useful,
36780   but WITHOUT ANY WARRANTY; without even the implied warranty of
36781   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
36782   GNU General Public License for more details.
36784   You should have received a copy of the GNU General Public License
36785   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.