Transform non-restrictive domains to punycode for display
[emacs.git] / ChangeLog.2
blob6d72663d56592dab08192f7b03c665d9a2c96e53
1 2015-12-27  Lars Ingebrigtsen  <larsi@gnus.org>
3         * shr.el (shr-descend): Allow using lambdas in external functions.
5 2015-12-25  Stefan Monnier  <monnier@iro.umontreal.ca>
7         * admin/gitmerge.el: Tweaks that seemed necessary
9         * admin/gitmerge.el (gitmerge-skip-regexp): Remove "sync".
10         (gitmerge-maybe-resume): Provide explicit empty commit message.
12 2015-12-25  Łukasz Stelmach  <stlman@poczta.fm>  (tiny change)
14         Use a different port for TLS erc
16         * lisp/erc/erc.el (erc-default-port-tls): New variable
17         (bug#19497).
18         * lisp/erc/erc.el (erc-tls): Use it.
20 2015-12-25  Alain Schneble  <a.s@realize.ch>
22         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
24         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
25         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
26         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
27         information in URL-struct.
28         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
29         path and query into nil path and query, respectively.
30         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
31         empty path into an absolute ("/") path.
32         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
33         fragment-only URIs. Do not just return them unchanged.
34         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
35         reference URI should not drop the last segment.
37 2015-12-25  Alain Schneble  <a.s@realize.ch>
39         Make relative URL parsing and resolution consistent with RFC 3986 (bug#22044)
41         * test/lisp/url/url-parse-tests.el: Add tests covering url-generic-parse-url.
42         * test/lisp/url/url-expand-tests.el: Add tests covering url-expand-file-name.
43         * lisp/url/url-parse.el (url-generic-parse-url): Keep empty fragment
44         information in URL-struct.
45         * lisp/url/url-parse.el (url-path-and-query): Do not artificially turn empty
46         path and query into nil path and query, respectively.
47         * lisp/url/url-expand.el (url-expander-remove-relative-links): Do not turn
48         empty path into an absolute ("/") path.
49         * lisp/url/url-expand.el (url-expand-file-name): Properly resolve
50         fragment-only URIs. Do not just return them unchanged.
51         * lisp/url/url-expand.el (url-default-expander): An empty path in the relative
52         reference URI should not drop the last segment.
54 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
56         Let url use default file modes when copying files
58         * lisp/url/url-handlers.el (url-copy-file): Use default file
59         modes when copying files (bug#11400).
61 2015-12-25  Devon Sean McCullough  <Emacs-Hacker2012@jovi.net>
63         Doc fix for url-http
65         * lisp/url/url-http.el (url-http): Document better return values
66           (bug#13187) (tiny change)
68 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
70         * eww.el (eww-display-html): Support <button> tags (bug#20485).
72 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
74         Made ffap-url-p a defun instead of a defsubst
76         * lisp/ffap.el (ffap-url-p): Change from defsusbt to defun,
77         since there doesn't seem to be much of a reason for it to be a
78         defsubst (bug#18203).
80 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
82         Add a command to view files in the browser to dired
84         * lisp/dired.el (dired-mode-map): Add the `W' command
85         (bug#18810).
87 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
89         Allow http://user:pass@foo/ URLs again
91         * lisp/url/url-auth.el (url-basic-auth): Allow explicit
92         user/passwords in URLs (bug#19046).
94 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
96         * eww.el (eww-mode-map): Fix command name of eww-toggle-colors.
98 2015-12-25  Samer Masterson  <samer@samertm.com>
100         Autoload url-insert-buffer-contents
102         * lisp/url/url-handlers.el: Add autoload cookie so that
103         `package-list-packages' doesn't bug out (bug#21927) (tiny change)
105 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
107         Allow toggling colors in eww
109         * doc/misc/eww.texi (Basics): Mention "C".
111         * lisp/net/eww.el (eww-toggle-colors): New command and keystroke.
113         * lisp/net/shr.el (shr-use-colors): New variable.
114         (shr-colorize-region): Use it.
116 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
118         Follow meta refresh tags in eww
120         * eww.el (eww-tag-meta): Follow meta refresh tags (bug#22234).
122 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
124         More eww file name coding fixes
126         * eww.el (eww-decode-url-file-name): Use the base coding
127         system to check for encodability.
129 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
131         Always save eww history
133         * eww.el (eww-setup-buffer): Always save history, even when
134         called from outside the eww buffer (bug#19638).
136 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
138         Default web pages to right-to-left
140         * eww.el (eww-mode): Most web pages are left-to-right, so make
141         that the default (bug#19801).
143         * shr.el (shr-tag-html): Respect "dir" attributes
144         (left-to-right, right-to-left).
146 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
148         Make toggling checkboxes work again
150         * eww.el (eww-update-field): Make toggling checkboxes work
151         again (bug#21881).
153 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
155         Don't store cookies with empty names
157         * lisp/url/url-cookie.el (url-cookie-store): Refuse to store
158         cookies with empty names (bug#21936).
160 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
162         Stop rendering HTML before specdlr exhaustion
164         Fixes: 22117
166         * shr.el (shr-descend): Stop rendering before we run out of
167         specpdl room (bug#22117).
169 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
171         Use cl-reduce, not reduce.
173 2015-12-25  Lars Ingebrigtsen  <larsi@gnus.org>
175         Allow several <tbody> tags in shr
177         * shr.el (shr-table-body): New function to find the real body
178         of a table.
179         (shr-tag-table): Use it to render several <tbody> tags in a
180         table (bug#22170).
182 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
184         Make prettier unique file names in eww
186         (eww-make-unique-file-name): Make unique file names by making
187         files like foo(2).jpg instead of foo(1)(2).jpg.
189 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
191         Decode hex-encoded URLs before using them as file names
193         * eww.el (eww-decode-url-file-name): New function.
194         (eww-download-callback): Use it to decode file names before
195         saving them.
197 2015-12-24  Ashish SHUKLA  <ashish.is@lostca.se>
199         Add FreeBSD cert bundle
201         * doc/misc/emacs-gnutls.texi (Help For Users): Document
202         FreeBSD bundle.
204         * lisp/net/gnutls.el (gnutls-trustfiles): Add FreeBSD cert bundle.
206 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
208         Allow overriding shr functions from eww
210         * eww.el (eww-display-html): Allow overriding elements in
211         `shr-external-rendering-functions'.
213 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
215         Ignore invalid SVG images
217         * shr.el (shr-tag-svg): Ignore SVG images that have no width
218         or height, because these can't be displayed by ImageMagick,
219         anyway.
221 2015-12-24  Lars Ingebrigtsen  <larsi@gnus.org>
223         shr table rendering fix
225         * shr.el (shr-tag-table): Allow rendering body-less tables
226         that have headers.
228 2015-12-22  Sam Steingold  <sds@gnu.org>
230         clipboard should still work even if interprogram-* is disabled
232         (clipboard-yank): When `interprogram-cut-function' is nil,
233         bind it to `gui-selection-value' - the default value.
234         (clipboard-kill-region, clipboard-kill-ring-save): When
235         `interprogram-paste-function' is nil, bind it to `gui-select-text' -
236         the default value.
238 2015-12-18  Phillip Lord  <phillip.lord@russet.org.uk>
240         Fix bootstrap issue with dired-loaddefs
242         * lisp/dired.el: Autoloads for secondary files loaded optionally.
244 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
246         dired generate autoloads to non-versioned file.
248         * lisp/dired.el: Remove autoloads.
249         * lisp/Makefile.in: Add dired to autogenel.
250         * lisp/dired-aux.el,lisp/dired-x.el: Update file local.
251         * test/lisp/dired-tests.el: Add new test.
253 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
255         eieio generate autoloads to non-versioned file.
257         * lisp/Makefile.in: eieio-loaddefs add to autogenel.
258         * lisp/emacs-lisp/eieio.el,lisp/emacs-lisp/eieio-core.el:
259           Remove autoloads.
260         * lisp/emacs-lisp/eieio-compat.el,lisp/emacs-lisp/eieio-custom.el,
261           lisp/emacs-lisp/eieio-opt.el: Update file local.
262         * test/lisp/emacs-lisp/eieio-tests/eieio-tests.el: New test.
264 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
266         htmlfontify generate autoload to non-versioned file.
268         * lisp/Makefile.in: Add htmlfontity-loaddefs to autogenel.
269         * lisp/hfy-cmap.el: Update file local.
270         * lisp/htmlfontify.el: Remove autoloads, add require.
271         * test/lisp/htmlfontify-tests.el: Test autoload functionality.
273 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
275         ibuffer generate autoloads to non-versioned file.
277         * lisp/Makefile.in: Add ibuffer-loaddefs to autogenel.
278         * lisp/ibuf-ext.el: Update file local.
279         * lisp/ibuffer.el: Remove autoloads and add a require.
280         * test/lisp/ibuffer-tests.el: Test that autoload is working.
282 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
284         rmail generate autoloads to non-versioned file.
286         * lisp/Makefile.in: Add rmail-loaddefs.el to autogenel.
287         * lisp/mail/rmail.el: Remove autoloads, add require.
288         * lisp/mail/rmailedit.el,lisp/mail/rmailkwd.el,
289           lisp/mail/rmailmm.el,lisp/mail/rmailmsc.el,
290           lisp/mail/rmailsort.el,lisp/mail/rmailsum.el,
291           lisp/mail/undigest.el: Update file-local.
292         * test/lisp/mail/rmail-tests.el:
294 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
296         Add autoload-force target.
298         * lisp/Makefile.in (autoload-force): New target.
300 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
302         ps-print generate autoloads to non versioned file.
304         * lisp/Makefile.in: Add ps-print-loaddefs.el to autogen list.
305         * lisp/ps-print.el: Remove autoloads.
306         * lisp/ps-mule.el: Update file-local.
307         * test/lisp/ps-print-tests.el: Test autoload functionality.
309 2015-12-17  Phillip Lord  <phillip.lord@russet.org.uk>
311         reftex generate autoloads to non versioned file.
313         * lisp/Makefile.in: Add reftex-loaddefs to autogen files
314         * lisp/textmodes/reftex.el: Remove autoloads.
315         * lisp/textmodes/reftex-auc.el,lisp/textmodes/reftex-cite.el,
316           lisp/textmodes/reftex-dcr.el,lisp/textmodes/reftex-global.el,
317           lisp/textmodes/reftex-index.el,lisp/textmodes/reftex-parse.el,
318           lisp/textmodes/reftex-ref.el,lisp/textmodes/reftex-sel.el,
319           lisp/textmodes/reftex-toc.el: Update autoload file-local.
320         * test/lisp/textmodes/reftex-tests.el: Add test of an autoloaded
321           function.
323 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
325         * lisp/calculator.el (calculator-define-key): Undo last change
327         Make map argument mandatory instead (bug#22106).
328         (calculator-add-operators): Pass the argument that's not optional any more.
330 2015-12-03  Glenn Morris  <rgm@gnu.org>
332         * Makefile.in: Avoid duplication.
334         (have-tests): New rule.
335         (check, check-maybe): Use it.
337 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
339         make check unconditional, check-maybe top-level.
341          * Makefile.in: Add check-maybe target.
342          * test/Makefile.in: Restore unconditional behaviour to make check.
344 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
346         Tests now support out-of-source-build.
348          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
349            about current working directory.
351 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
353         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
355 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
357         Improve documentation and clean up.
359          * test/Makefile.in: Improve documentation, use EMACS variable
360            correctly, and clean up makefile rules.
362 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
364         Update file headers for name change.
366          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
368 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
370         Test files renamed to new scheme.
372          * (finalizer-tests.el): Now renamed alloc-tests.el
373          * (zlib-tests.el): Now renamed decompress-tests.el.
375 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
377         Tests now depend on source files
379          * test/Makefile.in: Include dependences from tests to source files.
380          * test/make-test-deps.emacs-lisp: New file
381          * .gitignore: Ignore generated make include file
383 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
385         * lisp/progmodes/which-func.el: Improve disabling the mode
387         Use lexical-binding.
388         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
389         (which-func, which-func-format): Remove redundant :group arg.
390         (which-func-try-to-enable): New function.
391         (which-func-ff-hook, which-function-mode): Use it.
392         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
393         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
395 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
397         * lisp/calculator.el (calculator-define-key): Silence warning
399         ...about unknown calculator-mode-map.
401 2015-11-29  Eli Barzilay  <eli@barzilay.org>
403         * lisp/calculator.el: more improvements and bugfixes.
405         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
406           effect anyway.)
408         - Simplify `calculator-number-to-string' by throwing most of the work
409           onto `number-to-string', leaving just some tweaks for decimal inputs.
410           This leads to some minor changes, for example, pasting "1x1" in hex
411           mode would warn that "x" is ignored and result in "11" (and it wasn't
412           done in decimal mode), whereas now it just ignores everything from the
413           "x" and on and result in a "1" just like in decimal input mode.  Also,
414           overflows are left for `number-to-string' to deal with.
416         - `calculator-paste' is very simple as a result.
418         - Extend the simplified `calculator-paste': with a prefix argument it
419           pastes a string as if the characters were entered.  This can be used
420           to reduce expressions, but note that it's a simple literal operation,
421           so precedence can be messed, a number can be paster while entering a
422           number, spaces and newlines matter, etc.
424         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
425           operator.
427         - Fix a bug in `calculator-put-value': avoid grouping in the display
428           that is used to construct `calculator-curnum'.  This would trigger
429           when pasting or getting a value from a register in some radix mode
430           with a large enough value.  Another fix: make the output radix equal
431           the input one, otherwise numbers could be converted twice.
433 2015-11-29  Eli Barzilay  <eli@barzilay.org>
435         * lisp/calculator.el: Re-do key bindings.
437         Use a helper function that arranges a parent keymap that binds alternate
438         case keys so if some letter key is unbound and it's un/shifted version
439         is, it will get used.  This makes the global-map trickery unnecessary.
441         Also switch to passing strings that name keys through `kbd'.
443 2015-11-29  Eli Barzilay  <eli@barzilay.org>
445         * lisp/calculator.el: improve radix modes
447         Fix prompt for some input radix with decimal output (eg, "BD" instead of
448         the incorrect "B="); also, some minor docstring tweaks for these.
450 2015-11-29  Eli Barzilay  <eli@barzilay.org>
452         * lisp/calculator.el: better reading of register names
454         Use `register-read-with-preview' with a dynamically bound
455         `register-alist' and a proper preview function to read register names.
457 2015-11-29  Eli Barzilay  <eli@barzilay.org>
459         * lisp/calculator.el: General improvements
461         Use things like `when', `unless', and `push'.
463         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
464         non-electric mode.
466 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
468         Fix a problem with gfilenotify in filenotify-tests.el
470         * test/lisp/filenotify-tests.el
471         (file-notify--test-expected-events): Remove.
472         (file-notify--test-cleanup): Do not set that variable.
473         (file-notify--test-with-events): EVENTS can also be a list of lists.
474         (file-notify-test02-events, file-notify-test04-file-validity):
475         Adapt expected result.
477 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
479         * .gitignore: Adjust to changes in 'test' directory structure.
481 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
483         Fix test/manual/etags/Makefile
485         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
486         changes in 'test' directory structure.
488 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
490         Exclude resource dirs from search for tests.
492         * test/Makefile.in: Test file locations are now found with find
493           rather than using finds native functions.
495 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
497         Add test targets without directory names.
499          * (test/Makefile.in): Extend test_template to add two targets for each
500            file.
502 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
504         * lisp/emacs-lisp/package.el: Require url-handlers
506 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
508         Move elisp-mode-tests to new function names.
510          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
511          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
513 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
515         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
517 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
519         Merge branch 'feature/standard-test-location'
521 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
523         * lisp/emacs-lisp/eieio.el: Add some default implementations
525         (standard-class): Mark it obsolete.
526         (slot-missing): Give it a default implementation.
527         (destructor): Simplify and mark it obsolete.
528         (object-print): Give it a default implementation.
529         (eieio-change-class): Rename from change-class.
530         (change-class): Redefine as obsolete alias.
532 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
534         Some final fixes in file notification before merging with master
536         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
537         (file-notify-callback): Improve check for `stopped' event.  Call
538         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
539         (file-notify-add-watch): In case FILE is not a directory, call the
540         file monitor for the kqueue backend.  Otherwise, call the
541         directory monitor for the upper directory.
543         * src/inotify.c (inotifyevent_to_event): Extract file name from
544         watch_object if the event doesn't provide it.
545         (Finotify_add_watch): Add file name to watch_object.
547         * test/automated/file-notify-tests.el (file-notify--test-timeout):
548         Use different timeouts for different libraries.
549         (file-notify--test-with-events): Suppress lock files.  Flush
550         outstanding events before running the body.
551         (file-notify-test02-events, file-notify-test04-file-validity): Do
552         not skip cygwin tests.  Add additional test for file creation.
553         Adapt expected result for different backends.
554         (file-notify-test03-autorevert): Some of the tests don't work for
555         w32notify.
556         (file-notify-test06-many-events): Rename into both directions.
558 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
560         Rework file notifications, kqueue has problems with directory monitors
562         * lisp/filenotify.el (file-notify-add-watch): Call the native
563         add-watch function on the file, not on the dir.
565         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
566         about already deleted entries.
568         * test/automated/auto-revert-tests.el
569         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
570         since this deletes the target file first.
572         * test/automated/file-notify-tests.el (file-notify--test-event-test):
573         Make stronger checks.
574         (file-notify-test01-add-watch, file-notify-test02-events)
575         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
576         Rewrite in order to call file monitors but directory monitors.
577         (file-notify-test06-many-events): Ler rename work in both directions.
579 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
581         Continue with pending events
583         * src/kqueue.c (pending_events): Remove global variable.
584         (kqueue_compare_dir_list): Create `write' event for not used
585         pending events.
586         (globals_of_kqueue): Remove initialization of pending_events.
588 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
590         Improve loops in file-notify-test06-many-events
592         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
593         Use `read-event' pauses for the `write-file' loops; otherwise
594         events are lost in inotify and gfilenotify cases.
596 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
598         Handle more complex rename operation in kqueue
600         * src/kqueue.c (pending_events): New variable.
601         (kqueue_compare_dir_list): Handle more complex rename operation.
602         (globals_of_kqueue): Initialize pending_events.
604         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
605         Adapt expected events in the `rename-file' case.
606         (file-notify-test06-many-events-remote): Declare.
608 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
610         New test with a larger number of events
612         * test/automated/file-notify-tests.el (file-notify--test-with-events):
613         Make timeout heuristically depend on the number of events.
615         (file-notify-test06-many-events): Use it for new test.
617 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
619         Further fixes for kqueue
621         * lisp/filenotify.el (file-notify-callback): Raise also event if
622         directory name matches.
623         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
625         * src/kqueue.c (kqueue_generate_event): Use watch_object as
626         argument instead of ident.  Remove callback argument.  Adapt
627         callees.  Check actions whether they are monitored flags.
629         * test/automated/file-notify-tests.el (file-notify--test-library):
630         New defun.
631         (file-notify-test00-availability, file-notify-test02-events)
632         (file-notify-test04-file-validity)
633         (file-notify-test05-dir-validity): Use it.
634         (file-notify-test02-events, file-notify-test04-file-validity): Add
635         `read-event' calls between different file actions, in order to
636         give the backends a chance to rais an event.  Needed especially
637         for kqueue.  In case of deleting a directory, there are two
638         `deleted' events.
640 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
642         Code cleanup of kqueue.c
644         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
645         (kqueue_compare_dir_list): Do not loop when calling
646         directory_files_internal.  Remove checks for "." and "..", this is
647         done in kqueue_directory_listing now.
648         (Fkqueue_add_watch): Check for proper emacs_open flags.
650 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
652         Doc changes for kqueue
654         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
655         Fix some glitches in the example.
657 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
659         Finish implementation in kqueue.c
661         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
662         Simplify access to list.
663         (kqueue_compare_dir_list): Simplify access to list.  Raise
664         `delete' event if directory does not exist any longer.  Otherwise,
665         wait until directory contents has changed.  Fix error in check.
667 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
669         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
671 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
673         More work on kqueue
675         * lisp/filenotify.el (file-notify-callback): Handle also the
676         `rename' event from kqueue.
677         (file-notify-add-watch): Do not register an entry twice.
679         * src/kqueue.c (kqueue_directory_listing): New function.
680         (kqueue_generate_event): New argument FILE1.  Adapt callees.
681         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
683 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
685         Implement directory events
687         * lisp/filenotify.el (file-notify-handle-event)
688         (file-notify-callback): Remove traces.
690         * src/kqueue.c: Include <sys/time.h>.
691         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
692         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
693         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
694         Compute initial directory listing.  Close file descriptor in case
695         of errors.
696         (syms_of_kqueue): Declare Qcreate.
698 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
700         Build fixes for kqueue support
702         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
703         flag.
705         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
706         kqueue on *BSD.
708 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
710         Continue kqueue implementation
712         * lisp/filenotify.el (file-notify-handle-event)
713         (file-notify-callback): Enable trace messages.
715         * src/kqueue.c: Include also <sys/types.h>.
716         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
717         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
718         (syms_of_kqueue): Add them.
720 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
722         Work on kqueue
724         * lisp/filenotify.el (file-notify--library)
725         (file-notify-descriptors, file-notify-callback)
726         (file-notify-add-watch, file-notify-rm-watch)
727         (file-notify-valid-p): Add kqueue support.
729         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
731 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
733         Add kqueue support
735         * configure.ac (--with-file-notification): Add kqueue.
736         (top): Remove special test for "${HAVE_NS}" and
737         ${with_file_notification}, this is handled inside gfilenotify
738         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
739         instead of library specific variables.
741         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
743         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
745         * src/kqueue.c: New file.
747         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
749 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
751         Update elisp-mode-tests for changed file location.
753          * test/lisp/progmodes/elisp-mode-tests.el:
755 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
757         Exclude manual tests from Makefile
759          * test/Makefile.in:
761 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
763         Move package test files to new directory.
765          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
766          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
768 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
770         Restore delete Makefiles and fix .gitignore.
772          * .gitignore: Update Makefiles to changed locations
773          * test/lisp/progmodes/flymake-resources/Makefile,
774            test/manual/etags/Makefile,
775            test/manual/etags/make-src/Makefile,
776            test/manual/indent/Makefile: Restored and moved to new location.
778 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
780         Test infrastructure: updates after directory move
782          * (test/Makefile.in): Support directories several levels deep.
783          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
784          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
786 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
788         Rename all test files to reflect source layout.
790          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
791            test directory moves.
792          * test/file-organisation.org: New file.
793          * test/automated/Makefile.in
794            test/automated/data/decompress/foo.gz
795            test/automated/data/epg/pubkey.asc
796            test/automated/data/epg/seckey.asc
797            test/automated/data/files-bug18141.el.gz
798            test/automated/data/flymake/test.c
799            test/automated/data/flymake/test.pl
800            test/automated/data/package/archive-contents
801            test/automated/data/package/key.pub
802            test/automated/data/package/key.sec
803            test/automated/data/package/multi-file-0.2.3.tar
804            test/automated/data/package/multi-file-readme.txt
805            test/automated/data/package/newer-versions/archive-contents
806            test/automated/data/package/newer-versions/new-pkg-1.0.el
807            test/automated/data/package/newer-versions/simple-single-1.4.el
808            test/automated/data/package/package-test-server.py
809            test/automated/data/package/signed/archive-contents
810            test/automated/data/package/signed/archive-contents.sig
811            test/automated/data/package/signed/signed-bad-1.0.el
812            test/automated/data/package/signed/signed-bad-1.0.el.sig
813            test/automated/data/package/signed/signed-good-1.0.el
814            test/automated/data/package/signed/signed-good-1.0.el.sig
815            test/automated/data/package/simple-depend-1.0.el
816            test/automated/data/package/simple-single-1.3.el
817            test/automated/data/package/simple-single-readme.txt
818            test/automated/data/package/simple-two-depend-1.1.el
819            test/automated/abbrev-tests.el
820            test/automated/auto-revert-tests.el
821            test/automated/calc-tests.el
822            test/automated/icalendar-tests.el
823            test/automated/character-fold-tests.el
824            test/automated/comint-testsuite.el
825            test/automated/descr-text-test.el
826            test/automated/electric-tests.el
827            test/automated/cl-generic-tests.el
828            test/automated/cl-lib-tests.el
829            test/automated/eieio-test-methodinvoke.el
830            test/automated/eieio-test-persist.el
831            test/automated/eieio-tests.el
832            test/automated/ert-tests.el
833            test/automated/ert-x-tests.el
834            test/automated/generator-tests.el
835            test/automated/let-alist.el
836            test/automated/map-tests.el
837            test/automated/advice-tests.el
838            test/automated/package-test.el
839            test/automated/pcase-tests.el
840            test/automated/regexp-tests.el
841            test/automated/seq-tests.el
842            test/automated/subr-x-tests.el
843            test/automated/tabulated-list-test.el
844            test/automated/thunk-tests.el
845            test/automated/timer-tests.el
846            test/automated/epg-tests.el
847            test/automated/eshell.el
848            test/automated/faces-tests.el
849            test/automated/file-notify-tests.el
850            test/automated/auth-source-tests.el
851            test/automated/gnus-tests.el
852            test/automated/message-mode-tests.el
853            test/automated/help-fns.el
854            test/automated/imenu-test.el
855            test/automated/info-xref.el
856            test/automated/mule-util.el
857            test/automated/isearch-tests.el
858            test/automated/json-tests.el
859            test/automated/bytecomp-tests.el
860            test/automated/coding-tests.el
861            test/automated/core-elisp-tests.el
862            test/automated/decoder-tests.el
863            test/automated/files.el
864            test/automated/font-parse-tests.el
865            test/automated/lexbind-tests.el
866            test/automated/occur-tests.el
867            test/automated/process-tests.el
868            test/automated/syntax-tests.el
869            test/automated/textprop-tests.el
870            test/automated/undo-tests.el
871            test/automated/man-tests.el
872            test/automated/completion-tests.el
873            test/automated/dbus-tests.el
874            test/automated/newsticker-tests.el
875            test/automated/sasl-scram-rfc-tests.el
876            test/automated/tramp-tests.el
877            test/automated/obarray-tests.el
878            test/automated/compile-tests.el
879            test/automated/elisp-mode-tests.el
880            test/automated/f90.el
881            test/automated/flymake-tests.el
882            test/automated/python-tests.el
883            test/automated/ruby-mode-tests.el
884            test/automated/subword-tests.el
885            test/automated/replace-tests.el
886            test/automated/simple-test.el
887            test/automated/sort-tests.el
888            test/automated/subr-tests.el
889            test/automated/reftex-tests.el
890            test/automated/sgml-mode-tests.el
891            test/automated/tildify-tests.el
892            test/automated/thingatpt.el
893            test/automated/url-future-tests.el
894            test/automated/url-util-tests.el
895            test/automated/add-log-tests.el
896            test/automated/vc-bzr.el
897            test/automated/vc-tests.el
898            test/automated/xml-parse-tests.el
899            test/BidiCharacterTest.txt
900            test/biditest.el
901            test/cedet/cedet-utests.el
902            test/cedet/ede-tests.el
903            test/cedet/semantic-ia-utest.el
904            test/cedet/semantic-tests.el
905            test/cedet/semantic-utest-c.el
906            test/cedet/semantic-utest.el
907            test/cedet/srecode-tests.el
908            test/cedet/tests/test.c
909            test/cedet/tests/test.el
910            test/cedet/tests/test.make
911            test/cedet/tests/testdoublens.cpp
912            test/cedet/tests/testdoublens.hpp
913            test/cedet/tests/testfriends.cpp
914            test/cedet/tests/testjavacomp.java
915            test/cedet/tests/testnsp.cpp
916            test/cedet/tests/testpolymorph.cpp
917            test/cedet/tests/testspp.c
918            test/cedet/tests/testsppcomplete.c
919            test/cedet/tests/testsppreplace.c
920            test/cedet/tests/testsppreplaced.c
921            test/cedet/tests/testsubclass.cpp
922            test/cedet/tests/testsubclass.hh
923            test/cedet/tests/testtypedefs.cpp
924            test/cedet/tests/testvarnames.c
925            test/etags/CTAGS.good
926            test/etags/ETAGS.good_1
927            test/etags/ETAGS.good_2
928            test/etags/ETAGS.good_3
929            test/etags/ETAGS.good_4
930            test/etags/ETAGS.good_5
931            test/etags/ETAGS.good_6
932            test/etags/a-src/empty.zz
933            test/etags/a-src/empty.zz.gz
934            test/etags/ada-src/2ataspri.adb
935            test/etags/ada-src/2ataspri.ads
936            test/etags/ada-src/etags-test-for.ada
937            test/etags/ada-src/waroquiers.ada
938            test/etags/c-src/a/b/b.c
939            test/etags/c-src/abbrev.c
940            test/etags/c-src/c.c
941            test/etags/c-src/dostorture.c
942            test/etags/c-src/emacs/src/gmalloc.c
943            test/etags/c-src/emacs/src/keyboard.c
944            test/etags/c-src/emacs/src/lisp.h
945            test/etags/c-src/emacs/src/regex.h
946            test/etags/c-src/etags.c
947            test/etags/c-src/exit.c
948            test/etags/c-src/exit.strange_suffix
949            test/etags/c-src/fail.c
950            test/etags/c-src/getopt.h
951            test/etags/c-src/h.h
952            test/etags/c-src/machsyscalls.c
953            test/etags/c-src/machsyscalls.h
954            test/etags/c-src/sysdep.h
955            test/etags/c-src/tab.c
956            test/etags/c-src/torture.c
957            test/etags/cp-src/MDiagArray2.h
958            test/etags/cp-src/Range.h
959            test/etags/cp-src/burton.cpp
960            test/etags/cp-src/c.C
961            test/etags/cp-src/clheir.cpp.gz
962            test/etags/cp-src/clheir.hpp
963            test/etags/cp-src/conway.cpp
964            test/etags/cp-src/conway.hpp
965            test/etags/cp-src/fail.C
966            test/etags/cp-src/functions.cpp
967            test/etags/cp-src/screen.cpp
968            test/etags/cp-src/screen.hpp
969            test/etags/cp-src/x.cc
970            test/etags/el-src/TAGTEST.EL
971            test/etags/el-src/emacs/lisp/progmodes/etags.el
972            test/etags/erl-src/gs_dialog.erl
973            test/etags/f-src/entry.for
974            test/etags/f-src/entry.strange.gz
975            test/etags/f-src/entry.strange_suffix
976            test/etags/forth-src/test-forth.fth
977            test/etags/html-src/algrthms.html
978            test/etags/html-src/index.shtml
979            test/etags/html-src/software.html
980            test/etags/html-src/softwarelibero.html
981            test/etags/lua-src/allegro.lua
982            test/etags/objc-src/PackInsp.h
983            test/etags/objc-src/PackInsp.m
984            test/etags/objc-src/Subprocess.h
985            test/etags/objc-src/Subprocess.m
986            test/etags/objcpp-src/SimpleCalc.H
987            test/etags/objcpp-src/SimpleCalc.M
988            test/etags/pas-src/common.pas
989            test/etags/perl-src/htlmify-cystic
990            test/etags/perl-src/kai-test.pl
991            test/etags/perl-src/yagrip.pl
992            test/etags/php-src/lce_functions.php
993            test/etags/php-src/ptest.php
994            test/etags/php-src/sendmail.php
995            test/etags/prol-src/natded.prolog
996            test/etags/prol-src/ordsets.prolog
997            test/etags/ps-src/rfc1245.ps
998            test/etags/pyt-src/server.py
999            test/etags/tex-src/gzip.texi
1000            test/etags/tex-src/nonewline.tex
1001            test/etags/tex-src/testenv.tex
1002            test/etags/tex-src/texinfo.tex
1003            test/etags/y-src/atest.y
1004            test/etags/y-src/cccp.c
1005            test/etags/y-src/cccp.y
1006            test/etags/y-src/parse.c
1007            test/etags/y-src/parse.y
1008            test/indent/css-mode.css
1009            test/indent/js-indent-init-dynamic.js
1010            test/indent/js-indent-init-t.js
1011            test/indent/js-jsx.js
1012            test/indent/js.js
1013            test/indent/latex-mode.tex
1014            test/indent/modula2.mod
1015            test/indent/nxml.xml
1016            test/indent/octave.m
1017            test/indent/pascal.pas
1018            test/indent/perl.perl
1019            test/indent/prolog.prolog
1020            test/indent/ps-mode.ps
1021            test/indent/ruby.rb
1022            test/indent/scheme.scm
1023            test/indent/scss-mode.scss
1024            test/indent/sgml-mode-attribute.html
1025            test/indent/shell.rc
1026            test/indent/shell.sh
1027            test/redisplay-testsuite.el
1028            test/rmailmm.el
1029            test/automated/buffer-tests.el
1030            test/automated/cmds-tests.el
1031            test/automated/data-tests.el
1032            test/automated/finalizer-tests.el
1033            test/automated/fns-tests.el
1034            test/automated/inotify-test.el
1035            test/automated/keymap-tests.el
1036            test/automated/print-tests.el
1037            test/automated/libxml-tests.el
1038            test/automated/zlib-tests.el: Files Moved.
1040 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
1042         Rework file notifications, kqueue has problems with directory monitors
1044         * lisp/filenotify.el (file-notify-add-watch): Call the native
1045         add-watch function on the file, not on the dir.
1047         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
1048         about already deleted entries.
1050         * test/automated/auto-revert-tests.el
1051         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
1052         since this deletes the target file first.
1054         * test/automated/file-notify-tests.el (file-notify--test-event-test):
1055         Make stronger checks.
1056         (file-notify-test01-add-watch, file-notify-test02-events)
1057         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
1058         Rewrite in order to call file monitors but directory monitors.
1059         (file-notify-test06-many-events): Ler rename work in both directions.
1061 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
1063         Continie with pending events
1065         * src/kqueue.c (pending_events): Remove global variable.
1066         (kqueue_compare_dir_list): Create `write' event for not used
1067         pending events.
1068         (globals_of_kqueue): Remove initialization of pending_events.
1070 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
1072         Improve loops in file-notify-test06-many-events
1074         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
1075         Use `read-event' pauses for the `write-file' loops; otherwise
1076         events are lost in inotify and gfilenotify cases.
1078 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
1080         Handle more complex rename operation in kqueue
1082         * src/kqueue.c (pending_events): New variable.
1083         (kqueue_compare_dir_list): Handle more complex rename operation.
1084         (globals_of_kqueue): Initialize pending_events.
1086         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
1087         Adapt expected events in the `rename-file' case.
1088         (file-notify-test06-many-events-remote): Declare.
1090 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
1092         New test with a larger number of events.
1094         * test/automated/file-notify-tests.el (file-notify--test-with-events):
1095         Make timeout heuristically depend on the number of events.
1097         (file-notify-test06-many-events): Use it for new test.
1099 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
1101         Further fixes for kqueue.
1103         * lisp/filenotify.el (file-notify-callback): Raise also event if
1104         directory name matches.
1105         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
1107         * src/kqueue.c (kqueue_generate_event): Use watch_object as
1108         argument instead of ident.  Remove callback argument.  Adapt
1109         callees.  Check actions whether they are monitored flags.
1111         * test/automated/file-notify-tests.el (file-notify--test-library):
1112         New defun.
1113         (file-notify-test00-availability, file-notify-test02-events)
1114         (file-notify-test04-file-validity)
1115         (file-notify-test05-dir-validity): Use it.
1116         (file-notify-test02-events, file-notify-test04-file-validity): Add
1117         `read-event' calls between different file actions, in order to
1118         give the backends a chance to rais an event.  Needed especially
1119         for kqueue.  In case of deleting a directory, there are two
1120         `deleted' events.
1122 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
1124         Code cleanup of kqueue.c
1126         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
1127         (kqueue_compare_dir_list): Do not loop when calling
1128         directory_files_internal.  Remove checks for "." and "..", this is
1129         done in kqueue_directory_listing now.
1130         (Fkqueue_add_watch): Check for proper emacs_open flags.
1132 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
1134         Doc changes for kqueue
1136         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
1137         Fix some glitches in the example.
1139 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
1141         Finish implementation in kqueue.c
1143         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
1144         Simplify access to list.
1145         (kqueue_compare_dir_list): Simplify access to list.  Raise
1146         `delete' event if directory does not exist any longer.  Otherwise,
1147         wait until directory contents has changed.  Fix error in check.
1149 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
1151         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
1153 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
1155         More work on kqueue
1157         * lisp/filenotify.el (file-notify-callback): Handle also the
1158         `rename' event from kqueue.
1159         (file-notify-add-watch): Do not register an entry twice.
1161         * src/kqueue.c (kqueue_directory_listing): New function.
1162         (kqueue_generate_event): New argument FILE1.  Adapt callees.
1163         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
1165 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
1167         Implement directory events
1169         * lisp/filenotify.el (file-notify-handle-event)
1170         (file-notify-callback): Remove traces.
1172         * src/kqueue.c: Include <sys/time.h>.
1173         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
1174         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
1175         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
1176         Compute initial directory listing.  Close file descriptor in case
1177         of errors.
1178         (syms_of_kqueue): Declare Qcreate.
1180 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
1182         Build fixes for kqueue support.
1184         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
1185         flag.
1187         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
1188         kqueue on *BSD.
1190 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
1192         Continue kqueue implementation
1194         * lisp/filenotify.el (file-notify-handle-event)
1195         (file-notify-callback): Enable trace messages.
1197         * src/kqueue.c: Include also <sys/types.h>.
1198         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
1199         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
1200         (syms_of_kqueue): Add them.
1202 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
1204         Work on kqueue
1206         * lisp/filenotify.el (file-notify--library)
1207         (file-notify-descriptors, file-notify-callback)
1208         (file-notify-add-watch, file-notify-rm-watch)
1209         (file-notify-valid-p): Add kqueue support.
1211         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
1213 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
1215         Add kqueue support
1217         * configure.ac (--with-file-notification): Add kqueue.
1218         (top): Remove special test for "${HAVE_NS}" and
1219         ${with_file_notification}, this is handled inside gfilenotify
1220         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
1221         instead of library specific variables.
1223         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
1225         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
1227         * src/kqueue.c: New file.
1229         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
1231 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
1233         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
1235         * verilog-mode.el (verilog-save-font-no-change-functions):
1236         Commentary and fix pre-Emacs 21 behavior.
1238 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
1240         Use obarray functions from obarray.
1242         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
1243           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
1244           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
1245           delegate to obarray.el functions.
1246         * lisp/loadup.el: load obarray before abbrev
1247         * test/automated/abbrev-tests.el: new tests
1249 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
1251         epa.el: Add option to replace original text
1253         * lisp/epa.el (epa-replace-original-text): New user option.
1254         (Bug#21947)
1256 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
1258         Add interactive seek command.
1260         * lisp/mpc.el (mpc-cmd-seekcur): New function.
1261         (mpc-seek-current): New command.
1262         (mpc-mode-menu): Add entry for mpc-seek-current
1263         (mpc-mode-map): Bind mpc-seek-current to "g"
1265 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
1267         Fix issue where a new tempfile was created every refresh
1269         * lisp/mpc.el (mpc-format): Leave dir as relative path
1271 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
1273         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
1275         (c-save-buffer-state): Use with-silent-modifications when available.
1276         (c--macroexpand-all): Check macroexpand-all directly rather than
1277         c--mapcan-status.
1279 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
1281         * lisp/loadup.el: Set max-lisp-eval-depth here
1283         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
1284         (BYTE_COMPILE_FLAGS): Adjust accordingly.
1286 2015-11-17  João Távora  <joaotavora@gmail.com>
1288         Minor fix to comment indentation and typo in last commit
1290         * linum.el (linum-update-window): Fix comment indentation and a
1291         typo.
1293 2015-11-17  João Távora  <joaotavora@gmail.com>
1295         linum-mode plays more nicely with other margin-setting extensions
1297         linum.el will only modify the left margin if it needs to, and will
1298         only reset the it back to 0 if it guesses that no-one has touched that
1299         margin in the meantime.
1301         As such, this is a more of a workaround than an actual fix, but fixes
1302         the problems described in bug#20674 regarding the interaction with
1303         modes such as darkroom-mode and olivetti-mode.
1305         A similar fix was commited to nlinum.el in ELPA.git's
1306         e7f5f549fbfb740b911fb7f33b42381ecece56d8
1308         * linum.el (linum-delete-overlays): Restore margins more
1309         criteriously.
1310         (linum-update-window): Set margins more criteriously.
1312 2015-11-16  Daiki Ueno  <ueno@gnu.org>
1314         * lisp/image-mode.el: Support encrypted file
1316         (image-toggle-display-image): Read content from the buffer instead
1317         of the file, if the buffer holds a decrypted data.  (Bug#21870)
1319 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
1321         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
1323 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
1325         * lisp/emacs-lisp/package.el: Fix a decoding issue
1327         (package--with-response-buffer): Use `url-insert-buffer-contents'.
1328         The previous code had some issues with decoding. Refactoring that
1329         function allows us to use the decoding from url-handlers while still
1330         treating both sync and async requests the same.
1332         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
1333         `url-insert-buffer-contents'.
1334         (url-insert-buffer-contents): New function
1336 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
1338         * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
1340         (package--with-work-buffer-async): Reimplement as
1341         `package--with-response-buffer'.
1342         (package--with-work-buffer): Mark obsolete.
1343         (package--with-response-buffer): New macro. This is a more self
1344         contained and less contrived version of
1345         `package--with-work-buffer-async'.  It uses keyword arguments,
1346         doesn't have async on the name, doesn't fallback on
1347         `package--with-work-buffer', and has _much_ simpler error
1348         handling.
1350         (package--check-signature, package--download-one-archive)
1351         (package-install-from-archive, describe-package-1): Use it.
1353         (package--download-and-read-archives): Let
1354         `package--download-one-archive' take care of calling
1355         `package--update-downloads-in-progress'.
1357 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
1359         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
1361         (verilog-save-buffer-state): Use with-silent-modifications when available.
1362         (verilog-save-font-no-change-functions): Don't bind
1363         before/after-change-functions if it's not needed.
1365 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1367         * CONTRIBUTE: Remove information about feature freeze.
1369         Merge branch 'release-process-lowercase'
1371 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1373         Document the release process
1375         * admin/notes/versioning: Add information about RC releases.
1376         * admin/release-process: Document the release process.
1377         * admin/authors.el (authors-ignored-files):
1378         * admin/README: Change FOR-RELEASE to release-process.
1379         * CONTRIBUTE:
1380         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
1382 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1384         * admin/release-process: Rename from admin/FOR-RELEASE.
1386 2015-11-14  David Engster  <deng@randomsample.de>
1388         gitmerge: Fix git log command
1390         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
1391         only want commits from the branch that is to be merged.
1392         (gitmerge-setup-log-buffer): Use the same symmetric range as in
1393         `gitmerge-missing'.
1395 2015-11-14  David Engster  <deng@randomsample.de>
1397         gitmerge: Try to detect cherry-picks
1399         * admin/gitmerge.el (gitmerge-default-branch): Change to
1400         origin/emacs-25.
1401         (gitmerge-missing): Use symmetric difference ('...') between
1402         branch and master so that cherry-picks can be detected.
1404 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
1406         Increment Emacs version on master branch
1408         * lisp/cus-edit.el (customize-changed-options-previous-release):
1409         Increase previous version to 24.5.
1411         * configure.ac:
1412         * msdos/sed2v2.inp: Bump version to 25.1.50.
1414 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1416         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
1417         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
1418         * README: Mention CONTRIBUTE.
1420 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
1422         Update verilog-mode.el to 2015-11-09-b121d60-vpo
1424         * verilog-mode.el (verilog-auto, verilog-delete-auto)
1425         (verilog-modi-cache-results, verilog-save-buffer-state)
1426         (verilog-save-font-no-change-functions): When internally suppressing
1427         change functions, use `inhibit-modification-hooks' and call
1428         `after-change-funtions' to more nicely work with user hooks.
1429         Reported by Stefan Monnier.
1430         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
1431         Create `verilog-delete-auto-buffer' to avoid double-calling
1432         fontification hooks.
1433         (verilog-restore-buffer-modified-p, verilog-auto)
1434         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
1435         set-buffer-modified-p.  Reported by Stefan Monnier.
1436         (verilog-diff-auto, verilog-diff-buffers-p)
1437         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
1438         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
1439         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
1440         by Amol Nagapurkar.
1441         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
1442         properties inside internal structures.  No functional change
1443         intended.
1445 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1447         Use generic dispatch for xref backends
1449         * lisp/progmodes/xref.el (xref-backend-functions):
1450         New variable.
1451         (xref-find-function): Remove.
1452         (xref-find-backend)
1453         (xref--etags-backend): New functions.
1454         (xref-identifier-at-point-function)
1455         (xref-identifier-completion-table-function): Remove.
1456         (xref-backend-definitions, xref-backend-references)
1457         (xref-backend-apropos, xref-backend-identifier-at-point)
1458         (xref-backend-identifier-completion-table):
1459         New generic functions.
1461         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
1462         Add `elisp--xref-backend' to the beginning of
1463         `xref-backend-functions', locally.  Delete references to
1464         removed functions and vars.
1465         (elisp-xref-find): Remove.
1466         (elisp--xref-backend): New function.
1467         (elisp--xref-find-references, elisp--xref-find-apropos)
1468         (elisp--xref-identifier-completion-table):
1469         Turn into appropriately named generic methods.
1471         * lisp/progmodes/etags.el (etags-xref-find): Remove.
1472         (xref-backend-identifier-completion-table)
1473         (xref-backend-references, xref-backend-definitions)
1474         (xref-backend-apropos): New generic methods.
1476 2015-11-13  Juri Linkov  <juri@linkov.net>
1478         Support rectangular regions for more commands
1480         * lisp/simple.el (region-extract-function): Handle the arg
1481         value ‘bounds’.
1482         (region-insert-function): New function.
1483         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
1484         If non-nil, operate on multiple chunks.
1485         (region-noncontiguous-p): New function.
1487         * lisp/rect.el: Add function rectangle--insert-region
1488         around region-insert-function.
1489         (extract-rectangle-bounds): New function.
1490         (rectangle--extract-region): Handle the arg value ‘bounds’.
1491         (rectangle--insert-region): New function.
1493         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
1494         around region-insert-function.
1495         (cua--extract-rectangle-bounds): New function.
1496         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
1498         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
1499         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
1500         (query-replace-regexp-eval, map-query-replace-regexp)
1501         (replace-string, replace-regexp): Use ‘use-region-p’.
1502         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
1503         (perform-replace): Add arg ‘region-noncontiguous-p’.
1504         If non-nil, operate on multiple chunks.
1506         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
1507         If non-nil, operate on multiple chunks.  (Bug#19829)
1509 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1511         Handle multiple matches on the same line; add highlighting
1513         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
1514         column value in characters.
1515         (xref--collect-matches): Rename from `xref--collect-match'.
1516         Search for all matches in the hit line.  Add `highlight' face to
1517         the matched region in the summary.  Update both callers.
1519 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1521         Replace xref-match-bounds with xref-match-length
1523         Relying on xref-location-marker to point to the beginning of the match
1525         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
1526         (xref-match-length): Add.
1527         (xref-make-match): Change the arguments.
1528         (xref--match-buffer-bounds): Remove.
1529         (xref-match-item): Store length, instead of end-column.
1530         (xref-pulse-momentarily)
1531         (xref--collect-match)
1532         (xref--query-replace-1): Update accordingly.
1533         (xref-query-replace): Ditto.  And check that the search results
1534         are up-to-date.
1536 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1538         Merge from gnulib
1540         This incorporates:
1541         2015-11-13 xalloc-oversized: improve performance with GCC 5
1542         * lib/xalloc-oversized.h: Copy from gnulib.
1544 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1546         Spruce up ftfont.c memory allocation
1548         * src/ftfont.c (setup_otf_gstring):
1549         Avoid O(N**2) behavior when reallocating.
1550         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
1551         reallocating buffers; this simplifies the code.  Do not trust
1552         mflt_run to leave the output areas unchanged on failure, as
1553         this isn’t part of its interface spec.
1555 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1557         Port recent XCB changes to 64-bit ‘long int’
1559         For historical reasons, libX11 represents 32-bit values like Atoms as
1560         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
1561         do that, so adapt the recent XCB code to behave properly on 64-bit
1562         platforms.  Also, fix what appears to be a bug in the interpretation
1563         of xcb_get_property_value_length, at least on my Fedora platform
1564         which is running libxcb-1.11-5.fc21.
1565         * src/xfns.c (x_real_pos_and_offsets):
1566         * src/xterm.c (get_current_wm_state):
1567         xcb_get_property_value_length returns a byte count, not a word count.
1568         For 32-bit quantities, xcb_get_property_value returns a vector
1569         of 32-bit words, not of (possibly 64-bit) long int.
1571 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1573         * src/undo.c (run_undoable_change): Now static.
1575 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1577         Remove support for ':timeout' from w32 tray notifications
1579         * src/w32fns.c (Fw32_notification_notify): Delete the code that
1580         supports ':timeout'.
1581         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
1582         with dbusbind.c when D-Bus is compiled in.
1584         * doc/lispref/os.texi (Desktop Notifications): Don't mention
1585         ':timeout'.
1587 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1589         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
1590         (simple-test--transpositions): New macro.
1591         (simple-transpose-subr): New test.
1593 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1595         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
1597 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1599         * src/undo.c: Small fixes for previous change
1600         (run_undoable_change): Mark void argument list.
1601         (record_property_change): Remove unused variable `boundary'.
1603 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1605         Add a few more variables to redisplay--variables
1607         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
1608         and bidi-display-reordering to the list.
1610 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1612         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
1614 2015-11-13  Eli Barzilay  <eli@barzilay.org>
1616         Fix point positioning after transposing with negative arg
1618         * lisp/simple.el (transpose-subr): When invoked with a negative
1619         argument, move point to after the transposed text, like we do
1620         when invoked with a positive argument.  (Bug#21885)
1622 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1624         Fix last change in shr.el
1626         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
1627         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
1629 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1631         Fix last change
1633         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
1634         Don't DEFSYM tray notification symbols if D-Bus is being used.
1636 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1638         Another fix for MinGW64 and Cygwin builds due to notifications
1640         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
1641         being compiled into Emacs.
1642         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
1643         Sw32_notification_notify and Sw32_notification_close if the code
1644         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
1646 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1648         Remove intern calls and XXX comments from Fx_export_frames
1650         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
1651         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
1652         for consistency with image types.  Remove XXX comments.
1653         (syms_of_xfns) <Qpdf>: DEFSYM it.
1655 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
1657         shr: don't invoke unbound function (Bug#21895)
1659         * lisp/net/shr.el (have-fringes-p): New function.
1660         (shr-insert-document, shr-fill-text): Use it.
1662 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
1664         * test/automated/keymaps-test.el: Fix test to make it repeatable
1666         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
1667         entry to its initial value to make the test repeatable in interactive
1668         sessions (assuming it doesn't fail and crashes Emacs, of course).
1670 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
1672         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
1673         Small fix.
1675 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
1677         The heuristic that Emacs uses to add an `undo-boundary' has been
1678         reworked, as it interacts poorly with functions on `post-command-hook'
1679         or `after-change-functions'.
1681         * lisp/simple.el: New section added.
1682         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
1683         (self_insert_command): Calls simple.el to amalgamate.
1684         (delete_char): Calls simple.el to amalgamate.
1685         * src/keyboard.c (last_undo_boundary): Removed.
1686         * src/undo.c (run_undoable_change): New function.
1688 2015-11-12  Juri Linkov  <juri@linkov.net>
1690         Bind [?\S-\ ] to previous line command in Dired-like modes
1692         * lisp/arc-mode.el (archive-mode-map):
1693         * lisp/dired.el (dired-mode-map):
1694         * lisp/proced.el (proced-mode-map):
1695         * lisp/vc/vc-dir.el (vc-dir-mode-map):
1696         Bind [?\S-\ ] to previous line command.
1697         (Bug#20790)
1699 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
1701         Fix the MinGW64 and Cygwin-w32 builds
1703         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
1704         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
1705         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
1706         which cause trouble with MinGW42 headers.  Ifdef away tray
1707         notifications code for Cygwin.  Reported by Andy Moreton
1708         <andrewjmoreton@gmail.com>.
1710 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
1712         Enable sorting of JSON object keys when encoding
1714         * lisp/json.el (json-encoding-object-sort-predicate): New variable
1715         for specifying a sorting predicate for JSON objects during encoding.
1716         (json--plist-to-alist): New utility function.
1717         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
1718         are to be sorted.
1719         (json-encode-alist): Sort output by
1720         `json-encoding-object-sort-predicate, when set.
1721         (json-encode-plist): Re-use `json-encode-alist' when object keys are
1722         to be sorted.
1723         (json-pretty-print-buffer-ordered): New command to pretty print the
1724         buffer with object keys sorted alphabetically.
1725         (json-pretty-print-ordered): New command to pretty print the region
1726         with object keys sorted alphabetically.
1728         * test/automated/json-tests.el (test-json-plist-to-alist)
1729         (test-json-encode-plist, test-json-encode-hash-table)
1730         (test-json-encode-alist-with-sort-predicate)
1731         (test-json-encode-plist-with-sort-predicate): New tests.
1733         * etc/NEWS: Add an entry for the new commands.
1735 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
1737         * test/automated/keymap-tests.el: New test file.
1739 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1741         Speed up x_real_pos_and_offsets using XCB
1743         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
1744         all X calls, and pipeline requests when possible, collecting results
1745         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
1747 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1749         Enable use of XCB for checking window manager state
1751         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
1752         of XGetWindowProperty plus error-catching, since we can explicitly
1753         check for errors in the XCB version.  This eliminates 3 XSync calls on
1754         top of the round-trip actually fetching the information.
1756 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1758         Detect XCB and save a connection handle
1760         * configure.ac: If using X11, check for XCB libraries and header.
1761         * src/Makefile.in (XCB_LIBS): Define.
1762         (LIBX_EXTRA): Include it.
1764         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
1765         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
1766         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
1768 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1770         Reduce some data dependencies between X calls
1772         Gains nothing in the traditional-Xlib code, but more closely aligns
1773         with how the XCB version will work.
1775         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
1776         send coordinates (0,0) to the X server and add in the real coordinates
1777         after getting the response.  Move XGetGeometry for outer window inside
1778         error-trapping block.  Use DPY variable more, since it's available.
1780 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1782         Use color cache for creating bitmap
1784         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
1785         Set attributes to use the caching color allocator.  Initialize and
1786         free the cache.
1788 2015-11-12  Eli Barzilay  <eli@barzilay.org>
1790         Add "^" to the interactive specs of `dired-next/previous-line'
1792         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
1793         to bind these commands to the arrow keys, and that means that they work
1794         better with a "^" in the `interactive' declaration so selection works
1795         as expected.
1797 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1799         Sync with soap-client repository, version 3.0.2
1801         * soap-client.el: Bump version to 3.0.2.
1803         * soap-client.el (soap-warning): Use format, not format-message.
1805         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
1806         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
1808         * soap-client.el: Support Emacs versions that do not have
1809         define-error.
1811         * soap-inspect.el: Remove version header.
1813         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
1814         format.
1816 2015-11-11  Alan Mackenzie  <acm@muc.de>
1818         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start
1820         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
1821         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
1822         (c-guess-basic-syntax):
1823         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
1824         (c-get-fallback-scan-pos): "New" function (existed several years ago).
1825         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
1826         c-get-fallback-scan-pos.
1827         (c-parse-state-1): Handle 'BOD strategy.
1829         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
1830         (c-font-lock-fontify-region): Remove bindings of
1831         open-paren-in-column-0-is-defun-start to nil.
1833         * doc/misc/cc-mode.texi (Performance Issues)
1834         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
1836 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
1838         * lisp/obarray.el: Fix shadowed variables.
1839         (obarray-map, obarray-remove, obarray-put, obarray-get):
1840         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
1842 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
1844         Avoid error in submitting a form with EWW
1846         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
1847         CHUNK to be nil.  (Bug#21881)
1849 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1851         Rename seq-p and map-p to seqp and mapp
1853         * lisp/emacs-lisp/seq.el (seqp): New name.
1854         * lisp/emacs-lisp/map.el (mapp): New name.
1855         * doc/lispref/sequences.texi: Update the documentation for seqp.
1856         * test/automated/map-tests.el: Update the tests for mapp.
1858 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1860         Rename obarray-p to obarrayp
1862         * lisp/obarray.el (obarrayp): New name.
1863         * test/automated/obarray-tests.el: Update the tests.
1865 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1867         Rename obarray-foreach to obarray-map
1869         * lisp/obarray.el (obarray-map): New name.
1870         * test/automated/obarray-tests.el: Update the corresponding tests.
1872 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
1874         New file with obarray functions
1876         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
1877         * test/automated/obarray-tests.el: New file.
1879 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
1881         Implement tray notifications for MS-Windows
1883         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
1884         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
1885         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
1886         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
1887         (EMACS_NOTIFICATION_MSG): New macros.
1888         (NI_Severity): New enumeration.
1889         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
1890         (delete_tray_notification, Fw32_notification_notify)
1891         (Fw32_notification_close): New functions.
1892         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
1893         keywords used by w32-notification-notify.
1895         * doc/lispref/os.texi (Desktop Notifications): Describe the native
1896         w32 tray notifications.
1898 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
1900         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
1902         * lisp/net/tramp.el (tramp-handle-file-equal-p)
1903         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
1904         Harvey Chapman <hchapman@3gfp.com>.
1906         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
1907         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
1908         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
1909         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
1911 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
1913         * CONTRIBUTE: Encourage adding tests.
1915         Based on this post from John Wiegley:
1917           From: "John Wiegley" <johnw@newartisans.com>
1918           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
1919           To: Juanma Barranquero <lekktu@gmail.com>
1920           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
1921               emacs-devel <emacs-devel@gnu.org>
1922           Date: Wed, 28 Oct 2015 18:45:29 -0700
1923           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
1925           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
1927 2015-11-10  David Reitter  <david.reitter@gmail.com>
1929         Avoid creating notification objects when possible
1931         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
1932         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
1933         functions that do not require a notification object.  When needed,
1934         define NSWindowDidEnterFullScreenNotification to allow for compilation
1935         on OS X 10.6.8.
1937 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1939         Move INTEGER_TO_CONS body out of .h file
1941         * src/data.c (INTBIG_TO_LISP): New macro, with most
1942         of the contents of the old INTEGER_TO_CONS.
1943         (intbig_to_lisp, uintbig_to_lisp): New functions.
1944         * src/lisp.h (INTEGER_TO_CONS):
1945         Simplify by using EXPR_SIGNED and the new functions.
1946         This shrinks code size a bit, and makes it easier to
1947         put a breakpoint on handling of large integers.
1949 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1951         Merge from gnulib
1953         This incorporates:
1954         2015-11-10 intprops: new public macro EXPR_SIGNED
1955         2015-11-10 intprops: fix typo in clang port
1956         * lib/intprops.h: Copy from gnulib.
1958 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1960         Spelling fixes
1962         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
1963         Fix misspelling in output.
1965 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1967         * doc/lispref/variables.texi (Directory Local Variables):
1968         Document dir-locals wildcards.
1970         * lisp/files.el (dir-locals-file): Point to Info node.
1972         * doc/emacs/custom.texi (Directory Variables):
1973         Document dir-locals wildcards.
1975         * etc/NEWS: Document new functionality.
1977 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1979         * lisp/files.el: Don't allow customization of dir-locals sorting.
1980         In retrospect, this is not a good idea for the same reason that
1981         `dir-locals-file' is a defconst, because it is important that this
1982         behaviour be "uniform across different environments and users".
1983         Sure, the user can still change the sorting with a hack, but we
1984         shouldn't encourage them to change it.
1985         (dir-locals--all-files): Return list in the order returned by
1986         `file-expand-wildcards'.
1987         (file-expand-wildcards): Document the sorting predicate used.
1988         (dir-locals-sort-predicate): Delete variable.
1990 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1992         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
1994         * lisp/isearch.el (search-default-regexp-mode): Change default value.
1996 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1998         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
1999         `locate-dominating-file' will now keep looking if the files it finds in
2000         a given directory are unreadable (or not files).
2002 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
2004         * lisp/files.el (dir-locals-file): Allow wildcards.
2005         (dir-locals-find-file, dir-locals-collect-variables)
2006         (dir-locals-read-from-file): Update accordingly.
2007         (hack-dir-local-variables): Rename a local variable.
2009         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
2011         * lisp/help-fns.el (describe-variable): Update accordingly.
2013         * .gitignore: Add .dir-locals?.el.
2015 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
2017         * lisp/emacs-lisp/map.el (map-merge-with): New function.
2019         * test/automated/map-tests.el (test-map-merge-with): New test.
2021 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
2023         Fix some recently-perturbed bookmark autoloads
2025         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
2026         (bookmark-set): Restore autoload.
2027         (bookmark-set-no-overwrite): Add autoload.
2029         Thanks to Juanma Barranquero for noticing the autoload problems
2030         introduced by my recent commit adding/changing the above functions
2031         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
2033 2015-11-09  Noah Friedman  <friedman@splode.com>
2035         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
2036         the start of buffer.  I don't recall if older versions of gdb were
2037         less strict but you cannot dump a 0-length range in gdb 7.9.1.
2039 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
2041         * lisp/progmodes/project.el: Update Commentary.
2043         Merge branch 'project-next'
2045 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
2047         Fold `project-ask-user' into `project-current'
2049         * lisp/progmodes/project.el (project-find-functions):
2050         Remove `project-ask-user'.
2051         (project-ask-user): Remove function and the corresponding
2052         `project-roots' implementation.
2053         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
2054         user in case there's no project in the current directory.  Update
2055         all callers.
2057 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
2059         When VC detects a conflict, specify which file
2061         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
2062         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
2063         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
2064         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
2065         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
2066           to display a standard message that specifies the conflicted file.
2068         Before this change, the message VC used for indicating a conflicted
2069         file was just "There are unresolved conflicts in this file" without
2070         naming the file (and this language was duplicated in several places).
2071         After this change, it's "There are unresolved conflicts in file FOO"
2072         (and this language is now centralized in one function in vc.el).
2074         Justification: It's important for the message to name the conflicted
2075         file because the moment when VC realizes a file is conflicted does not
2076         always come interactively.  For example, some people automatically
2077         find a set of Org Mode files on startup, and may keep those .org files
2078         under version control.  If any of the files are conflicted, the user
2079         just sees some messages fly by, and might later check the "*Messages*"
2080         buffer to find out what files were conflicted.  I'm not saying this
2081         happened to me or anything; it's a purely hypothetical example.
2083 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
2085         Fix assertion violation in define-key
2087         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
2088         objects.  Reported by Drew Adams <drew.adams@oracle.com>
2089         and Juanma Barranquero <lekktu@gmail.com>.
2091 2015-11-09  Dima Kogan  <dima@secretsauce.net>
2093         Fix a memory leak in GC of font cache
2095         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
2096         entities if some of the fonts it references are marked.  This
2097         plugs a memory leak.  (Bug#21556)
2099 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
2101         Use INT_ADD_WRAPV etc. to check integer overflow
2103         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
2104         * src/buffer.c (record_overlay_string, overlay_strings):
2105         * src/casefiddle.c (casify_object):
2106         * src/ccl.c (Fccl_execute_on_string):
2107         * src/character.c (char_width, c_string_width, lisp_string_width)
2108         (count_size_as_multibyte, string_escape_byte8):
2109         * src/coding.c (coding_alloc_by_realloc, produce_chars):
2110         * src/data.c (arith_driver):
2111         * src/dispnew.c (realloc_glyph_pool, init_display):
2112         * src/editfns.c (styled_format):
2113         * src/fns.c (Ffillarray):
2114         * src/ftfont.c (ftfont_shape_by_flt):
2115         * src/gnutls.c (gnutls_hex_string):
2116         * src/gtkutil.c (get_utf8_string):
2117         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
2118         * src/keymap.c (Fkey_description):
2119         * src/lisp.h (SAFE_ALLOCA_LISP):
2120         * src/term.c (encode_terminal_code):
2121         * src/tparam.c (tparam1):
2122         * src/xselect.c (x_property_data_to_lisp):
2123         * src/xsmfns.c (smc_save_yourself_CB):
2124         * src/xterm.c (x_term_init):
2125         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
2126         more-complicated code involving division and/or
2127         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
2128         subtraction and/or INT_ADD_OVERFLOW.
2129         * src/casefiddle.c (casify_object): Simplify multibyte size check.
2130         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
2131         * src/data.c (arith_driver): Also check for division overflow,
2132         as that’s now possible given that the accumulator can now contain
2133         any Emacs integer.
2134         * src/lisp.h (lisp_word_count): Remove; no longer used.
2136 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
2138         Make sure that the ignore file exists
2140         * lisp/vc/vc.el (vc-default-ignore-completion-table):
2141         Make sure that the ignore file exists.
2143 2015-11-08  Michael Sperber  <mike@xemacs.org>
2145         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
2146         `gnus-summary-delete-article` in a way that also works on XEmacs.
2148 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
2150         Add support for retrieving paths to JSON elements
2152         Add support for retrieving the path to a JSON element. This can for
2153         instance be useful to retrieve paths in deeply nested JSON
2154         structures.
2156         * lisp/json.el (json-pre-element-read-function)
2157         (json-post-element-read-function): New variables to hold pre- and post
2158         read callback functions for `json-read-array' and `json-read-object'.
2159         (json--path): New variable used internally by `json-path-to-position'.
2160         (json--record-path, json--check-position): New functions used
2161         internally by `json-path-to-position'.
2162         (json-path-to-position): New function for retrieving the path to a
2163         JSON element at a given position.
2164         (json-read-object, json-read-array): Call
2165         `json-pre-element-read-function' and `json-post-element-read-function'
2166         when set.
2168         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
2169         (test-json-path-to-position-with-arrays)
2170         (test-json-path-to-position-no-match): New tests for
2171         `json-path-to-position'.
2173 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
2175         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
2177         This really should been part of my previous commit
2178         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
2180 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
2182         Offer non-overwrite bookmark setter (Bug#15746)
2184         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
2185         what `bookmark-set' used to do, but with more choices for overwrite
2186         vs push, and with minor changes to the interactive prompt format.
2187         (bookmark-set): Rewrite as wrapper around above.
2188         If overwriting, inform the user of that in the prompt.
2189         (bookmark-set-no-overwrite): New function, also done as wrapper.
2190         Bind to "M" in `ctl-x-r-map' autoloads.
2191         (bookmark-map): Similarly bind "M" here.
2193 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2195         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
2197 2015-11-08  Alan Modra  <amodra@gmail.com>
2199         ELF unexec: Don't insert a new section
2201         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
2202         don't need to mess with symbol st_shndx, or section sh_link and
2203         sh_info.
2205         This does lead to eu-elflint complaints about symbols defined in .bss
2206         with a needed version, because normally it is undefined symbols that
2207         have needed versions;  Defined symbols have version definitions.
2208         The exception is symbols defined by the linker in .dynbss for
2209         variables copied from a shared library in order to avoid text
2210         relocations, with copy relocs to copy their initial values from the
2211         shared library.  These symbols are both defined and have needed
2212         versions, and eu-elflink only expects to see them in SHT_NOBITS
2213         sections.  Of course there is no real problem with having such symbols
2214         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
2216         * src/unexelf.c: Delete outdated comments.
2217         (PATCH_INDEX): Delete.
2218         (find_section): Delete.
2219         (unexec): Don't add a new section.  Instead reuse the last bss
2220         section, extending it to cover dumped data.  Make bss sections
2221         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
2222         st_shndx.  Rename bss sections.
2224 2015-11-08  Alan Modra  <amodra@gmail.com>
2226         ELF unexec: Drive from PT_LOAD header rather than sections
2228         This rewrites bss handling in the ELF unexec code.  Finding bss
2229         sections by name results in complicated code that
2230         - does not account for all names of possible bss sections,
2231         - assumes specific ordering of bss sections,
2232         - can wrongly choose a SHT_NOBITS section not in the bss segment,
2233         - incorrectly calculates bss size (no accounting for alignment gaps),
2234         - assumes .data and .bss are in the same segment.
2236         All of these problems and more are solved by finding the bss segment
2237         in PT_LOAD headers, ie. the address range included in p_memsz but not
2238         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
2239         in that address range.
2241         * src/unexelf.c: Delete old ppc comment.
2242         (OLD_PROGRAM_H): Define.
2243         (round_up): Delete.
2244         (unexec): Don't search for bss style sections by name.  Instead,
2245         use the last PT_LOAD header address range covered by p_memsz
2246         but not p_filesz and match any SHT_NOBITS section in that
2247         address range.  Simplify initialisation of section header vars.
2248         Don't assume that section headers are above bss segment.  Move
2249         copying of bss area out of section loop.  Align .data2 section
2250         to 1, since it now covers the entire bss area.  For SHT_NOBITS
2251         sections in the bss segment, leave sh_addr and sh_addralign
2252         unchanged, but correct sh_offset.  Clear memory corresponding
2253         to SHT_NOBITS .plt section.  Delete comment and hacks for
2254         sections partly overlapping bss range now that the full range
2255         is properly calculated.  Delete now dead .sbss code.
2256         (Bug#20614)
2258 2015-11-08  Alan Modra  <amodra@gmail.com>
2260         ELF unexec: R_*_NONE relocs
2262         These should be ignored on all targets.
2264         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
2265         not just Alpha.  Comment on reloc size assumption.
2267 2015-11-08  Alan Modra  <amodra@gmail.com>
2269         ELF unexec: _OBJC_ symbols in bss sections
2271         This code assumed that there was only one bss section.  Rather than
2272         checking for a particular index, check the section type.  Also, handle
2273         the possibility that the section was SHT_NOBITS originally and is
2274         unchanged, in which case no clearing is needed (and sh_offset isn't
2275         necessarily valid, which can lead to a wild memset).
2277         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
2278         bss sections.
2280 2015-11-08  Alan Modra  <amodra@gmail.com>
2282         ELF unexec: Symbol table patching
2284         No st_shndx value larger than SHN_LORESERVE should be changed.
2285         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
2286         SHN_LORESERVE.  Error on SHN_XINDEX.
2288 2015-11-08  Alan Modra  <amodra@gmail.com>
2290         ELF unexec: Merge Alpha and MIPS COFF debug handling
2292         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
2293         Don't find .mdebug section index, find the section in the loop.
2294         Allow for unlikely possibility that .mdebug is located at sh_offset
2295         before bss segment, by calculating move from difference in
2296         sh_offset rather than just assuming new_data2_size.  Simplify
2297         cbLineOffset handling.
2299 2015-11-08  Alan Modra  <amodra@gmail.com>
2301         ELF unexec: Tidy code
2303         Separate out some of the more mechanical changes so following patches
2304         are smaller.
2306         * src/unexelf.c (unexec): Rearrange initialisation of program
2307         header vars.  Use pointer vars in loops rather than indexing
2308         section header array via macros.  Simplify _OBJC_ sym code
2309         and reloc handling code.
2311 2015-11-08  Alan Modra  <amodra@gmail.com>
2313         ELF unexec: Correct section header index
2315         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
2316         it should have been using "NEW_SECTION_H (nn)" to find the name of the
2317         section currently being processed.  Of course, before the bss
2318         sections, n and nn have the same value, so this doesn't matter except
2319         in the case of .sbss.  For .sbss this probably meant .bss (most likely
2320         the next section) was copied from memory.  A later patch removes the
2321         bogus .sbss handling anyway.
2323         * src/unexelf.c (unexec): Use correct index to look up names.
2325 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
2327         Fix Bug#21841
2329         * lisp/filenotify.el (file-notify--rm-descriptor):
2330         Use `descriptor' instead of computing its value.
2331         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
2332         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
2333         (Bug#21841)
2335 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
2337         Remove dirs in vc project roots from the the vc project library roots
2339         * lisp/progmodes/project.el (project-library-roots):
2340         Remove directories inside the project roots from the result.
2341         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
2343 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
2345         Move and rename xref-find-regexp to the project package
2347         * lisp/progmodes/project.el (project-find-regexp)
2348         (project--read-regexp)
2349         (project--find-regexp-in): New functions.
2351         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
2352         xref--show-xrefs.  Use in existing callers in place of that
2353         function.
2354         (xref--show-xrefs): Only do the "show" part.
2355         (xref-find-regexp): Rename, more or less, to
2356         project-or-libraries-find-regexp.
2358 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
2360         Abolish temporary buffer management for xref
2362         * lisp/progmodes/xref.el (xref--temporary-buffers)
2363         (xref--current)
2364         (xref--inhibit-mark-current)
2365         (xref--mark-selected): Remove.  Remove all references.
2366         (xref--show-xrefs): Do not construct the
2367         list of the temporary buffers, nor pass it along.
2369 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
2371         Rename "search path" to "library roots"
2373         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
2374         of the elements from CL-LIST1.
2376         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
2377         Update WRT to the above change.
2379         * lisp/progmodes/project.el (project-search-path-function): Rename
2380         to project-library-roots-function, update the documentation and
2381         references.
2382         (project-search-path): Likewise, to project-library-roots.
2383         (project-roots): Clarify documentation.
2384         (project-vc-search-path): Likewise, to project-vc-library-roots.
2385         (project-library-roots): In addition to the renames, thread the
2386         results through file-name-as-directory.
2387         (project-prune-directories): Accept a variable number of
2388         arguments.  Rename to project-combine-directories.
2389         (project-subtract-directories): New function.
2391         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
2392         Append project-roots and project-library-roots together.
2394         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
2396 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2398         Prefer xpalloc to doubling buffers by hand
2400         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
2401         (read1): Use it for simplicity.
2402         * src/macros.c (store_kbd_macro_char):
2403         * src/minibuf.c (read_minibuf_noninteractive):
2404         * src/term.c (encode_terminal_code):
2405         * src/xrdb.c (magic_db):
2406         Prefer xpalloc to growing buffers by hand.
2407         This doesn’t fix any bugs, but simplifies the code a bit.
2409 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2411         Merge from gnulib
2413         This incorporates:
2414         2015-11-05 timespec-sub: fix overflow bug; add tests
2415         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
2416         2015-11-03 intprops: add parentheses
2417         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
2418         Copy from gnulib.
2420 2015-11-07  David Reitter  <david.reitter@gmail.com>
2422         Provide NS notification objects where required to eliminate warnings
2424         * nsterm.m (windowDidResize:, toggleFullScreen:):
2425         Call notification functions with notification objects
2426         as per delegate APIs.
2428 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
2430         Add test for bug #21824
2432         * test/automated/buffer-tests.el: New file.
2433         (overlay-modification-hooks-message-other-buf): New test.
2435 2015-11-07  Kelvin White  <kwhite@gnu.org>
2437         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
2439 2015-11-07  David Reitter  <david.reitter@gmail.com>
2441         Ignore fullscreen exit notifications on NS when frame is dead
2443         * nsterm.m (windowDidResize:, windowWillExitFullScreen:)
2444         (windowDidExitFullScreen:): Return if frame is dead.
2445         These functions may be called when a fullscreen frame
2446         is closed; they are called before, not after.
2448         May address Bug#21428.
2450 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
2452         Speed up lookup in redisplay--variables
2454         * lisp/frame.el (redisplay--variables): Make it a hash-table.
2456         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
2457         as a hash-table.  This speeds up this function by an order of
2458         magnitude: where previously a setq was slowed down by 100% by
2459         introducing the maybe_set_redisplay test, it is now only 5%
2460         slower.
2461         (syms_of_xdisp) <redisplay--variables>: Doc fix.
2463 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
2465         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
2467         The defsubst was being created as:
2468             (cl-defsubst name (args) ("DOC") ...)
2470         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
2471         Add test.
2473 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
2475         Update doc string of hexl-mode
2477         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
2479 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
2481         Fix error in copy-abbrev-table
2483         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
2484         property of the abbrev-table.  (Bug#21828)
2486         * test/automated/abbrev-tests.el: New file.
2488 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
2490         Add test to auto-revert-tests.el for Bug#21841
2492         * test/automated/auto-revert-tests.el
2493         (auto-revert-test01-auto-revert-several-files): New test.
2494         (auto-revert-test02-auto-revert-tail-mode)
2495         (auto-revert-test03-auto-revert-mode-dired): Rename them.
2497 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
2499         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
2501 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
2503         In x_consider_frame_title don't set title of tooltip frames
2505         * src/xdisp.c (x_consider_frame_title): Return immediately for
2506         tooltip frames to avoid displaying empty tooltips.
2508 2015-11-06  Anders Lindgren  <andlind@gmail.com>
2510         Fixed NextStep fullscreen problem (bug#21770).
2512         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
2513         fullscreen frames.
2515 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2517         Ensure redisplay after evaluation
2519         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
2520         Revert last change.
2521         * lisp/frame.el (redisplay--variables): Populate the
2522         redisplay--variables list.
2523         * src/xdisp.c (maybe_set_redisplay): New function.
2524         (syms_of_xdisp) <redisplay--variables>: New variable.
2525         * src/window.h (maybe_set_redisplay): Declare prototype.
2526         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
2528 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2530         * test/automated/subr-tests.el (subr-test-when): Fix again.
2532 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2534         Don't invoke overlay modification hooks in wrong buffer
2536         * src/buffer.c (report_overlay_modification): When called with
2537         AFTER non-zero, don't invoke overlay modification hooks if the
2538         buffer recorded in last_overlay_modification_hooks is different
2539         from the current buffer.  (Bug#21824)
2541 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
2543         * admin/notes/repo: Fix a few obsolete references to Bazaar.
2545 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2547         * test/automated/subr-tests.el (subr-test-when): Fix test.
2549 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
2551         Avoid division by zero crash observed by Yuan MEI
2553         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
2555         * src/dispnew.c (required_matrix_height, required_matrix_width):
2556         Avoid division by zero.
2557         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
2558         dpyinfo->smallest_char_width to 1.
2560 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2562         Ensure redisplay after "C-x C-e"
2564         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
2565         redisplay happens to account for any side effects of the evaluated
2566         sexp.  (Bug#21835)
2568 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
2570         Skip some file notification tests for cygwin
2572         * test/automated/file-notify-tests.el (file-notify--test-with-events):
2573         Remove argument TIMEOUT.  Adapt all callees.
2574         (file-notify-test02-events, file-notify-test04-file-validity):
2575         Skip for cygwin.  (Bug#21804)
2577 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
2579         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
2581 2015-11-05  Daiki Ueno  <ueno@gnu.org>
2583         Suppress redundant Pinentry startup messages
2585         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
2586         * lisp/epg.el: Declare `pinentry-start'.
2587         (epg--start): Call `pinentry-start' with QUIET argument set.
2589 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
2591         * doc/emacs/ack.texi (Acknowledgments): Updates.
2593 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
2595         * test/automated/elisp-mode-test.el: Silence some run-time warnings.
2596         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
2598 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
2600         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
2601         Add prettification support for \times.
2603 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
2605         * test/automated/process-tests.el: Skip tests when bash is unavailable.
2606         (process-test-sentinel-accept-process-output)
2607         (process-test-sentinel-sit-for): skip-unless bash executable found.
2609 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
2611         Add test for bug #21831
2613         * test/automated/process-tests.el
2614         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
2615         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
2617 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
2619         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
2621         (eieio--generic-static-object-generalizer): Fix typo.
2622         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
2623         like the underlying cause of bug#17852 was fixed in the mean time.
2625 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2627         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
2629         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
2630         It breaks bootstrapping (duh).
2632 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2634         * lisp/files.el (report-errors): Obsolete.
2636         (normal-mode, hack-local-variables, dir-locals-find-file):
2637         Use `with-demoted-errors' instead.
2639 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2641         * lisp/subr.el (when): Use `macroexp-progn'.
2643         * test/automated/subr-tests.el (subr-test-when): New test.
2645 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
2647         * lisp/progmodes/xref.el: Doc fixes.
2648         (xref-make-file-location, xref-make-buffer-location, xref-make)
2649         (xref-make-bogus-location, xref-make-match): Add cross-references.
2650         (xref--insert-xrefs): Fix typo in docstring.
2652 2015-11-04  Anders Lindgren  <andlind@gmail.com>
2654         Render fringe bitmaps correctly on NextStep (bug#21301)
2656         The fringe bitmaps were inverted, the background was not transparent,
2657         the image data was horizontally mirrored, and periodic fringe bitmaps
2658         were not supported.
2660         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
2661         When both background and foreground colors are 0, set the background
2662         alpha channel to 0 (making the background transparent).  When
2663         copying the image data, do this from the most significant bit
2664         (leftmost) to the least (rightmost), to avoid mirroring.
2665         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
2666         Add support for periodic images (e.g. the empty line indicator).
2668 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
2670         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
2672 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
2674         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
2676         * admin/MAINTAINERS: Add thunk.el.
2678 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
2680         * lisp/calc/calc (calc-bug-address): Change maintainer address.
2682 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
2684         Fix a stupid error in gfilenotify.c
2686         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
2687         if we've got a `deleted' signal AND the file name is the watched one.
2689 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
2691         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
2693         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
2694         Use case-insensitive string compare for file names.
2695         (emacs-test-dir): Add 'downcase' to cause case differences (at
2696         least on my system).
2698 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
2700         flymake-tests.el (warning-predicate-rx-gcc): Fix check
2702         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
2703         Also check that "make" is available, not just "gcc".
2705 2015-11-02  Ken Brown  <kbrown@cornell.edu>
2707         Document behavior of collation on Cygwin
2709         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
2710         expected failure on Cygwin.
2711         * doc/lispref/strings.texi (Text Comparison): Document that
2712         punctuation and whitespace are not ignored for sorting on Cygwin.
2714 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
2716         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
2718 2015-11-01  Glenn Morris  <rgm@gnu.org>
2720         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
2721         (Bug#21794)
2722         * test/automated/f90.el (f90-test-bug21794): New test.
2724 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
2726         Fix incompatibility with TCC in test for bug#18745
2728         * test/automated/process-tests.el (process-test-quoted-batfile):
2729         Remove spaces unrelated to the bug being tested.
2731 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
2733         Improve completion in tramp-gvfs.el
2735         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
2736         Rename from `tramp-zeroconf-parse-service-device-names'.
2737         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
2738         with `tramp-zeroconf-parse-device-names'.
2739         (tramp-gvfs-parse-device-names): New defun.
2740         (top): Use it when `tramp-zeroconf-parse-device-names' is not
2741         applicable.
2743         * lisp/net/tramp.el (tramp-set-completion-function): The argument
2744         could also be a zeroconf service type.
2746 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2748         * lisp/net/ntlm.el: Change version to 2.0.0.
2750 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2752         Fix bug#21762
2753         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
2754         `eql' instead of `=' to accommodate the case that (syntax-after (point))
2755         returns nil.
2756         * test/automated/python-tests.el (python-indent-inside-paren-7):
2757         New test.
2759 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2761         * test/automated/python-tests.el: Avoid warnings.
2762         (python-tests-with-temp-buffer, python-tests-with-temp-file):
2763         Bind `python-indent-guess-indent-offset' to nil.
2765 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2767         * src/alloc.c: Silence compiler warnings.
2768         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
2770 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
2772         * etc/NEWS: Fix js-jsx-mode entry punctuation.
2774 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
2776         Add JSX indentation via js-jsx-mode  (Bug#21799)
2778         * progmodes/js.el: Add JSX indentation support.
2779         (js--jsx-end-tag-re)
2780         (js--jsx-after-tag-re): New variables.
2781         (js--jsx-find-before-tag)
2782         (js--jsx-indented-element-p)
2783         (js--as-sgml)
2784         (js--expression-in-sgml-indent-line)
2785         (js-jsx-indent-line)
2786         (js-jsx-mode): New functions.
2787         * test/indent/js-jsx.el: New file.
2788         * etc/NEWS: Add information about js-jsx-mode.
2790 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
2792         Minor fix in filenotify.el
2794         * lisp/filenotify.el (file-notify--event-file-name)
2795         (file-notify--event-file1-name): Normalize result with
2796         `directory-file-name'.
2798 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
2800         Avoid errors in redisplay--pre-redisplay-functions
2802         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
2803         use 'bobp', instead compare window-point with 1.  (Bug#21730)
2805 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
2807         Merge from gnulib
2809         This incorporates:
2810         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
2811         2015-10-25 stdalign: port to Sun C 5.9
2812         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
2813         Copy from gnulib.
2815 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
2817         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
2818         (w32_compare_strings): Adjust for the correction.
2820 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
2822         * test/automated/vc-tests.el (vc-test--state)
2823         (vc-test--working-revision, vc-test--checkout-model):
2824         Add result messages.
2826 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2828         * test/automated/faces-tests.el: Add another test
2830 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2832         * lisp/faces.el (faces--attribute-at-point): Fix bug
2833         introduced by previous commit.
2835 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2837         * test/automated/faces-tests.el: New file.
2839 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2841         * lisp/faces.el: Refactor common code and fix a bug.
2842         (faces--attribute-at-point): New function.  Fix a bug when the
2843         face at point is a list of faces and the desired attribute is not
2844         on the first one.
2845         (foreground-color-at-point, background-color-at-point): Use it.
2847 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
2849         * etc/tutorials/TUTORIAL.translators: Fix PL names.
2851 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
2853         * lisp/character-fold.el: Provide `character-fold'.
2855 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
2857         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
2858         for Gnus and ivy.
2860 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
2862         Some minor fixes for tramp-gvfs.el
2864         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
2865         An attribute returned by gvfs-info might be empty.  In case of
2866         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
2867         (tramp-zeroconf-parse-service-device-names): New defun.
2868         Derived from `tramp-zeroconf-parse-workstation-device-names'.
2869         (top): Add completion functions for "afp" and "smb" methods.
2871 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2873         * test/automated/character-fold-tests.el: New file
2875 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2877         * test/automated/sort-tests.el: New file.
2878         Tests in this file are randomly generated and then tested with
2879         regular, reverse, and case-fold sorting.
2881 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
2883         Describe known problems with pinning Emacs to taskbar
2885         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
2886         on Windows 10.  For the details, see the discussion starting at
2887         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
2889 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2891         * lisp/isearch.el: Avoid an error that blocks isearch.
2892         (isearch-update): Don't error if `isearch--current-buffer' has
2893         been killed.
2895         * test/automated/isearch-tests.el (isearch--test-update):
2896         New file.
2898 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
2900         Fix documentation of 'beginning/end-of-buffer'
2902         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
2903         conditions under which the mark will be pushed at the previous
2904         position.  (Bug#21748)
2906 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
2908         Add RefTeX feature idea: editing RefTeX TOC buffers
2910         More face defs for ivy, swiper, ace-window, eshell
2912 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2914         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
2915         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
2916         just VAR.
2917         (auth-source-backend-parse): Use make-instance.
2918         (auth-source-search): Remove unused key args.
2919         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
2920         (auth-source-search-backends): Use slot names rather than their initarg.
2921         (auth-source-netrc-create):
2922         (auth-source-delete):
2923         (auth-source-secrets-create, auth-source-plstore-search)
2924         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
2925         (auth-source-plstore-create, auth-source-netrc-search)
2926         (auth-source-netrc-parse): Remove unused key args.
2927         (auth-source-forget+): Simplify the arglist.
2928         (auth-source-macos-keychain-search-items)
2929         (auth-source-token-passphrase-callback-function): Mark unused args.
2930         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
2931         (pp-escape-newlines): Declare.
2932         (auto-source--symbol-keyword): New function.
2933         (auth-source-plstore-create, auth-source-netrc-create)
2934         (auth-source-netrc-normalize): Use it.
2935         (auth-source-netrc-search): Don't pass :delete to
2936         auth-source-netrc-parse since it doesn't use it.
2937         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
2938         symbol-value to index in keyword args.
2939         (auth-source-macos-keychain-result-append): Avoid setq.
2940         (auth-source-netrc-create): Remove unused vars `file' and `add'.
2941         (auth-source-user-or-password): Remove unused var `cname'.
2943 2015-10-29  Juri Linkov  <juri@linkov.net>
2945         * lisp/dired.el (dired-unmark-all-files-query): Declare.
2946         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
2947         (Bug#21746)
2949 2015-10-29  Juri Linkov  <juri@linkov.net>
2951         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
2952         to go to the beginning of text line instead of command line.
2953         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
2955 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
2957         Fix encoding of saving *Help* buffers
2959         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
2960         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
2962 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2964         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
2965         (cl--generic-derived-specializers): New function.
2966         (cl--generic-derived-generalizer): New generalizer.
2967         (cl-generic-generalizers): New specializer (derived-mode MODE).
2968         (cl--generic-split-args): Apply the rewriter, if any.
2969         (cl-generic-define-context-rewriter): New macro.
2970         (major-mode): Use it to define a new context-rewriter, so we can write
2971         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
2973         * lisp/frame.el (window-system): New context-rewriter so we can write
2974         `(window-system VAL)' instead of (window-system (eql VAL)).
2975         (cl--generic-split-args): Apply the rewriter, if any.
2976         (frame-creation-function): Use the new syntax.
2978         * lisp/term/x-win.el (window-system-initialization)
2979         (handle-args-function, frame-creation-function)
2980         (gui-backend-set-selection, gui-backend-selection-owner-p)
2981         (gui-backend-selection-exists-p, gui-backend-get-selection):
2982         * lisp/term/w32-win.el (window-system-initialization)
2983         (handle-args-function, frame-creation-function)
2984         (gui-backend-set-selection, gui-backend-get-selection)
2985         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
2986         * lisp/term/pc-win.el (gui-backend-get-selection)
2987         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
2988         (gui-backend-set-selection, window-system-initialization)
2989         (frame-creation-function, handle-args-function):
2990         * lisp/term/ns-win.el (window-system-initialization)
2991         (handle-args-function, frame-creation-function)
2992         (gui-backend-set-selection, gui-backend-selection-exists-p)
2993         (gui-backend-get-selection):
2994         * lisp/startup.el (handle-args-function):
2995         * lisp/term/xterm.el (gui-backend-get-selection)
2996         (gui-backend-set-selection): Use the new syntax.
2998 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3000         * test/indent/css-mode.css: Add tests for url(...) syntax.
3002 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3004         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
3005         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
3006         (smie-prec2->grammar): Use `declare'.
3008 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3010         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
3011         (cl--generic-generalizer): Add `name' field.
3012         (cl-generic-make-generalizer): Add corresponding `name' argument.
3013         (cl-generic-define-generalizer): New macro.
3014         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
3015         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
3016         (cl--generic-t-generalizer): Use it.
3017         (cl-generic-ensure-function): Add `noerror' argument.
3018         (cl-generic-define): Use it so we don't follow aliases.
3019         (cl-generic-define-method): Preserve pre-existing ordering of methods.
3020         (cl--generic-arg-specializer): New function.
3021         (cl--generic-cache-miss): Use it.
3022         (cl-generic-generalizers): Only fset a temporary definition
3023         during bootstrap.
3024         (cl--generic-struct-tag, cl--generic-struct-specializers):
3025         Allow extra arguments.
3027         * lisp/emacs-lisp/eieio-compat.el
3028         (eieio--generic-static-symbol-generalizer)
3029         (eieio--generic-static-object-generalizer):
3030         Use cl-generic-define-generalizer.
3031         (eieio--generic-static-symbol-specializers): Allow extra arguments.
3033         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
3034         (eieio--generic-subclass-generalizer):
3035         Use cl-generic-define-generalizer.
3036         (eieio--generic-subclass-specializers): Allow extra arguments.
3038 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
3040         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
3042 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
3044         Add "afp" method to Tramp
3046         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
3048         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
3049         (tramp-gvfs-handle-expand-file-name)
3050         (tramp-gvfs-handler-mounted-unmounted)
3051         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
3052         (tramp-gvfs-maybe-open-connection): Support also "afp".
3053         (tramp-gvfs-handle-file-attributes): Handle the case of empty
3054         "owner::user" and "owner::group" entries.
3056 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
3058         Handle negative coordinates in ‘x_calc_absolute_position’
3060         * src/w32term.c (x_calc_absolute_position): Find display origin to
3061         allow for negative coordinates.
3063 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
3065         (internal--syntax-propertize): Save match-data here (bug#21766)
3067         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
3068         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
3070 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
3072         Don't require default-directory to end with a slash
3074         * doc/lispref/files.texi (Magic File Names): Document the change
3075         in unhandled-file-name-directory.
3077         * lisp/url/url-handlers.el
3078         (url-handler-unhandled-file-name-directory): Update accordingly.
3080         * src/buffer.c (default-directory): Update the docsting.
3082         * src/fileio.c (unhandled-file-name-directory): Default to calling
3083         `file-name-as-directory'
3084         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
3086 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
3088         * lisp/isearch.el: Delete some outdated comments.
3090 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
3092         Fix eshell/clear not working if the output has a small line count
3094         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
3095         number of newlines to be inserted. This fixes the issue where
3096         eshell/clear wouldn't work if the prompt was not at the bottom of the
3097         window, and the output wasn't too long.
3099 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
3101         * lisp/files.el (write-file): Use vc-refresh-state.
3103         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
3105         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
3107 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
3109         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
3110         (macroexp-unprogn): Make sure we never return an empty list.
3111         (macroexp-if): Remove unused (and unsafe) optimization.
3112         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
3113         occur occasionally.
3115 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
3117         Fix bug#21766 and add test
3118         * lisp/simple.el (delete-trailing-whitespace): Save match data when
3119         calling `skip-syntax-backward'.
3120         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
3121         New test.
3123 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
3125         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
3127 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
3129         * src/dispnew.c (init_display): Simplify overflow checking.
3131 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
3133         * lisp/character-fold.el (character-fold-to-regexp): Fix case
3134         where string ends in space
3136 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
3138         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
3140         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
3142 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
3144         * lisp/character-fold.el: Make compatible with lax-whitespace.
3145         (character-fold-to-regexp): Rework internals to play nice with
3146         lax-whitespacing.
3148         When the user types a space, we want to match the table entry for
3149         ?\s, which is generally a regexp like "[ ...]".  However, the
3150         `search-spaces-regexp' variable doesn't "see" spaces inside these
3151         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
3152         manually expose a space).
3154         Furthermore, the lax search engine acts on a bunch of spaces, not
3155         on individual spaces, so if the string contains sequential spaces
3156         like "  ", we need to keep them grouped together like this:
3157         "\\(  \\|[ ...][ ...]\\)".
3159 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
3161         * lisp/isearch.el: Refactor momentary messages.
3162         (isearch--momentary-message): New function.
3163         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
3164         (isearch-toggle-invisible): Use it.
3166 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
3168         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
3169         (isearch-define-mode-toggle): New macro.
3170         (isearch-toggle-invisible): Rename to
3171         `isearch-define-mode-toggle'.
3172         (isearch-toggle-case-fold, isearch-toggle-invisible)
3173         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
3174         with `isearch-define-mode-toggle'.
3176 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
3178         Avoid using `add-to-list' on a let-local var in tramp-smb.el
3180         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
3181         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
3183 2015-10-28  Anders Lindgren  <andlind@gmail.com>
3185         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
3187         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
3189         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
3191 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
3193         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
3194         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
3195         does not exist in XEmacs 21.4.
3197 2015-10-28  Anders Lindgren  <andlind@gmail.com>
3199         Fixed OS X startup crash
3201         Input events started to arrive before ns_term_init() was finished.
3202         Solved by blocking input.  This also seems to correct the "You
3203         can't open the application "Emacs" because it may be damaged or
3204         incomplete" error issued when double-clicking on the Emacs
3205         application.
3207         * nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
3208         * nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
3210 2015-10-28  Anders Lindgren  <andlind@gmail.com>
3212         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
3214 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
3216         * src/process.c (Fget_buffer_process): Improve docstring.
3217         Document the fact that it doesn't return dead processes.
3219 2015-10-28  Anders Lindgren  <andlind@gmail.com>
3221         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
3223         * nsterm.h (struct ns_output): New flag, in_animation.
3224         * nsfns.m (Fx_create_frame): Initialize in_animation flag.
3225         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
3226         in_animation flag around call to "setVisible". Set new tool bar
3227         height before call to setVisible.
3228         * nsterm.m (x_set_window_size): Don't call [view setRow:
3229         andColumns:] as this fools the subsequent call to updateFrameSize
3230         from performing the real resize.
3231         (windowDidResize): Don't update anything when in_animation is
3232         non-zero.
3234         Trace output.
3236         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
3237         (EmacsToolbar):
3238         * nsterm.m (x_set_window_size, updateFrameSize)
3239         ([EmacsView setRows: andColumns:])
3241 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
3243         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
3245 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
3247         Prettify TeX macros not ending in a word char
3249         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
3250         Prettify macros which don't end in a word character.
3252 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
3254         Pipe Hg commit descriptions through 'tabindent'
3256         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
3257         through 'tabindent'.
3258         (vc-hg-log-view-mode): Set tab-width to 2 locally.
3259         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
3261 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
3263         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
3264         (tramp-smb-handle-directory-files): Use `delete-dups'.
3266         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
3268 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
3270         * lisp/international/ccl.el: Use lexical-binding.
3271         (ccl-compile-if): Remove unused var `false-ic'.
3272         (ccl-compile-write-repeat): Remove unused var `i'.
3273         (ccl-compile-map-single): Remove unused var `id'.
3274         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
3275         dynamic var `ccl-code'.
3277 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
3279         * lisp/json.el (json-new-object): Optimize trivial `list' call.
3281 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
3283         * lisp/help.el: Fix bug with incorrect arglist string.
3284         (help-add-fundoc-usage): Don't mistake a mis-formatted string
3285         for a list.
3287 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
3289         * lisp/gnus/gnus-topic.el: Silence some warnings.
3290         (gnus-topic-prepare-topic): Remove unused var `topic'.
3291         (gnus-topic-remove-topic): Mark unused arg `hide'.
3292         (gnus-tmp-header): Declare.
3293         (gnus-topic-goto-missing-group): Remove unused var `entry'.
3294         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
3295         (gnus-topic-copy-matching): Mark unused arg `copyp'.
3296         Move initialization of `topic' into its declaration.
3298 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
3300         Minor CEDET fixes
3302         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
3303         Handle warnings from gtags about invalid options.
3304         (cedet-gnu-global-create/update-database): Do incremental update
3305         properly.
3307         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
3308         Get monotone root right.
3310 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
3312         Fall back to polling in autorevert when needed
3314         * lisp/autorevert.el (auto-revert-notify-handler): When a
3315         `stopped' event arrives from file notification, fall back to polling.
3317         * test/automated/file-notify-tests.el
3318         (file-notify-test03-autorevert): Extend test for polling when file
3319         notification ceases to work.
3321 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
3323         Show full commit messages in 'hg log' when appropriate
3325         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
3326         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
3327         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
3329 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
3331         Use a plain SVG file for the icon
3333         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
3334           format instead of the Inkscape SVG format.
3336 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
3338         Fix subtle bug in auto-revert-tests.el
3340         * test/automated/auto-revert-tests.el
3341         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
3342         buffer where it belongs to.  (Bug#21668)
3344 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
3346         * lisp/emacs-lisp/map.el: Better docstrings.
3348         * lisp/emacs-lisp/seq.el: Better docstrings.
3350         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
3352 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
3354         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
3356 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
3358         Clarify that load-path contents should be directory file names
3360         * doc/lispref/files.texi (Directory Names): Define and use "directory
3361         file name".  Recommend `expand-file-name'.
3363         * src/lread.c (load-path): Fix doc string; elements are directory file
3364         names.
3366 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
3368         Fix simple-test.el test
3370         * test/automated/simple-test.el (simple-test--dummy-buffer):
3371         Make sure indentation doesn't use TABs, otherwise the 6th test
3372         might fail.
3374 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
3376         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
3377         `substring' does not account for full width characters.
3379 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
3381         Further work on `stopped' events in filenotify.el
3383         * doc/lispref/os.texi (File Notifications): Rework examples.
3385         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
3386         (file-notify--rm-descriptor, file-notify-callback): Improve check
3387         for sending `stopped' event.
3388         (file-notify-add-watch): Check for more events for `inotify'.
3390         * test/automated/file-notify-tests.el
3391         (file-notify--test-expected-events): New defvar.
3392         (file-notify--test-with-events): Use it.
3393         (file-notify--test-cleanup): Make it more robust when deleting
3394         directories.
3395         (file-notify--test-event-test): Check also for watched directories.
3396         (file-notify--test-event-handler): Suppress temporary .#files.
3397         (file-notify-test02-events, file-notify-test04-file-validity):
3398         Rework `stopped' events.
3399         (file-notify-test05-dir-validity): Wait for events when appropriate.
3401 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
3403         * src/keyboard.c (post-command-hook): Shorten docstring.
3405 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
3407         Fix infinite loop in sh-script's SMIE code
3409         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
3410         loop (bug#21747).
3412 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3414         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
3415         Character-fold search _still_ doesn't play well with
3416         lax-whitespace.  So disable it by default (again) for now.
3418 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3420         * lisp/isearch.el: No visual feedback for default search mode.
3421         During an isearch where character-folding is the default, we don't
3422         want to take up minibuffer space just to tell the user that
3423         "Char-fold " is on.  The same goes for other modes, if the user
3424         changes the default.  In contrast, if the user toggles OFF the
3425         default mode, they should see "Literal", to distinguish it from
3426         the default mode.
3427         (isearch--describe-regexp-mode): Return "" if describing the
3428         default mode, and return "literal " if describing a plain search
3429         and it is not default.
3431 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3433         * test/automated/simple-test.el: New file.
3434         Define tests for `newline' and `open-line'.
3436 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3438         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
3439         Also run `post-self-insert-hook' when called interactively.
3441 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3443         * lisp/simple.el (open-line): Fix docstring.
3444         Also explain apparently redundant line.
3446 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3447             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
3449         Sync with soap-client repository, version 3.0.1
3451         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
3452         Bump version to 3.0.1.
3454         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
3456 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
3458         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
3460 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3462         * src/keyboard.c (post-command-hook): Extend the docstring.
3463         Mainly, explain how to use it without hanging Emacs, or giving the
3464         impression that it is hanging.  Also mention `pre-command-hook'.
3465         (pre-command-hook): Mention `post-command-hook'.
3467 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3469         * lisp/custom.el (custom-declare-variable): Shorten code again.
3470         Without using pcase this time.  We can't use pcase because it is
3471         loaded after custom in loadup.el.  Also add a comment explaining
3472         this to future dummies like me.
3474 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
3476         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
3478 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
3480         Introduce `stopped' event in file notification
3482         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
3483         (file-notify-rm-watch): Use it.
3484         (file-notify-callback): Implement `stopped' event.
3485         (file-notify-add-watch): Mention `stopped' in the docstring.
3486         Check, that upper directory exists.
3488         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
3489         Add two test cases.
3490         (file-notify-test02-events): Handle also `stopped' event.
3491         (file-notify-test04-file-validity): Add another test case.
3493 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
3495         Revert commit that broke 'make bootstrap'
3497         * lisp/custom.el (custom-declare-variable): Revert commit
3498         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
3499         even when pcase has not been defined yet, when doing bootstrapping.
3501 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
3503         Port recent inline functions fix to Standard C
3505         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
3506         All uses rewritten to define the function directly rather than to
3507         use a macro to define the function.  This conforms to Standard C,
3508         which does not allow stray semicolons at the top level.  I hope it
3509         also avoids the problems with TAGS.  Those macros, though clever,
3510         were pretty confusing anyway, and it wasn’t clear they were worth
3511         the aggravation even without the TAGS problem.
3513 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3515         * lisp/isearch.el: Make character-fold search the default again.
3517 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3519         * lisp/character-fold.el: Many improvements.
3520         (character-fold-search-forward, character-fold-search-backward):
3521         New command.
3522         (character-fold-to-regexp): Remove lax-whitespace hack.
3523         (character-fold-search): Remove variable.  Only isearch and
3524         query-replace use char-folding, and they both have their own
3525         variables to configure that.
3527 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3529         * lisp/isearch.el: Generalize definition of regexp-function toggles.
3530         (isearch-specify-regexp-function): New macro for specifying
3531         possible values of `isearch-regexp-function'.
3532         (isearch-toggle-character-fold, isearch-toggle-symbol)
3533         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
3535 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3537         * lisp/isearch.el (search-default-regexp-mode): New variable.
3538         (isearch-mode): Use it.
3540 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3542         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
3543         (search-slow-speed, search-upper-case)
3544         (search-nonincremental-instead, search-whitespace-regexp)
3545         (search-invisible, isearch-hide-immediately)
3546         (isearch-resume-in-command-history, search-ring-max)
3547         (regexp-search-ring-max, search-ring-update, search-highlight)
3548         (isearch-fail): Delete :group entries.
3550 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3552         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
3554 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3556         addpm.c: Silence some warnings.
3558         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
3559         to LPBYTE.
3560         (add_registry): Pass NULL to optional lpClass argument of
3561         RegCreateKeyEx, not an empty string.
3563 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3565         addpm.c: Do not add obsolete GTK libraries to the path.
3567         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
3568         (add_registry): Remove variables `size' and `gtk_key'.
3569         Do not add the GTK DLL directory to the library search path; it is
3570         confusing behavior (in particular, the same Emacs version with and
3571         without invoking addpm will use a different path), and the GTK image
3572         libraries are obsolete anyway.
3574 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3576         addpm.c: Replace existing registry entries, but do not create new ones
3578         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
3579         existing values from previous versions, but do not add new ones; the
3580         key could exist for other reasons unrelated to old Emacsen, like X-style
3581         resources, or to set some environment variables like HOME or LANG, and
3582         in that case we don't want to populate it with obsolete values.
3584 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3586         * nt/addpm.c (add_registry): Do not compute unused return value.
3588 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3590         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
3592         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
3593         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
3594         current behavior because REG_OPTION_NON_VOLATILE is defined to
3595         be 0L anyway, but that option is actually documented only for
3596         RegCreateKeyEx.
3598 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3600         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
3602 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3604         Update frame title when redisplay scrolls selected window
3606         * src/xdisp.c (redisplay_window): Reconsider the frame's title
3607         when the mode-line of the frame's selected window needs to be
3608         updated.
3610 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3612         Update frame title when scrolling the selected window
3614         * src/window.c (wset_update_mode_line): New function, sets either
3615         the window's update_mode_line flag or the global update_mode_lines
3616         variable.
3617         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
3618         (window_scroll_line_based): Call it instead of only setting the
3619         window's update_mode_line flag.
3621 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3623         An even better fix for bug#21739
3625         * src/window.c (set_window_buffer): If the window is the frame's
3626         selected window, set update_mode_lines, not the window's
3627         update_mode_line flag.
3628         * src/buffer.c (Fkill_buffer): Undo last change.
3629         (set_update_modelines_for_buf): Function deleted.
3631 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3632             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
3634         Sync with soap-client repository, version 3.0.0
3636         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
3637         Bump version to 3.0.0.
3639         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
3641         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
3643         * lisp/net/soap-inspect.el: Shorten first line description.
3645         * lisp/net/soap-client.el: Make a small whitespace fix.
3647         * lisp/net/soap-inspect.el: Update copyright years.
3649         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
3650         first use in soap-encode-xs-element.
3652         * lisp/net/soap-client.el (soap-type-is-array?): new defun
3653         (soap-encode-xs-element): handle array elements in this function
3654         (soap-encode-xs-complex-type): flag error if asked to encode an
3655         array type, this is handled in `soap-encode-xs-element'
3657         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
3658         Do not print type for attribute group.
3660         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
3661         New function.
3662         (soap-inspect-xs-attribute-group): Likewise.
3664         * lisp/net/soap-inspect.el
3665         (soap-resolve-references-for-xs-attribute-group): Resolve
3666         references of attributes in an attribute group.
3668         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
3669         type directly, not through soap-wsdl-get.
3671         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
3672         nil if reference attribute is nil.
3674         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
3675         Convert XML schema attributes to xsd:string.
3677         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
3678         New function.
3679         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
3680         (soap-sample-value-for-xs-complex-type): Likewise.
3681         (soap-inspect-xs-attribute): New function.
3682         (soap-inspect-xs-simple-type): Print attributes.
3683         (soap-inspect-xs-complex-type): Likewise.
3685         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
3686         Resolve references for attributes.
3687         (soap-resolve-references-for-xs-complex-type): Likewise.
3689         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
3690         Rename from soap-xml-node-first-child.
3691         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
3692         (soap-xs-parse-simple-type): Likewise.
3694         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
3696         * lisp/net/soap-client.el (soap-invoke-internal): New function.
3697         (soap-invoke-async): Call soap-invoke-internal.
3698         (soap-invoke): Likewise.
3700         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
3701         url-retrieve callback is killed.
3703         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
3704         Rename function.
3705         (soap-parse-wsdl-phase-fetch-imports): Likewise.
3706         (soap-parse-wsdl-phase-parse-schema): Likewise.
3707         (soap-parse-wsdl-phase-fetch-schema): Likewise.
3708         (soap-parse-wsdl-phase-finish-parsing): Likewise.
3709         (soap-parse-wsdl): Update calls.
3711         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
3713         * lisp/net/soap-client.el (soap-invoke-async): New function.
3714         (soap-invoke): Reimplement using soap-invoke-async.
3716         * lisp/net/soap-client.el (soap-parse-server-response):
3717         Improve docstring.
3718         (soap-invoke): Inline call to soap-parse-server-response.
3720         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3721         Prevent incorrect warning.
3723         * lisp/net/soap-client.el (soap-parse-server-response):
3724         Rename soap-process-url-response.  Destroy the mime part.
3725         (soap-invoke): Call soap-parse-server-response.
3727         * lisp/net/soap-client.el: Update copyright date.
3729         * lisp/net/soap-client.el: Fix checkdoc issues.
3731         * lisp/net/soap-client.el: Fix indentation and long lines.
3733         * lisp/net/soap-client.el (soap-time-format): Remove variable.
3734         (soap-encode-xs-basic-type): Simplify date-time format detection.
3735         (soap-decode-xs-basic-type): Remove soap-time-format support.
3737         * lisp/net/soap-client.el (soap-process-url-response): New function.
3738         (soap-fetch-xml-from-url): Call soap-process-url-response.
3739         (soap-parse-wsdl-phase-1): New function.
3740         (soap-parse-wsdl-phase-2): Likewise.
3741         (soap-parse-wsdl-phase-3): Likewise.
3742         (soap-parse-wsdl-phase-4): Likewise.
3743         (soap-parse-wsdl-phase-5): Likewise.
3744         (soap-parse-wsdl): Call phase functions.
3746         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
3747         Remove one-argument and call.
3749         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
3751         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
3752         (soap-parse-schema): Add wsdl argument.  Look up XML schema
3753         imports from wsdl.
3754         (soap-load-wsdl): Do not set soap-xmlschema-imports.
3755         (soap-parse-wsdl): Get XML schema imports from wsdl.
3757         * lisp/net/soap-client.el (soap-current-file): Remove variable.
3758         (soap-wsdl): Add current-file slot.
3759         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
3760         file from wsdl.
3761         (soap-fetch-xml-from-file): Likewise.
3762         (soap-fetch-xml): Likewise.
3763         (soap-load-wsdl): Always create wsdl object first.
3764         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
3766         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
3767         (soap-xs-parse-element): Set is-group slot.
3768         (soap-resolve-references-for-xs-element): Skip is-group elements.
3769         (soap-xs-complex-type): Add is-group slot.
3770         (soap-xs-parse-complex-type): Set is-group slot.
3771         (soap-xs-parse-sequence): Parse xsd:group elements.
3772         (soap-resolve-references-for-xs-complex-type): Inline elements
3773         from referenced xsd:group nodes.
3774         (soap-parse-schema): Parse xsd:group nodes.
3776         * lisp/net/soap-client.el (soap-invoke):
3777         Don't set url-http-version to 1.0.
3779         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3780         Allow choice nodes to accept multiple values.
3782         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
3783         for extra header values.
3785         * lisp/net/soap-client.el (soap-well-known-xmlns):
3786         Add wsa and wsaw tags.
3787         (soap-operation): Add input-action and output-action slots.
3788         (soap-parse-operation): Parse wsaw:Action nodes.
3789         (soap-encode-body): Encode service-url for WS-Addressing.
3790         (soap-create-envelope): Likewise.
3791         (soap-invoke): Update soap-create-envelope call to provide
3792         service-url argument.
3794         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3795         Support xsi:type override attribute.
3796         (soap-decode-array): Likewise.
3798         * lisp/net/soap-client.el (soap-parse-schema):
3799         Handle location attribute.
3801         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
3802         matched validation regexp.
3804         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
3805         Encode xsd:list nodes.
3806         (soap-decode-xs-simple-type): Decode xsd:list nodes.
3808         * lisp/net/soap-client.el (soap-get-candidate-elements):
3809         Fix reference handling.
3811         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
3812         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
3813         (soap-xs-add-list): New function.
3815         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
3816         expected, interpret nil as "false".
3818         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
3819         gYear, gMonthDay, gDay and gMonth.
3821         * lisp/net/soap-client.el (soap-time-format): New variable.
3822         (soap-encode-xs-basic-type): Handle dateTime, time, date,
3823         gYearMonth, gYear, gMonthDay, gDay and gMonth.
3824         (soap-decode-date-time): New function.
3825         (soap-decode-xs-basic-type): Use soap-decode-date-time.
3827         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
3828         after encoding.
3829         (soap-decode-xs-basic-type): Validate value before decoding.
3831         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
3832         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
3834         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
3835         instead of overwriting it.
3836         (soap-validate-xs-simple-type): Add union support.
3838         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
3839         to Emacs regexp using xsdre-translate.
3840         (soap-validate-xs-simple-type): Validate value against pattern.
3842         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
3843         inline simpleType nodes.
3844         (soap-decode-type): Handle union types.
3846         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
3847         attributes.
3849         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
3850         from soap-xs-attribute-group-consolidate, all callers updated
3851         (soap-get-xs-attributes): Rename from
3852         soap-xs-attributes-consolidate, all callers updated
3854         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
3855         (soap-xs-attribute-group): New type.
3856         (soap-xs-parse-attribute-group): New function.
3857         (soap-resolve-references-for-xs-attribute-group): Likewise.
3858         (soap-xs-add-extension): Handle attribute groups.
3859         (soap-resolve-references-for-xs-simple-type): Likewise.
3860         (soap-xs-parse-complex-type): Likewise.
3861         (soap-xs-parse-extension-or-restriction): Likewise.
3862         (soap-resolve-references-for-xs-complex-type): Likewise.
3863         (soap-xs-attribute-group-consolidate): New function.
3864         (soap-xs-attributes-consolidate): Handle attribute groups.
3865         (soap-parse-schema): Likewise.
3867         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
3868         Fix boolean encoding.
3870         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
3871         element names in warnings.
3873         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
3875         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3876         Eliminate invalid warnings for choice types.
3878         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
3879         Also encode base type attributes.
3881         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
3882         warning.  Print e-name in warnings, or element if e-name is nil.
3884         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
3885         (soap-xs-parse-element): Set substitution-group.
3886         (soap-resolve-references-for-xs-element): Populate alternatives slot.
3887         (soap-get-candidate-elements): New function.
3888         (soap-encode-xs-complex-type): Iterate through all candidate elements.
3889         Handle types with nil type indicator.  Fix warning logic.
3891         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
3892         earlier in the file to prevent compiler warning.
3894         * lisp/net/soap-client.el (soap-node-optional): New function.
3895         (soap-node-multiple): Likewise.
3896         (soap-xs-parse-element): Call soap-node-optional and
3897         soap-node-multiple.
3898         (soap-xs-complex-type): Add optional? and multiple? slots.
3899         (soap-xml-get-children-fq): New function.
3900         (soap-xs-element-get-fq-name): Likewise.
3901         (soap-xs-complex-type-optional-p): Likewise.
3902         (soap-xs-complex-type-multiple-p): Likewise.
3903         (soap-xs-attributes-consolidate): Likewise.
3904         (soap-decode-xs-attributes): Likewise.
3905         (soap-decode-xs-complex-type): Decode types with nil type indicator.
3906         Support children that use local namespaces.  Decode attributes.
3907         Add type considerations to optional? and multiple? warnings.
3909         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
3910         Store parsed attributes.
3911         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
3913         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
3914         Don't add the xsi:type attribute (Exchange refuses requests which have
3915         this attribute).
3917         * lisp/net/soap-client.el, soap-inspect.el: Convert to lexical binding,
3918         correct compiler warnings about unused function arguments and
3919         local variables.
3921         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
3922         type indicator.
3923         (soap-parse-envelope): Handle response headers.
3924         (soap-parse-response): Likewise.  Only return non-nil decoded values.
3926         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
3927         Return validated value.
3929         * lisp/net/soap-client.el (soap-xs-parse-element)
3930         (soap-xs-parse-simple-type)
3931         (soap-xs-parse-complex-type)
3932         (soap-parse-message)
3933         (soap-parse-operation): Add the current namespace to the element
3934         being created.
3935         (soap-resolve-references-for-xs-element)
3936         (soap-resolve-references-for-xs-simple-type)
3937         (soap-resolve-references-for-xs-complex-type)
3938         (soap-resolve-references-for-operation): Resolve the namespace to
3939         the namespace tag.
3940         (soap-make-wsdl): specify a namespace tag when creating the xsd
3941         and soapenc namespaces
3942         (soap-wsdl-resolve-references): don't update namespace tags in
3943         elements here
3944         (soap-parse-port-type): bind the urn: to soap-target-xmlns
3945         (soap-encode-body): don't add nil namespace tags to
3946         soap-encoded-namespaces
3948         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
3949         for registering the soap-inspect method.  Make debbugs tests pass.
3950         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
3951         type name, also skip string only nodes when decoding a structure.
3952         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
3953         types too.
3954         (soap-encode-body): Grab the header value from the param table.
3956         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
3957         New function.
3958         (soap-encode-xs-element): Don't encode nil value unless needed.
3960         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
3961         (soap-parse-binding): Parse the message parts required in the body.
3962         (soap-encode-body): Encode only the parts that are declared to be
3963         part of the body.
3965         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
3966         when writing out the tag.
3967         (soap-encode-body): Remove hack that inserts the xmlns in the
3968         element attributes list.
3970         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
3971         (soap-xs-parse-attribute): Default slot is set from the XML
3972         "fixed" attribute.
3973         (soap-encode-xs-complex-type-attributes): Encode any attributes
3974         that have a default value.  Also, don't put the xsi:nil attribute
3975         when the complex type has no content anyway.
3977         * lisp/net/soap-client.el (soap-well-known-xmlns):
3978         Add the xml namespace.
3979         (soap-local-xmlns): Start with the xml namespace.
3980         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
3981         (soap-make-xs-basic-types): More xsd types added.
3982         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
3983         Handle "language", "time", "date", "nonNegativeInteger".
3984         (soap-resolve-references-for-xs-element): Don't signal an error if
3985         the element does not have a type.
3986         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
3987         added stum for xsd:list.
3988         (soap-xs-add-union): Call soap-l2fq on all union members.
3989         (soap-xs-add-extension): Call soap-l2fq on the base member.
3990         (soap-resolve-references-for-xs-simple-type): Don't signal an
3991         error if the simple type has no base.
3992         (soap-resolve-references-for-xs-simple-type): Bugfix, call
3993         soap-wsdl-get on each type of the base.
3995         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
3996         Referenced type can be eiher a simple type or a basic type.
3997         (soap-xs-add-restriction)
3998         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
3999         (soap-make-xs-basic-types)
4000         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
4001         Add support for more XMLSchema basic types.
4002         (soap-current-file, soap-xmlschema-imports): New defvars.
4003         (soap-parse-schema): Add locations from xsd:import tags to
4004         `soap-xmlschema-imports'.
4005         (soap-wsdl): Make destructor private.
4006         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
4007         (soap-wsdl-add-alias): Check if we try to replace aliases.
4008         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
4009         (soap-fetch-xml): New defuns.
4010         (soap-load-wsdl): Update to load the WSDL from either a file or
4011         an url.
4012         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
4013         (soap-parse-wsdl): Process wsdl:import tags and imports from
4014         `soap-xmlschema-imports'.
4015         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
4016         symbol-name.
4017         (soap-l2fq): Make the name part always a string.
4018         (soap-name-p): New defun, used for name tests.
4020         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
4021         Supply sample values for choice types with a special tag.
4022         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
4023         Handle anonymous elements correctly.
4024         (soap-encode-value): Accept nodes that have no namespace tag.
4026         * lisp/net/soap-client.el (soap-invoke): Encode the string for
4027         `url-request-data' as UTF-8.  Fixes issue 16.
4029 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
4031         Update the new icon
4033         Move the E slightly to the right in the circle.
4035         * etc/images/icons/hicolor/128x128/apps/emacs.png:
4036         * etc/images/icons/hicolor/16x16/apps/emacs.png:
4037         * etc/images/icons/hicolor/24x24/apps/emacs.png:
4038         * etc/images/icons/hicolor/32x32/apps/emacs.png:
4039         * etc/images/icons/hicolor/48x48/apps/emacs.png:
4040         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
4041         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
4042         * nt/icons/emacs.ico: New icom update.
4044 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
4046         Avoid missing inline functions from lisp.h in TAGS
4048         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
4049         need to end each invocation with a semi-colon.
4050         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
4051         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
4052         inline functions defined immediately after each invocation, and
4053         also avoid tagging every invocation of these macros.
4055 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
4057         A better fix for bug#21739
4059         * src/buffer.c (set_update_modelines_for_buf): New function.
4060         (Fkill_buffer): Use it to set the global variable
4061         update_mode_lines if the killed buffer was displayed in some
4062         window.  Don't set windows_or_buffers_changed.  This is a better
4063         fix for bug#21739 than the previous fix, since it will cause only
4064         redisplay of mode lines, not of entire windows, but will still
4065         catch attention of x_consider_frame_title in xdisp.c, which
4066         redraws the frame title.
4068 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
4070         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
4071         tar.bz2 and tar.xz archives.
4073 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
4075         Fix infloop in redisplay introduced by a recent change
4077         * src/xdisp.c (redisplay_internal): Avoid inflooping when
4078         redisplaying the selected window sets the selected frame's
4079         redisplay flag.  (Bug#21745)
4081 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
4083         * lisp/emacs-lisp/thunk.el: Better documentation.
4085 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
4087         Replace the old icon for Windows and Mac OSX
4089         * nt/icons/emacs.ico:
4090         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
4091         Use the new icons.
4093 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
4095         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
4096         `load-path' should contain only directory names.
4098 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
4100         New library thunk.el
4102         thunk.el is extracted from stream.el in ELPA, with additional tests.
4104         * lisp/emacs-lisp/thunk.el: New file.
4105         * test/automated/thunk-tests.el: New file.
4106         * etc/NEWS: Add information about thunk.el
4108 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
4110         Fix bug#21669
4112         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
4113         calling low-level functions.
4115         * test/automated/file-notify-tests.el (file-notify--test-timeout):
4116         Decrase to 6 seconds for remote directories.
4117         (file-notify-test02-events): Expect different number of
4118         `attribute-changed' events for the local and remote cases.  Apply
4119         short delays between the operations, in order to receive all
4120         events in the remote case.  Combine `attribute-change' tests.
4121         (Bug#21669)
4123 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
4125         Decode the HTML source when displaying it in EWW
4127         * lisp/net/eww.el (eww-view-source): Decode the HTML source
4128         according to its headers.
4130 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
4132         New default icon
4134         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
4135         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
4136         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
4137         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
4138         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
4139         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
4140         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
4141         Move the old logo files to emacs23.*.
4142         * etc/images/icons/hicolor/128x128/apps/emacs.png:
4143         * etc/images/icons/hicolor/16x16/apps/emacs.png:
4144         * etc/images/icons/hicolor/24x24/apps/emacs.png:
4145         * etc/images/icons/hicolor/32x32/apps/emacs.png:
4146         * etc/images/icons/hicolor/48x48/apps/emacs.png:
4147         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
4148         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
4149         New files.
4150         * etc/images/icons/README: Update the copyright information.
4152 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
4154         Fix redisplay of frame title when current buffer is killed
4156         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
4157         non-zero value, to redisplay more than just the affected windows.
4158         (Bug#21739)
4160 2015-10-23  Anders Lindgren  <andlind@gmail.com>
4162         NextStep maximization and NSTRACE rewrite
4164         Full-height, full-width, and maximized windows now cover the
4165         entire screen (except the menu bar), including the part where the
4166         system dock is placed.  The system zoom animation is no longer
4167         used.
4169         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
4170         original size.
4172         * src/nsterm.m (ns_menu_bar_height): New function, return height of
4173         the menu bar, or 0 when it's hidden.
4174         (constrain_frame_rect): New function for constraining a frame.
4175         (ns_constrain_all_frames): Set frame size explicitly rather than
4176         relying on the system doing it for us by writing back the current
4177         frame size.
4178         (windowWillUseStandardFrame): Register non-maximized width or
4179         height as new user size.  When entering full width or height,
4180         the other size component is taken from the user size.
4181         (fullscreenState): New method for accessing the fullscreen state.
4182         (constrainFrameRect): Restrict frame to be placed under the menu bar,
4183         if present.  The old version, sometimes, restricted the height of a
4184         frame to the screen, this version never does this.
4185         (zoom): Perform zoom by setting the frame to the full size of the
4186         screen (minus the menu bar).  The default system function, with the
4187         zoom animation, is no longer used, as the final frame size doesn't
4188         cover the entire screen.
4190         Rework how to constrain resizing to the character grid.  The old
4191         system used "resizeIncrements" in NSWindows.  However, once a frame
4192         was resized so that it was not aligned to the text grid, it
4193         remained unaligned even after a resize.  In addition, it conflicted
4194         when resizing a fullheight window.
4196         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
4197         unless when pixelwise frame resizing is enabled.
4198         (updateFrameSize, initFrameFromEmacs)
4199         (toggleFullScreen, handleFS): Don't set resizeIncrements.
4201         Redesign the NS trace system.  The call structure is represented
4202         using indentations and vertical lines.  The NSTRACE macro accepts
4203         printf-style arguments.  New macros for printing various
4204         information.
4206         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
4207         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
4208         block (typically a function), accept printf-style arguments.
4209         (NSTRACE_MSG): Macro for extra information, accepts
4210         printf-style arguments.
4211         (NSTRACE_what): Macros for printing various types.
4212         (NSTRACE_FMT_what): Macro with printf format string snippets.
4213         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
4214         corresponds to NSTRACE_FMT_what.
4215         (NSTRACE_RETURN): Macro to print return value, accept
4216         printf-style arguments.
4217         (NSTRACE_RETURN_what): Macros to print return value for
4218         various types.
4220         * nsterm.m: Remove old NSTRACE macro
4221         * src/nsterm.m (nstrace_num): Trace counter.
4222         (nstrace_depth): Current call depth.
4223         (nstrace_leave): NSTRACE support function, called when the
4224         local variable "nstrace_enabled" goes out of scope using the
4225         "cleanup" extension.
4226         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
4227         (constrain_frame_rect, ns_constrain_all_frames)
4228         (ns_update_auto_hide_menu_bar, ns_update_begin)
4229         (ns_update_window_begin, update_window_end, ns_update_end)
4230         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
4231         (ns_frame_rehighlight, x_make_frame_visible)
4232         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
4233         (x_destroy_window, x_set_offset, x_set_window_size)
4234         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
4235         (ns_defined_color, frame_set_mouse_pixel_position)
4236         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
4237         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
4238         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
4239         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
4240         (dumpcursor, ns_draw_vertical_window_border)
4241         (ns_draw_window_divider, ns_draw_relief)
4242         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
4243         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
4244         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
4245         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
4246         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
4247         (ns_create_terminal, ns_term_init, sendEvent)
4248         (applicationDidFinishLaunching, applicationDidBecomeActive)
4249         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
4250         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
4251         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
4252         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
4253         (mouse_autoselect_window, in_window, mouseDragged)
4254         (rightMouseDragged, otherMouseDragged, windowShouldClose)
4255         (updateFrameSize, windowWillResize, windowDidResize)
4256         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
4257         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
4258         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
4259         (windowDidEnterFullScreen, windowWillExitFullScreen)
4260         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
4261         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
4262         (draggingEntered, performDragOperation, validRequestorForSendType)
4263         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
4264         (EmacsScroller_initFrame, EmacsScroller_setFrame)
4265         (EmacsScroller_dealloc, condemn, reprieve, judge)
4266         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
4267         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
4269         * nsfns.m: Remove old NSTRACE macro
4270         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
4271         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
4272         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
4274         * nsimage.m: Remove old NSTRACE macro
4275         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
4276         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
4278         * nsmenu.m: Remove old NSTRACE macro
4279         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
4280         Use new trace system.
4282 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
4284         No need to use eval-and-compile
4286         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
4287         autoload epg functions.
4289 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
4291         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
4293         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
4294         epg-context-set-passphrase-callback, epg-decrypt-string, and
4295         epg-encrypt-string; require epg when compiling for the setf-method
4296         for epg-context-armor. (bug#21724)
4298 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
4300         Include file cleanup for w32 files in src directory
4302         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
4303         fontset.h, blockinput.h.
4304         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
4305         charset.h, fontset.h.
4306         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
4307         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
4308         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
4309         in an ifdef-ed away block.
4310         Include fcntl.h for CYGWIN.
4311         (set_frame_param): Remove unused function.
4312         * src/w32select.c: Don't include charset.h and composite.h.
4313         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
4314         due to pointer signedness mismatches.
4315         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
4316         due to pointer signedness mismatches.
4317         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
4318         process.h, dispextern.h.
4319         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
4320         (Fw32_application_type): Avoid compiler warnings due to pointer
4321         signedness mismatches.
4322         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
4323         character.h, charset.h, dispextern.h.
4324         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
4325         to pointer signedness mismatches.
4326         * src/w32inevt.c: Don't include dispextern.h, window.h,
4327         termhooks.h, w32heap.h.
4328         * src/w32font.c: Don't include dispextern.h, character.h,
4329         charset.h, fontset.h, font.h.
4330         (intern_font_name, add_font_entity_to_list)
4331         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
4332         (list_all_matching_fonts): Avoid compiler warnings due to pointer
4333         signedness mismatches.
4334         * src/w32fns.c: Don't include character.h, intervals.h,
4335         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
4336         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
4337         (w32_color_map_lookup, add_system_logical_colors_to_map)
4338         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
4339         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
4340         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
4341         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
4342         compiler warnings, mainly due to pointer signedness mismatches.
4343         (unwind_create_frame_1): Remove unused function.
4344         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
4345         window.h, termhooks.h, dispextern.h.
4346         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
4347         signedness mismatch.
4348         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
4349         w32heap.h.
4351 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
4353         Improve doc-view wrt. auto-revert-mode
4355         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
4356         is corrupted (bug#21729).
4357         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
4359 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
4361         Describe dired-do-compress-to in the manual
4363         * etc/NEWS: Update.
4365         * lisp/dired-aux.el: Fix typo.
4367         * doc/emacs/dired.texi: Add entry.
4369 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
4371         Further fix for proper locale handling in tramp-gvfs.el
4373         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4374         Just suppress LC_MESSAGES locale category settings.
4376 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
4378         New lispref section “Security Considerations”
4380         This attempts to document some of the issues recently discussed
4381         on emacs-devel, and to indicate other such issues.  The section
4382         could be a lot longer.
4383         * doc/lispref/os.texi (Security Considerations):
4384         New node.
4385         * doc/lispref/elisp.texi (Top):
4386         * doc/lispref/processes.texi (Shell Arguments):
4387         * lisp/subr.el (shell-quote-argument):
4388         * src/callproc.c (syms_of_callproc):
4389         Reference it.
4391 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
4393         Merge from gnulib
4395         This incorporates:
4396         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
4397         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
4398         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
4399         Copy from gnulib.
4401 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
4403         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
4404         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
4406 2015-10-21  Ken Brown  <kbrown@cornell.edu>
4408         Further include-file cleanup
4410         * src/sheap.c: Include stdlib.h.
4411         * src/unexcw.c: Include string.h.
4413 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
4415         Fix logic in 'server-kill-emacs-query-function'
4417         * lisp/server.el (server-kill-emacs-query-function): Correct the
4418         logic that controls whether the user is asked for confirmation.
4419         (Bug#21723)
4421 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
4423         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
4424         (isearch--lax-regexp-function-p): New function.
4426 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
4428         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
4429         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
4430         around `isearch-regexp-function'.
4432 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
4434         * lisp/isearch.el: Rename word search to regexp-function search.
4435         `isearch-word' went well beyond its original purpose, and the name
4436         no longer makes sense.  It is now called
4437         `isearch-regexp-function', and its value should always be a function
4438         that converts a string to a regexp (though setting it to t is still
4439         supported for now).
4440         (isearch-word): Make obsolete.
4441         (isearch-regexp-function): New variable.
4442         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
4443         (with-isearch-suspended, isearch-toggle-regexp)
4444         (isearch-toggle-word, isearch-toggle-symbol)
4445         (isearch-toggle-character-fold, isearch-query-replace)
4446         (isearch-occur, isearch-highlight-regexp)
4447         (isearch-search-and-update, isearch-message-prefix)
4448         (isearch-search-fun-default, isearch-search)
4449         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
4450         Use it.
4451         (isearch-lazy-highlight-regexp-function): New var.
4452         (isearch-lazy-highlight-word): Make obsolete.
4453         (isearch--describe-regexp-mode): New function.
4454         (isearch--describe-word-mode): Make obsolete.
4456         * lisp/info.el (Info-isearch-search):
4457         * lisp/replace.el (replace-search, replace-highlight):
4458         * lisp/obsolete/longlines.el (longlines-search-function):
4459         * lisp/hexl.el (hexl-isearch-search-function):
4460         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
4461         Use the new var.
4463 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
4465         Add dired-do-compress-to command bound to "c"
4467         * lisp/dired-aux.el (dired-shell-command): Use the caller's
4468           `default-directory', return the result of `process-file'.
4469         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
4470         used by default.
4471         (dired-compress-files-alist): New defvar.
4472         (dired-do-compress-to): New command.
4474         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
4475         (dired-do-compress-to): Add an autoload entry.
4477         * etc/NEWS: Add two entries.
4479 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
4481         Make RefTeX work with LaTeX subfiles package
4483         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
4484         document class argument as master file for referencing purposes.
4486 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
4488         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
4490 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
4492         Include-file cleanup for src directory
4494         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
4495         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
4496         but does not include it directly.  As a general rule, a source
4497         file should include foo.h if it needs the interfaces that foo.h
4498         defines.
4499         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
4500         systime.h.
4501         * src/atimer.c: Don’t include blockinput.h.
4502         * src/buffer.c: Include coding.h, systime.h.  Don’t include
4503         keyboard.h, coding.h.
4504         * src/callint.c: Don’t include commands.h, keymap.h.
4505         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
4506         systty.h, termhooks.h.
4507         * src/casetab.c: Don’t include character.h.
4508         * src/category.c: Don’t include charset.h, keymap.h.
4509         * src/ccl.h: Don’t include character.h.
4510         * src/character.c: Don’t include charset.h.
4511         * src/charset.c: Don’t include disptab.h.
4512         * src/chartab.c: Don’t include ccl.h.
4513         * src/cm.c: Don’t include frame.h, termhooks.h.
4514         * src/cmds.c: Don’t include window.h, dispextern.h.
4515         * src/coding.c: Don’t include window.h, frame.h.
4516         * src/composite.c: Include composite.h.  Don’t include window.h,
4517         font.h.
4518         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
4519         * src/dbusbind.c: Don’t include frame.h.
4520         * src/decompress.c: Don’t include character.h.
4521         * src/dired.c: Don’t include character.h, commands.h, charset.h.
4522         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
4523         process.h, timespec.h.  Include systime.h.
4524         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
4525         * src/editfns.c: Include composite.h.  Don’t include frame.h.
4526         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
4527         commands.h, systty.h..
4528         * src/fileio.c: Don’t include intervals.h, dispextern.h.
4529         Include composite.h.
4530         * src/filelock.c: Don’t include character.h, systime.h.
4531         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
4532         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
4533         * src/font.c: Include termhooks.h.
4534         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
4535         struct composition_it, struct face, struct glyph_string.
4536         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
4537         intervals.h, window.h, termhooks.h.
4538         * src/frame.c: Don’t include character.h, commands.h, font.h.
4539         * src/frame.h: Don’t include dispextern.h.
4540         * src/fringe.c: Don’t include character.h.
4541         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
4542         character.h, charset.h, fontset.h.
4543         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
4544         fontset.h.
4545         * src/ftxfont.c: Don’t include dispextern.h, character.h,
4546         charset.h, fontset.h.
4547         * src/gfilenotify.c: Don’t include frame.h, process.h.
4548         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
4549         Don’t include syssignal.h, buffer.h, charset.h, font.h.
4550         * src/gtkutil.h: Don’t include frame.h.
4551         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
4552         Don’t include character.h.
4553         * src/indent.c: Don’t include keyboard.h, termchar.h.
4554         * src/inotify.c: Don’t include character.h, frame.h.
4555         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
4556         * src/intervals.c: Don’t include character.h, keyboard.h.
4557         * src/intervals.h: Don’t include dispextern.h, composite.h.
4558         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
4559         Include coding.h.
4560         * src/keyboard.h: Don’t incldue systime.h.
4561         * src/keymap.c: Don’t include charset.h, frame.h.
4562         * src/lread.c: Include dispextern.h and systime.h.
4563         Don’t include frame.h.  Include systime.h.
4564         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
4565         * src/menu.c: Include character.h, coding.h.  Don’t include
4566         dispextern.h.
4567         * src/menu.h: Don’t include systime.h.
4568         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
4569         intervals.h, termhooks.h.
4570         * src/print.c: Include coding.h.  Don’t include keyboard.h,
4571         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
4572         Add forward decl of struct terminal.
4573         * src/process.c: Don’t include termhooks.h, commands.h,
4574         dispextern.h, composite.h.
4575         * src/region-cache.c: Don’t include character.h.
4576         * src/scroll.c: Don’t include keyboard.h, window.h.
4577         * src/search.c: Don’t include category.h, commands.h.
4578         * src/sound.c: Don’t include dispextern.h.
4579         * src/syntax.c: Don’t include command.h, keymap.h.
4580         * src/sysdep.c: Don’t include window.h, dispextern.h.
4581         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
4582         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
4583         * src/terminal.c: Include character.h.
4584         Don’t include charset.h, coding.h.
4585         * src/textprop.c: Don’t include character.h.
4586         * src/undo.c: Don’t include character.h, commands.h, window.h.
4587         * src/unexsol.c: Don’t include character.h, charset.h.
4588         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
4589         window.h, dispextern.h, blockinput.h, character.h, font.h.
4590         * src/widgetprv.h: Don’t include widget.h.
4591         * src/window.c: Don’t include character.h, menu.h, intervals.h.
4592         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
4593         macros.h, process.h.
4594         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
4595         intervals.h.
4596         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
4597         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
4598         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
4599         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
4600         * src/xgselect.c: Don’t include timespec.h, frame.h.
4601         Include systime.h.
4602         * src/xgselect.h: Don’t include time.h.
4603         Use a forward decl to struct timespec instead.
4604         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
4605         dispextern.h.  Include systime.h.
4606         * src/xml.c: Don’t include character.h.
4607         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
4608         * src/xselect.c: Don’t include dispextern.h, character.h,
4609         buffer.h, process.h.
4610         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
4611         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
4612         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
4614 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
4616         (/ N) now returns the reciprocal of N
4618         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
4619         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
4620         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
4621         (color-xyz-to-srgb, color-xyz-to-lab):
4622         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
4623         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
4624         (shr-color-hsl-to-rgb-fractions):
4625         Exploit the change to simplify the code a bit.
4626         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
4627         Don’t complain about single-argument calls to ‘/’.
4628         * src/data.c (arith_driver, float_arith_driver):
4629         Implement the change.
4631 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
4633         Call vc-dir-refresh after stash operations
4635         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
4636         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
4638         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
4639         since it can be abbreviated (as returned by vc-find-root).
4641 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
4643         * lisp/vc/vc-svn.el:
4644         * lisp/vc/vc-mtn.el:
4645         * lisp/vc/vc-hg.el:
4646         * lisp/vc/vc-cvs.el:
4647         * lisp/vc/vc-git.el:
4648         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
4649         Its usages have been replaced with vc-run-delayed.
4651 2015-10-20  Dima Kogan  <dima@secretsauce.net>
4653         Fix memory leak in fontset handling
4655         * src/font.c (copy_font_spec): Make a deep copy of the input
4656         argument FONT.  (Bug#21651)
4658 2015-10-20  Michael Sperber  <mike@xemacs.org>
4660         * lisp/gnus/mailcap.el (mailcap-mime-data):
4661         Conditonalize `doc-view-mode', which does not exist on XEmacs.
4663 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
4665         Update the way directories are compressed
4667         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
4668         for *.tar.gz decompression to use a pipe.
4669         Add an entry for the default directory compression (to *.tar.g).
4670         (dired-compress-file): Update.
4672         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
4674 2015-10-20  Michael Sperber  <mike@xemacs.org>
4676         Unbreak `group' option for `mail-sources'
4678         * nnml.el (nnml-retrieve-groups, nnml-request-scan):
4679         * nnmail.el (nnmail-get-new-mail-per-group)
4680         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
4682 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
4684         New function seq-position
4686         * lisp/emacs-lisp/seq.el (seq-position): New function.
4687         * test/automated/seq-tests.el: New tests for seq-position.
4688         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
4690 2015-10-19  Ken Brown  <kbrown@cornell.edu>
4692         Enable --with-wide-int build on 32-bit Cygwin
4694         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
4695         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
4697 2015-10-19  Glenn Morris  <rgm@gnu.org>
4699         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
4701 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4703         Resurrect image loading under auto-image-file-mode
4705         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
4706         'openp' specially.  This special case was lost in the changes on
4707         2015-08-18.  (Bug#21685)
4709 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4711         Fix return value of 'set-file-extended-attributes'
4713         * lisp/files.el (set-file-extended-attributes): Return non-nil
4714         when setting either ACLs or SELinux context succeeds.  Document
4715         the return value.  (Bug#21699)
4717         * doc/lispref/files.texi (Changing Files): Document the return
4718         value of set-file-extended-attributes.
4720 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4722         Improve documentation of functions that change files
4724         * doc/lispref/files.texi (Changing Files): Document that these
4725         functions signal an error on failure.
4727 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
4729         Fix doc string of 'shell-quote-argument'
4731         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
4733 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
4735         Some minor Tramp changes
4737         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
4739         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
4740         Expand `tramp-auto-save-directory'.
4742 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
4744         Minor edits in Tramp
4746         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
4747         Declare it.
4749         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
4750         Remove declaration.
4752 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
4754         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
4756 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
4758         Avoid crashes when redisplayng a window changes faces or fonts
4760         * src/xdisp.c (redisplay_internal): If redisplaying the selected
4761         window or one of the frames turns on the frame's 'redisplay' flag,
4762         redisplay again.  (Bug#21428)
4764         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
4766 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
4768         Solve timimg issues in file-notify-tests.el
4770         * test/automated/file-notify-tests.el (file-notify-test02-events):
4771         Rectify `attribute-change' tests.  There are timing issues with
4772         gfilenotify.  (Bug#21669)
4774 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
4776         Fix quoting of data within htmlfontify doc
4778         * doc/misc/htmlfontify.texi (Data Structures, Customization):
4779         Fix quoting of data structures.  A Lisp quote is needed only
4780         when data appears within Lisp code.
4782 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
4784         * lisp/emacs-lisp/package.el: Reload archive-contents if
4785         priorities change.
4786         (package--old-archive-priorities): New variable.
4787         (package-read-all-archive-contents, package-menu--refresh): Use it
4788         to decide when the `package-archive-contents' needs to be read
4789         again.
4791 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
4793         Make src headers idempotent and standalone
4795         Redo src/*.h so that each include file is idempotent (that is, can
4796         be included multiple times with the latter inclusions having no
4797         effect) and standalone (that is, can be included by itself,
4798         with no include file other than config.h needed as a prerequisite).
4799         This is standard practice in GNU programs nowadays.
4800         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
4801         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
4802         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
4803         * src/regex.h [emacs]:
4804         * src/syntax.h, src/systty.h, src/termhooks.h:
4805         Include lisp.h, for Lisp_Object.
4806         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
4807         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
4808         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
4809         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
4810         * src/termopts.h, src/tparam.h, src/unexec.h:
4811         Protect against multiple inclusion.
4812         * src/buffer.h: Include character.h, for STRING_CHAR.
4813         * src/emacsgtkfixed.h (struct frame):
4814         * src/fontset.h (struct face):
4815         * src/region-cache.h (struct buffer):
4816         * src/termhooks.h (struct glyph):
4817         * src/xsettings.h (struct x_display_info):
4818         Add possibly-forward decl.
4819         * src/syntax.h: Include buffer.h, for BVAR.
4820         * src/sysselect.h: Include lisp.h, for eassume.
4821         * src/termchar.h: Include <stdio.h>, for FILE.
4822         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
4823         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
4825 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
4827         Handle symlink targets containing spaces in tramp-gvfs.el
4829         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4830         Handle symlink targets containing spaces.
4832 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
4834         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
4836         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
4837         same reason that `load-path' shouldn't.  Setting it via the customize
4838         interface is a trap for the user.
4840         Installed themes commonly add themselves to this variable, which means
4841         its value is not fit for being saved (it will permanently remember dirs
4842         that don't exist anymore).
4844         This is aggravated by the fact that Emacs always applies the `user'
4845         theme on top of any theme that's loaded, since this will apply the old
4846         variable value and remove any new directories that had been recently
4847         added by themes themselves.
4849         Not to mention, we already have `custom-theme-directory', which is safe
4850         to customize.
4852 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
4854         * lisp/mpc.el: Rename the new toggling commands.
4855         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
4856         (mpc-toggle-shuffle): Add "-toggle" in the name.
4858 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4860         Improve the doc string of 'completion-boundaries'
4862         * lisp/minibuffer.el (completion-boundaries): Rename the argument
4863         TABLE to COLLECTION, for consistency with other high-level
4864         completion functions.  Document how COLLECTION is called if it
4865         is a function.  (Bug#21644)
4867 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
4869         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
4871 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
4873         Make dired-do-compress work for *.zip files
4875         * lisp/dired-aux.el (dired-check-process): Transform the top-level
4876           comment into a docstring.
4877         (dired-shell-command): New command.  This mirrors
4878         `dired-check-process', but is more user-friendly for passing
4879         arguments.
4880         (dired-compress-file-suffixes): Allow to specify the command switches
4881         along with input (%i) and output (%o) inside the PROGRAM part.
4882         Add an entry for *.zip files, and update the entry for *.tar.gz files
4883         to the new style.  Update the docstring.
4884         (dired-compress-file): When PROGRAM matches %i or %o, use the new
4885         logic.
4886         (dired-update-file-line): Avoid an error when at end of buffer.
4888         Fixes bug#21637.
4890 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4892         Minor improvement in documentation of internals
4894         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
4896 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4898         Improve documentation of COLLECTION in completion functions
4900         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
4901         cross-reference to "Programmed Completion".
4903         * src/minibuf.c (Fcompleting_read): Improve the doc string.
4904         (Bug#21644)
4906 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4908         Add more release info to etc/HISTORY
4910         * etc/HISTORY: Add more release information about 19.x and 20.x
4911         versions.
4913 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
4915         New file etc/HISTORY
4917         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
4918         * etc/HISTORY: New file.
4919         * etc/NEWS: Mention it.
4921 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
4923         js-mode: Don't misindent generator methods
4925         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
4926         generator methods from multiplication operator
4927         (https://github.com/mooz/js2-mode/issues/275).
4929 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
4931         Fix animation timeout delay calculation
4933         * lisp/image.el (image-animate-timeout):
4934         Don’t assume speed is floating-point.
4936 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
4938         Add commands for controlling MPD modes
4940         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
4941         (mpc-cmd-single): New functions.
4942         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
4943         (mpc-mode-menu): Add new commands as menu items.
4945 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
4947         Refer to `(elisp)Basic Completion' in completing-read docstring
4949         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
4950         Completion' in the docstring (bug#21644).
4952 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4954         * lisp/mpc.el (mpc-format): Always push form to pred
4956 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
4958         Spelling fixes
4960         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
4961         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
4962         Fix misspelling of nonexistent file name.
4964 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4966         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
4968 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
4970         Some editing fixes in Tramp
4972         * lisp/net/tramp-gvfs.el:
4973         * doc/misc/tramp.texi: "customer option" -> "custom option".
4975         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
4977 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
4979         Use proper localization in tramp-gvfs.el
4981         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4982         Suppress localized settings in order to proper parse gfvs output.
4984 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
4986         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
4987         Quote argument in proper order.  (Bug#21562)
4989 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
4991         Fix typos in docstrings
4993         * lisp/emacs-lisp/map.el:
4994         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
4995           macros.
4997 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4999         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
5001 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
5003         Make dired-jump work with tar-subfile-mode
5005         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
5006           emitting an error, switch to `tar-superior-buffer'.
5008 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
5010         * .gitignore: Add build-aux/ar-lib.
5012 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
5014         Better docstrings in seq.el and map.el
5016         * lisp/emacs-lisp/map.el:
5017         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
5019 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
5021         Merge from gnulib
5023         This incorporates:
5024         2015-10-13 binary-io, u64, unistd: port to strict C
5025         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
5026         2015-09-25 c-ctype: port better to z/OS EBCDIC
5027         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
5028         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
5029         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
5030         Copy from gnulib.
5032 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
5034         Take XPNTR private
5036         * src/alloc.c (PURE_POINTER_P): Remove.
5037         All uses replaced with PURE_P.
5038         (XPNTR_OR_SYMBOL_OFFSET): New function.
5039         (XPNTR): Move here from lisp.h.
5040         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
5041         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
5042         Remove unnecessary cast.
5043         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
5044         to avoid an unnecessary runtime test for symbols.
5045         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
5046         Only alloc.c needs XPNTR now.
5048 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
5050         Add MPC play/pause command
5052         * lisp/mpc.el (mpc-toggle-play): New command.
5053         (mpc-mode-map): Bind it to "s".
5054         (mpc-mode-menu): Add corresponding menu item.
5056 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
5058         Add bindings and menu items for prev and next tracks
5060         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
5061         "<" to mpc-prev.
5062         (mpc-mode-menu): Add corresponding menu items
5064 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
5066         Reduce face-related consing during frame creation.
5068         * faces.el (face--attributes-unspecified): Compute the "unspecified"
5069         attribute list once.
5070         (face-spec-reset-face): Use it instead of building the list.
5072 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
5074         Do process ConfigureNotify events indicating size changes.
5076         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
5077         events don't have the same size, process each one.
5079 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
5081         Derive mpc-mode from special-mode
5083         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
5084         (mpc-mode): Derive from special mode.
5085         (mpc-songs-mode-map): Don't set parent keymap.
5087 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
5089         Fix error messages for when covers are not found.
5091         The last change to mpc-format let the binding to file call
5092         mpc-file-local-copy with nil argument.  Instead, employ if-let here
5093         so nil bindings don't result in needless computation and errors.
5094         * lisp/mpc.el: Require 'subr-x at compile time.
5095         * lisp/mpc.el (mpc-format): Use if-let.
5097 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
5099         Make dired-do-compress work for *.tar.gz files
5101         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
5102           "tar -zxvf" to *.tar.gz; update docstring.
5104         (dired-compress-file): Allow to specify switches after the command in
5105         `dired-compress-file-suffixes'.
5107 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
5109         Make dired-do-compress work for directories
5111         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
5112           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
5113         Also convert the top comment into a docstring.
5115 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
5117         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
5119         ... since it might come straight from the memoizing table.
5121 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
5123         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
5125 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
5127         Use special-mode in eww list modes
5129         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
5130         (eww-buffers-mode): Derive from special-mode and remove redundant
5131         setting of buffer-read-only.
5132         (eww-mode-map): Remove redundant keymap parent setting.
5133         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
5134         Remove redundant keymap suppressions and mappings.
5136 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
5138         Allow setting frame pixel sizes from frame parameters (Bug#21415)
5140         Also fix some misfeatures in frame (re-)sizing code, add more
5141         debugging information and remove some dead code.
5143         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
5144         parameter names when setting `frame-size-history'.
5145         (frame--size-history): New function.
5147         * src/frame.c (frame_inhibit_resize): If frame has not been made
5148         yet, return t if inhibit_horizontal_resize or
5149         inhibit_vertical_resize bit have been set.
5150         (adjust_frame_size): Simplify.
5151         (make_frame): Initialize inhibit_horizontal_resize,
5152         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
5153         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
5154         inhibit_vertical_resize slots.
5155         (x_set_frame_parameters): Handle `text-pixels' specification for
5156         width and height parameters.  Don't consider new_height or
5157         new_width changes.  Call adjust_frame_size instead of
5158         Fset_frame_size.
5159         (x_figure_window_size): Two new arguments x_width and y_width
5160         returning frame's figures width and height.  Calculate tool bar
5161         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
5162         Handle `text-pixels' specification for width and height
5163         parameters.
5164         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
5165         (Qx_set_window_size_1, Qx_set_window_size_2)
5166         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
5167         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
5168         (Qfree_frame_menubar_2): New symbols.
5169         * src/frame.h (structure frame): New booleans
5170         tool_bar_redisplayed, tool_bar_resized,
5171         inhibit_horizontal_resize, inhibit_vertical_resize.
5172         (x_figure_window_size): Update external declaration.
5173         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
5174         calling gtk_window_resize.
5175         (update_frame_tool_bar): Make inhibiting of frame resizing more
5176         discriminative.  Set tool_bar_resized bit.
5177         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
5178         resizing more discriminative.  Call adjust_frame_size instead of
5179         x_set_window_size.
5180         (Fx_create_frame): Handle x_width and x_height if
5181         set by x_figure_window_size.
5182         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
5183         subtract 3 from tool bar height.
5184         (x_set_window_size): Add frame_size_history_add call.
5185         (x_new_font): Call adjust_frame_size instead of
5186         x_set_window_size.
5187         * src/w32fns.c (x_change_tool_bar_height): Reset
5188         tool_bar_redisplayed and tool_bar_resized bits when adding tool
5189         bar.  Make inhibiting of frame resizing more discriminative.
5190         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
5191         (Fx_create_frame): Handle x_width and x_height if set by
5192         x_figure_window_size.  Set size hints before adjusting frame size.
5193         (x_create_tip_frame): Adjust x_figure_window_size call.
5194         * src/w32term.c (x_set_window_size): Add frame_size_history_add
5195         call.
5196         * src/widget.c (set_frame_size): Remove dead code.  Add
5197         frame_size_history_add call.  When frame_resize_pixelwise is t
5198         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
5199         pixel_width and pixel_height.
5200         (update_various_frame_slots): Remove dead code.
5201         (EmacsFrameResize): Add more information in
5202         frame_size_history_add call.
5203         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
5204         is not set.
5205         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
5206         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
5207         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
5208         tool_bar_resized bits when adding tool bar.  Make inhibiting of
5209         frame resizing more discriminative.
5210         (Fx_create_frame): Handle x_width and x_height if set by
5211         x_figure_window_size.  Set size hints before adjusting frame size.
5212         (x_create_tip_frame): Adjust x_figure_window_size call.
5213         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
5214         (set_frame_menubar): On Lucid never add core-border-width to
5215         avoid that adding XtNinternalBorderWidth adds it again.
5216         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
5217         * src/xterm.c (x_new_font): In non-toolkit case handle size
5218         change of menu bar.
5219         (x_set_window_size_1): Fix calls to frame_size_history_add.
5220         (x_wm_set_size_hint): Remove dead code.  Set
5221         size_hints.min_width and size_hints.min_height to base_width and
5222         base_height.
5224 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
5226         * test/automated/file-notify-tests.el (file-notify--test-timeout):
5227         Add docstring.  Increase to 10 seconds for remote
5228         directories.  (Bug#21669)
5230 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
5232         Unmacroize ebrowse.c and etags.c a bit
5234         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
5235         (streq, filename_eq, set_flag, has_flag): Now inline functions.
5236         (set_flag): First arg is now an address, not an lvalue.
5237         All callers changed.
5238         (filename_eq, set_flag, has_flag):
5239         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
5240         All callers changed.
5241         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
5242         Now inline functions.  Remove asserts that are unnecessary these
5243         days (and in some cases were too-generous anyway).
5245 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
5247         Use highlight for current items
5249         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
5250         Apply highlight face instead of region face.
5252 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
5254         Search for more cover image names in MPC
5256         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
5257         case insensitively
5259 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
5261         Remove or comment out unused variables
5263         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
5264         nontext_cursor, mode_cursor, hand_cursor and count.
5265         (x_change_tool_bar_height): Remove variable old_text_height.
5266         (deliver_wm_chars): Remove variable strip_Alt.
5267         (Fw32_shell_execute): Remove variable document_a.
5268         (Fw32_frame_geometry): Remove variable fullboth.
5269         * src/w32term.c (w32_setup_relief_color): Comment out variable
5270         w32_display_info.
5271         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
5272         (w32_read_socket): Comment out variables rows, columns.
5273         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
5275 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
5277         * src/w32proc.c (sys_select): Fix bitwise test.
5279 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
5281         Minor typo corrections in doc strings
5283         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
5284         Doc fixes.
5286 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
5288         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
5290 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
5292         Attempt to avoid crashes in plist-member
5294         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
5295         and a call to XCDR.  (Bug#21655)
5297 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
5299         * lisp/select.el (gui-get-primary-selection): In
5300         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
5302 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
5304         Support RTF in doc-view
5306         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
5308 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
5310         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
5312 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
5314         Replace the usage of an obsolete function in auth-source.el
5316         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
5317         Replace an usage of `epg-context-set-armor' with `setf'.
5319 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
5321         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
5323 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
5325         Have calc-yank recognize numbers in different bases.
5327         * lisp/calc/calc-yank.el (math-number-regexp): New function.
5328         (calc-yank): Use `math-number-regexp' to recognize numbers.
5330 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5332         Handle an opaque-move X11 window manager operation more efficiently
5334         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
5335         followed by more ConfigureNotify events for the same window, process
5336         only the last one.
5338 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5340         Fix cursor setting for tip frame; re-enable cursor generation
5342         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
5343         attributes sent when creating the new X window.  Don't skip setting
5344         the pointerColor parameter.
5346 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5348         Rewrite x_set_mouse_color to sync less
5350         We can track serial numbers of X requests and correlate error events
5351         with the associated requests.  This way we can identify errors for
5352         specific calls without having to use XSync after every one.
5354         * src/xfns.c (enum mouse_cursor): New type.
5355         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
5356         (mouse_cursor_types): New array listing the Lisp variables and default
5357         cursor appearances for each cursor type.
5358         (x_set_mouse_color_handler): New function; checks error event serial
5359         number against submitted requests.
5360         (x_set_mouse_color): Updated to use the new error handler callback,
5361         and to be more table-driven, to simplify repetitious code.
5363 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5365         Add x_catch_errors_with_handler
5367         * src/xterm.c (struct x_error_message_stack): Add new fields for a
5368         callback function and associated data pointer.
5369         (x_error_catcher): If the callback function is set, call it after
5370         saving the error message string.
5371         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
5372         accepts a callback function and data pointer.
5373         (x_catch_errors): Now a wrapper function.
5374         * src/xterm.h (x_special_error_handler): New typedef.
5375         (x_catch_errors_with_handler): Declare.
5377 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5379         Introduce x_uncatch_errors_after_check to reduce XSync calls
5381         Both x_had_errors_p and x_check_errors call XSync, so if they're
5382         immediately followed by x_uncatch_errors, its XSync call will be
5383         redundant, resulting in a wasted round trip to the X server.
5385         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
5386         x_uncatch_errors without the XSync call.
5387         (XTmouse_position, x_wm_supports):
5388         * src/xfns.c (x_set_mouse_color):
5389         * src/xmenu.c (Fx_menu_bar_open_internal):
5390         * src/xselect.c (x_own_selection, x_get_foreign_selection):
5391         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
5392         * src/xterm.h (x_uncatch_errors_after_check): Declare.
5394 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
5396         Document the optional prefix to `calc-yank'
5398         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
5399         prefix to `calc-yank'.
5400         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
5401         the Calc buffer are yanked back unchanged.
5403 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
5405         * lisp/calendar/calendar.el: Display buffer before executing body.
5407         In each use of this macro, the modeline is derived from a window width
5408         calculation, which will be wrong if (display-buffer) splits the window
5409         horizontally.
5411 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5413         Use ‘echo’ safely with ‘\’ or leading ‘-’
5415         POSIX says that ‘echo FOO’ produces implementation-defined output
5416         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
5417         behavior in that case.
5418         * Makefile.in (removenullpaths): Remove.
5419         (epaths-force): Rewrite to avoid the need for ‘echo’.
5420         (install-etc): Be clearer about escaping the shell metacharacters
5421         ‘\’ and ‘$’.
5422         * Makefile.in (install-arch-indep, install-etcdoc):
5423         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
5424         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
5425         * configure.ac, lib-src/rcs2log, make-dist:
5426         * src/Makefile.in (lisp.mk):
5427         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
5428         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
5429         if $foo can contain arbitrary characters.
5430         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
5431         * doc/lispref/two-volume.make (vol1.pdf):
5432         * test/etags/make-src/Makefile (web ftp publish):
5433         Use ‘printf’ rather than ‘echo -e’.
5435 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
5437         Allow numbers with different radixes to be yanked.
5439         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
5440         default base 10.
5442 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5444         Improve CHECK_IMPURE and PURE_P speedup
5446         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
5448 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
5450         Use events instead of chars to keep track of steps.
5452         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
5453         to keep track of steps.
5455 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5457         Fix --enable-gcc-warnings problem with older GCC
5459         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
5460         This is for building with --enable-gcc-warnings with
5461         GCC 4.6 through 5.0.
5463 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
5465         Fix vertical-motion in truncated lines that end in a stretch
5467         * src/indent.c (Fvertical_motion): Expect overshoot when point is
5468         beyond window margin and lines are truncated, even if we have a
5469         stretch at point.  (Bug#21468)
5471 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
5473         Avoid link-time errors due to inline functions
5475         * src/emacs.c: Include puresize.h, to avoid link-time errors in
5476         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
5477         inline functions.
5479 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
5481         * src/data.c (Faset): Fix last change.
5483 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5485         CHECK_IMPURE and PURE_P speedup
5487         * src/intervals.c (create_root_interval):
5488         Do CHECK_IMPURE only for strings; not needed for buffers.
5489         Prefer ! STRINGP to BUFFERP, for a tad more speed.
5490         * src/puresize.h (CHECK_IMPURE, PURE_P):
5491         Now inline functions instead of macros.
5492         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
5493         All callers changed.
5494         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
5495         All callers changed.
5497 2015-10-09  Noah Friedman  <friedman@splode.com>
5499         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
5501 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5503         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
5505         our after-change-function, rather than re-adding it if it was removed.
5507 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5509         * lisp/cedet/ede: Silence some compiler warnings
5511         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
5512         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
5513         (ede-apply-object-keymap, ede-reset-all-buffers)
5514         (ede-auto-add-to-target): Use dolist.
5515         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
5516         Use field names rather than initarg names in `oref'.
5517         (ede-load-project-file): Remove unused var `file'.
5518         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
5519         (ede-set): Remove unused var `a'.
5521         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
5522         (ede-project-autoload): Avoid the old-style "name" argument.
5523         (ede-emacs-find-matching-target): Use field names rather than initarg
5524         names in `oref'.
5526         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
5527         (ede-linux-load, ede-project-autoload): Avoid the old-style
5528         "name" argument.
5529         (ede-linux-find-matching-target): Use field names rather than initarg
5530         names in `oref'.
5532 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5534         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
5536 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5538         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
5539         indenting too far after ":-".
5541 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
5543         Update case-table and categories of recently added characters
5545         * lisp/international/characters.el: Update information about Latin
5546         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
5547         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
5548         blocks.  (Byug#21654)
5550 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
5552         * src/frame.c (adjust_frame_size): In minibuffer-only windows
5553         don't count minibuffer height twice.  (Bug#21643)
5555 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
5557         Avoid inflooping in font-lock
5559         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
5560         inhibit-field-text-motion around the call to
5561         line-beginning-position, to avoid inflooping.  (Bug#21615)
5563 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
5565         Refactor duplicated code; ensure default is in completions
5567         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
5568         New function.
5569         (reftex-extract-bib-entries): Use it.
5570         (reftex-extract-bib-entries-from-thebibliography): Use it.
5572 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5574         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
5575         in the example.
5577 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5579         * lisp/calc/calc.el: Silence byte-compiler warnings.
5580         (calc-scan-for-dels): Use ignore-errors.
5581         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
5582         (calc-read-key-sequence): Remove unused var `prompt2'.
5583         (calc-kill-stack-buffer): Remove unused var `buflist'.
5584         (calc): Remove unused var `oldbuf'.
5585         (calc-refresh): Use inhibit-read-only.
5586         (calc-can-abbrev-vectors): Declare.
5587         (calc-record): Remove unused var `mainbuf'.
5588         (math-sub-bignum): Remove unused var `sum'.
5589         (math-svo-c, math-svo-wid, math-svo-off): Declare.
5591 2015-10-08  Daiki Ueno  <ueno@gnu.org>
5593         Use g_clear_error instead of g_error_free
5595         * src/image.c: Define g_clear_error instead of g_error_free.
5596         (init_svg_functions): Resolve symbol g_clear_error instead of
5597         g_error_free.
5598         (svg_load_image): Use g_clear_error instead of g_error_free, to
5599         suppress GLib warnings when ERR is not set.  See bug#21641.
5601 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
5603         * src/image.c (image_size_error): Simplify.
5605 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
5607         Fix problems caught with --enable-gcc-warnings
5609         * src/image.c (lookup_rgb_color):
5610         * src/xfns.c (x_defined_color):
5611         * src/xterm.c (x_parse_color):
5612         Remove unused locals.
5614 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
5616         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
5618 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
5620         Format initial input uniformly
5622         * lisp/calc/calc.el (calc-digit-start-entry): New function.
5623         * lisp/calc/calc.el (calcDigit-start):
5624         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
5625         Use `calc-digit-start-entry' to format input.
5627 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5629         Disable non-working pointerColor setting for X tooltip frame
5631         It generates a bunch of server traffic, but there's some bug wherein
5632         the new mouse cursor settings don't seem to get used.  In most
5633         situations the cursor isn't likely to be seen anyway, so it's not
5634         urgent to fix.
5636         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
5638 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5640         Reduce some unnecessary X calls
5642         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
5643         call.  If border width is wanted, get it from the XGetGeometry call
5644         instead of calling XGetWindowAttributes on the same window.  Skip some
5645         X calls if we've already detected an error from the X server.
5646         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
5647         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
5649 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5651         Reduce color allocation/query traffic in the TrueColor case
5653         When working with an X visual with TrueColor class, pixel values can
5654         be generated from the RGB values according to mask value provided by
5655         the server on connection.  Some of the image-handling code was already
5656         doing this.
5658         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
5659         lookup_rgb_color.
5660         (x_mutable_colormap): New function.
5661         * src/image.c (lookup_rgb_color): Move pixel composition code to
5662         x_make_truecolor_pixel.
5663         (x_kill_gs_process): Call x_mutable_colormap.
5664         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
5665         x_mutable_colormap.
5666         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
5667         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
5668         pixel value into RGB values directly, and don't send a request to the
5669         server.
5670         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
5671         value with x_make_truecolor_pixel.
5672         (x_copy_color): For an immutable color map, just return the provided
5673         pixel value.
5675 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5677         Cache XParseColor results in the X display info structure
5679         With repeated lookups of foreground and background colors for multiple
5680         faces per frame, we issue a lot of redundant color name lookups to the
5681         X server, waiting every time for the response.  On a remote network
5682         with, say, 30ms round-trip time, this can add nearly a full second to
5683         creation of a new frame.
5685         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
5686         * src/image.c (get_spec_bg_or_alpha_as_argb):
5687         (xpm_init_color_cache, xpm_lookup_color):
5688         * src/xfns.c (x_defined_color):
5689         * src/xterm.c (x_parse_color): New function; caches color names not
5690         starting with "#" in the display-info structure.
5691         (x_delete_display): Delete the cache content.
5692         * src/xterm.h (struct color_name_cache_entry): New type.
5693         (x_parse_color): Declare.
5694         (struct x_display_info): Add a new field for the cache.
5696 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5698         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
5700 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
5702         Fix segfault in image_size_error
5704         * src/image.c (image_size_error): Pass a Lisp string to
5705         image_error, not a C string.  (Bug#21641)
5707 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
5709         Highlight CSS variable definitions
5711         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
5712         CSS variables.  (Bug#21638)
5714 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5716         * test/automated/tabulated-list-test.el: New file.
5717         Test bug#21639 and some basic functionality.
5719 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5721         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
5722         Check if column can be sorted before trying.  (Bug#21639)
5724 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
5726         Add test for `self-insert-command' (bug#21633)
5728         * test/automated/cmds-tests.el: New file.
5730 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
5732         * src/window.c (resize_frame_windows): Don't set root window's
5733         top position when resizing horizontally.
5735 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5737         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
5738         Document more possible values.
5740 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
5742         * lisp/textmodes/tex-mode.el: Use lexical-binding.
5744 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
5746         * lisp/indent.el (indent--default-inside-comment): New function.
5747         (indent-for-tab-command): Use it for `noindent' indentation.
5749 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
5751         Fix bug in GC_CHECK_MARKED_OBJECTS check
5753         * src/alloc.c (mark_object): Fix bug in checking code.
5754         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
5755         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
5756         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
5757         bucket.  The bug did not affect behavior either in the normal case
5758         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
5759         not have an internal error that a properly-written
5760         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
5762 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
5764         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
5765         Add prettified version for \\Bbb{Q}.
5767 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5769         * test/automated/package-test.el (package-test-install-single):
5770         Add a test for bug#21625.
5772 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
5774         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
5775           not a package-desc object.  Also clarify documentation.  (Bug#21625)
5777 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
5779         Fix display of characters adjacent to ZWJ and ZWNJ
5781         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
5782         characters the same as directional formatting controls.
5783         (bidi_level_of_next_char): Include all Bn characters in rule L1,
5784         as mandated by the UBA.
5786 2015-10-06  Andreas Schwab  <schwab@suse.de>
5788         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
5789         number.  (Bug#21633)
5791 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
5793         * doc/lispref/objects.texi (Window Type): Add a cross reference.
5795         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
5797 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
5799         * lisp/language/misc-lang.el (composition-function-table):
5800         Fix entries for Arabic and Syriac.
5802 2015-10-05  Damien Cassou  <damien@cassou.me>
5804         Add first unit tests for auth-source.el
5806         * test/automated/auth-source-tests.el: New file.
5808 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
5810         Remove redundant redisplay code
5812         * src/xdisp.c (redisplay_internal, try_cursor_movement)
5813         (try_window_reusing_current_matrix, try_window_id): Remove
5814         redundant restrictions on redisplay optimizations based on the
5815         frame's 'redisplay' flag.  See
5816         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
5817         discussions.
5819 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5821         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
5823 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
5825         Update tutorials/TUTORIAL.cn
5827         * etc/tutorials/TUTORIAL.cn: Improve translation.
5829 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5831         * src/macfont.m (macfont_encode_char, syms_of_macfont):
5832         Remove unused vars.
5834 2015-10-04  Stefan Merten  <stefan@merten-home.de>
5836         Pull in version numbers from rst.el upstream release.
5838         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
5839         (rst-svn-timestamp, rst-official-version)
5840         (rst-official-cvs-rev, rst-package-emacs-version-alist):
5841         Update version numbers.
5843 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
5845         * test/automated/coding-tests.el: New file.
5847 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
5849         Improve XEmacs compatibility of Tramp
5851         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
5852         Declare if it doesn't exist.
5853         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
5854         (redisplay): Make it an alias if it doesn't exist.
5856         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
5857         `file-remote-p' (due to XEmacs compatibility).
5859         * lisp/net/trampver.el (locate-dominating-file)
5860         (tramp-compat-replace-regexp-in-string): Autoload.
5861         (tramp-repository-get-version): Do not dupe byte-compiler.
5863 2015-09-02  K. Handa  <handa@gnu.org>
5865         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
5867         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
5868         Adjusted for the change of type of elements in the array
5869         MFLTGlyphString.glyphs.
5871 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
5872             Michael Heerdegen  <michael_heerdegen@web.de>
5874         shr: fix too long lines in rendered buffers (Bug#21012)
5876         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
5877         Correct calculation of available width.
5878         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
5879         is nil.
5881 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5883         Restore blank line before next section, erroneously erased
5884         in my previous commit
5886         * etc/compilation.txt (symbol ant): Add an additional trailing blank
5887         line to this section, so that there are two of them immediately before
5888         the next section.
5890 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5892         Support MSW filename style for ant compilation error regexp
5894         * etc/compilation.txt (symbol ant):
5895         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
5896         Support MSW filename style.
5898 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
5900         * nt/INSTALL: Minor spelling and quote fixes.
5902         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
5904 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
5906         Maintain ordering of JSON object keys by default
5908         * lisp/json.el (json-object-type): Mention order handling in doc-string.
5909         (json--plist-reverse): New utility function.
5910         (json-read-object): Maintain ordering for alists and plists.
5911         (json-pretty-print): Ensure that ordering is maintained.
5913         * test/automated/json-tests.el (test-json-plist-reverse): New test for
5914         `json--plist-reverse'.
5915         (json-read-simple-alist): Update test to accommodate for changes in
5916         `json-read-object'.
5918         * etc/NEWS: Document the new behavior of the pretty printing functions.
5920 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
5922         * src/coding.c (complement_process_encoding_system): Revert last change.
5924 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
5926         * admin/MAINTAINERS: Add entry for Ulf Jasper.
5928 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
5930         Doc fix for `defmacro'
5932         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
5934 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
5936         More validatation of coding systems
5938         * src/fileio.c (Finsert_file_contents): Remove redundant
5939         coding-system check.
5940         (choose_write_coding_system): Likewise.
5941         * src/coding.c (complement_process_encoding_system): Check argument
5942         for valid coding system.
5944 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5946         Avoid crashes in coding_inherit_eol_type
5948         * src/coding.c (coding_inherit_eol_type): Check the validity of
5949         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
5950         (Bug#21602)
5952 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5954         More validatation of coding system in 'write-region'
5956         * src/coding.c (choose_write_coding_system): More validation of
5957         coding-system from various sources.  Suggested by Andreas Schwab
5958         <schwab@linux-m68k.org>.  (Bug#21602)
5960 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5962         Avoid crashes due to invalid coding-system
5964         * src/fileio.c (choose_write_coding_system)
5965         (Finsert_file_contents): Check validity of coding-system-for-write
5966         and coding-system-for-read bound by the caller.  (Bug#21602)
5968 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
5970         Adapt to new prettify-symbols-unprettify-at-point default
5972         * etc/NEWS: Mention that unprettication of symbol at point is off
5973         by default.
5975 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
5977         Revert my two recent process.c changes
5979         Revert "Improve last commit to process.c" and "Remove callback-handled
5980         channels from Available set" because they did not fix bug#21313.
5982         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
5983         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
5985 2015-10-02  Markus Triska  <triska@metalevel.at>
5987         * lisp/progmodes/prolog.el: Update and extend operator table.
5988         (prolog-smie-grammar): Add multifile, public etc.
5990 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
5992         Allow autogen even when Git is not installed
5994         * autogen.sh: Test ‘git status’ before trying to use Git.
5996 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
5998         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
5999         Adjust lto/lfrom when we have uncommitted changes.
6001 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
6003         Fix problems found by clang 3.5.0
6005         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
6006         * src/font.c (font_parse_family_registry):
6007         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
6009 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
6011         * nt/INSTALL: Update instructions for running autogen.sh.
6013         * nt/INSTALL: Point to ezwinports for libXpm binaries.
6015 2015-10-02  Daniel Colascione  <dancol@dancol.org>
6017         Fix winner in cl-lib not loaded case
6019         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
6020         without requiring CL
6022 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
6024         Fix a few problems with directed quotes
6026         This is in response to a problem report by Kaushal Modi in:
6027         http://bugs.gnu.org/21588#25
6028         * lisp/cedet/mode-local.el (describe-mode-local-overload):
6029         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
6030         * lisp/info-xref.el (info-xref-check-all-custom):
6031         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
6032         Prefer directed to undirected single quotes in diagnostics.
6034 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
6036         Revert "Attempt to fix slow redisplay caused by last changes"
6038         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
6039         (try_cursor_movement): Don't relax requirements for redisplay
6040         optimizations for the selected frame.  (Bug#21597)
6042         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
6044 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
6046         Fix slow redisplay when daemon frame exists
6048         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
6049         when looking for frames that need to be redisplayed.  (Bug#21597)
6051 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
6053         Attempt to fix slow redisplay caused by last changes
6055         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
6056         (try_cursor_movement): Relax requirements for redisplay
6057         optimizations for the selected frame.  (Bug#21597)
6059 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
6061         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
6062         Improve doc string.
6064 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
6066         * lisp/minibuffer.el (minibuffer-completion-help):
6067         Set default base-size, in case completion table does not set it.
6069 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
6071         Fix GUD display of GDB output with non-ASCII text
6073         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
6074         (gdb-mi-decode): New function.
6075         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
6076         decode octal escapes in GDB output.  (Bug#21572)
6078 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
6080         * nt/INSTALL: Document where to find XPM support files.
6082 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
6084         Un- and re-prettification are not exclusive
6086         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
6087         Re-apply prettification to previous symbol also when unprettifying
6088         next one.
6090 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
6092         Don't unprettify symbol at point by default
6094         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
6095         Default to disabled (nil).
6097 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
6099         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
6100         Support unprettifying when point is after a symbol.
6102         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
6104 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
6106         Avoid assertion violations in push_prefix_prop
6108         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
6109         a line that has a line-prefix defined starts with an image.  (Bug#21428)
6111 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
6113         Disable some display optimizations when frames need redisplay
6115         These optimizations were previously disabled by the
6116         windows_or_buffers_changed flag, which now is not set
6117         when only some frames need to be redrawn.
6118         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
6119         'redisplay' flag is set.
6120         (try_window_reusing_current_matrix, try_window_id)
6121         (try_cursor_movement): Disable these optimizations when the
6122         frame's 'redisplay' flag is set.
6124 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
6126         Don't modify buffer by unprettification
6128         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
6129         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
6130         modify buffer when setting/removing custom prettify-symbols-start/end
6131         text properties.  Add them to font-lock-extra-managed-props, too.
6133 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
6135         Try to avoid redisplaying all frames when creating a new one
6137         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
6138         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
6139         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
6140         * src/frame.c (x_set_screen_gamma): Set the specific frame's
6141         `redisplay' bit rather than windows_or_buffers_changed.
6143         * src/window.c (apply_window_adjustment): Remove redundant setting of
6144         windows_or_buffers_changed.
6146         * src/xdisp.c (redisplay_internal): Set the specific frame's
6147         `redisplay' bit rather than update_mode_lines in response to
6148         cursor_type_changed.
6149         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
6150         (AINC): Adjust accordingly.
6152 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
6154         Implement unprettification of symbol at point
6156         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
6157         symbol at point.
6158         (prettify-symbols--current-symbol-bounds): New variable.
6159         (prettify-symbols--post-command-hook): New function.
6160         (prettify-symbols-unprettify-at-point): New defcustom.
6161         (prettify-symbols-mode): Use it.
6162         (prettify-symbols--compose-symbol): Use them.
6164 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6166         * src/macfont.m (mac_font_descriptor_supports_languages):
6167         Regard "zh" as synonym of "zh-Hans".
6169 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6171         Work around crash when displaying etc/HELLO on OS X 10.11
6173         * src/macfont.m (mac_font_get_weight)
6174         (mac_font_descriptor_get_adjusted_weight): New functions.
6175         (macfont_store_descriptor_attributes): Adjust weight.
6177 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
6179         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
6181 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
6183         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
6184         of the columns.
6186 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
6188         Use unar and lsar to handle RAR archives in arc-mode
6190         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
6191         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
6193 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
6195         Clarify :create in auth-source's docs
6197         * lisp/gnus/auth-source.el (auth-source-search):
6198         Clarify :create's meaning.
6200 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
6202         Avoid empty -path arguments in rgrep
6204         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
6205         the list produced according to grep-find-ignored-directories,
6206         before passing it to Find/Grep invocation.  (Bug#21548)
6208 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
6210         Clarify documentation of pos-visible-in-window-p
6212         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
6213         t for POS.  See
6214         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
6215         for the original report.
6217         * doc/lispref/windows.texi (Window Start and End): Clarify the
6218         meaning of t for the POSITION argument of pos-visible-in-window-p.
6220 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
6222         * lisp/progmodes/prolog.el: Fix various indentation cases.
6223         (prolog-operator-chars): New const (add \\).
6224         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
6225         (prolog-smie-rules): Add rules according to bug#21526.
6227 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
6229         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
6230         (sh-indent-after-continuation): Add new value `always' (bug#17620)
6231         (sh-smie-sh-rules): Remove old handling of continued lines.
6232         (sh-smie--indent-continuation): New function.
6233         (sh-set-shell): Use it.
6235 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
6237         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
6238         Remove redundant :group keyword args.
6239         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
6240         Remove variables.
6241         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
6242         turn them into compile-time variables.
6243         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
6244         Add rules for break, continue, return, global, and persistent.
6245         Refine the rule for "until".
6246         (octave-smie--funcall-p, octave-smie--end-index-p)
6247         (octave-smie--in-parens-p): New functions.
6248         (octave-smie-backward-token, octave-smie-forward-token): Use them to
6249         distinguish the "enumeration" function and the "end" index from
6250         their corresponding keywords.
6251         (octave--block-offset-keywords): New constant.
6252         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
6253         parsing.
6254         (octave-reserved-words): Redefine using octave-smie-grammar.
6255         (octave-font-lock-keywords): Use octave-smie--funcall-p and
6256         octave-smie--end-index-p.
6258 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
6260         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
6262 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
6264         * nt/INSTALL: Remove references to GTK site.
6265         That site no longer offers Windows downloads.
6267 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
6269         * nt/INSTALL: Add instructions for installing Git.
6271 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
6273         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
6274         use colors.  Suggested by Eli Zaretskii.
6276 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
6278         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
6279         not supporting 256 above colors (bug#21557).
6281 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
6283         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
6285         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
6287 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
6289         Add documentation for seq.el
6291         * doc/lispref/sequences.texi: Add documentation regarding extending
6292         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
6293         seq-do and seq-map.
6295 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
6297         Better documentation for seq-some
6299         * doc/lispref/sequences.texi:
6300         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
6301         guarantee that the returned value is the first non-nil value that
6302         resulted from applying the predicate.
6304 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
6306         * lisp/arc-mode.el: Sharp-quote function arguments.
6308 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
6310         Avoid redisplay error in ediff-regions-wordwise
6312         * lisp/vc/ediff-util.el
6313         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
6314         set before activating it.  (Bug#21567)
6316 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
6318         Another attempt to fix crashes due to prematurely freed faces
6320         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
6321         faces for as long as we might have desired matrices that reference
6322         those faces.  (Bug#21428)
6324 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
6326         Add auctex development list email address
6328 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
6330         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
6332 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
6334         Improve wrapfig package support and caption parsing
6336         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
6337         Correct description string and add wraptable environment.
6338         (reftex-default-context-regexps): Improve caption regexp.
6340 2015-09-28  Anders Lindgren  <andlind@gmail.com>
6342         Respect value of frame_resize_pixelwise when handling fullscreen state
6344         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
6345         setting size increments.
6347 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
6349         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
6351 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
6353         Add prettify-symbols-alist for js-mode
6355         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
6356         (js-mode): Use it.
6358 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
6360         * nt/subdirs.el: File deleted (no longer used).
6362 2015-09-26  Alan Mackenzie  <acm@muc.de>
6364         Fix follow-scroll-up/down, making them replacements for scroll-up/down
6366         1. Allow point to move between follow windows in scroll operations.
6367         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
6368         when EOB was isolated in the last follow window.
6370         * lisp/follow.el (follow-fixed-window): New variable.
6371         (follow-get-scrolled-point): New function.
6372         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
6373         Reformulate the code.  Put `scroll-command' properties on the functions.
6374         Correct minor errors in ...-down's doc string and code.
6375         (follow-calc-win-end): Amend incomplete doc string.  Use
6376         `pos-visible-in-window-p' to check whether EOB is in the window.
6377         (follow-estimate-first-window-start): Correct an off-by-1 error.
6378         (follow-adjust-window): Add handling for explicit scrolling operations.
6380 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
6382         * admin/MAINTAINERS: Add self, plus list some more files
6383         sans maintaners.
6385 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
6387         New DWIM commands for changing letter-case
6389         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
6390         New functions.  (Bug#21501)
6392 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
6394         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
6396 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
6398         Make face realization be more frame-specific
6400         * src/frame.h (struct f): New flag face_change.
6401         * src/xfaces.c (Finternal_make_lisp_face)
6402         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
6403         (update_face_from_frame_parameter): Set the face_change flag only
6404         for the frame whose faces are affected.
6405         * src/xdisp.c (init_iterator): If a frame's face_change flag is
6406         set, free faces only on that frame.
6407         (redisplay_internal): Disable "display optimization 1" if the
6408         frame's face_change flag is set.
6409         (redisplay_window): Don't allow skipping a window's redisplay if
6410         its frame's face_change flag is set.
6411         * src/frame.c (x_set_screen_gamma): Instead of calling
6412         Fclear_face_cache, call clear_face_cache and set
6413         windows_or_buffers_changed to a non-zero value.  This avoids
6414         setting the global face_change flag that triggers face realization
6415         on all frames and thorough redisplay of all of them.
6417         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
6418         clear face cache if the selected frame is a GUI frame.
6420 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
6422         Remove font-latex specific check
6424         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
6425         Use syntax-ppss data to identify verbatim contents.
6427 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
6429         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
6430         Fix some false negatives.
6432 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6434         Reorder Windows version in Emacs manifests
6436         * nt/emacs-x64.manifest:
6437         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
6438         highest.
6440 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6442         Update Emacs manifest files for Windows 10
6444         * nt/emacs-x86.manifest:
6445         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
6447 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6449         Avoid non-ASCII decoding errors in C src files
6451         * src/nsterm.m:
6452         * src/lisp.h:
6453         * src/editfns.c:
6454         * src/doprnt.c: Add 'coding' cookies -- these files include
6455         Unicode characters and should be decoded as UTF-8.
6457 2015-09-25  Alan Mackenzie  <acm@muc.de>
6459         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
6461         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
6462         amend to match current modes and functions.
6463         (edebug-set-initial-mode): Uncomment and change from setting a defun's
6464         `edebug-initial-mode''s property to setting the variable
6465         `edebug-initial-mode'.
6466         (top level): Create new binding C-x C-a C-m for
6467         `edebug-set-initial-mode'.
6469         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
6470         `edebug-set-initial-mode' and its new key binding.
6471         (Edebug Options): Mention the new command in the pertinent place.
6473         * etc/NEWS: Write entry for this change.
6475 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6477         Avoid non-ASCII decoding errors in Texinfo files
6479         * doc/misc/tramp.texi:
6480         * doc/lispref/strings.texi:
6481         * doc/lispref/positions.texi:
6482         * doc/lispref/help.texi:
6483         * doc/lispref/functions.texi:
6484         * doc/lispintro/emacs-lisp-intro.texi:
6485         * doc/emacs/text.texi:
6486         * doc/emacs/modes.texi:
6487         * doc/emacs/mini.texi:
6488         * doc/emacs/display.texi:
6489         * doc/emacs/custom.texi:
6490         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
6491         Unicode characters and should be decoded as UTF-8.
6492         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
6493         apostrophe unnecessarily.
6495 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
6497         Merge from gnulib
6499         This incorporates:
6500         2015-09-25 c-ctype: rewrite to use inline functions
6501         2015-09-24 maint: add coding cookies to non-ASCII sources
6502         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
6503         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
6504         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
6505         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
6506         * lib/set-permissions.c:
6507         Copy from gnulib.
6509 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
6511         Update publicsuffix.txt from upstream
6513         * etc/publicsuffix.txt: Update from
6514         https://publicsuffix.org/list/effective_tld_names.dat
6515         dated 2015-09-24 17:29:21 UTC.
6517 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
6519         Prevent timers from messing up TTY menus
6521         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
6522         the TTY menu is open.  (Bug#21530)
6524 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
6526         No need to mention K&R C in c-mode intro
6528 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
6530         Fix recent bootstrap problems
6532         * src/syntax.c (parse_sexp_propertize): Fix last fix.
6533         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
6534         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
6536 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
6538         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
6540 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
6542         Properly quote nested xml comments (Bug#6267) (Bug#20001)
6544         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
6545         (nxml-mode): Set comment-quote-nested-function.
6547 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
6549         Allow major-modes full control over quoting nested comments
6551         * lisp/newcomment.el (comment-quote-nested-function): New variable.
6552         (comment-quote-nested-default): New function.
6553         (comment-quote-nested): Use `comment-quote-nested-function'.
6555 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
6557         Prefer CALLN in a few more places
6559         * src/macfont.m (macfont_set_family_cache):
6560         * src/nsterm.m (append2):
6561         * src/xterm.c (x_cr_export_frames):
6562         Prefer CALLN to allocating the arg arrays by hand.
6564 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
6566         Adapt file-notify-test02-events test case
6568         * test/automated/file-notify-tests.el (file-notify-test02-events):
6569         Create a new watch for every test.
6571 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
6573         Continue gfilenotify.c implementation of missing parts
6575         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
6576         `gfile-add-watch' call.
6577         (file-notify-rm-watch): Modify `file-notify-descriptors' only
6578         after calling the low level functions.
6580         * src/gfilenotify.c (dir_monitor_callback): Check, whether
6581         event_type is expected.
6582         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
6583         (Fgfile_rm_watch): Fix typo.
6584         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
6586 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
6588         * src/syntax.c (parse_sexp_propertize): Handle spurious
6589         e_property_truncated flag.
6590         (update_syntax_table_forward): Remove invalid assertion.
6592 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
6594         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
6595         space display spec on text-mode terminals, by calling
6596         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
6597         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
6598         test for a GUI frame.
6600 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
6602         Move let-when-compile to lisp-mode.el
6604         This fixes the bootstrapping problem of `let-when-compile' using
6605         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
6607 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6609         * lisp/url/url-http.el (url-http-parse-headers): Do not
6610         automatically include Authorization header in redirect.
6611         (Bug#21350)
6613 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6615         Clarify documentation of ':relative-width'
6617         * doc/lispref/display.texi (Specified Space): Document that
6618         ':relative-width' is only supported on GUI frames.
6620 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6622         Fix 'current-column' in presence of :relative-width
6624         * src/indent.c (check_display_width): Support ':relative-width'
6625         in a display spec that specifies a stretch glyph.  (Bug#21533)
6627 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
6629         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
6631         ... to conform better to CONTRIBUTE guidelines.
6633 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
6635         * lisp/progmodes/prolog.el: Fix indentation of empty line
6637         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
6638         `empty-line-token' element.
6639         (smie-indent-empty-line): New function.
6640         (smie-indent-functions): Add it.
6642         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
6643         behavior and use the new `empty-line-token' element (bug#21526).
6644         (prolog-mode-variables): Fix comment-start-skip setting to match
6645         comment-start.
6647         * test/indent/prolog.prolog: Add nested indentation tests.
6649         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
6650         comment-start-skip not to misuse submatch 1.
6652 2015-09-22  Alan Mackenzie  <acm@muc.de>
6654         Make description of `edebug-initial-mode' user friendly
6656         Fixes bug#21365.
6658         * dec/lispref/edebug.texi (Edebug Execution Modes): Change the
6659         description of `edebug-initial-mode' from that of its implementation
6660         to that of its visual effect and use.  Move the paragraph higher up.
6662 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6664         lisp/progmodes/gud.el (gud-format-command): Fix last commit
6666         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
6667         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
6669 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
6671         Improve last commit to process.c
6673 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
6675         Implement gfile-valid-p
6677         * lisp/filenotify.el (file-notify-callback): Fix typo.
6678         (gfile-valid-p): Remove defalias.
6680         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
6681         the file or directory to be watched is deleted.
6682         (Fgfile_add_watch): Make watch_object a triple.
6683         (Fgfile_rm_watch): Check, whether watch is cancelled already.
6684         (Fgfile_valid_p): New defun.
6685         (syms_of_gfilenotify): Declare Sgfile_valid_p.
6687 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
6689         Remove callback-handled channels from Available set
6691         * src/process.c (wait_reading_process_output): Remove channel from
6692         Available set if it is handled by a callback, e.g., dbus or
6693         inotify (bug#21313).
6695 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
6697         Use lunate epsilon for TeX \epsilon
6699         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
6700         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
6701         \epsilon to use GREEK LUNATE EPSILON SYMBOL
6703 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
6705         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
6707         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
6708         rather than outermost paren (bug#21526).
6710 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6712         Improve git diff hunk headers for .el, .texi
6714         Problem reported by Alan Mackenzie in:
6715         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
6716         * .gitattributes (*.el, *.texi): New patterns.
6717         * autogen.sh: Configure diff.elisp.xfuncname and
6718         diff.texinfo.xfuncname if using Git.
6720 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6722         Don't rely on defaults in decoding UTF-8 encoded Lisp files
6724         * lisp/replace.el:
6725         * lisp/textmodes/rst.el:
6726         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
6728 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6730         Clarify or replace a few \u escapes
6732         * doc/lispref/nonascii.texi (Character Properties)
6733         More-detailed commentary for \u escapes.
6734         * lisp/progmodes/python.el (python--prettify-symbols-alist):
6735         * lisp/replace.el (query-replace-from-to-separator):
6736         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
6737         (rst-mode-syntax-table):
6738         * lisp/whitespace.el (whitespace-display-mappings):
6739         Prefer actual character to \u escape when this makes the code
6740         easier to follow in the usual case where Unicode chars can be
6741         displayed.
6743 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6745         Pacify GCC -Wmaybe-uninitialized in xdisp.c
6747         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
6748         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
6749         charpos.  The loop should always execute at least once anyway.
6751 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
6753         Signal error on invalid regexp
6755         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
6756         Signal an error when the user tries searching with a regexp
6757         matching the empty string.
6759 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6761         Another fix of file-notify-tests for w32notify
6763         * test/automated/file-notify-tests.el (file-notify-test02-events):
6764         Further adaptation for w32notify: reduce the number of expected
6765         'changed' events.  (Bug#21435)
6767 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
6769         Adapt tests and manual for w32notify
6771         * doc/lispref/os.texi (File Notifications): w32notify does not
6772         send `attribute-changed' events.
6774         * test/automated/file-notify-tests.el (file-notify--test-with-events):
6775         Simplify parameters.  Adapt all callees.
6776         (file-notify-test02-events): w32notify does not send
6777         `attribute-changed' events.
6778         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
6779         Do not skip in case of w32notify.  Simply ignore this part of the test.
6781 2015-09-21  Dima Kogan  <dima@secretsauce.net>
6783         Fix setting breakpoints when remote-debugging
6785         * lisp/progmodes/gud.el (gud-format-command): Send localized file
6786         names to the debugger running on the remote.  (Bug#13304)
6788 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
6790         Better docstring and parameter name for seq-find
6792         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
6793         the parameter `sentinel' to `default'.
6795         * doc/lispref/sequences.texi (Sequence Functions): Update the
6796           documentation for `seq-find' accordingly.
6798 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6800         Avoid infinite recursion while displaying box face
6802         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
6803         the previous string/buffer character position under bidi
6804         iteration.  (Bug#21428)
6806 2015-09-21  Anders Lindgren  <andlind@gmail.com>
6808         Keep upper edge unchanged when changing size of NS frame
6810         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
6811         (Bug#21415).
6813 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6815         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
6816         (prolog-smie-rules): Accommodate standard if/then/else special
6817         indentation.
6818         (prolog-mode): Add . to electric-indent-chars.
6819         (prolog-electric--if-then-else): Re-indent the line before adding space
6820         after the new char (bug#21526).
6822 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
6824         Add prettify symbols to python-mode
6826         * lisp/progmodes/python.el (python-prettify-symbols-alist):
6827         New variable.
6828         (python-mode): Use it
6830 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6832         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
6834 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
6836         (compilation-error-regexp-alist-alist): Tone down guile-file
6838         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
6839         Make guile-file a bit less enthusiastic (bug#21496).
6841 2015-09-20  Drew Csillag  <drew@thecsillags.com>
6843         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
6844         Fix m4_* highlighting.
6846         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
6847         of commands when they have a "m4_" prefix.
6849 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
6851         '.' -> `.' in doc string
6853         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
6854         individual chars with grave quotes instead of straight quotes, as
6855         this works better when they are translated to curved quotes.
6857 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
6859         Improve file notifications, especially for Tramp
6861         * doc/lispref/files.texi (Magic File Names):
6862         Mention `file-notify-valid-p'.
6864         * doc/lispref/os.texi (File Notifications):
6865         Describe `file-notify-valid-p'.
6867         * etc/NEWS: Add `file-notify-valid-p'.
6869         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
6870         Improve implementation.
6871         (tramp-gvfs-monitor-file-process-filter): Rename from
6872         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
6873         process if appropriate.
6875         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
6876         Improve implementation.
6877         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
6878         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
6879         if appropriate.
6880         (tramp-sh-inotifywait-process-filter): Rename from
6881         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
6882         appropriate.
6884         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
6885         Use `delete-process'.
6886         (tramp-handle-file-notify-valid-p): Check also, that file or
6887         directory to be watched still exists.
6889         * test/automated/file-notify-tests.el (file-notify--test-timeout):
6890         New defun.  Use it at all places a timeout is needed.
6891         (file-notify--test-cleanup): Delete directories recursively.
6892         Cleanup also Tramp connections.
6893         (file-notify-test02-events): Add tests for `attribute-change'.
6894         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
6895         Add tests for `file-notify-rm-watch'.
6897 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
6899         Use %s to format strings instead of splicing them
6901         If FOO might contain quotes that are part of a file or variable
6902         name, the quotes should not be translated when showing FOO’s name
6903         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
6904         is not quite right, as it would translate FOO’s quotes.
6905         Change it to (message "%s: bar" FOO) instead.
6906         * lisp/allout.el (allout-process-exposed):
6907         * lisp/calc/calc-ext.el (calc-do-prefix-help):
6908         * lisp/calc/calc-store.el (calc-store-into):
6909         * lisp/calendar/todo-mode.el (todo-category-completions):
6910         * lisp/cedet/semantic/complete.el (semantic-completion-message):
6911         * lisp/org/ob-latex.el (convert-pdf):
6912         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
6913         * lisp/org/ox-latex.el (org-latex-compile):
6914         * lisp/org/ox-man.el (org-man-compile):
6915         * lisp/org/ox-odt.el (org-odt--export-wrap):
6916         * lisp/org/ox-texinfo.el (org-texinfo-compile):
6917         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
6918         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
6919         (verilog-signals-combine-bus, verilog-read-defines)
6920         (verilog-getopt-file, verilog-expand-dirnames)
6921         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
6922         * lisp/term/ns-win.el (ns-spi-service-call):
6923         Use %s to avoid translating quotes of file names etc. in diagnostics.
6925 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6927         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
6928         (js-mode): Don't set syntax-begin-function.
6930 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6932         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
6933         syntax-begin-function is a symbol.
6935 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
6937         Improve documentation of 'run-at-time'
6938         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
6939         In particular, don't refer to 'diary-entry-time', because it is
6940         unavailable until diary-lib is loaded.  Also, refer to
6941         'timer-duration-words', not 'timer-duration', as the latter's doc
6942         string says nothing about the accepted strings.
6944 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
6946         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
6948 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
6950         Repair pdbtrack remote file tracking
6951         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
6952         Rectify pdbtrack so it follows transitions from one remote source
6953         file to the next.
6955 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
6957         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
6959 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
6961         Adapt vc-src to the old-new vc-checkin API
6962         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
6963         additional optional parameter.
6965 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
6967         Add overflow module to CSS property list
6968         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
6969         from CSS Overflow Module Level 3.
6971 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
6973         Fix documentation of "C-u C-x v v"
6974         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
6975         documentation of "C-u C-x v v" match what the code does.
6977         Resurrect the ability to specify a revision in vc-next-action
6978         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
6979         * lisp/vc/vc-dav.el (vc-dav-checkin):
6980         * lisp/vc/vc-git.el (vc-git-checkin):
6981         * lisp/vc/vc-hg.el (vc-hg-checkin):
6982         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
6983         an additional optional argument, the revision to checkin.
6984         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
6985         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
6986         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
6987         a revision to checkin.
6988         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
6989         revision when checking in files.
6990         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
6991         for the details.
6993 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
6995         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
6996         (verilog-decls-princ, verilog-modport-princ)
6997         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
6999 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
7001         Fix the routine for help on Calc's prefixes
7002         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
7003         (calc-do-prefix-help): Use `read-char' to determine the next Calc
7004         command.
7006 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
7008         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
7009         (font-lock-fontify-block): Don't let-bind it.
7010         (font-lock-compile-keywords): Don't use it.
7011         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
7012         start one slot earlier, instead.
7013         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
7014         Don't declare.
7015         (syntax-ppss): Don't use it either.
7016         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
7017         from docstring.
7018         * doc/emacs/display.texi (Font Lock): Don't mention
7019         font-lock-beginning-of-syntax-function.
7020         * doc/lispref/modes.texi (Font Lock Basics): Update description of
7021         font-lock-defaults.
7022         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
7023         * lisp/loadhist.el (unload-feature-special-hooks):
7024         Remove font-lock-beginning-of-syntax-function.
7025         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
7026         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
7027         font-lock-beginning-of-syntax-function.
7029 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
7031         Backslash cleanup in Elisp source files
7032         This patch should not change behavior.  It typically omits backslashes
7033         where they are redundant (e.g., in the string literal "^\$").
7034         In a few places, insert backslashes where they make regular
7035         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
7036         "^\\*", which has the same effect as a regular expression.
7037         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
7038         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
7039         RCS IDs, as that makes it clearer that the backslash is intended.
7041         Some more minor backslash fixes
7042         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
7043         * test/automated/info-xref.el (info-xref-test-write-file):
7044         Double backslashes in strings.
7046         Fix several backslash typos in Elisp strings
7047         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
7048         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
7049         (todo-reset-done-string, todo-reset-comment-string)
7050         (todo-reset-highlight-item):
7051         * lisp/erc/erc-networks.el (erc-networks-alist):
7052         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
7053         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
7054         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
7055         (nntp-telnet-shell-prompt):
7056         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
7057         * lisp/image-dired.el (image-dired-rotate-original):
7058         (image-dired-get-exif-file-name):
7059         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
7060         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
7061         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
7062         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
7063         * lisp/net/shr-color.el (shr-color->hexadecimal):
7064         * lisp/org/org-bibtex.el (org-bibtex-fields):
7065         * lisp/org/org-docview.el (org-docview-export):
7066         * lisp/org/org-entities.el (org-entities):
7067         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
7068         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
7069         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
7070         (ebnf-style-database):
7071         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
7072         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
7073         * lisp/progmodes/sql.el (sql-product-alist):
7074         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
7075         (verilog-error-font-lock-keywords)
7076         (verilog-assignment-operator-re):
7077         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
7078         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
7079         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
7080         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
7081         For example, to get the regular expression ‘\.’ use the string
7082         literal "\\.", not "\." (which is equivalent to ".").
7083         * lisp/emulation/viper-util.el (viper-glob-unix-files):
7084         Remove stray ‘\j’ from string.
7085         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
7086         (nntp-telnet-shell-prompt):
7087         Treat > like $ when matching a shell prompt.
7088         * lisp/progmodes/make-mode.el (makefile-browse):
7089         Properly quote a diagnostic.
7091         Fix minor quoting problems in diagnostics
7092         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
7093         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
7094         Follow text-quoting-style in diagnostic, and quote a file name.
7096 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
7098         * doc/lispref/frames.texi (Cursor Parameters):
7099         Document 'x-stretch-cursor'.
7101 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
7103         Omit unnecessary \ before paren in C docstrings
7104         Although \( is needed in docstrings in Elisp code, it is not needed in
7105         docstrings in C code, since C function definitiions do not start with
7106         a parenthesis.  The backslashes made the docstrings a bit harder to
7107         read and to format in columns.  Also, some C docstrings had ( in
7108         column 1 and this did not appear to be causing any problems.  So,
7109         simplify C docstrings by replacing \( with ( and \) with ).
7111         A few more minor quoting fixes in a script and a text file
7113         Minor quoting fixes in scripts and doc
7114         Prefer straight quotes in random script files, as they are not
7115         converted.  Prefer grave quotes in a couple of places in the manual
7116         that were missed earlier, as these quotes are converted.
7118         Minor backslash fixes in manuals and scripts
7119         * Makefile.in (install-arch-indep):
7120         * admin/charsets/compact.awk:
7121         * admin/charsets/gb180302.awk (gb_to_index):
7122         * admin/charsets/gb180304.awk (gb_to_index):
7123         Avoid undefined behavior in Awk regular expression backslashes.
7124         * doc/misc/efaq.texi (Matching parentheses):
7125         Omit unnecessary backslashes.
7126         * doc/misc/gnus-faq.texi (FAQ 5-8):
7127         Avoid undefined behavior in suggested sed backslash usage.
7129         Add -Wswitch to --enable-gcc-warnings
7130         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
7131         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
7132         * lib-src/etags.c (main, consider_token, C_entries):
7133         * src/coding.c (encode_invocation_designation):
7134         * src/data.c (Ftype_of):
7135         * src/eval.c (Fdefvaralias, default_toplevel_binding)
7136         (Fbacktrace__locals, mark_specpdl):
7137         * src/lisp.h (record_xmalloc):
7138         * src/syntax.c (scan_lists, scan_sexps_forward):
7139         * src/window.c (window_relative_x_coord):
7140         * src/xdisp.c (push_it, pop_it):
7141         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
7142         Error out or do nothing (as appropriate) if a switch statement
7143         with an enum value does not cover all of the enum.
7144         * src/dispextern.h (struct iterator_stack_entry.u.comp):
7145         Remove unused member discovered by using -Wswitch.
7146         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
7147         * src/vm-limit.c (check_memory_limits):
7148         Simplify warning-diagnostic computation by using a table.
7150         etags ‘fatal’ function is now printf-like
7151         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
7152         Also, now static; not clear why it needed to be extern.
7153         (verror): New function, with most of the old contents of ‘error’.
7154         (fatal, error): Use it.
7156 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
7158         More adaptations in file-notify-tests.el
7159         * test/automated/file-notify-tests.el
7160         (file-notify-test05-dir-validity): Skip for w32notify in
7161         batch-mode.  (Bug#21432)
7163 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
7165         Adapt test in file-notify-tests.el
7166         * test/automated/file-notify-tests.el
7167         (file-notify-test04-file-validity): Skip for w32notify in
7168         batch-mode.  Add test lost last commit.
7170 2015-09-16  Dima Kogan  <dima@secretsauce.net>
7172         winner no longer holds on to dead frames
7173         * lisp/winner.el (winner-change-fun): Cull dead frames.
7174         This prevents a potentially massive memory leak.  See:
7175         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
7177 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
7179         Use common report_file_notify_error function
7180         * src/fileio.c (report_file_notify_error): New function.
7181         * src/inotify.c (report_inotify_error): Remove function.
7182         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
7183         (Finotify_rm_watch): Use report_file_notify_error.
7184         * src/lisp.h (report_file_notify_error): Declare external function.
7185         * src/w32notify.c (report_w32notify_error): Remove function.
7186         (Fw32notify_add_watch, Fw32notify_rm_watch):
7187         Use report_file_notify_error.
7189 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
7191         Fix documentation.
7192         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
7193         the documentation of the root mean square.
7195 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
7197         Remove tool_bar_redisplayed_once and associated code.
7198         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
7199         * src/frame.c (make_frame, x_set_font): Remove initialization of
7200         f->tool_bar_redisplayed_once.
7201         * src/w32fns.c (x_change_tool_bar_height):
7202         * src/xfns.c (x_change_tool_bar_height): Don't check for
7203         f->tool_bar_redisplayed_once.
7204         * src/xdisp.c (redisplay_internal): Remove handling of
7205         f->tool_bar_redisplayed_once.
7207 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
7209         Restore some of the quoting in the manuals
7210         * doc/lispref/windows.texi (Coordinates and Windows)
7211         (Coordinates and Windows):
7212         * doc/lispref/variables.texi (Lexical Binding)
7213         (File Local Variables):
7214         * doc/lispref/text.texi (Format Properties):
7215         * doc/lispref/symbols.texi (Symbol Components):
7216         * doc/lispref/strings.texi (Creating Strings):
7217         * doc/lispref/sequences.texi (Sequence Functions):
7218         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
7219         (Search and Replace):
7220         * doc/lispref/processes.texi (Bindat Spec):
7221         * doc/lispref/os.texi (Idle Timers):
7222         * doc/lispref/objects.texi (Basic Char Syntax):
7223         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
7224         * doc/lispref/nonascii.texi (Character Properties):
7225         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
7226         (Mode Line Variables):
7227         * doc/lispref/minibuf.texi (Text from Minibuffer):
7228         * doc/lispref/loading.texi (Autoload):
7229         * doc/lispref/keymaps.texi (Controlling Active Maps):
7230         * doc/lispref/frames.texi (Frame Layout, Size and Position)
7231         (Size Parameters, Implied Frame Resizing):
7232         * doc/lispref/files.texi (Changing Files, Magic File Names):
7233         * doc/lispref/eval.texi (Self-Evaluating Forms):
7234         * doc/lispref/display.texi (Progress, Abstract Display)
7235         (Abstract Display Example, Bidirectional Display):
7236         * doc/lispref/commands.texi (Event Mod):
7237         * doc/emacs/windows.texi (Displaying Buffers):
7238         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
7239         * doc/emacs/text.texi (Enriched Text):
7240         * doc/emacs/programs.texi (MixedCase Words):
7241         * doc/emacs/picture-xtra.texi (Insert in Picture)
7242         (Tabs in Picture):
7243         * doc/emacs/misc.texi (Emacs Server, Printing):
7244         * doc/emacs/mini.texi (Minibuffer History):
7245         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
7246         (Pulling / Pushing):
7247         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
7248         * doc/emacs/help.texi (Help, Help Echo):
7249         * doc/emacs/glossary.texi (Glossary):
7250         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
7251         (Frame Commands):
7252         * doc/emacs/files.texi (Reverting, Saving, Directories):
7253         * doc/emacs/entering.texi (Exiting):
7254         * doc/emacs/emacs.texi (Top):
7255         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
7256         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
7257         appropriate or replace quoting with @dfn.
7258         * doc/misc/ediff.texi (Window and Frame Configuration):
7259         * doc/lispref/processes.texi (Network Feature Testing):
7260         * doc/lispref/display.texi (Display Margins): Quote the phrase
7261         after "a.k.a." where appropriate.
7263 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
7265         Clarify reftex-extra-bindings docs
7266         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
7267         * doc/misc/reftex.texi (Key Bindings): Document that the variable
7268         only has an effect at load-time.
7270 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
7272         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
7273         search argument.  (Bug#21492) (Bug#21493)
7275 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
7277         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
7278         Add pretty symbols for \qquad and \varrho.
7280 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
7282         Add new functions for the root mean square of a (Calc) vector
7283         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
7284         New functions.
7285         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
7286         `calc-vector-rms', add autoloads for `calc-vector-rms' and
7287         `calcFunc-rms'.
7288         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
7289         `calcFunc-rms'.
7290         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
7291         `calc-vector-rms'.
7292         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
7293         command.
7295 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
7297         Add monotone EDE generic project
7298         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
7299         Add monotone generic project.
7301         Revert premature commit
7302         * doc/lispref/files.texi: Revert premature commit of change to
7303         file-name-all-completions.
7305         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
7306         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
7307         with cl-generic defaults.
7308         (elisp--xref-find-references): Add doc string.
7309         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
7310         tests to find bug.
7312         Fix bugs in eieio-oref-default related to class symbols
7313         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
7314         (eieio-oref-default): Handle class properly.
7316 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
7318         Quote “fullboth” when defining it
7319         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
7320         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
7322 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
7324         Minor doc fix in emacs/ack.texi
7325         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
7326         first argument.
7328 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
7330         Adapt tests in auto-revert-tests.el
7331         * test/automated/auto-revert-tests.el (auto-revert--timeout):
7332         Make it a defconst.
7333         (auto-revert--wait-for-revert): New defun.
7334         (auto-revert-test00-auto-revert-mode)
7335         (auto-revert-test01-auto-revert-tail-mode)
7336         (auto-revert-test02-auto-revert-mode-dired): Use it.
7338 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
7340         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
7341         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
7342         (cl-lib-fdefs): Add defgeneric.
7343         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
7344         (eieio-kw, cl-lib-kw, el-kw): Remove.
7346 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
7348         Quote less in manuals
7349         The manuals often used quotes ``...'' when it is better to use @dfn or
7350         @code or capitalized words or no quoting at all.  For example, there is
7351         no need for the `` and '' in “if a variable has one effect for
7352         @code{nil} values and another effect for ``non-@code{nil}'' values”.
7353         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
7354         unnecessary quoting like this, and to use @dfn etc. instead when called
7355         for (Bug#21472).
7357 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
7359         * lisp/custom.el (load-theme): Only compute hash when needed.
7361 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
7363         Pacify --enable-gcc-warnings
7364         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
7366 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
7368         Improve error reports in inotify.c
7369         * src/inotify.c (report_inotify_error): New function.  Clone of
7370         report_w32notify_error.
7371         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
7372         (Finotify_rm_watch): Use it.
7374 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
7376         Fix the file-notify tests for watch validation on w32
7377         * test/automated/file-notify-tests.el
7378         (file-notify-test04-file-validity): Move the directory deletion
7379         out of the file-notify--test-with-events macro.
7380         (file-notify-test04-file-validity)
7381         (file-notify-test05-dir-validity): Enlarge the timeout of
7382         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
7384 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
7386         Use OPEN BOX instead of space for \quad.
7387         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
7388         character for \quad instead of a space.
7390 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
7392         Add missing *.pbm images
7393         * etc/images/connect.pbm: New file.
7394         * etc/images/custom/down-pushed.pbm: New file.
7395         * etc/images/custom/down.pbm: New file.
7396         * etc/images/custom/right-pushed.pbm: New file.
7397         * etc/images/custom/right.pbm: New file.
7398         * etc/images/describe.pbm: New file.
7399         * etc/images/disconnect.pbm: New file.
7400         * etc/images/ezimage/bits.pbm: New file.
7401         * etc/images/ezimage/bitsbang.pbm: New file.
7402         * etc/images/ezimage/box-minus.pbm: New file.
7403         * etc/images/ezimage/box-plus.pbm: New file.
7404         * etc/images/ezimage/box.pbm: New file.
7405         * etc/images/ezimage/checkmark.pbm: New file.
7406         * etc/images/ezimage/dir-minus.pbm: New file.
7407         * etc/images/ezimage/dir-plus.pbm: New file.
7408         * etc/images/ezimage/dir.pbm: New file.
7409         * etc/images/ezimage/doc-minus.pbm: New file.
7410         * etc/images/ezimage/doc-plus.pbm: New file.
7411         * etc/images/ezimage/doc.pbm: New file.
7412         * etc/images/ezimage/info.pbm: New file.
7413         * etc/images/ezimage/key.pbm: New file.
7414         * etc/images/ezimage/label.pbm: New file.
7415         * etc/images/ezimage/lock.pbm: New file.
7416         * etc/images/ezimage/mail.pbm: New file.
7417         * etc/images/ezimage/page-minus.pbm: New file.
7418         * etc/images/ezimage/page-plus.pbm: New file.
7419         * etc/images/ezimage/page.pbm: New file.
7420         * etc/images/ezimage/tag-gt.pbm: New file.
7421         * etc/images/ezimage/tag-minus.pbm: New file.
7422         * etc/images/ezimage/tag-plus.pbm: New file.
7423         * etc/images/ezimage/tag-type.pbm: New file.
7424         * etc/images/ezimage/tag-v.pbm: New file.
7425         * etc/images/ezimage/tag.pbm: New file.
7426         * etc/images/ezimage/unlock.pbm: New file.
7427         * etc/images/gnus/important.pbm: New file.
7428         * etc/images/gnus/mail-send.pbm: New file.
7429         * etc/images/gnus/receipt.pbm: New file.
7430         * etc/images/gnus/toggle-subscription.pbm: New file.
7431         * etc/images/gnus/unimportant.pbm: New file.
7432         * etc/images/gud/all.pbm: New file.
7433         * etc/images/gud/rcont.pbm: New file.
7434         * etc/images/gud/recstart.pbm: New file.
7435         * etc/images/gud/recstop.pbm: New file.
7436         * etc/images/gud/rfinish.pbm: New file.
7437         * etc/images/gud/rnext.pbm: New file.
7438         * etc/images/gud/rnexti.pbm: New file.
7439         * etc/images/gud/rstep.pbm: New file.
7440         * etc/images/gud/rstepi.pbm: New file.
7441         * etc/images/gud/thread.pbm: New file.
7442         * etc/images/lock-broken.pbm: New file.
7443         * etc/images/lock-ok.pbm: New file.
7444         * etc/images/lock.pbm: New file.
7445         * etc/images/mail/copy.pbm: New file.
7446         * etc/images/mail/forward.pbm: New file.
7447         * etc/images/mail/not-spam.pbm: New file.
7448         * etc/images/mail/outbox.pbm: New file.
7449         * etc/images/mail/preview.pbm: New file.
7450         * etc/images/mail/save-draft.pbm: New file.
7451         * etc/images/mh-logo.pbm: New file.
7452         * etc/images/mpc/add.pbm: New file.
7453         * etc/images/mpc/ffwd.pbm: New file.
7454         * etc/images/mpc/next.pbm: New file.
7455         * etc/images/mpc/pause.pbm: New file.
7456         * etc/images/mpc/play.pbm: New file.
7457         * etc/images/mpc/prev.pbm: New file.
7458         * etc/images/mpc/rewind.pbm: New file.
7459         * etc/images/mpc/stop.pbm: New file.
7460         * etc/images/redo.pbm: New file.
7461         * etc/images/smilies/braindamaged.pbm: New file.
7462         * etc/images/smilies/cry.pbm: New file.
7463         * etc/images/smilies/dead.pbm: New file.
7464         * etc/images/smilies/evil.pbm: New file.
7465         * etc/images/smilies/forced.pbm: New file.
7466         * etc/images/smilies/grin.pbm: New file.
7467         * etc/images/smilies/indifferent.pbm: New file.
7468         * etc/images/sort-ascending.pbm: New file.
7469         * etc/images/sort-column-ascending.pbm: New file.
7470         * etc/images/sort-criteria.pbm: New file.
7471         * etc/images/sort-descending.pbm: New file.
7472         * etc/images/sort-row-ascending.pbm: New file.
7473         * etc/images/unchecked.pbm: New file.
7474         * etc/images/zoom-in.pbm: New file.
7475         * etc/images/README: Update instructions for PBM files.
7477         Add separator.pbm tool-bar image
7478         * etc/images/separator.pbm: New file.  Having it avoids the side
7479         effect of changing the tool-bar height when the default font's size
7480         changes and XPM image support is not available, due to the SPC
7481         characters that are left in the Lisp string used to display the tool
7482         bar, because there are no images to display instead of those SPC
7483         characters.
7485         Make show-paren-match face visible on mono-color displays
7486         * lisp/faces.el (show-paren-match): Use the underline face for
7487         mono-color displays.  (Bug#21481)
7489 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
7491         Don’t double-encode non-ASCII mail clipboard
7492         * lisp/mail/mailclient.el (mailclient-send-it):
7493         Also fix the case when mailclient-place-body-on-clipboard-flag
7494         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
7496 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
7498         Adapt file-notify-tests.el test cases
7499         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
7500         * src/inotify.c (Finotify_valid_p): Adapt docstring.
7501         * test/automated/file-notify-tests.el
7502         (file-notify-test03-autorevert)
7503         (file-notify-test04-file-validity)
7504         (file-notify-test04-file-validity-remote)
7505         (file-notify-test05-dir-validity)
7506         (file-notify-test05-dir-validity-remote): Adapt docstring.
7507         (file-notify-test04-file-validity): Let events arrive before
7508         calling final `file-notify-valid-p'.  Do not ignore errors.
7509         (file-notify-test05-dir-validity): Do not manipulate
7510         `temporary-file-directory', it isn't necessary.  Let events arrive
7511         before calling final `file-notify-valid-p'.  Do not ignore errors.
7513 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
7515         Don’t double-encode non-ASCII for mail client
7516         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
7517         Use RFC 6068’s list of unreserved characters.
7518         (mailclient-send-it): When encoding the body as a URL,
7519         first decode it as per Content-Type: and Content-Transfer-Encoding:,
7520         as URLs must use percent-encoded UTF-8 (Bug#21471).
7521         * doc/misc/url.texi (mailto): Update RFC number.
7523 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
7525         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
7527 2015-09-14  Alan Mackenzie  <acm@muc.de>
7529         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
7530         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
7531         `cadr/car'.
7533 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7535         Clarify documentation of char-table extra slots
7536         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
7537         slot numbers are zero-based.  (Bug#21467)
7539 2015-09-14  Alan Mackenzie  <acm@muc.de>
7541         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
7542         Fixes bug#21449.
7543         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
7544         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
7545         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
7546         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
7547         Insert "\\|\\\\." into regexps which match symbols.
7549 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7551         Improve the doc string of w32notify-valid-p
7552         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
7553         that removing a watch makes its object invalid.
7555 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
7557         Fix tests for file-notify-valid-p
7558         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
7559         Use delete-directory to delete file-notify--test-tmpfile if it is
7560         a directory.  Likewise for file-notify--test-tmpfile1.
7561         (file-notify-test04-file-validity)
7562         (file-notify-test05-dir-validity): Delete the parent directory of
7563         the test.  Ignore errors when cleaning up after the test.
7565 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7567         Report file-notify-error in w32notify.c
7568         * src/w32notify.c (report_w32notify_error): New function.
7569         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
7570         errors, instead of calling report_file_error.  (Bug#21432)
7572         Implement w32notify-valid-p
7573         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
7574         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
7575         'identity'.
7577 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
7579         Test file-notify-valid-p
7580         * test/automated/file-notify-tests.el
7581         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
7582         New tests.
7584 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
7586         Fix markup in ELisp manual
7587         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
7588         of the 'alpha' parameter value.  (Bug#21470)
7590 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
7592         Introduce `file-notify-valid-p'
7593         * lisp/filenotify.el (file-notify-valid-p): New defun.
7594         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
7595         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
7596         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
7597         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
7598         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
7599         <file-notify-valid-p>: Add handler.
7600         * lisp/net/tramp.el (tramp-file-name-for-operation):
7601         Add `file-notify-valid-p'.
7602         (tramp-handle-file-notify-valid-p): New defun.
7603         * src/inotify.c (Finotify_valid_p): New defun.
7604         (syms_of_inotify): Declare Sinotify_valid_p.
7606 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
7608         Port Unicode char detection to FreeBSD+svgalib
7609         Problem reported by Ashish SHUKLA in:
7610         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
7611         * configure.ac: Check for struct unipair.unicode instead of for
7612         <linux/kd.h>, since that’s more specific to what the code
7613         actually needs.
7614         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
7616         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
7618 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
7620         Fix vertical cursor motion across overlay strings with newlines
7621         * src/indent.c (Fvertical_motion): Don't leave point in the middle
7622         of an overlay string with newlines, as that will position the
7623         cursor after the string at whatever column is there.  (Bug#21468)
7625 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
7627         Fix tests in file-notify-tests.el
7628         * test/automated/file-notify-tests.el: Remove Tramp declarations.
7629         (file-notify-test00-availability): Print remote command w/o Tramp
7630         internal functions.
7631         (file-notify-test02-events, file-notify-test02-events-remote):
7632         Adapt docstring.
7633         (file-notify-test03-autorevert): Use `format-message' when
7634         inspecting *Messages* buffer.
7636 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
7638         Bind inhibit-modification-hooks rather than a/b-c-f
7639         * lisp/wid-edit.el (widget-editable-list-insert-before)
7640         (widget-editable-list-delete-at):
7641         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
7642         (cperl-font-lock-unfontify-region-function):
7643         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
7644         * lisp/obsolete/longlines.el (longlines-mode):
7645         * lisp/obsolete/fast-lock.el (save-buffer-state):
7646         * lisp/mouse.el (mouse-save-then-kill-delete-region):
7647         * lisp/gnus/message.el (message-hide-headers):
7648         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
7649         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
7650         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
7651         than after/before-change-functions to nil.
7653 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
7655         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
7656         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
7657         the buffers, even if the forced redisplay is interrupted.
7659         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
7661         Merge syntax-propertize--done and parse-sexp-propertize-done
7662         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
7663         (syntax-propertize): Set syntax-propertize--done even if
7664         syntax-propertize-function is nil.  Avoid recursive invocations.
7665         (syntax-propertize-chunks): New var.
7666         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
7667         Simplify.
7668         (parse-sexp-propertize-function): Don't set any more.
7669         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
7670         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
7671         Call Qinternal__syntax_propertize instead of
7672         Vparse_sexp_propertize_function.  Truncate e_property if needed.
7673         (update_syntax_table_forward): Streamline.
7674         (syms_of_syntax): Define Qinternal__syntax_propertize.
7675         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
7677 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
7679         Prefer straight quoting in some text files
7680         Mostly this just changes ` to ' in static text.  Some exceptions:
7681         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
7682         typically does that now.
7683         * admin/quick-install-emacs (TRY, top level):
7684         Use straight quoting in diagnostics.
7685         * src/README: Fix working-directory confusion.
7687         * CONTRIBUTE: Move send-email here from git-workflow.
7689 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
7691         Improve file notifications in Tramp
7692         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
7693         Set proper events to watch for.
7694         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
7695         watched events.
7697 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
7699         Fix NS build with --enable-checking='glyphs'
7700         * src/nsfns.m (unwind_create_frame): Make the preprocessor
7701         conditionals for referencing 'dpyinfo' consistent throughout the
7702         function.  (Bug#21426)
7704 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
7706         Add seq-find
7707         This function is similar to `seq-some' but returns the found element.
7708         In the cases where nil can be the found element, a sentinel optional
7709         argument can be provided to avoid ambiguities.
7710         * lisp/emacs-lisp/seq.el (seq-find): New function.
7711         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
7712         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
7713         seq-find.
7715 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
7717         Document file-notify--test-with-events.
7718         * test/automated/file-notify-tests.el (file-notify--test-with-events):
7719         Add docstring.
7721 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
7723         Report used native library in file-notify-tests.el
7724         * test/automated/file-notify-tests.el
7725         (tramp-get-remote-gvfs-monitor-dir)
7726         (tramp-get-remote-inotifywait): Declare them.
7727         (file-notify-test00-availability): Print used native library.
7729 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
7731         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
7732         (mpc-file-local-copy): Check for absolute path.  Check more config
7733         locations.
7735 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
7737         Improve documentation of categories
7738         * doc/lispref/syntax.texi (Categories): Clarify the example of
7739         using define-category and modify-category-entry.  (Bug#21448)
7741 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
7743         Revert some stray curved quotes I missed earlier
7744         Problem reported by David Kastrup in:
7745         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
7746         * lisp/international/mule-cmds.el (leim-list-header):
7747         Use format-message with an ASCII-only format.
7749         Prefer NUMBERP to spelling it out
7750         * src/editfns.c (styled_format):
7751         * src/frame.h (NUMVAL):
7752         * src/image.c (parse_image_spec):
7753         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
7754         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
7755         * src/process.c (Fsignal_process):
7756         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
7757         * src/xfaces.c (check_lface_attrs):
7758         * src/xselect.c (x_fill_property_data, x_send_client_event):
7759         Use NUMBERP rather than INTEGERP || FLOATP.
7761 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
7763         Improve file-notify-tests
7764         * test/automated/file-notify-tests.el: Use lexical-binding.
7765         (file-notify--test-cleanup): New function.
7766         (file-notify-test00-availability, file-notify-test01-add-watch)
7767         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
7768         (file-notify--test-with-events): New macro.
7769         (file-notify-test02-events): Use it.
7771 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
7773         Add patch-sending instructions to git-workflow
7774         From a suggestion by Mitchel Humpherys in:
7775         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
7776         * admin/notes/git-workflow (Sending patches): New section.
7778         Port to GIFLIB 5.0.6 and later
7779         Problem reported by Mitchel Humpherys in:
7780         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
7781         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
7782         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
7783         (gif_load) [HAVE_GIF]: Use it.
7785 2015-09-10  Glenn Morris  <rgm@gnu.org>
7787         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
7789 2015-09-09  Glenn Morris  <rgm@gnu.org>
7791         * test/automated/file-notify-tests.el (file-notify-test02-events):
7792         Fix recent change.
7794 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7796         Refix movemail GCC pacification
7797         Problem reported by Ken Brown in:
7798         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
7799         * lib-src/movemail.c (main): Fix previous change.
7801 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7803         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
7804         Mark unused vars with underscore.
7806         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
7807         (parse_sexp_propertize): ...from here.
7809         * lisp/filenotify.el: Use lexical-binding
7810         (file-notify-add-watch): Avoid add-to-list.
7812 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
7814         Start checking event types in file-notify tests
7815         * test/automated/file-notify-tests.el (file-notify--test-events):
7816         New variable.
7817         (file-notify--test-event-handler): Append received event to
7818         file-notify--test-events for later analysis.
7819         (file-notify-test02-events): Assert that the expected notifications have
7820         arrived in the expected order.
7822 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7824         Merge from gnulib and texinfo
7825         This incorporates:
7826         2015-08-03 Improve port of stdalign to C++11
7827         * lib/stdalign.in.h: Copy from gnulib.
7828         * doc/misc/texinfo.tex: Copy from texinfo.
7830 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7832         Make syntax.c call syntax-propertize on demand
7833         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
7834         (parse-sexp-propertize-function): Use it.
7835         (syntax-propertize): Disable parse-sexp-propertize-function.
7836         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
7837         New functions.
7838         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
7839         `parse-sexp-propertize-function'.
7840         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
7841         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
7842         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
7843         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
7844         Don't assume `point' is set.
7846 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
7848         Fix indentation of an @example in ELisp manual
7849         * doc/lispref/syntax.texi (Categories): Untabify the example.
7850         (Bug#21448)
7852 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7854         Define internal-char-font even if --without-x
7855         The function is used now even in non-graphical environments.
7856         Problem reported by Glenn Morris in:
7857         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
7858         * src/font.c (Finternal_char_font): Move here ...
7859         * src/fontset.c (Finternal_char_font): ... from here.
7861 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7863         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
7864         Remove warning.
7866 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
7868         Fix display of complex local data types in GDB-MI
7869         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
7870         variable has no value, display "<complex data type>" as a
7871         placeholder, instead of a confusing "nil".  (Bug#21438)
7873 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
7875         Remove redundant redefinition of seq-drop-while from seq.el
7876         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
7878 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
7880         * lisp/emacs-lisp/package.el (package--ensure-init-file):
7881         More robust check for `package-initialize' calls in init file.
7882         This function accepts an optional argument, but calls passing
7883         an argument would not have been detected.
7885 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7887         Port movemail to RHEL 6 with --enable-gcc-warnings
7888         * lib-src/movemail.c (main): Declare local only if needed.
7890         Port recent Linux console changes to RHEL 6
7891         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
7893         Improvements for curved quotes on Linux consule
7894         This should help Emacs work better out-of-the-box on Linux consoles,
7895         which have only limited support for displaying Unicode characters.
7896         Also, undo the recent change that caused text-quoting-style to
7897         affect quote display on terminals, so that the two features are
7898         independent.  See Alan Mackenzie in:
7899         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
7900         Finally, add a style parameter to startup--setup-quote-display,
7901         so that this function can also be invoked after startup, with
7902         different styles depending on user preference at the time.
7903         * configure.ac: Check for linux/kd.h header.
7904         * doc/emacs/display.texi (Text Display): Document quote display.
7905         * doc/lispref/display.texi (Active Display Table):
7906         * etc/NEWS:
7907         * lisp/startup.el (startup--setup-quote-display, command-line):
7908         text-quoting-style no longer affects quote display.
7909         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
7910         * lisp/international/mule-util.el (char-displayable-p):
7911         * lisp/startup.el (startup--setup-quote-display):
7912         On a text terminal supporting glyph codes, use the reported
7913         glyph codes instead of the terminal coding system, as this
7914         is more accurate on the Linux console.
7915         * lisp/startup.el (startup--setup-quote-display):
7916         New optional arg STYLE.
7917         * src/fontset.c (Finternal_char_font):
7918         Report glyph codes for a text terminal, if they are available.
7919         Currently this is supported only for the Linux console.
7920         * src/termhooks.h (struct terminal): New member glyph-code-table.
7921         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
7922         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
7923         (terminal_glyph_code): New function.
7925 2015-09-08  Juri Linkov  <juri@linkov.net>
7927         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
7928         underline.  (Bug#21433)
7930 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
7932         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
7934 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
7936         Fix double-reporting of rename events with inotify
7937         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
7938         of rename events with inotify (bug#21435).
7940 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
7942         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
7943         (tetris-mode-map): Use it.
7945 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
7947         Remove a few simple cases of global redisplay
7948         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
7949         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
7950         rather than returning a "resized_p" boolean.
7951         (redisplay_internal): Adjust call accordingly.
7952         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
7953         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
7954         tracking of this undesirable situation.
7956         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
7957         * src/process.c (status_notify): Only set the update_mode_line on the
7958         relevant buffers rather than setting it globally.
7960 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
7962         * lisp/electric.el (electric-quote-post-self-insert-function):
7963         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
7964         (electric-quote-mode): Activate everywhere in message-mode.
7966 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
7968         Go back to grave quoting in source-code docstrings etc.
7969         This reverts almost all my recent changes to use curved quotes
7970         in docstrings and/or strings used for error diagnostics.
7971         There are a few exceptions, e.g., Bahá’í proper names.
7972         * admin/unidata/unidata-gen.el (unidata-gen-table):
7973         * lisp/abbrev.el (expand-region-abbrevs):
7974         * lisp/align.el (align-region):
7975         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
7976         (outlineify-sticky):
7977         * lisp/apropos.el (apropos-library):
7978         * lisp/bookmark.el (bookmark-default-annotation-text):
7979         * lisp/button.el (button-category-symbol, button-put)
7980         (make-text-button):
7981         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
7982         * lisp/calc/calc-embed.el (calc-do-embedded):
7983         * lisp/calc/calc-ext.el (calc-user-function-list):
7984         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
7985         * lisp/calc/calc-help.el (calc-describe-key)
7986         (calc-describe-thing, calc-full-help):
7987         * lisp/calc/calc-lang.el (calc-c-language)
7988         (math-parse-fortran-vector-end, math-parse-tex-sum)
7989         (math-parse-eqn-matrix, math-parse-eqn-prime)
7990         (calc-yacas-language, calc-maxima-language, calc-giac-language)
7991         (math-read-giac-subscr, math-read-math-subscr)
7992         (math-read-big-rec, math-read-big-balance):
7993         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
7994         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
7995         (calc-auto-recompute):
7996         * lisp/calc/calc-prog.el (calc-fix-token-name)
7997         (calc-read-parse-table-part, calc-user-define-invocation)
7998         (math-do-arg-check):
7999         * lisp/calc/calc-store.el (calc-edit-variable):
8000         * lisp/calc/calc-units.el (math-build-units-table-buffer):
8001         * lisp/calc/calc-vec.el (math-read-brackets):
8002         * lisp/calc/calc-yank.el (calc-edit-mode):
8003         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
8004         * lisp/calendar/appt.el (appt-display-message):
8005         * lisp/calendar/diary-lib.el (diary-check-diary-file)
8006         (diary-mail-entries, diary-from-outlook):
8007         * lisp/calendar/icalendar.el (icalendar-export-region)
8008         (icalendar--convert-float-to-ical)
8009         (icalendar--convert-date-to-ical)
8010         (icalendar--convert-ical-to-diary)
8011         (icalendar--convert-recurring-to-diary)
8012         (icalendar--add-diary-entry):
8013         * lisp/calendar/time-date.el (format-seconds):
8014         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
8015         (timeclock-make-hours-explicit, timeclock-log-data):
8016         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
8017         (todo-item-mark, todo-check-format)
8018         (todo-insert-item--next-param, todo-edit-item--next-key)
8019         (todo-mode):
8020         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
8021         * lisp/cedet/mode-local.el (describe-mode-local-overload)
8022         (mode-local-print-binding, mode-local-describe-bindings-2):
8023         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
8024         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
8025         * lisp/cus-start.el (standard):
8026         * lisp/cus-theme.el (describe-theme-1):
8027         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
8028         (custom--sort-vars-1, load-theme):
8029         * lisp/descr-text.el (describe-text-properties-1, describe-char):
8030         * lisp/dired-x.el (dired-do-run-mail):
8031         * lisp/dired.el (dired-log):
8032         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
8033         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
8034         (ad-disable-advice, ad-remove-advice, ad-set-argument)
8035         (ad-set-arguments, ad--defalias-fset, ad-activate)
8036         (ad-deactivate):
8037         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
8038         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
8039         (byte-optimize-while, byte-optimize-apply):
8040         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
8041         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
8042         (byte-compile-log-file, byte-compile-format-warn)
8043         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
8044         (byte-compile-cl-warn)
8045         (byte-compile-warn-about-unresolved-functions)
8046         (byte-compile-file, byte-compile--declare-var)
8047         (byte-compile-file-form-defmumble, byte-compile-form)
8048         (byte-compile-normal-call, byte-compile-check-variable)
8049         (byte-compile-variable-ref, byte-compile-variable-set)
8050         (byte-compile-subr-wrong-args, byte-compile-setq-default)
8051         (byte-compile-negation-optimizer)
8052         (byte-compile-condition-case--old)
8053         (byte-compile-condition-case--new, byte-compile-save-excursion)
8054         (byte-compile-defvar, byte-compile-autoload)
8055         (byte-compile-lambda-form)
8056         (byte-compile-make-variable-buffer-local, display-call-tree)
8057         (batch-byte-compile):
8058         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
8059         * lisp/emacs-lisp/chart.el (chart-space-usage):
8060         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
8061         (check-declare-warn, check-declare-file)
8062         (check-declare-directory):
8063         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
8064         (checkdoc-message-text-engine):
8065         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
8066         (cl--describe-class):
8067         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
8068         (cl--generic-describe, cl-generic-generalizers):
8069         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
8070         (cl-symbol-macrolet):
8071         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
8072         * lisp/emacs-lisp/copyright.el (copyright)
8073         (copyright-update-directory):
8074         * lisp/emacs-lisp/edebug.el (edebug-read-list):
8075         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
8076         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
8077         (eieio-oref):
8078         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
8079         * lisp/emacs-lisp/eieio-speedbar.el:
8080         (eieio-speedbar-child-make-tag-lines)
8081         (eieio-speedbar-child-description):
8082         * lisp/emacs-lisp/eieio.el (defclass, change-class):
8083         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
8084         (elint-init-form, elint-check-defalias-form)
8085         (elint-check-let-form):
8086         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
8087         (ert-results-pop-to-backtrace-for-test-at-point)
8088         (ert-results-pop-to-messages-for-test-at-point)
8089         (ert-results-pop-to-should-forms-for-test-at-point)
8090         (ert-describe-test):
8091         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
8092         (find-function-library):
8093         * lisp/emacs-lisp/generator.el (iter-yield):
8094         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
8095         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
8096         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
8097         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
8098         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
8099         (advice--make, define-advice):
8100         * lisp/emacs-lisp/package-x.el (package-upload-file):
8101         * lisp/emacs-lisp/package.el (package-version-join)
8102         (package-disabled-p, package-activate-1, package-activate)
8103         (package--download-one-archive)
8104         (package--download-and-read-archives)
8105         (package-compute-transaction, package-install-from-archive)
8106         (package-install, package-install-selected-packages)
8107         (package-delete, package-autoremove, describe-package-1)
8108         (package-install-button-action, package-delete-button-action)
8109         (package-menu-hide-package, package-menu--list-to-prompt)
8110         (package-menu--perform-transaction)
8111         (package-menu--find-and-notify-upgrades):
8112         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
8113         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
8114         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
8115         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
8116         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
8117         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
8118         (rx-form):
8119         * lisp/emacs-lisp/smie.el (smie-config-save):
8120         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
8121         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
8122         * lisp/emacs-lisp/testcover.el (testcover-1value):
8123         * lisp/emacs-lisp/timer.el (timer-event-handler):
8124         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
8125         (viper-toggle-search-style, viper-kill-buffer)
8126         (viper-brac-function):
8127         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
8128         * lisp/env.el (setenv):
8129         * lisp/erc/erc-button.el (erc-nick-popup):
8130         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
8131         * lisp/eshell/em-dirs.el (eshell/cd):
8132         * lisp/eshell/em-glob.el (eshell-glob-regexp)
8133         (eshell-glob-entries):
8134         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
8135         * lisp/eshell/esh-opt.el (eshell-show-usage):
8136         * lisp/facemenu.el (facemenu-add-new-face)
8137         (facemenu-add-new-color):
8138         * lisp/faces.el (read-face-name, read-face-font, describe-face)
8139         (x-resolve-font-name):
8140         * lisp/files-x.el (modify-file-local-variable):
8141         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
8142         (set-auto-mode, hack-one-local-variable--obsolete)
8143         (dir-locals-set-directory-class, write-file, basic-save-buffer)
8144         (delete-directory, copy-directory, recover-session)
8145         (recover-session-finish, insert-directory)
8146         (file-modes-char-to-who, file-modes-symbolic-to-number)
8147         (move-file-to-trash):
8148         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
8149         * lisp/find-cmd.el (find-generic, find-to-string):
8150         * lisp/finder.el (finder-commentary):
8151         * lisp/font-lock.el (font-lock-fontify-buffer):
8152         * lisp/format.el (format-write-file, format-find-file)
8153         (format-insert-file):
8154         * lisp/frame.el (get-device-terminal, select-frame-by-name):
8155         * lisp/fringe.el (fringe--check-style):
8156         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
8157         * lisp/help-fns.el (help-fns--key-bindings)
8158         (help-fns--compiler-macro, help-fns--parent-mode)
8159         (help-fns--obsolete, help-fns--interactive-only)
8160         (describe-function-1, describe-variable):
8161         * lisp/help.el (describe-mode)
8162         (describe-minor-mode-from-indicator):
8163         * lisp/image.el (image-type):
8164         * lisp/international/ccl.el (ccl-dump):
8165         * lisp/international/fontset.el (x-must-resolve-font-name):
8166         * lisp/international/mule-cmds.el (prefer-coding-system)
8167         (select-safe-coding-system-interactively)
8168         (select-safe-coding-system, activate-input-method)
8169         (toggle-input-method, describe-current-input-method)
8170         (describe-language-environment):
8171         * lisp/international/mule-conf.el (code-offset):
8172         * lisp/international/mule-diag.el (describe-character-set)
8173         (list-input-methods-1):
8174         * lisp/mail/feedmail.el (feedmail-run-the-queue):
8175         * lisp/mouse.el (minor-mode-menu-from-indicator):
8176         * lisp/mpc.el (mpc-playlist-rename):
8177         * lisp/msb.el (msb--choose-menu):
8178         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
8179         * lisp/net/imap.el (imap-interactive-login):
8180         * lisp/net/mairix.el (mairix-widget-create-query):
8181         * lisp/net/newst-backend.el (newsticker--sentinel-work):
8182         * lisp/net/newst-treeview.el (newsticker--treeview-load):
8183         * lisp/net/rlogin.el (rlogin):
8184         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
8185         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
8186         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
8187         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
8188         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
8189         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
8190         (org-babel-goto-named-result):
8191         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
8192         * lisp/org/ob-ref.el (org-babel-ref-resolve):
8193         * lisp/org/org-agenda.el (org-agenda-prepare):
8194         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
8195         (org-clock-resolve):
8196         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
8197         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
8198         * lisp/org/org-habit.el (org-habit-parse-todo):
8199         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
8200         (org-mouse-context-menu):
8201         * lisp/org/org-table.el (org-table-edit-formulas):
8202         * lisp/org/ox.el (org-export-async-start):
8203         * lisp/proced.el (proced-log):
8204         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
8205         (ada-check-matching-start, ada-goto-matching-start):
8206         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
8207         * lisp/progmodes/ada-xref.el (ada-find-executable):
8208         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
8209         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
8210         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
8211         (flymake-start-syntax-check-process):
8212         * lisp/progmodes/python.el (python-shell-get-process-or-error)
8213         (python-define-auxiliary-skeleton):
8214         * lisp/progmodes/sql.el (sql-comint):
8215         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
8216         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
8217         * lisp/recentf.el (recentf-open-files):
8218         * lisp/replace.el (query-replace-read-from)
8219         (occur-after-change-function, occur-1):
8220         * lisp/scroll-bar.el (scroll-bar-columns):
8221         * lisp/server.el (server-get-auth-key):
8222         * lisp/simple.el (execute-extended-command)
8223         (undo-outer-limit-truncate, list-processes--refresh)
8224         (compose-mail, set-variable, choose-completion-string)
8225         (define-alternatives):
8226         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
8227         (command-line-1):
8228         * lisp/subr.el (noreturn, define-error, add-to-list)
8229         (read-char-choice, version-to-list):
8230         * lisp/term/common-win.el (x-handle-xrm-switch)
8231         (x-handle-name-switch, x-handle-args):
8232         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
8233         * lisp/textmodes/reftex-ref.el (reftex-label):
8234         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
8235         * lisp/textmodes/two-column.el (2C-split):
8236         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
8237         (tutorial--find-changed-keys):
8238         * lisp/type-break.el (type-break-noninteractive-query):
8239         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
8240         (wdired-do-perm-changes):
8241         * lisp/whitespace.el (whitespace-report-region):
8242         Prefer grave quoting in source-code strings used to generate help
8243         and diagnostics.
8244         * lisp/faces.el (face-documentation):
8245         No need to convert quotes, since the result is a docstring.
8246         * lisp/info.el (Info-virtual-index-find-node)
8247         (Info-virtual-index, info-apropos):
8248         Simplify by generating only curved quotes, since info files are
8249         typically that ways nowadays anyway.
8250         * lisp/international/mule-diag.el (list-input-methods):
8251         Don’t assume text quoting style is curved.
8252         * lisp/org/org-bibtex.el (org-bibtex-fields):
8253         Revert my recent changes, going back to the old quoting style.
8255 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
8257         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
8258         (package--autoloads-file-name)
8259         (package--activate-autoloads-and-load-path): New function.
8260         (package-activate-1): Delegate autoloading and load-path
8261         configuration to `package--activate-autoloads-and-load-path'.
8262         (package--compile): Before compilation, call
8263         `package--activate-autoloads-and-load-path' instead of
8264         `package-activate-1'.
8266 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
8268         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
8270 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
8272         Fix deletion of symlinks to directories on MS-Windows
8273         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
8274         symlink to a directory, try again with 'rmdir'.
8275         (is_symlink): If the argument is a symlink to a directory, set a
8276         bit in the return value to indicate that fact.
8278 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
8280         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
8281         When `package-initialize' is called as part of loading the init file,
8282         the user probably doesn't want it to be called again afterwards.
8283         In this situation, `package-initialize' now sets
8284         `package-enable-at-startup' to nil to prevent that.  The user can have
8285         the old behavior by setting this variable to t after the call to
8286         `package-initialize'.  (Bug#21423)
8287         * doc/emacs/package.texi (Package Installation): Document it.
8288         * doc/lispref/package.texi (Packaging Basics): Document it.
8289         * etc/NEWS: Document it.
8291 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
8293         Bump version of ntlm.el to 2.00
8294         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
8295         Add comm keyword.
8297 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
8299         * doc/misc/gnus.texi (Mail Source Specifiers):
8300         Allow :mailbox to be a list.
8302 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
8304         * lisp/progmodes/etags.el (etags-tags-completion-table):
8305         Allow even one non-regular character before the implicit tag name.
8306         Reported at http://emacs.stackexchange.com/questions/15269/.
8308 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
8310         Add support for NTLMv2 authentication
8311         * lisp/net/ntlm.el (ntlm): New customization group.
8312         (ntlm-compatibility-level): New defcustom.
8313         (ntlm-compute-timestamp): New function.
8314         (ntlm-generate-nonce): Likewise.
8315         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
8317 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
8319         * lisp/emacs-lisp/package.el: Rename custom faces.
8320         All of the recently introduced faces, like `package-name-face', have
8321         been renamed to no end in `-face' to comply with the convention
8322         described in (info "(elisp) Defining Faces").
8323         (package-name, package-description)
8324         (package-status-built-in, package-status-external)
8325         (package-status-available, package-status-new)
8326         (package-status-held, package-status-disabled)
8327         (package-status-installed, package-status-dependency)
8328         (package-status-unsigned, package-status-incompat)
8329         (package-status-avail-obso): New faces.
8330         (package-menu--print-info-simple): Use them.
8332 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
8334         mail-source.el: Make the imap mail-source's :mailbox handle a list
8335         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
8336         Allow :mailbox to be  a list.
8338 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
8340         nnimap.el: Handle nil arg to nnimap-request-group
8341         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
8342         This arg isn't always passed in, check it's not nil before making it
8343         into a list.  The active arg will also be nil if the group is new,
8344         check for that.
8346 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
8348         File notifications: Support renaming over directory boundaries
8349         * lisp/filenotify.el (file-notify-handle-event):
8350         (file-notify--pending-event): Adapt docstring.
8351         (file-notify--descriptor, file-notify-callback): Reimplement in
8352         order to support renaming over directory boundaries.
8353         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
8354         * doc/lispref/os.texi (File Notifications): Remove limitation of
8355         file renaming to the same directory.
8357 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
8359         Spelling fix (Bug#21420)
8361 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
8363         Improve the semantic of map-some
8364         Update map-some to return the returned by the predicate, similar to
8365         seq-some.
8366         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
8367           return value of the predicate.
8368         * test/automated/map-tests.el (test-map-some): Update the test to check
8369           for non-nil values only.
8371         Rename map-contains-key-p and map-some-p
8372         Remove the "-p" suffix from both function names.
8373         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
8374           Rename the functions.
8375         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
8376           Update both test functions.
8378         Improve the semantic of seq-some
8379         Update seq-some to return non-nil if the predicate returns non-nil for
8380         any element of the seq, in which case the returned value is the one
8381         returned by the predicate.
8382         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
8383           docstring.
8384         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
8385         * doc/lispref/sequences.texi (Sequence Functions): Update the
8386           documentation for seq-some.
8388         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
8389         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
8390           without the "-p" prefix.
8391         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
8392           the tests accordingly.
8393         * doc/lispref/sequences.texi (Sequence Functions): Update the
8394           documentation for seq.el.
8396 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
8398         text-quoting-style for usage of fn names with ‘’
8399         * lisp/help.el (help--docstring-quote): Don’t assume
8400         text-quoting-style is ‘curve’ when generating usage strings for
8401         functions whose names contain curved quotes.
8403 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
8405         Fix fix for describe-function keybinding confusion
8406         This fixes a bug introduced by the previous patch.
8407         * lisp/help-fns.el (help-fns--signature):
8408         Last arg of help-fns--signature is now a buffer, or nil if a
8409         raw signature is wanted.  All callers changed.
8410         (describe-function-1): Use this to do the right thing with signatures.
8412 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
8414         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
8416         Use PAT rather than UPAT in pcase macros
8417         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
8418         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
8419           than UPAT.
8421 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
8423         Fix describe-function keybinding confusion
8424         * lisp/help-fns.el (describe-function-1): Compute signature
8425         in the original buffer, not in standard-output, so that
8426         substitute-command-keys uses the proper keybindings.
8427         This fixes Bug#21412, introduced in commit
8428         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
8430 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
8432         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
8434 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
8436         Avoid read error messages from 'inotify'
8437         * src/process.c (wait_reading_process_output): Add a
8438         'tls_available' set and manipulate it instead of 'Available' when
8439         checking TLS inputs.  Assign the value to 'Available' only if we
8440         find any TLS data waiting to be read.  This avoids error messages
8441         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
8443 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
8445         Avoid errors in thing-at-point with 2nd argument non-nil
8446         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
8447         sequences.  (Bug#21391)
8449 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
8451         Fix segfaults due to using a stale face ID
8452         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
8453         (display_echo_area_1, redisplay_internal): Call it to avoid
8454         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
8455         faces, which could case a segfault if the frame's face cache was
8456         freed since the last redisplay.  (Bug#21394)
8457         * src/xfaces.c (free_realized_faces):
8458         Call forget_escape_and_glyphless_faces.
8459         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
8461 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
8463         Fix minor problems with " in manual
8465 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
8467         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
8468         multi-hop files.
8470 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
8472         Support automated ‘make check’ in non-C locale
8473         This lets the builder optionally test Emacs behavior in other locales.
8474         The C locale is still the default for tests.
8475         * test/automated/Makefile.in (TEST_LOCALE): New macro.
8476         (emacs): Use it.
8477         * test/automated/flymake-tests.el (flymake-tests--current-face):
8478         Use C locale for subprocesses so that tests behave as expected.
8479         * test/automated/python-tests.el:
8480         (python-shell-prompt-validate-regexps-1)
8481         (python-shell-prompt-validate-regexps-2)
8482         (python-shell-prompt-validate-regexps-3)
8483         (python-shell-prompt-validate-regexps-4)
8484         (python-shell-prompt-validate-regexps-5)
8485         (python-shell-prompt-validate-regexps-6)
8486         (python-shell-prompt-set-calculated-regexps-1):
8487         Adjust expected output to match locale.
8488         * test/automated/tildify-tests.el (tildify-test--test)
8489         (tildify-space-test--test, tildify-space-undo-test--test):
8490         This test assumes UTF-8 encoding.
8492 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
8494         Fix some more docstring etc. quoting problems
8495         Mostly these fixes prevent the transliteration of apostrophes
8496         that should stay apostrophes.  Also, prefer curved quotes in
8497         Bahá’í proper names, as that’s the preferred Bahá’í style and
8498         these names are chock-full of non-ASCII characters anyway.
8499         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
8500         (eieio-defclass-internal):
8501         * lisp/emacs-lisp/eieio.el (defclass):
8502         * lisp/hi-lock.el (hi-lock-mode):
8503         Don’t transliterate Lisp apostrophes when generating a
8504         doc string or diagnostic.
8505         * lisp/international/mule-diag.el (list-coding-systems-1):
8506         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
8507         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
8508         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
8509         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
8510         Substitute quotes before putting them in the help buffer.
8512 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
8514         Re-add the notion of echo_prompt lost in the translation
8515         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
8516         echo_prompt which contains the actual string.  Update all uses.
8517         * src/keyboard.c (kset_echo_prompt): New function.
8518         (echo_update): Add echo_prompt at the very beginning.
8519         (read_char): Remove workaround for bug#19875, not needed any more.
8520         (read_key_sequence): Set echo_prompt rather than echo_string
8521         (bug#21403).
8522         (mark_kboards): Mark echo_prompt.
8524         Fix disassembly of non-compiled lexical functions (bug#21377)
8525         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
8526         * lisp/emacs-lisp/disass.el: Use lexical-binding.
8527         (disassemble): Recognize `closure's as well.
8528         (disassemble-internal): Use indirect-function and
8529         help-function-arglist, and accept `closure's.
8530         (disassemble-internal): Use interactive-form.
8531         (disassemble-1): Use functionp.
8533         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
8534         Don't compose inside verbatim blocks!
8536 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
8538         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
8539         (bug#19441).
8541         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
8543 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
8545         vc-git-mode-line-string: Explicitly re-apply the face
8546         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
8547         the face (bug#21404).
8549 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
8551         Treat initial-scratch-message as a doc string
8552         * doc/emacs/building.texi (Lisp Interaction):
8553         * doc/lispref/os.texi (Startup Summary):
8554         * etc/NEWS: Document this.
8555         * lisp/startup.el (initial-scratch-message):
8556         Look up find-file’s key rather than hardcoding it.
8557         (command-line-1): Substitute the doc string.
8558         This also substitutes the quotes, which will help test display
8559         quoting at startup.
8561         Fix describe-char bug with glyphs on terminals
8562         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
8563         buffers too, so don’t treat them differently from graphic displays.
8564         Without this fix, describe-char would throw an error on a terminal
8565         if given a glyph with a non-default face.
8567         Follow text-quoting-style in display table init
8568         This attempts to fix a problem reported by Alan Mackenzie in:
8569         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
8570         * doc/lispref/display.texi (Active Display Table):
8571         Mention how text-quoting-style affects it.
8572         * doc/lispref/help.texi (Keys in Documentation):
8573         Say how to set text-quoting-style in ~/.emacs.
8574         * etc/NEWS: Document the change.
8575         * lisp/startup.el (startup--setup-quote-display):
8576         Follow user preference if text-quoting-style is set.
8577         (command-line): Setup quote display again if user expresses
8578         a preference in .emacs.
8580 2015-09-02  K. Handa  <handa@gnu.org>
8582         Fix typo
8583         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
8584         -> OTF_positioning_type_components_mask.
8586         Fix previous change
8587         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
8588         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
8590 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
8592         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
8593         Rename from vc-find-file-hook and make interactive.
8594         (vc-find-file-hook): Redefine as obsolete alias.
8596 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8598         Escape ` and ' in doc
8599         Escape apostrophes and grave accents in docstrings if they are
8600         are supposed to stand for themselves and are not quotes.  Remove
8601         apostrophes from docstring examples like ‘'(calendar-nth-named-day
8602         -1 0 10 year)’ that confuse source code with data.  Do some other
8603         minor docstring fixups as well, e.g., insert a missing close quote.
8605 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
8607         Generalize the prefix-command machinery of C-u
8608         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
8609         (prefix-command-preserve-state-hook): New hooks.
8610         (internal-echo-keystrokes-prefix): New function.
8611         (prefix-command--needs-update, prefix-command--last-echo): New vars.
8612         (prefix-command-update, prefix-command-preserve): New functions.
8613         (reset-this-command-lengths): New compatibility definition.
8614         (universal-argument--mode): Call prefix-command-update.
8615         (universal-argument, universal-argument-more, negative-argument)
8616         (digit-argument): Call prefix-command-preserve-state.
8617         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
8618         the "prefix argument" to echo.
8619         (this_command_key_count_reset, before_command_key_count)
8620         (before_command_echo_length): Delete variables.
8621         (echo_add_key): Always add a space.
8622         (echo_char): Remove.
8623         (echo_dash): Don't give up when this_command_key_count is 0, since that
8624         is now the case after a prefix command.
8625         (echo_update): New function, extracted from echo_now.
8626         (echo_now): Use it.
8627         (add_command_key, read_char, record_menu_key): Remove old disabled code.
8628         (command_loop_1): Don't refrain from pushing an undo boundary when
8629         prefix-arg is set.  Remove other prefix-arg special case, now handled
8630         directly in the prefix commands instead.  But call echo_now if there's
8631         a prefix state to echo.
8632         (read_char, record_menu_key): Use echo_update instead of echo_char.
8633         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
8634         (Freset_this_command_lengths): Delete function.
8635         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
8636         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
8637         * lisp/simple.el: Use those new hooks for C-u.
8638         (universal-argument--description): New function.
8639         (prefix-command-echo-keystrokes-functions): Use it.
8640         (universal-argument--preserve): New function.
8641         (prefix-command-preserve-state-hook): Use it.
8642         (command-execute): Call prefix-command-update if needed.
8643         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
8644         (kmacro-step-edit-prefix-index): Delete variables.
8645         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
8646         support for prefix arg commands.
8647         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
8648         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
8649         (cua--shift-control-prefix): Use prefix-command-preserve-state.
8650         Remove now unused arg `arg'.
8651         (cua--prefix-override-handler, cua--prefix-repeat-handler)
8652         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
8653         Update accordingly.
8654         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
8655         any more.
8656         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
8657         if the mark is not set.
8659 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8661         Rework quoting in Emacs Lisp Introduction
8662         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
8663         (if in more detail, type-of-animal in detail, else): Rework the
8664         early example to use " rather than ' so that we don’t burden
8665         complete novices with the low-priority detail of text quoting style.
8666         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
8667         (kill-new function, kill-ring-yank-pointer)
8668         (Complete forward-sentence, Loading Files)
8669         (Code for current-kill, Code for current-kill, yank):
8670         Resurrect the Emacs 22 versions of the code, which uses grave
8671         quoting style in doc strings.
8672         (Complete zap-to-char): Mention how quoting works in doc strings.
8674         Setup quote display only if interactive
8675         * lisp/startup.el (command-line):
8676         Skip call to startup--setup-quote-display if noninteractive.
8677         Without this change, python-shell-prompt-validate-regexps-1
8678         fails in test/automated/python-tests.el when run in an
8679         en_US.utf8 locale on Fedora.
8681 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
8683         Use defalias at the top level
8684         * lisp/gnus/gnus-util.el (gnus-format-message):
8685         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
8686         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
8688 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8690         terminal-init-w32console mimicks command-line
8691         Problem reported by Eli Zaretskii.
8692         * lisp/startup.el (startup--setup-quote-display):
8693         New function, refactored from a part of ‘command-line’.
8694         (command-line): Use it.
8695         * lisp/term/w32console.el (terminal-init-w32console):
8696         Use it, so that this function stays consistent with ‘command-line’.
8698         Display replacement quotes with shadow glyphs
8699         * lisp/startup.el (command-line): When displaying ASCII
8700         replacements for curved quotes, use a shadow glyph instead of a
8701         regular one, to avoid ambiguity.
8703 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
8705         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
8707 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8709         Docstring fixes re quotes in C code
8710         Fix some docstring quoting problems, mostly by escaping apostrophe.
8712 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
8714         Some Tramp password fixes
8715         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
8716         of the hops.
8717         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
8718         at the beginning of the command.  Otherwise, it could be
8719         interpreted as password prompt if the remote host echoes the
8720         command.
8721         (tramp-remote-coding-commands): Add "openssl enc -base64".
8723 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
8725         Make vc-git-working-revision always return the commit hash
8726         * lisp/vc/vc-git.el (vc-git-working-revision):
8727         Return the commit hash (bug#21383).
8728         (vc-git--symbolic-ref): New function, extracted from above.
8729         (vc-git-mode-line-string): Use it.
8731 2015-09-01  K. Handa  <handa@gnu.org>
8733         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
8734         * src/ftfont.c (MFLTGlyphFT): New type.
8735         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
8736         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
8737         elements in the array MFLTGlyphString.glyphs.
8739 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
8741         Improve comments in elisp-mode.el, elisp-mode-tests.el
8742         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
8744         Delete Emacs 25 test in mode-local.el
8745         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8746         Fix missed an edit in previous commit.
8748         Show all known mode-local overrides in *Help*
8749         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8750         Assume Emacs 25. Add all known mode-local overrides.
8752 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
8754         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
8755         Ensure that the article where the search word is found is displayed
8756         and pointed to in the summary buffer.
8758 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
8760         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
8761         When the region is active, but is empty (length 0), act as though
8762         the region was not active; that is, put a comment at the end of
8763         the line.  (Bug#21119)
8765 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
8767         Port tls.el to older Emacs
8768         * lisp/net/tls.el (tls-format-message):
8769         Alias to format-message, or format if not available.
8770         (open-tls-stream): Use it.
8772 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
8774         hideif.el: Recognize .h++ as C++ header
8775         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
8777         isearch: Document character folding mode
8778         * lisp/isearch.el (isearch-forward):
8779         Mention `isearch-toggle-character-fold' in doc string.
8781 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8783         Quoting fixes in ERC and Eshell
8784         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
8785         * lisp/erc/erc-backend.el (define-erc-response-handler):
8786         * lisp/erc/erc-fill.el (erc-fill-static-center):
8787         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
8788         * lisp/eshell/em-glob.el (eshell-glob-entries):
8789         * lisp/eshell/em-hist.el (eshell-save-some-history):
8790         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
8791         (eshell-shuffle-files):
8792         * lisp/eshell/esh-cmd.el (eshell-do-eval):
8793         * lisp/eshell/esh-proc.el (eshell-process-interact)
8794         (eshell-query-kill-processes):
8795         Respect ‘text-quoting-style’ in diagnostics and doc strings.
8797         Quoting fixes in Gnus
8798         * lisp/gnus/gnus-agent.el:
8799         (gnus-agent-possibly-synchronize-flags-server):
8800         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
8801         * lisp/gnus/gnus-eform.el (gnus-edit-form):
8802         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
8803         (gnus-group-nnimap-edit-acl):
8804         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
8805         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
8806         * lisp/gnus/message.el (message-strip-subject-encoded-words)
8807         (message-check-recipients, message-send-form-letter):
8808         * lisp/gnus/mm-decode.el (mm-display-part):
8809         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
8810         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
8811         (mml-smime-get-ldap-cert):
8812         * lisp/gnus/spam-report.el (spam-report-process-queue):
8813         Respect ‘text-quoting-style’ in diagnostics.
8814         * lisp/gnus/gnus-art.el (article-display-face)
8815         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
8816         Use straight quoting in email.
8817         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
8818         Escape apostrophes in doc strings.
8820         Quoting fixes in lisp mail, mh-e, net, url
8821         * lisp/mail/emacsbug.el (report-emacs-bug)
8822         (report-emacs-bug-hook): Use straight quotes in outgoing email,
8823         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
8824         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
8825         * lisp/mail/rmailout.el (rmail-output-read-file-name):
8826         * lisp/net/imap.el (imap-interactive-login):
8827         * lisp/net/tls.el (open-tls-stream):
8828         * lisp/url/url-auth.el (url-register-auth-scheme):
8829         Respect ‘text-quoting-style’ in diagnostics.
8830         * lisp/mh-e/mh-e.el (mh-sortm-args):
8831         Quote docstring example using text quotes, not as a Lisp quote.
8833 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
8835         Fix some byte-compiler warnings in EDE
8836         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
8837         existing autoloader list, rather than add to it.
8838         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
8839         argument to eieio class constructor.
8840         (ede-show-supported-projects): New.
8841         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
8842         with (oref ... name).
8843         (ede-auto-load-project): Use slot name, not initarg key.
8844         * lisp/cedet/ede/generic.el (ede-generic-load)
8845         (ede-generic-find-matching-target): Use slot name, not initarg key.
8846         (ede-find-target): Use oref-default on class name.
8847         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
8848         class constructor.
8849         (ede-enable-generic-projects): Make project type names unique.
8851 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
8853         Fix directory accessibility tests for w32 network volumes
8854         * src/w32.c (faccessat): Don't fail with network volumes without a
8855         share.
8856         (w32_accessible_directory_p): Handle network volumes without a
8857         share.
8859         Fix handling long file names in readdir on MS-Windows
8860         * src/w32.c (sys_readdir): Append "\*" to the directory after
8861         converting it to UTF-16/ANSI, not before, to avoid overflowing the
8862         260-character limit on file names in filename_to_utf16/ansi.
8864         Make file-accessible-directory-p reliable on MS-Windows
8865         * src/w32.c (w32_accessible_directory_p): New function.
8866         * src/w32.h (w32_accessible_directory_p): Add prototype.
8867         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
8868         w32_accessible_directory_p to test a directory for accessibility
8869         by the current user.  (Bug#21346)
8870         (Ffile_accessible_directory_p): Remove the w32 specific caveat
8871         from the doc string.
8873 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
8875         Don't call do_pending_window_change in signal handlers (Bug#21380)
8876         * src/gtkutil.c (xg_frame_resized):
8877         * src/xterm.c (x_set_window_size):
8878         * src/w32term.c (x_set_window_size): Don't call
8879         do_pending_window_change.
8881 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8883         Quoting fixes in lisp/org
8884         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
8885         (org-tags-view):
8886         * lisp/org/org-capture.el (org-capture-mode)
8887         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
8888         (org-ctags-ask-append-topic):
8889         * lisp/org/org.el (org-time-string-to-time)
8890         (org-time-string-to-absolute):
8891         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
8892         (org-ctags-ask-append-topic):
8893         * lisp/org/org.el (org-time-string-to-time)
8894         (org-time-string-to-absolute):
8895         Respect ‘text-quoting-style’ in diagnostics.
8896         * lisp/org/org-agenda.el (org-agenda-custom-commands)
8897         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
8898         * lisp/org/org-capture.el (org-capture-fill-template):
8899         Avoid contraction in output file that might be ASCII.
8900         * lisp/org/org-compat.el (format-message):
8901         Define if not already defined, for backward compatibility.
8902         * lisp/org/org-src.el (org-edit-src-save):
8903         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
8904         Escape apostrophes in diagnostics.
8906         Treat “instead” strings as docstrings
8907         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
8908         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
8909         Substitute quotes in instead strings.
8911 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
8913         Better documentation of seq-let
8914         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
8915         documentation of seq-let.
8917 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8919         * lisp/international/ccl.el: Fix quoting.
8921         Quoting fixes in lisp/international and lisp/leim
8922         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
8923         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
8924         * lisp/international/mule-cmds.el:
8925         (select-safe-coding-system-interactively, leim-list-file-name):
8926         * lisp/international/quail.el (quail-use-package, quail-help):
8927         * lisp/international/titdic-cnv.el (tit-process-header)
8928         (miscdic-convert):
8929         Respect text quoting style in doc strings and diagnostics.
8930         * lisp/international/quail.el (lisp/international/quail.el):
8931         * lisp/leim/quail/ethiopic.el ("ethiopic"):
8932         Escape apostrophes in doc strings.
8934         Make ‘text-quoting-style’ a plain defvar
8935         It doesn’t need customization, as it’s likely useful only by experts.
8936         Suggested by Stefan Monnier in:
8937         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
8938         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
8940         Quoting fixes in lisp/textmodes
8941         * lisp/textmodes/bibtex.el (bibtex-validate)
8942         (bibtex-validate-globally, bibtex-search-entries):
8943         * lisp/textmodes/ispell.el (ispell-command-loop):
8944         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
8945         * lisp/textmodes/texinfmt.el (texinfmt-version)
8946         (texinfo-format-region, texinfo-format-buffer-1):
8947         * lisp/textmodes/two-column.el (2C-split):
8948         Respect text quoting style in doc strings and diagnostics.
8949         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
8950         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
8951         Escape apostrophes in doc strings.
8953         Documentation fixes re quotes
8954         Prefer curved quotes in examples if users will typically see
8955         curved quotes when the examples run.
8956         Mention format-message when appropriate.
8957         Don’t use @code in examples.
8958         Quote an apostrophe with @kbd.
8960         Quoting fixes in lisp/progmodes
8961         * lisp/progmodes/cc-engine.el (c-bos-report-error):
8962         * lisp/progmodes/cpp.el (cpp-edit-reset):
8963         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
8964         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
8965         (etags-tags-apropos, list-tags, tags-apropos):
8966         * lisp/progmodes/executable.el (executable-set-magic):
8967         * lisp/progmodes/octave.el (octave-sync-function-file-names)
8968         (octave-help, octave-find-definition-default-filename)
8969         (octave-find-definition):
8970         Respect text quoting style in doc strings and diagnostics.
8971         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
8972         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
8973         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
8974         Escape apostrophes in doc strings.
8975         * lisp/progmodes/cmacexp.el (c-macro-expansion):
8976         Use straight quoting in ASCII comment.
8977         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
8978         (idlwave-pad-keyword):
8979         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
8980         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
8981         (vhdl-electric-semicolon, vhdl-electric-comma)
8982         (vhdl-electric-period, vhdl-electric-equal):
8983         Use directed quotes in diagnostics and doc strings.
8985 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
8987         Minor documentation and NEWS tweak
8988         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
8989         Add an index entry.
8990         * etc/NEWS: Fix a typo in character-fold-to-regexp.
8992 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
8994         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
8995         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
8996         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
8997         Adapt test.
8999 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
9001         Text quoting fixes in cedet, emulation, emacs-lisp
9002         * lisp/cedet/ede.el (ede-check-project-directory):
9003         * lisp/cedet/semantic/analyze/debug.el
9004         (semantic-analyzer-debug-insert-include-summary):
9005         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
9006         * lisp/cedet/semantic/decorate/include.el
9007         (semantic-decoration-unknown-include-describe)
9008         (semantic-decoration-all-include-summary):
9009         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
9010         * lisp/emulation/edt.el (edt-load-keys):
9011         * lisp/emulation/viper-cmd.el
9012         (viper-display-current-destructive-command)
9013         (viper-query-replace, viper-brac-function):
9014         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
9015         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
9016         Respect text quoting style in doc string or diagnostic.
9017         * lisp/cedet/mode-local.el (describe-mode-local-overload):
9018         Use format-message to avoid overtranslating quotes.
9019         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
9020         Escape an apostrophe in a docstring.
9021         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
9023 2015-08-29  Daniel Colascione  <dancol@dancol.org>
9025         Fix which-func for curly quotes: look for symbol, not message
9026         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
9027         imenu-unavailable error symbol instead of trying to match message
9028         exactly.
9029         * lisp/imenu.el (imenu-unavailable): New error.
9030         (imenu-unavailable-error): New function.
9032 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
9034         Fix Python tests on MS-Windows
9035         * test/automated/python-tests.el
9036         (python-shell-calculate-command-1): Run python-shell-interpreter
9037         through shell-quote-argument before comparing with what
9038         python-shell-calculate-command returns.
9039         (python-shell-calculate-pythonpath-1)
9040         (python-shell-calculate-pythonpath-2)
9041         (python-shell-calculate-process-environment-2): Use path-separator
9042         instead of a literal ':'.
9043         (python-shell-calculate-exec-path-2)
9044         (python-shell-calculate-exec-path-3)
9045         (python-shell-calculate-exec-path-4)
9046         (python-shell-with-environment-1)
9047         (python-shell-with-environment-2): Run "/env/bin" through
9048         expand-file-name before comparing with exec-path.  (Bug#21375)
9050 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9052         Use Core Text types/functions/variables/enumerators directly
9053         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
9054         (CharacterCollection): Remove typedefs.  All uses replaced with
9055         definitions.
9056         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
9057         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
9058         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
9059         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
9060         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
9061         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
9062         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
9063         definitions.
9064         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
9065         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
9066         (MAC_FONT_FORMAT_BITMAP)
9067         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
9068         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
9069         All uses replaced with definitions.
9070         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
9071         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
9072         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
9073         Add compatibility enumerators for older versions.
9074         (mac_font_descriptor_create_with_attributes)
9075         (mac_font_descriptor_create_matching_font_descriptors)
9076         (mac_font_descriptor_create_matching_font_descriptor)
9077         (mac_font_descriptor_copy_attribute)
9078         (mac_font_descriptor_supports_languages)
9079         (mac_font_create_with_name, mac_font_get_size)
9080         (mac_font_copy_family_name, mac_font_copy_character_set)
9081         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
9082         (mac_font_get_descent, mac_font_get_leading)
9083         (mac_font_get_underline_position)
9084         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
9085         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
9086         replaced with definitions.
9087         (mac_font_create_preferred_family_for_attributes)
9088         (mac_font_get_advance_width_for_glyph)
9089         (mac_font_get_bounding_rect_for_glyph)
9090         (mac_font_create_available_families, mac_font_shape):
9091         Remove macros for renamed functions.
9092         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
9093         * src/macterm.m (mac_font_descriptor_supports_languages):
9094         Rename from mac_ctfont_descriptor_supports_languages.
9095         (mac_font_create_preferred_family_for_attributes): Rename from
9096         mac_ctfont_create_preferred_family_for_attributes.
9097         (mac_font_get_advance_width_for_glyph): Rename from
9098         mac_ctfont_get_advance_width_for_glyph.
9099         Use kCTFontOrientationDefault also for older versions.
9100         (mac_font_get_bounding_rect_for_glyph): Rename from
9101         mac_ctfont_get_bounding_rect_for_glyph.
9102         Use kCTFontOrientationDefault also for older versions.
9103         (mac_font_create_available_families): Rename from
9104         mac_ctfont_create_available_families.
9105         (mac_font_equal_in_postscript_name): Rename from
9106         mac_ctfont_equal_in_postscript_name.  All uses changed.
9107         (mac_font_create_line_with_string_and_font): Rename from
9108         mac_ctfont_create_line_with_string_and_font.  All uses changed.
9109         (mac_font_shape): Rename from mac_ctfont_shape.
9110         (mac_font_family_compare): Remove unused declaration.
9112 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
9114         Fix minor text quoting in calc, calendar, vc
9115         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
9116         * lisp/calc/calc-help.el (calc-j-prefix-help):
9117         * lisp/calc/calc-misc.el (calc-help):
9118         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
9119         Escape an apostrophe in a docstring.
9120         * lisp/calc/calc-forms.el (calc-hms-notation):
9121         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
9122         Escape an apostrophe in a diagnostic.
9123         * lisp/calc/calc-misc.el (calc-help):
9124         * lisp/calendar/diary-lib.el (diary-include-files):
9125         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
9126         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
9127         * lisp/vc/ediff-diff.el (ediff-same-contents):
9128         * lisp/vc/ediff-merg.el (ediff-re-merge):
9129         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
9130         * lisp/vc/ediff-util.el (ediff-test-save-region)
9131         (ediff-status-info):
9132         * lisp/vc/ediff.el (ediff-merge-revisions)
9133         (ediff-merge-revisions-with-ancestor):
9134         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
9135         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
9136         Respect text quoting style in doc string or diagnostic.
9137         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
9138         * lisp/vc/add-log.el (change-log-goto-source):
9139         Avoid double-formatting.
9140         * lisp/vc/ediff-init.el (format-message):
9141         New backward-compatibility alias.
9143 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
9145         Fix minor text quoting problems in lisp top level
9146         * lisp/apropos.el (apropos-describe-plist):
9147         * lisp/cus-theme.el (customize-themes):
9148         * lisp/dired.el (dired-log):
9149         * lisp/help-fns.el (describe-variable):
9150         * lisp/hexl.el (hexl-insert-multibyte-char):
9151         * lisp/info.el (Info-finder-find-node):
9152         * lisp/json.el (json-read-string):
9153         * lisp/novice.el (disabled-command-function)
9154         (disabled-command-function):
9155         * lisp/startup.el (normal-mouse-startup-screen):
9156         * lisp/woman.el (WoMan-log, WoMan-warn):
9157         Respect text quoting style in doc string or diagnostic.
9158         * lisp/replace.el (replace-character-fold):
9159         * src/syntax.c (Fmodify_syntax_entry):
9160         Escape an apostrophe in a docstring.
9161         * lisp/tempo.el (tempo-define-template):
9162         Remove confusing apostrophe from docstring.
9163         * lisp/whitespace.el (whitespace-mark-x):
9164         Use directed quotes in docstring.
9166 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
9168         Fix indentation rule in css-mode
9169         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
9170         brackets in presence of pseudo-selectors.  (Bug#21328)
9172 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
9174         Fix a bug in recording a macro while flyspell-mode is active
9175         * lisp/subr.el (sit-for): Don't call read-event when recording a
9176         macro.  (Bug#21329)
9178 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
9180         Tweak startup screen quoting
9181         * lisp/startup.el (normal-splash-screen): Use standard
9182         "M-" abbrevation rather than a confusingly-different one.
9183         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
9185 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
9187         Add test case for ‘format’ bug and refactor
9188         * src/editfns.c (styled_format): Refactor internally, mostly by
9189         moving declarations closer to uses.  This should not affect behavior.
9190         * test/automated/textprop-tests.el (textprop-tests-format): New test.
9192         Fix ‘format’ bug with property offsets
9193         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
9194         bug in calculating string property offsets (Bug#21351).
9196         Use straight quotes in lib-src diagnostics
9197         These auxiliary programs can’t use Emacs’s text-quoting-style,
9198         and it’s too much trouble to redo that mechanism by hand.
9199         So just use straight quotes for now.
9200         * lib-src/ebrowse.c (main):
9201         * lib-src/emacsclient.c (decode_options, main):
9202         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
9203         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
9204         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
9205         (none_help, print_language_names, print_help, add_regex)
9206         (suggest_asking_for_help):
9207         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
9208         Use straight quotes in diagnostics.
9210         ‘text-quoting-style’ fixes for admin
9211         * admin/admin.el (cusver-scan, cusver-check):
9212         * admin/authors.el (authors-canonical-file-name):
9213         * admin/bzrmerge.el (bzrmerge-missing):
9214         Respect ‘text-quoting-style’ in diagnostics.
9216 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
9218         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
9219         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
9220         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
9221         * doc/lispref/internals.texi (Writing Emacs Primitives):
9222         * etc/NEWS:
9223         Document the change.
9224         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
9225         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
9226         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
9227         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
9228         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
9229         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
9230         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
9231         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
9232         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
9233         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
9234         Remove.  All uses removed.  The code now assumes
9235         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
9236         * src/bytecode.c (relocate_byte_stack):
9237         Rename from unmark_byte_stack, since it now only relocates.
9238         All callers changed.
9239         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
9240         with GCPROs removed.
9241         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
9242         * test/automated/finalizer-tests.el (finalizer-basic)
9243         (finalizer-circular-reference, finalizer-cross-reference)
9244         (finalizer-error):
9245         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
9246         Remove tests, as they depend on gc-precise.
9248 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
9250         Improve seq-concatenate for new sequence types
9251         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
9252         ensure that concatenation happens on sequences only.  This makes it
9253         possible to use `seq-concatenate' for new types of seqs.
9254         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
9255         New function used in `seq-concatenate'.
9256         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
9257         for seq-into-sequence.
9259 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
9261         Add mode local overrides to xref-find-definitions
9262         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
9263         (xref-mode-local-overload): New; add mode local overrides to
9264         xref-find-definitions.
9265         * test/automated/elisp-mode-tests.el: Add mode local override tests.
9266         (xref-elisp-test-run): Handle indented defuns.
9267         (xref-elisp-generic-*): Improve doc strings.
9268         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
9269         (elisp--xref-find-definitions): Use it.
9271         Add mode local overrides to describe-function
9272         * lisp/cedet/mode-local.el (describe-mode-local-overload):
9273         New; add mode local overrides to describe-function.
9274         * etc/NEWS: Document change.
9276 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
9278         Prefer straight quoting in some etc text files
9279         These files are plain text and might be used by non-Emacs apps.
9280         They’re mostly ASCII, so just use straight quotes.
9282         Fix quoting in ‘message_with_string’
9283         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
9284         should work now.
9285         * src/xdisp.c (message_to_stderr): New function, refactored from
9286         part of ‘message3_nolog’.
9287         (message3_nolog): Use it.
9288         (message_with_string): Use it.  Don’t mishandle NUL bytes when
9289         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
9290         Use ‘format-message’, not ‘format’, so that quotes are translated.
9292 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
9294         Mention false positives of file-accessible-directory on w32
9295         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
9296         (Bug#21346)
9298 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
9300         Treat error strings as help
9301         * src/print.c (print_error_message): Translate quotes and command
9302         keys in errmsg so that users see, e.g., "Symbol’s value as
9303         variable is void: foo" when text-quoting-style is curved.
9305 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
9307         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
9309 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
9311         Top-level elisp files respect ‘text-quoting-style’
9312         In top-level elisp files, use format-message in diagnostic formats,
9313         so that they follow user preference as per ‘text-quoting-style’
9314         rather than being hard-coded to quote `like this'.
9315         * lisp/allout.el (allout-get-configvar-values):
9316         * lisp/apropos.el (apropos-symbols-internal):
9317         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
9318         (dired-do-create-files-regexp, dired-create-files-non-directory):
9319         * lisp/dired-x.el (dired-do-run-mail):
9320         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
9321         * lisp/disp-table.el (standard-display-european):
9322         * lisp/find-dired.el (find-dired):
9323         * lisp/forms.el (forms-mode):
9324         * lisp/ido.el (ido-buffer-internal):
9325         * lisp/info.el (Info-index-next):
9326         * lisp/outline.el (outline-invent-heading):
9327         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
9328         * lisp/proced.el (proced-log):
9329         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
9330         * lisp/recentf.el (recentf-open-files, recentf-save-list):
9331         * lisp/savehist.el (savehist-save):
9332         * lisp/server.el (server-ensure-safe-dir):
9333         * lisp/ses.el (ses-rename-cell):
9334         * lisp/simple.el (list-processes--refresh):
9335         * lisp/startup.el (command-line):
9336         * lisp/strokes.el (strokes-unset-last-stroke)
9337         (strokes-execute-stroke):
9338         Use format-message so that quotes are restyled.
9339         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
9340         Don’t quote ‘raised’.
9341         * lisp/descr-text.el (describe-char):
9342         * lisp/dirtrack.el (dirtrack-debug-message):
9343         * lisp/hexl.el (hexl-insert-multibyte-char):
9344         Apply substitute-command-keys to help string.
9345         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
9346         (wdired-do-perm-changes):
9347         Let dired-log do the formatting.
9349 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9351         Go back to grave quoting in Tramp
9352         * lisp/net/tramp-adb.el:
9353         * lisp/net/tramp-cache.el:
9354         * lisp/net/tramp-compat.el:
9355         * lisp/net/tramp-gvfs.el:
9356         * lisp/net/tramp-gw.el:
9357         * lisp/net/tramp-sh.el:
9358         * lisp/net/tramp-smb.el:
9359         * lisp/net/tramp.el:
9360         Stick with grave quoting in diagnostics strings.  This is more
9361         portable to older Emacs, desirable for Tramp.
9362         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
9363         for diagnostic that needs requoting.
9364         * lisp/net/tramp-compat.el (format-message):
9365         Fall back on simple ‘format’, since that’s good enough now.
9367         Go back to grave quoting in Gnus
9368         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
9369         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
9370         (gnus-agent-fetch-headers):
9371         * lisp/gnus/gnus-int.el (gnus-start-news-server):
9372         * lisp/gnus/gnus-registry.el:
9373         (gnus-registry--split-fancy-with-parent-internal)
9374         (gnus-registry-post-process-groups):
9375         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
9376         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
9377         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
9378         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
9379         * lisp/gnus/spam.el (spam-check-blackholes):
9380         Stick with grave quoting in diagnostics strings.  This is more
9381         portable to older Emacs, desirable for Gnus.
9383         Fix customization of text-quoting-style
9384         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
9385         * lisp/wid-edit.el (widget-docstring):
9386         Get raw docstring here since it’s cooked later and should not be
9387         cooked twice.
9388         * lisp/cus-edit.el (custom-group-value-create):
9389         Cook the docstring before inserting it.
9390         * lisp/cus-start.el (text-quoting-style): Quote the customization
9391         docstrings according to the new rules.  Give curved examples.
9393         format-message now curves ` and '
9394         That way, the caller doesn’t have to use curved quotes to
9395         get diagnostics that match the text-quoting-style preferences.
9396         Suggested by Dmitry Gutov in:
9397         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
9398         This means we no longer need %qs, so remove that format.
9399         While we’re at it, fix an unlikely bug and lessen the pressure
9400         on the garbage collector by processing the string once rather
9401         than twice in the usual case.
9402         * doc/lispref/strings.texi (Formatting Strings):
9403         * etc/NEWS: Document this.
9404         * lisp/subr.el (format-message): Remove; now done in C.
9405         * src/callint.c (Fcall_interactively):
9406         * src/editfns.c (Fmessage, Fmessage_box):
9407         Use Fformat_message instead of Finternal__text_restyle
9408         followed by Fformat.
9409         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
9410         uLSQM and uRSQM.
9411         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
9412         when pure ASCII now suffices.  Fix unlikely bug when parsing
9413         unibyte string containing non-ASCII bytes.  Use inline code
9414         rather than memcpy, as it’s a tiny number of bytes.
9415         (Finternal__text_restyle): Remove; no longer used.
9416         (syms_of_doc): Don’t declare it.
9417         * src/editfns.c (Fformat): Rewrite in terms of new function
9418         ‘styled_format’.
9419         (Fformat_message): New function, moved here from subr.el.
9420         (styled_format): New function, with the old guts of Fformat,
9421         except it now optionally transliterates quotes, and it transliterates
9422         traditional grave accent and apostrophe quoting as well.
9423         Remove recently-added q flag; no longer needed or used.
9424         (syms_of_editfns): Define format-message.
9425         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
9426         Remove; no longer need to be global symbols.
9427         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
9428         so that callers can use `%s'.
9429         * src/image.c (image_size_error, xbm_load_image, xbm_load)
9430         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
9431         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
9432         (svg_load_image, gs_load, x_kill_gs_process):
9433         * src/lread.c (load_warn_old_style_backquotes):
9434         * src/xfaces.c (load_pixmap):
9435         * src/xselect.c (x_clipboard_manager_error_1):
9436         Use `%s' instead of %qs in formats.
9438 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
9440         Minor fixes in doc/emacs/search.texi
9441         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
9442         (Special Isearch): Use @w{} to generate several consecutive spaces
9443         with Texinfo 6.  (Bug#21345)
9445 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
9447         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
9448         (tramp-awk-coding-test): New defconsts.
9449         (tramp-remote-coding-commands): Use them.
9450         (tramp-find-inline-encoding): Check for Perl only if necessary.
9452 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
9454         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
9455         index entries for the special form `quote'.
9457 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9459         Spelling fixes
9461         Gnus format-message typo fix
9462         * lisp/gnus/gnus-util.el (gnus-format-message):
9463         Fix typo when running in older Emacs.
9465         Prefer directed to neutral quotes in docstings and diagnostics.
9466         In docstrings, escape apostrophes that would otherwise be translated
9467         to curved quotes using the newer, simpler rules.
9468         * admin/unidata/unidata-gen.el (unidata-gen-table):
9469         * lisp/align.el (align-region):
9470         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
9471         * lisp/bookmark.el (bookmark-default-annotation-text):
9472         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
9473         * lisp/calc/calc-lang.el (math-read-giac-subscr)
9474         (math-read-math-subscr):
9475         * lisp/calc/calc-misc.el (report-calc-bug):
9476         * lisp/calc/calc-prog.el (calc-fix-token-name)
9477         (calc-read-parse-table-part):
9478         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
9479         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
9480         * lisp/dabbrev.el (dabbrev-expand):
9481         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
9482         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
9483         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
9484         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
9485         * lisp/erc/erc-button.el (erc-nick-popup):
9486         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
9487         * lisp/eshell/em-dirs.el (eshell/cd):
9488         * lisp/eshell/em-glob.el (eshell-glob-regexp):
9489         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
9490         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
9491         * lisp/eshell/esh-opt.el (eshell-show-usage):
9492         * lisp/files-x.el (modify-file-local-variable):
9493         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
9494         (filesets-update-pre010505):
9495         * lisp/find-cmd.el (find-generic, find-to-string):
9496         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
9497         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
9498         (gnus-agent-fetch-headers):
9499         * lisp/gnus/gnus-int.el (gnus-start-news-server):
9500         * lisp/gnus/gnus-registry.el:
9501         (gnus-registry--split-fancy-with-parent-internal):
9502         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
9503         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
9504         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
9505         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
9506         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
9507         * lisp/gnus/spam.el (spam-check-blackholes):
9508         * lisp/mail/feedmail.el (feedmail-run-the-queue):
9509         * lisp/mpc.el (mpc-playlist-rename):
9510         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
9511         * lisp/net/mairix.el (mairix-widget-create-query):
9512         * lisp/net/tramp-cache.el:
9513         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
9514         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
9515         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
9516         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
9517         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
9518         (org-babel-goto-named-result):
9519         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
9520         * lisp/org/ob-ref.el (org-babel-ref-resolve):
9521         * lisp/org/org-agenda.el (org-agenda-prepare):
9522         * lisp/org/org-bibtex.el (org-bibtex-fields):
9523         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
9524         (org-clock-resolve):
9525         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
9526         * lisp/org/org-habit.el (org-habit-parse-todo):
9527         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
9528         (org-mouse-context-menu):
9529         * lisp/org/org-table.el (org-table-edit-formulas):
9530         * lisp/org/ox.el (org-export-async-start):
9531         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
9532         (dun-rooms, dun-endgame-questions):
9533         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
9534         * lisp/progmodes/ada-xref.el (ada-find-executable):
9535         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
9536         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
9537         (flymake-start-syntax-check-process):
9538         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
9539         * lisp/progmodes/sql.el (sql-comint):
9540         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
9541         * lisp/server.el (server-get-auth-key):
9542         * lisp/subr.el (version-to-list):
9543         * lisp/textmodes/reftex-ref.el (reftex-label):
9544         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
9545         * lisp/vc/ediff-diff.el (ediff-same-contents):
9546         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
9547         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
9548         Use directed rather than neutral quotes in diagnostics.
9550         Treat ' like ’ even when not matching `
9551         This is simpler and easier to explain, and should encourage better
9552         typography.  Do this in Electric Quote mode and when translating
9553         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
9554         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
9555         * doc/emacs/text.texi (Quotation Marks):
9556         * doc/lispref/help.texi (Keys in Documentation):
9557         * etc/NEWS:
9558         Document this.
9559         * lisp/electric.el (electric-quote-post-self-insert-function):
9560         * src/doc.c (Fsubstitute_command_keys):
9561         Always treat ' like ’ even when not matched by an open quote.
9563 2015-08-25  Glenn Morris  <rgm@gnu.org>
9565         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
9566         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
9568 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9570         * src/macfont.m (macfont_create_family_with_symbol):
9571         Accept localized names.
9573 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9575         Tramp diagnostics as per ‘text-quoting-style’
9576         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
9577         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
9578         (tramp-adb-handle-delete-directory)
9579         (tramp-adb-handle-delete-file)
9580         (tramp-adb-handle-file-local-copy)
9581         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
9582         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
9583         (tramp-adb-maybe-open-connection):
9584         * lisp/net/tramp-cache.el:
9585         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
9586         (tramp-compat-octal-to-decimal)
9587         (tramp-compat-coding-system-change-eol-conversion):
9588         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
9589         (tramp-gvfs-do-copy-or-rename-file)
9590         (tramp-gvfs-handle-delete-directory)
9591         (tramp-gvfs-handle-delete-file)
9592         (tramp-gvfs-handle-expand-file-name)
9593         (tramp-gvfs-handle-file-local-copy)
9594         (tramp-gvfs-handle-file-notify-add-watch)
9595         (tramp-gvfs-handle-make-directory)
9596         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
9597         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
9598         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
9599         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
9600         (tramp-sh-handle-set-visited-file-modtime)
9601         (tramp-sh-handle-set-file-modes)
9602         (tramp-sh-handle-file-name-all-completions)
9603         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
9604         (tramp-do-copy-or-rename-file-directly)
9605         (tramp-do-copy-or-rename-file-out-of-band)
9606         (tramp-sh-handle-make-directory)
9607         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
9608         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
9609         (tramp-sh-handle-start-file-process)
9610         (tramp-sh-handle-file-local-copy)
9611         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
9612         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
9613         (tramp-find-file-exists-command, tramp-open-shell)
9614         (tramp-find-shell)
9615         (tramp-open-connection-setup-interactive-shell)
9616         (tramp-find-inline-encoding, tramp-find-inline-compress)
9617         (tramp-compute-multi-hops, tramp-maybe-open-connection)
9618         (tramp-wait-for-output, tramp-send-command-and-check)
9619         (tramp-send-command-and-read, tramp-get-remote-path)
9620         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
9621         (tramp-get-ls-command-with-quoting-style)
9622         (tramp-get-test-command, tramp-get-remote-ln)
9623         (tramp-get-remote-perl, tramp-get-remote-stat)
9624         (tramp-get-remote-readlink, tramp-get-remote-trash)
9625         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
9626         (tramp-get-remote-inotifywait, tramp-get-remote-id)
9627         (tramp-get-remote-python):
9628         * lisp/net/tramp-smb.el (tramp-smb-errors)
9629         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
9630         (tramp-smb-handle-delete-directory)
9631         (tramp-smb-handle-delete-file)
9632         (tramp-smb-handle-file-local-copy)
9633         (tramp-smb-handle-make-directory)
9634         (tramp-smb-handle-make-directory-internal)
9635         (tramp-smb-handle-make-symbolic-link)
9636         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
9637         (tramp-smb-handle-set-file-modes)
9638         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
9639         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
9640         (tramp-process-actions):
9641         Generate diagnostics according to ‘text-quoting-style’, by
9642         using curved quotes in format strings and ‘format-message’
9643         when appropriate.
9644         * lisp/net/tramp-compat.el (format-message):
9645         Define a replacement, if it’s an older version of Emacs
9646         that doesn’t have it already.
9648         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
9650 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
9652         Fix documentation for `save-excursion'
9653         * doc/lispref/positions.texi (Excursions):
9654         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
9655         (Template for save-excursion, Point and mark): `save-excursion'
9656         does not save&restore the mark any more.
9658 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
9660         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
9661         New defconsts.
9662         (tramp-do-file-attributes-with-stat)
9663         (tramp-do-directory-files-and-attributes-with-stat): Use them.
9664         (tramp-convert-file-attributes): Remove double slashes in symlinks.
9665         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
9666         Handle symlinks with "//" in the file name.
9668         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
9670 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
9672         Fix cl-subseq and cl-concatenate
9673         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
9674         seq functions.
9675         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
9676         seq-concatenate.
9678 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
9680         Fix full-screen code when there is no window manager (Bug#21317)
9681         * src/xterm.h (x_wm_supports): Declare external.
9682         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
9683         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
9684         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
9685         `fullscreen' frame parameter.
9686         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
9687         without a window manager.
9689 2015-08-24  Glenn Morris  <rgm@gnu.org>
9691         * lisp/version.el (emacs-version): No longer include build host.
9692         * doc/lispref/intro.texi (Version Info): Update example.
9694 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9696         * doc/lispref/elisp.texi: Fix typo in previous change.
9698         More-conservative ‘format’ quote restyling
9699         Instead of restyling curved quotes for every call to ‘format’,
9700         create a new function ‘format-message’ that does the restyling,
9701         and using the new function instead of ‘format’ only in contexts
9702         where this seems appropriate.
9703         Problem reported by Dmitry Gutov and Andreas Schwab in:
9704         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
9705         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
9706         * doc/lispref/commands.texi (Using Interactive):
9707         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
9708         * doc/lispref/display.texi (Displaying Messages, Progress):
9709         * doc/lispref/elisp.texi:
9710         * doc/lispref/help.texi (Keys in Documentation):
9711         * doc/lispref/minibuf.texi (Minibuffer Misc):
9712         * doc/lispref/strings.texi (Formatting Strings):
9713         * etc/NEWS:
9714         Document the changes.
9715         * lisp/abbrev.el (expand-region-abbrevs):
9716         * lisp/apropos.el (apropos-library):
9717         * lisp/calc/calc-ext.el (calc-record-message)
9718         (calc-user-function-list):
9719         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
9720         * lisp/calc/calc-lang.el (math-read-big-balance):
9721         * lisp/calc/calc-store.el (calc-edit-variable):
9722         * lisp/calc/calc-units.el (math-build-units-table-buffer):
9723         * lisp/calc/calc-yank.el (calc-edit-mode):
9724         * lisp/calendar/icalendar.el (icalendar-export-region)
9725         (icalendar--add-diary-entry):
9726         * lisp/cedet/mode-local.el (mode-local-print-binding)
9727         (mode-local-describe-bindings-2):
9728         * lisp/cedet/semantic/complete.el (semantic-completion-message):
9729         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
9730         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
9731         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
9732         * lisp/descr-text.el (describe-text-properties-1, describe-char):
9733         * lisp/dframe.el (dframe-message):
9734         * lisp/dired-aux.el (dired-query):
9735         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
9736         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
9737         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
9738         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
9739         (cconv-analyze-form):
9740         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
9741         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
9742         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
9743         * lisp/emacs-lisp/edebug.el (edebug-format):
9744         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
9745         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
9746         (eldoc-message):
9747         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
9748         * lisp/emacs-lisp/find-func.el (find-function-library):
9749         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
9750         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
9751         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
9752         * lisp/emacs-lisp/package.el (package-compute-transaction)
9753         (package-install-button-action, package-delete-button-action)
9754         (package-menu--list-to-prompt):
9755         * lisp/emacs-lisp/timer.el (timer-event-handler):
9756         * lisp/emacs-lisp/warnings.el (lwarn, warn):
9757         * lisp/emulation/viper-cmd.el:
9758         (viper-toggle-parse-sexp-ignore-comments)
9759         (viper-kill-buffer, viper-brac-function):
9760         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
9761         * lisp/facemenu.el (facemenu-add-new-face):
9762         * lisp/faces.el (face-documentation, read-face-name)
9763         (face-read-string, read-face-font, describe-face):
9764         * lisp/files.el (find-alternate-file, hack-local-variables)
9765         (hack-one-local-variable--obsolete, write-file)
9766         (basic-save-buffer, delete-directory):
9767         * lisp/format.el (format-write-file, format-find-file)
9768         (format-insert-file):
9769         * lisp/help-fns.el (help-fns--key-bindings)
9770         (help-fns--compiler-macro, help-fns--obsolete)
9771         (help-fns--interactive-only, describe-function-1)
9772         (describe-variable):
9773         * lisp/help.el (describe-mode):
9774         * lisp/info-xref.el (info-xref-output):
9775         * lisp/info.el (Info-virtual-index-find-node)
9776         (Info-virtual-index, info-apropos):
9777         * lisp/international/kkc.el (kkc-error):
9778         * lisp/international/mule-cmds.el:
9779         (select-safe-coding-system-interactively)
9780         (select-safe-coding-system, describe-input-method):
9781         * lisp/international/mule-conf.el (code-offset):
9782         * lisp/international/mule-diag.el (describe-character-set)
9783         (list-input-methods-1):
9784         * lisp/international/quail.el (quail-error):
9785         * lisp/minibuffer.el (minibuffer-message):
9786         * lisp/mpc.el (mpc--debug):
9787         * lisp/msb.el (msb--choose-menu):
9788         * lisp/net/ange-ftp.el (ange-ftp-message):
9789         * lisp/net/gnutls.el (gnutls-message-maybe):
9790         * lisp/net/newst-backend.el (newsticker--sentinel-work):
9791         * lisp/net/newst-treeview.el (newsticker--treeview-load):
9792         * lisp/net/nsm.el (nsm-query-user):
9793         * lisp/net/rlogin.el (rlogin):
9794         * lisp/net/soap-client.el (soap-warning):
9795         * lisp/net/tramp.el (tramp-debug-message):
9796         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
9797         * lisp/nxml/nxml-parse.el (nxml-parse-error):
9798         * lisp/nxml/rng-cmpct.el (rng-c-error):
9799         * lisp/nxml/rng-match.el (rng-compile-error):
9800         * lisp/nxml/rng-uri.el (rng-uri-error):
9801         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
9802         * lisp/org/org-ctags.el:
9803         (org-ctags-ask-rebuild-tags-file-then-find-tag):
9804         * lisp/proced.el (proced-log):
9805         * lisp/progmodes/ebnf2ps.el (ebnf-log):
9806         * lisp/progmodes/flymake.el (flymake-log):
9807         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
9808         * lisp/replace.el (occur-1):
9809         * lisp/simple.el (execute-extended-command)
9810         (undo-outer-limit-truncate, define-alternatives):
9811         * lisp/startup.el (command-line):
9812         * lisp/subr.el (error, user-error, add-to-list):
9813         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
9814         (tutorial--find-changed-keys):
9815         * src/callint.c (Fcall_interactively):
9816         * src/editfns.c (Fmessage, Fmessage_box):
9817         Restyle the quotes of format strings intended for use as a
9818         diagnostic, when restyling seems appropriate.
9819         * lisp/subr.el (format-message): New function.
9820         * src/doc.c (Finternal__text_restyle): New function.
9821         (syms_of_doc): Define it.
9823 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9825         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
9827 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9829         python.el: Fix python-shell-buffer-substring on indented code
9830         (Bug#21086)
9831         * lisp/progmodes/python.el (python-shell-buffer-substring):
9832         Respect current line indentation when calculating string.
9833         * test/automated/python-tests.el
9834         (python-shell-buffer-substring-10)
9835         (python-shell-buffer-substring-11)
9836         (python-shell-buffer-substring-12): New tests.
9838 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9840         Fix minor glitches from ‘format’ reversion
9841         * doc/lispref/strings.texi (Formatting Strings):
9842         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
9843         Documentation’, not below.
9844         * src/syntax.c (Finternal_describe_syntax_value):
9845         Prefer AUTO_STRING to build_string where either will do, as
9846         AUTO_STRING is a bit faster.
9848 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9850         python.el: Defer shell setup code until first interactive prompt
9851         * lisp/progmodes/python.el
9852         (python-shell-comint-watch-for-first-prompt-output-filter):
9853         New function.
9854         (inferior-python-mode): Use it.
9855         (python-shell-first-prompt-hook): New hook.
9856         (python-shell-send-setup-code)
9857         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
9858         this hook instead of inferior-python-hook.
9860 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
9862         Remove the calls to `seq-into` from `seq-concatenate`
9863         Since most new types of seq would have to be defined as sequences (cons
9864         cells or CL structs, mostly), there is no need to convert the seqs to
9865         sequences (which can be a fairly expensive operation).
9866         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
9867         sequences.
9869 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9871         python.el: Fix completion for pdb interactions
9872         * lisp/progmodes/python.el (python-shell-completion-setup-code):
9873         Simplify.  Toggle print_mode for native wrapped completer.
9874         (python-shell-completion-native-setup): Ensure process buffer.
9875         Add print_mode attribute to completer wrapper to toggle returning
9876         or printing candidates.
9877         (python-shell-completion-native-get-completions): Cleanup.
9878         (python-shell-completion-get-completions): Cleanup.
9879         (python-shell-completion-at-point): Perform prompt checks.
9880         Force fallback completion in pdb interactions.
9882 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
9884         Make seq.el more extensible by using cl-defmethod
9885         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
9886         make it easier to extend seq.el with new "seq types".
9887         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
9888         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
9889         subseq in cl-extra.el, and use it in seq.el.
9891 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9893         python.el: Fix prompt detection with user overridden interpreter
9894         * lisp/progmodes/python.el (python-shell-prompt-detect):
9895         Honor buffer local python-shell-interpreter and
9896         python-shell-interpreter-interactive-arg.
9898 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
9900         Support exec-directory with non-ASCII characters on Windows
9901         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
9902         in the system's ANSI codepage, when it is used for invoking
9903         cmdproxy.
9905 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
9907         Revert "Extend ‘format’ to translate curved quotes"
9908         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
9910         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
9911         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
9913 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
9915         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
9916         Clarify "invisible window".
9918 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
9920         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
9921         magic-fallback-mode-alist.
9923 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9925         python.el: fallback completion, ffap and eldoc setup enhancements
9926         Setup codes are now sent continuously so that the current frame is
9927         always taken into account.  This allows working within debuggers
9928         and always keeping a fresh version of setup codes that will return
9929         proper results.
9930         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
9931         (python-shell-send-setup-code): Send code only when
9932         python-shell-setup-codes is non-nil.
9933         (python-shell-completion-string-code): Cleanup trailing newline.
9934         (python-shell-completion-get-completions): Always use
9935         python-shell-completion-setup-code.
9936         (python-ffap-setup-code): Work with any object, not only modules.
9937         (python-ffap-string-code): Cleanup trailing newline.
9938         (python-ffap-module-path): Always use python-ffap-setup-code.
9939         (python-eldoc-string-code): Cleanup trailing newline.
9940         (python-eldoc--get-doc-at-point): Always use
9941         python-eldoc-setup-code.  Return non-nil only if docstring is
9942         found.
9944         python.el: Increase native completion robustness
9945         * lisp/progmodes/python.el (python-shell-completion-native-setup):
9946         Make completer print real candidates and just return dummy ones to
9947         avoid input modification.
9948         (python-shell-completion-native-get-completions): Set
9949         comint-redirect-insert-matching-regexp to non-nil and make
9950         comint-redirect-finished-regexp match the last dummy candidate.
9951         Use python-shell-accept-process-output to wait for the full list
9952         of candidates.
9954 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9956         Fix invocation of programs via cmdproxy.exe
9957         * src/w32proc.c (sys_spawnve): Use exec-directory, not
9958         invocation-directory, for finding cmdproxy.exe.  When Emacs is
9959         run from the source tree, look for cmdproxy.exe in the same source
9960         tree.  (Bug#21323)
9962 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
9964         Handle comments inside unquoted URIs in css-mode
9965         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
9966         (css-syntax-propertize-function): New defconst.
9967         (css--font-lock-keywords): Handle parens around unquoted URIs.
9968         (css-mode): Set `syntax-propertize-function'.
9970 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9972         Support invocation of Hunspell with multiple dictionaries
9973         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
9974         Support lists of dictionaries of the form "DICT1,DICT2,...".
9975         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
9977         Minor formatting changes in ispell.el
9978         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
9979         (ispell-print-if-debug, ispell-aspell-find-dictionary)
9980         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
9981         (ispell-hunspell-dictionary-alist)
9982         (ispell-hunspell-fill-dictionary-entry)
9983         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
9984         (ispell-buffer-with-debug, ispell-complete-word)
9985         (ispell-current-dictionary, ispell-current-personal-dictionary)
9986         (ispell-accept-output, ispell-minor-mode)
9987         (ispell-personal-dictionary, ispell-dictionary-alist)
9988         (ispell-really-aspell, ispell-really-hunspell)
9989         (ispell-encoding8-command, ispell-aspell-supports-utf8)
9990         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
9991         Fix whitespace, inconsistent capitalization, and arguments in doc
9992         strings.
9994 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
9996         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
9997         function refused to resize a size-preserved window.
9999 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
10001         * doc/lispref/windows.texi (Selecting Windows): Improve
10002         documentation and indexing of 'window-use-time'.
10004 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
10006         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
10007         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
10008         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
10009         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
10010         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
10011         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
10012         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
10013         Fix up commenting style.
10015 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
10017         text-quoting-style in emacs-lisp diagnostics
10018         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
10019         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
10020         (ad-disable-advice, ad-remove-advice, ad-set-argument)
10021         (ad-set-arguments):
10022         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
10023         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
10024         (byte-optimize-while, byte-optimize-apply):
10025         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
10026         (byte-compile-log-file, byte-compile-format-warn)
10027         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
10028         (byte-compile-cl-warn)
10029         (byte-compile-warn-about-unresolved-functions)
10030         (byte-compile-file, byte-compile-fix-header)
10031         (byte-compile--declare-var, byte-compile-file-form-defmumble)
10032         (byte-compile-form, byte-compile-normal-call)
10033         (byte-compile-variable-ref, byte-compile-variable-set)
10034         (byte-compile-subr-wrong-args, byte-compile-setq-default)
10035         (byte-compile-negation-optimizer)
10036         (byte-compile-condition-case--old)
10037         (byte-compile-condition-case--new, byte-compile-save-excursion)
10038         (byte-compile-defvar, byte-compile-autoload)
10039         (byte-compile-lambda-form)
10040         (byte-compile-make-variable-buffer-local, display-call-tree)
10041         (batch-byte-compile):
10042         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
10043         (cconv-analyze-form):
10044         * lisp/emacs-lisp/chart.el (chart-space-usage):
10045         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
10046         (check-declare-warn, check-declare-file)
10047         (check-declare-directory):
10048         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
10049         (checkdoc-message-text-engine):
10050         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
10051         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
10052         (cl-symbol-macrolet):
10053         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
10054         * lisp/emacs-lisp/copyright.el (copyright)
10055         (copyright-update-directory):
10056         * lisp/emacs-lisp/edebug.el (edebug-read-list):
10057         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
10058         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
10059         (eieio-oref, eieio-oset-default):
10060         * lisp/emacs-lisp/eieio-speedbar.el:
10061         (eieio-speedbar-child-make-tag-lines)
10062         (eieio-speedbar-child-description):
10063         * lisp/emacs-lisp/eieio.el (defclass, change-class):
10064         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
10065         (elint-init-form, elint-check-defalias-form)
10066         (elint-check-let-form):
10067         * lisp/emacs-lisp/ert.el (ert-get-test):
10068         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
10069         (find-function-library):
10070         * lisp/emacs-lisp/generator.el (iter-yield):
10071         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
10072         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
10073         * lisp/emacs-lisp/package-x.el (package-upload-file):
10074         * lisp/emacs-lisp/package.el (package-version-join)
10075         (package-disabled-p, package-activate-1, package-activate)
10076         (package--download-one-archive)
10077         (package--download-and-read-archives)
10078         (package-compute-transaction, package-install-from-archive)
10079         (package-install, package-install-selected-packages)
10080         (package-delete, package-autoremove)
10081         (package-install-button-action, package-delete-button-action)
10082         (package-menu-hide-package, package-menu--list-to-prompt)
10083         (package-menu--perform-transaction)
10084         (package-menu--find-and-notify-upgrades):
10085         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
10086         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
10087         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
10088         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
10089         * lisp/emacs-lisp/smie.el (smie-config-save):
10090         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
10091         * lisp/emacs-lisp/testcover.el (testcover-1value):
10092         Use curved quotes in diagnostic format strings.
10094 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
10096         python.el: Ensure remote process-environment on non-interactive processes
10097         * lisp/progmodes/python.el
10098         (python-shell-tramp-refresh-process-environment): New function.
10099         (python-shell-with-environment): Use it.
10100         * test/automated/python-tests.el (python-shell-with-environment-2):
10101         Update.
10103         python.el: Enhancements to process environment setup.
10104         * lisp/progmodes/python.el (python-shell-process-environment)
10105         (python-shell-extra-pythonpaths, python-shell-exec-path)
10106         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
10107         (python-shell-setup-codes): Remove :safe.
10108         (python-shell-remote-exec-path): New defcustom.
10109         (python-shell--add-to-path-with-priority): New macro.
10110         (python-shell-calculate-pythonpath): Give priority to
10111         python-shell-extra-pythonpaths.  Update docstring.
10112         (python-shell-calculate-process-environment): Give priority to
10113         python-shell-process-environment.  Update docstring.
10114         (python-shell-calculate-exec-path): Give priority to
10115         python-shell-exec-path and calculated virtualenv bin directory.
10116         Update docstring.
10117         (python-shell-tramp-refresh-remote-path): New function.
10118         (python-shell-with-environment): Use it when working remotely and
10119         do not modify tramp-remote-path.  Allow nesting.
10120         (python-shell-calculate-command): Remove useless
10121         python-shell-with-environment call.
10122         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
10123         (python-shell-calculate-pythonpath-2)
10124         (python-shell-calculate-process-environment-6)
10125         (python-shell-calculate-process-environment-7)
10126         (python-shell-calculate-process-environment-8)
10127         (python-shell-calculate-exec-path-3)
10128         (python-shell-calculate-exec-path-4)
10129         (python-shell-calculate-exec-path-5)
10130         (python-shell-calculate-exec-path-6)
10131         (python-shell-with-environment-3): New tests.
10132         (python-shell-calculate-process-environment-2)
10133         (python-shell-calculate-process-environment-3)
10134         (python-shell-calculate-process-environment-4)
10135         (python-shell-calculate-process-environment-5)
10136         (python-shell-calculate-exec-path-1)
10137         (python-shell-calculate-exec-path-2)
10138         (python-shell-with-environment-1)
10139         (python-shell-with-environment-2): Update and simplify.
10141 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
10143         Avoid hard-coding "M-x command" in docstrings
10144         * lisp/calendar/todo-mode.el (todo-mode):
10145         * lisp/desktop.el (desktop-save-mode):
10146         * lisp/edmacro.el (edit-kbd-macro):
10147         * lisp/emacs-lisp/package.el (package-menu-execute):
10148         * lisp/emulation/viper-cmd.el (viper-ask-level):
10149         * lisp/emulation/viper-init.el (viper-expert-level):
10150         * lisp/filesets.el (filesets-add-buffer):
10151         * lisp/follow.el (follow-mode):
10152         * lisp/gnus/auth-source.el (auth-sources):
10153         * lisp/international/ogonek.el (ogonek-informacja)
10154         (ogonek-information):
10155         * lisp/net/tramp.el (tramp-process-actions):
10156         * lisp/org/org-gnus.el (org-gnus-no-new-news):
10157         * lisp/org/org.el (org-ellipsis):
10158         * lisp/progmodes/python.el (python-shell-get-process-or-error):
10159         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
10160         * lisp/server.el (server-start):
10161         * lisp/type-break.el (type-break-noninteractive-query):
10162         * lisp/userlock.el (ask-user-about-supersession-help):
10163         * lisp/whitespace.el (whitespace-report-region):
10164         Prefer (substitute-command-keys "`\\[foo-command]'")
10165         to "`M-x foo-command'" in docstrings and the like.
10167 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
10169         Use add-function for prettify-symbols-compose-predicate
10170         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
10171         prettify-symbols-compose-predicate in terms of add-function.
10172         * etc/NEWS: Mention prettify-symbols-compose-predicate and
10173         prettify-symbols-mode support in tex-mode.
10175 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
10177         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
10178         (smie-indent-exps, smie-indent-keyword): Use it.
10179         * test/indent/css-mode.css: Test alignment with leading comment.
10181 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
10183         Respect text-quoting-style in (*Finder*) menus
10184         * lisp/info.el (info--prettify-description):
10185         Treat description as a docstring, so that it's requoted as
10186         per text-quoting-style.
10188 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
10190         Document `window-use-time' in Elisp manual
10191         * doc/lispref/windows.texi (Selecting Windows): Document
10192         `window-use-time'.
10194 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
10196         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
10197         This is a cleaner fix for Bug#21260 than the previous change.
10199 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
10201         Respect text-quoting-style in calc
10202         In calc, tespect text-quoting-style preference in diagnostic
10203         formats and fix a few similar problems in docstrings.
10204         * lisp/calc/calc-aent.el (math-read-factor):
10205         * lisp/calc/calc-embed.el (calc-do-embedded):
10206         * lisp/calc/calc-ext.el (calc-user-function-list)
10207         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
10208         * lisp/calc/calc-help.el (calc-describe-key)
10209         (calc-describe-thing):
10210         * lisp/calc/calc-lang.el (calc-c-language)
10211         (math-parse-fortran-vector-end, math-parse-tex-sum)
10212         (math-parse-eqn-matrix, math-parse-eqn-prime)
10213         (calc-yacas-language, calc-maxima-language, calc-giac-language)
10214         (math-read-big-rec, math-read-big-balance):
10215         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
10216         (calc-auto-recompute):
10217         * lisp/calc/calc-prog.el (calc-user-define-invocation)
10218         (math-do-arg-check):
10219         * lisp/calc/calc-store.el (calc-edit-variable):
10220         * lisp/calc/calc-units.el (math-build-units-table-buffer):
10221         * lisp/calc/calc-vec.el (math-read-brackets):
10222         * lisp/calc/calc-yank.el (calc-edit-mode):
10223         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
10224         Use curved quotes in diagnostic format strings.
10225         * lisp/calc/calc-help.el (calc-describe-thing):
10226         Format docstrings with substitute-command-keys.
10227         * lisp/calc/calc-help.el (calc-j-prefix-help):
10228         * lisp/calc/calc-misc.el (calc-help):
10229         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
10230         Escape a docstring "`".
10232 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
10234         Fix documentation of 'menu-set-font' and 'set-frame-font'
10235         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
10236         * doc/lispref/frames.texi (Frame Font): Document that
10237         set-frame-font with the last argument 't' will also make the font
10238         the default for the future GUI frames.
10240         Document '--create-frame' option to emacsclient
10241         * doc/emacs/misc.texi (emacsclient Options): Document the
10242         '--create-frame' option.  (Bug#21308)
10244 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
10246         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
10248 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
10250         Document 'get-mru-window' in the ELisp manual
10251         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
10252         'get-mru-window'.  (Bug#21306)
10254         Clarify documentation of 'get-buffer-window-list'
10255         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
10256         current window, if relevant, will be the first in the list
10257         returned by 'get-buffer-window-list'.
10258         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
10260 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
10262         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
10263         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
10264         `switch-to-buffer'.
10266 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
10268         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
10269         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
10270         `display-buffer' instead of `switch-to-buffer'.
10272 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
10274         Follow user preference in calendar diagnostics
10275         Respect text-quoting-style preference in diagnostic formats by
10276         using curved quotes (which are translated as per text-quoting-style)
10277         instead of grave accent and apostrophe (which are not).
10278         * lisp/calendar/appt.el (appt-display-message):
10279         * lisp/calendar/diary-lib.el (diary-check-diary-file)
10280         (diary-mail-entries, diary-from-outlook):
10281         * lisp/calendar/icalendar.el (icalendar-export-region)
10282         (icalendar--convert-float-to-ical)
10283         (icalendar--convert-date-to-ical)
10284         (icalendar--convert-ical-to-diary)
10285         (icalendar--convert-recurring-to-diary)
10286         (icalendar--add-diary-entry):
10287         * lisp/calendar/time-date.el (format-seconds):
10288         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
10289         (timeclock-make-hours-explicit):
10290         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
10291         (todo-item-mark, todo-check-format)
10292         (todo-insert-item--next-param, todo-edit-item--next-key)
10293         (todo-mode):
10294         Use curved quotes in diagnostic format strings.
10295         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
10296         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
10297         Just use straight quoting for simple test case.
10299 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
10301         * src/gfilenotify.c (Fgfile_add_watch):
10302         Handle errors from g_file_monitor.
10304 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
10306         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
10307         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
10308         frame" instead of "non-minibuffer frame".
10310         Fix frame geometry related text
10311         * doc/lispref/frames.texi (Frame Layout):
10312         Rename `x-frame-geometry' to `frame-geometry'.
10313         * doc/lispref/frames.texi (Mouse Position):
10314         * doc/lispref/windows.texi (Coordinates and Windows):
10315         Use `set-mouse-absolute-pixel-position' instead of
10316         `x-set-mouse-absolute-pixel-position'.
10318         Sanitize frame geometry related functions
10319         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
10320         (Fx_frame_edges): Rename to Fns_frame_edges.
10321         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
10322         (Fx_frame_edges): Rename to Fw32_frame_edges.
10323         (Fx_mouse_absolute_pixel_position): Rename to
10324         Fw32_mouse_absolute_pixel_position.
10325         (Fx_set_mouse_absolute_pixel_position): Rename to
10326         Fw32_set_mouse_absolute_pixel_position.
10327         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
10328         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
10329         (ns-frame-edges, w32-mouse-absolute-pixel-position)
10330         (x-mouse-absolute-pixel-position)
10331         (w32-set-mouse-absolute-pixel-position)
10332         (x-set-mouse-absolute-pixel-position): Declare.
10333         (frame-geometry, mouse-absolute-pixel-position)
10334         (set-mouse-absolute-pixel-position): New functions.
10335         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
10337 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
10339         Fix MinGW64 build broken by latest w32uniscribe.c changes
10340         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
10341         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
10342         (Bug#21260)
10344 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
10346         Add TeX defaults for prettify-symbol-mode
10347         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
10348         Rename from tex-prettify-symbols-alist.
10349         (tex--prettify-symbols-compose-p): New function.
10350         (tex-common-initialization): Use them as prettify-symbols-alist
10351         and prettify-symbols-compose-predicate.
10353         Generalize prettify-symbols to arbitrary modes
10354         * lisp/progmodes/prog-mode.el
10355         (prettify-symbols-default-compose-p): New function.
10356         (prettify-symbols-compose-predicate): New variable.
10357         (prettify-symbols--compose-symbol): Use it.
10359 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
10361         Don't quote symbols 'like-this' in docstrings etc.
10362         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
10363         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
10364         * lisp/allout.el (allout-add-resumptions, allout-mode):
10365         * lisp/calculator.el (calculator-operators):
10366         * lisp/cedet/data-debug.el (dd-propertize):
10367         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
10368         * lisp/cedet/semantic/analyze/debug.el:
10369         (semantic-analyzer-debug-global-miss-text):
10370         * lisp/cedet/semantic/lex-spp.el:
10371         (semantic-lex-spp-replace-or-symbol-or-keyword):
10372         * lisp/cedet/semantic/symref.el:
10373         (semantic-symref-cleanup-recent-buffers-fcn):
10374         * lisp/cedet/semantic/tag.el (semantic-tag-class):
10375         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
10376         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
10377         * lisp/gnus/pop3.el (pop3-authentication-scheme):
10378         * lisp/help-fns.el (describe-function-orig-buffer):
10379         * lisp/imenu.el (imenu--history-list):
10380         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
10381         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
10382         (feedmail-queue-default-file-slug)
10383         (feedmail-queue-buffer-file-name):
10384         * lisp/net/mairix.el (mairix-searches-mode-map):
10385         * lisp/net/newst-backend.el (newsticker-retrieval-method)
10386         (newsticker-auto-mark-filter-list):
10387         * lisp/obsolete/vi.el (vi-mode):
10388         * lisp/progmodes/cc-engine.el (c-literal-type):
10389         * lisp/progmodes/cpp.el (cpp-face):
10390         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
10391         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
10392         * lisp/progmodes/pascal.el (pascal-auto-lineup):
10393         * lisp/progmodes/prog-mode.el (prog-widen):
10394         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
10395         (verilog-auto-lineup, verilog-auto-reset-widths)
10396         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
10397         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
10398         (flyspell-maybe-correct-doubling):
10399         * lisp/textmodes/table.el (table-justify, table-justify-cell)
10400         (table-justify-row, table-justify-column, table-insert-sequence)
10401         (table--justify-cell-contents):
10402         * lisp/url/url-auth.el (url-get-authentication):
10403         * lisp/window.el (display-buffer-record-window):
10404         * lisp/xml.el (xml-parse-file, xml-parse-region):
10405         * src/gfilenotify.c (Fgfile_add_watch):
10406         Don't quote symbols with apostrophes in doc strings.
10407         Use asymmetric quotes instead.
10408         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
10409         Likewise for symbol in diagnostic.
10410         * lisp/image.el (image-extension-data):
10411         * lisp/register.el (frame-configuration-to-register):
10412         * src/buffer.c (syms_of_buffer):
10413         Remove bogus apostrophes after symbols.
10414         * lisp/thumbs.el (thumbs-conversion-program):
10415         Quote Lisp string values using double-quotes, not apostrophes.
10417 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
10419         Describe frame geometry and related functions in Elisp manual
10420         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
10421         (Showing Images): Update references.
10422         * doc/lispref/elisp.texi (Top): Update node listing.
10423         * doc/lispref/frames.texi (Frame Geometry): New node.
10424         Move `Size and Position' section here.
10425         (Size Parameters): Update references.
10426         (Mouse Position): Update references and nomenclature.
10427         Describe new functions `x-mouse-absolute-pixel-position' and
10428         `x-set-mouse-absolute-pixel-position'.
10429         * doc/lispref/windows.texi (Window Sizes): Update references.
10430         (Resizing Windows): Update references.  Move description of
10431         `fit-frame-to-buffer' here.
10432         (Coordinates and Windows): Update nomenclature and references.
10433         Describe new arguments of `window-edges'.  Comment out
10434         descriptions of `window-left-column', `window-top-line',
10435         `window-pixel-left' and `window-pixel-top'.  Describe
10436         `window-absolute-pixel-position'.
10438 2015-08-20  Alan Mackenzie  <acm@muc.de>
10440         Handling of `c-parse-state'.  Fix low level bug.
10441         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
10442         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
10444 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
10446         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
10447         window instead of deleting it.
10449 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
10451         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
10452         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
10453         determine whether frame has a titlebar.
10454         Suggested by Eli Zaretskii <eliz@gnu.org>
10456 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
10458         Add a prettify-symbols-alist for (La)TeX
10459         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
10460         New variable holding an alist suitable as prettify-symbols-alist in
10461         (La)TeX modes.
10463 2015-08-19  Alan Mackenzie  <acm@muc.de>
10465         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
10466         Fixes debbugs#21275.
10467         In Emacs >= 25, let electric-pair-mode take precedence over
10468         delete-selection-mode.
10469         * lisp/delsel.el (delete-selection-uses-region-p): New function,
10470         previously a lambda expression in a property value for
10471         `self-insert-command'.
10472         (top-level): Set the `delete-selection' property of
10473         `self-insert-command' to `delete-selection-uses-region-p'.
10474         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
10475         property for c-electric-\(brace\|paren\) the value
10476         `delete-selection-uses-region-p' when the latter function exists.
10478 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
10480         Fix key binding quoting in tutorial *Help*
10481         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
10482         When generating help for custom key bindings, use the user-preferred
10483         quoting style rather than hardcoding the grave style.
10485 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
10487         Improve and future-proof OTF fonts support in w32uniscribe.c
10488         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
10489         about the expected results and why the new Uniscribe APIs are not
10490         used in this function.
10491         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
10492         (ScriptGetFontFeatureTags_Proc): New function typedefs.
10493         (uniscribe_new_apis): New static variable.
10494         (uniscribe_check_features): New function, implements OTF features
10495         verification while correctly accounting for features in the list
10496         after the nil member, if any.
10497         (uniscribe_check_otf_1): New function, retrieves the features
10498         supported by the font for the requested script and language using
10499         the Uniscribe APIs available from Windows Vista onwards.
10500         (uniscribe_check_otf): If the new Uniscribe APIs are available,
10501         use them in preference to reading the font data directly.  Call
10502         uniscribe_check_features to verify that the requested features are
10503         supported, replacing the original incomplete code.
10504         (syms_of_w32uniscribe): Initialize function pointers for the new
10505         Uniscribe APIs.  (Bug#21260)
10506         (otf_features): Scan the script, langsys, and feature arrays back
10507         to front, so that the result we return has them in alphabetical
10508         order, like ftfont.c does.
10509         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
10510         New variable for debugging w32uniscribe.c code.
10512 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
10514         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
10515         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
10516         clause of `isearch-search-fun-default'.  That lax variable does not
10517         refer to lax-whitespacing.  Related to (bug#21777).
10518         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
10519         * lisp/character-fold.el (character-fold-search): Set to nil.
10520         Default to nil for now, until someone implements proper
10521         lax-whitespacing with char-fold searching.
10523 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
10525         Fix doc-string of `help-mode-finish'.
10526         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
10528         In nsimage.m include coding.h (Bug#21292)
10529         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
10531         Move window edge functions to Elisp.
10532         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
10533         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
10534         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
10535         Move to window.el.
10536         (calc_absolute_offset): Remove.
10537         * lisp/frame.el (frame-edges): New function.
10538         * lisp/window.el (window-edges, window-pixel-edges)
10539         (window-absolute-pixel-edges): Move here from window.c.
10540         (window-body-edges, window-body-pixel-edges)
10541         (window-absolute-body-pixel-edges): Move here from window.c and
10542         rename "inside" to "body".  Keep old names as aliases.
10543         (window-absolute-pixel-position): New function.
10545 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
10547         [Gnus]: Use overlay functions directly
10548         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
10549         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
10550         (gnus-article-highlight-signature, gnus-article-extend-url-button)
10551         (gnus-article-add-button, gnus-insert-prev-page-button)
10552         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
10553         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
10554         (gnus-cite-add-face):
10555         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
10556         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
10557         (gnus-tree-recenter, gnus-highlight-selected-tree):
10558         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
10559         (gnus-summary-show-thread, gnus-summary-hide-thread)
10560         (gnus-highlight-selected-summary):
10561         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
10562         * lisp/gnus/message.el (message-fix-before-sending)
10563         (message-toggle-image-thumbnails):
10564         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
10565         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
10566         Use overlay functions directly instead of using gnus-overlay-*,
10567         message-overlay-*, and sieve-overlay-*.
10568         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
10569         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
10570         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
10571         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
10572         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
10573         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
10574         (message-overlay-get, message-overlay-put, message-overlays-in):
10575         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
10576         (sieve-overlays-at): Remove.
10578 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
10580         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
10581         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
10582         builds can use the declaration from the system headers.
10583         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
10584         definition of TITLEBAR_INFO.
10585         Suggested by Eli Zaretskii  <eliz@gnu.org>
10587 2015-08-19  Glenn Morris  <rgm@gnu.org>
10589         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
10591 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
10593         Use new q ‘format’ flag when fixing quotes in C
10594         * src/image.c (image_size_error): New function.  All uses of
10595         image_error with "Invalid image size ..."  changed to use it.
10596         * src/image.c (image_size_error, xbm_load_image, xbm_load)
10597         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
10598         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
10599         (imagemagick_load, svg_load, svg_load_image, gs_load)
10600         (x_kill_gs_process):
10601         * src/lread.c (load_warn_old_style_backquotes):
10602         * src/xfaces.c (load_pixmap):
10603         * src/xselect.c (x_clipboard_manager_error_1):
10604         Use %qs, not uLSQM and uRSQM.
10605         * src/syntax.c (Finternal_describe_syntax_value):
10606         Prefer Fsubstitute_command_keys to Fformat, as this lets
10607         us use AUTO_STRING.
10608         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
10609         as it's now guaranteed to be ASCII.
10610         * src/xselect.c (x_clipboard_manager_error_2):
10611         Avoid grave accent in low-level stderr diagnostic.
10613 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
10615         New q flag for ‘format’
10616         * doc/lispref/processes.texi (Sentinels):
10617         Don't hardwire grave quoting style in example.
10618         * doc/lispref/strings.texi (Formatting Strings):
10619         * etc/NEWS:
10620         Document new q flag.
10621         * src/editfns.c (Fformat): Implement it.
10623 2015-08-18  Daiki Ueno  <ueno@gnu.org>
10625         pinentry.el: Add debugging support
10626         * lisp/net/pinentry.el (pinentry-debug): New variable.
10627         (pinentry-debug-buffer): New variable.
10628         (pinentry--process-filter): Send input to the debug buffer, if
10629         `pinentry-debug' is set.
10631         pinentry.el: Improve multiline prompt
10632         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
10633         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
10634         command.
10636 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
10638         Fix multibyte confusion in diagnostics
10639         * src/print.c (print_error_message):
10640         Don't assume that the caller's name is unibyte.
10641         * src/xdisp.c (vadd_to_log):
10642         Don't assume that the formatted diagnostic is unibyte.
10644         Fix file name encodings in diagnostics
10645         Also, close some minor races when opening image files, by opening
10646         them once instead of multiple times.
10647         * src/gtkutil.c (xg_get_image_for_pixmap):
10648         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
10649         (svg_load):
10650         * src/nsimage.m (allocInitFromFile:):
10651         * src/xfns.c (xg_set_icon):
10652         Encode file name, since x_find_image_file no longer does that.
10653         * src/image.c (x_find_image_fd): New function.
10654         (x_find_image_file): Use it.  Do not encode resulting file name,
10655         since callers sometimes need it decoded.
10656         (slurp_file): File arg is now a fd, not a file name.
10657         All callers changed.  This saves us having to open the file twice.
10658         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
10659         (svg_load):
10660         Use x_find_image_fd and fdopen to save a file-open.
10661         Report file name that failed.
10662         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
10664 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
10666         Allow blink-matching-paren to jump off screen
10667         * doc/emacs/programs.texi (Matching): Mention the
10668         `blink-matching-paren' value `jump-offscreen'.
10669         * lisp/simple.el (blink-matching-paren): New possible value.
10670         (blink-matching-paren-on-screen): Clarify the docstring.
10671         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
10673         Refine the previous change
10674         * lisp/simple.el (blink-matching-open): Use minibuffer-message
10675         outside of save-excursion (bug#21286).
10677 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
10679         Rewrite and add frame geometry related functions.
10680         * src/frame.c (Fframe_position): New function.
10681         (Fset_frame_position): Rename parameters and rewrite doc-string.
10682         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
10683         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
10684         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
10685         Qtitle_bar_size.
10686         * src/nsfns.m (frame_geometry): New function.
10687         (Fx_frame_geometry): Call frame_geometry.
10688         (Fx_frame_edges): New function.
10689         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
10690         (GetTitleBarInfo_Proc): Define these so we can use the
10691         GetTitleBarInfo API.
10692         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
10693         (Fx_frame_geometry): Rewrite.
10694         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
10695         (Fx_set_mouse_absolute_pixel_position): New functions.
10696         * src/xfns.c (frame_geometry): New function.
10697         (Fx_frame_geometry): Call frame_geometry.
10698         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
10699         (Fx_set_mouse_absolute_pixel_position): New functions.
10701 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
10703         Improve Tramp's compatibility
10704         * lisp/net/tramp.el (tramp-get-method-parameter):
10705         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
10706         (tramp-adb-get-device):
10707         * lisp/net/trampver.el (tramp-repository-get-version):
10708         Use `tramp-compat-replace-regexp-in-string'.
10710 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
10712         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
10713         Encode/decode string.
10715 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
10717         Clarify what happens to match data on failure
10718         Problem reported by Ernesto Alfonso (Bug#21279).
10719         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
10720         Document more carefully what happens to match data after a failed
10721         search.
10722         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
10723         the return value is undefined if the last search failed.
10724         (Fmatch_data): Simplify doc string line 1.
10726 2015-08-18  Daiki Ueno  <ueno@gnu.org>
10728         Revert "pinentry.el: Support external passphrase cache"
10729         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
10730         pinentry.el shouldn't directly interact with the secrets service,
10731         but ask the caller to cache the passphrase.
10733 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
10735         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
10736         Message mode hooks.
10738 2015-08-17  Daiki Ueno  <ueno@gnu.org>
10740         epg.el: Make gpgconf output parsing future proof
10741         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
10742         --list-options" output.
10744         pinentry.el: Support external passphrase cache
10745         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
10746         (pinentry--allow-external-password-cache): New local variable.
10747         (pinentry--key-info): New local variable.
10748         (secrets-enabled, secrets-search-items, secrets-get-secret):
10749         Declare.
10750         (pinentry--send-passphrase): New function, split from
10751         `pinentry--process-filter'.
10752         (pinentry--process-filter): Use secrets.el to retrieve passphrase
10753         from login keyring.
10755         pinentry.el: Popup window for multiline prompt
10756         * lisp/net/pinentry.el (pinentry): New custom group.
10757         (pinentry-popup-prompt-window): New user option.
10758         (pinentry-prompt-window-height): New user option.
10759         (pinentry--prompt-buffer): New variable.
10760         (pinentry-prompt-mode-map): New variable.
10761         (pinentry-prompt-mode): New function.
10762         (pinentry--prompt): New function.
10763         (pinentry--process-filter): Use `pinentry--prompt' instead of
10764         `read-passwd' and `y-or-n-p'.
10766 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
10768         message.el: Silent the byte compiler
10769         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
10770         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
10771         (message-delete-overlay, message-window-inside-pixel-edges):
10772         Declare before using.
10774         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
10775         (message-window-inside-pixel-edges): XEmacs compatible functions.
10777 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10779         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
10781 2015-08-17  Noah Friedman  <friedman@splode.com>
10783         * lisp/simple.el (blink-matching-open): Restore point before
10784         calling minibuffer-message.
10786 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
10788         * lisp/play/dunnet.el: Update version number in header (now
10789         matches help).
10791 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
10793         Curved quotes in --batch diagnostics in non-UTF-8
10794         When run with --batch, check that curved quotes are compatible with
10795         the system locale before outputting them in diagnostics.
10796         Problem reported by Eli Zaretskii in:
10797         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
10798         * lisp/startup.el (command-line): Set internal--text-quoting-flag
10799         after the standard display table is initialized.
10800         * src/doc.c (default_to_grave_quoting_style): New function.
10801         (text_quoting_style): Use it.
10802         (text_quoting_flag): New static var, visible to Lisp as
10803         internal--text-quoting-flag.
10804         * src/emacs.c: Include <wchar.h> if available.
10805         (using_utf8): New function.
10806         (main): Use it to initialize text_quoting_flag.
10807         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
10808         Don't define, as it's not needed and it clashes with wchar.h.
10810 2015-08-17  Glenn Morris  <rgm@gnu.org>
10812         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
10813         from makeinfo about spurious "Note:" cross-reference, and for grammar.
10815 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
10817         Minor change in variable initialization on MS-Windows
10818         * src/w32fns.c <after_dead_key>: Initialize to -1.
10819         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
10820         non-zero.
10822         Fix a bug with LWindow key remapping on MS-Windows
10823         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
10825 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
10827         Improve fontset support for latest OTF script tags
10828         * lisp/international/fontset.el (otf-script-alist): Add some
10829         missing script tags.
10830         (setup-default-fontset): Include settings for v2 versions of the
10831         script tags used by some modern OTF/TTF fonts.
10833 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
10835         Spelling fixes
10837 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
10839         Use curved quotes in core elisp diagnostics
10840         In the core elisp files, use curved quotes in diagnostic formats,
10841         so that they follow user preference as per ‘text-quoting-style’
10842         rather than being hard-coded to quote `like this'.
10843         * lisp/abbrev.el (expand-region-abbrevs):
10844         * lisp/button.el (button-category-symbol, button-put)
10845         (make-text-button):
10846         * lisp/cus-start.el:
10847         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
10848         (custom--sort-vars-1, load-theme):
10849         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
10850         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
10851         (cl-generic-generalizers):
10852         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
10853         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
10854         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
10855         (advice--make, define-advice):
10856         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
10857         * lisp/emacs-lisp/timer.el (timer-event-handler):
10858         * lisp/env.el (setenv):
10859         * lisp/facemenu.el (facemenu-add-new-face)
10860         (facemenu-add-new-color):
10861         * lisp/faces.el (face-documentation, read-face-name)
10862         (face-read-string, read-face-font, face-spec-set-match-display)
10863         (read-color, x-resolve-font-name):
10864         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
10865         (set-auto-mode, hack-local-variables)
10866         (hack-one-local-variable--obsolete)
10867         (dir-locals-set-directory-class, write-file)
10868         (basic-save-buffer, delete-directory, copy-directory)
10869         (recover-session, recover-session-finish, insert-directory)
10870         (file-modes-char-to-who, file-modes-symbolic-to-number)
10871         (move-file-to-trash):
10872         * lisp/font-lock.el (font-lock-fontify-buffer):
10873         * lisp/format.el (format-write-file, format-find-file)
10874         (format-insert-file):
10875         * lisp/frame.el (get-device-terminal, select-frame-by-name):
10876         * lisp/fringe.el (fringe--check-style):
10877         * lisp/help.el (describe-minor-mode-from-indicator):
10878         * lisp/image.el (image-type):
10879         * lisp/international/fontset.el (x-must-resolve-font-name):
10880         * lisp/international/mule-cmds.el (prefer-coding-system)
10881         (select-safe-coding-system-interactively)
10882         (select-safe-coding-system, activate-input-method)
10883         (toggle-input-method, describe-current-input-method):
10884         * lisp/international/mule-conf.el (code-offset):
10885         * lisp/mouse.el (minor-mode-menu-from-indicator):
10886         * lisp/replace.el (query-replace-read-from)
10887         (occur-after-change-function, occur-1):
10888         * lisp/scroll-bar.el (scroll-bar-columns):
10889         * lisp/simple.el (execute-extended-command)
10890         (undo-outer-limit-truncate, compose-mail, set-variable)
10891         (choose-completion-string, define-alternatives):
10892         * lisp/startup.el (site-run-file, tty-handle-args)
10893         (command-line, command-line-1):
10894         * lisp/subr.el (noreturn, define-error, add-to-list)
10895         (read-char-choice):
10896         * lisp/term/common-win.el (x-handle-xrm-switch)
10897         (x-handle-name-switch, x-handle-args):
10898         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
10899         Use curved quotes in diagnostics.
10900         * lisp/international/mule.el (find-auto-coding):
10901         Use " to quote in a diagnostic, to be consistent with the rest of
10902         this file.
10904         Convert lisp/term/x-win.el to UTF-8
10905         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
10906         runtime behavior, and the file is multilingual so compile-time
10907         appearance shouldn't be an issue.
10908         * admin/notes/unicode: Document this.
10910 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
10912         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
10913         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
10914         issues and comments, bug#943.
10915         (verilog-type-font-keywords): Cycle delay operators like ##1 and
10916         ##[0:$] are now highlighted in their entirety similarly to the #
10917         delay-control operator.  Likewise, the followed-by operators #-#
10918         and #=# are no longer partially highlighed.
10919         (verilog-backward-syntactic-ws-quick)
10920         (verilog-skip-backward-comments): Minor performance improvements
10921         to buffer traversal functions for reduced latency.
10922         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
10923         keyword 'final' follows 'assert/assume/cover', then it is part of
10924         a deferred immediate assertion item and should not be treated as a
10925         final construct for indentation.  Reported by Yuri Sugihara.
10926         (verilog-do-indent): Virtual task/function/class definition lines
10927         should not be considered as declarations.  Reported by Enzo Chi.
10928         (verilog-do-indent): Do not falsely indent to '=' of
10929         property/sequence operators on subsequent lines of a multi-line
10930         statement.
10931         (verilog-assignment-operator-re): Fix '!==' operator and add
10932         support for '<->', ':/', '#-#', and '#=#' operators.
10933         (verilog-calculate-indent, verilog-label-be): Enable
10934         case-sensitive regular expression parsing when looking for
10935         keywords.
10936         (verilog-calc-1): Detect 'pure virtual method' declarations which
10937         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
10938         (verilog-backward-ws&directives): When moving back to the start of
10939         a line and the preceeding line ended with an escaped-newline, then
10940         jump up one line.  This properly consumes a multi-line
10941         pre-processor directive.  Reported by Kaushal Modi.
10942         (verilog-dpi-import-export-re, verilog-extended-complete-re)
10943         (verilog-calc-1): Teach verilog-mode to properly indent after a
10944         DPI import/export statement that resides outside of a module.
10945         Reported by Kaushal Modi.
10946         (verilog-extended-complete-re): Update regexp to match both
10947         "DPI-C" and "DPI".  Reported by Kaushal Modi.
10949 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10951         substitute-command-keys a few more doc strings
10952         * lisp/allout.el (outlineify-sticky):
10953         * lisp/files.el (hack-one-local-variable--obsolete):
10954         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
10955         Use substitute-command-keys on some doc strings so that
10956         they don't use hard-coded key bindings or quoting styles.
10958         Fix quoting in Fformat calls
10959         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
10960         (xpm_load, xpm_load_image, pbm_load, png_load_body)
10961         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
10962         (imagemagick_load, svg_load, svg_load_image, gs_load)
10963         (x_kill_gs_process):
10964         * src/lread.c (load_warn_old_style_backquotes):
10965         * src/xfaces.c (load_pixmap):
10966         * src/xselect.c (x_clipboard_manager_error_1):
10967         Quote diagnostics according to user preference when calling
10968         Fformat or its derivatives.
10970 2015-08-15  Glenn Morris  <rgm@gnu.org>
10972         * admin/admin.el (set-version, set-copyright): Remove deleted files.
10974 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
10976         Allow describe-function helpers to access buffer-local values
10977         This will be used by cedet/mode-local.el `describe-mode-local-override'
10978         on `help-fns-describe-function-functions' in upstream CEDET.
10979         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
10980         `describe-function'.
10981         (describe-function): Bind it, save it on the help xref stack.
10983         Handle pulse-background being nil
10984         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
10985         pulse-background, handle it being nil.
10987 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10989         Fix "\`" confusion in Lisp strings
10990         * admin/authors.el (authors-canonical-author-name):
10991         Fix typo by using "\\`" not "\`" in string RE.
10992         * lisp/obsolete/complete.el (PC-complete-as-file-name):
10993         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
10994         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
10995         Use plain "`", not the equivalent-but-confusing "\`", in strings.
10996         * lisp/textmodes/texinfmt.el: Fix comment likewise.
10998 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
11000         * nt/zipdist.bat: Remove -- no longer used.
11002 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
11004         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
11005         rather than "getenforce".
11006         (tramp-sh-handle-set-file-selinux-context): Do not
11007         cache SELinux context if not all context components are given.
11009 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
11011         Add doc strings to 2 help-mode.el functions
11012         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
11013         strings.  (Bug#21263)
11015         Remove files used by the old MS-Windows specific build procedure
11016         * admin/unidata/makefile.w32-in:
11017         * doc/emacs/makefile.w32-in:
11018         * doc/lispintro/makefile.w32-in:
11019         * doc/lispref/makefile.w32-in:
11020         * doc/misc/makefile.w32-in:
11021         * leim/makefile.w32-in:
11022         * lib-src/makefile.w32-in:
11023         * lib/makefile.w32-in:
11024         * lisp/makefile.w32-in:
11025         * nt/INSTALL.OLD:
11026         * nt/config.nt:
11027         * nt/emacs-src.tags:
11028         * nt/envadd.bat:
11029         * nt/gmake.defs:
11030         * nt/makefile.w32-in:
11031         * nt/multi-install-info.bat:
11032         * nt/nmake.defs:
11033         * nt/paths.h:
11034         * src/makefile.w32-in: Files deleted.
11035         * nt/configure.bat: Remove everything except the blurb about the
11036         new build procedure.
11037         * make-dist: Remove references to makefile.w32-in in various
11038         directories, and to files in nt/ that were deleted.
11039         * etc/NEWS: Mention the fact that the files were dropped.
11041 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
11043         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
11044         (Bug#21248)
11046 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
11048         Default to inotify instead of gfile
11049         * configure.ac (with_file_notification): Fix typo that
11050         prevented suppression of file notification if HAVE_NS.
11051         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
11052         with_file_notification is 'yes' (Bug#21241).
11053         * etc/NEWS: Mention this.
11055         Fix broken URLs for ISO-IR
11056         * doc/emacs/mule.texi (Charsets):
11057         * lisp/international/mule-conf.el:
11058         Fix broken URL (Bug#21248).
11060         Low-level diagnostics now use ‘text-quoting-style’
11061         * src/doprnt.c (doprnt):
11062         Format ` and ' as per ‘text-quoting-style’.
11063         * src/xdisp.c (vmessage, message): Mention that the format should
11064         not contain ` or '.
11066         Prefer ‘format’ to ‘substitute-command-keys’
11067         * src/character.h (uLSQM, uRSQM): Move here ...
11068         * src/doc.c (uLSQM, uRSQM): ... from here.
11069         * src/doc.c (Fsubstitute_command_keys):
11070         * src/syntax.c (Finternal_describe_syntax_value):
11071         * lisp/cedet/mode-local.el (mode-local-print-binding)
11072         (mode-local-describe-bindings-2):
11073         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
11074         * lisp/cus-theme.el (describe-theme-1):
11075         * lisp/descr-text.el (describe-text-properties-1, describe-char):
11076         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
11077         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
11078         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
11079         * lisp/emacs-lisp/package.el (describe-package-1):
11080         * lisp/faces.el (describe-face):
11081         * lisp/help-fns.el (help-fns--key-bindings)
11082         (help-fns--compiler-macro, help-fns--parent-mode)
11083         (help-fns--obsolete, help-fns--interactive-only)
11084         (describe-function-1, describe-variable):
11085         * lisp/help.el (describe-mode):
11086         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
11087         to implement quoting style.  This generally makes the code simpler.
11089         Extend ‘format’ to translate curved quotes
11090         This is a followup to the recent doc string change, and deals with
11091         diagnostics and the like.  This patch is more conservative than
11092         the doc string change, in that the behavior of ‘format’ changes
11093         only if its first arg contains curved quotes and the user prefers
11094         straight or grave quotes.  (Come to think of it, perhaps we should
11095         be similarly conservative with doc strings too, but that can wait.)
11096         The upside of this conservatism is that existing usage is almost
11097         surely unaffected.  The downside is that we'll eventually have to
11098         change Emacs's format strings to use curved quotes in places where
11099         the user might want curved quotes, but that's a simple and
11100         mechanical translation that I'm willing to do later.  (Bug#21222)
11101         * doc/lispref/help.texi (Keys in Documentation):
11102         Move description of text-quoting-style from here ...
11103         * doc/lispref/strings.texi (Formatting Strings):
11104         ... to here, and describe new behavior of ‘format’.
11105         * etc/NEWS: Describe new behavior.
11106         * lisp/calc/calc-help.el (calc-describe-thing):
11107         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
11108         * lisp/info.el (Info-find-index-name):
11109         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
11110         of recently-added curved quotes.
11111         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
11112         Move from here ...
11113         * src/lisp.h: ... to here.
11114         * src/doc.c (text_quoting_style): New function.
11115         (Fsubstitute_command_keys): Use it.
11116         * src/editfns.c (Fformat): Implement new behavior.
11117         * src/lisp.h (enum text_quoting_style): New enum.
11119 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
11121         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
11122         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
11124 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
11126         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
11127         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
11129 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
11131         Flush file properties in Tramp
11132         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
11133         (tramp-sh-handle-set-file-times):
11134         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
11135         (tramp-adb-handle-set-file-times): Flush the file properties of
11136         the directory.
11138 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
11140         * doc/emacs/misc.text (Amusements): Fixed typo.
11142 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
11144         Don't miss warnings about removing string text properties while dumping
11145         * src/alloc.c (purecopy): Warn about removing a string's text
11146         properties even when the same string was already pure-copied
11147         earlier.
11148         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
11149         (elisp--xref-format-extra): Fix the commentary.
11151 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
11153         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
11155 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
11157         * lisp/progmodes/compile.el: Use lexical-binding.
11158         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
11160 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
11162         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
11163         * lisp/uniquify.el: Remove redundant `:group's.
11165 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
11167         * lisp/net/tramp-adb.el
11168         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
11169         result to prevent modification of the tramp-cache by side effects.
11170         Use the correct cache key.
11172 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
11174         Make add_to_log varargs
11175         * src/alloc.c (run_finalizer_handler):
11176         * src/charset.c (load_charset_map_from_vector):
11177         * src/nsimage.m (ns_load_image):
11178         * src/xfaces.c (load_pixmap, load_color2):
11179         Simplify, now that add_to_log has a variable number of args.
11180         * src/image.c (image_error): Take a variable number of args.
11181         Callers simplified.
11182         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
11183         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
11184         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
11185         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
11187         Optional args for holiday-greek-orthodox-easter
11188         * etc/NEWS: Document this.
11189         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
11190         Add optional args N and STRING, mimicking the API and code of
11191         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
11193 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
11195         xref-find-definitions: Exclude more generic function items.
11196         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
11197         Add doc string.
11198         (cl--generic-find-defgeneric-regexp): New.
11199         (find-function-regexp-alist): Add it.
11200         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
11201         elisp-mode.el, change to search for ";;; Code:"
11202         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
11203         (find-function-regexp-alist): Add them.
11204         * lisp/progmodes/elisp-mode.el:
11205         (elisp--xref-format, elisp--xref-format-extra): Change back to
11206         defvar due to bug#21237.
11207         (elisp--xref-find-definitions): Exclude co-located default methods for
11208         generic functions.  Also exclude implicitly declared defgeneric.
11209         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
11210         mode variables defined by 'define-minor-mode'.
11211         * test/automated/elisp-mode-tests.el: Declare generic functions, add
11212         tests for them.
11213         (xref-elisp-test-run): Fix bug.
11214         (emacs-test-dir): Improve initial value.
11215         (find-defs-defun-defvar-el): Don't expect defvar.
11216         (find-defs-feature-el): Match change to find-feature-regexp.
11218 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
11220         Improve warning about purecopy of strings with properties
11221         * src/alloc.c (purecopy): Show the offending string with the
11222         warning about removing its text properties.
11224 2015-08-12  Alan Mackenzie  <acm@muc.de>
11226         Introduce new macros to cover Emacs's new names in cl-lib.el
11227         This also eliminates `mapcan' warnings in XEmacs.
11228         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
11229         characterise [X]Emacs versions.
11230         (top-level): Require either 'cl or 'cl-lib, depending on
11231         c--mapcan-status.
11232         Change this back to cc-external-require from an eval-when-compile
11233         require.
11234         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
11235         (c--delete-duplicates): New macros which expand into either old or new
11236         names.
11237         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
11238         rather than the old names.
11239         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
11240         rather than mapcan.
11241         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
11242         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
11243         depending on c--mapcan-status.
11244         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
11245         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
11246         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
11247         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
11248         (c-decl-block-key, c-keywords, c-keywords-obarray)
11249         (c-regular-keywords-regexp, c-primary-expr-regexp)
11250         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
11251         (c-known-type-key, c-nonlabel-token-key)
11252         (c-make-init-lang-vars-fun): Use the new macros rather than the old
11253         names.
11255 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
11257         loadhist.el (read-feature): Conform to completing-read
11258         * lisp/loadhist.el (read-feature): According to `completing-read'
11259         documentation, if collection is a list, then it must be a list of
11260         strings, not a list of symbols like before.
11262 2015-08-12  David Kastrup  <dak@gnu.org>
11264         Deal gracefully with up-events (Bug#19746)
11265         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
11266         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
11267         those may easily be injected by user-level Lisp code.
11268         (read_key_sequence): Discard unbound up-events like unbound
11269         down-events: they are even more likely only relevant for special
11270         purposes.
11271         While Emacs will not produce up-events on its own currently (those are
11272         converted to drag or click events before being converted to
11273         Lisp-readable structures), the input queue can be made to contain them
11274         by synthesizing events to `unread-command-events'.  Emacs should deal
11275         consistently with such events.
11277 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
11279         Fix display of thin lines whose newline has line-height property of t
11280         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
11281         and descent values of non-empty glyph rows, since they could have
11282         forced low values deliberately.  (Bug#21243)
11284 2015-08-12  Richard Stallman  <rms@gnu.org>
11286         Offer to combine multiple To or CC fields.
11287         * lisp/mail/sendmail.el (mail-combine-fields): New function.
11288         (mail-send): Call 'mail-combine-fields'.
11290         Don't decrypt encrypted files.
11291         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
11293         Handle encrypted mbox files.
11294         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
11295         the mbox file if necessary.
11297         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
11298         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
11299         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
11300         In a mime message, reenable Mime and show the parts that
11301         were shown before.
11302         Add keyword "decrypt" if anything decrypted.
11304         epa-inhibit inhibits auto-recognition of .gpg files
11305         * lisp/epa-file.el (epa-inhibit): New variable.
11306         (epa-file-handler): Check epa-inhibit.
11308 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
11310         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
11312 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
11314         Respect python.el imenu when semantic-mode is off
11315         Fixes bug#21220
11316         * lisp/cedet/semantic/wisent/python.el: Do not force
11317         wisent-python-default-setup on python-mode-hook.
11319 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
11321         Give names to Unicode code points in C code
11322         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
11323         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
11324         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
11325         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
11326         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
11327         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
11328         (OBJECT_REPLACEMENT_CHARACTER):
11329         New named constants for Unicode code points.
11330         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
11331         * src/composite.c (char_composable_p):
11332         * src/lread.c (readevalloop, read1):
11333         * src/xdisp.c (get_next_display_element):
11334         Use them.
11335         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
11336         Remove; now in character.h.
11338 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
11340         elisp--xref-find-definitions handle cl-defstuct default constructor
11341         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
11342         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
11343         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
11344         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
11345         from xref-elisp-test for ease of debugging.
11346         (xref-elisp-deftest): Rename from xref-elisp-test.
11347         (find-defs-constructor): New test.
11348         (find-defs-defgeneric-el): Match batch test config.
11349         (compile): Required for find-defs compilation-minor-mode test.
11350         (find-defs-defvar-el): Match code change.
11351         (find-defs-face-el): Match code change.
11352         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
11353         Improve doc string.
11355 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
11357         * lisp/replace.el (perform-replace): Document `replacements'.
11358         (perform-replace): Move the description of the format of `replacements'
11359         from the body's comment to the doc string.
11361 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
11363         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
11364         sequence.  Recent adb version send initial escape sequences, even
11365         when terminal type is set to TERM=dumb.
11367 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
11369         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
11370         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
11371         Function deleted.
11372         (elisp--xref-format-cl-defmethod): New defconst.
11373         (find-feature-regexp, find-alias-regexp): New defcustoms.
11374         (elisp--xref-make-xref): New function.
11375         (elisp--xref-find-definitions): Rewrite using the above, handle many
11376         more cases.  Always output all available definitions.
11377         (xref-location-marker): No need for special cases.
11378         * test/automated/elisp-mode-tests.el: Add more tests of
11379         elisp--xref-find-definitions, improve current tests.
11381 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
11383         Fix recording of events pushed onto unread-command-events
11384         * src/keyboard.c (read_char): Make sure events read from
11385         unread-command-events and unread-post-input-method-events are
11386         always recorded by record_char.  Reported by David Kastrup
11387         <dak@gnu.org>, see
11388         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
11390 2015-08-10  Samer Masterson  <samer@samertm.com>
11392         Set file buffer as current for "--file"
11393         * lisp/startup.el (command-line-1): Set file buffer as current before
11394         it is displayed so it can be used with options like "--eval".
11395         (Bug#21095)
11397 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
11399         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
11400         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
11401         after setting LC_ALL to the desired locale, to avoid affecting how
11402         numbers are read and printed.  (Bug#21223)
11404 2015-08-10  Alan Mackenzie  <acm@muc.de>
11406         Fix "Invalid search bound (wrong side of point)" in fontification
11407         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
11408         an initialization expression, check point is not beyond the
11409         fontification limit.
11411 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
11413         Fix DPI calculation when Xft/DPI is default
11414         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
11415         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
11416         Remove unnecessary cast while we're in the neighborhood.
11418 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
11420         Add project-vc-search-path and project-vc-ignores
11421         * lisp/progmodes/project.el (project-vc): New group.
11422         (project-vc-search-path, project-vc-ignores): New variables.
11423         (project--value-in-dir): Utility function.
11424         (project-search-path, project-ignores): Use them.
11425         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
11426         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
11428 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
11430         Fix some minor quoting issues with grave accent
11431         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
11432         Remove redundant quotes.
11433         * src/doc.c (uLSQM, uRSQM): New macros.
11434         * src/doc.c (Fsubstitute_command_keys):
11435         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
11436         preference for quotes rather than hardcoding the ‘grave’ style.
11437         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
11438         (re_match_2_internal) [DEBUG]: In debugging output, quote C
11439         strings with "...", not `...'.
11441         ChangeLog.2 ignores remote-tracking merges
11442         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
11443         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
11444         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
11446 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
11448         Use kpsewhich in ffap-latex-mode, if available
11449         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
11450         (ffap-latex-mode): Use kpsewhich if available.
11452         ffap: disallow braces in filenames for tex modes
11453         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
11454         braces in tex-related modes.
11456         Remove useless backslashes from ffap-string-at-point-mode-alist
11457         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
11458         misleading backslashes from default value.
11460         Augment docstring of ffap-string-at-point-mode-alist
11461         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
11462         and END are handled.
11464 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
11466         * lisp/org/org-src.el (org-edit-src-code)
11467         (org-edit-fixed-width-region):
11468         * lisp/simple.el (completion-setup-function):
11469         Remove calls to substitute-command-keys that always just return
11470         their argument.
11472 2015-08-09  Daiki Ueno  <ueno@gnu.org>
11474         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
11475         (Bug#21210)
11477 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
11479         Fix link to source code in help window
11480         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
11481         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
11482         'No longer include timestamp in header of .elc files'.  Add code
11483         that will return .el source file in load-path.
11485 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
11487         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
11488         Respect `isearch-lax-whitespace' when searching through
11489         `isearch-word'.
11491 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
11493         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
11495         * org.el: Fix up some lexical scoping warnings, and use dolist
11496         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
11497         (org-set-regexps-and-options, org-assign-fast-keys)
11498         (org-contextualize-keys, org-contextualize-validate-key)
11499         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
11500         (org-find-olp, org-find-exact-heading-in-directory)
11501         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
11502         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
11503         (org-replace-escapes): Use dolist.
11504         (org-mode): Optimize away XEmacs-only code.
11505         (org-refile-get-targets): Remove unused var `f'.
11506         (org-fast-todo-selection): Remove unused var `e'.
11507         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
11508         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
11509         (org-format-latex): Use dolist.  Remove unused var `e'.
11510         (org-toggle-heading): Access vars lexically rather than dynamically.
11511         (org-backward-sentence, org-forward-sentence, org-meta-return)
11512         (org-kill-line): Mark arg as unused.
11513         (org-submit-bug-report): Silence compiler warning.
11514         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
11515         (org-get-cursor-date): Remove unused var `tm'.
11516         (org-comment-or-uncomment-region): Use standard name `_'.
11517         (reftex-docstruct-symbol, reftex-cite-format): Declare to
11518         silence byte-compiler.
11519         (org-reftex-citation): Add `org--' prefix to dynamically scoped
11520         `rds' var.
11522 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
11524         Electric quote if coding is undecided or no conv
11525         * lisp/electric.el (electric--insertable-p): Also say that a
11526         string is insertable if the buffer file coding system is undecided
11527         or uses no conversion, as curved quotes will work in either case.
11529         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
11531 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
11533         Fix overlay string display regressions introduced in Emacs 24.5
11534         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
11535         buffer position, if we move the iterator to a new position as
11536         result of jumping over text covered by a "replacing" display
11537         property.
11538         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
11540         Support recovery from C stack overflow on MS-Windows
11541         * src/w32fns.c (w32_reset_stack_overflow_guard)
11542         (stack_overflow_handler): New functions for handling C stack
11543         overflow exceptions.
11544         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
11545         specially, and zero out except_addr if we do.
11546         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
11547         mode.
11548         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
11549         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
11550         the MinGW build, but the code guarded by that is for Posix hosts.
11551         * src/keyboard.c (command_loop) [WINDOWSNT]:
11552         Call w32_reset_stack_overflow_guard.
11553         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
11554         (sigsetjmp): New macro.
11555         (w32_reset_stack_overflow_guard): Declare the prototype.
11556         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
11558 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
11560         Improve error signalling for seq-subseq
11561         * lisp/seq.el (seq-subseq): The existing behavior is to error
11562         when indexes are too large, but to silently ignore numbers which
11563         are too negative for lists.  String and vector handling errors in
11564         both cases.  This has been regularized.  Error signaling behavior
11565         has been explicitly added to the doc string.
11567         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
11568         therefore also impacted by this change.  Update the doc string
11569         to reflect this.
11571         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
11572         added for these exceptional cases, as well as one non exceptional
11573         base case.
11575 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
11577         Improve error checking in tramp-adb.el
11578         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
11579         Improve error checking.  "ls -l" on Android in Enforcing mode can
11580         print "lstat './FILENAME failed: Permission denied".
11582 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11584         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
11585         non-struct vectors.
11587 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
11589         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
11590         * lisp/window.el: Fix typo that broke build.
11591         (display-buffer--action-function-custom-type):
11592         Add `display-buffer-use-some-frame'.
11593         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
11595         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
11596         * lisp/window.el (display-buffer-use-some-frame): Add support for
11597         'inhibit-same-window in alist.
11598         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
11599         'inhibit-same-window in alist.
11601 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
11603         Avoid infinite loop in display of invisible text in strings
11604         * src/xdisp.c (handle_invisible_prop): If the next change of
11605         invisibility spec does not mean the beginning of a visible text,
11606         update the string position from which to start the search for the
11607         next invisibility change.  This avoids an infinite loop when we
11608         have more than one invisibility spec that are made inactive by
11609         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
11610         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
11611         for the situation that caused bug #21200.
11613 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
11615         * lisp/emacs-lisp/package.el: Simplify describe-package-1
11616         (package-help-section-name-face): New face.
11617         (package--print-help-section): New function.
11618         (describe-package-1): Refactor section printing.
11619         (package-make-button): Use face instead of font-lock-face, which
11620         doesn't work on buttons.
11622         * lisp/emacs-lisp/package.el: Define custom faces
11623         (package-name-face, package-description-face)
11624         (package-status-built-in-face, package-status-external-face)
11625         (package-status-available-face, package-status-new-face)
11626         (package-status-held-face, package-status-disabled-face)
11627         (package-status-installed-face, package-status-dependency-face)
11628         (package-status-unsigned-face, package-status-incompat-face)
11629         (package-status-avail-obso-face): New faces.
11630         (package-menu--print-info-simple): Use them.
11632 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
11634         Fix some confusion with ‘format’
11635         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
11636         (allout-graphics-modification-handler):
11637         Protect arbitrary string in a format context with "%s" format.
11638         * lisp/avoid.el:
11639         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
11640         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
11641         * lisp/erc/erc-button.el (erc-button-beats-to-time):
11642         * lisp/gnus/message.el (message-send-form-letter):
11643         * lisp/org/ob-core.el (org-babel-check-evaluate)
11644         (org-babel-confirm-evaluate):
11645         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
11646         * lisp/org/ox-latex.el (org-latex-compile):
11647         * lisp/org/ox-man.el (org-man-compile):
11648         * lisp/org/ox-odt.el (org-odt-template):
11649         * lisp/org/ox-texinfo.el (org-texinfo-compile):
11650         * lisp/progmodes/prolog.el (prolog-help-info)
11651         (prolog-view-predspec):
11652         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
11653         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
11654         * lisp/textmodes/rst.el (rst-replace-lines):
11655         Change (message (format ...)) to (message ...), and likewise
11656         for ‘error’.  This lessens the probability of confusion when the
11657         output of ‘format’ contains ‘%’.
11659 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11661         * lisp/replace.el (replace-character-fold): Default to nil.
11663         * lisp/character-fold.el: Fix lax whitespace.
11664         (character-fold-table): Don't make space match other whitespace chars.
11665         (character-fold-to-regexp): Simplify lax behavior.
11667 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
11669         Preserve window point in xref-find-definitions-other-window
11670         Fix the problem reported by Ingo Logmar in
11671         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
11672         * lisp/progmodes/xref.el (xref--goto-char): Extract from
11673         xref--goto-location.
11674         (xref--pop-to-location): Use it.  Replace xref--goto-location with
11675         a direct xref-location-marker call.
11676         (xref--show-location): Likewise.
11677         (xref--display-position): Use xref--goto-char.
11679         * lisp/progmodes/project.el: Add a paragraph to the front matter.
11681 2015-08-04  David Kastrup  <dak@gnu.org>
11683         * lisp/vc/emerge.el (emerge-show-file-name):
11684         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
11685         (vhdl-comment-insert, vhdl-hooked-abbrev):
11686         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
11687         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
11688         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
11689         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
11690         * lisp/obsolete/vip.el (vip-escape-to-emacs)
11691         (vip-prefix-arg-value, vip-prefix-arg-com):
11692         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
11693         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
11694         (quail-tibkey-update-translation):
11695         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
11696         * lisp/leim/quail/lao.el (quail-lao-update-translation):
11697         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
11698         (quail-japanese-self-insert-and-switch-to-alpha):
11699         * lisp/leim/quail/hangul.el (hangul2-input-method)
11700         (hangul3-input-method, hangul390-input-method):
11701         * lisp/language/hanja-util.el (hangul-to-hanja-char):
11702         * lisp/international/robin.el (robin-input-method):
11703         * lisp/international/quail.el (quail-start-translation)
11704         (quail-start-conversion):
11705         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
11706         (gnus-article-describe-key-briefly):
11707         * lisp/eshell/em-hist.el (eshell-list-history):
11708         * lisp/term.el (term-dynamic-list-input-ring)
11709         (term-dynamic-list-completions):
11710         * lisp/subr.el (momentary-string-display):
11711         * lisp/simple.el (read-quoted-char):
11712         * lisp/pcomplete.el (pcomplete-show-completions):
11713         * lisp/kmacro.el (kmacro-repeat-on-last-key):
11714         * lisp/info.el (Info-summary):
11715         * lisp/ehelp.el (electric-help-command-loop):
11716         * lisp/ebuff-menu.el (electric-buffer-list)
11717         (Electric-buffer-menu-exit):
11718         * lisp/double.el (double-translate-key):
11719         * lisp/comint.el (comint-dynamic-list-input-ring)
11720         (comint-dynamic-list-completions): Do not overwrite preexisting
11721         contents of `unread-command-events' when putting new events into it.
11723 2015-08-04  Daniel Colascione  <dancol@dancol.org>
11725         Improve ansi-color filtering of unrecognized escape sequences
11726         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
11727         escape sequences.
11728         (ansi-color-filter-apply, ansi-color-apply): Filter out
11729         unrecognized escape sequences.
11731 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
11733         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
11734         definitions to `easy-menu-define', improve a couple to account for
11735         async, and add a couple of new commands.
11737 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
11739         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
11741 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
11743         Add new 'calendar-weekend-days' option
11744         Make the days receiving the 'calendar-weekend-header' face freely
11745         customizable, as they differ by region/culture.
11746         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
11747         new variable.
11748         * lisp/calendar/calendar.el (calendar-generate-month): New variable
11749         calendar-weekend-days to customize day header fontification.
11751 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
11753         Redo text-quoting-style variable
11754         Rename help-quote-translation to text-quoting-style,
11755         and use symbols rather than characters as values.
11756         This follows suggestions along these lines by Alan Mackenzie in:
11757         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
11758         and by Drew Adams in:
11759         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
11760         * doc/lispref/help.texi (Keys in Documentation)
11761         * etc/NEWS:
11762         * lisp/cus-start.el (standard):
11763         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
11764         Document and/or implement the new behavior instead of the old.
11765         (syms_of_doc): New symbols 'grave' and 'straight'.
11767 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
11769         nnimap.el: Use IMAP MOVE extension if available
11770         * lisp/gnus/nnimap.el (nnimap-request-move-article)
11771         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
11772         Use MOVE extension if available.
11774         nnimap.el: Explicitly ask for server capabilities
11775         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
11776         capabilities will be returned in the login-result.
11778 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
11780         Treat help strings like other doc strings
11781         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
11782         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
11783         substitute-command-keys.
11784         * src/keyboard.c (show_help_echo, parse_menu_item): Call
11785         substitute-command-keys on the help string before displaying it.
11787         Also mention "curly quotes"
11788         See Drew Adams's email in:
11789         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
11790         * doc/lispref/help.texi (Keys in Documentation):
11791         Add index entry "curly quotes".
11792         * etc/NEWS: Use the phrase "curly quotes" too.
11794         ede-proj-target-makefile docstring tweaks
11795         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
11796         Consistently use "all:" to describe the all: target,
11797         replacing three different and confusingly-quoted usages.
11799 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
11801         Don't abort emacsclientw when -a was specified
11802         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
11803         out if we are in emacsclientw and -a was specified.
11805 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
11807         Fix handling of 1st keystroke on MS-Windows
11808         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
11809         This is needed to correctly handle the session's first keystroke,
11810         if it has any modifiers.  (Bug#19994)
11812 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
11814         Substitute some customization etc. doc strings
11815         These changes apply substitute-command-keys to some
11816         doc strings that were going through untranslated
11817         when creating customization or other widgets.
11818         * lisp/cus-edit.el (custom-group-value-create):
11819         * lisp/wid-edit.el (widget-default-create):
11820         (widget-push-button-value-create):
11821         Treat the widget tag as a doc string.
11822         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
11823         Treat the :documentation value as a doc string.
11824         * lisp/wid-edit.el (widget-choose):
11825         Treat the choice names as doc strings.
11826         (widget-default-create): Treat the :doc value as a doc string.
11827         (widget-toggle-value-create): Treat the :on and :off values
11828         as doc strings.
11829         (widget-documentation-string-value-create):
11830         Substitute the doc string.
11832 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
11834         Add a second argument to project-ignores
11835         * lisp/progmodes/project.el (project-ignores): Add a second
11836         argument DIR.
11837         * lisp/progmodes/project.el (project-ignores): Only include the VC
11838         ignores if DIR is the VC root.
11839         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
11841 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
11843         Prevent incorrect display when 'line-spacing' variable is set
11844         * src/xdisp.c (try_window_id): Give up this optimization if the
11845         buffer has its 'line-spacing' variable set non-nil.
11847 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
11849         Don't pass NOVISIT to find-file
11850         * lisp/progmodes/etags.el (next-file):
11851         Don't pass NOVISIT to find-file (bug#21175).
11853         Ignore buffer restriction for tags-loop-eval
11854         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
11855         restriction (bug#21167).
11857 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
11859         Fix a thinko in 'ffap-gopher-at-point'
11860         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
11862         Honor 'line-spacing' for empty lines
11863         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
11864         property and 'line-spacing' frame parameter or variable or
11865         property for empty lines, by doing the same processing as in
11866         x_produce_glyph for newline characters.  (Bug#21165)
11868 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
11870         Simplify by assuming C99 integer division
11871         * src/floatfns.c (ceiling2, floor2, truncate2):
11872         Assume C99 (i.e., Fortran) semantics for integer division.
11873         This simplifies the code.
11875 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
11877         Don't overflow if computing approximate percentage
11878         * lisp/align.el (align-region):
11879         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
11880         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
11881         * lisp/cus-edit.el (custom-buffer-create-internal):
11882         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
11883         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
11884         (checkdoc-next-message-error):
11885         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
11886         * lisp/epa.el (epa-progress-callback-function):
11887         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
11888         * lisp/ffap.el (ffap-menu-rescan):
11889         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
11890         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
11891         * lisp/gnus/nneething.el (nneething-retrieve-headers):
11892         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
11893         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
11894         * lisp/gnus/nnml.el (nnml-retrieve-headers):
11895         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
11896         * lisp/gnus/nntp.el (nntp-retrieve-headers)
11897         (nntp-retrieve-articles):
11898         * lisp/imenu.el (imenu--relative-position):
11899         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
11900         (skkdic-convert-okuri-nasi):
11901         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
11902         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
11903         * lisp/org/org-list.el (org-update-checkbox-count):
11904         * lisp/org/org.el (org-table-map-tables)
11905         (org-update-parent-todo-statistics):
11906         * lisp/play/decipher.el (decipher-insert-frequency-counts)
11907         (decipher-analyze-buffer):
11908         * lisp/profiler.el (profiler-format-percent):
11909         * lisp/progmodes/cc-cmds.el (c-progress-update):
11910         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
11911         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
11912         (idlwave-list-load-path-shadows):
11913         * lisp/progmodes/opascal.el (opascal-step-progress):
11914         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
11915         (vhdl-scan-directory-contents):
11916         * lisp/textmodes/bibtex.el (bibtex-progress-message):
11917         * lisp/textmodes/flyspell.el (flyspell-small-region)
11918         (flyspell-external-point-words):
11919         * lisp/textmodes/table.el (table-recognize):
11920         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
11921         progress-report percentages and the like.  This avoids problems
11922         if (* 100 NUMERATOR) would overflow.
11923         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
11924         * lisp/gnus/registry.el (registry-reindex):
11925         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
11926         * lisp/descr-text.el (describe-char):
11927         * lisp/org/org-colview.el (org-nofm-to-completion):
11928         * lisp/ps-print.el (ps-plot):
11929         * lisp/simple.el (what-cursor-position):
11930         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
11931         more-complicated and less-accurate approximation.
11933         Fix some int overflows in profiler.c
11934         * src/profiler.c (make_log): Make args EMACS_INT, not int,
11935         to avoid unwanted behavior on 'int' overflow.
11936         (make_log, evict_lower_half, record_backtrace):
11937         Use ptrdiff_t, not int, for object indexes.
11939         Port to pedantic memcpy
11940         * src/keyboard.c (menu_bar_items, tool_bar_items):
11941         * src/xrdb.c (magic_db):
11942         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
11944         Merge from gnulib
11945         This incorporates:
11946         2015-07-29 time_rz: port to pedantic memcpy
11947         * lib/time_rz.c: Copy from gnulib.
11949 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
11951         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
11952         When updating the very last entry, tabulated-list-print would
11953         erase it and then try to look at the next one (which obviously
11954         isn't there).
11956 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
11958         Allow to use the old key processing code on MS-Windows
11959         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
11960         New variable.
11961         (w32_wnd_proc): Use it to invoke the old code that processed
11962         character keys, as fallback, when this variable is non-nil.
11963         Fix typos in comments.  (Bug#19994)
11965 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
11967         Improve handling of Unicode keyboard input on MS-Windows
11968         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
11969         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
11970         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
11971         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
11972         successful, don't call TranslateMessage.  (Bug#19994)
11974 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
11976         Fix default-directory in changeset diffs after vc-print-log
11977         * lisp/vc/log-view.el (log-view-diff-common): Move the
11978         revision-granularity check back into log-view-diff-changeset.
11979         (log-view-diff-changeset): Bind default-directory to the current
11980         VC root.
11982         Rename project-directories to project-roots
11983         * lisp/progmodes/project.el (project-search-path-function)
11984         (project-search-path): Update the docstring.
11985         (project-directories): Rename to `project-roots', update all
11986         callers and implementations accordingly.
11987         (project-root): Remove.
11988         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
11989         as the default file mask.
11991 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
11993         Support long URLs in w32-shell-execute
11994         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
11995         and filename_to_ansi to convert the DOCUMENT argument, as it could
11996         be a URL that is not limited to MAX_PATH characters.  Instead, use
11997         MultiByteToWideChar directly, and allocate heap storage as
11998         required to accommodate the converted string.  Likewise with
11999         non-Unicode operation.  Ensure OPERATION is null-terminated, even
12000         if it is longer than 32K bytes.  (Bug#21158)
12002 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
12004         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
12006 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
12008         Add docs for display-buffer action display-buffer-use-some-frame
12009         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
12010         * doc/lispref/windows.texi (Display Action Functions):
12011         Add display-buffer-use-some-frame.
12012         * etc/NEWS: Mention display-buffer-use-some-frame.
12014         Add display-buffer action display-buffer-use-some-frame
12015         * lisp/window.el (display-buffer-use-some-frame): New.
12017         Handle vc-mtn error more gently
12018         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
12019         branch is nil.
12021 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
12023         Fix Tramp problems with multihops, and nc
12024         * lisp/net/tramp-cache.el (tramp-get-file-property)
12025         (tramp-set-file-property, tramp-flush-file-property)
12026         (tramp-get-connection-property, tramp-set-connection-property)
12027         (tramp-flush-connection-property): Remove hop from vector.
12028         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
12029         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
12030         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
12031         netstat to 60".
12032         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
12033         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
12034         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
12035         Keep hop in result.
12036         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
12037         Add hop tests.
12039 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
12041         Resurrect highlighting of repeated words by Flyspell Mode
12042         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
12043         characters between point and the doublon candidate, so that
12044         flyspell-word-search-backward finds it.  (Bug#21157)
12046         Fix redisplay of large images on expose events
12047         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
12048         between signed negative values and unsigned values.  This
12049         prevented redisplay on expose events when the window showed a very
12050         large image.
12052 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
12054         Remove unnecessary stack overflow dependency
12055         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
12056         Don't worry about $ac_cv_header_sys_resource_h and
12057         $ac_cv_func_getrlimit, as they're no longer needed for this.
12058         Problem reported by Eli Zaretskii in:
12059         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
12061 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
12063         Pacify compilation -Wincompatible-pointer-types warnings
12064         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
12065         warning.
12066         (CompareStringW_Proc): New typedef.
12067         (w32_compare_strings): Use it, to pacify compiler warnings under
12068         "-Wincompatible-pointer-types".
12069         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
12070         (GetDiskFreeSpaceExA_Proc): New typedefs.
12071         (Ffile_system_info): Use them, to pacify compiler warnings under
12072         "-Wincompatible-pointer-types".
12074 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
12076         Fix subscript error in calculate_direct_scrolling
12077         Use slightly-longer cost vectors.  Without this change,
12078         calculate_direct_scrolling can have a subscript violation when
12079         FRAME_LINES (frame) <= delta.
12080         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
12081         (line_ins_del, do_line_insertion_deletion_costs):
12082         Allocate and use slightly-larger cost vectors, ones based on
12083         FRAME_TOTAL_LINES instead of FRAME_LINES.
12085         Fix uninitalized value in encode_coding_object
12086         * src/coding.c (encode_coding_object): Also initialize
12087         coding->src_pos and coding->src_pos_byte when NILP (src_object).
12088         This avoids later use of uninitialized storage.
12090 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
12092         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
12093         (Bug#21141)
12095 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
12097         Merge from gnulib
12098         This incorporates:
12099         2015-07-27 time_rz: port better to MinGW
12100         2015-07-27 time: port __need_time_t to MinGW
12101         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
12102         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
12103         * lib/time-internal.h: New file, from gnulib.
12105 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
12107         Handle NULL pointers in w32heap.c allocation routines
12108         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
12109         freeable".
12110         (realloc_after_dump, realloc_before_dump, free_before_dump):
12111         Handle NULL pointers gracefully, as Emacs now seems to expect that.
12113         Fix Cairo build without PNG
12114         * src/image.c: Define PNG function when USE_CAIRO is defined, even
12115         if HAVE_PNG is not.  (Bug#21133)
12117         MS-Windows follow-up for recent TZ-related changes
12118         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
12119         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
12120         picking up 'struct timespec' from pthread.h, if it is installed on
12121         the user's system.  We want either the definitions from MinGW
12122         system headers, if available, or the Gnulib replacements if not.
12123         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
12124         lib/time.h.
12125         * lib/time.in.h: Don't let __need_* symbols affect what happens on
12126         MinGW.  These symbols are defined by MinGW system headers, but we
12127         don't want that to affect whether Gnulib portions of the header
12128         are or aren't used.
12130 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
12132         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
12134         New optional ZONE arg for format-time-string etc.
12135         This simplifies time conversions in other time zones.
12136         It also prevents display-time-world tampering with TZ (Bug#21020).
12137         * admin/admin.el (add-release-logs):
12138         Use improved add-log-time-format API.
12139         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
12140         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
12141         * configure.ac (tzalloc): Remove test for this, since
12142         Emacs no longer uses HAVE_TZALLOC directly.
12143         * doc/lispref/os.texi (Time of Day, Time Conversion)
12144         (Time Parsing):
12145         * etc/NEWS: Document the new behavior.
12146         Merge from gnulib, incorporating:
12147         2015-07-25 strftime: fix newly-introduced bug on Solaris
12148         2015-07-23 fprintftime, strftime: use timezone_t args
12149         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
12150         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
12151         * m4/time_h.m4:
12152         Update from gnulib.
12153         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
12154         New files from gnulib.
12155         * lisp/time-stamp.el (time-stamp-string):
12156         * lisp/time.el (display-time-world-list)
12157         (display-time-world-display):
12158         Use new API, with time zone arg.
12159         * lisp/time.el (display-time-world-display):
12160         Fix race when current-time advances while we're running.
12161         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
12162         (add-log-iso8601-time-string): Accept optional time zone arg.
12163         * lisp/vc/add-log.el (add-change-log-entry):
12164         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
12165         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
12166         Add rules for the time module, since they're now needed
12167         for tzalloc etc.
12168         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
12169         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
12170         * src/editfns.c: Include errno.h.
12171         (set_time_zone_rule): Omit unnecessary forward decl.
12172         (initial_tz): Remove, replacing with ...
12173         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
12174         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
12175         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
12176         (tzlookup): New static functions.
12177         (init_editfns): New arg DUMPING.  All uses changed.
12178         (init_editfns): Omit most initialization if dumping, not if
12179         !initialized.  Initialize wall_clock_tz and local_tz.
12180         (emacs_nmemftime, format_time_string): Time zone argument can now
12181         be any time zone, not just a boolean for UTC or local time.  All
12182         callers changed.
12183         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
12184         (Fcurrent_time_zone): New optional arg ZONE.
12185         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
12186         the same form as with the other new additions.
12187         (decode_time_zone): Remove; no longer needed.
12188         (tzvalbuf): Now file-scope.
12189         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
12190         (syms_of_editfns): Define Qwall.
12191         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
12192         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
12193         [!HAVE_TZALLOC]:
12194         Remove; now supplied by gnulib.
12195         * src/emacs.c (main):
12196         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
12198 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
12200         Fix infinite loop in delete-consecutive-dups
12201         * lisp/subr.el (delete-consecutive-dups): Work even if the last
12202         element is nil (Bug#20588).  Avoid rescan of a circular list in
12203         deletion of last element.
12205 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
12207         Have `x-frame-geometry' return nil for terminal and initial
12208         frames (Bug#21132)
12209         * src/nsfns.m (Fx_frame_geometry):
12210         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
12211         terminal frames.
12212         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
12213         (Fx_frame_geometry): Return nil for terminal frames
12215 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
12217         * etc/tutorials/TUTORIAL.ja: Improve translation.
12219 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
12221         Avoid crashes when w32 GUI functions are called in -batch
12222         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
12223         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
12224         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
12226         Fix flyspell-check-previous-highlighted-word
12227         * lisp/textmodes/flyspell.el
12228         (flyspell-check-previous-highlighted-word): Really accept a
12229         numeric argument, as the doc string describes.  Fix an off-by-one
12230         error in looking up overlays, so invocation with point immediately
12231         after a word would check that word.  Clarify the doc string as
12232         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
12234 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
12236         Minor cleanup in tramp-tests.el
12237         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
12238         Implement using the documented interface
12239         `tramp-connection-properties', rather than with internal functions.
12241 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
12243         Pass lambdas to `skeleton-read'
12244         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
12245         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
12246         lambdas to `skeleton-read' (bug#20386).
12248 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
12250         * INSTALL (DETAILED BUILDING AND INSTALLATION):
12251         Mention --without-imagemagick.
12253         Don't require GUI frames and mouse for Flyspell menus
12254         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
12255         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
12256         support, since pop-up menus work with text terminals and can be
12257         controlled via the keyboard.
12259         Improve documentation of Flyspell commands
12260         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
12261         can be invoked via the keyboard.  Mention those commands by name
12262         and add them to the fn index.  (Bug#21125)
12264 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
12266         Fix some Tramp problems with HP-UX
12267         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
12268         Add "tab0" to stty call.
12269         * test/automated/tramp-tests.el (tramp-persistency-file-name):
12270         Set to nil.
12271         (tramp--test-hpux-p): New defun.
12272         (tramp--test-utf8): Use it.
12274 2015-07-22  Glenn Morris  <rgm@gnu.org>
12276         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
12278 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
12280         Fix point positioning in ffap-next-guess
12281         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
12282         as our callers expect.  This was clobbered as part of fixing
12283         bug#5673.  (Bug#21107)
12284         (ffap-gopher-at-point): Set ffap-string-at-point-region.
12286 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
12288         * lisp/window.el (even-window-sizes): Fix customization type.
12290         Optionally even widths of `display-buffer' windows.  (Bug#21100)
12291         * lisp/window.el (quit-restore-window): Restore width if
12292         requested.
12293         (display-buffer-record-window): Record width when window is
12294         reused and horizontally combined.
12295         (even-window-sizes): New option to allow evening window widths.
12296         (even-window-heights): Defalias to `even-window-sizes'.
12297         (window--even-window-heights): Rename to
12298         `window--even-window-sizes'.  Handle side-by-side windows.
12299         (display-buffer-use-some-window): Call `window--even-window-sizes'
12300         instead of `window--even-window-heights'.
12301         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
12302         * doc/lispref/windows.texi (Choosing Window Options): Describe
12303         `even-window-sizes'.
12304         (Coordinates and Windows): Fix typo.
12306 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
12308         Add file name to autoload error messages
12309         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
12310         Add condition-case to add file name to error message.
12312 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
12314         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
12315         Use 0.0.0.1 as test host.
12317 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
12319         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
12320         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
12321         Fix inf-loop (bug#21083).
12323 2015-07-21  Glenn Morris  <rgm@gnu.org>
12325         * test/automated/package-test.el (package-test-signed):
12326         Update for recent changes.
12328         * test/automated/elisp-mode-tests.el
12329         (elisp-xref-finds-both-function-and-variable)
12330         (elisp-xref-finds-only-function-for-minor-mode):
12331         Update for recent xref name changes.
12333 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
12335         Make eldoc timer non-repeatable
12336         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
12337         non-repeatable.  Since it's on post-command hook, that just wasted
12338         CPU cycles.
12340 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
12342         Mention `tramp-connection-properties' in NEWS
12344         Sync with Tramp repository
12345         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
12346         required prior changing its configuration.
12347         (Connection caching, Predefined connection information)
12348         (Remote shell setup): Fix typos.
12349         (Predefined connection information): Describe, how to overwrite
12350         parameters of `tramp-methods'.
12351         (Remote programs, Remote processes, Traces and Profiles):
12352         Simplify example.
12353         (Remote programs): Remove superfluous comment.
12354         * doc/misc/trampver.texi: Update release number.
12355         * lisp/net/tramp-cache.el (tramp-connection-properties):
12356         Adapt docstring.
12357         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
12358         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
12359         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
12360         "gvfs-mkdir -p ..." does not work robust.
12361         (tramp-gvfs-maybe-open-connection):
12362         Adapt `tramp-get-method-parameter' call.
12363         * lisp/net/tramp-sh.el (tramp-methods):
12364         Add `tramp-remote-shell-login' parameter where it fits.
12365         (tramp-get-remote-path): Use it.
12366         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
12367         (all): Adapt `tramp-get-method-parameter' calls.
12368         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
12369         (tramp-get-method-parameter): Replace argument METHOD by VEC.
12370         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
12371         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
12372         (all): Adapt `tramp-get-method-parameter' calls.
12373         * lisp/net/trampver.el Update release number.
12374         * test/automated/tramp-tests.el (tramp--instrument-test-case):
12375         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
12376         (tramp-test13-make-directory, tramp--test-adb-p)
12377         (tramp--test-smb-or-windows-nt-p): Simplify.
12378         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
12379         (tramp--test-special-characters): Fix docstring.  Add gvfs and
12380         ftp tests.
12381         (tramp--test-utf8): Fix docstring.
12383 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
12385         Add new xref-query-replace command
12386         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
12387         New function, extracted from xref-pulse-momentarily.
12388         (xref-query-replace): New command.
12389         (xref--query-replace-1): New helper function.
12390         (xref--xref-buffer-mode-map): Add `r' binding.
12392 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
12394         Simplify icalendar decoding of Z dates
12395         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
12396         Simplify calculation of time strings with trailing "Z".
12398 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
12400         Do not corrupt grep-find-ignored-files
12401         * lisp/progmodes/project.el (project-ignores): Change the order of
12402         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
12404         Add xref-match-item, and use it
12405         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
12406         (xref-file-location): Add reader for the column slot.
12407         (xref-match-item): New class.
12408         (xref-match-bounds): A method implementation for it.
12409         (xref-make-match): New constructor function.
12410         (xref--current-item): New private variable.
12411         (xref-pulse-momentarily): Use it.
12412         (xref--pop-to-location): Change the first argument to an xref
12413         item, instead of location, bind xref--current-item.
12414         Update all callers.
12415         (xref-next-line, xref-prev-line, xref--next-error-function)
12416         (xref--mouse-2): Look for the property `xref-item',
12417         instead of `xref-location'.
12418         (xref--item-at-point): Likewise.  This function replaces
12419         `xref-location-at-point'.  Update all callers.
12420         (xref--insert-xrefs): Add the `xref-item' text property, instead
12421         of `xref-location'.
12422         (xref--collect-match): Use xref-make-match.
12424         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
12425         Update all references.
12427         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
12428         slot to `summary'.
12430         vc-hg: Perform the print-log call asynchronously
12431         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
12432         asynchronously (bug#21067).
12434         Add xref-after-jump-hook and xref-after-return-hook
12435         * lisp/progmodes/xref.el (xref-after-jump-hook)
12436         (xref-after-return-hook): New hooks.
12437         (xref-pulse-on-jump): Remove, in favor of the above.
12438         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
12439         (xref--pop-to-location, xref--display-position)
12440         (xref-pop-marker-stack): Use the new hooks, as requested in
12441         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
12443 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
12445         * lisp/progmodes/js.el (js-mode): Correct the lighter.
12447 2015-07-19  Leo Liu  <sdl.web@gmail.com>
12449         Fix a bug in cfengine3-mode
12450         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
12451         eldoc-documentation-function.
12453 2015-07-18  Julien Danjou  <julien@danjou.info>
12455         sieve-mode: support "body" test command
12456         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
12457         Add missing "body" test command.
12459 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
12461         Fix info-apropos when the default encoding is Latin-N
12462         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
12463         'undecided', so that it is set to the encoding of the Info file we
12464         are about to insert.  Otherwise, 'info-apropos' will fail to find
12465         some index nodes in some UTF-8 encoded files, if the buffer's
12466         previous encoding is Latin-N or some such.
12468 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
12470         * lisp/epg.el (epg--start): Check that gpgconf can be found
12471         before calling it.
12473         Expose more file types to OS X that Emacs understands
12474         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
12475         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
12477 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
12479         Fix visual-order cursor movement when lines are truncated
12480         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
12481         simulate display in a window of infinite width, to allow move_it_*
12482         functions reach positions outside of normal window dimensions.
12483         Remove code that tried to handle a subset of these situations by
12484         manual iteration of buffer text.  (Bug#17777)
12486         Fix following Info cross-references to anchors
12487         * lisp/info.el (Info-read-subfile): Add to the returned value the
12488         length of subfile preamble, after converting it to file's byte
12489         offset, as expected by the caller.  Use bufferpos-to-filepos.
12490         (Info-find-node-2): If searching for a node with a
12491         1000-character slop fails, try again with a 10000-character slop,
12492         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
12493         * lisp/international/mule-util.el (bufferpos-to-filepos): New
12494         function.
12495         * etc/NEWS: Mention bufferpos-to-filepos.
12497         Fix scrolling backwards on TTY frames under scroll-conservatively
12498         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
12499         in moving backwards on TTY frames.  (Bug#21080)
12501 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
12503         Consider a jsdoc tag to be a beginning of a paragraph as well
12504         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
12505         consider a jsdoc tag to be a beginning of a paragraph as well.
12507 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12509         * lisp/emacs-lisp/package.el: Fix warnings.
12511         * lisp/emacs-lisp/package.el (package-buffer-info):
12512         Add author and maintainers to `package-buffer-info'.
12514         * lisp/emacs-lisp/package.el: Many small changes.
12515         Replace all instances of 'face with 'font-lock-face.
12516         (describe-package-1): Improve some strings and move the summary
12517         up the list.
12518         (package-install-file): Update docstring.
12519         (package-menu-hide-package): Bind to `H'.
12521         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
12522         Fix error handling.
12524 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
12526         Fix hang with large yanks This should fix the bug fixed by Mike
12527         Crowe's patch in:
12528         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
12529         A problem in this area has been reported by several users; see
12530         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
12531         This fix differs from Mike Crowe's patch in that it should avoid a
12532         race condition that could lose SIGIO signals.  ignore_sigio dates
12533         back to the 1980s when some platforms couldn't block signals, and
12534         could only ignore them, which led to races when signals arrived
12535         while being ignored.  We shouldn't have to worry about those old
12536         platforms now.
12537         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
12538         * src/emacs.c (shut_down_emacs):
12539         Don't call ignore_sigio; unrequest_sigio should suffice.
12540         * src/keyboard.c (kbd_buffer_store_buffered_event):
12541         Use unrequest_sigio, not ignore_sigio.
12542         (kbd_buffer_get_event):
12543         Call request_sigio when getting the ball rolling again.
12545 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12547         * lisp/obsolete/longlines.el (longlines-search-function):
12548         Fallback on `isearch-search-fun-default'.
12550 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
12552         Support @-mentions
12553         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
12554         of mentions/messages with @nick instead of just nick.
12556 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
12558         Fix bug#20943
12559         * lisp/autorevert.el (auto-revert-handler): Do not check for
12560         `buffer-modified-p'.
12561         * lisp/files.el (buffer-stale--default-function): Check for
12562         `buffer-modified-p'.
12563         * test/automated/auto-revert-tests.el
12564         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
12566 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
12568         Fix delete-dups bug on long lists
12569         * lisp/subr.el (delete-dups):
12570         Don't mistakenly keep some dups when applied to long lists.
12572 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
12574         Better heuristic for C stack overflow
12575         Improve the heuristic for distinguishing stack overflows from
12576         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
12577         the getrlimit method wasn't portable to Cygwin; see:
12578         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
12579         Corinna suggested pthread_getattr_np but this also has problems.
12580         Instead, replace the low-level system stuff with a simple
12581         heuristic based on known good stack addresses.
12582         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
12583         * src/sysdep.c: Don't include <sys/resource.h>.
12584         (stack_direction): Remove.  All uses removed.
12585         (stack_overflow): New function.
12586         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
12587         Make SEGV fatal in non-main threads.
12589 2015-07-16  Daiki Ueno  <ueno@gnu.org>
12591         epg: Automatically start pinentry server
12592         * lisp/epg-config.el (epg-gpgconf-program): New variable.
12593         * lisp/epg.el (epg--start): Call `pinentry-start' if
12594         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
12596 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
12598         * lisp/gnus/nnimap.el: Fix my last bogus change.
12599         Reinstall Stefan Monnier's change that was made in
12600         <83d824bc4041332f338ad7e5e830f443535aa300>.
12602 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
12604         Merge from gnulib
12605         This incorporates:
12606         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
12607         2015-07-05 acl-permissions: Fix on FreeBSD
12608         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
12609         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
12610         * lib/set-permissions.c: Copy from gnulib.
12612         Port to stricter C99
12613         * src/keyboard.h (kbd_buffer_store_event_hold):
12614         Don't return a void expression.
12616 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
12618         * doc/emacs/frames.texi (Creating Frames):
12619         Fix the command `C-x 5 m' runs.
12621 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
12623         New autorevert tests
12624         * test/automated/auto-revert-tests.el: New file.
12626 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
12628         Clear gcprolist etc. after stack overflow
12629         After stack overflow, command_loop calls init_eval, and this needs to
12630         clear gcprolist and byte_stack_list (Bug#20996).
12631         * src/alloc.c (init_alloc):
12632         Move gcprolist and byte_stack_list initialization from here ...
12633         * src/eval.c (init_eval): ... to here.
12635 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
12637         * doc/emacs/windows.texi (Pop Up Window): Fix the description
12638         of `C-x 4 m'.
12640 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12642         Avoid deprecated enums in mac-ct font backend driver
12643         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
12644         (mac_ctfont_get_advance_width_for_glyph)
12645         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
12647         Cache font family in mac-ct font backend driver
12648         * src/macfont.m (macfont_family_cache): New variable.
12649         (syms_of_macfont): Initialize it.
12650         (macfont_available_families_cache): New variable.
12651         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
12652         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
12653         (macfont_handle_font_change_notification)
12654         (macfont_init_font_change_handler)
12655         (macfont_copy_available_families_cache): New functions.
12656         (macfont_create_family_with_symbol): Use font family caches.
12657         (macfont_list, macfont_list_family):
12658         Use macfont_copy_available_families_cache instead of
12659         mac_font_create_available_families.
12661 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
12663         Show the default value in the prompt
12664         * lisp/progmodes/xref.el: Add `M-?' binding for
12665         xref-find-references.  Declare functions `grep-read-files' and
12666         `grep-expand-template'.
12667         (xref--read-identifier): Show the default value in the prompt.
12669         * lisp/progmodes/xref.el (xref-find-regexp): When called with
12670         prefix argument, ask for file patterns to search as well.  When
12671         prompting for the directory, require an existing one.
12672         (xref-collect-matches): Add a new argument, FILES.  Use it in the
12673         above function.
12675         Add `project-ignores'
12676         * lisp/progmodes/project.el (project-ignores): New generic
12677         function, and an implementation for the VC project type.
12678         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
12679         variant of rgrep-default-command that handles a generic list of
12680         ignores.
12681         (xref-collect-matches): Use it, and pass through to it the value
12682         of the newly added argument.
12683         (xref-find-regexp): Handle ignored paths within the project.
12684         Remove outdated comment.
12685         * lisp/vc/vc.el (vc-default-ignore-completion-table):
12686         Skip the comments and the empty lines.
12688 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
12690         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
12692 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
12694         gnus-registry.el: Correct function argument order
12695         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
12696         Reverse the order of function arguments.
12698 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
12700         Bind grep-highlight-matches to nil
12701         * lisp/progmodes/xref.el (xref-collect-matches):
12702         Bind grep-highlight-matches to nil (bug#20728).
12704 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
12706         nnimap.el: Fix IMAP message size parsing
12707         * lisp/gnus/nnimap.el (nnimap-transform-headers):
12708         Don't assume that UID comes before RFC822.SIZE.
12710 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
12712         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
12713         (auth-source-creation-prompts): Declare.
12714         (nnimap-retrieve-headers, nnimap-status-message)
12715         (nnimap-request-create-group, nnimap-request-delete-group)
12716         (nnimap-close-group, nnimap-request-move-article)
12717         (nnimap-request-accept-article, nnimap-request-newgroups)
12718         (nnimap-request-post, nnimap-dummy-active-number)
12719         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
12720         (nnimap-parse-flags): Remove unused var `p'.
12721         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
12722         (nnimap-flags-to-marks): Remove unused var `totalp'.
12724 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
12726         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
12728 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12730         * src/macfont.m (macfont_list): Ignore font families lacking
12731         font descriptors.
12733 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
12735         Don't check the exit status, it can be misleading
12736         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
12737         exit status, it can be misleading.
12739         Introduce a Project API
12740         * lisp/progmodes/project.el: New file.
12741         * lisp/cedet/ede.el (project-try-ede): New function.
12742         (project-root): New implementation.
12743         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
12744         Set project-search-path-function.
12745         (elisp--xref-find-references): Delegate some logic to
12746         project-search-path.
12747         (elisp-search-path): New function.
12748         (elisp-xref-find): Don't implement `matches' anymore.
12749         * lisp/progmodes/etags.el: Don't implement `matches'.
12750         Delegate some logic to project-search-path.
12751         (etags-search-path): New function.
12752         * lisp/progmodes/xref.el (xref-find-function):
12753         Remove `matches' from the API.
12754         (xref-find-regexp): Move whatever common logic was in elisp and
12755         etags implementations, and search the directories returned by
12756         project-directories and project-search-path.
12758 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
12760         * test/automated/map-tests.el (test-map-delete-return-value):
12761         Uncomment test.
12763         Add support for gv.el in map.el
12764         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
12765         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
12766         * test/automated/map-tests.el: Update tests to work with the new
12767         implementations of map-elt and map-put.
12769 2015-07-09  Glenn Morris  <rgm@gnu.org>
12771         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
12773 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
12775         Syntax-propertize until the end of the line first
12776         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
12777         until the end of the line first.
12779 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
12781         * doc/emacs/files.texi (File Archives): Add a cross reference.
12783 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
12785         nnimap.el: Handle plain value for nnimap-stream
12786         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
12787         capabilities, so that a 'plain value for the `nnimap-stream' server
12788         variable is handled correctly.
12789         * doc/misc/gnus.texi (Customizing the IMAP Connection):
12790         Document the 'plain option.
12792 2015-07-08  Leo Liu  <sdl.web@gmail.com>
12794         Fix bug in thing-at-point--bounds-of-well-formed-url
12795         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
12796         sure boundary contains current point.
12798 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
12800         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
12801         in the end.
12803         Declare whitespace-line-column a safe file-local
12804         * lisp/whitespace.el (whitespace-line-column): Declare to be a
12805         safe file-local when the value is an integer.
12807 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
12809         gnus-group.el: Check if group names are already strings
12810         * lisp/gnus/gnus-group.el (gnus-group-group-name):
12811         The group name may already be a string.
12812         Specifically, in the group list reached from the *Server* buffer,
12813         the 'gnus-group text property returns a string.  Everywhere else
12814         it returns a symbol.
12816         nnimap.el: Remove unused let variables
12817         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
12819 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
12821         Support "maximized" property of runemacs's shortcut
12822         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
12823         the '--maximized' switch to Emacs.
12825         Support "minimized" property of runemacs's shortcut
12826         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
12827         pass the '--iconic' switch to Emacs.  (Bug#20991)
12829 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
12831         Doc fixes
12832         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
12833         C-w' in Diff mode.
12834         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
12835         Add a cross reference.
12837 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
12839         * lisp/obsolete/landmark.el: Add Obsolete-since header.
12841 2015-07-07  Glenn Morris  <rgm@gnu.org>
12843         * test/automated/ert-tests.el (ert-test-deftest):
12844         Update for recent changes.
12846 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12848         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
12849         * lisp/emacs-lisp/gv.el (gv-setter): New function.
12850         (gv-invalid-place): New error.
12851         (gv-get): Use them.
12852         (gv-synthetic-place, gv-delay-error): New places.
12853         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
12854         (cl-defgeneric, cl-defmethod): Use gv-setter.
12856 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
12858         Make vc-tests work with MSYS svn program
12859         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
12860         svn is an MSYS program.
12862 2015-07-07  Ken Brown  <kbrown@cornell.edu>
12864         Improve recent change to emacsclient on Cygwin
12865         * lisp/server.el (server-process-filter): Remove redundant check
12866         that 'cygwin-convert-file-name-from-windows' is defined as a
12867         function on Cygwin.  Don't call that function unless its argument
12868         starts with a drive letter.
12870 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
12872         * lisp/emacs-lisp/package.el (package-compute-transaction):
12873         Fix void variable due to `found-something' being in the wrong `let'.
12875 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
12877         * lisp/play/landmark.el: Move to lisp/obsolete/.
12879 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
12881         Have `x-show-tip' handle `right' and `bottom' frame parameters
12882         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
12883         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
12884         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
12885         tooltips also via `right' and `bottom' frame parameters.
12887 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12889         Add online-help support to describe types
12890         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
12891         (describe-symbol): Improve the selection of default.
12892         * lisp/help-mode.el: Require cl-lib.
12893         (describe-symbol-backends): Move from help-fns.el.
12894         (help-make-xrefs): Use it.
12895         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
12896         for types.
12897         (cl--typedef-regexp): New const.
12898         (find-function-regexp-alist): Add entry for types.
12899         (cl-help-type, cl-type-definition): New buttons.
12900         (cl-find-class): New function.
12901         (cl-describe-type): New command.
12902         (cl--describe-class, cl--describe-class-slot)
12903         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
12904         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
12905         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
12906         New functions.  Moved from eieio-opt.el.
12907         (cl--generic-class-parents): New function, extracted from
12908         cl--generic-struct-specializers.
12909         (cl--generic-struct-specializers): Use it.
12910         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
12911         Improve constructor's docstrings.
12912         (cl-struct-unknown-slot): New error.
12913         (cl-struct-slot-offset): Use it.
12914         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
12915         definition in current-load-list.
12916         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
12917         (eieio--add-new-slot): Set it.
12918         (eieio-defclass-internal): Use new name for current-load-list.
12919         (eieio-oref): Add compiler-macro to warn about unknown slots.
12920         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
12921         as compile-time as well.  Improve constructor docstrings.
12922         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
12923         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
12924         (eieio-class-def): Remove button.
12925         (eieio-help-constructor): Use new name for load-history element.
12926         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
12927         (eieio-method-documentation): Move to cl-generic.el.
12928         (eieio-display-method-list): Use new names.
12929         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
12930         Add "define-linline".
12931         (lisp-fdefs): Remove "defsubst".
12932         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
12933         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
12934         (macroexp--warn-and-return): Use it to avoid inf-loops.
12935         Add `compile-only' argument.
12937 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12939         python.el: Fix local/remote shell environment setup
12940         * lisp/progmodes/python.el (python-shell-with-environment):
12941         Fix remote/local environment setup.
12942         * test/automated/python-tests.el (python-shell-with-environment-1)
12943         (python-shell-with-environment-2): New tests.
12945 2015-07-06  Glenn Morris  <rgm@gnu.org>
12947         * lisp/simple.el (set-variable): Tweak recent doc fix.
12949 2015-07-06  Ken Brown  <kbrown@cornell.edu>
12951         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
12953 2015-07-06  Glenn Morris  <rgm@gnu.org>
12955         * lisp/simple.el (set-variable): Use user-error for type mismatch.
12957 2015-07-06  Ken Brown  <kbrown@cornell.edu>
12959         * src/emacs.c (main): Don't increase the stack size on Cygwin.
12961 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
12963         (describe-symbol): Rewrite describe-function-or-variable
12964         * lisp/help-fns.el (describe-symbol-backends): New var.
12965         (help-xref-stack-item): Declare.
12966         (describe-symbol): Rename from describe-function-or-variable.
12967         Rewrite using describe-symbol-backends instead of help-xref-interned.
12968         * lisp/help.el (help-map): Use it.
12969         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
12970         (help-xref-interned): Make it into an obsolete alias.
12972         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
12973         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
12974         and cl-letf.
12976 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
12978         Fix parsing glitches in dired-mark-sexp (bug#13575)
12979         * lisp/dired-x.el (dired-x--string-to-number): New function.
12980         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
12981         of directory-listing-before-filename-regexp.  Consider
12982         forward-word harmful and replace it.  Add more verbiage in
12983         comments and doc string.
12985 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12987         python.el: Respect process environment for remote shells
12988         * lisp/progmodes/python.el
12989         (python-shell-calculate-process-environment): Calculate
12990         process-environment or tramp-remote-process-environment depending
12991         whether current file is remote.
12992         (python-shell-calculate-exec-path): Calculate exec-path or
12993         tramp-remote-path depending whether current file is remote.
12994         (python-shell-with-environment): New macro.
12995         (python-shell-prompt-detect, python-shell-calculate-command)
12996         (python-shell-make-comint, python-check): Use it.
12998         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
12999         * lisp/progmodes/python.el (python-shell--interpreter)
13000         (python-shell--interpreter-args): New vars.
13001         (inferior-python-mode, python-shell-make-comint): Use them.
13003         python.el: Fixes for IPython 3.x  (Bug#20580)
13004         * lisp/progmodes/python.el:
13005         (python-shell-completion-native-setup): Fix IPython 3.x setup.
13006         (python-shell-completion-native-get-completions): Fix timeout
13007         logic.
13009         python.el: Fix mark-defun behavior  (Bug#19665)
13010         * lisp/progmodes/python.el (python-mark-defun): New function.
13011         * test/automated/python-tests.el (python-mark-defun-1)
13012         (python-mark-defun-2, python-mark-defun-3): New tests.
13014 2015-07-05  Glenn Morris  <rgm@gnu.org>
13016         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
13017         such as "extends(parent), private".  (Bug#20969)
13018         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
13019         New tests.
13021 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
13023         Avoid duplicate calls to current_timespec
13024         * src/process.c (wait_reading_process_output):
13025         Cache current_timespec results as long as we're not waiting.
13027 2015-07-05  Ian Kelling  <ian@iankelling.org>
13029         Avoid returning early reading process output due to SIGIO
13030         * src/process.c (wait_reading_process_output): Extend the behavior of
13031         not breaking due to not finding output when a timer has lowered the
13032         timeout to include when SIGIO lowers the timeout.
13034         Don't return as fast reading any process output
13035         * src/process.c (wait_reading_process_output):
13036         The patch for Bug#17647 returns too fast sometimes when reading
13037         from any processes.  Revert part of it, and limit the timeout more
13038         sensibly (Bug#20978).
13040         Refactor timeouts in wait_reading_process_output
13041         * src/process.c (wait_reading_process_output):
13042         Simplify timeouts with an enum.  Remove a redundant condition.
13043         (Bug#20978)
13045         Remove ADAPTIVE_READ_BUFFERING ifdef
13046         * src/process.c (make-process, make-pipe-process, deactivate_process)
13047         (wait_reading_process_output, read_process_output, send_process)
13048         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
13049         added in case there was an operating system in which it was not
13050         useful.  That was 11 years ago and it hasn't happened.  Make
13051         development easier by not considering the effect of changes on a
13052         theoretical OS where this is disabled (Bug#20978).
13054 2015-07-05  Glenn Morris  <rgm@gnu.org>
13056         * lisp/simple.el (set-variable): Doc fix.
13058         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
13060 2015-07-05  Ian Kelling  <ian@iankelling.org>
13062         accept-process-output fix
13063         This is a followon to the fix for bug#17647 (Bug#20976).
13064         * src/process.c (status_notify): Fix too high return in some cases.
13066 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
13068         * lisp/character-fold.el (character-fold-table):
13069         Only fold decompositions if at least one character is non-spacing.
13070         (Bug#20975)
13072 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
13074         Merge from gnulib
13075         This incorporates:
13076         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
13077         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
13078         2015-07-02 update-copyright: fix test failure with perl >= 5.22
13079         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
13080         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
13081         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
13082         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
13084 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
13086         Respect `prog-indentation-context' in python.el
13087         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
13088         (python-indent-context, python-indent--calculate-indentation)
13089         (python-info-current-defun)
13090         (python-info-dedenter-opening-block-message)
13091         (python-info-line-ends-backslash-p)
13092         (python-info-beginning-of-backslash)
13093         (python-info-continuation-line-p): Use `prog-widen'.
13094         (python-indent--calculate-indentation)
13095         (python-indent--calculate-levels)
13096         (python-indent-calculate-indentation): Use `prog-first-column'.
13097         (python-indent--calculate-levels): Simplify.
13098         Ignore also initial empty lines for syntax calculation.
13099         * lisp/progmodes/python.el (python-indent-context): Return
13100         :no-indent for first non-empty line, not just in line 1.
13101         * test/automated/python-tests.el (python-indent-base-case)
13102         (python-indent-inside-paren-1, python-indent-inside-paren-2)
13103         (python-indent-inside-paren-3, python-indent-inside-paren-4)
13104         (python-indent-inside-paren-5, python-indent-inside-paren-6)
13105         (python-indent-after-backslash-1)
13106         (python-indent-after-backslash-2)
13107         (python-indent-after-backslash-3)
13108         (python-indent-after-backslash-4, python-indent-inside-string-1):
13109         Expect :no-indent for first non-empty line.
13111 2015-07-04  Daniel Colascione  <dancol@dancol.org>
13113         Factor isearch word description into new function
13114         * lisp/isearch.el (isearch--describe-word-mode): New function.
13115         (isearch-message-prefix, isearch-query-replace): Use it.
13117 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
13119         Fix mouse pointer on w32 when a menu is active
13120         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
13121         shape while a menu is in use.  This started happening since we now
13122         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
13124 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
13126         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
13127         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
13128         parameter.  (Bug#17344)
13130         Have `compilation-set-window' use right window for getting fringes
13131         (Bug#20829)
13132         * lisp/progmodes/compile.el (compilation-set-window):
13133         Take `window-fringes' from argument window.
13135 2015-07-03  Glenn Morris  <rgm@gnu.org>
13137         Update eieio tests for recent eieio-core change.
13138         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
13139         * test/automated/eieio-tests.el
13140         (eieio-test-32-slot-attribute-override-2):
13141         Replace the deleted eieio--class-v with cl--find-class.
13143 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
13145         Fix some issues with `window-divider-mode'
13146         * lisp/frame.el (window-divider-default-places): New option.
13147         (window-divider-mode): Remove option.
13148         (window-divider-mode): Make it a "regular" minor mode.
13149         (window-divider-width-valid-p): Drop frame- prefix.
13150         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
13151         prefix.  Handle `window-divider-default-places'.
13152         (frame--window-divider-mode-set-and-apply): Remove.
13153         (window-divider-default-bottom-width)
13154         (window-divider-default-right-width): Drop :group entries.
13155         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
13156         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
13157         (menu-bar-no-window-divider): Set `window-divider-default-places'
13158         and call `window-divider-mode'.
13159         * doc/emacs/frames.texi (Window Dividers): Document
13160         `window-divider-default-places'.
13162 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
13164         * doc/emacs/display.texi (Displaying Boundaries):
13165         * doc/emacs/search.texi (Word Search): Add cross references.
13167 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
13169         -batch should not affect ‘’ -> `' display
13170         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
13171         -batch (Bug#20926).
13173 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
13175         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
13176         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
13177         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
13178         Use cl--find-class instead.
13180         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
13182 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
13184         Some further fixes in Change Window node (Bug#20183)
13185         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
13186         by "resizing" in section title.  Add some concept indices.
13187         Suggested by N. Jackson (Bug#20183).
13189         * doc/emacs/windows.texi (Change Window): Reference window
13190         dividers.
13192         Document new `window-divider-mode'.
13193         * lisp/frame.el (window-divider-mode): Fix doc-string.
13194         * doc/emacs/frames.texi (Window Dividers): New section.
13196         Improve accessibility of window dividers (Bug#20183)
13197         * lisp/faces.el (window-divider)
13198         (window-divider-first-pixel, window-divider-last-pixel): Change
13199         membership from `frames' to `window-divider' customization group.
13200         * lisp/frame.el (window-divider): New customization group.
13201         (window-divider-mode): New minor mode.
13202         (window-divider-default-bottom-width)
13203         (window-divider-default-right-width): New options.
13204         (frame--window-divider-previous-mode): New variable.
13205         (frame-window-divider-width-valid-p)
13206         (frame--window-divider-mode-apply)
13207         (frame--window-divider-mode-set-and-apply): New functions.
13208         * lisp/menu-bar.el (menu-bar-options-save): Save
13209         window-divider-mode settings.
13210         (menu-bar-window-divider-customize)
13211         (menu-bar-bottom-and-right-window-divider)
13212         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
13213         (menu-bar-no-window-divider): New functions.
13214         (menu-bar-showhide-window-divider-menu): New variable.
13215         (menu-bar-showhide-menu): Show/hide window divider menu.
13216         * lisp/mouse.el (mouse-split-window-vertically)
13217         (mouse-split-window-horizontally): Replace `error' by
13218         `user-error'.  Bind `window-combination-resize' to nil.
13219         (top-level): Add/reorder mouse key bindings on mode- and
13220         vertical-line.
13222 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
13224         Don't display ‘’ as `' under X in en_GB
13225         The curved quote setup code invokes (char-displayable-p ?‘),
13226         but this isn’t reliable until after the X frame replaces the
13227         terminal frame (Bug#20926).
13228         * lisp/international/mule-cmds.el (set-locale-environment):
13229         Move curved quote setup code from here ...
13230         * lisp/startup.el (command-line): ... to here, after creating
13231         the X frame.
13233 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
13235         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
13237         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
13238         to reverse the meaning (Bug#15631).
13240 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
13242         Be more tolerant to fonts named "Foobar-12"
13243         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
13244         don't barf; instead, request a new fontset to be generated.  This
13245         avoids unnecessarily rejecting fonts named against XLFD rules.  See
13246         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
13247         for the description of the original problem.
13248         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
13249         by a hyphen in a font's name.
13251         Fix value of posn-at-pont in R2L lines
13252         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
13253         coordinate of -1, for a newline in a right-to-left line that
13254         overflowed into the left fringe.
13256 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
13258         (cl--copy-slot-descriptor): Copy the `props' alist as well
13259         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
13260         Rename from cl--copy-slot-descriptor.
13261         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
13263 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
13265         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
13266         (xterm-query-timeout): New var.
13267         (xterm--query): Use it.  Fallback on async method if we timeout before
13268         getting the first byte of the reply (bug#12354).
13270 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
13272         Spelling fixes
13273         * lisp/character-fold.el (character-fold-search):
13274         * lisp/emacs-lisp/package.el (package-hidden-regexps):
13275         Fix typos.
13277 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
13279         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
13281 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
13283         In strings, prefer plain ` and ' to \` and \'
13284         * lisp/allout.el (allout-insert-listified):
13285         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
13286         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
13287         (ls-lisp-string-lessp):
13288         * lisp/menu-bar.el (menu-bar-open):
13289         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
13290         * lisp/progmodes/compile.el (compile):
13291         * lisp/progmodes/etags.el (tags-loop-scan):
13292         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
13293         * lisp/subr.el (posn-actual-col-row):
13294         * lisp/term/pc-win.el (x-list-fonts):
13295         * lisp/textmodes/texinfmt.el (texinfmt-version):
13296         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
13297         * lisp/time.el (display-time-world-list):
13298         * lisp/tmm.el (tmm-menubar):
13299         * src/buffer.c (syms_of_buffer):
13300         * src/fileio.c (syms_of_fileio):
13301         Omit unnecessary and confusing backslash before quote.
13302         * lisp/erc/erc.el (erc-cmd-LASTLOG):
13303         * lisp/progmodes/flymake.el (flymake-fix-file-name):
13304         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
13305         Fix string that was intended to escape a backslash and not a quote.
13307 2015-06-30  Glenn Morris  <rgm@gnu.org>
13309         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
13311         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
13312         Replace hard-coded lists with wildcard + filter-out.
13314         * configure.ac (system-configuration-features): Add X11, NS.
13316         Improve reproducibility of generated loaddefs file
13317         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
13318         Make the return value the modtime of the input file (if no autoloads).
13319         (update-directory-autoloads): In the "no autoloads" section,
13320         use "most recent modtime" rather than "current time".
13322 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
13324         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
13325         (Bug#20930)
13327 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
13329         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
13331         Add seq-min and seq-max
13332         Bump version number.
13333         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
13334         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
13336 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
13338         Make sure sleep-for always delays for as long as it's told
13339         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
13340         a loop, to ensure we always wait exactly the required amount of
13341         time.  (Bug#15990)
13343 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
13345         Fix pointer signedness glitch
13346         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
13348 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
13350         Don't block changes in mouse pointer inside 'track-mouse'
13351         * etc/NEWS:
13352         * doc/lispref/frames.texi (Mouse Tracking): Document the special
13353         effect of setting 'track-mouse' to 'dragging'.
13354         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
13355         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
13356         * lisp/mouse-drag.el (mouse-drag-throw):
13357         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
13358         to avoid changes in the shape of the mouse pointer.
13359         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
13360         pointer shape when do_mouse_tracking has the value of 'dragging',
13361         not just any non-nil value.  (Bug#20934)
13362         (syms_of_xdisp): DEFSYM 'dragging'.
13364 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
13366         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
13368         * lisp/emacs-lisp/package.el (package-compute-transaction):
13369         Don't assume version sorting.
13371         * lisp/emacs-lisp/package.el (package--save-selected-packages):
13372         Don't save before init time, to avoid overwriting configurations.
13373         (Bug#20855)
13375 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
13377         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
13378         references.
13380 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
13382         Update for the upcoming CFEngine 3.7 release: support macros and
13383         quoted context strings; reformat JSON; indent promise attributes 2
13384         units by default; give function parameter descriptions in the eldoc
13385         glue.
13386         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
13387         Autoload `json-pretty-print'.  Support new features in 3.7.
13388         (cfengine-parameters-indent): Set default promise attribute indent to
13389         2 more than the promise itself.
13390         (cfengine3-macro-regex): New variable to match the new macro syntax.
13391         (cfengine3-font-lock-keywords): Use it to highlight macros.
13392         (cfengine3-indent-line): Use it to indent macros to column 0.
13393         (cfengine3-class-selector-regex): Update for the new quoted strings
13394         format.
13395         (cfengine3-reformat-json-string): New function to reformat a JSON
13396         string using `json-pretty-print'.
13397         (cfengine3-format-function-docstring): Use function parameter
13398         description if it's provided by the cf-promises syntax dump.
13400 2015-06-29  Michael R. Mauger  <michael@mauger.com>
13402         Cygwin emacsclient handles w32 file names
13403         * lisp/server.el (server-process-filter): Allow Cygwin's
13404         emacsclient to be used as a file handler on MS-Windows.
13406 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
13408         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
13409         (bug#20925).
13411 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
13413         * doc/lispref/text.texi (Sticky Properties): Improve wording.
13414         (Bug#20924)
13416         Allow font names that end in "-NN", where NN is a number
13417         * src/font.c (font_load_for_lface): If the font-spec didn't match
13418         any available fonts, try again without interpreting trailing "-NN"
13419         as the font size.  For the description of the original problem, see
13420         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
13422         .gdbinit followup to changes in !USE_LSB_TAG
13423         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
13424         !USE_LSB_TAG, as Emacs no longer does.
13426 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
13428         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
13429         Otherwise `s p' of f and F will stomp on each other's value.
13430         (Bug#20916)
13432 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13434         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
13435         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
13437 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
13439         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
13440         as additional guess.
13442         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
13443         to a string.
13445 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
13447         apropos-library quoting fix
13448         * lisp/apropos.el (apropos-library): Quote library consistently
13449         with the rest of the quoting used by apropos.
13451         Clarify interpreter-mode-alist doc
13452         * lisp/files.el (interpreter-mode-alist):
13453         Reword to avoid confusing quoting that wasn't working anyway.
13455 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
13457         Sync with Tramp 2.2.12
13458         * doc/misc/trampver.texi:
13459         * lisp/net/trampver.el: Update release number.
13460         * test/automated/tramp-tests.el (tramp-test13-make-directory):
13461         Fix cleanup.
13463 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
13465         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
13467 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
13469         Bind grep-highlight-matches around the rgrep call
13470         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
13471         around the rgrep call (bug#20728).
13473         Put "--color" before the other options in grep-command
13474         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
13475         before the other options in grep-command (bug#20912).
13477         Add --color Grep option to the command dynamically
13478         * lisp/progmodes/grep.el (grep-template, grep-find-template):
13479         Update the description for <C>.  (Bug#20728)
13480         (grep-compute-defaults): Don't add the --color option to
13481         grep-options.  Only add it to grep-command.
13482         (grep-expand-keywords): Expand the env value opts into <C>.
13483         (grep-expand-template): Replace cf in the env with the opts list,
13484         that can include -i and --color.
13485         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
13486         "--color=always" from the template, because we don't have to.
13488 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
13490         cl-extra fixes for most-negative-fixnum
13491         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
13492         Don't mishandle an argument equal to most-negative-fixnum,
13493         whose absolute value equals itself.
13494         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
13496         Initialize cl--gensym-counter to 0
13497         Previously it was initialized to a random value, which made it
13498         harder to reproduce earlier Emacs runs.  The need for a random
13499         value went away when Emacs introduced and used the #: syntax for
13500         uninterned symbols (Bug#20862).
13501         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
13502         Document that cl--gensym-counter now starts with 0.
13503         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
13504         (cl--random-time): Move to near only remaining use.
13505         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
13507         Improve docstring for macroexp-let2
13508         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
13509         Improve as per suggestion by RMS in:
13510         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
13511         Also, rename args to match new doc string.
13513 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
13515         Fix VC test suite on MS-Windows
13516         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
13517         always starts with 3 slashes after the colon.
13518         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
13519         'w32-application-type' to invoke CVS on MS-Windows with properly
13520         formatted CVSROOT directory name.
13522         Add a new function w32-application-type
13523         * src/w32proc.c (Fw32_application_type): New function.
13525         Avoid error in TLS connections due to incorrect format
13526         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
13527         the call to 'error', instead of the unsupported %u.  Reported by
13528         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
13530 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
13532         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
13534 2015-06-26  Leo Liu  <sdl.web@gmail.com>
13536         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
13537         `with-output-to-string' in elisp.
13539         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
13540         with-output-to-string".
13541         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
13543 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
13545         Minor corrections in ELisp manual
13546         * doc/lispref/nonascii.texi (Character Properties): Correct
13547         inaccuracies in description of values of the Unicode properties.
13549         Fix invisible mouse pointers on Windows.
13550         * src/w32fns.c: Include windowsx.h.
13551         (w32_wnd_proc): If the mouse moved and the mouse pointer is
13552         invisible, make it visible again even when the main (Lisp)
13553         thread is busy.
13554         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
13555         garbaging the frame have the input thread call SetCursor.
13557 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
13559         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
13560         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
13561         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
13562         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
13563         (w32_toggle_invisible_pointer): New function.
13564         (w32_create_terminal): Add w32_toggle_invisible_pointer as
13565         toggle_invisible_pointer_hook for this terminal.
13567 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
13569         Doc fix for deletion commands
13570         'delete-char' does not respect the value of 'delete-active-region'.
13571         * doc/emacs/killing.texi (Deletion):
13572         Fix documentation for some single-char deletion commands.
13574         * doc/emacs/help.texi (Apropos):
13575         Improve documentation of 'apropos-do-all'.
13577         * doc/emacs/help.texi (Help Summary):
13578         Improve documentation of 'describe-mode'.
13580 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13582         Fix submake dependency bug with .h files
13583         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
13584         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
13585         before the submake in $(libsrc) would spin off a subsubmake
13586         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
13588 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
13590         * lisp/character-fold.el (character-fold-table): Reuse `table'.
13592 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13594         Translate undisplayable ‘ to `
13595         * doc/lispref/help.texi (Keys in Documentation):
13596         * lisp/international/mule-cmds.el (set-locale-environment):
13597         * lisp/term/w32console.el (terminal-init-w32console):
13598         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
13599         If ‘ is not displayable, transliterate it to `, not to '.  See:
13600         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
13602         Fix C99 incompatibilities in Cairo code
13603         * src/image.c (xpm_load) [USE_CAIRO]:
13604         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
13605         Fix pointer signedness problem.
13607 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
13609         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
13610         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
13611         `with-output-to-string' should have the same indent as `progn'.
13612         This is in line with the declaration of `with-output-to-string'.
13614 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13616         Get ‘./configure; make -C src emacs’ to work
13617         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
13618         * lib-src/Makefile.in (../lib/libgnu.a):
13619         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
13621 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
13623         Fix GC bugs --with-wide-int and Qnil == 0
13624         Use the same alignment for the !USE_LSB_TAG case as for the
13625         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
13626         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
13627         once we changed the representation of symbols so that Qnil == 0.
13628         Problem reported by Eli Zaretskii (Bug#20862).
13629         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
13630         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
13631         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
13632         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
13633         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
13634         This optimization in the !USE_LSB_TAG case is no longer valid when
13635         symbols are represented via offsets.  Change the only use to
13636         assume that pointers might hide in objects.
13637         * src/lisp.h (alignas) [!USE_LSB_TAG]:
13638         Require support in this case, too.
13639         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
13640         This is OK, because the !USE_LSB_TAG case now applies only when
13641         Lisp_Object is wider than void *, so there's no longer any need
13642         to shift the offset.  Not shifting the offset means that
13643         symbol representations have the same alignment as pointers,
13644         which the GC assumes.
13646 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
13648         * doc/lispintro/emacs-lisp-intro.texi (Data types):
13649         Improve documentation of 'substring'.
13651 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13653         * lisp/character-fold.el (character-fold-table): Fix table generation.
13655 2015-06-24  Glenn Morris  <rgm@gnu.org>
13657         * nextstep/Makefile.in (all): Make it the first target.
13658         (../src/emacs${EXEEXT}): Add rule for making it.
13660 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13662         * etc/NEWS: Fix mention to old function name.
13664         * lisp/character-fold.el: New file (Bug#20887)
13665         (character-fold-to-regexp): New function.
13666         * lisp/replace.el (replace-search): Check value of
13667         `character-fold-search'.
13668         * lisp/isearch.el: Move character-folding code to
13669         character-fold.el
13670         (isearch-toggle-character-fold): New command.
13671         (isearch-mode-map): Bind it to "\M-sf".
13672         (isearch-mode): Check value of `character-fold-search'.
13674 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13676         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
13677         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
13678         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
13680         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
13681         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
13683 2015-06-24  Glenn Morris  <rgm@gnu.org>
13685         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
13687 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13689         lisp/gnus/nnmaildir.el: Silence lexical warnings
13690         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
13691         functional style.
13692         (nnmaildir--update-nov): Remove unused var `numdir'.
13693         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
13694         (nnmaildir-request-group, nnmaildir-request-create-group)
13695         (nnmaildir-request-post, nnmaildir-request-move-article)
13696         (nnmaildir-request-accept-article, nnmaildir-active-number):
13697         Mark unused args.
13698         (nnmaildir-get-new-mail, nnmaildir-group-alist)
13699         (nnmaildir-active-file): Declare.
13700         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
13701         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
13702         `mark', `end', `new-mark', and `mark-sym'.
13703         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
13704         `nlist2'.
13705         (nnmaildir-request-expire-articles):
13706         Remove unused vars `article', `stop' and `nlist2'.
13707         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
13708         `end'.  Use nnmaildir--article when dyn-binding is needed.
13709         Give the value directly in the `let' for `del-mark', `del-action',
13710         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
13711         (nnmaildir-close-server): Declare those local vars that need to be
13712         dyn-bound.
13714 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
13716         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
13718         Port selection info fix to clang
13719         * src/keyboard.h (kbd_buffer_store_event_hold):
13720         Don't assume C11 semantics for alignof (Bug#20756).
13722         Fix bug that munged selection info
13723         On some optimizing C compilers, copying a structure did not
13724         copy the padding bytes between elements, and the type punning
13725         between struct input_data and struct selection_input_data did
13726         not work.  Change the C code to use a proper union type instead.
13727         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
13728         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
13729         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
13730         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
13731         (mark_kboards):
13732         Use union buffered_input_event, not struct input_event.
13733         (clear_event, deliver_input_available_signal, process_special_events):
13734         Remove unnecessary forward decls.
13735         (kbd_buffer_store_buffered_event): New function, mostly just the
13736         old kbd_buffer_store_event_hold, except its argument is of type
13737         union buffered_input_event, not struct input_event.
13738         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
13739         not needed otherwise.  Argument is now of type
13740         struct selection_input_event *, not struct input_event *.
13741         All callers changed.
13742         (clear_event): Arg is now of type union buffered_input_event *,
13743         not struct input_event *.  All callers changed.
13744         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
13745         (union buffered_input_event): New type.
13746         (kbd_buffer_store_event_hold): Now an inline function,
13747         defined here.
13748         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
13749         (struct input_event): Use it.
13750         * src/xselect.c (struct selection_event_queue):
13751         Make elements be of type struct selection_input_event,
13752         not struct input_event.
13753         (selection_input_event_equal): New static function.
13754         (x_queue_event): Use it.
13755         (x_queue_event, x_decline_selection_request)
13756         (x_selection_current_request, x_reply_selection_request)
13757         (x_handle_selection_request, x_handle_selection_clear)
13758         (x_handle_selection_event): Use struct selection_input_event,
13759         not struct input_event.  All callers changed.
13760         (x_convert_selection): Omit unused first arg.  All callers changed.
13761         (Fx_disown_selection_internal): Omit unnecessary union.
13762         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
13763         rather than rolling our own equivalent.  Prefer sie.kind when
13764         setting up that kind of structure.
13765         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
13766         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
13767         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
13768         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
13769         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
13770         (SELECTION_EVENT_TIME, x_handle_selection_event):
13771         Arg is now of type struct selection_input_event *)
13772         not struct input_event *.  All callers changed.
13774 2015-06-23  Glenn Morris  <rgm@gnu.org>
13776         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
13778 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
13780         * lisp/isearch.el: Fold many unicode characters to ASCII.
13781         (isearch-character-fold-search, isearch--character-fold-extras)
13782         (isearch--character-fold-table): New variable.
13783         (isearch--character-folded-regexp): New function.
13784         (isearch-search-fun-default): Use them.
13785         * lisp/replace.el (replace-character-fold): New variable.
13786         (replace-search): Use it.
13787         * etc/NEWS: Document it.
13789 2015-06-23  Glenn Morris  <rgm@gnu.org>
13791         Check for an input event before showing a dialog box.  (Bug#20813)
13792         * lisp/subr.el (y-or-n-p):
13793         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
13794         as last-nonmenu-event.
13796 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
13798         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
13799         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
13800         (switch-to-prev-buffer, switch-to-next-buffer): Respect
13801         switch-to-visible-buffer independent of the windows history.
13803 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
13805         * src/keyboard.c (last_timer_event): Remove unused var.
13807 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
13809         * test/automated/package-test.el (package-test-update-listing):
13810         Fix test.
13812 2015-06-23  Glenn Morris  <rgm@gnu.org>
13814         Revert 2014-06-25 nextstep/Makefile change.
13815         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
13816         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
13817         not as an order-only prerequisite.
13819         * configure.ac (--with-ns): Enable by default on OS X.
13821 2015-06-23  Leo Liu  <sdl.web@gmail.com>
13823         Fix shell-for/backward-command to exclude spaces
13824         * lisp/shell.el (shell-forward-command, shell-backward-command):
13825           Handle the 'move case from re-search-forward/backward.
13826           fixes debbugs:20873
13828 2015-06-22  Juri Linkov  <juri@linkov.net>
13830         * lisp/replace.el (query-replace-read-from): Add separator to
13831         the local binding of text-property-default-nonsticky.  (Bug#20690)
13833         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
13834         (Bug#20785)
13836 2015-06-22  Ken Brown  <kbrown@cornell.edu>
13838         Enable CPU profiling on Cygwin
13839         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
13840         change that undefined this.
13841         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
13842         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
13843           Cygwin.
13845         Improve diagnostics of profiler-cpu-start
13846         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
13847         return -1 if the sampling interval is invalid.
13848         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
13849         fails.  (Bug#20843)
13851 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
13853         * lisp/emacs-lisp/package.el: Exclude packages by name.
13854         (package-hidden-regexps): New variable.
13855         (package-menu--refresh): Use it.
13856         (package-menu-hide-package): New command.
13858         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
13860 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
13862         Fix debug-timer-check on systems without HAVE_TIMERFD
13863         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
13864         the expired timers, since wait_reading_process_output doesn't.
13865         (debug_timer_callback): Enlarge the tolerance to 20 msec.
13867         Fix RCS crashes in vc-test
13868         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
13869         ports of 'ci' on MS-Windows by always passing the -t- switch.
13871 2015-06-22  Glenn Morris  <rgm@gnu.org>
13873         * doc/emacs/package.texi (Packages):
13874         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
13876         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
13878 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
13880         Port tests to help-quote-translation
13881         * test/automated/ert-x-tests.el (ert-test-describe-test):
13882         * test/automated/package-test.el (package-test-describe-package)
13883         (package-test-signed): Allow straight quotes, too.
13885 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
13887         Make find-function-on-key use the current window
13888         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
13889         Extract from `find-function-on-key', add a second argument.
13890         (find-function-on-key): Use it (bug#19679).
13891         (find-function-on-key-other-window)
13892         (find-function-on-key-other-frame): New commands.
13894 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13896         Revert "Define `map-elt' as a generalized variable"
13897         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
13899 2015-06-21  Ken Brown  <kbrown@cornell.edu>
13901         Drop support for CPU profiling on Cygwin
13902         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
13903         (Bug#20843)
13905 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
13907         Fix some “nested” quoting confusion in doc strings
13908         * lisp/emacs-lisp/advice.el (ad-map-arglists):
13909         * lisp/kermit.el (kermit-clean-on):
13910         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
13911         * src/keyboard.c (Frecursive_edit):
13912         Use curved quotes when quoting text containing apostrophe,
13913         so that the apostrophe isn't curved in the output.
13915 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13917         Define `map-elt' as a generalized variable
13918         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
13919         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
13920         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
13921         `setf' with `map-elt'.
13922         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
13924 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
13926         Improve error handling in tramp-adb.el
13927         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
13928         Improve error handling.
13930 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13932         Reuse `alist-get' in map.el
13933         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
13934         elements.
13936 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
13938         Fix bytecomp-tests--warnings when $TMPDIR has a long name
13939         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
13940         Allow the warning to begin on the 3rd, not only 2nd line, which
13941         happens if temporary-file-directory has a very long name.
13943         Expect 2 icalendar tests to fail on MS-Windows
13944         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
13945         (icalendar-real-world): Make them expected failures on MS-Windows.
13947 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
13949         Improve port of settings UI to older displays
13950         * lisp/cus-start.el (standard): Don't assume curved quotes are
13951         easily distinguishable when users are tinkering with a setting
13952         that affects how curved quotes are generated.
13954         Fix quoting in electric-quote-mode doc string
13955         * lisp/electric.el (electric-quote-mode): Fix quoting.
13956         This is a fallout from the recent change introducing
13957         ‘help-quote-translation’.
13959         Spelling fix
13961         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
13963         * src/doc.c (syms_of_doc): Remove unused symbols.
13965 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
13967         * lisp/window.el (window-state-put): Undedicate target window
13968         before putting STATE into it.  (Bug#20848)
13970 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
13972         Merge from origin/emacs-24
13973         a5e6f33 Fixes: debbugs:20832
13974         b9f02cf Fixes: debbugs:20832
13976 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
13978         Fix file-in-directory-p when the directory is UNC
13979         * lisp/files.el (file-in-directory-p): Support files and
13980         directories that begin with "//".  (Bug#20844)
13982 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
13984         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
13985         in the minibuffer.  (Bug#20832)
13987 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
13989         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
13990         for adding new todo file is empty but modified.  (Bug#20832)
13992 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
13994         (filepos-to-bufferpos): Further tweaks to the utf-16 code
13995         * lisp/international/mule-util.el (filepos-to-bufferpos):
13996         Fix typo.  Move non-exact check to the utf-16 branch (the only one
13997         affected).  Don't use byte-to-position for the utf-16 case.
13999 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
14001         Minor fixes in filepos-to-bufferpos
14002         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
14003         test for utf-8-emacs.  Exempt single-byte encodings from the
14004         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
14005         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
14006         UTF-16 encoded files for CR-LF EOLs.
14008 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
14010         Improve the optional translation of quotes
14011         Fix several problems with the recently-added custom variable
14012         help-quote-translation where the code would quote inconsistently
14013         in help buffers.  Add support for quoting 'like this', which
14014         is common in other GNU programs in ASCII environments.  Change
14015         help-quote-translation to use more mnemonic values: values are now the
14016         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
14017         traditional Emacs help-buffer quoting style `like this'.  Change the
14018         default behavior of substitute-command-keys to match what's done in
14019         set-locale-environment, i.e., quote ‘like this’ if displayable,
14020         'like this' otherwise.
14021         * doc/lispref/help.texi (Keys in Documentation): Document
14022         new behavior of substitute-command-keys, and document
14023         help-quote-translation.
14024         * doc/lispref/tips.texi (Documentation Tips):
14025         Mention the effect of help-quote-translation.
14026         * etc/NEWS: Mention new behavior of substitute-command-keys,
14027         and merge help-quote-translation news into it.
14028         When talking about doc strings, mention new ways to type quotes.
14029         * lisp/cedet/mode-local.el (overload-docstring-extension):
14030         Revert my recent change to this function, which shouldn't be
14031         needed as the result is a doc string.
14032         * lisp/cedet/mode-local.el (mode-local-print-binding)
14033         (mode-local-describe-bindings-2):
14034         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
14035         * lisp/cus-theme.el (describe-theme-1):
14036         * lisp/descr-text.el (describe-text-properties-1, describe-char):
14037         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
14038         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
14039         (eieio-help-constructor):
14040         * lisp/emacs-lisp/package.el (describe-package-1):
14041         * lisp/faces.el (describe-face):
14042         * lisp/help-fns.el (help-fns--key-bindings)
14043         (help-fns--compiler-macro, help-fns--parent-mode)
14044         (help-fns--obsolete, help-fns--interactive-only)
14045         (describe-function-1, describe-variable):
14046         * lisp/help.el (describe-mode):
14047         Use substitute-command-keys to ensure a more-consistent quoting
14048         style in help buffers.
14049         * lisp/cus-start.el (standard):
14050         Document new help-quote-translation behavior.
14051         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
14052         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
14053         (help-xref-url-regexp):
14054         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
14055         * lisp/wid-edit.el (widget-documentation-link-regexp):
14056         Also match 'foo', in case we're in a help buffer generated when
14057         help-quote-translation is ?'.
14058         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
14059         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
14060         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
14061         (Fsubstitute_command_keys): Document and implement new behavior.
14062         (Vhelp_quote_translation): Document new behavior.
14064 2015-06-18  Glenn Morris  <rgm@gnu.org>
14066         * lisp/cus-start.el (help-quote-translation): Add :version.
14068         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
14070 2015-06-18  Alan Mackenzie  <acm@muc.de>
14072         Make translation of quotes to curly in doc strings optional.
14073         * src/doc.c (traditional, prefer-unicode): New symbols.
14074         (help-quote-translation): New variable.
14075         (Fsubstitute_command_keys): Make translation of quotes dependent on
14076         `help-quote-translation'; also translate curly quotes back to ASCII
14077         ones.
14078         * lisp/cus-start.el (top-level): Add a customization entry for
14079         `help-quote-translation'.
14081 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
14083         * lisp/emacs-lisp/package.el: Don't always propagate async errors
14084         (package--with-work-buffer-async): Only propagate the error if the
14085         callback returns non-nil.
14086         (package--download-one-archive): Return nil on the signature
14087         checking callback if we accept unsigned.
14088         (package--download-and-read-archives): Return non-nil on the
14089         archive download callback.
14091 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
14093         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
14094         * src/nsfns.m (Fx_create_frame):
14095         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
14096         image_cache_refcount before first x_default_parameter call.
14098 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
14100         Improve and extend filepos-to-bufferpos
14101         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
14102         Don't barf if F returns nil for some argument.
14103         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
14104         that every encoding of type 'charset' is single-byte.
14106 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
14108         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
14109         Properly delete packages.  (Bug#20836)
14111 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
14113         Update data files from just-released Unicode 8.0
14114         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
14115         status.
14116         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
14117         * admin/unidata/BidiMirroring.txt:
14118         * admin/unidata/BidiBrackets.txt:
14119         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
14121 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
14123         Document curved quotes a bit better
14124         * doc/emacs/basic.texi (Inserting Text):
14125         Mention C-x 8.  Change example to use curved quote rather
14126         than infinity, as this lets us give more ways to do it.
14127         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
14128         and quotation marks.
14129         * doc/emacs/text.texi (Quotation Marks):
14130         * doc/lispref/tips.texi (Documentation Tips):
14131         Add "curly quotes" and "curved quotes" to the index.
14132         * doc/emacs/text.texi (Quotation Marks):
14133         Give the C-x 8 shorthands for curved quotes.
14134         Cross-reference to "Quotation Marks".
14136 2015-06-17  Daiki Ueno  <ueno@gnu.org>
14138         Add pinentry.el for better GnuPG integration
14139         * lisp/pinentry.el: New file.
14140         * etc/NEWS: Add entry about pinentry.el.
14141         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
14142         (Bug#20550)
14144 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
14146         * lisp/emacs-lisp/package.el: Slightly better error reporting.
14148 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
14150         (define-minor-mode): Use setq-default for :global minor modes
14151         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
14152         Use setq-default for :global minor modes (bug#20712).
14154 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
14156         Avoid infloop in redisplay with tall images
14157         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
14158         down near ZV.  (Bug#20808)
14159         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
14160         instead of CHARPOS.
14162 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
14164         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
14165         Fix error reporting.
14167         * lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
14169         * lisp/emacs-lisp/package.el: Revert buffer after any operation
14170         Call `package-menu--post-refresh' after any operation that changes
14171         the package database (`package-install' and `package-delete').  To
14172         avoid performance issues in large transactions, these functions
14173         add `post-refresh' to `post-command-hook' instead of calling it
14174         immediately.
14175         (package-menu--mark-or-notify-upgrades): New function.
14176         (list-packages): Add it to `package--post-download-archives-hook'.
14177         (package-menu--post-refresh): Lose the upgrade-checking code, add
14178         code to remove itself from `post-command-hook'.
14179         (package-install, package-delete): Add it to `post-command-hook'.
14180         (package-menu-execute): Don't call `package-menu--post-refresh'.
14182 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
14184         Add missing function xref-location-group for elisp-mode.
14185         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
14187 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
14189         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
14190         The behavior now matches the description in the manual.  (Bug#20783)
14192 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
14194         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
14196 2015-06-17  Glenn Morris  <rgm@gnu.org>
14198         Generate char-script-table from Unicode source.  (Bug#20789)
14199         * admin/unidata/Makefile.in (AWK): New, set by configure.
14200         (all): Add charscript.el.
14201         (blocks): New variable.
14202         (charscript.el, ${unidir}/charscript.el): New targets.
14203         (extraclean): Also remove generated charscript.el.
14204         * admin/unidata/blocks.awk: New script.
14205         * admin/unidata/Blocks.txt: New data file, from unicode.org.
14206         * lisp/international/characters.el: Load charscript.
14207         * src/Makefile.in (charscript): New variable.
14208         (${charscript}): New target.
14209         (${lispintdir}/characters.elc): Depend on charscript.elc.
14210         (temacs$(EXEEXT)): Depend on charscript.
14212         * lisp/international/characters.el (char-script-table): Tweak
14213         some ranges to better match the source.  (Bug#20789#17)
14215         Remove "no-byte-compile: t" from a few files.
14216         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
14217         * lisp/obsolete/patcomp.el: No reason not to compile these.
14219 2015-06-16  Glenn Morris  <rgm@gnu.org>
14221         Fix some typos in copied Unicode data.  (Bug#20789)
14222         * lisp/international/characters.el (char-script-table):
14223         * lisp/international/fontset.el (script-representative-chars)
14224         (setup-default-fontset): Fix typos.
14226         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
14227         Don't print filename twice (it's in the prefix now).
14229         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
14230         No longer needed.
14232         Address a compilation warning.
14233         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
14234         Replace 't' with '_' in pcase.
14236         Address some check-declare warnings.
14237         * lisp/simple.el (tabulated-list-print):
14238         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
14239         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
14240         (ns-get-selection): Update declarations.
14242         Address some compilation warnings.
14243         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
14244         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
14245         Replace 't' with '_' in pcase.
14247         Address some compilation warnings.
14248         * lisp/face-remap.el (text-scale-adjust):
14249         * lisp/menu-bar.el (popup-menu-normalize-position):
14250         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
14251         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
14252         * lisp/emacs-lisp/generator.el (cps--transform-1):
14253         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
14254         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
14255         * lisp/progmodes/octave.el (octave-goto-function-definition)
14256         (octave-find-definition-default-filename):
14257         Replace 't' with '_' in pcase.
14259         * lisp/emacs-lisp/pcase.el (pcase--u1):
14260         Paper-over today's bootstrap failure.
14262 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
14264         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
14266         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
14268         Better confirmation message in `find-alternate-file' (Bug#20830)
14269         * lisp/files.el (find-alternate-file'): Improve the confirmation
14270         message to show the buffer name.
14272         Better docstring for null.  (Bug#20815)
14273         * src/data.c (null): Improves the docstring, saying what null returns
14274         when OBJECT is non-nil.
14276 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
14278         * lisp/net/newst-treeview.el: Use lexical-binding.
14280         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
14281         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
14282         New auxiliary function, extracted from filepos-to-bufferpos.
14283         Make sure it terminates.
14284         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
14285         Add support for the `exact' quality.
14287 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
14289         Identify feeds in newsticker treeview with :nt-feed property
14290         * lisp/net/newst-treeview.el:
14291         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
14293 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
14295         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
14296         (pcase--self-quoting-p): Floats aren't self-quoting.
14297         (pcase): Tweak docstring.
14298         (pcase--u1): Deprecate the t pattern.  Improve error detection for
14299         the nil pattern.
14300         (\`): Tweak docstring.  Signal an error for unrecognized cases.
14301         (bug#20784)
14303 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
14305         Fix infloop in filepos-to-bufferpos
14306         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
14307         offset calculation, and make it conditional on the eol-type of the
14308         file's encoding.  (Bug#20825)
14310 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
14312         Fix handling of image cache refcounts.  (Bug#20802)
14313         This backports Eli Zaretskii's solution of this problem for W32
14314         to X and NS.
14315         * src/nsfns.m (image_cache_refcount): Define unconditionally.
14316         (unwind_create_frame): If the image cache's reference count
14317         hasn't been updated yet, do that now.
14318         (Fx_create_frame): Set image_cache_refcount unconditionally.
14319         * src/xfns.c (image_cache_refcount): Define unconditionally.
14320         (unwind_create_frame): If the image cache's reference count
14321         hasn't been updated yet, do that now.
14322         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
14323         unconditionally.
14324         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
14325         X and NS.
14327 2015-06-16  Nils Ackermann  <nils@ackermath.info>
14329         Improve reftex-label-regexps default value
14330         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
14331         keyvals label regexp more strict to better cope with unbalanced
14332         brackets common in math documents.
14334 2015-06-16  Glenn Morris  <rgm@gnu.org>
14336         * doc/emacs/calendar.texi (Format of Diary File):
14337         Move "nonmarking" from here...
14338         (Displaying the Diary): ... to here.
14340         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
14341         Swap the order of these nodes.
14342         * doc/emacs/emacs.texi: Update detailed menu for the above change.
14344         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
14345         Update date of examples.
14346         (Diary, Format of Diary File): Move example from former to latter.
14347         Reduce duplication.
14349         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
14350         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
14351         Don't set no-byte-compile in the outputs.
14352         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
14354 2015-06-15  Glenn Morris  <rgm@gnu.org>
14356         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
14357         * doc/emacs/calendar.texi (Diary, Format of Diary File):
14358         Update for above diary-file change.
14360         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
14361         (apply-macro-to-region-lines): Use user-error.
14363         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
14364         (pages-directory-for-addresses): Doc fixes.
14366 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
14368         * lisp/info.el: Cleanup bytepos/charpos issues
14369         * lisp/international/mule-util.el: Use lexical-binding.
14370         (filepos-to-bufferpos): New function.
14371         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
14372         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
14373         (Info-read-subfile, Info-search): Use 0-based file positions.
14375         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
14376         (perl--syntax-exp-intro-keywords): New var.
14377         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
14378         (bug#20800).
14380 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
14382         Fix quoting when making derived mode docstring
14383         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
14384         Nest regexp-quote inside format, not the reverse.
14385         Problem reported by Artur Malabarba in:
14386         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
14388 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
14390         Fix current-iso639-language on MS-Windows
14391         * lisp/international/mule-cmds.el (set-locale-environment):
14392         Downcase the locale name before interning it.  This is so the
14393         'current-iso639-language' on MS-Windows matches the ':lang'
14394         property of font-spec objects.
14396         Limit Symbola usage some more
14397         * lisp/international/fontset.el (setup-default-fontset): Limit
14398         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
14399         (Bug#20727)
14401 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
14403         * lisp/emacs-lisp/map.el (map-let): Better docstring.
14405 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
14407         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
14408         (help-fns-test-funny-names): Spelling fixes.
14410 2015-06-14  Glenn Morris  <rgm@gnu.org>
14412         * lisp/version.el (emacs-repository-version-git): Demote errors.
14413         Check result is a hash.
14415 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14417         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
14418         Catch errors that happen before going async.  (Bug#20809)
14420 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
14422         Another improvement of documentation of set-fontset-font
14423         * doc/lispref/display.texi (Fontsets): Say explicitly that
14424         CHARACTER can be a single codepoint.
14425         * src/fontset.c (Fset_fontset_font): Doc fix.
14427         Another improvement for symbol and punctuation characters
14428         * lisp/international/fontset.el (setup-default-fontset): Exclude
14429         from Symbola character ranges for symbols and punctuation covered
14430         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
14431         installed and where its coverage of symbols and punctuation is
14432         known to be good.  (Bug#20727)
14434 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
14436         Some generic support for multi-mode indentation.
14437         * lisp/progmodes/prog-mode.el (prog-indentation-context):
14438         New variable.
14439         (prog-first-column, prog-widen): New convenience functions.
14441 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14443         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
14444         Don't assume that `tabulated-list-printer' will leave point at the
14445         end of the buffer.  (Bug#20810)
14447 2015-06-13  Glenn Morris  <rgm@gnu.org>
14449         Tweaks for getting repository version; a bit more like it was for bzr
14450         * lisp/version.el (emacs-repository-version-git)
14451         (emacs-repository--version-git-1): New functions,
14452         split from emacs-repository-get-version.
14453         (emacs-repository-get-version): Make the second argument meaningful.
14455         * lisp/startup.el (command-line-1): Inform if skipping relative
14456         file names due to deleted PWD.
14458         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
14459         when starup directory is missing.  (Bug#18851)
14460         (errno.h): Include it.
14462 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
14464         Better fix for documenting `X as "`X"
14465         Fix suggested by Stefan Monnier.
14466         * lisp/help-fns.el (help-fns--signature):
14467         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
14468         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
14469         Don't treat `X specially, as help-fns--signature now handles this.
14471 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
14473         Improve the default fontset when Symbola is not installed
14474         * lisp/international/fontset.el (setup-default-fontset): Only
14475         prepend Symbola and FreeMono font specs for symbols and
14476         punctuation; do not replace the default spec for them.  This
14477         should have better results when Symbola/FreeMono are not
14478         installed.  (Bug#20727)
14480         Improve documentation of ':lang' in font specs
14481         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
14482         use of the ':lang' property of the font spec.
14483         * doc/emacs/frames.texi (Fonts): Document the language names that
14484         can be in the STYLE part of XLFD.
14485         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
14486         property.
14488         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
14490         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
14492         Revert last change in fontset.el
14493         * lisp/international/fontset.el (setup-default-fontset): Revert
14494         the change "Configure Symbola font only if installed", since font
14495         search is evidently not yet set up when this function is called.
14496         (Bug#20727)
14498 2015-06-12  Glenn Morris  <rgm@gnu.org>
14500         Ensure early startup warnings are visible at the end.  (Bug#20792)
14501         * lisp/emacs-lisp/warnings.el (display-warning):
14502         If startup isn't complete, delay the warning.
14503         * lisp/startup.el (normal-top-level, command-line):
14504         Let display-warning automatically handle the needed delays.
14505         Run delayed-warnings-hook.
14507         * lisp/version.el (emacs-repository-get-version):
14508         Avoid calling external executable if possible.  (Bug#20799)
14510 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14512         Document `X as "`X", not as "(` X)"
14513         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
14514         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
14516         * src/print.c (print_object): Minor simplification.
14518 2015-06-12  Glenn Morris  <rgm@gnu.org>
14520         * src/buffer.c (init_buffer): Add final newline to message.
14522 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14524         Configure Symbola font only if installed
14525         * lisp/international/fontset.el (setup-default-fontset):
14526         Don't specify the Symbola font if it's not installed.
14527         Likewise for FreeMono.  (Bug#20727)
14529 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
14531         Configure Symbola font only for symbols and punctuation
14532         * lisp/international/fontset.el (setup-default-fontset): Leave
14533         only symbols and punctuation in the fontset setup for Symbola
14534         font; remove "Greek and Coptic" and "Cyrillic Supplement".
14535         (Bug#20798)
14537 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
14539         Fix crash in fontset-info
14540         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
14541         non-nil.
14543 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14545         Port to Solaris 10 sparc + Sun C 5.13
14546         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
14547         Adjust to process.c change.
14548         * src/process.c (create_process): Declare volatile variables at
14549         top level of this function, so that they're less likely to be
14550         reused later in the function in the code executed by the vforked
14551         child.  Do not declare locals used only in the vforked child, as
14552         they might share memory with locals still live in the parent.
14553         Instead, use the same variables in the child as in the parent.
14554         This works around a subtle bug that causes a garbage collector
14555         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
14557 2015-06-12  Glenn Morris  <rgm@gnu.org>
14559         * lisp/startup.el (normal-top-level): Don't let *Messages* get
14560         a nil default-directory.
14562 2015-06-11  Glenn Morris  <rgm@gnu.org>
14564         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
14566         Some progress towards starting with PWD deleted.  (Bug#18851)
14567         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
14568         * lisp/startup.el (normal-top-level, command-line-1):
14569         * lisp/minibuffer.el (read-file-name-default):
14570         Handle default-directory being nil.
14572 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
14574         Fix "not a tty" bug on Solaris 10
14575         * configure.ac (PTY_OPEN): Define to plain 'open'
14576         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
14577         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
14578         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
14579         hosts that call grantpt which does its work via a setuid subcommand
14580         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
14581         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
14582         seems relevant in that case too.
14584 2015-06-11  Juri Linkov  <juri@linkov.net>
14586         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
14587         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
14588         (Bug#20785)
14590 2015-06-11  Glenn Morris  <rgm@gnu.org>
14592         * lisp/international/characters.el (char-script-table): Fix typo.
14594 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
14596         Fix quoting of help for functions with odd names
14597         While investigating Bug#20759, I discovered other quoting problems:
14598         C-h f mishandled characters like backslash and quote in function names.
14599         This fix changes the behavior so that 'C-h f pcase RET' now
14600         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
14601         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
14602         in src/lread.c's read1 function says that the backslash will be
14603         needed starting in Emacs 25, which implies that 'format' is
14604         correct and the old pcase documention was wrong to omit the backslash.
14605         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
14606         * lisp/help-fns.el (help-fns--signature):
14607         * lisp/help.el (help-add-fundoc-usage):
14608         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
14609         Use help--make-usage-docstring rather than formatting
14610         help-make-usage.
14611         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
14612         Return raw docstring.
14613         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
14614         raw docstring.  Take more care to distinguish raw from cooked dstrings.
14615         (describe-function-1): Let help-fns--signature substitute
14616         command keys.
14617         * lisp/help.el (help--docstring-quote): New function.
14618         (help-split-fundoc): Use it, to quote funny characters more
14619         systematically.
14620         (help--make-usage): Rename from help-make-usage, since this
14621         should be private.  Leave an obsolete alias for the old name.
14622         (help--make-usage-docstring): New function.
14623         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
14625 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
14627         * lisp/thingatpt.el (in-string-p): Revert last change,
14628         since in-string-p is not used in thingatpt.el but only from outside.
14629         Also, use lexical binding.
14631 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
14633         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
14634         * test/automated/let-alist.el (let-alist-cons): Test it.
14636 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
14638         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
14640 2015-06-10  Glenn Morris  <rgm@gnu.org>
14642         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
14644         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
14645         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
14646         * admin/gitmerge.el (gitmerge-commit-message):
14647         Exclude "skipped" messages from ChangeLog once again.
14649         Slight namespace cleanup for thingatpt.el.
14650         * lisp/thingatpt.el (thing-at-point--in-string-p)
14651         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
14652         (thing-at-point--read-from-whole-string): Rename from
14653         old versions without "thing-at-point--" prefix.
14654         Keep old versions as obsolete aliases.  Update all uses.
14656         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
14657         Move requiring of finder from here...
14658         (checkdoc-package-keywords): ... to here.
14660         Use 'user-error' in a few calendar files.
14661         * lisp/calendar/appt.el (appt-add):
14662         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
14663         (calendar-generate):
14664         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
14665         Replace 'error' with 'user-error'.
14667         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
14669         * lisp/files-x.el (add-file-local-variable):
14670         Special-case 'lexical-binding'.  (Bug#20641)
14672         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
14673         No longer autoload.
14674         * doc/misc/autotype.texi (Executables):
14675         Undocument executable-self-display.
14677         * lisp/progmodes/executable.el (executable-self-display):
14678         Use non-obsolete tail syntax.  (Bug#20779)
14679         (executable-self-display): Doc update.
14681 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
14683         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
14684         (finder-known-keywords): Silence byte-compiler.
14686 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
14688         * lisp/simple.el (eval-expression): Macroexpand before evaluating
14689         (bug#20730).
14691         * lisp/progmodes/sh-script.el: Better handle nested quotes.
14692         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
14693         (sh-font-lock-quoted-subshell): Make sure double quotes within single
14694         quotes don't mistakenly end prematurely the surrounding string.
14696         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
14698 2015-06-09  Glenn Morris  <rgm@gnu.org>
14700         * test/automated/Makefile.in (ELFILES): Sort.
14702         * Makefile.in (SUBDIR_MAKEFILES):
14703         * lwlib/Makefile.in (WARN_CFLAGS):
14704         Use built-in Make functions rather than echo+sed.
14706 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
14708         Update char-script-table
14709         * lisp/international/characters.el (char-script-table): Update
14710         from Unicode 8.0 Draft.
14712         Improve font selection for punctuation and other symbols
14713         * src/fontset.c (face_for_char): If the character's script is
14714         'symbol', and the font used for ASCII face has a glyph for it, use
14715         the font for the ASCII face instead of searching the fontsets.
14716         This comes instead of NS-specific code that used the current
14717         face's font instead, which is now disabled due to undesirable
14718         consequences.  (Bug#20727)
14720 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
14722         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
14723         Skip past `#' to find BEG (bug#20771).
14724         * test/automated/elisp-mode-tests.el
14725         (elisp-completes-functions-after-hash-quote): New test.
14727 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
14729         Fix compilation warning/error in --without-x builds
14730         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
14731         code on HAVE_WINDOW_SYSTEM.
14733         Improve the default fontset wrt symbols
14734         * lisp/international/fontset.el (setup-default-fontset): Better
14735         setup of fontset-default for symbols: use Symbola and FreeMono.
14736         (Bug#20727)
14738 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
14740         Add new command checkdoc-package-keywords
14741         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
14742         New defcustom.
14743         (checkdoc-list-of-strings-p): Add doc.
14744         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
14745         non-nil, call `checkdoc-package-keywords'.
14746         (checkdoc-get-keywords): New defun.
14747         (checkdoc-package-keywords): New command.  Warns if the current file
14748         has package.el-style keywords that aren't in `finder-known-keywords'.
14749         * etc/NEWS: Add entry.
14751 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
14753         Avoid crashes when key-binding is called from a timer
14754         * src/keymap.c (Fkey_binding): Don't segfault if called with an
14755         empty vector as KEY.  (Bug#20705)
14757         Fix a thinko in arc-mode.el
14758         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
14759         non-Zip64 case.  (Bug#20769)
14761 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
14763         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
14765 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
14767         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
14768         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
14769         "*warn*", print the warning to the standard output.  (bug#20754)
14771 2015-06-07  Glenn Morris  <rgm@gnu.org>
14773         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
14775         * src/font.c (syms_of_font) <font-log>: Doc fix.
14777         Remove the obsolete leading "*" from some C doc strings.
14778         * src/coding.c (syms_of_coding):
14779         * src/font.c (syms_of_font): Remove leading "*" from docs.
14780         * lisp/cus-start.el (enable-character-translation): Add it.
14782 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
14784         Move gen_origin from program to data
14785         That way, 'make change-history' needs to change only ChangeLog.2,
14786         instead of having to change two files.
14787         * ChangeLog.2: Add commit info for range that this file covers.
14788         * Makefile.in (new_commit_regexp): New macro.
14789         (change-history-nocommit): Simplify, by putting what used to be
14790         the gen_origin value into the data (ChangeLog.2) rather than
14791         into the program (gitlog-to-emacslog).
14792         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
14793         the input file (e.g., ChangeLog.2) rather than by having a
14794         constant in the program.  Substitute it into the output.
14796 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
14798         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
14799         function name (bug#20759).
14801 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
14803         Adapt 'struct timespec' to next release of MinGW runtime
14804         * nt/inc/ms-w32.h (struct timespec): Don't declare if
14805         __struct_timespec_defined is defined.
14807 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
14809         Merge from gnulib
14810         This incorporates:
14811         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
14812         2015-06-05 stdio: Don't redefine gets when using C++
14813         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
14814         2015-06-02 file-has-acl: fix build on Mac OS X 10
14815         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
14816         2015-06-01 pthread_sigmask: discount system version if a simple macro
14817         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
14818         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
14819         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
14820         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
14821         * lib/gnulib.mk: Regenerate.
14823 2015-06-06  Juri Linkov  <juri@linkov.net>
14825         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
14826         before calling grep-compute-defaults because now it affects the
14827         command lines computed in grep-compute-defaults.  (Bug#20728)
14829 2015-06-06  Glenn Morris  <rgm@gnu.org>
14831         Address some compilation warnings.
14832         * lisp/international/mule-cmds.el (w32-get-console-codepage)
14833         (w32-get-console-output-codepage):
14834         * lisp/progmodes/elisp-mode.el (xref-collect-references):
14835         * lisp/version.el (cairo-version-string): Declare.
14836         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
14838 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
14840         Fix display when a font claims large values of ascent and descent
14841         This fixes bug#20628.
14842         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
14843         coordinate of a hollow cursor glyph when the original glyph's
14844         ascent is too small.
14845         (get_font_ascent_descent, normal_char_ascent_descent)
14846         (normal_char_height): New functions.
14847         (handle_single_display_spec, append_space_for_newline)
14848         (calc_pixel_width_or_height, produce_stretch_glyph)
14849         (calc_line_height_property): Use normal_char_ascent_descent and
14850         normal_char_height.
14851         (x_produce_glyphs): When font-global values of ascent and descent
14852         are too large, use per-character glyph metrics instead, if
14853         possible.  But don't allow the glyph row's ascent and descent
14854         values become smaller than the values from the metrics of the
14855         font's "normal" character.
14856         * src/xftfont.c (xftfont_draw):
14857         * src/w32font.c (w32font_draw): Correct the values of ascent and
14858         descent used to draw glyphless characters' hex code in a box.
14859         * src/xterm.c (x_draw_glyph_string_background):
14860         * src/xdisp.c (x_produce_glyphs):
14861         * src/w32term.c (x_draw_glyph_string_background):
14862         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
14863         to detect fonts whose global ascent and descent values are too
14864         large to be used in layout decision, and redraw the background
14865         when that happens.
14866         * src/dispextern.h (FONT_TOO_HIGH): New macro.
14867         (get_font_ascent_descent): Add prototype.
14868         * src/xterm.c (x_new_font):
14869         * src/w32term.c (x_new_font):
14870         * src/nsterm.m (x_new_font):
14871         * src/font.c (font_open_entity):
14872         * src/composite.c (composition_gstring_width):
14873         Use get_font_ascent_descent to obtain reasonable values for ascent
14874         and descent of a font.
14876 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
14878         Add assertion in adjust_point_for_property
14879         * src/keyboard.c (adjust_point_for_property): Add eassert for
14880         current buffer being shown in selected window.
14882 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
14884         Replace uses of in-string-p; make it obsolete
14885         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
14886         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
14888 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
14890         Fix Dired display of an explicit list of files by ls-lisp.el
14891         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
14892         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
14893         correct for when displaying individual files separately, not as
14894         part of listing a directory, in which case these values are not
14895         recomputed by 'ls-lisp-insert-directory', but used verbatim.
14897         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
14899 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
14901         Do not adjust point in a non-selected window
14902         * src/keyboard.c (command_loop_1): Do not adjust point when
14903         current buffer is not shown in selected window (Bug#20590).
14905         * etc/DEBUG: Mention 'maybe_call_debugger'
14907 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
14909         Fix a unit test for map.el
14910         * test/automated/map-tests.el (test-map-let): Fix the test to work
14911         with the new syntax of `map-let'.
14913         * lisp/emacs-lisp/map.el (map-let): Better docstring.
14915         Better syntax for the map pcase pattern
14916         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
14917         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
14919         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
14921         Fix a byte-compiler error in map-put and map-delete
14922         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
14923         called with a symbol.
14925 2015-06-05  Glenn Morris  <rgm@gnu.org>
14927         * admin/gitmerge.el (gitmerge-commit-message):
14928         Revert to including "skipped" messages in ChangeLog once again.
14930 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
14932         Use string> instead of equiv lambda with string<
14933         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
14934         lambda with string<.
14936 2015-06-05  Glenn Morris  <rgm@gnu.org>
14938         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
14939         (map--delete-array): Fix typo.
14941         * test/automated/map-tests.el: Replace "assert" with "should".
14943         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
14944         (SUBDIRS_REL): Derive from SUBDIRS.
14946         Tweak some build messages.
14947         * lisp/Makefile.in ($(lisp)/loaddefs.el):
14948         * lisp/cus-dep.el (custom-make-dependencies):
14949         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
14950         * lisp/international/titdic-cnv.el (batch-titdic-convert):
14951         Don't say how to compile.
14953 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
14955         Omit U+0332 COMBINING LOW LINE in previous change
14956         It turns out that it does not work on Ubuntu 15.04.
14958         Fix transliteration of Bahá'í months
14959         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
14960         Improve quality of Latin transliteration of Bahá'í month names.
14962         Fix curved quotes in a few places
14963         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
14964         The strings in question are not doc strings, so this partially
14965         undoes the recent change that assumed they were doc strings.
14966         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
14967         * lisp/info.el (Info-finder-find-node):
14968         Use curved quotes.
14969         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
14970         Also allow curved quotes in doc strings.
14972 2015-06-04  Glenn Morris  <rgm@gnu.org>
14974         * lisp/Makefile.in (AM_V_at): Add missing definition.
14976         * lisp/Makefile.in: Quieten output a bit.
14977         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
14978         Don't echo directories, since the commands we invoke print them.
14980         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
14981         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
14982         (SUBDIRS_SUBDIRS): New variables.
14983         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
14984         Remove.
14985         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
14986         (update-subdirs, compile-main, compile-clean):
14987         Replace "setwins" usage with new "SUBDIRS" variables.
14989         * lisp/vc/compare-w.el (compare-windows-get-window-function):
14990         Fix :version tag.
14992 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14994         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
14996         Undo removal of x_clear_area call on expose for GTK3 or cairo
14997         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
14998         Clear exposed area.  (Bug#20677)
15000 2015-06-04  Glenn Morris  <rgm@gnu.org>
15002         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
15004         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
15006         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
15007         Rename from quail-lao-update-translation, since lao.el defines that.
15009 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
15011         Handle new-style advice in find-funct
15012         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
15013         Handle new-style advice.  Return the symbol's function definition.
15014         (Bug#20718)
15015         (find-function-library): Update accordingly.
15017 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
15019         Merge branch 'map'
15021         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
15023         Add new function string-greaterp
15024         * lisp/subr.el (string-greaterp): New function.  Also aliased to
15025         `string>'.
15026         * test/automated/subr-tests.el (string-comparison-test): Add unit
15027         tests for `string>'and `string<'.
15028         * src/fns.c (string-lessp): Better docstring.
15030 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
15032         Fix timezone-related functions on MS-Windows
15033         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
15034         'xputenv', even if no reallocation of tzvalbuf was necessary.
15035         This fixes a bug in timezone-related functions on MS-Windows.
15036         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
15038 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
15040         Don't pass raw directory name to 'error'
15041         * lisp/files.el (basic-save-buffer-2): Avoid format error if
15042         a directory name contains a string like "%s".
15044 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
15046         Override 'grep --color=always'
15047         * lisp/progmodes/xref.el (xref-collect-matches):
15048         Override --color=always in grep-find-template.
15050 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
15052         Fix error introduced recently in file-notify-tests.el
15053         * test/automated/file-notify-tests.el
15054         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
15055         (file-notify--deftest-remote): Revert previous patch, not
15056         necessary anymore.
15058 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
15060         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
15061         Starting from a display string after a newline, point went to the
15062         previous line.  Also, fix an inadvertent use of a buffer position
15063         with FETCH_BYTE.  (Bug#20701)
15065 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
15067         Instrument file-notify-test.el in order to catch hydra error
15068         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
15069         Wrap body by `ignore-case', in order to trap non-local errors.
15071 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
15073         Undo previous changes in non-toolkit scroll bar drawing
15074         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
15075         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
15077 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
15079         * .gitignore: Also ignore doc/*/*/*.html and .ps.
15081         Support quotes 'like this' in info files
15082         This is possible when 'makeinfo --disable-encoding' is used
15083         in Texinfo 5.
15084         * lisp/calc/calc-help.el (calc-describe-thing):
15085         * lisp/gnus/gnus-art.el (gnus-button-alist):
15086         * lisp/info.el (Info-find-index-name):
15087         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
15088         Also support quotes 'like this'.
15089         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
15090         * lisp/finder.el (finder-font-lock-keywords): Remove var that
15091         hasn't been used in years, instead of bothering to fix its quoting.
15093 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
15095         * .gitignore: Remove !test/etags/html-src/*.html.
15096         It's no longer needed, since *.html was removed.  Sort.
15098 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
15100         Restore <D> instead of '.' in grep-find-template
15101         * lisp/cedet/semantic/symref/grep.el
15102         (semantic-symref-grep-use-template): Update a comment.
15103         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
15104         instead of '.' in grep-find-template (bug#20719).
15105         (rgrep): Pass nil as the directory to rgrep-default-command.
15106         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
15107         default value for DIR.
15108         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
15109         workaround.
15111 2015-06-02  Glenn Morris  <rgm@gnu.org>
15113         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
15115         * configure.ac (emacs_config_features): Add Cairo.
15117         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
15119 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
15121         Ensure that autorevert works for remote files in file-notify-tests.el
15122         * test/automated/file-notify-tests.el (file-notify--test-desc):
15123         New defvar.
15124         (file-notify--test-remote-enabled)
15125         (file-notify-test00-availability, file-notify-test01-add-watch)
15126         (file-notify-test02-events): Use it.
15127         (file-notify--test-event-test): Check proper descriptor.
15128         (file-notify-test03-autorevert): Ensure that
15129         `visited-file-modtime' has changed.  (Bug#20392)
15131 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
15133         Add a pcase pattern for maps and `map-let' based on it
15134         * lisp/emacs-lisp/map.el (map-let): New macro.
15135         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
15136         * test/automated/map-tests.el: New test for `map-let'.
15138 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
15140         Reuse rgrep mechanics in xref-find-regexp
15141         * lisp/progmodes/grep.el (rgrep-default-command):
15142         Extract from `rgrep'.
15143         * lisp/progmodes/xref.el (xref-collect-references): Split from
15144         `xref-collect-matches'.  Only handle the case of symbol search.
15145         (xref-collect-matches): Instead of Semantic Symref, use
15146         `rgrep-default-command', to take advantage of its directory and
15147         file ignore settings.
15148         (xref--collect-match): Remove the last argument, leaving the
15149         regexp construction up to the caller.
15150         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
15151         Change to take the xref-collect- function to use as an argument.
15152         (elisp-xref-find): Update accordingly.
15153         * lisp/progmodes/etags.el (etags--xref-find-matches)
15154         (etags-xref-find): Same.
15156         Move xref-elisp-location to elisp-mode.el
15157         * lisp/progmodes/xref.el (xref-elisp-location)
15158         (xref-make-elisp-location, xref-location-marker): Remove here.
15159         (xref--xref): Don't limit the type of the location slot.
15160         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
15161         Define as a cl-struct here.
15162         (xref-location-marker): Move here.
15164 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
15166         Minor tweaks for .gitignore
15167         * .gitignore: Don't ignore versioned *.html and *.ps files.
15168         Don't ignore admin/notes/tags that might be ignored as TAGS
15169         on case-insensitive filesystems.  (Bug#20710)
15171 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
15173         Generate curved quotes in ert doc
15174         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
15175         (ert-results-mode-menu)
15176         (ert-results-pop-to-backtrace-for-test-at-point)
15177         (ert-results-pop-to-messages-for-test-at-point)
15178         (ert-results-pop-to-should-forms-for-test-at-point)
15179         (ert-describe-test):
15180         Quote ‘like this’, not `like this', when generating doc strings
15181         and the like.
15182         * test/automated/ert-x-tests.el (ert-test-describe-test):
15183         Allow quoting ‘like this’.
15185 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
15187         Add test for previous commit
15188         * test/automated/replace-tests.el: New file.
15189         (query-replace--split-string-tests): Add test for previous commit.
15191         Avoid confusion in query-replace history when replacing NUL chars
15192         * lisp/replace.el (query-replace--split-string): New function.
15193         (query-replace-read-from): Rely on the 'separator' property
15194         instead of searching for the NUL character (Bug#20690).
15196 2015-06-02  Glenn Morris  <rgm@gnu.org>
15198         Merge from origin/emacs-24
15199         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
15201         * admin/gitmerge.el (gitmerge-commit-message):
15202         Exclude "skipped" messages from ChangeLog.
15204 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
15206         Sync with Tramp repository
15207         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
15208         messages.
15209         (tramp-handle-make-auto-save-file-name): When calling
15210         `make-auto-save-file-name' internally, make sure it uses Unix-like
15211         behavior, not Windows-like behavior.
15212         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
15213         the local case, because "chown" might fail on w32.
15214         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
15215         for XEmacs.
15217 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
15219         MS-Windows followup for batch stdout/stderr output changes
15220         * lisp/international/mule-cmds.el (set-locale-environment):
15221         In batch mode, use console codepages for keyboard and terminal
15222         encoding.  (Bug#20545)
15224         Update .gitattributes for DOS EOL files
15225         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
15226         CRLF end-of-line format.
15228         NS equivalents of xterm.c and w32term.c changes
15229         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
15230         glyph string background also when the font in use claims
15231         preposterously large global height value.  Helps to remove
15232         artifacts left from previous displays when glyphless characters
15233         are displayed as hex code in a box.
15234         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
15235         value for FRAME_LINE_HEIGHT, even when a font claims very large
15236         value for its height.
15238 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
15240         Avoid grave accent quoting in stderr diagnostics
15241         A few Emacs diagnostics go directly to stderr, and so can't easily
15242         contain curved quotes (as non-UTF-8 locales might mishandle them).
15243         Instead of bothering to add support for this rarity, reword the
15244         diagnostics so that they don't use grave accent to quote.
15245         * src/alloc.c (mark_memory): Fix comment.
15246         * src/buffer.c (init_buffer):
15247         * src/dispnew.c (init_display):
15248         * src/emacs.c (main, sort_args):
15249         * src/lread.c (dir_warning):
15250         * src/term.c (init_tty):
15251         * src/unexmacosx.c (unexec):
15252         * src/xfns.c (select_visual):
15253         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
15254         Reword stderr diagnostics to avoid quoting `like this'.
15255         * src/unexmacosx.c: Include errno.h.
15256         * src/xfns.c (select_visual): Encode value for locale.
15258 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
15260         Treat batch stdout/stderr like standard display
15261         Calls like (print FOO) could generate improperly encoded or
15262         hard-to-read output if FOO contains characters outside the system
15263         locale.  Fix this by treating batch stdout and stderr like
15264         interactive standard display, when it comes to transliterating and
15265         encoding characters (Bug#20545).
15266         * doc/emacs/mule.texi (Communication Coding):
15267         * doc/lispref/display.texi (Active Display Table):
15268         * doc/lispref/nonascii.texi (Locales):
15269         * etc/NEWS:
15270         * src/coding.c (syms_of_coding):
15271         * src/dispnew.c (syms_of_display):
15272         Document this.
15273         * src/print.c: Include disptab.h.
15274         (printchar_to_stream): New function, with much of the guts of the
15275         old Fexternal_debugging_output, except this one also uses the
15276         standard display table.
15277         (printchar, strout, Fexternal_debugging_output): Use it.
15279 2015-05-31  Glenn Morris  <rgm@gnu.org>
15281         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
15283 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
15285         Remove DEFSYMs that aren't used at the C level.  Also:
15286         * src/decompress.c (Qzlib_dll):
15287         * src/font.c (Qunicode_sip):
15288         * src/frame.c (Qtip_frame):
15289         * src/ftfont.c (Qserif):
15290         * src/gnutls.c (Qgnutls_dll):
15291         * src/xml.c (Qlibxml2_dll):
15292         Move from here ...
15293         * src/w32fns.c (syms_of_w32fns): ... to here,
15294         as these are used only on MS-Windows.
15296 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
15298         Use another default value for tramp-histfile-override
15299         * lisp/net/tramp-sh.el (tramp-histfile-override):
15300         Use ".tramp_history" as default.
15301         Fixes bug#20446
15303 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
15305         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
15307 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
15309         * etc/NEWS: Add an entry about map.el.
15311         Improve the docstring of functions in map.el
15312         Since a map is not a data structure but a concept, adding information
15313         about the possible types of maps can be useful information.
15314         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
15315         each public function.
15317 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
15319         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
15320         specific tests depending on the type of the map.
15322         * lisp/emacs-lisp/map.el: Better docstrings.
15324 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15326         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
15328 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
15330         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
15332         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
15334         Fix a false negative in `map-elt' with alists and values being nil
15335         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
15336         found but its associated value is nil, do not return the default
15337         value.
15338         * test/automated/map-tests.el: Add a regression test.
15340 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
15342         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
15344         Do not signal an error when trying to delete a key from an array
15345         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
15346         the key is present to avoid signaling an error.
15347         * test/automated/map-tests.el: Add a test for deleting non-existing
15348         keys from maps.
15350         * lisp/emacs-lisp/map.el: Better docstring.
15352         Minor improvement in map-elt
15353         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
15354         doing a lookup in arrays, but check the boundaries of the array
15355         instead.
15356         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
15357         and a negative integer as key.
15359 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
15361         * test/automated/map-tests.el: Refactoring of test methods.
15363         * test/automated/map-tests.el: Renamed from map-test.el.
15365 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
15367         * lisp/emacs-lisp/map.el (map-into): Better error message.
15369         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
15371         Throw an error when converting a map into an unknown map type
15372         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
15373         not valid.
15374         * test/automated/map-test.el: Add a regression test.
15376         New library map.el similar to seq.el but for mapping data structures.
15377         * test/automated/map-test.el: New file.
15378         * lisp/emacs-lisp/map.el: New file.
15380 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
15382         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
15383         there's no explicit tag name (bug#20629).
15385 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
15387         Remove format2
15388         * src/editfns.c, src/lisp.h (format2): Remove.
15389         It is more trouble than it's worth, now that we have CALLN.
15390         This is just a minor refactoring.
15391         * src/buffer.c (Fkill_buffer):
15392         * src/dbusbind.c (XD_OBJECT_TO_STRING):
15393         * src/fileio.c (barf_or_query_if_file_exists):
15394         Adjust to format2 going away.
15396         Don't misencode C-generated messages
15397         Also, be more consistent about calls to 'Fmessage' vs 'message'.
15398         * src/alloc.c (Fgc_status):
15399         Prefer AUTO_STRING to build_string for Fmessage call.
15400         * src/data.c (Fmake_variable_buffer_local)
15401         (Fmake_local_variable, Fmake_variable_frame_local):
15402         * src/doc.c (store_function_docstring):
15403         Use Fmessage, not message, since the argument can contain
15404         non-ASCII characters, and this can cause the resulting message
15405         to be incorrectly encoded for the current environment.
15406         * src/fns.c (maybe_resize_hash_table):
15407         * src/xselect.c (x_clipboard_manager_save_all):
15408         Use message, not Fmessage, since Fmessage's power isn't needed here.
15409         * src/process.c (Fmake_network_process): Reword message to avoid %s.
15410         * src/xdisp.c (vmessage): Document restrictions on message contents.
15411         (message_nolog) [false]: Remove unused code.
15413         Use \r rather than ^M in string literals
15414         This is less likely to cause problems on platforms that
15415         use CRLF (or CR!) termination for lines.
15417         Update .gitattributes to match current sources
15418         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
15419         * .gitattributes: Accommodate tests that insist on DOS format.
15420         Remove test/automated/data/decompress/foo-gzipped.
15421         Add etc/e/eterm-color.
15423 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
15425         * doc/emacs/mule.texi (Modifying Fontsets):
15426         Document face-ignored-fonts.  (Bug#20628)
15428         Add etags test for the new -Q option
15429         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
15430         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
15431         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
15432         test-case changes below.
15433         * test/etags/ETAGS.good_6: New file.
15434         * test/etags/cp-src/x.cc: New file.
15435         * test/etags/Makefile (CPSRC): Add x.cc.
15436         (check): Add one more test, for -Q.
15438 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
15440         Use list for the tags completion table, not obarray
15441         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
15442         list instead of an obarray
15443         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
15444         (tags-completion-table): Combine those lists.
15445         (tags-completion-table): Update the docstring.
15447 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
15449         Restore EOL format testing in etags
15450         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
15451         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
15452         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
15453         test-case changes below.
15454         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
15455         * test/etags/cp-src/c.C (B): Add back stray CR character.
15456         * test/etags/c-src/dostorture.c: Add back.
15457         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
15459 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
15461         Declare Emacs on MS-Windows to be DPI-aware
15462         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
15463         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
15464         This avoids Windows entering compatibility mode for Emacs,
15465         which causes fonts to look less nice.
15467 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
15469         Improve Tramp traces
15470         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
15471         * lisp/net/tramp.el (tramp-debug-message): Use it.
15473 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
15475         backup-buffer minor reworking of internals
15476         * lisp/files.el (backup-buffer): Rework to avoid a couple of
15477         unused locals inadvertently introduced in the previous change.
15479         backup-buffer now reports .emacs.d/%backup% ills
15480         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
15481         fails due to disk space exhaustion or whatever, do not pretend
15482         that it succeeded.  More generally, do a better job of checking
15483         for I/O failures, and limit the scope of the condition-case to
15484         just the operations where file errors should be caught and ignored
15485         (Bug#20595).  Also, don't bother trying to delete later backups if
15486         an earlier deletion fails, as this is a sign of trouble and it's
15487         better to stop when there's trouble.
15489         copy-file now truncates output after writing
15490         * src/fileio.c (Fcopy_file): Truncate output after writing rather
15491         than before.  This is more likely to work than truncation before
15492         writing, if the file system is out of space or the user is over
15493         disk quota (Bug#20595).  Also, check for read errors.
15495 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
15497         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
15498         Don't load descriptors from directories above the package directories.
15500 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
15502         Merge from gnulib
15503         This incorporates the following (Bug#20681):
15504         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
15505         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
15506         * lib/set-permissions.c: Copy from gnulib.
15508 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
15510         Improve Tramp traces
15511         * lisp/net/tramp.el (tramp-call-process-region): New defun.
15512         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
15514 2015-05-29  Glenn Morris  <rgm@gnu.org>
15516         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
15518 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
15520         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
15521         The signature was changed in the cairo branch, merged on 2015-05-23.
15522         This oversight broke compiling only the non-toolkit X version.
15524 2015-05-29  Samer Masterson  <samer@samertm.com>
15526         * doc/lispref/os.texi: Update initial-buffer-choice docs.
15528 2015-05-29  Glenn Morris  <rgm@gnu.org>
15530         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
15531         Mark as an expected failure.
15533 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
15535         Change package test to look for curved quotes
15536         * test/automated/package-test.el (package-test-describe-package)
15537         (package-test-signed): Search for curved single quotes as well as
15538         for grave accent and apostrophe.
15540 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
15542         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
15543         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
15545 2015-05-28  Samer Masterson  <samer@samertm.com>
15547         Show files when `initial-buffer-choice' is non-nil
15548         * lisp/startup.el (command-line-1): When Emacs is given a file as an
15549         argument and `initial-buffer-choice' is non-nil, display both the file
15550         and `initial-buffer-choice'.  For more than one file, show
15551         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
15552         commands out of the command line arg parser.
15553         (initial-buffer-choice): Clarify docstring.
15555 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
15557         Fix last commit
15558         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
15559         (gnulib module qcopy-acl): Add back, as it is harmless.  This
15560         minimizes differences wrt lib/gnulib.mk.
15562         Fix the MS-Windows build as followup to gnulib update
15563         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
15564         set-permissions.c, as they don't compile on MinGW.
15565         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
15567 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
15569         Revert my change to gnus-art.el
15570         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
15571         It wasn't that important, and it caused a Gnus build to fail.  See:
15572         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
15574         New minor mode Electric Quote
15575         This lets you easily insert quotes ‘like this’ by typing
15576         quotes `like this', and similarly you can easily insert
15577         quotes “like this” by typing quotes ``like this'' (Bug#20545).
15578         * doc/emacs/basic.texi (Inserting Text):
15579         * doc/emacs/modes.texi (Minor Modes):
15580         * etc/NEWS: Document it.
15581         * doc/emacs/text.texi (Quotation Marks): New section.
15582         * lisp/electric.el (electric-quote-comment)
15583         (electric-quote-string, electric-quote-paragraph):
15584         New custom vars.
15585         (electric--insertable-p)
15586         (electric-quote-post-self-insert-function): New functions.
15587         (electric-quote-mode, electric-quote-local-mode): New minor modes.
15588         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15589         Add curved single quotes to electric-pair-text-pairs.
15590         Set electric-quote-string in this buffer.
15592         A few more doc string fixes (Bug#20385)
15594         Accept curved quotes in doc strings
15595         * lisp/info-look.el (info-lookup-guess-custom-symbol):
15596         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
15598         Generate curved quotes in pseudo-info nodes
15599         * lisp/info.el (Info-virtual-index-find-node)
15600         (Info-virtual-index, Info-apropos-find-node, info-apropos):
15601         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
15603         Fix minor quoting problems in doc strings
15604         Most of these fixes involve escaping grave accents that are
15605         actually intended to be grave accents, not left quotes.
15606         (Bug#20385)
15608         Support curved quotes in doc strings
15609         Emacs's traditional doc string style has been to quote symbols
15610         `like this'.  This worked well on now-obsolete terminals where
15611         ` and ' were symmetric quotes, but nowadays curved quotes
15612         ‘like this’ look better.  Support quoting the new way too.
15613         (Bug#20385)
15614         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
15615         ‘like-this’ as well as `like-this'.
15616         * etc/NEWS: Mention this.
15617         * lisp/cedet/mode-local.el (overload-docstring-extension)
15618         (mode-local-print-binding, mode-local-describe-bindings-2):
15619         * lisp/cus-theme.el (describe-theme-1):
15620         * lisp/descr-text.el (describe-text-properties-1, describe-char):
15621         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
15622         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
15623         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
15624         (eieio-help-constructor):
15625         * lisp/emacs-lisp/package.el (describe-package-1):
15626         * lisp/faces.el (describe-face):
15627         * lisp/help-fns.el (help-fns--key-bindings)
15628         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
15629         (help-fns--interactive-only, describe-function-1):
15630         (describe-variable):
15631         * lisp/help.el (describe-mode):
15632         * lisp/international/mule-cmds.el (describe-input-method)
15633         (describe-language-environment):
15634         * lisp/international/mule-diag.el (describe-character-set)
15635         (print-coding-system-briefly, list-input-methods)
15636         (list-input-methods-1):
15637         Insert curved quotes rather than grave accent and apostrophe.
15638         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
15639         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
15640         (checkdoc-proper-noun-region-engine):
15641         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
15642         (lisp-cl-font-lock-keywords-2):
15643         * lisp/finder.el (finder-font-lock-keywords):
15644         * lisp/gnus/gnus-art.el (gnus-button-alist):
15645         * lisp/help-fns.el (help-do-arg-highlight)
15646         (describe-function-1, describe-variable):
15647         * lisp/help-mode.el (help-xref-symbol-regexp)
15648         (help-xref-info-regexp, help-xref-url-regexp):
15649         * lisp/help.el (describe-mode):
15650         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
15651         * lisp/wid-edit.el (widget-documentation-link-regexp):
15652         Parse symbols quoted ‘like-this’ as well as `like-this'.
15653         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15654         Add "‘" and "’" to electric-pair-text-pairs.
15655         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
15656         (elisp-completion-at-point, elisp--preceding-sexp):
15657         Also treat "‘" and "’" as quoting chars.
15659         substitute-command-keys now curves quotes
15660         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
15661         * doc/lispref/help.texi (Keys in Documentation):
15662         * etc/NEWS: Document this.
15663         * src/doc.c (Fsubstitute_command_keys): Implement it.
15665 2015-05-28  Glenn Morris  <rgm@gnu.org>
15667         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
15668         (rmail-summary-by-topic, rmail-summary-by-senders):
15669         No longer strip leading/trailing whitespace.
15671         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
15672         (f90-no-block-limit): Add "enum".  (Bug#20680)
15673         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
15674         New tests.
15676 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15678         * lisp/isearch.el (isearch--current-buffer): Give a default value.
15679         Un-revert changes mistakenly dropped by f9fabb2b.
15681 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
15683         Merge from gnulib
15684         This incorporates:
15685         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
15686         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
15687         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
15688         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
15689         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
15690         2015-05-26 stdio: fix probe on mingw under gcc 5.1
15691         * admin/merge-gnulib (GNULIB_MODULES):
15692         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
15693         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
15694         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
15695         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
15696         Get latest versions from gnulib.
15697         * lib/get-permissions.c, lib/set-permissions.c: New files.
15698         * lib/gnulib.mk, m4/gnulib-comp.m4:
15699         Regenerate.
15700         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
15702 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
15704         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
15705         process here.
15706         (vc-do-command): Rather than here (bug#20608).
15708 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
15710         Avoid gratuitous delete-dups in face-at-point
15711         * lisp/faces.el (face-at-point): Do not compute the properly
15712         ordered, duplicate-free list if only a single value is
15713         requested anyway.  (Bug#20519)
15715         Show the exact C-x 8 RET invocation in describe-char
15716         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
15717         invocation instead of a template.  (Bug#20522)
15719 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15721         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
15722         (package-menu--post-refresh): Call `tabulated-list-print' with the
15723         UPDATE argument.  This only affects the refresh action, the revert
15724         action still erases tags.
15725         (package-menu-get-status): Change `assq' to `assoc'.
15726         (package-menu--mark-upgrades-1): New function.
15727         (package-menu--mark-upgrades-pending): New variable.
15728         (package-menu-mark-upgrades): Use them to delay marking until
15729         after refresh is done.
15730         (package-menu--post-refresh): Call mark-upgrades-1 if
15731         mark-upgrades-pending is non-nil.
15733 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
15735         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
15736         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
15737         (commit 3953c4be2816537be95520605d45b866dc731f4b).
15739 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15741         * lisp/isearch.el (isearch--current-buffer): New var.
15742         (isearch-update): Set cursor-sensor-inhibit here.
15743         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
15744         (bug#20532).
15746         Change inhibit-point-motion-hooks to t
15747         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
15748         to t and document it as obsolete.
15750 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
15752         Support ZIP files that use Zip64 extensions
15753         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
15754         format of central directory offsets used by Zip64 extensions.
15755         (Bug#20665)
15757 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
15759         New test tramp-test30-make-auto-save-file-name
15760         * test/automated/tramp-tests.el
15761         (tramp-test30-make-auto-save-file-name): New test.
15762         (tramp-test31-special-characters)
15763         (tramp-test31-special-characters-with-stat)
15764         (tramp-test31-special-characters-with-perl)
15765         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
15766         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
15767         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
15768         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
15770         Improve tramp-handle-make-auto-save-file-name
15771         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
15772         (tramp-handle-make-auto-save-file-name): Let native
15773         `make-auto-save-file-name' use `auto-save-file-name-transforms',
15774         if `tramp-auto-save-directory' is not set.
15776 2015-05-27  Glenn Morris  <rgm@gnu.org>
15778         No longer set dired-directory in eshell.  (Bug#16477)
15779         * lisp/eshell/esh-mode.el (eshell-mode):
15780         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
15782         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
15784         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
15785         * lisp/progmodes/cc-mode.el (c-mode-help-address):
15786         Change to submit@debbugs.
15787         (c-mode-bug-package): New constant.
15788         (mail-position-on-field): Declare.
15789         (c-submit-bug-report): Insert X-Debbugs-Package header.
15790         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
15791         Mention debbugs.gnu.org.
15793 2015-05-26  Glenn Morris  <rgm@gnu.org>
15795         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
15796         (rmail-summary-by-recipients, rmail-summary-by-topic)
15797         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
15798         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
15800 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
15802         Handle curved quotes in info files
15803         * lisp/calc/calc-help.el (calc-describe-thing):
15804         * lisp/info.el (Info-find-index-name)
15805         (Info-try-follow-nearest-node, Info-fontify-node):
15806         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
15807         In info files, process quotes ‘like this’ the same way we process
15808         quotes `like this'.  This catches a few places we missed earlier.
15810 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
15812         xref-prompt-for-identifier: Use a list value
15813         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
15814         value, to be interpreted as a list of commands.
15815         (xref--prompt-p): New function.
15816         (xref--read-identifier): Use it.
15818 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
15820         Teach MS-Windows font back-end return per-glyph ascent/descent
15821         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
15822         values.
15823         * src/w32font.c (w32font_text_extents): Compute, cache, and
15824         accumulate per-glyph ascent and descent values, instead of copying
15825         global values from the font.  If the values are not available from
15826         the font data, i.e., non-TTF fonts, fall back on font-global values.
15827         (compute_metrics): Compute and return per-glyph ascent and descent
15828         values, if returned by GetGlyphOutlineW, falling back on
15829         font-global values.  (Bug#20628)
15830         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
15831         height of rectangle to be drawn, to be compatible with
15832         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
15833         box, when per-glyph ascent/descent values are used.
15835 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
15837         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
15838         Don't sort if sorter is nil.
15840 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
15842         Fix Bug#20621
15843         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
15844         are major modes which set `auto-save-mode' on their own rules;
15845         Tramp shall not overwrite such settings.
15847 2015-05-26  Glenn Morris  <rgm@gnu.org>
15849         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
15850         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
15851         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
15852         Doc updates.
15853         (vc-dir-mode): Remove unnecessary autoload.
15855 2015-05-25  Philipp Stephani  <phst@google.com>
15857         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
15858         (xterm--extra-capabilities-type): Add `getSelection'.
15859         (xterm--query): Add `no-async' argument.
15860         (xterm--init-activate-get-selection): New function.
15861         (terminal-init-xterm): Use it.
15862         (xterm--init-modify-other-keys): Rename from
15863         terminal-init-xterm-modify-other-keys.
15864         (xterm--init-bracketed-paste-mode): Rename from
15865         terminal-init-xterm-bracketed-paste-mode.
15866         (xterm--init-activate-set-selection): Rename from
15867         terminal-init-xterm-activate-set-selection.
15868         (xterm--selection-char): New function.
15869         (gui-backend-set-selection): Use it.  Use the &context to only apply
15870         this method in terminals where we enabled the feature.
15871         (gui-backend-get-selection): New method.
15873 2015-05-25  Daniel Colascione  <dancol@dancol.org>
15875         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
15876         keyword constants to C++.
15878 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
15880         Make TAGS files more portable to MS-Windows
15881         * etc/NEWS: Document this.
15882         * lib-src/etags.c (readline_internal) [DOS_NT]:
15883         Don't treat CRs differently from GNUish hosts.
15884         * lisp/progmodes/etags.el (etags-goto-tag-location):
15885         Adjust STARTPOS to account for the skipped CRs in dos-style files.
15887 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15889         Improve fix of bug#20634 in tramp-sh.el
15891 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
15893         Fix a typo in last commit
15894         * lib-src/etags.c (C_entries): Fix a typo.
15895         * test/etags/ETAGS.good_1:
15896         * test/etags/ETAGS.good_2:
15897         * test/etags/ETAGS.good_3:
15898         * test/etags/ETAGS.good_4:
15899         * test/etags/ETAGS.good_5:
15900         * test/etags/CTAGS.good: Update due to the change in etags.c.
15902         Fix tagging of class members in C-like OO languages
15903         * lib-src/etags.c (longopts): Add new option --class-qualify and
15904         its shorthand -Q.
15905         (print_help): Add help text for --class-qualify.
15906         (main): Add handling of -Q.
15907         (consider_token, C_entries) <omethodparm>: Append argument types
15908         to Objective C methods only if --class-qualify was specified.
15909         Qualify C++, Objective C, and Java class members with their class
15910         names only if --class-qualify was specified.
15911         (C_entries): If --class-qualify was not specified, remove the
15912         namespace and class qualifiers from tag names of C++ methods.
15913         This allows to use etags.el as xref back-end without the
15914         tag-symbol-match-p method, which greatly increases the number of
15915         potentially false positives.  (Bug#20629)
15916         * doc/man/etags.1: Update to document the new --class-qualify
15917         option.
15918         * test/etags/ETAGS.good_1:
15919         * test/etags/ETAGS.good_2:
15920         * test/etags/ETAGS.good_3:
15921         * test/etags/ETAGS.good_4:
15922         * test/etags/ETAGS.good_5:
15923         * test/etags/CTAGS.good: Update due to changes in etags.c.
15925 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
15927         (cl-generic-define-method): Side effects are evil (bug#20644)
15928         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
15929         cons-cells that might be used as keys in an `equal' hash-table.
15931 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15933         Make erc timestamps visible again
15934         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
15935         Make timestamps visible again (if requested).
15937 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
15939         Fix last change in etags.c that broke tagging compresed files
15940         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
15941         quoting of decompression shell command for MS-Windows/MS-DOS.
15943 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
15945         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
15946         (Bug#20639)
15948 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15950         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
15951         Fix typo in "Inhibit `epa-file-handler' in Tramp"
15952         (commit 89035e247591c8d688fce922b7079881aa110f33).
15954 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
15956         Fix IPv6 addresses in Tramp
15957         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
15958         Add square brackets around host name.
15960 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15962         Inhibit `epa-file-handler' in Tramp (Bug#20634)
15963         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
15964         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
15965         `epa-file-handler'.
15967 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
15969         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
15970         (pcase-let): Document the behavior in case the pattern doesn't match.
15972 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15974         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
15975         (tabulated-list-print): New optional argument, UPDATE.  If
15976         non-nil, the list is printed by only adding and deleting the
15977         changed entries, instead of erasing the whole buffer.  This method
15978         is much faster when few or no entries have changed.
15979         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
15980         * etc/NEWS: Document it.
15982         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
15983         (tabulated-list--get-sorter): New function.
15984         (tabulated-list-print): Restore window-line when remember-pos is
15985         passed and optimize away the `nreverse'.
15987 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
15989         Simpilify etags TEX mode scanning
15990         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
15991         Remove static vars.
15992         (TeX_commands): Deduce escapes here instead.
15993         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
15994         This removes the need for a reset_input call.
15996         Improve etags I/O error reporting
15997         * lib-src/etags.c:
15998         Don't include sys/types.h and sys/stat.h; no longer needed.
15999         (infilename): New static var.
16000         (process_file_name): Don't call 'stat'.  Instead, just open the
16001         file for reading and report any errors.  Don't bother making
16002         a copy of the file argument; it's not needed.  Be more careful to
16003         use the failing errno when reporting an error.
16004         Quote the real name better (though no perfectly)
16005         when passing it to the shell.
16006         (reset_input): New function, which reports I/O errors.
16007         All uses of 'rewind' changed to use this function.
16008         (perhaps_more_input): New function, which also checks for
16009         I/O errors.  All uses of 'feof' changed to use this function.
16010         (analyze_regex): Report an error if fclose fails.
16011         (readline_internal): Report an error if getc fails.
16012         (etags_mktmp): Return an error if close fails.
16014         etags.c: avoid side effects in 'if'
16015         * lib-src/etags.c (process_file_name, Perl_functions)
16016         (TEX_decode_env): Hoist side effects into previous statement.
16018         .gitignore tweaks
16019         * .gitignore: Ignore all *.stamp files.  Sort.
16020         Ignore [0-9]*.txt (commonly used name for git patches)
16021         and /vc-dwim-log-* (vc-dwim temporary).
16023 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
16025         Fix last change in etags.c, which failed the test suite
16026         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
16027         before the last change.
16029 2015-05-23  Glenn Morris  <rgm@gnu.org>
16031         Remove charset map files from repository, generate in first bootstrap
16032         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
16033         (all): Create the stamp file.
16034         (extraclean): Delete the stamp file.
16035         * src/Makefile.in (lispintdir, charsets): New variables.
16036         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
16037         New rules.
16038         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
16039         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
16040         * etc/charsets/*.map: Remove from repository.
16042 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
16044         Cleanup etags.c to use locale-independent code
16045         Although this doesn't alter behavior (as etags doesn't use
16046         setlocale), the new version is more clearly locale-independent and
16047         the executable is a bit smaller on my platform.
16048         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
16049         Include <c-ctype.h> instead of <ctype.h>.
16050         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
16051         (begtk, midtk):
16052         Remove; no longer needed.
16053         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
16054         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
16055         c_islower, c_tolower, respectively.
16056         (notinname, begtoken, intoken, endtoken): Rewrite as functions
16057         instead of macros, and initialize the tables at compile-time
16058         rather than at run-time.
16060         Put default action first in src/Makefile
16061         * src/Makefile.in (all): Put this rule before lisp.mk.
16062         That way, plain 'make' works in the src directory again.
16064 2015-05-23  Glenn Morris  <rgm@gnu.org>
16066         * Makefile.in: Fix extraclean rule.
16067         (extraclean_dirs): New.
16068         (extraclean): Use it.
16070 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
16072         Avoid compiler warning in image.c on MS-Windows
16073         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
16074         warning in image.c.
16076 2015-05-23  Glenn Morris  <rgm@gnu.org>
16078         Fix --without-toolkit-scroll-bars builds.
16079         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
16080         Add new argument to x_clear_area1.
16081         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
16082         Update x_clear_area arguments.
16084         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
16085         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
16086         Change to included version.
16087         (LOCAL, local, totalclean): Remove.
16088         (extraclean): Delete all generated files.
16090 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
16092         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
16093         CVS/Entries exists.
16095         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
16097         * lisp/progmodes/etags.el (tags-completion-at-point-function):
16098         Don't trust the find-tag function.
16100 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
16102         Pacify --enable-gcc-warnings
16103         * src/frame.h (x_query_color): Remove redundant extern decl.
16104         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
16105         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
16106         (ftcrfont_text_extents, ftcrfont_draw):
16107         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
16108         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
16109         (x_ins_del_lines, frame_highlight, frame_unhighlight)
16110         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
16111         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
16112         (x_update_window_begin, x_connection_closed)
16113         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
16114         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
16115         (*x_gc_get_ext_data, x_extension_initialize)
16116         (x_cr_accumulate_data):
16117         Remove redundant static decl.  Many of these GCC doesn't complain
16118         about, but we might as well clean out the duplication while we're
16119         in the neighborhood.
16120         * src/xterm.c (x_fill_trapezoid_for_relief):
16121         Remove decl of nonexistent function.
16123 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
16125         Replace gui-method macros with cl-generic with &context
16126         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
16127         (gui-method-declare, gui-call): Remove.
16128         (frame-creation-function): Use cl-defgeneric.
16129         (make-frame): Adjust callers.
16130         * lisp/menu-bar.el (menu-bar-edit-menu):
16131         Use gui-backend-selection-exists-p.
16132         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
16133         (gui-backend-get-selection): New cl-generic to replace
16134         gui-get-selection method.
16135         (gui-backend-set-selection): New cl-generic to replace
16136         gui-set-selection method.
16137         (gui-selection-owner-p): New cl-generic to replace
16138         gui-selection-owner-p method.
16139         (gui-backend-selection-exists-p): New cl-generic to replace
16140         gui-selection-exists-p method.  Adjust all callers.
16141         * lisp/server.el (server-create-window-system-frame): Don't ignore
16142         window-system spec even when unsupported.
16143         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
16144         * lisp/startup.el (handle-args-function, window-system-initialization):
16145         Use cl-defgeneric.
16146         (command-line): Adjust calls accordingly.
16147         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
16148         a window-system-initialization method.
16149         (handle-args-function, frame-creation-function): Use cl-defmethod.
16150         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
16151         (gui-get-selection): Use cl-defmethod on the new functions instead.
16152         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
16153         a gui-backend-get-selection method.
16154         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
16155         Use cl-defmethod on the new functions instead.
16156         (msdos-window-system-initialization): Turn into
16157         a window-system-initialization method.
16158         (frame-creation-function, handle-args-function): Use cl-defmethod.
16159         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
16160         a window-system-initialization method.
16161         (handle-args-function, frame-creation-function): Use cl-defmethod.
16162         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
16163         (gui-get-selection): Use cl-defmethod on the new functions instead.
16164         * lisp/term/x-win.el (x-window-system-initialization): Turn into
16165         a window-system-initialization method.
16166         (handle-args-function, frame-creation-function): Use cl-defmethod.
16167         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
16168         (gui-get-selection): Use cl-defmethod on the new functions instead.
16169         * lisp/term/xterm.el (xterm--set-selection): Turn into
16170         a gui-backend-set-selection method.
16171         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
16172         (Fns_selection_owner_p): Remove unused arg `terminal'.
16173         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
16175 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
16177         Revert "Fix etags Bug#20629 that broke C++ support"
16178         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
16180 2015-05-23  Jan D  <jan.h.d@swipnet.se>
16182         Fix etags Bug#20629 that broke C++ support
16183         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
16184         Revert commit from Sun May 10 (Bug#20629).
16186         Merge branch 'cairo'.
16187         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
16188         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
16190         Merge branch 'master' into cairo
16192         Fixes to compile cairo branch without cairo
16193         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
16194         first argument.
16195         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
16196         USE_CAIRO.
16198 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
16200         * lisp/emacs-lisp/package.el: Always update selected-packages.
16201         (package--update-selected-packages): New function.
16202         (package-menu-execute): Use it before starting the transaction,
16203         this way the list of selected packages is updated even when the
16204         transaction fails.
16205         (package-menu--perform-transaction): Don't edit selected-packages.
16207 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
16209         Fix etags reading of compressed files
16210         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
16211         Include fcntl.h, for O_CLOEXEC.
16212         (process_file_name): Don't use 'popen', whose streams cannot be
16213         rewound.  Instead, uncompress the file to a temporary file,
16214         created by 'etags_mktmp', and read from that as usual.
16215         (etags_mktmp): New function.
16216         * test/etags/ETAGS.good_1:
16217         * test/etags/ETAGS.good_2:
16218         * test/etags/ETAGS.good_3:
16219         * test/etags/ETAGS.good_4:
16220         * test/etags/ETAGS.good_5: Update to be consistent with latest
16221         changes in etags.c regarding reading compressed files.
16223         Improve documentation of 'set-fontset-font'
16224         * doc/lispref/display.texi (Fontsets): Document the value of nil
16225         for the 3rd argument of 'set-fontset-font'.
16227         Fix documentation of forward-line
16228         * src/cmds.c (Fforward_line): Clarify the return value if the line
16229         at end of accessible portion of the buffer has no newline.
16230         * doc/lispref/positions.texi (Text Lines): Document what happens
16231         if the line at end of accessible portion of buffer has no newline.
16232         (Bug#20587)
16234 2015-05-22  Glenn Morris  <rgm@gnu.org>
16236         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
16238         * admin/charsets/mapconv (LC_ALL): Set to C.
16240         * Makefile.in: Add admin/charsets into top-level clean rules.
16241         (clean): Add admin/charsets.
16242         (maybeclean_dirs): New variable.
16243         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
16245         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
16247 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
16249         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
16251 2015-05-22  Glenn Morris  <rgm@gnu.org>
16253         Generate admin/charsets Makefile via configure, and make more portable
16254         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
16255         (admin/charsets/Makefile): Generate it.
16256         * admin/charsets/Makefile.in: Rename from Makefile.
16257         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
16258         New variables, set by configure.
16259         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
16260         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
16261         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
16262         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
16263         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
16264         (all): Declare PHONY.
16265         (local): New PHONY target.
16266         (map_template): New template.  Use to define short PHONY aliases.
16267         (*.map): Add directory prefixes to targets and prerequisites.
16268         Respect make verbosity.
16269         (JISC6226.map): Replace non-portable sed append without newline.
16270         (install): Remove rule.
16271         (clean): Only delete temporary sedscript.
16272         (bootstrap-clean, distclean, maintainer-clean, extraclean)
16273         (totalclean): New PHONY rules.
16274         * admin/charsets/mapconv (BASE): Replace basename with expr.
16275         (FILE): Add "mapfiles" subdirectory.
16276         (AWK): New variable.  Use throughout in place of "awk".
16277         (main): Use "gunzip -c" in place of "zcat".
16278         Don't leave whitespace before "p", for older sed.
16279         * admin/charsets/mapfiles/PTCP154: Add final newline,
16280         to make older sed versions happy.
16282 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
16284         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
16285         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
16286         (auto-revert-notify-watch-descriptor): Use defvar-local.
16287         (find-file-hook, auto-revert-tail-mode)
16288         (auto-revert-notify-add-watch): Use setq-local.
16289         (auto-revert-notify-add-watch): Don't call make-local-variable on
16290         kill-buffer-hook (bug#20601).
16292 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
16294         Change defgeneric so it doesn't completely redefine the function
16295         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
16296         previously defined methods.
16297         (cl-generic-define-method): Let-bind purify-flag instead of
16298         using `fset'.
16299         (cl--generic-prefill-dispatchers): Only define during compilation.
16300         (cl-method-qualifiers): Remove redundant alias.
16301         (help-fns-short-filename): Silence byte-compiler.
16302         * test/automated/cl-generic-tests.el:
16303         Adjust to new defgeneric semantics.
16305 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16307         * lisp/emacs-lisp/package.el (package-menu-execute):
16308         Remove reference to remove-dups.
16310 2015-05-21  kwhite  <kwhite@gnu.org>
16312         * lisp/erc/erc.el: Hide network/channel messages.
16313         (erc-network-hide-list, etc-channel-hide-list): New lists to define
16314         message types per network/channel.
16315         (erc-add-targets): New function to parse list of targets.
16316         (erc-hide-current-message-p): Modified to check for new targets.
16318 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
16320         Don't quote nil and t in doc strings
16321         This is as per "Tips for Documentation Strings" in the elisp manual.
16322         For consistency, do the same in diagnostics and comments.
16324 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
16326         Fix a minor problem with mouse-face on mode line
16327         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
16328         mouse face also if the mouse pointer hovers above mode-line glyphs
16329         that don't come from any Lisp string.  (Bug#20620)
16331 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16333         * lisp/emacs-lisp/package.el: Fix selected-package logic.
16334         (package-menu-execute): Mark as selected all non-upgrade packages
16335         being installed.
16336         (package-menu--perform-transaction): Don't mark anything.
16338         * lisp/emacs-lisp/package.el: Mode-line progress report.
16339         (package-menu--transaction-status): New variable.
16340         (package-menu-mode, package-menu--perform-transaction): Use it.
16342         * lisp/emacs-lisp/package.el: Better transaction messages.
16343         (package-menu--partition-transaction): New function.
16344         (package-menu--prompt-transaction-p, package-menu-execute):
16345         Use it.
16346         (package-menu--perform-transaction): Don't do any messaging.
16348         * lisp/emacs-lisp/package.el: Revert async package transactions.
16349         (package-menu-async): Update doc.
16350         (package-install-from-archive, package-download-transaction)
16351         (package-install, package-menu--perform-transaction)
16352         (package-menu-execute): Remove asynchronous functionality.
16354 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
16356         Revert doc string changes to f90.el
16357         Problem reported by Glenn Morris in:
16358         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
16359         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
16360         Revert recent changes to doc strings, as it's intended that they
16361         use grave accent, not quote.
16363 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
16365         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
16366         Improve parameter name.
16368         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
16370 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
16372         Don't require help-fns when not needed
16373         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
16374         * lisp/emacs-lisp/elint.el:
16375         Don't require help-fns at the top level
16376         * lisp/emacs-lisp/advice.el (ad-arglist):
16377         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
16378         Don't require help-fns.  (Bug#17001)
16380 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
16382         Fix slash collapsing in etags on MS-Windows
16383         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
16384         MS-Windows code from the Posix code, and support collapsing both
16385         forward- and back-slashes on MS-Windows.  Fixes a regression found
16386         by the test suite.
16388         Improve documentation of glyphless-char-display
16389         * doc/lispref/display.texi (Glyphless Chars): Improve
16390         documentation of glyphless character display.
16392         Fix "acronym" display of glyphless characters on w32
16393         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
16394         ignore "acronym" substitutes of 1 character for glyphless characters.
16396 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
16398         Add an automated test for let-when-compile
16399         * test/automated/subr-tests.el (let-when-compile): New test.
16401         Add let-when-compile macro instead of using pcase-let
16402         * lisp/subr.el (let-when-compile): New let-like macro that makes its
16403         bindings known to macros like `eval-when-compile' in the body.
16404         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
16405         a `let-when-compile'.  Also comment out the unused lexical var
16406         `el-kws-re'.
16407         The change greatly improves readability, while providing almost the
16408         same (even shorter) byte code: instead of pre-evaluating 10 variables,
16409         tossing them into a list, and destructuring that list a full screen
16410         page later, the variables are simply bound as they are evaluated,
16411         wrapped individually in `eval-when-compile'.
16413 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
16415         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
16416         (package-delete-button-action): New function.
16417         (describe-package-1): Add Delete button.
16419         * lisp/emacs-lisp/package.el: Better dependency description.
16420         (package--used-elsewhere-p): New optional arg, ALL, and return
16421         package-desc objects instead of names.
16422         (package-delete): Update accordingly.
16423         (describe-package-1): Describe which packages require the package.
16425 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
16427         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
16428         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
16429         Fix doc-string.
16431         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
16432         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
16433         (switch-to-buffer): If the selected window is strongly dedicated
16434         to its buffer, signal error before prompting for buffer name.
16435         Handle `switch-to-buffer-in-dedicated-window'.
16436         * doc/lispref/windows.texi (Switching Buffers):
16437         Document `switch-to-buffer-in-dedicated-window'.
16439 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16441         Prefer "this" to “this” in doc strings
16442         This mostly just straightens quotes introduced in my previous patch.
16443         Suggested by Dmitry Gutov in:
16444         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
16445         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
16446         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
16447         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
16448         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
16449         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
16450         Prefer straight double quotes to curved double quotes in doc strings.
16452         Fix minor quoting problems in doc strings
16453         These were glitches regardless of how or whether we tackle the
16454         problem of grave accent in doc strings.
16455         * lisp/calc/calc-aent.el (math-restore-placeholders):
16456         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
16457         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
16458         * lisp/leim/quail/hebrew.el ("hebrew-new")
16459         ("hebrew-biblical-sil"):
16460         * lisp/leim/quail/thai.el ("thai-kesmanee"):
16461         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
16462         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
16463         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
16464         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
16465         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
16466         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
16467         (semantic-tag-components):
16468         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
16469         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
16470         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
16471         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
16472         * lisp/emacs-lisp/generator.el (iter-next):
16473         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
16474         (gnus-article-mode-syntax-table):
16475         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
16476         * lisp/net/soap-client.el (soap-wsdl-get):
16477         * lisp/net/telnet.el (telnet-mode):
16478         * lisp/org/org-compat.el (org-number-sequence):
16479         * lisp/org/org.el (org-remove-highlights-with-change)
16480         (org-structure-template-alist):
16481         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
16482         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
16483         (handwrite-12pt, handwrite-13pt):
16484         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
16485         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
16486         * lisp/progmodes/verilog-mode.el (verilog-tool)
16487         (verilog-string-replace-matches, verilog-preprocess)
16488         (verilog-auto-insert-lisp, verilog-auto-insert-last):
16489         * lisp/textmodes/makeinfo.el (makeinfo-options):
16490         * src/font.c (Ffont_spec):
16491         Fix minor quoting problems in doc strings, e.g., missing quote,
16492         ``x'' where `x' was meant, etc.
16493         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
16494         Fix minor quoting problem in other string.
16495         * lisp/leim/quail/ethiopic.el ("ethiopic"):
16496         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
16497         Omit unnecessary quotes.
16498         * lisp/faces.el (set-face-attribute, set-face-underline)
16499         (set-face-inverse-video, x-create-frame-with-faces):
16500         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
16501         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
16502         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
16503         * lisp/net/tramp.el (tramp-methods):
16504         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
16505         * lisp/textmodes/artist.el (artist-ellipse-right-char)
16506         (artist-ellipse-left-char, artist-vaporize-fuzziness)
16507         (artist-spray-chars, artist-mode, artist-replace-string)
16508         (artist-put-pixel, artist-text-see-thru):
16509         * lisp/vc/ediff-util.el (ediff-submit-report):
16510         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
16511         Use double-quotes rather than TeX markup in doc strings.
16512         * lisp/skeleton.el (skeleton-pair-insert-maybe):
16513         Reword to avoid the need for grave accent and apostrophe.
16514         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
16515         Don't use grave and acute accents to quote.
16517 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
16519         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
16520         Silence compiler.
16522 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16524         Try to port new etags tests to MS-Windows
16525         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
16526         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
16527         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
16528         Adjust to test-case changes below.
16529         * test/etags/Makefile (CSRC): Remove dostorture.c.
16530         Whatever it was trying to test, wasn't working portably.
16531         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
16532         just a line-ending problem.
16533         * test/etags/c-src/dostorture.c: Remove.
16534         * test/etags/cp-src/c.C: Remove stray CR.
16535         * test/etags/html-src/algrthms.html: Remove trailing CRs.
16536         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
16537         but if someone edits it later it should stay UTF-8-compatible.
16539 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
16541         Fix display of overlapping window-specific overlays
16542         * src/keyboard.c (adjust_point_for_property): When adjusting point
16543         due to display strings, ignore overlays that are specific to
16544         windows other than the currently selected one.
16545         * src/xdisp.c (handle_single_display_spec): If the display
16546         property comes from an overlay, arrange for buffer iteration to
16547         resume only after the end of that overlay.  (Bug#20607)
16549 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
16551         New command icomplete-force-complete-and-exit
16552         * lisp/icomplete.el (icomplete-force-complete-and-exit):
16553         New command
16554         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
16555         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
16556         (icomplete-minibuffer-map): Bind C-j to it.
16557         (icomplete-forward-completions, icomplete-backward-completions):
16558         Mention the new command in the docstring.
16559         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
16560         Revert the previous fix for bug#17545.
16562 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
16564         Fix last commit
16566         In Elisp manual explain how to override window manager positioning
16567         (Bug#20552)
16568         * doc/lispref/frames.texi (Position Parameters): Give example of
16569         how to override a window manager positioning decision.
16571         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
16572         * src/frame.c (Fdelete_frame): In doc-string mention that frame
16573         can't be deleted if it has a surrogate minibuffer.
16574         * doc/lispref/frames.texi (Minibuffers and Frames)
16575         (Deleting Frames): Explain "surrogate minibuffer frames".
16577         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
16579 2015-05-18  Glenn Morris  <rgm@gnu.org>
16581         Add option to ignore commit lines matching a pattern in ChangeLog
16582         * build-aux/gitlog-to-changelog: Add --ignore-line option.
16583         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
16585 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
16587         Don't skip new etags tests on non-UTF-8 hosts
16588         Problem reported by Eli Zaretskii for MS-Windows.
16589         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
16590         (LC_ALL): Set to C if the current locale isn't UTF-8.
16591         (.PHONY): Remove ediff_1 thru ediff_5.
16592         (check): Always run.
16594 2015-05-18  Glenn Morris  <rgm@gnu.org>
16596         * lisp/calculator.el (calculator-funcall):
16597         * lisp/textmodes/artist.el (artist-spray-random-points):
16598         Use standard degree/radian conversion utilities.
16600         Further lisp-complete-symbol related cleanup.
16601         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
16602         Unadvertise non-functional argument.  Replace obsolete alias.
16604 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
16606         Add a test case for Maven warning ouput
16607         * test/automated/compile-tests.el
16608         (compile-tests--test-regexps-data): Add a case for Maven warning
16609         ouput.
16610         (compile--test-error-line): Check the compilation message type, if
16611         it's specified in the test data.
16613 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
16615         Update Maven compilation-mode entry to distinguish warnings
16616         * lisp/progmodes/compile.el
16617         (compilation-error-regexp-alist-alist): Update Maven entry to
16618         distinguish warnings (bug#20556).
16620 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
16622         * test/automated/sgml-mode-tests.el: New file.
16624 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
16626         Improve handling of the first Git revision
16627         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
16628         there's no next entry, delete until the end of the buffer.
16629         (log-view-end-of-defun-1): Stop at eob.
16630         * lisp/vc/vc-annotate.el
16631         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
16632         when previous-revision is nil.
16633         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
16634         with `--' to avoid ambiguity.
16635         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
16636         returned revision string.
16637         (vc-git-annotate-time): Expect `^' before the first revision.
16638         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
16639         REV1 is nil, and REV2 is not.
16640         * lisp/vc/vc.el: Update the description of the `diff' function.
16642 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
16644         Allow checkdoc to be called in batch
16645         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
16646         is non-nil, echo the error with `warn'.
16647         How it can be used in -batch:
16648         (with-current-buffer (find-file "checkdoc.el")
16649           (checkdoc-current-buffer t))
16651 2015-05-18  Glenn Morris  <rgm@gnu.org>
16653         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
16655 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
16657         * admin/notes/unicode: New section "binary files".
16659         Change new etags test to use UTF-8 encoding
16660         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
16661         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
16662         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
16663         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
16664         * test/etags/html-src/softwarelibero.html:
16665         Switch to UTF-8 encoding.
16666         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
16667         Remove Makefile, as it's too incestuous to have the test input
16668         include the build procedure.
16669         (UTF8_LOCALE, UTF_ENCODING): New macros.
16670         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
16671         (check): Skip if not UTF-8.
16672         (.PHONY): New rule.
16673         (FRC): Remove, as superseded by .PHONY.  All uses removed.
16674         (regexfile): Prefer printf to echo when outputting oddball chars.
16675         (.PRECIOUS): Remove, as these files are not built.
16677         Rename 'foo-gzipped' to 'foo.gz'
16678         * test/automated/data/decompress/foo.gz:
16679         Rename from test/automated/data/decompress/foo-gzipped,
16680         to make it easier for other tools to tell that it's compressed.
16681         * test/automated/zlib-tests.el (zlib--decompress):
16682         Adjust to renamed file.
16684 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
16686         Set up default-directory
16687         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
16688         binding for `v'.
16689         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
16690         appropriate value for default-directory.
16692 2015-05-17  Samer Masterson  <samer@samertm.com>
16694         * lisp/eshell/em-term.el (eshell-term-sentinel):
16695         No-op by default, only kills term buffer if
16696         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
16697         (eshell-destroy-buffer-when-process-dies): New custom to preserve
16698         previous behavior.
16700         eshell: Introduce new buffer syntax
16701         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
16702         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
16703         needed (Bug#19319).
16704         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
16705         (eshell-get-target): Remove shorthand-specific code.
16706         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
16707         '#<buffer-name>'.
16709 2015-05-17  Jan D  <jan.h.d@swipnet.se>
16711         Merge branch 'master' into cairo
16713 2015-04-26  Jan D  <jan.h.d@swipnet.se>
16715         Merge branch 'master' into cairo
16717         Add PBM support for cairo
16718         * src/image.c (xcolor_to_argb32): New function.
16719         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
16720         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
16721         XImagePtr if ! USE_CAIRO.
16722         (pbm_load): Add cairo support.
16724 2015-04-12  Jan D  <jan.h.d@swipnet.se>
16726         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
16727         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
16728         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
16729         x_free_cr_resources.
16731         Handle specified bg in images.  Use generic libpng code for PNGs.
16732         * src/image.c (get_spec_bg_or_alpha_as_argb)
16733         (create_cairo_image_surface): New functions when USE_CAIRO.
16734         (xpm_load): Call the above functions.  Handle XPM without mask
16735         when USE_CAIRO.
16736         (png_load_body): Handle USE_CAIRO case.
16737         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
16738         instead.
16739         (jpeg_load_body): Call create_cairo_image_surface.
16740         (gif_load, svg_load_image): Handle specified background, call
16741         create_cairo_image_surface.
16742         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
16744 2015-04-11  Jan D  <jan.h.d@swipnet.se>
16746         Support GIF and TIFF with cairo
16747         * configure.ac: Allow jpeg with cairo.
16748         Allow tiff and gif with cairo.
16749         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
16750         (tiff_load): Create cairo image surface if USE_CAIRO.
16751         (gif_load): Ditto.
16753         Support JPEG with USE_CAIRO
16754         * configure.ac: Allow jpeg with cairo.
16755         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
16757 2015-04-05  Jan D  <jan.h.d@swipnet.se>
16759         Support RSVG and cairo
16760         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
16761         * src/dispextern.h (struct image): Add cr_data2 if cairo.
16762         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
16763         (x_clear_image): Free cr_data and cr_data2 if set.
16764         (xpm_load): Assign data to cr_data2.
16765         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
16767 2015-04-03  Jan D  <jan.h.d@swipnet.se>
16769         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
16770         * configure.ac (HAVE_RSVG): Move after cairo.
16771         (USE_CAIRO): Disable rsvg, don't disable Xpm.
16772         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
16773         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
16774         don't return early.
16775         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
16776         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
16777         and create a surface.
16779         Tool tips for menus did not show any text.
16780         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
16781         tip frames, the geometry may be wrong.
16783         Merge branch 'master' into cairo, fixes tooltips not shown.
16785         Merge branch 'master' into cairo
16787         Add CAIRO_CFLAGS to lwlib/Makefile.in
16788         * Makefile.in (CAIRO_CFLAGS): Add.
16790 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16792         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
16794 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16796         Draw outermost line using black relief and erase corners also for cairo.
16797         * src/xterm.c [USE_CAIRO]: Include math.h.
16798         (enum corners) [USE_CAIRO]: New enum.
16799         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
16800         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
16801         than 1, draw the outermost line using the black relief.
16803         * src/xterm.c (x_fill_trapezoid_for_relief):
16804         Remove unnecessary cairo_close_path.
16806 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16808         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
16810         * src/xterm.c (x_draw_stretch_glyph_string):
16811         Call x_reset_clip_rectangles instead of XSetClipMask.
16813         Use int instead of unsigned int for width and height args.
16814         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
16815         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
16816         width and height args.
16818         Modernize k&r cairo-related function declarations.
16819         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
16820         (xg_print_frames_dialog): Modernize k&r declarations.
16821         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
16822         (Fx_print_frames_dialog): Modernize k&r declarations.
16823         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
16824         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
16825         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
16826         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
16827         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
16828         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
16829         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
16830         (x_clear_area): Modernize k&r declarations.
16832         Implement wave-style variant of underlining for cairo.
16833         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
16834         (x_draw_underwave) [USE_CAIRO]: Use it.
16836         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
16837         instead of XFillRectangle.
16839 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16841         Fix fringe bitmap initialization for cairo
16842         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
16843         data for cairo image surface.
16844         * src/xterm.c (x_cr_define_fringe_bitmap):
16845         Call cairo_surface_mark_dirty.
16847 2015-02-11  Jan D  <jan.h.d@swipnet.se>
16849         Add cairo drawing
16850         * configure.ac (with-cairo): New option.
16851         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
16852         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
16853         Output "Does Emacs use cairo?".
16854         * lisp/version.el (emacs-version): Add cairo version.
16855         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
16856         (FONT_OBJ): Add comment about ftcrfont.
16857         (ALL_CFLAGS): Add CAIRO_CFLAGS.
16858         (LIBES): Add CAIRO_LIBS.
16859         * src/dispextern.h (struct image): Add cr_data for cairo.
16860         (x_cr_init_fringe): Declare.
16861         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
16862         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
16863         * src/fringe.c (x_cr_init_fringe): New function name that shares code
16864         with w32_init_fringe.
16865         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
16866         * src/ftfont.c (ftfont_info_size); New global variable.
16867         (ftfont_open2): New extern function almost the same as old ftfont_open,
16868         but takes the font_object as argument.
16869         (ftfont_open): Build font object and call ftfont_open2.
16870         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
16871         * src/gtkutil.c (xg_clear_under_internal_border)
16872         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
16873         Only queue_draw if not cairo.  Change args to x_clear_area.
16874         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
16875         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
16876         (xg_print_frames_dialog): New functions for printing.
16877         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
16878         (xg_print_frames_dialog): Declare.
16879         * src/image.c: Add defined (USE_CAIRO) for PNG.
16880         Add !defined USE_CAIRO for W32 PNG code.
16881         (x_clear_image): If cairo, destroy the surface in cr_data.
16882         (png_load): Add new cairo compatible implementation.
16883         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
16884         * src/xfns.c: New section Printing.
16885         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
16886         (x-print-frames-dialog): New printing functions.
16887         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
16888         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
16889         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
16890         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
16891         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
16892         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
16893         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
16894         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
16895         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
16896         Declare.
16897         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
16898         (max_fringe_bmp, fringe_bmp): New variables.
16899         (x_gc_get_ext_data, x_extension_initialize)
16900         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
16901         (x_set_cr_source_with_gc_foreground)
16902         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
16903         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
16904         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
16905         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
16906         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
16907         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
16908         (x_update_begin): Create cairo surface if needed.
16909         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
16910         (x_update_end): Paint cairo drawing surface to xlib surface.
16911         (x_clear_under_internal_border, x_after_update_window_line): Adjust
16912         arguments to x_clear_area.
16913         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
16914         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
16915         of XSetClipMask.
16916         (x_set_glyph_string_clipping)
16917         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
16918         instead of XSetClipRectangles.
16919         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
16920         Use x_fill_rectangle instead of XFillRectangle.
16921         (x_draw_glyph_string_foreground)
16922         (x_draw_composite_glyph_string_foreground)
16923         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
16924         instead of XDrawRectangle.
16925         (x_draw_relief_rect): Add code for USE_CAIRO.
16926         Call x_reset_clip_rectangles instead of XSetClipMask.
16927         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
16928         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
16929         instead of XSetClipMask.
16930         (x_draw_image_foreground, x_draw_image_foreground_1):
16931         x_draw_rectangle instead of XDrawRectangle.
16932         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
16933         XFillRectangle.
16934         (x_draw_image_glyph_string): If img has cr_data, use it as
16935         a cairo surface.
16936         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
16937         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
16938         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
16939         x_reset_clip_rectangles instead of XSetClipMask.
16940         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
16941         (x_clear_area1): New function that calls XClearArea.
16942         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
16943         non-cairo.
16944         (x_clear_frame): x_clear_window instead of XClearWindow.
16945         (x_scroll_run): Set frame garbaged if cairo.
16946         (XTmouse_position): Initialize *part to 0.
16947         (x_scroll_bar_create): Adjust arguments to x_clear_area.
16948         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
16949         x_fill_rectangle instead of XFillRectangle.
16950         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
16951         arguments to x_clear_area.
16952         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
16953         (handle_one_xevent): Adjust arguments to x_clear_area.
16954         Destroy cairo surface for frame if ConfigureNotify.
16955         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
16956         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
16957         x_reset_clip_rectangles instead of XSetClipMask.
16958         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
16959         x_reset_clip_rectangles instead of XSetClipMask.
16960         (x_clear_frame_area): Adjust arguments to x_clear_area.
16961         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
16962         (x_term_init): Call x_extension_initialize if cairo.
16963         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
16964         x_cr_destroy_fringe_bitmap for cairo.
16965         (x_initialize): Call x_cr_init_fringe for cairo.
16966         * src/xterm.h: Add include of cairo header files.
16967         (x_bitmap_record): Add img if cairo.
16968         (x_gc_ext_data): New struct for cairo.
16969         (x_display_info): Add ext_codes for cairo.
16970         (x_output): Add cr_context and cr_surface for cairo.
16971         (x_clear_area): Change arguments from Display*/Window to frame pointer.
16972         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
16973         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
16974         (x_cr_draw_frame, x_cr_export_frames): Declare.
16976 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
16978         Fix integer-valued `mouse-highlight' (Bug#20590)
16979         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
16981 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
16983         MS-Windows followup for ASCIIfication of curved quotes
16984         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
16985         test for curved quotes being displayable, after switching the
16986         terminal encoding.  (Bug#20545)
16988 2015-05-17  Jan D  <jan.h.d@swipnet.se>
16990         Add comment that x_shift_glyphs_for_insert is never called
16991         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
16992         Add comment that this function is never called.
16994 2015-05-16  Glenn Morris  <rgm@gnu.org>
16996         * src/lisp.mk: Remove from repository and generate at build-time.
16997         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
16998         (shortlisp_filter): New variable.
16999         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
17000         (distclean): Remove lisp.mk.
17001         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
17002         * lisp/loadup.el: Tweak layout to make it easier to parse.
17003         * make-dist: Do not distribute src/lisp.mk.
17005 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
17007         Display shorter dates in Git annotate output
17008         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
17009         format (when not overridden with vc-git-annotate-switches).
17010         (vc-git-annotate-time): Support the short format, as well as ISO
17011         8601 that has been used until now (bug#5428).
17013 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
17015         ASCIIfy curved quotes on displays lacking them
17016         * lisp/international/mule-cmds.el (set-locale-environment):
17017         If curved quotes don't work, display straight ASCII approximations
17018         (Bug#20545).
17020 2015-05-16  Glenn Morris  <rgm@gnu.org>
17022         Small src/Makefile simplification
17023         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
17024         * src/Makefile.in (lisp): Derive from shortlisp.
17025         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
17027 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
17029         * lisp/help-mode.el (help-go-forward): Doc fix.
17030         (Bug#20577)
17032         * doc/lispref/debugging.texi (Profiling): Improve indexing.
17033         (Bug#20576)
17035 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
17037         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
17038         have one fewer `not'.
17040         * lisp/vc/vc-git.el (vc-git-diff-switches)
17041         (vc-git-annotate-switches, vc-git-resolve-conflicts)
17042         (vc-git-program, vc-git-root-log-format): Remove the redundant
17043         :group declarations.
17045 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
17047         Removes the predicate from lisp-complete-symbol (Bug#20456)
17048         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
17049         and remove it from the docstring.
17051 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
17053         Add new option vc-git-resolve-conflicts
17054         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
17055         (vc-git-find-file-hook): Add to after-save-hook only when the
17056         above is non-nil.
17057         (vc-git-resolve-when-done): Update to honor the new variable.
17058         (Bug#20292)
17060 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
17062         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
17063         (tabulated-list-init-header): Document new behavior.
17064         (tabulated-list-print-fake-header): Do nothing if
17065         `tabulated-list--header-string' is nil.
17066         (tabulated-list--header-string): Add a docstring.
17067         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
17068         * etc/NEWS: Document it.
17070 2015-05-15  Leo Liu  <sdl.web@gmail.com>
17072         Revert "Fix cps--gensym"
17073         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
17074         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
17076 2015-05-15  Glenn Morris  <rgm@gnu.org>
17078         Replace AC_SUBST_FILE in configure with include in Makefiles
17079         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
17080         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
17081         (AUTO_DEPEND): New output variable.
17082         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
17083         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
17084         (lwlib_deps_frag): Replace by conditional include.
17085         * lwlib/autodeps.mk: Remove file.
17086         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
17087         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
17088         (oldxmenu_deps_frag): Replace by conditional include.
17089         * oldXMenu/autodeps.mk: Remove file.
17090         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
17091         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
17092         (lisp_frag): Replace by an include.
17093         (deps_frag): Replace by conditional include.
17094         * src/autodeps.mk: Remove file.
17096         Tweak japanese.el's loading of dependencies
17097         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
17098         * lisp/language/japanese.el: Use require rather than load.
17099         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
17100         Provide a feature.
17101         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
17102         Provide a feature in the generated file.
17104 2015-05-15  Jan D  <jan.h.d@swipnet.se>
17106         Fix NS warnings
17107         * src/nsmenu.m (ns_popup_dialog)
17108         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
17109         * src/nsfns.m (Fx_create_frame): Remove unused variables.
17110         (Fns_read_file_name): Initialize fname, remove ret.
17111         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
17112         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
17113         Remove unused variable.
17114         (init): Add parantesis in if.
17115         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
17117 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
17119         Fix a enum conversion warning in macfont.m
17120         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
17121         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
17123 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
17125         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
17126         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
17128 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
17130         * lisp/cus-start.el: Add ns-confirm-quit.
17132         Fix warnings on OSX 10.10
17133         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
17134         OSX versions.
17135         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
17136         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
17137         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
17138         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
17139         setScalesWhenResized for OSX < 10.6.
17140         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
17141         * src/nsterm.m (ns_copy_bits): New function that does not use
17142         deprecated NSCopyBits.
17143         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
17144         (runAlertPanel): New function.
17145         (applicationShouldTerminate:): Call runAlertPanel.
17146         (initFrameFromEmacs, toggleFullScreen:): Only call
17147         useOptimizedDrawing for OSX < 10.10.
17148         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
17149         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
17150         (draggingEntered:): Returns NSDragOperation.
17151         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
17153 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
17155         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
17156         (package--init-file-ensured): New variable.
17157         (package-initialize, package--ensure-init-file): Use it.
17159 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
17161         Honor :fore/background for XBM on NS (Bug#14969)
17162         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
17163         initFromXBM takes bg, fg args, remove flip arg.
17164         (ns_image_from_XBM): Add bg, fg args.
17165         * src/image.c (x_create_bitmap_from_data)
17166         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
17167         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
17168         initFromXBM.  Remove flip arg.
17169         (initFromSkipXBM): Move code to initFromXBM.
17170         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
17171         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
17172         always false.
17173         Remove bit flipping (bitPat, swt), generated incorrect images when
17174         width/height wasn't a multiple of 8.
17175         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
17176         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
17177         remove flip arg.
17179 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
17181         * lisp/emacs-lisp/package.el: Be more careful with the init file.
17182         (package--ensure-init-file): Check that user-init-file is set,
17183         exists, is readable, and is writable.  (Bug#20584)
17184         Also expand the docstring.
17186 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
17188         Sync with upstream verilog-mode revision 6232468
17189         * lisp/progmodes/verilog-mode.el
17190         (verilog-font-lock-grouping-keywords-face)
17191         (verilog-highlight-grouping-keywords): Fix use of face when
17192         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
17193         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
17194         parent is reset, bug906.  Reported by Ken Schmidt.
17195         (verilog-auto-inout-module): Add fourth regexp argument to
17196         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
17197         Reported by John Tillema.
17198         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
17199         modport if signal attachment is itself a modport.  Reported by
17200         Matthew Lovell.
17201         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
17202         always_comb and always_latch, bug844.  Reported by Greg Hilton.
17203         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
17204         with many curly-bracket pairs, bug663.
17205         (verilog-set-auto-endcomments): Fix end comments for functions of
17206         type void, etc.  Reported by Alex Reed.
17207         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
17208         caused by indent-line-to deleting tabls pre 24.5.
17209         (verilog-nameable-item-re): Fix nameable items that can have an
17210         end-identifier to include endchecker, endgroup, endprogram,
17211         endproperty, and endsequence.  Reported by Alex Reed.
17212         (verilog-label-be): When auto-commenting a buffer, consider
17213         auto-comments on all known keywords (not just a subset thereof).
17214         Reported by Alex Reed.
17215         (verilog-auto-end-comment-lines-re)
17216         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
17217         Automatically comment property/endproperty blocks to match other
17218         similar blocks like sequence/endsequence, function/endfunction, etc.
17219         Reported by Alex Reed.
17220         (verilog-set-auto-endcomments): Detect the function- or task-name
17221         when auto-commenting blocks that lack an explicit portlist.
17222         Reported by Alex Reed.
17223         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
17224         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
17225         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
17226         is nil, fix indenting initial/final to match always statements,
17227         bug825.  Reported by Tim Clapp.
17228         (verilog-extended-complete-re): Fix indentation of DPI-C imports
17229         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
17230         Mao and Jason Forkey.
17231         (verilog-read-decls): Fix parsing typed interfaces.  Fix
17232         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
17233         Fix localparam not being ignored in AUTOINSTPARAM,
17234         bug889.  Reported by Shannon Hill.
17235         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
17236         bug793.  Reported by Pierre-David Pfister.
17237         (verilog-auto-arg-format, verilog-auto-arg-ports):
17238         Add verilog-auto-arg-format to support newlines in AUTOARG.
17239         Reported by Jie Xiao.
17240         (verilog-batch-execute-func): Do not batch re-auto files loaded by
17241         Local Variables.  Fix printing "no changes to be saved" with
17242         verilog-batch.  Reported by Dan Dever.
17243         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
17244         interface-only modules, bug721.  Reported by Dean Hoyt.
17245         Author: Alex Reed <acreed4@gmail.com>
17246         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
17247         Don't treat '<keyword>:<identifier>' as the start of a labeled
17248         statement, bug905.  Reported by Enzo Chi.
17249         (verilog-directive-re, verilog-compiler-directives)
17250         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
17251         directives (plus some extras) when determining indentation, bug
17252         901.  Reported by Bernd Beuster.
17253         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
17254         iff expression doesn't start with word-character, bug900.
17255         (verilog-optional-signed-range-re, verilog-optional-signed-re):
17256         Fix incorrect indentation/alignment of unsigned declarations,
17257         bug897.
17258         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
17259         always constructs, bug895.
17260         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
17261         Reported by Eric Mastromarchi.
17262         (verilog-beg-of-statement): Fix indenting for some forms of
17263         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
17264         continued assignment incorrect if first line ends with ']', bug437.
17265         Reported by Dan Dever.  Fix indention of cover inside an
17266         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
17267         blocks, bug842.
17268         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
17269         Reported by Kaushal Modi.
17270         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
17271         (verilog-backward-token): Fix indenting sensitivity lists with
17272         named events, bug840.  Reed.
17273         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
17274         nil not honoring 'forever', 'foreach', and 'do' keywords.
17276 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
17278         Check for invalid GTK+ monitor scales
17279         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
17280         INT_MAX for too-large scales.  All callers changed to assume the
17281         result is valid (Bug#20432).
17282         (xg_frame_set_char_size, xg_update_scrollbar_pos):
17283         Calculate scale only if needed.
17284         Show ASCII approximations instead.
17286 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
17288         Fix daemon crashes when linum-mode is turned on early on
17289         * src/window.c (Fwindow_end): Don't try calling display engine
17290         functions on initial-frame frame.  (Bug#20565)
17292         Fix selective diff browsing in Ediff
17293         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
17294         Go to the beginning of the region before searching for the
17295         ediff-regexp-focus-* regexps.  (Bug#20568)
17297 2015-05-14  Jan D  <jan.h.d@swipnet.se>
17299         Fixes bug#20142
17300         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
17301         arrive in the main loop, even for Gtk 3 (Bug#20142).
17303         Don't access display after i/o error (Bug#19147).
17304         * src/xterm.c (x_connection_closed): Add third arg ioerror.
17305         If ioerror, set display to 0 (Bug#19147).
17306         (x_error_quitter): Call x_connection_closed with third arg false.
17307         (x_io_error_quitter): Call x_connection_closed with third arg true.
17309         Handle GTK_SCALE, fixes Bug#20432.
17310         * src/gtkutil.c (xg_get_gdk_scale): New function.
17311         (xg_frame_set_char_size)
17312         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
17313         (xg_get_default_scrollbar_height)
17314         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
17315         when setting sizes (Bug#20432).
17317 2015-05-13  Leo Liu  <sdl.web@gmail.com>
17319         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
17321 2015-05-13  Glenn Morris  <rgm@gnu.org>
17323         Fix bootstrap (void function cl-member).
17324         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
17325         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
17327 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17329         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
17330         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
17331         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
17332         Avoid defalias for closures which are not immutable.
17333         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
17334         the dispatchers table with various entries.
17335         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
17336         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
17338 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
17340         Improve tagging of C bindings in DEFVAR_*
17341         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
17342         from DEFVAR_*.
17344 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
17346         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
17348 2015-05-12  Glenn Morris  <rgm@gnu.org>
17350         * lisp/progmodes/tcl.el (tcl-filter):
17351         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
17353         Add basic VC push support
17354         * lisp/vc/vc.el (vc-push): New autoloaded command.
17355         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
17356         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
17357         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
17358         (vc-bzr-push): New.
17359         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
17360         (vc-git-pull): Reimplement using vc-git--pushpull.
17361         (vc-git-push): New.
17362         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
17363         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
17364         * doc/emacs/maintaining.texi (Pulling / Pushing):
17365         Rename from "VC Pull".  Mention pushing.
17366         (VC With A Merging VCS, VC Change Log): Update xrefs.
17367         (Branches): Update menu.
17368         * doc/emacs/emacs.texi: Update menu.
17369         * etc/NEWS: Mention this.
17371 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
17373         Improve the seq pcase pattern and the `seq-let' macro
17374         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
17375         object is a sequence, and binds each element of ARGS to the
17376         corresponding element of the sequence.
17378 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
17380         Fix tags created from DEFVAR_* declarations in C
17381         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
17382         to make tags extracted from DEFVAR_* declarations more accurate.
17384         Add a test suite for etags
17385         * test/etags/: New test suite, adapted from
17386         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
17387         whose original author is Francesco Potortì <pot@gnu.org>.
17389         Fix tagging of symbols in C enumerations
17390         * lib-src/etags.c (consider_token): Don't tag symbols in
17391         expressions that assign values to enum constants.  See
17392         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
17393         for details.
17394         (C_entries): Reset fvdef to fvnone after processing a preprocessor
17395         conditional and after a comma outside of parentheses.
17397 2015-05-12  Glenn Morris  <rgm@gnu.org>
17399         * lisp/url/url-handlers.el (url-file-name-completion)
17400         (url-file-name-all-completions): Silence compiler.
17402         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
17404         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
17406 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
17408         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
17409         (cl--generic-mandatory-args): Remove.
17410         (cl--generic-split-args): New function.
17411         (cl-generic-define, cl--generic-lambda): Use it.
17412         (cl-generic-define-method): Use it as well, and add support for
17413         context args.
17414         (cl--generic-get-dispatcher): Handle &context dispatch.
17415         (cl--generic-cache-miss): `dispatch-arg' can now be a
17416         context expression.
17417         (cl--generic-dispatchers): Pre-fill.
17418         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
17419         New test.
17421 2015-05-11  Glenn Morris  <rgm@gnu.org>
17423         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
17425 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
17427         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
17428         * lisp/term/rxvt.el: Require term/xterm.
17429         (rxvt-function-map): Use xterm-rxvt-function-map.
17430         (rxvt-standard-colors): Move before first use.
17431         (terminal-init-rxvt): Use xterm--push-map and
17432         xterm-register-default-colors.
17433         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
17434         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
17435         Move shared bindings between rxvt and xterm to it.
17436         (xterm-function-map): Use it.  Move the xterm-paste binding to
17437         xterm-rxvt-function-map (bug#20444).
17438         (xterm-standard-colors): Move before first use.
17439         (xterm--push-map): New function.
17440         (xterm-register-default-colors): Take standard colors as argument.
17441         (terminal-init-xterm): Use it.  Adjust call to
17442         xterm-register-default-colors.
17444 2015-05-11  Glenn Morris  <rgm@gnu.org>
17446         * lisp/term/x-win.el: Quieten --without-x compilation.
17447         (x-own-selection-internal, x-disown-selection-internal)
17448         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
17449         Declare.
17451         * Makefile.in (emacslog): Remove srcdir.
17452         (ChangeLog): Update for the above.
17454 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17456         python.el: better limit for looking-back calls
17457         * lisp/progmodes/python.el (python-shell-accept-process-output):
17458         Use last comint prompt start as limit for looking-back.
17460 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
17462         CEDET (srecode-insert-fcn): Fix use of oref on a class
17463         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
17464         on a class.  Reported by Pierre Lorenzon.
17465         (srecode-template-inserter-point): Remove declaration.
17467         CEDET (srecode-create-dictionary): Avoid obsolete object name
17468         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
17469         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
17471 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
17473         C-x 8 shorthands for curved quotes, Euro, etc.
17474         Although C-x 8 lets you insert arbitrary Unicode characters,
17475         it's awkward to use this to insert commonly used symbols such as curved
17476         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
17477         characters commonly found in English text and in basic math.
17478         For example, assuming the Alt key works on your keyboard and iso-transl
17479         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
17480         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
17481         (Bug#20499)
17482         * doc/emacs/mule.texi (Unibyte Mode):
17483         A few other printing characters now work too.
17484         * etc/NEWS: Document this.
17485         * lisp/international/iso-transl.el (iso-transl-char-map):
17486         Also support the following characters:
17487         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
17489 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
17491         Add xref-find-regexp
17492         * lisp/progmodes/xref.el (xref-find-function): Describe the
17493         `matches' action.
17494         (xref-find-regexp): New command, using it.
17495         (xref-collect-references): Rename to xref-collect-matches.
17496         (xref--collect-reference): Rename to xref--collect-match.
17497         (xref-collect-matches, xref--collect-match): Accept new argument,
17498         KIND.  Update accordingly.
17499         (xref--regexp-to-extended): New function.
17500         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
17501         `matches' action.
17502         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
17503         * lisp/progmodes/etags.el (etags-xref-find):
17504         Support the `matches' action.
17505         (etags--xref-find-matches): New function.
17507 2015-05-10  Glenn Morris  <rgm@gnu.org>
17509         * Makefile.in: Fixes for recent change-history changes.
17510         (change-history-nocommit): Update footer regexp.
17511         Ensure output script stays executable.
17513 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
17515         New version of `seq-let' based on a pcase pattern
17516         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
17517         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
17519 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
17521         Add basic HTML5 tags and a template
17522         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
17523         (html-tag-alist): Add HTML5 tags.
17524         (html-tag-help): Add new tags descriptions.
17525         (html-navigational-links): Template for nav links.
17526         (html-html5-template): Template for a HTML5 page.
17528 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
17530         semantic/symref/grep: Don't use word boundaries
17531         * lisp/cedet/semantic/symref/grep.el
17532         (semantic-symref-perform-search): Instead of wrapping input in
17533         word boundaries, check that the characters before and after are
17534         not word constituents.
17536         semantic/symref/grep: Support regexp search
17537         * lisp/cedet/semantic/symref.el
17538         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
17539         the search type is regexp.
17540         * lisp/cedet/semantic/symref/grep.el
17541         (semantic-symref-perform-search): Support the regexp search type.
17542         Pass -E to Grep when it's used.
17544         semantic-symref-regexp: Allow to input an arbitrary string
17545         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
17546         Allow to input an arbitrary string interactively.
17548         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
17549         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
17550         Remove tag-symbol-match-p from the default value
17551         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
17553         Declare find-tag obsolete
17554         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
17555         xref-find-definitions.
17557 2015-05-10  Jan D  <jan.h.d@swipnet.se>
17559         Draw composite string correctly (Bug#20537)
17560         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
17561         New function.
17562         (ns_draw_glyph_string): Call it.
17564 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
17566         Avoid infloop in ERC
17567         * lisp/simple.el (line-move-to-column): Ignore field boundaries
17568         while computing line beginning position.  (Bug#20498)
17570 2015-05-08  Glenn Morris  <rgm@gnu.org>
17572         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
17573         * build-aux/gitlog-to-emacslog: Check called from right directory.
17574         (srcprefix): Remove.
17576         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
17577         * Makefile.in (ChangeLog): No longer pass "distprefix".
17578         * make-dist: Update "make ChangeLog" syntax for the above change.
17580         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
17581         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
17583         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
17585         Add command-line option-parsing to gitlog-to-emacslog
17586         * build-aux/gitlog-to-emacslog: Add command-line options.
17587         By default, refuse to remove an existing output file.
17588         * Makefile.in (CHANGELOG): Update default.
17589         (ChangeLog): Do not test for existing file.
17590         (change-history-nocommit): Ensure temp file does not exist.
17592         Quieten --without-x compilation
17593         * lisp/term/common-win.el: Provide a feature.
17594         * lisp/term/x-win.el (term/common-win): Require it.
17596         * lisp/dired-aux.el (dired-do-print): Require lpr.
17598         Quieten compilation, eg in --without-x builds
17599         * lisp/dired-aux.el (lpr-printer-switch):
17600         * lisp/frame.el (tool-bar-height):
17601         * lisp/linum.el (font-info):
17602         * lisp/window.el (font-info, overflow-newline-into-fringe)
17603         (tool-bar-height):
17604         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
17605         * lisp/gnus/gnus-util.el (iswitchb-mode):
17606         * lisp/mail/rmailmm.el (libxml-parse-html-region):
17607         * lisp/net/nsm.el (gnutls-peer-status)
17608         (gnutls-peer-status-warning-describe):
17609         * lisp/net/shr.el (libxml-parse-xml-region):
17610         * lisp/url/url-http.el (gnutls-peer-status): Declare.
17612 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
17614         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
17615         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
17616         `subclass' since they're never called with a class.
17617         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
17618         srecode-dictionary-child-p.
17620 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
17622         * lisp/help.el (help--binding-locus): Document argument POSITION.
17623         (Bug#20530)
17625 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
17627         Merge from gnulib
17628         * doc/misc/texinfo.tex: Get latest version.
17630 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
17632         ffap.el (ffap-read-file-or-url): Fix completing-read call
17633         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
17634         `completing-read' should be a symbol.
17636 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
17638         Verify file modifications by other programs
17639         * src/filelock.c (lock_file): Check whether the file was modified
17640         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
17642         Fix keyboard macros that include function keys
17643         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
17644         keys in the macro before returning.  (Bug#20454)
17646 2015-05-08  Glenn Morris  <rgm@gnu.org>
17648         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
17649         "Copyright-paperwork-exempt".  (Bug#20324)
17651         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
17652         (log-edit-rewrite-tiny-change): New variable.
17653         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
17654         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
17655         * etc/NEWS: Mention this.
17657         * lisp/calc/calc.el (math-zerop): Declare.
17659         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
17661 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17663         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
17664         Support the case when BINDINGS is a single tuple.  (Bug#20525)
17666         * etc/NEWS: Fix typo in previous commit
17667         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
17669 2015-05-07  Jan D  <jan.h.d@swipnet.se>
17671         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
17672         Output URL to Gtk+ bug (Bug#20452).
17674         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
17676 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17678         * lisp/emacs-lisp/package.el: New "external" package status.
17679         An external package is any installed package that's not built-in
17680         and not from `package-user-dir', which usually means it's from an
17681         entry in `package-directory-list'.  They are treated much like
17682         built-in packages, in that they cannot be through the Package Menu
17683         deleted and are not considered for upgrades.
17684         (package-desc-status): Identify if a package is installed outside
17685         `package-user-dir'.
17686         (package-menu--print-info-simple)
17687         (package-menu--status-predicate): Add support for it.
17688         * etc/NEWS: Document it.
17690 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17692         * lisp/mail/rmail.el: Use lexical-binding.
17693         (rmail-bury): Remove unused var `buffer-to-bury'.
17694         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
17695         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
17696         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
17697         (rmail-insert-inbox-text): Remove unused var `movemail'.
17698         (rmail-add-mbox-headers): Remove unused var `limit'.
17699         (rmail-undelete-previous-message): Remove unused var `value'.
17700         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
17701         `resent-reply-to'.
17702         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
17703         (rmail-restore-desktop-buffer): Rename arguments.
17705 2015-05-06  Glenn Morris  <rgm@gnu.org>
17707         * Makefile.in (change-history-commit): Add missing piece of previous.
17709         Avoid unnecessary bumping of Makefile.in's timestamp
17710         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
17711         (emacslog): New variable.
17712         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
17713         (unchanged-history-files): Use $emacslog rather than Makefile.in.
17714         (change-history-nocommit): Store hash in $emacslog.
17715         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
17716         * admin/update_autogen (changelog_files): Update for the above.
17718         * Makefile.in: Don't always insist on removing existing "ChangeLog".
17719         (CHANGELOG): New variable.
17720         (no-ChangeLog): Remove.
17721         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
17722         (change-history-nocommit): Use a temp file rather than insisting
17723         on deletion of any existing "ChangeLog".
17725         * build-aux/gitlog-to-emacslog: Allow specification of output.
17727         * admin/update_autogen: Add option to update ChangeLog.
17728         (usage): Mention -H.
17729         (changelog_flag, changelog_n, changelog_files): New variables.
17730         (main): Check for -H, and maybe run change-history-nocommit.
17732 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17734         * lisp/subr.el (delete-dups): Pre-size the hashtable.
17736         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
17737         cl--arglist-args is defined (bug#20517).
17739 2015-05-06  Glenn Morris  <rgm@gnu.org>
17741         * Makefile.in (change-history-nocommit): New.
17743 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
17745         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
17746         timer when it is non-nil
17747         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
17749 2015-05-06  Glenn Morris  <rgm@gnu.org>
17751         Quieten CEDET compilation
17752         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
17753         Invert fboundp test to quieten on current Emacs.
17754         * lisp/cedet/ede/config.el (ede-shell-run-something)
17755         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
17756         (semanticdb-refresh-table): Declare.
17757         (ede-preprocessor-map): Require semantic/db.
17759         Quieten cc-mode compilation
17760         * lisp/progmodes/cc-awk.el (c-forward-sws):
17761         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
17762         Declare.
17764 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
17766         * lisp/subr.el (delete-dups): Avoid nreverse.
17768 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17770         * lisp/subr.el (delete-dups): Make it destructive again.
17772 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
17774         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
17776 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17778         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
17779         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
17780         (testcover--read): Rename from testcover-read.  Change calling
17781         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
17782         is gone.
17783         (testcover-start): Use add-function.  Move edebug-all-defs binding to
17784         testcover--read.
17785         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
17786         (testcover-mark): Remove unused var `item'.
17787         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
17789 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
17791         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
17792           use a hash table.  This can result in ~500 times speed-up for typical
17793           collections of size 5000, like that of `load-library'.
17795 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17797         CEDET: Avoid `oref' on classes in a few more cases
17798         * lisp/cedet/ede/generic.el (ede-find-target):
17799         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
17800         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
17801         var `prefix'.
17803         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
17804         (grepflags, greppattern): Declare.
17805         (semantic-symref-perform-search): Remove unused var `pat'.
17807         CEDET (srecode-compile-inserter): Avoid `oref' on classes
17808         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
17809         Avoid `oref' on classes (bug#20491).
17810         (srecode-compile-split-code): Remove unused var `key'.
17812 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
17814         Clean up pulse.el a little
17815         * lisp/cedet/pulse.el (pulse): Remove.
17816         (pulse-momentary-timer): Save instead of the stop time.
17817         (pulse-momentary-highlight-overlay):
17818         Call pulse-momentary-unhighlight first thing.
17819         Treat pulse-momentary-overlay as a single value, not a list.
17820         Save the created timer.  Only pass the stop time to the timer.
17821         (pulse-tick): Update accordingly.
17822         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
17823         single value.  Cancel the timer.
17825 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
17827         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
17828         Support the biblatex journaltitle field.
17830 2015-05-05  Glenn Morris  <rgm@gnu.org>
17832         Minor declare-function improvement
17833         * lisp/emacs-lisp/bytecomp.el
17834         (byte-compile-macroexpand-declare-function):
17835         Handle declarations after calls.  (Bug#20509)
17837         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
17839         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
17841 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
17843         Pulse using a timer
17844         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
17845         (pulse-momentary-highlight-overlay): Set up the timer instead of
17846         calling `pulse'
17847         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
17848         (pulse-tick): New function.
17849         (pulse-momentary-unhighlight): Cut off the stop time.
17850         (pulse-delay): Update the docstring WRT to not using sit-for.
17852         Add semantic/symref/grep file patterns for ruby-mode
17853         * lisp/cedet/semantic/symref/grep.el
17854         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
17855         Clarify the docstring.
17857         Don't require match
17858         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
17859         match.  That doesn't work for every command, and some identifier
17860         completion tables are bound to be imperfect anyway.
17862 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
17864         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
17865         (semantic-grammar--template-expand): New function.
17866         (semantic-grammar-header, semantic-grammar-footer): Use it.
17867         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
17868         (semantic-grammar-file-regexp): Refine regexp.
17869         (semantic-grammar-eldoc-get-macro-docstring):
17870         Use elisp-get-fnsym-args-string when available.
17871         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
17872         instead of the old eldoc-* names.
17873         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
17874         from elisp-mode.el.  Tweak calling convention.
17875         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
17876         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
17877         elisp--get-fnsym-args-string.
17878         (elisp--highlight-function-argument): Add `prefix' arg.
17879         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
17880         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
17882 2015-05-05  Glenn Morris  <rgm@gnu.org>
17884         * lisp/help-fns.el (describe-function-1):
17885         Handle builtins with advertised calling conventions.  (Bug#20479)
17887 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
17889         Merge branch 'seq-let'
17891         Update `seq-let' documentation
17892         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
17893         with the support of  `&rest'.
17895         Add support for &rest in `seq-let'
17896         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
17897         in the argument list.
17898         * test/automated/seq-tests.el: Add a test for parsing and binding
17899         `&rest' in `seq-let'.
17901 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
17903         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
17904         Add missing increment (Bug#20467).
17905         (eieio-object-value-create): Adjust to new slots representation
17906         (Bug#20467).
17907         (eieio-object-value-create): Fix missed adjustment to new
17908         representation of slots metadata.
17910 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
17912         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
17914 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
17916         Work around "Attempt to modify read-only object"
17917         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
17918         elisp--xref-find-definitions, to work around "Attempt to modify
17919         read-only object" error.
17921         Only skip some variables that have function counterparts
17922         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
17923         Only skip minor-mode-named variable if it's defined in a Lisp
17924         file, and it's in minor-mode-list (bug#20506).
17925         * test/automated/elisp-mode-tests.el
17926         (elisp-xref-finds-both-function-and-variable)
17927         (elisp-xref-finds-only-function-for-minor-mode): New tests.
17929 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17931         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
17932         previous change.
17933         (xref--insert-xrefs): Buttonize the whole line, including the
17934         number at the beginning.
17936         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
17937         Make sure we're inside the let bindings.
17938         * test/automated/elisp-mode-tests.el
17939         (elisp-completes-functions-after-let-bindings): New test.
17941 2015-05-04  Glenn Morris  <rgm@gnu.org>
17943         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
17944         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
17945         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
17946         Remove outdated declarations.
17948         Replace instances of "(eval-when-compile (autoload ...))"
17949         * lisp/gnus/gnus-art.el (nneething-get-file-name):
17950         Declare rather than autoload.
17951         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
17952         Remove pointless autoload.
17953         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
17954         (gnus-topic-create-topic, gnus-topic-enter-dribble):
17955         Declare rather than autoload.
17956         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
17957         (mailcap-extension-to-mime): Autoload at run-time.
17958         * lisp/gnus/mm-util.el (latin-unity-massage-name)
17959         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
17960         (latin-unity-representations-present-region):
17961         Declare rather than autoload.
17962         * lisp/gnus/mml-smime.el (epg-make-context)
17963         (epg-passphrase-callback-function): Autoload at run-time.
17964         (epg-context-set-signers, epg-context-result-for)
17965         (epg-new-signature-digest-algorithm)
17966         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
17967         (epg-sign-string, epg-encrypt-string)
17968         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
17969         (epg-configuration, epg-expand-group, epa-select-keys):
17970         Declare rather than autoload.
17971         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
17972         Autoload at run-time.
17973         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
17974         (gnus-registry-get-id-key, gnus-registry-action):
17975         Declare rather than autoload.
17976         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
17977         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
17978         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
17979         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
17980         (spam-stat-split-fancy): Remove pointless autoloads.
17981         * lisp/net/mairix.el: Load gnus-util when compiling.
17982         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
17983         (message-field-value): Declare rather than autoload.
17984         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
17985         Check gnus-alive-p is fbound.
17986         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
17987         (vm-check-for-killed-summary, vm-error-if-folder-empty)
17988         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
17989         Declare rather than autoload.
17991         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
17993         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
17994         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
17996         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
17998         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
18000         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
18001         * lisp/emacs-lisp/package.el (epg-signature-status):
18002         Fix declarations.
18004         * lisp/play/gametree.el (gametree-show-children-and-entry)
18005         (gametree-apply-layout, gametree-mouse-show-subtree)
18006         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
18008         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
18009         Handle cl-defgeneric, cl-defmethod.
18011 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
18013         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
18014         Highlight both type and symbol name.
18016         Insert, highlight and align line numbers in xref output
18017         * lisp/progmodes/etags.el (xref-location-line): Specialize for
18018         xref-etags-location.
18019         * lisp/progmodes/xref.el (xref-location-line): New generic method.
18020         (xref-file-location): Add reader for the line slot.
18021         (xref--location-at-point): Skip to the `xref-location' property.
18022         (xref--collect-reference): Drop the line number from description.
18023         (xref--insert-xrefs): Insert, highlight and align line numbers.
18025 2015-05-04  Daniel Colascione  <dancol@dancol.org>
18027         * lisp/simple.el (save-mark-and-excursion--save)
18028         (save-mark-and-excursion--restore): Fix previous commit
18029         (255a011f0ecf004b31c59945b10154b10fac3af1).
18031 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
18033         Don't pulse the indentation, or the newline
18034         * lisp/cedet/pulse.el (pulse-lighten-highlight)
18035         (pulse-reset-face): Fall back to the inherited background
18036         attribute in FACE.
18037         (pulse-momentary-highlight-region): Add autoload cookie.
18038         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
18039         indentation, or the newline, if the line's non-empty
18040         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
18042 2015-05-04  Daniel Colascione  <dancol@dancol.org>
18044         Add `save-mark-and-excursion', which has the old
18045         `save-excursion' behavior
18046         * doc/lispref/positions.texi (Excursions):
18047         Document `save-mark-and-excursion'.
18048         * lisp/font-lock.el (font-lock-fontify-block):
18049         Use `save-mark-and-excursion' instead of `save-excursion',
18050         restoring Emacs 24 behavior.
18051         * lisp/simple.el (save-mark-and-excursion--save)
18052         (save-mark-and-excursion--restore): New functions.
18053         (save-mark-and-excursion): New user macro.
18054         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
18055         in `save-excursion' documentation.
18057 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
18059         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
18060         Classify lone symbol inside let varlist as variable.
18061         * test/automated/elisp-mode-tests.el
18062         (completest-variables-in-let-bindings): New test.
18064         Add xref-pulse-on-jump
18065         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
18066         Add autoload cookie.
18067         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
18068         (xref--maybe-pulse): New function.
18069         (xref-pop-marker-stack, xref--pop-to-location)
18070         (xref--display-position): Use it.
18071         (xref--location-at-point): Use back-to-indentation.
18073 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
18075         lisp/org/org-{macs,list}.el: Fix lexical warnings
18076         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
18077         (org-list-get-next-item, org-list-get-prev-item)
18078         (org-list-get-children): Mark unused arg `struct'.
18079         (org-list-use-alpha-bul-p): Remove unused var `bul'.
18080         (org-toggle-checkbox): Mark unused var.
18081         (org-update-checkbox-count): Remove unused var `box-num'.
18082         (org-adapt-indentation): Declare.
18083         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
18084         (org-list-send-list): Remove unused var `txt'.
18085         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
18086         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
18087         * lisp/org/org-macs.el: Use `declare'.
18088         (org-with-limited-levels): Declare dyn-bound vars.
18090 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
18092         Fix minor issues with CEDET on MS-Windows
18093         * lisp/cedet/semantic/symref/idutils.el
18094         (semantic-symref-parse-tool-output-one-line): Fix the search
18095         regexp to match MS-Windows file names with drive letters.
18096         (Bug#19468)
18097         * lisp/cedet/semantic/symref/grep.el
18098         (semantic-symref-grep-use-template): Remove "--color=always" from
18099         Grep switches on MS-Windows.
18100         (semantic-symref-grep-shell): Use shell-file-name as the default
18101         value, so this works not only on Posix platforms.
18102         (semantic-symref-perform-search): Use shell-quote-argument instead
18103         of literal '..' for portable quoting of Grep command-line
18104         argument.  Use shell-command-switch instead of a literal "-c".
18105         * lisp/cedet/semantic/bovine/gcc.el
18106         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
18107         for an absolute file name in a portable way.
18109 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
18111         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
18112         (package-import-keyring, package-refresh-contents)
18113         (package-compute-transaction, package--save-selected-packages)
18114         (package-install-from-archive, package-delete)
18115         (package-menu--perform-transaction): Use `inhibit-message' instead.
18116         (package--compile): Set `warning-minimum-level' to :error.
18118 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
18120         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
18121         (terminal-init-screen): Use it (bug#20356).
18122         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
18123         (xterm--extra-capabilities-type): New const.
18124         (xterm-extra-capabilities): Use it.
18125         (xterm--version-handler): Lower the pseudo-version for `screen'.
18127 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
18129         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
18130         Always insert a newline at the end (to avoid mouse-face background
18131         tail at the last line).
18133         elisp-completion-at-point: Prioritize being quoted over funpos
18134         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
18135         Only consider function position when not inside quoted form
18136         (bug#20425).
18137         * test/automated/elisp-mode-tests.el: New file.
18139         Stop vc-print-log from jumping to the top
18140         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
18141         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
18142         is not specified.
18143         (vc-incoming-outgoing-internal): Always pass nil.
18144         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
18145         call it, and don't set vc-sentinel-movepoint (bug#15322).
18146         (vc-print-root-log): Don't fetch the root working revision, nor
18147         pass it to vc-print-log-internal.
18149 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
18151         Fix display of keyboard layouts for right-to-left scripts
18152         * lisp/international/quail.el (quail-insert-kbd-layout):
18153         Force left-to-right paragraph direction.
18155 2015-05-02  K. Handa  <handa@gnu.org>
18157         * src/cmds.c (internal_self_insert): When we insert spaces for
18158         padding, set point before the padding spaces, not after them.
18160 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
18162         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
18164 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
18166         Fix etags-xref-find for references
18167         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
18168         Use `cl-mapcan'.
18169         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
18170         directory if no tags tables are loaded (bug#19468).
18172 2015-05-02  Philipp Stephani  <phst@google.com>
18174         Update the options in whitespace-style defcustom
18175         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
18176         `repeat' because the option is really set-like.  Add missing
18177         options.  Reorder options to match the order in the
18178         documentation.  (Bug#20346)
18180 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
18182         Fix error diagnostics of c-macro-expand
18183         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
18184         too early if no start-marker string was found -- that generally
18185         means cpp exited abnormally, and we still want to show its error
18186         messages to the user.
18188         Don't require Texinfo 5.0 for Emacs documentation
18189         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
18190         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
18191         "@codequoteundirected on", respectively, to avoid requiring
18192         Texinfo 5.x for Emacs documentation.
18194 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
18196         * lisp/files.el (pwd):
18197         When called with a prefix argument, insert the current default
18198         directory at point.
18200 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
18202         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
18203         * lisp/isearch.el (isearch-mode-map): Don't inhibit
18204         function-key-map remapping for backspace (bug#20466).
18206 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
18208         Implement xref-find-references in etags and elisp-mode
18209         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
18210         (elisp-xref-find): Use it.
18211         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
18212         * lisp/progmodes/xref.el (xref-collect-references):
18213         (xref--collect-reference): New functions.
18215 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
18217         Prefer plain characters to Texinfo circumlocutions
18218         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
18219         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
18221         Fix single-quoting style in PDF manuals
18222         The PDF versions of the GNU manuals used curved single quotes to
18223         represent grave accent and apostrophe, which made it a pain to cut
18224         and paste code examples from them.  Fix the PDF versions to use
18225         grave accent and apostrophe for Lisp source code, keystrokes, etc.
18226         This change does not affect the info files, nor does it affect
18227         ordinary uses of curved single quotes in PDF.
18228         * doc/emacs/docstyle.texi: New file, which specifies treatment for
18229         grave accent and apostrophe, as well as the document encoding.
18230         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
18231         * doc/lispintro/emacs-lisp-intro.texi:
18232         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
18233         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
18234         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
18235         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
18236         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
18237         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
18238         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
18239         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
18240         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
18241         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
18242         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
18243         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
18244         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
18245         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
18246         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
18247         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
18248         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
18249         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
18250         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
18251         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
18252         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
18253         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
18254         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
18255         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
18256         * doc/misc/woman.texi:
18257         Use it instead of '@documentencoding UTF-8', to lessen the need for
18258         global changes like this in the future.
18259         * doc/emacs/Makefile.in (EMACS_XTRA):
18260         * doc/lispintro/Makefile.in (srcs):
18261         * doc/lispref/Makefile.in (srcs):
18262         Add dependency on docstyle.texi.
18263         * doc/misc/Makefile.in (style): New macro.
18264         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
18265         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
18266         Use it.
18268 2015-05-01  Glenn Morris  <rgm@gnu.org>
18270         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
18272         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
18273         (help-fns--signature): Declare.
18275         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
18277 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
18279         New macro seq-let, providing destructuring support to seq.el
18280         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
18281         to `cl-destructuring-bind' but works on all sequence types supported
18282         by `seq.el'.  Bump version number to 1.6.
18283         * test/automated/seq-tests.el: Add tests for seq-let.
18284         * doc/lispref/sequences.texi: Add documentation for seq-let.
18286 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
18288         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
18290 2015-05-01  Glenn Morris  <rgm@gnu.org>
18292         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
18294 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
18296         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
18297         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
18298         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
18299         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
18300         (Bug#20445).
18302 2015-05-01  K. Handa  <handa@gnu.org>
18304         * lisp/international/mule-cmds.el (input-method-use-echo-area):
18305         Change :type to 'boolean.
18307 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
18309         Start using proportional fonts in eww by default
18310         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
18311         it seems to work well.
18313         Fix links in tables in shr
18314         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
18315         makes (some) links in tables not work.
18317 2015-05-01  Jan D  <jan.h.d@swipnet.se>
18319         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
18321 2015-04-30  Glenn Morris  <rgm@gnu.org>
18323         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
18324         Update for 2015-02-08 change to indirect-function.
18326         * lisp/term/ns-win.el (ns-get-selection-internal):
18327         Remove declaration for function deleted 2014-10-21.
18329         * lisp/dom.el: Load subr-x when compiling, for when-let.
18331         Silence some compilation warnings
18332         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
18333         * lisp/emulation/cua-base.el (delete-active-region):
18334         * lisp/net/net-utils.el (w32-get-console-output-codepage):
18335         * lisp/term/ns-win.el (ns-own-selection-internal)
18336         (ns-disown-selection-internal, ns-selection-owner-p)
18337         (ns-selection-exists-p, ns-get-selection):
18338         Declare for compiler.
18340         Function declaration updates prompted by 'make check-declare'
18341         * lisp/emacs-lisp/package.el (lm-homepage):
18342         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
18343         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
18344         * lisp/gnus/mml.el (libxml-parse-html-region):
18345         * lisp/gnus/nnrss.el (libxml-parse-html-region):
18346         * lisp/net/eww.el (libxml-parse-html-region):
18347         * lisp/net/shr.el (libxml-parse-html-region):
18348         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
18349         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
18350         * lisp/vc/vc-git.el (vc-annotate-convert-time):
18351         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
18352         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
18353         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
18354         Update declaration.
18356         Remove compatibility code for 20-year old function renaming
18357         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
18358         Make it an obsolete alias.
18359         (idlwave-shell-filter): Change all uses to comint-output-filter.
18361 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
18363         Add ace-window face config
18364         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
18365         configuration.
18367 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
18369         Unclutter 'make doc' output a bit
18370         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
18371         Use make subst rather than sh IFS to split target string apart.
18372         This makes 'make' output easier to follow.
18374         Merge from gnulib
18375         * doc/misc/texinfo.tex: Update from gnulib.
18377 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18379         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
18380         (package-menu--print-info): Obsolete.
18381         (package-menu--print-info-simple): New function.
18382         (package-menu--refresh): Use it, simplify code, and improve
18383         performance.
18384         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
18385         Tiny performance improvement.
18387         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
18389 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
18391         Omit -Wstrict-overflow workaround in GCC 5
18392         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
18393         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
18395         Merge from gnulib
18396         This incorporates:
18397         2015-04-29 extern-inline: no need for workaround in GCC 5.1
18398         2015-04-26 file-has-acl: port to CentOS 6
18399         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
18401 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
18403         Set next-error-* in xref--xref-buffer-mode
18404         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
18405         Set `next-error-function' and `next-error-last-buffer'.
18406         (xref--next-error-function): New function.
18407         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
18409 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18411         python.el: Fix warnings on looking-back calls missing LIMIT
18412         * lisp/progmodes/python.el (python-shell-accept-process-output):
18413         Pass LIMIT arg to looking-back.
18415 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
18417         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
18418         (package--download-and-read-archives): Use pushnew instead of
18419         append.  If something terrible happened during a previous
18420         download, simply refreshing should now make things work again.
18422 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
18424         Introduce etags-xref-find-definitions-tag-order
18425         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
18426         New variable.
18427         (etags--xref-find-definitions): Use it (bug#19468).
18429 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
18431         PATH- and completion-related fixes in Eshell on MS-Windows
18432         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
18433         MS-Windows, prepend "." to list of directories produced from PATH,
18434         as Windows always implicitly searches the current directory first.
18435         (eshell-force-execution): Make it have a non-nil default value on
18436         MS-Windows and MS-DOS.
18437         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
18438         eshell-force-execution is non-nil, complete on readable files and
18439         directories, not only executables.  When running on MS-Windows,
18440         prepend "." to list of directories produced from PATH, as Windows
18441         always implicitly searches the current directory first.
18443 2015-04-29  Sam Steingold  <sds@gnu.org>
18445         Bury RCIRC buffers when there is no activity
18446         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
18447         (rcirc-bury-buffers): New function.
18448         (rcirc-next-active-buffer): When there is no new activity, use
18449         `rcirc-bury-buffers' to hide all RCIRC buffers.
18451 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
18453         Fix DBUS query result parsing for secrets-search-items
18454         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
18455         parsing.  The function assumed that return value of the
18456         SearchItems method called on a collection is a list of two lists,
18457         however this is true only when no collection is specified.  GNOME
18458         had used to incorrectly return a list of two lists in both cases,
18459         but this was already fixed:
18460         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
18461         incorrect information in the secrets-search-items’ docstring.
18462         (Bug#20449)
18464 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
18466         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
18467         Use `inhibit-message' instead of hiding the previous message
18468         with (message nil).
18470 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
18472         Remove the deprecated INTERNAL_FIELD macro by expanding it
18473         * src/lisp.h (INTERNAL_FIELD): Remove.
18474         (DEFVAR_KBOARD): Modify accordingly.
18475         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
18476         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
18477         * src/buffer.c (compact_buffer): Use BVAR.
18479 2015-04-29  Glenn Morris  <rgm@gnu.org>
18481         Replace an obsolete function alias
18482         * lisp/isearch.el (isearch-yank-x-selection):
18483         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
18484         (mouse-drag-secondary-moving):
18485         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
18486         Replace obsolete alias x-get-selection with gui-get-selection.
18488 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18490         * lisp/mail/rmailsum.el: Use lexical-binding.
18492 2015-04-29  Glenn Morris  <rgm@gnu.org>
18494         * test/automated/package-test.el (package-test-update-archives-async):
18495         Skip test on hydra.nixos.org.
18497 2015-04-28  Glenn Morris  <rgm@gnu.org>
18499         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
18500         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
18501         (foldout-mouse-hide-or-exit): Use new names for outline functions.
18503         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
18504         Update for 2014-06-26 hideif.el change.
18506         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
18507         (rmail--decode-and-apply): New function.
18508         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
18510         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
18512 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18514         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
18515         (package-menu--refresh): Delegate obsolete-hiding to
18516         `package--remove-hidden'.
18517         (package--remove-hidden): Disregard high-priority package if it is
18518         older than the installed one.
18520 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
18522         Update source file encoding list
18523         Update admin/notes/unicode, along with coding system cookies in
18524         other files, so that the two match each other better.
18525         * admin/notes/unicode: lisp/language/ethio-util.el and
18526         lisp/language/ethiopic.el also use utf-8-emacs.
18527         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
18528         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
18529         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
18530         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
18531         * etc/refcards/sk-survival.tex:
18532         Add "coding: utf-8" so that this file is not mishandled in a
18533         Latin-1 or Big-5 locale.
18534         * lisp/international/robin.el, lisp/org/ox-ascii.el:
18535         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
18536         * lisp/language/ethio-util.el: Fix trailer.
18538 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
18540         Fix synchronous invocation of Ispell
18541         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
18542         value to ispell-process-directory before calling ispell-init-process.
18543         Don't call set-process-coding-system if ispell-async-processp is nil.
18544         (Bug#20448)
18546 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18548         * lisp/emacs-lisp/package.el: Skip space and comments in init file
18549         (package--ensure-init-file): Insert snippet at first
18550         non-whitespace non-comments line.  Respects local-vars at the top
18551         of the file.
18553 2015-04-28  Glenn Morris  <rgm@gnu.org>
18555         * lisp/mail/rmail.el (rmail-copy-headers):
18556         Handle rmail-nonignored-headers being nil.  (Bug#18878)
18558         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
18560         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
18561         Don't get confused by a bzrlib version mismatch warning.
18563 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18565         Change default location of EUDC options file
18566         * etc/NEWS: Document change to EUDC options file's default location.
18567         * lisp/net/eudc-vars.el (eudc-options-file): Use
18568         `locate-user-emacs-file' to change default options file location.
18570 2015-04-27  Glenn Morris  <rgm@gnu.org>
18572         * test/automated/package-test.el (package-test-update-archives-async):
18573         Try to handle the test server script dying.
18575 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18577         * lisp/saveplace.el (save-place-mode): New minor mode.
18578         (save-place): Redefine as an obsolete alias.
18580         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
18581         * lisp/midnight.el: Use lexical-binding.
18582         (midnight-mode): Make it a proper minor mode.
18583         (midnight-buffer-display-time): Make arg non-optional.
18584         (midnight-find): Remove.
18585         (clean-buffer-list-kill-never-regexps)
18586         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
18587         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
18588         contain functions.
18589         (clean-buffer-list): Use cl-find.
18590         Allow clean-buffer-list-kill-never-regexps to contain functions.
18592 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
18594         Bump version of seq.el to 1.5
18595         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
18596         from seq-doseq.  Bump version number of seq.el.
18598 2015-04-27  Glenn Morris  <rgm@gnu.org>
18600         * lisp/mail/rmail.el (rmail-reply):
18601         Decode subject before matching "Re:" prefix.  (Bug#20396)
18603 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
18605         * lisp/emacs-lisp/package.el: Small improvements
18606         (package--with-work-buffer-async): More informative error.
18607         (package-install-user-selected-packages): Rename to
18608         `package-install-selected-packages'.
18610 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18612         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
18613         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
18614         (eieio--class-make): Remove leftover `tag'.
18616 2015-04-27  Glenn Morris  <rgm@gnu.org>
18618         * lisp/gnus/message.el (gnus-extract-address-components):
18619         Remove bogus declaration that was masking previous problem.
18621 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
18623         * lisp/gnus/message.el (message-insert-formatted-citation-line):
18624         Fix typo.  (Bug#20318)
18626 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18628         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
18630         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
18631         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
18632         the buffer in yet another frame.
18633         (reftex-toc-visit-location): Make sure toc-window has focus at the end
18634         when `final' is nil.
18635         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
18636         silence warnings.  Use `--' to clarify that it's internal.
18637         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
18638         (reftex-toc-promote): Clarify unused argument.
18639         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
18640         Add `reftex--' prefix.  Fix all users.
18641         (reftex-toc-promote-prepare): Use _ for dummy variable.
18642         (reftex-toc-restore-region): Rename `m.
18644 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
18646         Fix a typo in bibtex.el
18647         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
18648         last change.  (Bug#20429)
18650         Fix redisplay of frame after loading new fonts
18651         * src/xdisp.c (redisplay_internal): When retrying redisplay of
18652         a frame because new fonts were loaded, disable all redisplay
18653         optimizations on that frame by calling SET_FRAME_GARBAGED.
18654         (Bug#20410)
18656 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18658         * lisp/info.el (Info-menu): Properly provide the `default'
18659         (Bug#20391)
18661         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
18662         Catch errors from documentation (bug#20418).
18663         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
18665 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
18667         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
18668         Remove redundant ":group 'package".
18670 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
18672         Fix a typo in rmail.el
18673         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
18674         last commit.  (Bug#20429)
18676 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
18678         Introduce xref-prompt-for-identifier
18679         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
18680         (xref--read-identifier): Use it
18681         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
18683 2015-04-26  João Távora  <joaotavora@gmail.com>
18685         `tex-insert-quote' after single `'' opens quotes instead of closing
18686         Without this, it's very hard to precede double quotes with the
18687         apostrophe character, i.e. insert the sequence '``
18688         (quote-backquote-backquote), commonly useful in portuguese, for
18689         instance.
18690         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
18691         preceding chars making `tex-insert-quote' be in the "opening" context.
18693 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
18695         Pass `id' to `completing-read' as def instead of initial input
18696         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
18697         `completing-read' as the default value instead of initial input
18698         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
18700 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
18702         Don't freeze with unreadable processes
18703         Don't freeze if an exiting process can't be read from.  (Bug#19860).
18704         This fixes a bug I introduced in
18705         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
18706         "* process.c: Add sanity checks for file descriptors."
18707         Dmitry Gutov did most of the legwork in finding the problem.
18708         * src/process.c (wait_reading_process_output):
18709         Treat non-running processes that can't be read from
18710         the same as other non-running processes.
18712 2015-04-25  Alan Mackenzie  <acm@muc.de>
18714         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
18715         * lisp/subr.el (remove-yank-excluded-properties): Put
18716         `with-silent-modifications' around only the last three lines of code.
18718 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18720         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
18721         (package--all-keywords): Deleted variable.
18723         * etc/NEWS: Document package-hiding functionality.
18725 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
18727         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
18729         Clarify the doc string of 'replace-regexp-in-string'
18730         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
18732         Improve doc string of 'insert-buffer-substring'
18733         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
18735         MS-Windows followup for the recent gnulib update
18736         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
18737         acl-internal.c.
18739 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
18741         Spelling fixes
18743         Merge from gnulib
18744         This incorporates:
18745         2015-04-24 file-has-acl: new module, split from acl
18746         2015-04-24 manywarnings: add GCC 5.1 warnings
18747         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
18748         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
18749         2015-04-15 acl: On Linux, check for acls without libacl
18750         2015-04-14 tempname: avoid unused parameter warnings (trivial)
18751         * lib/acl-internal.c: New file, from gnulib.
18752         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
18753         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
18754         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
18755         Update from gnulib.
18757         Port --enable-gcc-warnings to GCC 5.1 x86-64
18758         * lib-src/ebrowse.c (dump_sym):
18759         * lib-src/hexl.c (main):
18760         * src/ccl.c (ccl_driver):
18761         * src/character.c (string_escape_byte8):
18762         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
18763         * src/gnutls.c (Fgnutls_boot):
18764         * src/gtkutil.c (xg_check_special_colors):
18765         * src/image.c (x_build_heuristic_mask):
18766         * src/print.c (safe_debug_print, print_object):
18767         * src/term.c (produce_glyphless_glyph):
18768         * src/xdisp.c (get_next_display_element)
18769         (produce_glyphless_glyph):
18770         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
18771         Don't use a signed format to print an unsigned integer, or vice
18772         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
18773         * src/image.c (png_load_body, jpeg_load_body):
18774         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
18776 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
18778         Add new faces to tsdh-light-theme
18779         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
18780         definitions for Info-quoted, ace-jump-face-foreground,
18781         hl-paren-face, show-paren-match, and show-paren-mismatch.
18783 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
18785         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
18787 2015-04-24  Glenn Morris  <rgm@gnu.org>
18789         * build-aux/gitlog-to-emacslog:
18790         Use raw log format rather than wrapped one.
18792 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
18794         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
18795         (seq-doseq): Fix out-of-scope binding.
18796         Don't call `seq-length at every iteration.
18797         Reduce `if's from 3 to 2 per iteration.
18798         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
18800 2015-04-24  Glenn Morris  <rgm@gnu.org>
18802         * lisp/textmodes/text-mode.el (text-mode-hook):
18803         Move text-mode-hook-identify to default.
18805         * lisp/mouse.el (minor-mode-menu-from-indicator):
18806         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
18808         * lisp/help-fns.el (describe-function): More type checking.
18809         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
18811         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
18812         (Bug#20325)
18814 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
18816         shr: strip leading whitespace when expanding URLs
18817         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
18819 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
18821         Clarify "co-authored" some more
18823         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
18825         Clarify doc strings of functions that search for properties
18826         * src/textprop.c (Fnext_char_property_change)
18827         (Fprevious_char_property_change)
18828         (Fnext_single_char_property_change)
18829         (Fprevious_single_char_property_change, Fnext_property_change)
18830         (Fnext_single_property_change, Fprevious_property_change)
18831         (Fprevious_single_property_change): Clarify doc strings wrt return
18832         value and the optional LIMIT argument.  (Bug#20411)
18834 2015-04-24  Glenn Morris  <rgm@gnu.org>
18836         * test/automated/message-mode-tests.el (message-mode-propertize):
18837         Handle non-writable HOME; eg on hydra.nixos.org.
18839 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
18841         Avoid starting threads by w32-shell-execute
18842         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
18843         local file names, before invoking ShellExecute.  (Bug#20220)
18845 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
18847         Fix following doc-links in `widget-documentation-link-action'
18848         * lisp/wid-edit.el (widget-documentation-link-action): Make
18849         following doc-links less simplistic (Bug#20398).
18851 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18853         Improve EUDC manual
18854         * doc/misc/eudc.texi (Troubleshooting):
18855         New LDAP troubleshooting subsection.
18857 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
18859         Omit needless "\ " after multibyte then newline
18860         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
18861         (print_object): When print-escape-multibyte is non-nil and a
18862         multibyte character is followed by a newline or formfeed, followed
18863         by a hex digit, don't output a needless "\ " before the hex digit.
18864         * test/automated/print-tests.el (print-hex-backslash): New test.
18866 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
18868         Add a new `inhibit-message' variable
18869         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
18870         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
18871         `inhibit_message' is non-zero.
18872         * etc/NEWS: Add an entry.
18873         * doc/lispref/display.texi: Add an entry for `inhibit-message',
18874         mention it in `message'.
18876 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
18878         Fix last fix in `display-buffer-record-window'.
18879         * lisp/window.el (display-buffer-record-window): Fix last fix.
18881 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
18883         Minor edits in CONTRIBUTE
18884         * CONTRIBUTE: Rearrange instructions about log messages.
18885         Use "Git" capitalized all over.
18886         Use 2 spaces between sentences.
18888 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
18890         * lisp/files.el (basic-save-buffer): Fix argument.
18892         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
18893         In case `(and (null custom-file) init-file-had-error)' do the same
18894         thing we'd do if `(null user-init-file)', which is to either error out
18895         or return nil.  This is in line with `custom-save-all' which would
18896         throw an error in that situation.  (Bug#20355)
18898         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
18899         (package-menu-hide-low-priority): New variable, see its doc.
18900         (package-archive-priorities): Update doc.
18901         (package-desc-priority): New function.
18902         (package-desc-priority-version): Use it.
18903         (package--remove-hidden): New function.
18904         (package-menu--refresh): Use it.
18906         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
18907         (package-menu--hide-obsolete): New variable.
18908         (package--remove-hidden): Use it.
18909         (package-menu-hide-obsolete): New interactive function to toggle
18910         the variable.
18911         (package--quick-help-keys): Document it.
18912         (package-menu-async): Add :version tag.
18913         (package-menu-mode-map): Bind package-menu-hide-obsolete.
18914         (package-desc-status): Indicate non-installed obsolete packages as
18915         avail-obso.
18916         (package-menu-mark-install): Allow installation of avail-obso.
18917         (package-menu--status-predicate): Sort avail-obso with available.
18919 2015-04-22  Alan Mackenzie  <acm@muc.de>
18921         On C-y, stop some text property entries being written into buffer-undo-list
18922         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
18923         `with-silent-modifications'.
18925 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
18927         In display-buffer-record-window record selected window if necessary
18928         * lisp/window.el (display-buffer-record-window): Store selected window
18929         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
18931 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
18933         Fix reftex-citation bug
18934         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
18935         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
18936         integration is enabled and there are no citations in the document
18937         so far.
18939 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
18941         Add or reset based on the presence of MERGE_HEAD
18942         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
18943         `vc-git-resolve-when-done' to `after-save-hook' in either case.
18944         (vc-git-conflicted-files): Add a TODO.
18945         (vc-git-resolve-when-done): Depending on the presence of
18946         MERGE_HEAD, either update the resolved file in the index, or
18947         remove it from there.  (Bug#20292)
18949 2015-04-21  Glenn Morris  <rgm@gnu.org>
18951         * lisp/custom.el (custom-declare-group): No need to purecopy
18952         custom-current-group-alist members following recent change to set
18953         it to nil before dumping.
18955         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
18956         (Bug#20399)
18958 2015-04-21  Daniel Colascione  <dancol@dancol.org>
18960         Unbreak no-op buffer save message
18961         * lisp/files.el (basic-save-buffer): Accept called-interactively as
18962         an argument instead of directly invoking called-interactively-p,
18963         which will always yield nil in that context.
18965 2015-04-21  Alan Mackenzie  <acm@muc.de>
18967         CC Mode: Do nothing in before/after-change-functions for text
18968         property changes
18969         Fixes bug#20266.
18970         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
18971         yank-handled-properties buffer local, and remove 'category from it.
18972         (c-called-from-text-property-change-p): New function.
18973         (c-before-change): Don't do anything if a call of the new function
18974         returns non-nil.
18975         (c-after-change): Don't do much if a call of the new function returns
18976         non-nil.
18977         (c-extend-after-change-region): Put changes to text property 'fontified
18978         inside c-save-buffer-state.
18980 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
18982         Fix byte-compiler warnings about looking-back
18983         * lisp/vc/log-view.el (log-view-end-of-defun-1):
18984         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
18985         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
18986         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
18987         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
18988         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
18989         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
18990         * lisp/org/org.el (org-insert-heading, org-sort-entries):
18991         * lisp/org/org-mouse.el (org-mouse-end-headline)
18992         (org-mouse-context-menu):
18993         * lisp/org/org-clock.el (org-clock-cancel):
18994         * lisp/man.el (Man-default-man-entry):
18995         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
18996         (rmail-ensure-blank-line):
18997         * lisp/mail/footnote.el (Footnote-delete-footnote):
18998         * lisp/mail/emacsbug.el (report-emacs-bug):
18999         * lisp/info.el (Info-follow-reference, Info-fontify-node):
19000         * lisp/info-look.el (info-lookup-guess-custom-symbol):
19001         * lisp/help-fns.el (help-fns--key-bindings):
19002         * lisp/files.el (hack-local-variables):
19003         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
19004         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
19005         (viper-complete-filename-or-exit):
19006         * lisp/emulation/viper-cmd.el (viper-backward-indent):
19007         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
19008         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
19009         * lisp/cus-edit.el (custom-face-edit-value-create):
19010         * lisp/calendar/todo-mode.el (todo-set-item-priority)
19011         (todo-filter-items-1, todo-convert-legacy-files)
19012         (todo-prefix-overlays): Add explicit second arg to looking-back.
19014 2015-04-20  Glenn Morris  <rgm@gnu.org>
19016         Avoid non-nil current-load-list at startup
19017         * src/process.c (init_process_emacs): Move Fprovide statement...
19018         (syms_of_process): ... to here.
19020         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
19022         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
19023         in emacs -Q.
19025 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
19027         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
19028         (Bug#20330)
19030 2015-04-20  Glenn Morris  <rgm@gnu.org>
19032         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
19034         Tweak exec-path in uninstalled case
19035         * src/callproc.c (init_callproc): If running uninstalled, do not
19036         include eventual installation libexec directory in exec-path.
19038 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
19040         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
19041         cache keywords.
19042         (package-menu-filter): Accept a list of keywords.
19043         (package--all-keywords): New variable to cache known keywords.
19044         (package-all-keywords): Populate it if necessary.
19045         (package-refresh-contents): Reset it.
19047         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
19048         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
19049         as special keywords which match agains package archive and status
19050         respectively.
19051         * etc/NEWS: Document it.
19053 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
19055         Describe and index "empty overlays".
19056         * doc/lispref/display.texi (Overlays): Improve indexing.
19057         (Managing Overlays): Describe "empty" overlays.
19058         (Overlay Properties, Finding Overlays): Add cross-reference to
19059         where empty overlays are described.
19061 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
19063         Spelling fixes
19065         Quote 'like this' in top-level files
19066         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
19067         Prefer to single-quote 'like this' (instead of the older style
19068         `like this').
19069         * configure.ac: Fix some space-before-tab problems that 'git commit'
19070         complained about.
19072         Use bool for boolean in textprop.c, undo.c
19073         * src/textprop.c (soft, hard): Now constants instead of macros.
19074         (validate_plist): Rewrite to avoid need for boolean local.
19075         (interval_has_all_properties, interval_has_some_properties)
19076         (interval_has_some_properties_list, add_properties)
19077         (remove_properties, get_char_property_and_overlay)
19078         (Fnext_single_char_property_change)
19079         (Fprevious_single_char_property_change, add_text_properties_1)
19080         (Fremove_text_properties, Fremove_list_of_text_properties)
19081         (copy_text_properties):
19082         * src/tparam.c (tparam1):
19083         * src/undo.c (record_change, record_property_change)
19084         (syms_of_undo):
19085         Use 'true' and 'false' for booleans.
19087 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
19089         * lisp/vc/vc-git.el (vc-git-find-file-hook):
19090         Call `smerge-start-session' even when dealing with a stash
19091         conflict (bug#20292).
19093 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
19095         Add option to eshell/clear to clear scrollback.
19096         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
19097         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
19098         scrollback contents are cleared.
19099         * etc/NEWS: Describe change.
19100         * doc/misc/eshell.texi: Add entry for `clear'.
19102 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
19104         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
19105         where either will do.
19107 2015-04-19  Steve Purcell  <steve@sanityinc.com>
19109         Assume package archive-contents are UTF8-encoded
19110         * lisp/emacs-lisp/package.el (package--read-archive-file):
19111         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
19112         downloaded and cached archive-contents files, so that non-ASCII
19113         characters in package descriptions are displayed correctly in the
19114         `list-packages' menu.  (Bug#20231)
19116 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
19118         Abort when looking at stashed changes
19119         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
19120         stashed changes (bug#20292).
19122 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
19124         Refactor low-level printing for simplicity
19125         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
19126         PRINTPREPARE; doable now that we assume C99.  All callers changed.
19127         (PRINTCHAR): Remove, as it adds more mystery than clarity.
19128         All callers changed.
19129         (strout): Assume that caller computes length.  All callers changed.
19130         (print_c_string): New function.
19131         (write_string, write_string_1): Compute length instead of asking
19132         the caller to compute it.  All callers changed.
19133         (write_string): Simplify by using write_string_1.
19134         (write_string_1): Simplify by using print_c_string.
19135         (Fterpri): Compute default val more clearly.
19136         (Fprin1_to_string, print_object):
19137         Assume C99 to avoid unnecessary nesting.
19138         (print_object): Prefer print_c_string to multiple printchar, or
19139         to calling strout with -1 length.  Coalesce into sprintf when
19140         this is easy.
19142 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
19144         Prefer "Bug#1234" in commit messages (Bug#20325)
19145         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
19146         as this isn't useful for Git.
19147         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
19149 2015-04-18  Glenn Morris  <rgm@gnu.org>
19151         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
19152         (Bug#19506)
19154 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
19156         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
19157         Do not use `chomp' as a function.  (Bug#19505)
19159 2015-04-18  Glenn Morris  <rgm@gnu.org>
19161         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
19163         * doc/emacs/misc.texi (Sorting): Small edit.
19164         (Bug#19896)
19166         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
19168 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
19170         css-mode.el: Support multi-line comment filling
19171         (Bug#20256)
19172         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
19173         comment filling.
19174         (css-adaptive-fill): New function.
19175         (css-mode): Set `adaptive-fill-function'.
19176         (scss-mode): Set `comment-continue'.
19178 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
19180         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
19181         Better error messages.
19183 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
19185         Minor improvements in Bulgarian input methods
19186         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
19187         Replace U+042C with U+045D, as the former character is not used in
19188         the modern Bulgarian language.
19189         (Bug#20350)
19191 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19193         Improve EUDC manual
19194         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
19195         authentication schemes.  Add index items.  Shorten example server
19196         name.
19198 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
19200         Don't show both feature and function with the same name
19201         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
19202         Don't show both feature and function with the same name.
19204         (elisp--xref-identifier-location): Skip variable, if it's also
19205         a function
19206         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
19207         Avoid returning both the variable and the function for the same
19208         minor mode.
19210 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
19212         Fix fontification of keywords clobbered by the prompt
19213         * lisp/comint.el (comint-output-filter): Remove the uses of
19214         with-silent-modifications I introduced as part of the last change.
19215         This fixes, e.g., erratically missing highlighting when running
19216         ./configure --help; ./configure in a shell-mode buffer with
19217         compilation-shell-minor-mode turned on.
19219 2015-04-17  Glenn Morris  <rgm@gnu.org>
19221         * admin/authors.el (authors-valid-file-names)
19222         (authors-renamed-files-alist): Additions.
19224 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
19226         * lisp/indent.el (indent-region): Don't deactivate the mark.
19227         (Bug#20357)
19229 2015-04-17  Sam Steingold  <sds@gnu.org>
19231         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
19233 2015-04-16  Leo Liu  <sdl.web@gmail.com>
19235         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
19237 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
19239         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
19240         Don't use `pcomplete' any more.
19242 2015-04-16  Glenn Morris  <rgm@gnu.org>
19244         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
19246 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
19248         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
19249         * configure.ac (LIBJPEG): Leave it empty for MinGW.
19251 2015-04-16  Glenn Morris  <rgm@gnu.org>
19253         * lisp/replace.el (query-replace-from-to-separator):
19254         Delay initialization to avoid rogue setting after startup.
19256 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
19258         Pre-4.6 GCC succeeds with unknown option
19259         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
19260         (Bug#20338)
19262 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
19264         '[:graph:]' now excludes whitespace, not just ' '
19265         * doc/lispref/searching.texi (Char Classes):
19266         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
19267         sans whitespace (not sans space).
19268         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
19269         not just space.
19270         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
19272 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
19274         * lisp/subr.el (substitute-key-definition-key, special-form-p)
19275         (macrop): Drop deprecated second arg to indirect-function.
19276         (looking-back): Make the second arg non-optional.
19278         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
19279         command is actually sent to the shell.
19281 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
19283         Port jpeg configuration to Solaris 10 with Sun C
19284         * configure.ac: Check for jpeglib 6b by trying to link it, instead
19285         of relying on cpp magic that has problems in practice.  Check for
19286         both jpeglib.h and jerror.h features.  Remove special case for
19287         mingw32, which should no longer be needed (and if it were needed,
19288         should now be addressable by hotwiring emacs_cv_jpeglib).
19289         (Bug#20332)
19291 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
19293         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
19294         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
19295         Move to elisp-mode.el.
19296         (lisp-mode-variables): (Re)move elisp-specific settings.
19297         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
19298         from lisp-mode-variables.
19299         (elisp--font-lock-flush-elisp-buffers): New function, moved from
19300         lisp-mode.el.
19302         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
19303         Avoid pathological slowdown at top-level in large file.
19305 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
19307         Standardize names of ChangeLog history files
19308         Suggested by Glenn Morris in:
19309         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
19310         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
19311         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
19312         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
19313         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
19314         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
19315         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
19316         Remove.
19318         Split top-level entries into pre- and post-April 7
19319         This more clearly distingiushes pre-April-7 ChangeLog entries (which
19320         are for top-level files only) from post-April-7 entries (which are
19321         about files at all levels.  Problem reported by Glenn Morris in:
19322         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
19323         * ChangeLog.1: Move post-April-7 entries from here ...
19324         * ChangeLog.2: ... to this new file.
19325         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
19327 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
19329         Fix recent cus-start changes that added customize-rogues
19330         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
19331         vars early.
19332         * lisp/loadup.el ("cus-start"): Move to the end to reduce
19333         customize-rogue.
19335 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
19337         Define cl-concatenate as an alias to seq-concatenate
19338         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
19339           code by making cl-concatenate an alias to seq-concatenate.
19341 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
19343         * src/lread.c (intern_1): Make sure we'd find the symbol we add
19344         (Bug#20334)
19345         * src/xfaces.c (resolve_face_name): Don't use `intern' with
19346         Lisp_Strings.
19348 2015-04-15  Glenn Morris  <rgm@gnu.org>
19350         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
19352 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
19354         Clean up gnus-uu saving code slightly
19355         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
19356         save-restriction/widen calls make more sense.
19358 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
19360         Make [:graph:] act like [:print:] sans space
19361         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
19362         [:graph:] so that it matches everything that [:print:] does,
19363         except for space.
19364         * doc/lispref/searching.texi (Char Classes):
19365         * etc/NEWS:
19366         * lisp/emacs-lisp/rx.el (rx):
19367         Document [:graph:] to be [:print:] sans ' '.
19368         * src/character.c, src/character.h (graphicp): New function.
19369         * src/regex.c (ISGRAPH) [emacs]: Use it.
19370         (BIT_GRAPH): New macro.
19371         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
19372         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
19373         Return BIT_GRAPH for RECC_GRAPH.
19374         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
19375         and ISPRINT if BIT_PRINT.
19377 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
19379         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
19380         Don't use call-next-method in a cl-defmethod.
19382         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
19383         (eieio--class-p): Remove, provided by cl-defstruct.
19385 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
19387         Add seq-intersection and seq-difference to the seq library
19388         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
19389         New functions.
19390         * test/automated/seq-tests.el: Add tests for seq-intersection and
19391         seq-difference.
19392         * doc/lispref/sequences.texi: Add documentation for seq-intersection
19393         and seq-difference.
19395 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
19397         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
19398         to avoid leaking internals.
19400 2015-04-14  Sam Steingold  <sds@gnu.org>
19402         package--ensure-init-file: widen requires save-restriction
19404 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
19406         Improve the commit-msg Git hook for unibyte environments
19407         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
19408         in unibyte environments.  (Suggested by Paul Eggert
19409         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
19410         [:print:], based on UTF-8 sequences of the unprintable characters.
19412         Describe problems with cursor caused by Windows Magnifier
19413         * etc/PROBLEMS: Describe the problem with cursor shape on
19414         MS-Windows due to Windows Magnifier.
19415         (Bug#20271)
19417         Make [:print:] support non-ASCII characters correctly
19418         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
19419         (BIT_PRINT): New bit mask.
19420         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
19421         * src/character.c (printablep): New function.
19422         * src/character.h (printablep): Add prototype.
19423         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
19424         of 'print', 'alnum', and 'alphabetic'.
19425         * doc/lispref/searching.texi (Char Classes): Document the new
19426         behavior of [:print:].
19427         * etc/NEWS: Mention the new behavior of [:print:].
19429         Assign correct general-category and names to surrogates
19430         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
19431         surrogates.  This avoids assigning them the default
19432         general-category of 'Cn', i.e. unassigned codepoints.
19433         (unidata-get-name): Give surrogates synthetic names.
19435 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
19437         Assume C89 offsetof in xterm.c, xlwmenu.c
19438         * lwlib/xlwmenu.c (offset):
19439         * src/xterm.c (cvt_string_to_pixel_args):
19440         Use offsetof, not XtOffset.
19442 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
19444         Assume C89 offsetof in widget.c
19445         * src/widget.c (XtOffset): Remove; no longer needed.
19446         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
19448         Fix think-o in previous patch
19449         * src/window.c (count_windows, get_leaf_windows):
19450         Don't optimize count_windows incorrectly.
19452 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19454         Avoid some int overflows in window.c
19455         * src/print.c (print_object):
19456         * src/window.c (sequence_number):
19457         * src/window.h (struct window.sequence_number):
19458         Don't assume window sequence number fits in int.
19459         * src/window.c (window_select_count):
19460         * src/window.h (struct window.use_time, window_select_count):
19461         Don't assume window use time fits in int.
19462         * src/window.c (Fsplit_window_internal):
19463         Don't assume user-supplied integer, or sum, fits in int.
19464         (Fset_window_configuration, count_windows, get_leaf_windows)
19465         (save_window_save, Fcurrent_window_configuration):
19466         Use ptrdiff_t for object counts.
19467         (Fset_window_configuration): Omit unused local 'n'.
19468         (count_windows): Simplify by writing in terms of get_leaf_windows.
19469         (get_leaf_windows): Don't store through FLAT if it's null.
19470         (extract_dimension): New static function.
19471         (set_window_margins, set_window_fringes, set_window_scroll_bars):
19472         Use it to avoid undefined behavior when converting user-supplied
19473         integer to 'int'.
19475 2015-04-13  Glenn Morris  <rgm@gnu.org>
19477         Minor doc copyedits
19478         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
19479         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
19481 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
19483         [Gnus] Catch the invalid-operation that idna.el will issue
19484         * lisp/gnus/gnus-art.el (gnus-use-idna):
19485         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
19486         * lisp/gnus/message.el (message-use-idna):
19487         Catch the invalid-operation that idna.el will issue.
19489 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19491         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
19493 2015-04-13  Sam Steingold  <sds@gnu.org>
19495         package--ensure-init-file: widen before looking for
19496         "(package-initialize)"
19498 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
19500         Change diff-switches default to `-u' (Bug#20290)
19501         * doc/emacs/files.texi (Comparing Files): Document the new default
19502         value of `diff-switches'.
19503         * doc/emacs/trouble.texi (Sending Patches): Document the preference
19504         for unified diff format.  Escape the plus in the suggested `-F' regexp
19505         value.
19506         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
19508 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19510         (gnus-group--setup-tool-bar-update): Fix last change
19511         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
19512         cursor-sensor-functions should be a list of functions.
19514 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
19516         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
19517         Use gmm-called-interactively-p.
19519 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19521         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
19522         (Bug#20321)
19523         * lisp/cus-start.el (read-buffer-function): Don't advertise
19524         iswitchb-read-buffer any more.
19525         (iswitchb): Don't tweak this obsolete group any more.
19527 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
19529         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
19531         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
19532         Adding a string after a constructor's argument list will use
19533         that string as the constructor function docstring.  If this string
19534         is absent but the struct itself was given a docstring, use that as
19535         the constructor's docstring.
19536         Fixes bug#17284.
19538 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19540         Deprecate `intangible' and `point-entered' properties
19541         * lisp/emacs-lisp/cursor-sensor.el: New file.
19542         * lisp/simple.el (pre-redisplay-functions): New hook.
19543         (redisplay--pre-redisplay-functions): New function.
19544         (pre-redisplay-function): Use it.
19545         (minibuffer-avoid-prompt): Mark obsolete.
19546         (redisplay--update-region-highlight): Adapt it to work as a function on
19547         pre-redisplay-functions.
19548         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
19549         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
19550         than point-entered to make the prompt intangible.
19551         * lisp/forms.el: Move `provide' calls to the end.
19552         (forms-mode): Don't use `run-hooks' on a local var.
19553         (forms--make-format, forms--make-format-elt-using-text-properties):
19554         Use cursor-intangible rather than `intangible'.
19555         (forms-mode): Enable cursor-intangible-mode.
19556         * lisp/isearch.el (isearch-mode): Use defvar-local.
19557         (cursor-sensor-inhibit): Declare.
19558         (isearch-mode): Set cursor-sensor-inhibit.
19559         (isearch-done): Set it back.
19560         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
19561         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
19562         any more.
19563         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
19564         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
19565         Add Edebug spec.
19566         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
19567         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
19568         inhibit-point-motion-hooks any more.
19569         (ses--cell-at-pos, ses--curcell): New functions, extracted from
19570         ses-set-curcell.
19571         (ses-set-curcell): Use them.
19572         (ses-print-cell, ses-setup): Use cursor-intangible instead of
19573         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
19574         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
19575         Use ses--cell-at-pos.
19576         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
19577         extracted from ses-command-hook.  Make them work with multiple windows
19578         displaying the same buffer.
19579         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
19580         Enable cursor-intangible-mode.
19581         (ses-command-hook): Remove cell highlight and mode-line update code.
19582         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
19583         Update for new name of text-property holding the cell name.
19584         (ses-rename-cell): Don't mess with mode-line-process.
19585         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
19586         cursor-sensor-functions property instead of point-entered.
19587         (erc-insert-timestamp-right, erc-format-timestamp):
19588         Use cursor-intangible rather than `intangible'.
19589         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
19590         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
19591         cursor-sensor-mode if needed.
19592         (erc-echo-timestamp): Adapt to calling convention of
19593         cursor-sensor-functions.
19594         (erc-insert-timestamp-right): Remove unused vars `current-window' and
19595         `indent'.
19596         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
19597         (gnus-update-group-mark-positions): Remove unused `topic' var.
19598         (gnus-group-insert-group-line): Remove unused var `header'.
19599         (gnus-group--setup-tool-bar-update): New function.
19600         (gnus-group-insert-group-line): Use it.
19601         (gnus-group-update-eval-form): Declare local
19602         dynamically-bound variables.
19603         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
19604         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
19605         (gnus-group-prepare-topics, gnus-topic-update-topic)
19606         (gnus-topic-change-level, gnus-topic-catchup-articles)
19607         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
19608         Use inhibit-read-only.
19609         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
19610         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
19611         * lisp/textmodes/reftex-index.el (reftex-display-index):
19612         Use cursor-intangible-mode if available.
19613         (reftex-index-post-command-hook): Check cursor-intangible.
19614         * lisp/textmodes/reftex-toc.el (reftex-toc):
19615         Use cursor-intangible-mode if available.
19616         (reftex-toc-recenter, reftex-toc-post-command-hook):
19617         Check cursor-intangible.
19618         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
19619         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
19620         (sgml-tags-invisible): Use with-silent-modifications and
19621         inhibit-read-only.  Enable cursor-sensor-mode.
19622         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
19623         calling convention of cursor-sensor-functions.
19624         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
19625         (table-point-entered-cell-hook, table-point-left-cell-hook):
19626         Don't autoload.
19627         (table-cell-entered-state): Remove var.
19628         (table--put-cell-point-entered/left-property)
19629         (table--remove-cell-properties):
19630         Use cursor-sensor-functions rather than point-entered/left.
19631         (table--point-entered/left-cell-function): Merge
19632         table--point-entered-cell-function and table--point-left-cell-function
19633         and adjust to calling convention of cursor-sensor-functions.
19635         Update ldef-boots.el
19637         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
19639         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
19641         Collapse successive char deletions in the undo log
19642         * src/cmds.c (remove_excessive_undo_boundaries): New function,
19643         extracted from Fself_insert_command.
19644         (Fdelete_char, Fself_insert_command): Use it.
19645         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
19646         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
19648         xterm and OSC 52: Add NEWS entry, and tweak the code
19649         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
19650         to top-level.
19651         (terminal-init-xterm-activate-set-selection): Set a terminal property.
19652         (xterm--set-selection): Use it instead of checking the value of
19653         `terminal-initted'.  Don't use string-bytes.
19655 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
19657         xterm.el: Implement OSC-52 functionality for setting the X selection
19658         * lisp/term/xterm.el (xterm-max-cut-length): New var.
19659         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
19660         New funs.
19661         (terminal-init-xterm, xterm--version-handler): Use them.
19663 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19665         Remove left over code from when we used an obsolete/loaddefs.el file
19666         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
19667         when we used an obsolete/loaddefs.el file.
19669         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
19670         (semanticdb-without-unloaded-file-searches): Use declare.
19671         (semantic-fw-add-edebug-spec): Remove.
19673         * lisp/completion.el (completion-lisp-mode-hook):
19674         Use completion-separator-chars rather than local key binding.
19676         * src/*.c: Set deactivate_mark buffer-locally
19677         (Bug#20260)
19678         * src/insdel.c (prepare_to_modify_buffer_1):
19679         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
19680         buffer-locally.
19682 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19684         python.el: Keep symmetry on sexp navigation with parens
19685         (Bug#19954)
19686         * lisp/progmodes/python.el
19687         (python-nav--forward-sexp): Add argument skip-parens-p.
19688         (python-nav-forward-sexp, python-nav-backward-sexp)
19689         (python-nav-forward-sexp-safe)
19690         (python-nav-backward-sexp-safe): Use it.
19691         * test/automated/python-tests.el
19692         (python-nav-forward-sexp-1): Fix test.
19694 2015-04-12  João Távora  <joaotavora@gmail.com>
19696         Don't use `setq-local' in Gnus code
19697         This might break upstream builds with older Emacsen
19698         * lisp/gnus/message.el (message-mode): Use `set' and
19699         `make-local-variable' instead of `setq-local'.
19701 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
19703         Update Makefile.in's .PHONY dependencies
19704         * Makefile.in (change-history-commit, master-branch-is-current)
19705         (no-ChangeLog): Now phony.
19707         Remove configure's --with-mmdf option
19708         * configure.ac (MAIL_USE_MMDF): Remove.
19709         * etc/NEWS: Document this.
19710         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
19711         (Bug#20308)
19713         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
19714         That way, 'make install' won't think it's a man page.
19715         Reported by Ashish SHUKLA in:
19716         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
19718         Improve 'make change-history' prereq tests
19719         * Makefile.in (gen_origin): Fix to match what's in the master branch.
19720         (no-ChangeLog, master-branch-is-current): New rules.
19721         (change-history): Depend on them, to avoid similar future problems.
19722         Escape the local-variables string to pacify Emacs when editing
19723         Makefile.in.
19725 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
19727         * test/automated/package-test.el (with-package-test):
19728         Kill Packages buffer.
19730         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
19731         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
19732         "Upgrade" last, and use capitalized instead of all-caps.
19734         * lisp/emacs-lisp/package.el: Completely silence async operations.
19735         (package--make-autoloads-and-stuff): Silence autoloads.
19736         (package--save-selected-packages): New function, silences
19737         `customize-save-variable'.
19738         (package--user-selected-p, package-install-from-buffer)
19739         (package-delete, package-install): Use it.
19740         (package-install-from-archive)
19741         (package-menu--perform-transaction): Silence.
19742         (package-menu-execute): Feedback when operation starts.
19744         Use delay-mode-hooks when visiting the init-file
19745         * lisp/emacs-lisp/package.el (package--ensure-init-file):
19746         delay-mode-hooks.
19747         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
19749         * lisp/files.el: Only message when saving if save-silently is nil.
19750         (save-silently): New variable.
19751         (files--message): New function.
19752         (find-file-noselect, save-buffer, basic-save-buffer)
19753         (basic-save-buffer-2, save-some-buffers, not-modified)
19754         (append-to-file): Use them.
19756 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
19758         Support debug declarations in pcase macros
19759         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
19760         (pcase-UPAT): Use it.  Remove "`".
19761         (pcase--edebug-match-macro): New function.
19762         (pcase-defmacro): Support debug declarations.
19763         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
19764         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
19765         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
19766         Add debug declaration.
19768         pcase.el: Edebug support for `app' and vector patterns
19769         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
19770         (pcase-UPAT): Use it.  Support `app' patterns.
19771         (pcase-QPAT): Support vector patterns.
19773         edebug.el: Disambiguate vector specifications
19774         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
19775         `(vector ...)' as a vector specification, not as a sublist.
19777         (gnus-summary-refer-thread): Don't clobber unread articles
19778         This fixes a bug where `A T' causes "random" articles to become marked
19779         as read.
19780         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
19781         gnus-newsgroup-unreads remains sorted.
19783         mouse-sel.el: Fix mouse-sel-get-selection-function
19784         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
19785         Use gui--last-selected-text-primary instead of no longer existing
19786         gui-last-selected-text.
19788         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
19790         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
19792 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
19794         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
19796         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
19797         right buffer.
19799         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
19800         (byte-compile--interactive): New var.
19801         (byte-compile--message): New function.
19802         (byte-compile-log-1, byte-force-recompile)
19803         (byte-recompile-directory, byte-recompile-file)
19804         (byte-compile-file, compile-defun)
19805         (byte-compile-file-form-defmumble, byte-compile)
19806         (byte-compile-file-form-defalias, display-call-tree): Use it.
19808         * lisp/files.el: Don't message when nothing happened.
19809         (save-some-buffers, basic-save-buffer): Before messaging to say
19810         "nothing was saved" check if (called-interactively-p 'any).
19812 2015-04-12  João Távora  <joaotavora@gmail.com>
19814         Summary: Improve sexp-based movement in message-mode
19815         Works by giving citations and smileys a different syntax.  This helps
19816         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
19817         sexp-based movement.
19818         * lisp/gnus/message.el (message--syntax-propertize): New function.
19819         (message-mode): Set syntax-related vars.
19820         (message-smileys): New variable.
19821         * test/automated/message-mode-tests.el: New file
19823 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19825         Use bool for boolean in window.c
19826         * src/window.c: Omit unnecessary static function decls.
19827         (adjust_window_count, select_window, Fselect_window)
19828         (window_body_width, Fwindow_body_height, Fwindow_body_width)
19829         (set_window_hscroll, check_window_containing, Fwindow_at)
19830         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
19831         (unshow_buffer, replace_window, recombine_windows)
19832         (add_window_to_list, candidate_window_p, next_window)
19833         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
19834         (Fget_buffer_window, Fdelete_other_windows_internal)
19835         (replace_buffer_in_windows_safely, set_window_buffer)
19836         (Fset_window_buffer, Fforce_window_update)
19837         (temp_output_buffer_show, make_parent_window)
19838         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
19839         (resize_frame_windows, Fsplit_window_internal)
19840         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
19841         (Fresize_mini_window_internal, mark_window_cursors_off)
19842         (window_scroll, window_scroll_pixel_based)
19843         (window_scroll_line_based, scroll_command, Fscroll_other_window)
19844         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
19845         (Fmove_to_window_line, Fset_window_configuration)
19846         (delete_all_child_windows, apply_window_adjustment)
19847         (set_window_fringes, set_window_scroll_bars)
19848         (Fset_window_vscroll, foreach_window, foreach_window_1)
19849         (compare_window_configurations, Fcompare_window_configurations):
19850         Prefer 'bool', 'true', and 'false' for booleans.
19851         * src/window.h (WINDOW_MODE_LINE_LINES)
19852         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
19854 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
19856         Speed up byte-compilation and autoload generation by avoiding mode-hooks
19857         This prevents emacs-lisp-mode-hook from being run everytime an
19858         autoload file is generated, which can account for a fraction of
19859         package installation time depending on the hooks the user has
19860         configured.
19861         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
19862         * lisp/emacs-lisp/autoload.el (autoload-find-file)
19863         (autoload-find-generated-file): Use delay-mode-hooks.
19865         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
19866         (package-menu-refresh): Respect async and do new package checking.
19867         (list-packages): Use `package-menu-refresh' instead of repeating code.
19869         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
19870         (package--quick-help-keys): New variable.
19871         (package--prettify-quick-help-key): New function.
19872         (package-menu-quick-help): Use it.
19874         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
19875         (package--build-compatibility-table): Require finder.
19877         * test/automated/package-test.el: Fix new test.
19879         * lisp/emacs-lisp/package.el: Silence async operations.
19880         (package--silence): New variable.
19881         (package--message): New function.
19882         (package-import-keyring, package-refresh-contents)
19883         (package-compute-transaction, package-install, package-delete)
19884         (package-menu--perform-transaction, package-menu-execute): Use it.
19886         * test/automated/package-test.el: Test async functionality.
19887         (package-test-update-archives-async): New test.
19889 2015-04-11  Daiki Ueno  <ueno@gnu.org>
19891         Utilize `make-process' in epg.el
19892         * lisp/epg.el (epg-error-output): Abolish.
19893         (epg-context): New slot `error-buffer'.
19894         (epg--start): Use `make-process' and `make-pipe-process'.
19895         (epg--process-filter): Remove code separating stderr from stdout.
19896         (epg-wait-for-completion): Simplify `error-output' handling.
19897         (epg-reset): Dispose error buffer.
19899 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19901         * .gitignore: Ignore doc temps and outputs.
19903         Port commit-msg to MSYS Bash+Gawk
19904         See Eli Zaretskii in:
19905         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
19906         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
19907         (cent_sign, print_at_sign, at_sign): Revert previous change.
19908         (print_at_sign): Prepend "BEGIN".
19909         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
19911         Port commit-msg to broken MS-Windows shell
19912         * build-aux/git-hooks/commit-msg (cent_sign):
19913         Just use UTF-8 here rather than ASCII + printf, as the latter fails
19914         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
19915         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
19917 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
19919         Support GnuTLS v3.4 and later on MS-Windows
19920         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
19921         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
19922         GnuTLS DLL to load according to value of libgnutls-version.
19923         (Bug#20294)
19925 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19927         Minor quoting etc. fixes to misc manuals
19928         Fix some minor quoting and spacing issues.  Distinguish more
19929         clearly among grave accent and apostrophe (which are ASCII) and
19930         single quote (which is not).  Prefer the standard terms
19931         "apostrophe" and "grave accent" to alternative names that can be
19932         confusing.  Use apostrophes to single-quote ASCII text.
19933         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
19934         rather than approximating it in ASCII with grave accent.
19936 2015-04-11  Daiki Ueno  <ueno@gnu.org>
19938         Respect more keyword args in `make-process'
19939         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
19940         keywords as documented.
19942 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
19944         Extract ChangeLog entries when committing a directory
19945         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
19946         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
19947         Add a FIXME comment.
19948         (log-edit-changelog-entries): Extract from
19949         `log-edit-changelog-entries', handle FILE being a directory
19950         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
19952 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
19954         Fix problems found by --enable-gcc-warnings
19955         * src/process.c (create_process, Fmake_pipe_process)
19956         (Fmake_network_process): Omit unused locals.
19958         Fix commit-msg to handle scissors lines
19959         * build-aux/git-hooks/commit-msg:
19960         Ignore every line after a scissors line, such as a line generated
19961         by 'git commit -v'.  Problem reported by Johan Bockgård in:
19962         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
19964         port commit-msg to Gawk 3.0.4 (1999)
19965         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
19966         (print_at_sign, at_sign): New vars.  Use them to avoid problems
19967         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
19968         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
19970         Have commit-msg report commit failure
19971         * build-aux/git-hooks/commit-msg: If the commit is aborted,
19972         say so.  Simplify by doing this at the end.  Problem reported
19973         by Eli Zaretskii in:
19974         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
19976 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19978         Clean up LDAP Configuration section of EUDC manual
19979         * doc/misc/eudc.texi: Combine indices.
19980         (LDAP Configuration): Use command markup.  Add index entries.
19981         Change formatting.  Wrap long lines.  Add noindent markup.
19983 2015-04-10  Daiki Ueno  <ueno@gnu.org>
19985         Add facility to collect stderr of async subprocess
19986         * src/w32.h (register_aux_fd): New function declaration.
19987         * src/w32.c (register_aux_fd): New function.
19988         * src/process.h (struct Lisp_Process): New member stderrproc.
19989         * src/process.c (PIPECONN_P): New macro.
19990         (PIPECONN1_P): New macro.
19991         (Fdelete_process, Fprocess_status, Fset_process_buffer)
19992         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
19993         (Fcontinue_process): Handle pipe process specially.
19994         (create_process): Respect p->stderrproc.
19995         (Fmake_pipe_process): New function.
19996         (Fmake_process): Add new keyword argument :stderr.
19997         (wait_reading_process_output): Specially handle a pipe process when
19998         it gets an EOF.
19999         (syms_of_process): Register Qpipe and Smake_pipe_process.
20000         * doc/lispref/processes.texi (Asynchronous Processes): Document
20001         `make-pipe-process' and `:stderr' keyword of `make-process'.
20002         * lisp/subr.el (start-process): Suggest to use `make-process' handle
20003         standard error separately.
20004         * test/automated/process-tests.el (process-test-stderr-buffer)
20005         (process-test-stderr-filter): New tests.
20006         * etc/NEWS: Mention new process type `pipe' and its usage with the
20007         `:stderr' keyword of `make-process'.
20009 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
20011         Minor quoting etc. fixes to lispref manual
20012         * doc/lispref/tips.texi (Documentation Tips):
20013         Distinguish more clearly among grave accent, apostrophe,
20014         and single quote.
20015         * doc/lispref/README, doc/lispref/buffers.texi:
20016         * doc/lispref/commands.texi, doc/lispref/control.texi:
20017         * doc/lispref/customize.texi, doc/lispref/display.texi:
20018         * doc/lispref/elisp.texi, doc/lispref/files.texi:
20019         * doc/lispref/frames.texi, doc/lispref/hash.texi:
20020         * doc/lispref/help.texi, doc/lispref/internals.texi:
20021         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
20022         * doc/lispref/markers.texi, doc/lispref/modes.texi:
20023         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
20024         * doc/lispref/os.texi, doc/lispref/positions.texi:
20025         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
20026         * doc/lispref/text.texi, doc/lispref/tips.texi:
20027         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
20028         Use American-style double quoting in ordinary text,
20029         and quote 'like this' when single-quoting in ASCII text.
20030         Also, fix some minor spacing issues.
20032 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
20034         Handle symlinked test directory in tramp-tests.el
20035         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
20036         (tramp--test-check-files): Use `file-truename' for directories.
20038 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
20040         Fix 'recenter' when visual-line-mode is turned on
20041         * src/window.c (Frecenter): Use the same code for GUI and TTY
20042         frames alike; use vmotion only for "initial" frames.  This is
20043         because vmotion doesn't support visual-line-mode.  Rewrite the
20044         'iarg >= 0' case to use move_it_* functions instead of using
20045         vmotion, for the same reason.  Fix the clipping of the argument
20046         value to support scroll-margin in all cases and avoid unwarranted
20047         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
20048         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
20049         which see.
20051 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20053         * lisp/abbrev.el (define-abbrev-table): Refine last change.
20055         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
20056         use of c[ad]+r", so as to keep the "cl-" prefix on all
20057         cl-lib definitions.
20059         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
20060         Use inhibit-point-motion-hooks.
20062         * lisp/cedet/semantic: Remove some dead code.
20063         * lisp/cedet/semantic/util-modes.el
20064         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
20065         any more.
20066         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
20067         not supported any more.
20068         (semantic-safe): Use `declare'.
20069         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
20070         (semantic-tag-intangible-p): Remove unused functions.
20071         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
20072         Remove unused function.
20074         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
20075         (gnus-article-hide-text, gnus-article-unhide-text)
20076         (gnus-article-unhide-text-type): Remove special handling of
20077         `intangible' since that property is not used any more.
20078         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
20080 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
20082         Use the VC root in `log-edit-listfun'
20083         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
20084         `log-edit-listfun'.
20086 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
20088         Fix description of Unix time, mention new function.
20089         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
20090         Unix time.
20091         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
20092         (Basic Operations on Units): Mention `calc-convert-exact-units'.
20094 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
20096         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
20098 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
20100         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
20101         Don't add newline after the last entry.
20103 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
20105         css-mode.el: Add "not" pseudo-class
20106         (Bug#20267)
20107         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
20108         list of CSS pseudo-classes.
20110 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20112         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
20114 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
20116         Stop messing with the EMACS env var
20117         * doc/emacs/misc.texi (Interactive Shell): Remove description of
20118         EMACS env var.
20120 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
20122         Adapt 'make change-history' to coding cookie
20123         * Makefile.in (change-history): Adjust to change of format of
20124         ChangeLog file, which now has a coding cookie before an indented
20125         copyright notice.
20127 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
20129         Adapt 'make change-history' to coding cookie
20130         * Makefile.in (change-history): Adjust to change of format of
20131         ChangeLog file, which now has a coding cookie before an indented
20132         copyright notice.
20134         gitlog-to-changelog coding cookie and mv -i
20135         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
20136         for copyright notice prototype, so that we get a proper "coding:"
20137         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
20138         existing ChangeLog.  Problems reported by Eli Zaretskii in:
20139         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
20141         Merge from gnulib
20142         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
20143         2015-04-09 gitlog-to-changelog: port to MS-Windows
20145 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
20147         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
20148         (Bug#20212)
20150 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
20152         Stop messing with the EMACS env var
20153         (Bug#20202)
20154         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
20155         * lisp/comint.el (comint-exec-1):
20156         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
20157         * lisp/progmodes/compile.el (compilation-start): Same and bring
20158         INSIDE_EMACS's format in line with other users.
20160         css-mode.el (css-smie-rules): Fix indentation after complex selectors
20161         (Bug#20282)
20162         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
20163         inner structure of selectors.
20165 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
20167         python.el: Indent docstring lines to base-indent
20168         (Bug#19595)
20169         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
20170         an initial patch.
20171         * lisp/progmodes/python.el
20172         (python-indent-context): Add :inside-docstring context.
20173         (python-indent--calculate-indentation): Handle :inside-docstring.
20174         (python-indent-region): Re-indent docstrings.
20175         * test/automated/python-tests.el (python-indent-region-5)
20176         (python-indent-inside-string-2): Fix tests.
20178         python.el: Increase native completion robustness
20179         (Bug#19755)
20180         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
20181         this and providing useful ideas.
20182         * lisp/progmodes/python.el
20183         (python-shell-completion-native-output-timeout): Increase value.
20184         (python-shell-completion-native-try-output-timeout): New var.
20185         (python-shell-completion-native-try): Use it.
20186         (python-shell-completion-native-setup): New readline setup avoids
20187         polluting current context, ensures output when no-completions are
20188         available and includes output end marker.
20189         (python-shell-completion-native-get-completions): Trigger with one
20190         tab only.  Call accept-process-output until output end is found or
20191         python-shell-completion-native-output-timeout is exceeded.
20193 2015-04-08  Samer Masterson  <samer@samertm.com>
20195         * lisp/eshell: Make backslash a no-op in front of normal chars
20196         (Bug#8531)
20197         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
20198         (eshell-parse-backslash): Return escaped character after backslash
20199         if it is special.  Otherwise, if the backslash is not in a quoted
20200         string, ignore the backslash and return the character after; if
20201         the backslash is in a quoted string, return the backslash and the
20202         character after.
20203         * test/automated/eshell.el (eshell-test/escape-nonspecial)
20204         (eshell-test/escape-nonspecial-unicode)
20205         (eshell-test/escape-nonspecial-quoted)
20206         (eshell-test/escape-special-quoted): Add tests for new
20207         `eshell-parse-backslash' behavior.
20209 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
20211         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
20212         after the file name.
20213         (Bug#20276)
20215 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
20217         Minor quoting etc. fixes to Emacs manual
20218         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
20219         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
20220         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
20221         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
20222         * doc/emacs/indent.texi, doc/emacs/macos.texi:
20223         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
20224         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
20225         * doc/emacs/search.texi, doc/emacs/trouble.texi:
20226         * doc/emacs/vc1-xtra.texi:
20227         Use American-style double quoting in ordinary text,
20228         and quote 'like this' when single-quoting in ASCII text.
20229         Also, fix some minor spacing issues.
20231         Minor quoting etc. fixes to elisp intro
20232         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
20233         American-style double quoting in ordinary text.  In ASCII text,
20234         consistently quote 'like this' instead of `like this', unless
20235         Emacs requires the latter.
20237 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
20239         * CONTRIBUTE: Mention log-edit-insert-changelog.
20241         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
20243 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
20245         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
20247 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
20249         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
20250         Fix inheritance of initargs.  (Bug#20270)
20252 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
20254         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
20255         while dowloading information.
20257         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
20258         (package--ensure-init-file): Check file contents before visiting.
20259         (package-initialize): Call it.
20260         (package-install-from-buffer, package-install): Don't call it.
20262 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
20264         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
20265         (Bug#17517)
20267 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
20269         * lisp/net/tramp-cache.el (tramp-flush-file-property):
20270         Fix nasty scoping bug.
20272 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
20274         Add notice to visual commands section
20275         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
20276         such as git call less with its -F option which omits pagination if
20277         the contents is less than one page long.  This interferes with
20278         eshell's visual (sub-)commands.
20280 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
20282         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
20283         environment variable expansion in file names.  (Bug#19839)
20285 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
20287         Prefer double-quote to accent-grave in man pages
20289 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
20291         (Bug#20257)
20292         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
20294 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
20296         Update etc/PROBLEMS.
20297         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
20298         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
20299         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
20300         respectively); other minor updates and tweaks.  (Bug#20011)
20302 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
20304         Add doc strings for some Isearch state vars
20305         * lisp/misearch.el (multi-isearch-buffer-list)
20306         (multi-isearch-file-list): Add doc strings.
20307         (Bug#20232)
20309 2015-04-07  Alan Mackenzie  <acm@muc.de>
20311         Always mark "<" and ">" in #include directives with text properties.
20312         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock
20313         "anchored matcher" with an invocation of
20314         c-make-font-lock-search-function to allow fontification when there's
20315         no trailing space on an "#include <..>" line.
20317 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
20319         Generate a ChangeLog file from commit logs
20320         * .gitignore: Add 'ChangeLog'.
20321         * build-aux/gitlog-to-changelog: New file, from Gnulib.
20322         * build-aux/gitlog-to-emacslog: New file.
20323         * CONTRIBUTE: Document the revised workflow.
20324         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
20325         instead of just special cases.
20326         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
20327         (ChangeLog, unchanged-history-files, change-history)
20328         (change-history-commit): New rules.
20329         * admin/admin.el (make-manuals-dist--1):
20330         Don't worry about doc/ChangeLog.
20331         * admin/authors.el: Add a FIXME.
20332         * admin/make-tarball.txt:
20333         * lisp/calendar/icalendar.el:
20334         * lisp/gnus/deuglify.el:
20335         * lisp/obsolete/gulp.el:
20336         * lwlib/README:
20337         Adjust to renamed ChangeLog history files.
20338         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
20339         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
20340         Remove obsolete discussion of merging ChangeLog files.
20341         New section "Maintaining ChangeLog history".
20342         * build-aux/git-hooks/pre-commit:
20343         Reject attempts to commit files named 'ChangeLog'.
20344         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
20345         * make-dist: Make and distribute top-level ChangeLog if there's a
20346         .git directory.  Distribute the new ChangeLog history files
20347         instead of scattered ChangeLog files.  Distribute the new files
20348         gitlog-to-changelog and gitlog-to-emacslog.
20349         (Bug#19113)
20351         Rename ChangeLogs for gitlog-to-changelog
20352         This patch was implemented via the following shell commands:
20353         find * -name ChangeLog |
20354         sed 's,.*,git mv & &.1,
20355         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
20356         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
20357         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
20358         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
20359         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
20360         sh
20361         git commit -am"[this commit message]"
20363 This file records repository revisions from
20364 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
20365 commit 531b28b4d96adf39d853fcb5e0bba7251fcce4b6 (inclusive).
20366 See ChangeLog.1 for earlier changes.
20368 ;; Local Variables:
20369 ;; coding: utf-8
20370 ;; End:
20372   Copyright (C) 2015 Free Software Foundation, Inc.
20374   This file is part of GNU Emacs.
20376   GNU Emacs is free software: you can redistribute it and/or modify
20377   it under the terms of the GNU General Public License as published by
20378   the Free Software Foundation, either version 3 of the License, or
20379   (at your option) any later version.
20381   GNU Emacs is distributed in the hope that it will be useful,
20382   but WITHOUT ANY WARRANTY; without even the implied warranty of
20383   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20384   GNU General Public License for more details.
20386   You should have received a copy of the GNU General Public License
20387   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.