; Manual Cleanup of ChangeLog.2
[emacs.git] / ChangeLog.2
blob8a3575a16364cb359deccb29fc0ba0039919568f
1 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
3         Fix a problem with gfilenotify in filenotify-tests.el
5         * test/lisp/filenotify-tests.el
6         (file-notify--test-expected-events): Remove.
7         (file-notify--test-cleanup): Do not set that variable.
8         (file-notify--test-with-events): EVENTS can also be a list of lists.
9         (file-notify-test02-events, file-notify-test04-file-validity):
10         Adapt expected result.
12 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
14         * .gitignore: Adjust to changes in 'test' directory structure.
16 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
18         Fix test/manual/etags/Makefile
20         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
21         changes in 'test' directory structure.
23 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
25         Exclude resource dirs from search for tests.
27         * test/Makefile.in: Test file locations are now found with find
28           rather than using finds native functions.
30 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
32         Add test targets without directory names.
34          * (test/Makefile.in): Extend test_template to add two targets for each
35            file.
37 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
39         * lisp/emacs-lisp/package.el: Require url-handlers
41 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
43         Move elisp-mode-tests to new function names.
45          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
46          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
48 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
50         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
52 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
54         Merge branch 'feature/standard-test-location'
56 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
58         * lisp/emacs-lisp/eieio.el: Add some default implementations
60         (standard-class): Mark it obsolete.
61         (slot-missing): Give it a default implementation.
62         (destructor): Simplify and mark it obsolete.
63         (object-print): Give it a default implementation.
64         (eieio-change-class): Rename from change-class.
65         (change-class): Redefine as obsolete alias.
67 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
69         Some final fixes in file notification before merging with master
71         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
72         (file-notify-callback): Improve check for `stopped' event.  Call
73         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
74         (file-notify-add-watch): In case FILE is not a directory, call the
75         file monitor for the kqueue backend.  Otherwise, call the
76         directory monitor for the upper directory.
78         * src/inotify.c (inotifyevent_to_event): Extract file name from
79         watch_object if the event doesn't provide it.
80         (Finotify_add_watch): Add file name to watch_object.
82         * test/automated/file-notify-tests.el (file-notify--test-timeout):
83         Use different timeouts for different libraries.
84         (file-notify--test-with-events): Suppress lock files.  Flush
85         outstanding events before running the body.
86         (file-notify-test02-events, file-notify-test04-file-validity): Do
87         not skip cygwin tests.  Add additional test for file creation.
88         Adapt expected result for different backends.
89         (file-notify-test03-autorevert): Some of the tests don't work for
90         w32notify.
91         (file-notify-test06-many-events): Rename into both directions.
93 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
95         Rework file notifications, kqueue has problems with directory monitors
97         * lisp/filenotify.el (file-notify-add-watch): Call the native
98         add-watch function on the file, not on the dir.
100         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
101         about already deleted entries.
103         * test/automated/auto-revert-tests.el
104         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
105         since this deletes the target file first.
107         * test/automated/file-notify-tests.el (file-notify--test-event-test):
108         Make stronger checks.
109         (file-notify-test01-add-watch, file-notify-test02-events)
110         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
111         Rewrite in order to call file monitors but directory monitors.
112         (file-notify-test06-many-events): Ler rename work in both directions.
114 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
116         Continue with pending events
118         * src/kqueue.c (pending_events): Remove global variable.
119         (kqueue_compare_dir_list): Create `write' event for not used
120         pending events.
121         (globals_of_kqueue): Remove initialization of pending_events.
123 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
125         Improve loops in file-notify-test06-many-events
127         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
128         Use `read-event' pauses for the `write-file' loops; otherwise
129         events are lost in inotify and gfilenotify cases.
131 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
133         Handle more complex rename operation in kqueue
135         * src/kqueue.c (pending_events): New variable.
136         (kqueue_compare_dir_list): Handle more complex rename operation.
137         (globals_of_kqueue): Initialize pending_events.
139         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
140         Adapt expected events in the `rename-file' case.
141         (file-notify-test06-many-events-remote): Declare.
143 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
145         New test with a larger number of events
147         * test/automated/file-notify-tests.el (file-notify--test-with-events):
148         Make timeout heuristically depend on the number of events.
150         (file-notify-test06-many-events): Use it for new test.
152 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
154         Further fixes for kqueue
156         * lisp/filenotify.el (file-notify-callback): Raise also event if
157         directory name matches.
158         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
160         * src/kqueue.c (kqueue_generate_event): Use watch_object as
161         argument instead of ident.  Remove callback argument.  Adapt
162         callees.  Check actions whether they are monitored flags.
164         * test/automated/file-notify-tests.el (file-notify--test-library):
165         New defun.
166         (file-notify-test00-availability, file-notify-test02-events)
167         (file-notify-test04-file-validity)
168         (file-notify-test05-dir-validity): Use it.
169         (file-notify-test02-events, file-notify-test04-file-validity): Add
170         `read-event' calls between different file actions, in order to
171         give the backends a chance to rais an event.  Needed especially
172         for kqueue.  In case of deleting a directory, there are two
173         `deleted' events.
175 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
177         Code cleanup of kqueue.c
179         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
180         (kqueue_compare_dir_list): Do not loop when calling
181         directory_files_internal.  Remove checks for "." and "..", this is
182         done in kqueue_directory_listing now.
183         (Fkqueue_add_watch): Check for proper emacs_open flags.
185 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
187         Doc changes for kqueue
189         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
190         Fix some glitches in the example.
192 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
194         Finish implementation in kqueue.c
196         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
197         Simplify access to list.
198         (kqueue_compare_dir_list): Simplify access to list.  Raise
199         `delete' event if directory does not exist any longer.  Otherwise,
200         wait until directory contents has changed.  Fix error in check.
202 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
204         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
206 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
208         More work on kqueue
210         * lisp/filenotify.el (file-notify-callback): Handle also the
211         `rename' event from kqueue.
212         (file-notify-add-watch): Do not register an entry twice.
214         * src/kqueue.c (kqueue_directory_listing): New function.
215         (kqueue_generate_event): New argument FILE1.  Adapt callees.
216         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
218 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
220         Implement directory events
222         * lisp/filenotify.el (file-notify-handle-event)
223         (file-notify-callback): Remove traces.
225         * src/kqueue.c: Include <sys/time.h>.
226         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
227         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
228         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
229         Compute initial directory listing.  Close file descriptor in case
230         of errors.
231         (syms_of_kqueue): Declare Qcreate.
233 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
235         Build fixes for kqueue support
237         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
238         flag.
240         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
241         kqueue on *BSD.
243 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
245         Continue kqueue implementation
247         * lisp/filenotify.el (file-notify-handle-event)
248         (file-notify-callback): Enable trace messages.
250         * src/kqueue.c: Include also <sys/types.h>.
251         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
252         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
253         (syms_of_kqueue): Add them.
255 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
257         Work on kqueue
259         * lisp/filenotify.el (file-notify--library)
260         (file-notify-descriptors, file-notify-callback)
261         (file-notify-add-watch, file-notify-rm-watch)
262         (file-notify-valid-p): Add kqueue support.
264         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
266 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
268         Add kqueue support
270         * configure.ac (--with-file-notification): Add kqueue.
271         (top): Remove special test for "${HAVE_NS}" and
272         ${with_file_notification}, this is handled inside gfilenotify
273         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
274         instead of library specific variables.
276         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
278         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
280         * src/kqueue.c: New file.
282         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
284 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
286         Some final fixes in file notification before merging with master
288         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
289         (file-notify-callback): Improve check for `stopped' event.  Call
290         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
291         (file-notify-add-watch): In case FILE is not a directory, call the
292         file monitor for the kqueue backend.  Otherwise, call the
293         directory monitor for the upper directory.
295         * src/inotify.c (inotifyevent_to_event): Extract file name from
296         watch_object if the event doesn't provide it.
297         (Finotify_add_watch): Add file name to watch_object.
299         * test/automated/file-notify-tests.el (file-notify--test-timeout):
300         Use different timeouts for different libraries.
301         (file-notify--test-with-events): Suppress lock files.  Flush
302         outstanding events before running the body.
303         (file-notify-test02-events, file-notify-test04-file-validity): Do
304         not skip cygwin tests.  Add additional test for file creation.
305         Adapt expected result for different backends.
306         (file-notify-test03-autorevert): Some of the tests don't work for
307         w32notify.
308         (file-notify-test06-many-events): Rename into both directions.
310 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
312         Update elisp-mode-tests for changed file location.
314          * test/lisp/progmodes/elisp-mode-tests.el:
316 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
318         Exclude manual tests from Makefile
320          * test/Makefile.in:
322 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
324         Move package test files to new directory.
326          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
327          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
329 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
331         Restore delete Makefiles and fix .gitignore.
333          * .gitignore: Update Makefiles to changed locations
334          * test/lisp/progmodes/flymake-resources/Makefile,
335            test/manual/etags/Makefile,
336            test/manual/etags/make-src/Makefile,
337            test/manual/indent/Makefile: Restored and moved to new location.
339 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
341         Test infrastructure: updates after directory move
343          * (test/Makefile.in): Support directories several levels deep.
344          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
345          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
347 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
349         Rename all test files to reflect source layout.
351          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
352            test directory moves.
353          * test/file-organisation.org: New file.
354          * test/automated/Makefile.in
355            test/automated/data/decompress/foo.gz
356            test/automated/data/epg/pubkey.asc
357            test/automated/data/epg/seckey.asc
358            test/automated/data/files-bug18141.el.gz
359            test/automated/data/flymake/test.c
360            test/automated/data/flymake/test.pl
361            test/automated/data/package/archive-contents
362            test/automated/data/package/key.pub
363            test/automated/data/package/key.sec
364            test/automated/data/package/multi-file-0.2.3.tar
365            test/automated/data/package/multi-file-readme.txt
366            test/automated/data/package/newer-versions/archive-contents
367            test/automated/data/package/newer-versions/new-pkg-1.0.el
368            test/automated/data/package/newer-versions/simple-single-1.4.el
369            test/automated/data/package/package-test-server.py
370            test/automated/data/package/signed/archive-contents
371            test/automated/data/package/signed/archive-contents.sig
372            test/automated/data/package/signed/signed-bad-1.0.el
373            test/automated/data/package/signed/signed-bad-1.0.el.sig
374            test/automated/data/package/signed/signed-good-1.0.el
375            test/automated/data/package/signed/signed-good-1.0.el.sig
376            test/automated/data/package/simple-depend-1.0.el
377            test/automated/data/package/simple-single-1.3.el
378            test/automated/data/package/simple-single-readme.txt
379            test/automated/data/package/simple-two-depend-1.1.el
380            test/automated/abbrev-tests.el
381            test/automated/auto-revert-tests.el
382            test/automated/calc-tests.el
383            test/automated/icalendar-tests.el
384            test/automated/character-fold-tests.el
385            test/automated/comint-testsuite.el
386            test/automated/descr-text-test.el
387            test/automated/electric-tests.el
388            test/automated/cl-generic-tests.el
389            test/automated/cl-lib-tests.el
390            test/automated/eieio-test-methodinvoke.el
391            test/automated/eieio-test-persist.el
392            test/automated/eieio-tests.el
393            test/automated/ert-tests.el
394            test/automated/ert-x-tests.el
395            test/automated/generator-tests.el
396            test/automated/let-alist.el
397            test/automated/map-tests.el
398            test/automated/advice-tests.el
399            test/automated/package-test.el
400            test/automated/pcase-tests.el
401            test/automated/regexp-tests.el
402            test/automated/seq-tests.el
403            test/automated/subr-x-tests.el
404            test/automated/tabulated-list-test.el
405            test/automated/thunk-tests.el
406            test/automated/timer-tests.el
407            test/automated/epg-tests.el
408            test/automated/eshell.el
409            test/automated/faces-tests.el
410            test/automated/file-notify-tests.el
411            test/automated/auth-source-tests.el
412            test/automated/gnus-tests.el
413            test/automated/message-mode-tests.el
414            test/automated/help-fns.el
415            test/automated/imenu-test.el
416            test/automated/info-xref.el
417            test/automated/mule-util.el
418            test/automated/isearch-tests.el
419            test/automated/json-tests.el
420            test/automated/bytecomp-tests.el
421            test/automated/coding-tests.el
422            test/automated/core-elisp-tests.el
423            test/automated/decoder-tests.el
424            test/automated/files.el
425            test/automated/font-parse-tests.el
426            test/automated/lexbind-tests.el
427            test/automated/occur-tests.el
428            test/automated/process-tests.el
429            test/automated/syntax-tests.el
430            test/automated/textprop-tests.el
431            test/automated/undo-tests.el
432            test/automated/man-tests.el
433            test/automated/completion-tests.el
434            test/automated/dbus-tests.el
435            test/automated/newsticker-tests.el
436            test/automated/sasl-scram-rfc-tests.el
437            test/automated/tramp-tests.el
438            test/automated/obarray-tests.el
439            test/automated/compile-tests.el
440            test/automated/elisp-mode-tests.el
441            test/automated/f90.el
442            test/automated/flymake-tests.el
443            test/automated/python-tests.el
444            test/automated/ruby-mode-tests.el
445            test/automated/subword-tests.el
446            test/automated/replace-tests.el
447            test/automated/simple-test.el
448            test/automated/sort-tests.el
449            test/automated/subr-tests.el
450            test/automated/reftex-tests.el
451            test/automated/sgml-mode-tests.el
452            test/automated/tildify-tests.el
453            test/automated/thingatpt.el
454            test/automated/url-future-tests.el
455            test/automated/url-util-tests.el
456            test/automated/add-log-tests.el
457            test/automated/vc-bzr.el
458            test/automated/vc-tests.el
459            test/automated/xml-parse-tests.el
460            test/BidiCharacterTest.txt
461            test/biditest.el
462            test/cedet/cedet-utests.el
463            test/cedet/ede-tests.el
464            test/cedet/semantic-ia-utest.el
465            test/cedet/semantic-tests.el
466            test/cedet/semantic-utest-c.el
467            test/cedet/semantic-utest.el
468            test/cedet/srecode-tests.el
469            test/cedet/tests/test.c
470            test/cedet/tests/test.el
471            test/cedet/tests/test.make
472            test/cedet/tests/testdoublens.cpp
473            test/cedet/tests/testdoublens.hpp
474            test/cedet/tests/testfriends.cpp
475            test/cedet/tests/testjavacomp.java
476            test/cedet/tests/testnsp.cpp
477            test/cedet/tests/testpolymorph.cpp
478            test/cedet/tests/testspp.c
479            test/cedet/tests/testsppcomplete.c
480            test/cedet/tests/testsppreplace.c
481            test/cedet/tests/testsppreplaced.c
482            test/cedet/tests/testsubclass.cpp
483            test/cedet/tests/testsubclass.hh
484            test/cedet/tests/testtypedefs.cpp
485            test/cedet/tests/testvarnames.c
486            test/etags/CTAGS.good
487            test/etags/ETAGS.good_1
488            test/etags/ETAGS.good_2
489            test/etags/ETAGS.good_3
490            test/etags/ETAGS.good_4
491            test/etags/ETAGS.good_5
492            test/etags/ETAGS.good_6
493            test/etags/a-src/empty.zz
494            test/etags/a-src/empty.zz.gz
495            test/etags/ada-src/2ataspri.adb
496            test/etags/ada-src/2ataspri.ads
497            test/etags/ada-src/etags-test-for.ada
498            test/etags/ada-src/waroquiers.ada
499            test/etags/c-src/a/b/b.c
500            test/etags/c-src/abbrev.c
501            test/etags/c-src/c.c
502            test/etags/c-src/dostorture.c
503            test/etags/c-src/emacs/src/gmalloc.c
504            test/etags/c-src/emacs/src/keyboard.c
505            test/etags/c-src/emacs/src/lisp.h
506            test/etags/c-src/emacs/src/regex.h
507            test/etags/c-src/etags.c
508            test/etags/c-src/exit.c
509            test/etags/c-src/exit.strange_suffix
510            test/etags/c-src/fail.c
511            test/etags/c-src/getopt.h
512            test/etags/c-src/h.h
513            test/etags/c-src/machsyscalls.c
514            test/etags/c-src/machsyscalls.h
515            test/etags/c-src/sysdep.h
516            test/etags/c-src/tab.c
517            test/etags/c-src/torture.c
518            test/etags/cp-src/MDiagArray2.h
519            test/etags/cp-src/Range.h
520            test/etags/cp-src/burton.cpp
521            test/etags/cp-src/c.C
522            test/etags/cp-src/clheir.cpp.gz
523            test/etags/cp-src/clheir.hpp
524            test/etags/cp-src/conway.cpp
525            test/etags/cp-src/conway.hpp
526            test/etags/cp-src/fail.C
527            test/etags/cp-src/functions.cpp
528            test/etags/cp-src/screen.cpp
529            test/etags/cp-src/screen.hpp
530            test/etags/cp-src/x.cc
531            test/etags/el-src/TAGTEST.EL
532            test/etags/el-src/emacs/lisp/progmodes/etags.el
533            test/etags/erl-src/gs_dialog.erl
534            test/etags/f-src/entry.for
535            test/etags/f-src/entry.strange.gz
536            test/etags/f-src/entry.strange_suffix
537            test/etags/forth-src/test-forth.fth
538            test/etags/html-src/algrthms.html
539            test/etags/html-src/index.shtml
540            test/etags/html-src/software.html
541            test/etags/html-src/softwarelibero.html
542            test/etags/lua-src/allegro.lua
543            test/etags/objc-src/PackInsp.h
544            test/etags/objc-src/PackInsp.m
545            test/etags/objc-src/Subprocess.h
546            test/etags/objc-src/Subprocess.m
547            test/etags/objcpp-src/SimpleCalc.H
548            test/etags/objcpp-src/SimpleCalc.M
549            test/etags/pas-src/common.pas
550            test/etags/perl-src/htlmify-cystic
551            test/etags/perl-src/kai-test.pl
552            test/etags/perl-src/yagrip.pl
553            test/etags/php-src/lce_functions.php
554            test/etags/php-src/ptest.php
555            test/etags/php-src/sendmail.php
556            test/etags/prol-src/natded.prolog
557            test/etags/prol-src/ordsets.prolog
558            test/etags/ps-src/rfc1245.ps
559            test/etags/pyt-src/server.py
560            test/etags/tex-src/gzip.texi
561            test/etags/tex-src/nonewline.tex
562            test/etags/tex-src/testenv.tex
563            test/etags/tex-src/texinfo.tex
564            test/etags/y-src/atest.y
565            test/etags/y-src/cccp.c
566            test/etags/y-src/cccp.y
567            test/etags/y-src/parse.c
568            test/etags/y-src/parse.y
569            test/indent/css-mode.css
570            test/indent/js-indent-init-dynamic.js
571            test/indent/js-indent-init-t.js
572            test/indent/js-jsx.js
573            test/indent/js.js
574            test/indent/latex-mode.tex
575            test/indent/modula2.mod
576            test/indent/nxml.xml
577            test/indent/octave.m
578            test/indent/pascal.pas
579            test/indent/perl.perl
580            test/indent/prolog.prolog
581            test/indent/ps-mode.ps
582            test/indent/ruby.rb
583            test/indent/scheme.scm
584            test/indent/scss-mode.scss
585            test/indent/sgml-mode-attribute.html
586            test/indent/shell.rc
587            test/indent/shell.sh
588            test/redisplay-testsuite.el
589            test/rmailmm.el
590            test/automated/buffer-tests.el
591            test/automated/cmds-tests.el
592            test/automated/data-tests.el
593            test/automated/finalizer-tests.el
594            test/automated/fns-tests.el
595            test/automated/inotify-test.el
596            test/automated/keymap-tests.el
597            test/automated/print-tests.el
598            test/automated/libxml-tests.el
599            test/automated/zlib-tests.el: Files Moved.
601 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
603         Rework file notifications, kqueue has problems with directory monitors
605         * lisp/filenotify.el (file-notify-add-watch): Call the native
606         add-watch function on the file, not on the dir.
608         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
609         about already deleted entries.
611         * test/automated/auto-revert-tests.el
612         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
613         since this deletes the target file first.
615         * test/automated/file-notify-tests.el (file-notify--test-event-test):
616         Make stronger checks.
617         (file-notify-test01-add-watch, file-notify-test02-events)
618         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
619         Rewrite in order to call file monitors but directory monitors.
620         (file-notify-test06-many-events): Ler rename work in both directions.
622 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
624         Continie with pending events
626         * src/kqueue.c (pending_events): Remove global variable.
627         (kqueue_compare_dir_list): Create `write' event for not used
628         pending events.
629         (globals_of_kqueue): Remove initialization of pending_events.
631 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
633         Improve loops in file-notify-test06-many-events
635         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
636         Use `read-event' pauses for the `write-file' loops; otherwise
637         events are lost in inotify and gfilenotify cases.
639 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
641         Handle more complex rename operation in kqueue
643         * src/kqueue.c (pending_events): New variable.
644         (kqueue_compare_dir_list): Handle more complex rename operation.
645         (globals_of_kqueue): Initialize pending_events.
647         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
648         Adapt expected events in the `rename-file' case.
649         (file-notify-test06-many-events-remote): Declare.
651 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
653         New test with a larger number of events.
655         * test/automated/file-notify-tests.el (file-notify--test-with-events):
656         Make timeout heuristically depend on the number of events.
658         (file-notify-test06-many-events): Use it for new test.
660 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
662         Further fixes for kqueue.
664         * lisp/filenotify.el (file-notify-callback): Raise also event if
665         directory name matches.
666         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
668         * src/kqueue.c (kqueue_generate_event): Use watch_object as
669         argument instead of ident.  Remove callback argument.  Adapt
670         callees.  Check actions whether they are monitored flags.
672         * test/automated/file-notify-tests.el (file-notify--test-library):
673         New defun.
674         (file-notify-test00-availability, file-notify-test02-events)
675         (file-notify-test04-file-validity)
676         (file-notify-test05-dir-validity): Use it.
677         (file-notify-test02-events, file-notify-test04-file-validity): Add
678         `read-event' calls between different file actions, in order to
679         give the backends a chance to rais an event.  Needed especially
680         for kqueue.  In case of deleting a directory, there are two
681         `deleted' events.
683 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
685         Code cleanup of kqueue.c
687         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
688         (kqueue_compare_dir_list): Do not loop when calling
689         directory_files_internal.  Remove checks for "." and "..", this is
690         done in kqueue_directory_listing now.
691         (Fkqueue_add_watch): Check for proper emacs_open flags.
693 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
695         Doc changes for kqueue
697         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
698         Fix some glitches in the example.
700 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
702         Finish implementation in kqueue.c
704         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
705         Simplify access to list.
706         (kqueue_compare_dir_list): Simplify access to list.  Raise
707         `delete' event if directory does not exist any longer.  Otherwise,
708         wait until directory contents has changed.  Fix error in check.
710 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
712         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
714 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
716         More work on kqueue
718         * lisp/filenotify.el (file-notify-callback): Handle also the
719         `rename' event from kqueue.
720         (file-notify-add-watch): Do not register an entry twice.
722         * src/kqueue.c (kqueue_directory_listing): New function.
723         (kqueue_generate_event): New argument FILE1.  Adapt callees.
724         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
726 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
728         Implement directory events
730         * lisp/filenotify.el (file-notify-handle-event)
731         (file-notify-callback): Remove traces.
733         * src/kqueue.c: Include <sys/time.h>.
734         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
735         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
736         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
737         Compute initial directory listing.  Close file descriptor in case
738         of errors.
739         (syms_of_kqueue): Declare Qcreate.
741 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
743         Build fixes for kqueue support.
745         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
746         flag.
748         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
749         kqueue on *BSD.
751 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
753         Continue kqueue implementation
755         * lisp/filenotify.el (file-notify-handle-event)
756         (file-notify-callback): Enable trace messages.
758         * src/kqueue.c: Include also <sys/types.h>.
759         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
760         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
761         (syms_of_kqueue): Add them.
763 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
765         Work on kqueue
767         * lisp/filenotify.el (file-notify--library)
768         (file-notify-descriptors, file-notify-callback)
769         (file-notify-add-watch, file-notify-rm-watch)
770         (file-notify-valid-p): Add kqueue support.
772         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
774 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
776         Add kqueue support
778         * configure.ac (--with-file-notification): Add kqueue.
779         (top): Remove special test for "${HAVE_NS}" and
780         ${with_file_notification}, this is handled inside gfilenotify
781         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
782         instead of library specific variables.
784         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
786         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
788         * src/kqueue.c: New file.
790         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
792 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
794         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
796         * verilog-mode.el (verilog-save-font-no-change-functions):
797         Commentary and fix pre-Emacs 21 behavior.
799 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
801         Use obarray functions from obarray.
803         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
804           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
805           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
806           delegate to obarray.el functions.
807         * lisp/loadup.el: load obarray before abbrev
808         * test/automated/abbrev-tests.el: new tests
810 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
812         epa.el: Add option to replace original text
814         * lisp/epa.el (epa-replace-original-text): New user option.
815         (Bug#21947)
817 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
819         Add interactive seek command.
821         * lisp/mpc.el (mpc-cmd-seekcur): New function.
822         (mpc-seek-current): New command.
823         (mpc-mode-menu): Add entry for mpc-seek-current
824         (mpc-mode-map): Bind mpc-seek-current to "g"
826 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
828         Fix issue where a new tempfile was created every refresh
830         * lisp/mpc.el (mpc-format): Leave dir as relative path
832 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
834         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
836         (c-save-buffer-state): Use with-silent-modifications when available.
837         (c--macroexpand-all): Check macroexpand-all directly rather than
838         c--mapcan-status.
840 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
842         * lisp/loadup.el: Set max-lisp-eval-depth here
844         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
845         (BYTE_COMPILE_FLAGS): Adjust accordingly.
847 2015-11-17  João Távora  <joaotavora@gmail.com>
849         Minor fix to comment indentation and typo in last commit
851         * linum.el (linum-update-window): Fix comment indentation and a
852         typo.
854 2015-11-17  João Távora  <joaotavora@gmail.com>
856         linum-mode plays more nicely with other margin-setting extensions
858         linum.el will only modify the left margin if it needs to, and will
859         only reset the it back to 0 if it guesses that no-one has touched that
860         margin in the meantime.
862         As such, this is a more of a workaround than an actual fix, but fixes
863         the problems described in bug#20674 regarding the interaction with
864         modes such as darkroom-mode and olivetti-mode.
866         A similar fix was commited to nlinum.el in ELPA.git's
867         e7f5f549fbfb740b911fb7f33b42381ecece56d8
869         * linum.el (linum-delete-overlays): Restore margins more
870         criteriously.
871         (linum-update-window): Set margins more criteriously.
873 2015-11-16  Daiki Ueno  <ueno@gnu.org>
875         * lisp/image-mode.el: Support encrypted file
877         (image-toggle-display-image): Read content from the buffer instead
878         of the file, if the buffer holds a decrypted data.  (Bug#21870)
880 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
882         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
884 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
886         * lisp/emacs-lisp/package.el: Fix a decoding issue
888         (package--with-response-buffer): Use `url-insert-buffer-contents'.
889         The previous code had some issues with decoding. Refactoring that
890         function allows us to use the decoding from url-handlers while still
891         treating both sync and async requests the same.
893         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
894         `url-insert-buffer-contents'.
895         (url-insert-buffer-contents): New function
897 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
899         * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
901         (package--with-work-buffer-async): Reimplement as
902         `package--with-response-buffer'.
903         (package--with-work-buffer): Mark obsolete.
904         (package--with-response-buffer): New macro. This is a more self
905         contained and less contrived version of
906         `package--with-work-buffer-async'.  It uses keyword arguments,
907         doesn't have async on the name, doesn't fallback on
908         `package--with-work-buffer', and has _much_ simpler error
909         handling.
911         (package--check-signature, package--download-one-archive)
912         (package-install-from-archive, describe-package-1): Use it.
914         (package--download-and-read-archives): Let
915         `package--download-one-archive' take care of calling
916         `package--update-downloads-in-progress'.
918 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
920         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
922         (verilog-save-buffer-state): Use with-silent-modifications when available.
923         (verilog-save-font-no-change-functions): Don't bind
924         before/after-change-functions if it's not needed.
926 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
928         * CONTRIBUTE: Remove information about feature freeze.
930         Merge branch 'release-process-lowercase'
932 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
934         Document the release process
936         * admin/notes/versioning: Add information about RC releases.
937         * admin/release-process: Document the release process.
938         * admin/authors.el (authors-ignored-files):
939         * admin/README: Change FOR-RELEASE to release-process.
940         * CONTRIBUTE:
941         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
943 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
945         * admin/release-process: Rename from admin/FOR-RELEASE.
947 2015-11-14  David Engster  <deng@randomsample.de>
949         gitmerge: Fix git log command
951         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
952         only want commits from the branch that is to be merged.
953         (gitmerge-setup-log-buffer): Use the same symmetric range as in
954         `gitmerge-missing'.
956 2015-11-14  David Engster  <deng@randomsample.de>
958         gitmerge: Try to detect cherry-picks
960         * admin/gitmerge.el (gitmerge-default-branch): Change to
961         origin/emacs-25.
962         (gitmerge-missing): Use symmetric difference ('...') between
963         branch and master so that cherry-picks can be detected.
965 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
967         Increment Emacs version on master branch
969         * lisp/cus-edit.el (customize-changed-options-previous-release):
970         Increase previous version to 24.5.
972         * configure.ac:
973         * msdos/sed2v2.inp: Bump version to 25.1.50.
975 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
977         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
978         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
979         * README: Mention CONTRIBUTE.
981 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
983         Update verilog-mode.el to 2015-11-09-b121d60-vpo
985         * verilog-mode.el (verilog-auto, verilog-delete-auto)
986         (verilog-modi-cache-results, verilog-save-buffer-state)
987         (verilog-save-font-no-change-functions): When internally suppressing
988         change functions, use `inhibit-modification-hooks' and call
989         `after-change-funtions' to more nicely work with user hooks.
990         Reported by Stefan Monnier.
991         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
992         Create `verilog-delete-auto-buffer' to avoid double-calling
993         fontification hooks.
994         (verilog-restore-buffer-modified-p, verilog-auto)
995         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
996         set-buffer-modified-p.  Reported by Stefan Monnier.
997         (verilog-diff-auto, verilog-diff-buffers-p)
998         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
999         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
1000         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
1001         by Amol Nagapurkar.
1002         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
1003         properties inside internal structures.  No functional change
1004         intended.
1006 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1008         Use generic dispatch for xref backends
1010         * lisp/progmodes/xref.el (xref-backend-functions):
1011         New variable.
1012         (xref-find-function): Remove.
1013         (xref-find-backend)
1014         (xref--etags-backend): New functions.
1015         (xref-identifier-at-point-function)
1016         (xref-identifier-completion-table-function): Remove.
1017         (xref-backend-definitions, xref-backend-references)
1018         (xref-backend-apropos, xref-backend-identifier-at-point)
1019         (xref-backend-identifier-completion-table):
1020         New generic functions.
1022         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
1023         Add `elisp--xref-backend' to the beginning of
1024         `xref-backend-functions', locally.  Delete references to
1025         removed functions and vars.
1026         (elisp-xref-find): Remove.
1027         (elisp--xref-backend): New function.
1028         (elisp--xref-find-references, elisp--xref-find-apropos)
1029         (elisp--xref-identifier-completion-table):
1030         Turn into appropriately named generic methods.
1032         * lisp/progmodes/etags.el (etags-xref-find): Remove.
1033         (xref-backend-identifier-completion-table)
1034         (xref-backend-references, xref-backend-definitions)
1035         (xref-backend-apropos): New generic methods.
1037 2015-11-13  Juri Linkov  <juri@linkov.net>
1039         Support rectangular regions for more commands
1041         * lisp/simple.el (region-extract-function): Handle the arg
1042         value ‘bounds’.
1043         (region-insert-function): New function.
1044         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
1045         If non-nil, operate on multiple chunks.
1046         (region-noncontiguous-p): New function.
1048         * lisp/rect.el: Add function rectangle--insert-region
1049         around region-insert-function.
1050         (extract-rectangle-bounds): New function.
1051         (rectangle--extract-region): Handle the arg value ‘bounds’.
1052         (rectangle--insert-region): New function.
1054         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
1055         around region-insert-function.
1056         (cua--extract-rectangle-bounds): New function.
1057         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
1059         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
1060         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
1061         (query-replace-regexp-eval, map-query-replace-regexp)
1062         (replace-string, replace-regexp): Use ‘use-region-p’.
1063         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
1064         (perform-replace): Add arg ‘region-noncontiguous-p’.
1065         If non-nil, operate on multiple chunks.
1067         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
1068         If non-nil, operate on multiple chunks.  (Bug#19829)
1070 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1072         Handle multiple matches on the same line; add highlighting
1074         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
1075         column value in characters.
1076         (xref--collect-matches): Rename from `xref--collect-match'.
1077         Search for all matches in the hit line.  Add `highlight' face to
1078         the matched region in the summary.  Update both callers.
1080 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1082         Replace xref-match-bounds with xref-match-length
1084         Relying on xref-location-marker to point to the beginning of the match
1086         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
1087         (xref-match-length): Add.
1088         (xref-make-match): Change the arguments.
1089         (xref--match-buffer-bounds): Remove.
1090         (xref-match-item): Store length, instead of end-column.
1091         (xref-pulse-momentarily)
1092         (xref--collect-match)
1093         (xref--query-replace-1): Update accordingly.
1094         (xref-query-replace): Ditto.  And check that the search results
1095         are up-to-date.
1097 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1099         Merge from gnulib
1101         This incorporates:
1102         2015-11-13 xalloc-oversized: improve performance with GCC 5
1103         * lib/xalloc-oversized.h: Copy from gnulib.
1105 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1107         Spruce up ftfont.c memory allocation
1109         * src/ftfont.c (setup_otf_gstring):
1110         Avoid O(N**2) behavior when reallocating.
1111         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
1112         reallocating buffers; this simplifies the code.  Do not trust
1113         mflt_run to leave the output areas unchanged on failure, as
1114         this isn’t part of its interface spec.
1116 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1118         Port recent XCB changes to 64-bit ‘long int’
1120         For historical reasons, libX11 represents 32-bit values like Atoms as
1121         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
1122         do that, so adapt the recent XCB code to behave properly on 64-bit
1123         platforms.  Also, fix what appears to be a bug in the interpretation
1124         of xcb_get_property_value_length, at least on my Fedora platform
1125         which is running libxcb-1.11-5.fc21.
1126         * src/xfns.c (x_real_pos_and_offsets):
1127         * src/xterm.c (get_current_wm_state):
1128         xcb_get_property_value_length returns a byte count, not a word count.
1129         For 32-bit quantities, xcb_get_property_value returns a vector
1130         of 32-bit words, not of (possibly 64-bit) long int.
1132 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1134         * src/undo.c (run_undoable_change): Now static.
1136 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1138         Remove support for ':timeout' from w32 tray notifications
1140         * src/w32fns.c (Fw32_notification_notify): Delete the code that
1141         supports ':timeout'.
1142         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
1143         with dbusbind.c when D-Bus is compiled in.
1145         * doc/lispref/os.texi (Desktop Notifications): Don't mention
1146         ':timeout'.
1148 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1150         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
1151         (simple-test--transpositions): New macro.
1152         (simple-transpose-subr): New test.
1154 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1156         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
1158 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1160         * src/undo.c: Small fixes for previous change
1161         (run_undoable_change): Mark void argument list.
1162         (record_property_change): Remove unused variable `boundary'.
1164 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1166         Add a few more variables to redisplay--variables
1168         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
1169         and bidi-display-reordering to the list.
1171 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1173         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
1175 2015-11-13  Eli Barzilay  <eli@barzilay.org>
1177         Fix point positioning after transposing with negative arg
1179         * lisp/simple.el (transpose-subr): When invoked with a negative
1180         argument, move point to after the transposed text, like we do
1181         when invoked with a positive argument.  (Bug#21885)
1183 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1185         Fix last change in shr.el
1187         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
1188         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
1190 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1192         Fix last change
1194         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
1195         Don't DEFSYM tray notification symbols if D-Bus is being used.
1197 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1199         Another fix for MinGW64 and Cygwin builds due to notifications
1201         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
1202         being compiled into Emacs.
1203         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
1204         Sw32_notification_notify and Sw32_notification_close if the code
1205         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
1207 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1209         Remove intern calls and XXX comments from Fx_export_frames
1211         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
1212         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
1213         for consistency with image types.  Remove XXX comments.
1214         (syms_of_xfns) <Qpdf>: DEFSYM it.
1216 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
1218         shr: don't invoke unbound function (Bug#21895)
1220         * lisp/net/shr.el (have-fringes-p): New function.
1221         (shr-insert-document, shr-fill-text): Use it.
1223 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
1225         * test/automated/keymaps-test.el: Fix test to make it repeatable
1227         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
1228         entry to its initial value to make the test repeatable in interactive
1229         sessions (assuming it doesn't fail and crashes Emacs, of course).
1231 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
1233         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
1234         Small fix.
1236 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
1238         The heuristic that Emacs uses to add an `undo-boundary' has been
1239         reworked, as it interacts poorly with functions on `post-command-hook'
1240         or `after-change-functions'.
1242         * lisp/simple.el: New section added.
1243         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
1244         (self_insert_command): Calls simple.el to amalgamate.
1245         (delete_char): Calls simple.el to amalgamate.
1246         * src/keyboard.c (last_undo_boundary): Removed.
1247         * src/undo.c (run_undoable_change): New function.
1249 2015-11-12  Juri Linkov  <juri@linkov.net>
1251         Bind [?\S-\ ] to previous line command in Dired-like modes
1253         * lisp/arc-mode.el (archive-mode-map):
1254         * lisp/dired.el (dired-mode-map):
1255         * lisp/proced.el (proced-mode-map):
1256         * lisp/vc/vc-dir.el (vc-dir-mode-map):
1257         Bind [?\S-\ ] to previous line command.
1258         (Bug#20790)
1260 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
1262         Fix the MinGW64 and Cygwin-w32 builds
1264         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
1265         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
1266         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
1267         which cause trouble with MinGW42 headers.  Ifdef away tray
1268         notifications code for Cygwin.  Reported by Andy Moreton
1269         <andrewjmoreton@gmail.com>.
1271 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
1273         Enable sorting of JSON object keys when encoding
1275         * lisp/json.el (json-encoding-object-sort-predicate): New variable
1276         for specifying a sorting predicate for JSON objects during encoding.
1277         (json--plist-to-alist): New utility function.
1278         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
1279         are to be sorted.
1280         (json-encode-alist): Sort output by
1281         `json-encoding-object-sort-predicate, when set.
1282         (json-encode-plist): Re-use `json-encode-alist' when object keys are
1283         to be sorted.
1284         (json-pretty-print-buffer-ordered): New command to pretty print the
1285         buffer with object keys sorted alphabetically.
1286         (json-pretty-print-ordered): New command to pretty print the region
1287         with object keys sorted alphabetically.
1289         * test/automated/json-tests.el (test-json-plist-to-alist)
1290         (test-json-encode-plist, test-json-encode-hash-table)
1291         (test-json-encode-alist-with-sort-predicate)
1292         (test-json-encode-plist-with-sort-predicate): New tests.
1294         * etc/NEWS: Add an entry for the new commands.
1296 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
1298         * test/automated/keymap-tests.el: New test file.
1300 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1302         Speed up x_real_pos_and_offsets using XCB
1304         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
1305         all X calls, and pipeline requests when possible, collecting results
1306         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
1308 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1310         Enable use of XCB for checking window manager state
1312         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
1313         of XGetWindowProperty plus error-catching, since we can explicitly
1314         check for errors in the XCB version.  This eliminates 3 XSync calls on
1315         top of the round-trip actually fetching the information.
1317 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1319         Detect XCB and save a connection handle
1321         * configure.ac: If using X11, check for XCB libraries and header.
1322         * src/Makefile.in (XCB_LIBS): Define.
1323         (LIBX_EXTRA): Include it.
1325         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
1326         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
1327         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
1329 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1331         Reduce some data dependencies between X calls
1333         Gains nothing in the traditional-Xlib code, but more closely aligns
1334         with how the XCB version will work.
1336         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
1337         send coordinates (0,0) to the X server and add in the real coordinates
1338         after getting the response.  Move XGetGeometry for outer window inside
1339         error-trapping block.  Use DPY variable more, since it's available.
1341 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1343         Use color cache for creating bitmap
1345         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
1346         Set attributes to use the caching color allocator.  Initialize and
1347         free the cache.
1349 2015-11-12  Eli Barzilay  <eli@barzilay.org>
1351         Add "^" to the interactive specs of `dired-next/previous-line'
1353         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
1354         to bind these commands to the arrow keys, and that means that they work
1355         better with a "^" in the `interactive' declaration so selection works
1356         as expected.
1358 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1360         Sync with soap-client repository, version 3.0.2
1362         * soap-client.el: Bump version to 3.0.2.
1364         * soap-client.el (soap-warning): Use format, not format-message.
1366         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
1367         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
1369         * soap-client.el: Support Emacs versions that do not have
1370         define-error.
1372         * soap-inspect.el: Remove version header.
1374         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
1375         format.
1377 2015-11-11  Alan Mackenzie  <acm@muc.de>
1379         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start
1381         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
1382         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
1383         (c-guess-basic-syntax):
1384         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
1385         (c-get-fallback-scan-pos): "New" function (existed several years ago).
1386         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
1387         c-get-fallback-scan-pos.
1388         (c-parse-state-1): Handle 'BOD strategy.
1390         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
1391         (c-font-lock-fontify-region): Remove bindings of
1392         open-paren-in-column-0-is-defun-start to nil.
1394         * doc/misc/cc-mode.texi (Performance Issues)
1395         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
1397 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
1399         * lisp/obarray.el: Fix shadowed variables.
1400         (obarray-map, obarray-remove, obarray-put, obarray-get):
1401         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
1403 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
1405         Avoid error in submitting a form with EWW
1407         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
1408         CHUNK to be nil.  (Bug#21881)
1410 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1412         Rename seq-p and map-p to seqp and mapp
1414         * lisp/emacs-lisp/seq.el (seqp): New name.
1415         * lisp/emacs-lisp/map.el (mapp): New name.
1416         * doc/lispref/sequences.texi: Update the documentation for seqp.
1417         * test/automated/map-tests.el: Update the tests for mapp.
1419 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1421         Rename obarray-p to obarrayp
1423         * lisp/obarray.el (obarrayp): New name.
1424         * test/automated/obarray-tests.el: Update the tests.
1426 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1428         Rename obarray-foreach to obarray-map
1430         * lisp/obarray.el (obarray-map): New name.
1431         * test/automated/obarray-tests.el: Update the corresponding tests.
1433 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
1435         New file with obarray functions
1437         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
1438         * test/automated/obarray-tests.el: New file.
1440 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
1442         Implement tray notifications for MS-Windows
1444         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
1445         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
1446         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
1447         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
1448         (EMACS_NOTIFICATION_MSG): New macros.
1449         (NI_Severity): New enumeration.
1450         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
1451         (delete_tray_notification, Fw32_notification_notify)
1452         (Fw32_notification_close): New functions.
1453         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
1454         keywords used by w32-notification-notify.
1456         * doc/lispref/os.texi (Desktop Notifications): Describe the native
1457         w32 tray notifications.
1459 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
1461         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
1463         * lisp/net/tramp.el (tramp-handle-file-equal-p)
1464         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
1465         Harvey Chapman <hchapman@3gfp.com>.
1467         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
1468         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
1469         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
1470         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
1472 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
1474         * CONTRIBUTE: Encourage adding tests.
1476         Based on this post from John Wiegley:
1478           From: "John Wiegley" <johnw@newartisans.com>
1479           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
1480           To: Juanma Barranquero <lekktu@gmail.com>
1481           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
1482               emacs-devel <emacs-devel@gnu.org>
1483           Date: Wed, 28 Oct 2015 18:45:29 -0700
1484           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
1486           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
1488 2015-11-10  David Reitter  <david.reitter@gmail.com>
1490         Avoid creating notification objects when possible
1492         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
1493         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
1494         functions that do not require a notification object.  When needed,
1495         define NSWindowDidEnterFullScreenNotification to allow for compilation
1496         on OS X 10.6.8.
1498 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1500         Move INTEGER_TO_CONS body out of .h file
1502         * src/data.c (INTBIG_TO_LISP): New macro, with most
1503         of the contents of the old INTEGER_TO_CONS.
1504         (intbig_to_lisp, uintbig_to_lisp): New functions.
1505         * src/lisp.h (INTEGER_TO_CONS):
1506         Simplify by using EXPR_SIGNED and the new functions.
1507         This shrinks code size a bit, and makes it easier to
1508         put a breakpoint on handling of large integers.
1510 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1512         Merge from gnulib
1514         This incorporates:
1515         2015-11-10 intprops: new public macro EXPR_SIGNED
1516         2015-11-10 intprops: fix typo in clang port
1517         * lib/intprops.h: Copy from gnulib.
1519 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1521         Spelling fixes
1523         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
1524         Fix misspelling in output.
1526 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1528         * doc/lispref/variables.texi (Directory Local Variables):
1529         Document dir-locals wildcards.
1531         * lisp/files.el (dir-locals-file): Point to Info node.
1533         * doc/emacs/custom.texi (Directory Variables):
1534         Document dir-locals wildcards.
1536         * etc/NEWS: Document new functionality.
1538 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1540         * lisp/files.el: Don't allow customization of dir-locals sorting.
1541         In retrospect, this is not a good idea for the same reason that
1542         `dir-locals-file' is a defconst, because it is important that this
1543         behaviour be "uniform across different environments and users".
1544         Sure, the user can still change the sorting with a hack, but we
1545         shouldn't encourage them to change it.
1546         (dir-locals--all-files): Return list in the order returned by
1547         `file-expand-wildcards'.
1548         (file-expand-wildcards): Document the sorting predicate used.
1549         (dir-locals-sort-predicate): Delete variable.
1551 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1553         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
1555         * lisp/isearch.el (search-default-regexp-mode): Change default value.
1557 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1559         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
1560         `locate-dominating-file' will now keep looking if the files it finds in
1561         a given directory are unreadable (or not files).
1563 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1565         * lisp/files.el (dir-locals-file): Allow wildcards.
1566         (dir-locals-find-file, dir-locals-collect-variables)
1567         (dir-locals-read-from-file): Update accordingly.
1568         (hack-dir-local-variables): Rename a local variable.
1570         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
1572         * lisp/help-fns.el (describe-variable): Update accordingly.
1574         * .gitignore: Add .dir-locals?.el.
1576 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1578         * lisp/emacs-lisp/map.el (map-merge-with): New function.
1580         * test/automated/map-tests.el (test-map-merge-with): New test.
1582 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
1584         Fix some recently-perturbed bookmark autoloads
1586         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
1587         (bookmark-set): Restore autoload.
1588         (bookmark-set-no-overwrite): Add autoload.
1590         Thanks to Juanma Barranquero for noticing the autoload problems
1591         introduced by my recent commit adding/changing the above functions
1592         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
1594 2015-11-09  Noah Friedman  <friedman@splode.com>
1596         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
1597         the start of buffer.  I don't recall if older versions of gdb were
1598         less strict but you cannot dump a 0-length range in gdb 7.9.1.
1600 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
1602         * lisp/progmodes/project.el: Update Commentary.
1604         Merge branch 'project-next'
1606 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
1608         Fold `project-ask-user' into `project-current'
1610         * lisp/progmodes/project.el (project-find-functions):
1611         Remove `project-ask-user'.
1612         (project-ask-user): Remove function and the corresponding
1613         `project-roots' implementation.
1614         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
1615         user in case there's no project in the current directory.  Update
1616         all callers.
1618 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
1620         When VC detects a conflict, specify which file
1622         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
1623         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
1624         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
1625         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
1626         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
1627           to display a standard message that specifies the conflicted file.
1629         Before this change, the message VC used for indicating a conflicted
1630         file was just "There are unresolved conflicts in this file" without
1631         naming the file (and this language was duplicated in several places).
1632         After this change, it's "There are unresolved conflicts in file FOO"
1633         (and this language is now centralized in one function in vc.el).
1635         Justification: It's important for the message to name the conflicted
1636         file because the moment when VC realizes a file is conflicted does not
1637         always come interactively.  For example, some people automatically
1638         find a set of Org Mode files on startup, and may keep those .org files
1639         under version control.  If any of the files are conflicted, the user
1640         just sees some messages fly by, and might later check the "*Messages*"
1641         buffer to find out what files were conflicted.  I'm not saying this
1642         happened to me or anything; it's a purely hypothetical example.
1644 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
1646         Fix assertion violation in define-key
1648         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
1649         objects.  Reported by Drew Adams <drew.adams@oracle.com>
1650         and Juanma Barranquero <lekktu@gmail.com>.
1652 2015-11-09  Dima Kogan  <dima@secretsauce.net>
1654         Fix a memory leak in GC of font cache
1656         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
1657         entities if some of the fonts it references are marked.  This
1658         plugs a memory leak.  (Bug#21556)
1660 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
1662         Use INT_ADD_WRAPV etc. to check integer overflow
1664         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
1665         * src/buffer.c (record_overlay_string, overlay_strings):
1666         * src/casefiddle.c (casify_object):
1667         * src/ccl.c (Fccl_execute_on_string):
1668         * src/character.c (char_width, c_string_width, lisp_string_width)
1669         (count_size_as_multibyte, string_escape_byte8):
1670         * src/coding.c (coding_alloc_by_realloc, produce_chars):
1671         * src/data.c (arith_driver):
1672         * src/dispnew.c (realloc_glyph_pool, init_display):
1673         * src/editfns.c (styled_format):
1674         * src/fns.c (Ffillarray):
1675         * src/ftfont.c (ftfont_shape_by_flt):
1676         * src/gnutls.c (gnutls_hex_string):
1677         * src/gtkutil.c (get_utf8_string):
1678         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
1679         * src/keymap.c (Fkey_description):
1680         * src/lisp.h (SAFE_ALLOCA_LISP):
1681         * src/term.c (encode_terminal_code):
1682         * src/tparam.c (tparam1):
1683         * src/xselect.c (x_property_data_to_lisp):
1684         * src/xsmfns.c (smc_save_yourself_CB):
1685         * src/xterm.c (x_term_init):
1686         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
1687         more-complicated code involving division and/or
1688         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
1689         subtraction and/or INT_ADD_OVERFLOW.
1690         * src/casefiddle.c (casify_object): Simplify multibyte size check.
1691         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
1692         * src/data.c (arith_driver): Also check for division overflow,
1693         as that’s now possible given that the accumulator can now contain
1694         any Emacs integer.
1695         * src/lisp.h (lisp_word_count): Remove; no longer used.
1697 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
1699         Make sure that the ignore file exists
1701         * lisp/vc/vc.el (vc-default-ignore-completion-table):
1702         Make sure that the ignore file exists.
1704 2015-11-08  Michael Sperber  <mike@xemacs.org>
1706         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
1707         `gnus-summary-delete-article` in a way that also works on XEmacs.
1709 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
1711         Add support for retrieving paths to JSON elements
1713         Add support for retrieving the path to a JSON element. This can for
1714         instance be useful to retrieve paths in deeply nested JSON
1715         structures.
1717         * lisp/json.el (json-pre-element-read-function)
1718         (json-post-element-read-function): New variables to hold pre- and post
1719         read callback functions for `json-read-array' and `json-read-object'.
1720         (json--path): New variable used internally by `json-path-to-position'.
1721         (json--record-path, json--check-position): New functions used
1722         internally by `json-path-to-position'.
1723         (json-path-to-position): New function for retrieving the path to a
1724         JSON element at a given position.
1725         (json-read-object, json-read-array): Call
1726         `json-pre-element-read-function' and `json-post-element-read-function'
1727         when set.
1729         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
1730         (test-json-path-to-position-with-arrays)
1731         (test-json-path-to-position-no-match): New tests for
1732         `json-path-to-position'.
1734 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
1736         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
1738         This really should been part of my previous commit
1739         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
1741 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
1743         Offer non-overwrite bookmark setter (Bug#15746)
1745         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
1746         what `bookmark-set' used to do, but with more choices for overwrite
1747         vs push, and with minor changes to the interactive prompt format.
1748         (bookmark-set): Rewrite as wrapper around above.
1749         If overwriting, inform the user of that in the prompt.
1750         (bookmark-set-no-overwrite): New function, also done as wrapper.
1751         Bind to "M" in `ctl-x-r-map' autoloads.
1752         (bookmark-map): Similarly bind "M" here.
1754 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
1756         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
1758 2015-11-08  Alan Modra  <amodra@gmail.com>
1760         ELF unexec: Don't insert a new section
1762         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
1763         don't need to mess with symbol st_shndx, or section sh_link and
1764         sh_info.
1766         This does lead to eu-elflint complaints about symbols defined in .bss
1767         with a needed version, because normally it is undefined symbols that
1768         have needed versions;  Defined symbols have version definitions.
1769         The exception is symbols defined by the linker in .dynbss for
1770         variables copied from a shared library in order to avoid text
1771         relocations, with copy relocs to copy their initial values from the
1772         shared library.  These symbols are both defined and have needed
1773         versions, and eu-elflink only expects to see them in SHT_NOBITS
1774         sections.  Of course there is no real problem with having such symbols
1775         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
1777         * src/unexelf.c: Delete outdated comments.
1778         (PATCH_INDEX): Delete.
1779         (find_section): Delete.
1780         (unexec): Don't add a new section.  Instead reuse the last bss
1781         section, extending it to cover dumped data.  Make bss sections
1782         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
1783         st_shndx.  Rename bss sections.
1785 2015-11-08  Alan Modra  <amodra@gmail.com>
1787         ELF unexec: Drive from PT_LOAD header rather than sections
1789         This rewrites bss handling in the ELF unexec code.  Finding bss
1790         sections by name results in complicated code that
1791         - does not account for all names of possible bss sections,
1792         - assumes specific ordering of bss sections,
1793         - can wrongly choose a SHT_NOBITS section not in the bss segment,
1794         - incorrectly calculates bss size (no accounting for alignment gaps),
1795         - assumes .data and .bss are in the same segment.
1797         All of these problems and more are solved by finding the bss segment
1798         in PT_LOAD headers, ie. the address range included in p_memsz but not
1799         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
1800         in that address range.
1802         * src/unexelf.c: Delete old ppc comment.
1803         (OLD_PROGRAM_H): Define.
1804         (round_up): Delete.
1805         (unexec): Don't search for bss style sections by name.  Instead,
1806         use the last PT_LOAD header address range covered by p_memsz
1807         but not p_filesz and match any SHT_NOBITS section in that
1808         address range.  Simplify initialisation of section header vars.
1809         Don't assume that section headers are above bss segment.  Move
1810         copying of bss area out of section loop.  Align .data2 section
1811         to 1, since it now covers the entire bss area.  For SHT_NOBITS
1812         sections in the bss segment, leave sh_addr and sh_addralign
1813         unchanged, but correct sh_offset.  Clear memory corresponding
1814         to SHT_NOBITS .plt section.  Delete comment and hacks for
1815         sections partly overlapping bss range now that the full range
1816         is properly calculated.  Delete now dead .sbss code.
1817         (Bug#20614)
1819 2015-11-08  Alan Modra  <amodra@gmail.com>
1821         ELF unexec: R_*_NONE relocs
1823         These should be ignored on all targets.
1825         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
1826         not just Alpha.  Comment on reloc size assumption.
1828 2015-11-08  Alan Modra  <amodra@gmail.com>
1830         ELF unexec: _OBJC_ symbols in bss sections
1832         This code assumed that there was only one bss section.  Rather than
1833         checking for a particular index, check the section type.  Also, handle
1834         the possibility that the section was SHT_NOBITS originally and is
1835         unchanged, in which case no clearing is needed (and sh_offset isn't
1836         necessarily valid, which can lead to a wild memset).
1838         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
1839         bss sections.
1841 2015-11-08  Alan Modra  <amodra@gmail.com>
1843         ELF unexec: Symbol table patching
1845         No st_shndx value larger than SHN_LORESERVE should be changed.
1846         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
1847         SHN_LORESERVE.  Error on SHN_XINDEX.
1849 2015-11-08  Alan Modra  <amodra@gmail.com>
1851         ELF unexec: Merge Alpha and MIPS COFF debug handling
1853         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
1854         Don't find .mdebug section index, find the section in the loop.
1855         Allow for unlikely possibility that .mdebug is located at sh_offset
1856         before bss segment, by calculating move from difference in
1857         sh_offset rather than just assuming new_data2_size.  Simplify
1858         cbLineOffset handling.
1860 2015-11-08  Alan Modra  <amodra@gmail.com>
1862         ELF unexec: Tidy code
1864         Separate out some of the more mechanical changes so following patches
1865         are smaller.
1867         * src/unexelf.c (unexec): Rearrange initialisation of program
1868         header vars.  Use pointer vars in loops rather than indexing
1869         section header array via macros.  Simplify _OBJC_ sym code
1870         and reloc handling code.
1872 2015-11-08  Alan Modra  <amodra@gmail.com>
1874         ELF unexec: Correct section header index
1876         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
1877         it should have been using "NEW_SECTION_H (nn)" to find the name of the
1878         section currently being processed.  Of course, before the bss
1879         sections, n and nn have the same value, so this doesn't matter except
1880         in the case of .sbss.  For .sbss this probably meant .bss (most likely
1881         the next section) was copied from memory.  A later patch removes the
1882         bogus .sbss handling anyway.
1884         * src/unexelf.c (unexec): Use correct index to look up names.
1886 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
1888         Fix Bug#21841
1890         * lisp/filenotify.el (file-notify--rm-descriptor):
1891         Use `descriptor' instead of computing its value.
1892         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
1893         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
1894         (Bug#21841)
1896 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
1898         Remove dirs in vc project roots from the the vc project library roots
1900         * lisp/progmodes/project.el (project-library-roots):
1901         Remove directories inside the project roots from the result.
1902         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
1904 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
1906         Move and rename xref-find-regexp to the project package
1908         * lisp/progmodes/project.el (project-find-regexp)
1909         (project--read-regexp)
1910         (project--find-regexp-in): New functions.
1912         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
1913         xref--show-xrefs.  Use in existing callers in place of that
1914         function.
1915         (xref--show-xrefs): Only do the "show" part.
1916         (xref-find-regexp): Rename, more or less, to
1917         project-or-libraries-find-regexp.
1919 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
1921         Abolish temporary buffer management for xref
1923         * lisp/progmodes/xref.el (xref--temporary-buffers)
1924         (xref--current)
1925         (xref--inhibit-mark-current)
1926         (xref--mark-selected): Remove.  Remove all references.
1927         (xref--show-xrefs): Do not construct the
1928         list of the temporary buffers, nor pass it along.
1930 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
1932         Rename "search path" to "library roots"
1934         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
1935         of the elements from CL-LIST1.
1937         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
1938         Update WRT to the above change.
1940         * lisp/progmodes/project.el (project-search-path-function): Rename
1941         to project-library-roots-function, update the documentation and
1942         references.
1943         (project-search-path): Likewise, to project-library-roots.
1944         (project-roots): Clarify documentation.
1945         (project-vc-search-path): Likewise, to project-vc-library-roots.
1946         (project-library-roots): In addition to the renames, thread the
1947         results through file-name-as-directory.
1948         (project-prune-directories): Accept a variable number of
1949         arguments.  Rename to project-combine-directories.
1950         (project-subtract-directories): New function.
1952         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
1953         Append project-roots and project-library-roots together.
1955         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
1957 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
1959         Prefer xpalloc to doubling buffers by hand
1961         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
1962         (read1): Use it for simplicity.
1963         * src/macros.c (store_kbd_macro_char):
1964         * src/minibuf.c (read_minibuf_noninteractive):
1965         * src/term.c (encode_terminal_code):
1966         * src/xrdb.c (magic_db):
1967         Prefer xpalloc to growing buffers by hand.
1968         This doesn’t fix any bugs, but simplifies the code a bit.
1970 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
1972         Merge from gnulib
1974         This incorporates:
1975         2015-11-05 timespec-sub: fix overflow bug; add tests
1976         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
1977         2015-11-03 intprops: add parentheses
1978         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
1979         Copy from gnulib.
1981 2015-11-07  David Reitter  <david.reitter@gmail.com>
1983         Provide NS notification objects where required to eliminate warnings
1985         * nsterm.m (windowDidResize:, toggleFullScreen:):
1986         Call notification functions with notification objects
1987         as per delegate APIs.
1989 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
1991         Add test for bug #21824
1993         * test/automated/buffer-tests.el: New file.
1994         (overlay-modification-hooks-message-other-buf): New test.
1996 2015-11-07  Kelvin White  <kwhite@gnu.org>
1998         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
2000 2015-11-07  David Reitter  <david.reitter@gmail.com>
2002         Ignore fullscreen exit notifications on NS when frame is dead
2004         * nsterm.m (windowDidResize:, windowWillExitFullScreen:)
2005         (windowDidExitFullScreen:): Return if frame is dead.
2006         These functions may be called when a fullscreen frame
2007         is closed; they are called before, not after.
2009         May address Bug#21428.
2011 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
2013         Speed up lookup in redisplay--variables
2015         * lisp/frame.el (redisplay--variables): Make it a hash-table.
2017         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
2018         as a hash-table.  This speeds up this function by an order of
2019         magnitude: where previously a setq was slowed down by 100% by
2020         introducing the maybe_set_redisplay test, it is now only 5%
2021         slower.
2022         (syms_of_xdisp) <redisplay--variables>: Doc fix.
2024 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
2026         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
2028         The defsubst was being created as:
2029             (cl-defsubst name (args) ("DOC") ...)
2031         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
2032         Add test.
2034 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
2036         Update doc string of hexl-mode
2038         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
2040 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
2042         Fix error in copy-abbrev-table
2044         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
2045         property of the abbrev-table.  (Bug#21828)
2047         * test/automated/abbrev-tests.el: New file.
2049 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
2051         Add test to auto-revert-tests.el for Bug#21841
2053         * test/automated/auto-revert-tests.el
2054         (auto-revert-test01-auto-revert-several-files): New test.
2055         (auto-revert-test02-auto-revert-tail-mode)
2056         (auto-revert-test03-auto-revert-mode-dired): Rename them.
2058 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
2060         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
2062 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
2064         In x_consider_frame_title don't set title of tooltip frames
2066         * src/xdisp.c (x_consider_frame_title): Return immediately for
2067         tooltip frames to avoid displaying empty tooltips.
2069 2015-11-06  Anders Lindgren  <andlind@gmail.com>
2071         Fixed NextStep fullscreen problem (bug#21770).
2073         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
2074         fullscreen frames.
2076 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2078         Ensure redisplay after evaluation
2080         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
2081         Revert last change.
2082         * lisp/frame.el (redisplay--variables): Populate the
2083         redisplay--variables list.
2084         * src/xdisp.c (maybe_set_redisplay): New function.
2085         (syms_of_xdisp) <redisplay--variables>: New variable.
2086         * src/window.h (maybe_set_redisplay): Declare prototype.
2087         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
2089 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2091         * test/automated/subr-tests.el (subr-test-when): Fix again.
2093 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2095         Don't invoke overlay modification hooks in wrong buffer
2097         * src/buffer.c (report_overlay_modification): When called with
2098         AFTER non-zero, don't invoke overlay modification hooks if the
2099         buffer recorded in last_overlay_modification_hooks is different
2100         from the current buffer.  (Bug#21824)
2102 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
2104         * admin/notes/repo: Fix a few obsolete references to Bazaar.
2106 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2108         * test/automated/subr-tests.el (subr-test-when): Fix test.
2110 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
2112         Avoid division by zero crash observed by Yuan MEI
2114         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
2116         * src/dispnew.c (required_matrix_height, required_matrix_width):
2117         Avoid division by zero.
2118         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
2119         dpyinfo->smallest_char_width to 1.
2121 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2123         Ensure redisplay after "C-x C-e"
2125         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
2126         redisplay happens to account for any side effects of the evaluated
2127         sexp.  (Bug#21835)
2129 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
2131         Skip some file notification tests for cygwin
2133         * test/automated/file-notify-tests.el (file-notify--test-with-events):
2134         Remove argument TIMEOUT.  Adapt all callees.
2135         (file-notify-test02-events, file-notify-test04-file-validity):
2136         Skip for cygwin.  (Bug#21804)
2138 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
2140         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
2142 2015-11-05  Daiki Ueno  <ueno@gnu.org>
2144         Suppress redundant Pinentry startup messages
2146         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
2147         * lisp/epg.el: Declare `pinentry-start'.
2148         (epg--start): Call `pinentry-start' with QUIET argument set.
2150 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
2152         * doc/emacs/ack.texi (Acknowledgments): Updates.
2154 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
2156         * test/automated/elisp-mode-test.el: Silence some run-time warnings.
2157         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
2159 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
2161         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
2162         Add prettification support for \times.
2164 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
2166         * test/automated/process-tests.el: Skip tests when bash is unavailable.
2167         (process-test-sentinel-accept-process-output)
2168         (process-test-sentinel-sit-for): skip-unless bash executable found.
2170 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
2172         Add test for bug #21831
2174         * test/automated/process-tests.el
2175         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
2176         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
2178 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
2180         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
2182         (eieio--generic-static-object-generalizer): Fix typo.
2183         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
2184         like the underlying cause of bug#17852 was fixed in the mean time.
2186 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2188         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
2190         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
2191         It breaks bootstrapping (duh).
2193 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2195         * lisp/files.el (report-errors): Obsolete.
2197         (normal-mode, hack-local-variables, dir-locals-find-file):
2198         Use `with-demoted-errors' instead.
2200 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2202         * lisp/subr.el (when): Use `macroexp-progn'.
2204         * test/automated/subr-tests.el (subr-test-when): New test.
2206 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
2208         * lisp/progmodes/xref.el: Doc fixes.
2209         (xref-make-file-location, xref-make-buffer-location, xref-make)
2210         (xref-make-bogus-location, xref-make-match): Add cross-references.
2211         (xref--insert-xrefs): Fix typo in docstring.
2213 2015-11-04  Anders Lindgren  <andlind@gmail.com>
2215         Render fringe bitmaps correctly on NextStep (bug#21301)
2217         The fringe bitmaps were inverted, the background was not transparent,
2218         the image data was horizontally mirrored, and periodic fringe bitmaps
2219         were not supported.
2221         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
2222         When both background and foreground colors are 0, set the background
2223         alpha channel to 0 (making the background transparent).  When
2224         copying the image data, do this from the most significant bit
2225         (leftmost) to the least (rightmost), to avoid mirroring.
2226         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
2227         Add support for periodic images (e.g. the empty line indicator).
2229 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
2231         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
2233 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
2235         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
2237         * admin/MAINTAINERS: Add thunk.el.
2239 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
2241         * lisp/calc/calc (calc-bug-address): Change maintainer address.
2243 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
2245         Fix a stupid error in gfilenotify.c
2247         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
2248         if we've got a `deleted' signal AND the file name is the watched one.
2250 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
2252         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
2254         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
2255         Use case-insensitive string compare for file names.
2256         (emacs-test-dir): Add 'downcase' to cause case differences (at
2257         least on my system).
2259 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
2261         flymake-tests.el (warning-predicate-rx-gcc): Fix check
2263         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
2264         Also check that "make" is available, not just "gcc".
2266 2015-11-02  Ken Brown  <kbrown@cornell.edu>
2268         Document behavior of collation on Cygwin
2270         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
2271         expected failure on Cygwin.
2272         * doc/lispref/strings.texi (Text Comparison): Document that
2273         punctuation and whitespace are not ignored for sorting on Cygwin.
2275 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
2277         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
2279 2015-11-01  Glenn Morris  <rgm@gnu.org>
2281         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
2282         (Bug#21794)
2283         * test/automated/f90.el (f90-test-bug21794): New test.
2285 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
2287         Fix incompatibility with TCC in test for bug#18745
2289         * test/automated/process-tests.el (process-test-quoted-batfile):
2290         Remove spaces unrelated to the bug being tested.
2292 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
2294         Improve completion in tramp-gvfs.el
2296         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
2297         Rename from `tramp-zeroconf-parse-service-device-names'.
2298         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
2299         with `tramp-zeroconf-parse-device-names'.
2300         (tramp-gvfs-parse-device-names): New defun.
2301         (top): Use it when `tramp-zeroconf-parse-device-names' is not
2302         applicable.
2304         * lisp/net/tramp.el (tramp-set-completion-function): The argument
2305         could also be a zeroconf service type.
2307 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2309         * lisp/net/ntlm.el: Change version to 2.0.0.
2311 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2313         Fix bug#21762
2314         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
2315         `eql' instead of `=' to accommodate the case that (syntax-after (point))
2316         returns nil.
2317         * test/automated/python-tests.el (python-indent-inside-paren-7):
2318         New test.
2320 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2322         * test/automated/python-tests.el: Avoid warnings.
2323         (python-tests-with-temp-buffer, python-tests-with-temp-file):
2324         Bind `python-indent-guess-indent-offset' to nil.
2326 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2328         * src/alloc.c: Silence compiler warnings.
2329         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
2331 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
2333         * etc/NEWS: Fix js-jsx-mode entry punctuation.
2335 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
2337         Add JSX indentation via js-jsx-mode  (Bug#21799)
2339         * progmodes/js.el: Add JSX indentation support.
2340         (js--jsx-end-tag-re)
2341         (js--jsx-after-tag-re): New variables.
2342         (js--jsx-find-before-tag)
2343         (js--jsx-indented-element-p)
2344         (js--as-sgml)
2345         (js--expression-in-sgml-indent-line)
2346         (js-jsx-indent-line)
2347         (js-jsx-mode): New functions.
2348         * test/indent/js-jsx.el: New file.
2349         * etc/NEWS: Add information about js-jsx-mode.
2351 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
2353         Minor fix in filenotify.el
2355         * lisp/filenotify.el (file-notify--event-file-name)
2356         (file-notify--event-file1-name): Normalize result with
2357         `directory-file-name'.
2359 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
2361         Avoid errors in redisplay--pre-redisplay-functions
2363         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
2364         use 'bobp', instead compare window-point with 1.  (Bug#21730)
2366 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
2368         Merge from gnulib
2370         This incorporates:
2371         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
2372         2015-10-25 stdalign: port to Sun C 5.9
2373         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
2374         Copy from gnulib.
2376 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
2378         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
2379         (w32_compare_strings): Adjust for the correction.
2381 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
2383         * test/automated/vc-tests.el (vc-test--state)
2384         (vc-test--working-revision, vc-test--checkout-model):
2385         Add result messages.
2387 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2389         * test/automated/faces-tests.el: Add another test
2391 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2393         * lisp/faces.el (faces--attribute-at-point): Fix bug
2394         introduced by previous commit.
2396 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2398         * test/automated/faces-tests.el: New file.
2400 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2402         * lisp/faces.el: Refactor common code and fix a bug.
2403         (faces--attribute-at-point): New function.  Fix a bug when the
2404         face at point is a list of faces and the desired attribute is not
2405         on the first one.
2406         (foreground-color-at-point, background-color-at-point): Use it.
2408 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
2410         * etc/tutorials/TUTORIAL.translators: Fix PL names.
2412 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
2414         * lisp/character-fold.el: Provide `character-fold'.
2416 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
2418         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
2419         for Gnus and ivy.
2421 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
2423         Some minor fixes for tramp-gvfs.el
2425         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
2426         An attribute returned by gvfs-info might be empty.  In case of
2427         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
2428         (tramp-zeroconf-parse-service-device-names): New defun.
2429         Derived from `tramp-zeroconf-parse-workstation-device-names'.
2430         (top): Add completion functions for "afp" and "smb" methods.
2432 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2434         * test/automated/character-fold-tests.el: New file
2436 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2438         * test/automated/sort-tests.el: New file.
2439         Tests in this file are randomly generated and then tested with
2440         regular, reverse, and case-fold sorting.
2442 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
2444         Describe known problems with pinning Emacs to taskbar
2446         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
2447         on Windows 10.  For the details, see the discussion starting at
2448         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
2450 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2452         * lisp/isearch.el: Avoid an error that blocks isearch.
2453         (isearch-update): Don't error if `isearch--current-buffer' has
2454         been killed.
2456         * test/automated/isearch-tests.el (isearch--test-update):
2457         New file.
2459 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
2461         Fix documentation of 'beginning/end-of-buffer'
2463         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
2464         conditions under which the mark will be pushed at the previous
2465         position.  (Bug#21748)
2467 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
2469         Add RefTeX feature idea: editing RefTeX TOC buffers
2471         More face defs for ivy, swiper, ace-window, eshell
2473 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2475         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
2476         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
2477         just VAR.
2478         (auth-source-backend-parse): Use make-instance.
2479         (auth-source-search): Remove unused key args.
2480         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
2481         (auth-source-search-backends): Use slot names rather than their initarg.
2482         (auth-source-netrc-create):
2483         (auth-source-delete):
2484         (auth-source-secrets-create, auth-source-plstore-search)
2485         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
2486         (auth-source-plstore-create, auth-source-netrc-search)
2487         (auth-source-netrc-parse): Remove unused key args.
2488         (auth-source-forget+): Simplify the arglist.
2489         (auth-source-macos-keychain-search-items)
2490         (auth-source-token-passphrase-callback-function): Mark unused args.
2491         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
2492         (pp-escape-newlines): Declare.
2493         (auto-source--symbol-keyword): New function.
2494         (auth-source-plstore-create, auth-source-netrc-create)
2495         (auth-source-netrc-normalize): Use it.
2496         (auth-source-netrc-search): Don't pass :delete to
2497         auth-source-netrc-parse since it doesn't use it.
2498         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
2499         symbol-value to index in keyword args.
2500         (auth-source-macos-keychain-result-append): Avoid setq.
2501         (auth-source-netrc-create): Remove unused vars `file' and `add'.
2502         (auth-source-user-or-password): Remove unused var `cname'.
2504 2015-10-29  Juri Linkov  <juri@linkov.net>
2506         * lisp/dired.el (dired-unmark-all-files-query): Declare.
2507         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
2508         (Bug#21746)
2510 2015-10-29  Juri Linkov  <juri@linkov.net>
2512         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
2513         to go to the beginning of text line instead of command line.
2514         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
2516 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
2518         Fix encoding of saving *Help* buffers
2520         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
2521         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
2523 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2525         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
2526         (cl--generic-derived-specializers): New function.
2527         (cl--generic-derived-generalizer): New generalizer.
2528         (cl-generic-generalizers): New specializer (derived-mode MODE).
2529         (cl--generic-split-args): Apply the rewriter, if any.
2530         (cl-generic-define-context-rewriter): New macro.
2531         (major-mode): Use it to define a new context-rewriter, so we can write
2532         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
2534         * lisp/frame.el (window-system): New context-rewriter so we can write
2535         `(window-system VAL)' instead of (window-system (eql VAL)).
2536         (cl--generic-split-args): Apply the rewriter, if any.
2537         (frame-creation-function): Use the new syntax.
2539         * lisp/term/x-win.el (window-system-initialization)
2540         (handle-args-function, frame-creation-function)
2541         (gui-backend-set-selection, gui-backend-selection-owner-p)
2542         (gui-backend-selection-exists-p, gui-backend-get-selection):
2543         * lisp/term/w32-win.el (window-system-initialization)
2544         (handle-args-function, frame-creation-function)
2545         (gui-backend-set-selection, gui-backend-get-selection)
2546         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
2547         * lisp/term/pc-win.el (gui-backend-get-selection)
2548         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
2549         (gui-backend-set-selection, window-system-initialization)
2550         (frame-creation-function, handle-args-function):
2551         * lisp/term/ns-win.el (window-system-initialization)
2552         (handle-args-function, frame-creation-function)
2553         (gui-backend-set-selection, gui-backend-selection-exists-p)
2554         (gui-backend-get-selection):
2555         * lisp/startup.el (handle-args-function):
2556         * lisp/term/xterm.el (gui-backend-get-selection)
2557         (gui-backend-set-selection): Use the new syntax.
2559 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2561         * test/indent/css-mode.css: Add tests for url(...) syntax.
2563 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2565         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
2566         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
2567         (smie-prec2->grammar): Use `declare'.
2569 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2571         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
2572         (cl--generic-generalizer): Add `name' field.
2573         (cl-generic-make-generalizer): Add corresponding `name' argument.
2574         (cl-generic-define-generalizer): New macro.
2575         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
2576         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
2577         (cl--generic-t-generalizer): Use it.
2578         (cl-generic-ensure-function): Add `noerror' argument.
2579         (cl-generic-define): Use it so we don't follow aliases.
2580         (cl-generic-define-method): Preserve pre-existing ordering of methods.
2581         (cl--generic-arg-specializer): New function.
2582         (cl--generic-cache-miss): Use it.
2583         (cl-generic-generalizers): Only fset a temporary definition
2584         during bootstrap.
2585         (cl--generic-struct-tag, cl--generic-struct-specializers):
2586         Allow extra arguments.
2588         * lisp/emacs-lisp/eieio-compat.el
2589         (eieio--generic-static-symbol-generalizer)
2590         (eieio--generic-static-object-generalizer):
2591         Use cl-generic-define-generalizer.
2592         (eieio--generic-static-symbol-specializers): Allow extra arguments.
2594         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
2595         (eieio--generic-subclass-generalizer):
2596         Use cl-generic-define-generalizer.
2597         (eieio--generic-subclass-specializers): Allow extra arguments.
2599 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2601         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
2603 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
2605         Add "afp" method to Tramp
2607         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
2609         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
2610         (tramp-gvfs-handle-expand-file-name)
2611         (tramp-gvfs-handler-mounted-unmounted)
2612         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
2613         (tramp-gvfs-maybe-open-connection): Support also "afp".
2614         (tramp-gvfs-handle-file-attributes): Handle the case of empty
2615         "owner::user" and "owner::group" entries.
2617 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
2619         Handle negative coordinates in ‘x_calc_absolute_position’
2621         * src/w32term.c (x_calc_absolute_position): Find display origin to
2622         allow for negative coordinates.
2624 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
2626         (internal--syntax-propertize): Save match-data here (bug#21766)
2628         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
2629         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
2631 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
2633         Don't require default-directory to end with a slash
2635         * doc/lispref/files.texi (Magic File Names): Document the change
2636         in unhandled-file-name-directory.
2638         * lisp/url/url-handlers.el
2639         (url-handler-unhandled-file-name-directory): Update accordingly.
2641         * src/buffer.c (default-directory): Update the docsting.
2643         * src/fileio.c (unhandled-file-name-directory): Default to calling
2644         `file-name-as-directory'
2645         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
2647 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2649         * lisp/isearch.el: Delete some outdated comments.
2651 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
2653         Fix eshell/clear not working if the output has a small line count
2655         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
2656         number of newlines to be inserted. This fixes the issue where
2657         eshell/clear wouldn't work if the prompt was not at the bottom of the
2658         window, and the output wasn't too long.
2660 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
2662         * lisp/files.el (write-file): Use vc-refresh-state.
2664         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
2666         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
2668 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
2670         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
2671         (macroexp-unprogn): Make sure we never return an empty list.
2672         (macroexp-if): Remove unused (and unsafe) optimization.
2673         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
2674         occur occasionally.
2676 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
2678         Fix bug#21766 and add test
2679         * lisp/simple.el (delete-trailing-whitespace): Save match data when
2680         calling `skip-syntax-backward'.
2681         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
2682         New test.
2684 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2686         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
2688 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
2690         * src/dispnew.c (init_display): Simplify overflow checking.
2692 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2694         * lisp/character-fold.el (character-fold-to-regexp): Fix case
2695         where string ends in space
2697 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2699         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
2701         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
2703 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2705         * lisp/character-fold.el: Make compatible with lax-whitespace.
2706         (character-fold-to-regexp): Rework internals to play nice with
2707         lax-whitespacing.
2709         When the user types a space, we want to match the table entry for
2710         ?\s, which is generally a regexp like "[ ...]".  However, the
2711         `search-spaces-regexp' variable doesn't "see" spaces inside these
2712         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
2713         manually expose a space).
2715         Furthermore, the lax search engine acts on a bunch of spaces, not
2716         on individual spaces, so if the string contains sequential spaces
2717         like "  ", we need to keep them grouped together like this:
2718         "\\(  \\|[ ...][ ...]\\)".
2720 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2722         * lisp/isearch.el: Refactor momentary messages.
2723         (isearch--momentary-message): New function.
2724         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
2725         (isearch-toggle-invisible): Use it.
2727 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2729         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
2730         (isearch-define-mode-toggle): New macro.
2731         (isearch-toggle-invisible): Rename to
2732         `isearch-define-mode-toggle'.
2733         (isearch-toggle-case-fold, isearch-toggle-invisible)
2734         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
2735         with `isearch-define-mode-toggle'.
2737 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
2739         Avoid using `add-to-list' on a let-local var in tramp-smb.el
2741         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
2742         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
2744 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2746         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
2748         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
2750         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
2752 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
2754         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
2755         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
2756         does not exist in XEmacs 21.4.
2758 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2760         Fixed OS X startup crash
2762         Input events started to arrive before ns_term_init() was finished.
2763         Solved by blocking input.  This also seems to correct the "You
2764         can't open the application "Emacs" because it may be damaged or
2765         incomplete" error issued when double-clicking on the Emacs
2766         application.
2768         * nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
2769         * nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
2771 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2773         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
2775 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2777         * src/process.c (Fget_buffer_process): Improve docstring.
2778         Document the fact that it doesn't return dead processes.
2780 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2782         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
2784         * nsterm.h (struct ns_output): New flag, in_animation.
2785         * nsfns.m (Fx_create_frame): Initialize in_animation flag.
2786         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
2787         in_animation flag around call to "setVisible". Set new tool bar
2788         height before call to setVisible.
2789         * nsterm.m (x_set_window_size): Don't call [view setRow:
2790         andColumns:] as this fools the subsequent call to updateFrameSize
2791         from performing the real resize.
2792         (windowDidResize): Don't update anything when in_animation is
2793         non-zero.
2795         Trace output.
2797         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
2798         (EmacsToolbar):
2799         * nsterm.m (x_set_window_size, updateFrameSize)
2800         ([EmacsView setRows: andColumns:])
2802 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
2804         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
2806 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
2808         Prettify TeX macros not ending in a word char
2810         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
2811         Prettify macros which don't end in a word character.
2813 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
2815         Pipe Hg commit descriptions through 'tabindent'
2817         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
2818         through 'tabindent'.
2819         (vc-hg-log-view-mode): Set tab-width to 2 locally.
2820         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
2822 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2824         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
2825         (tramp-smb-handle-directory-files): Use `delete-dups'.
2827         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
2829 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2831         * lisp/international/ccl.el: Use lexical-binding.
2832         (ccl-compile-if): Remove unused var `false-ic'.
2833         (ccl-compile-write-repeat): Remove unused var `i'.
2834         (ccl-compile-map-single): Remove unused var `id'.
2835         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
2836         dynamic var `ccl-code'.
2838 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2840         * lisp/json.el (json-new-object): Optimize trivial `list' call.
2842 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2844         * lisp/help.el: Fix bug with incorrect arglist string.
2845         (help-add-fundoc-usage): Don't mistake a mis-formatted string
2846         for a list.
2848 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2850         * lisp/gnus/gnus-topic.el: Silence some warnings.
2851         (gnus-topic-prepare-topic): Remove unused var `topic'.
2852         (gnus-topic-remove-topic): Mark unused arg `hide'.
2853         (gnus-tmp-header): Declare.
2854         (gnus-topic-goto-missing-group): Remove unused var `entry'.
2855         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
2856         (gnus-topic-copy-matching): Mark unused arg `copyp'.
2857         Move initialization of `topic' into its declaration.
2859 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
2861         Minor CEDET fixes
2863         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
2864         Handle warnings from gtags about invalid options.
2865         (cedet-gnu-global-create/update-database): Do incremental update
2866         properly.
2868         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
2869         Get monotone root right.
2871 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
2873         Fall back to polling in autorevert when needed
2875         * lisp/autorevert.el (auto-revert-notify-handler): When a
2876         `stopped' event arrives from file notification, fall back to polling.
2878         * test/automated/file-notify-tests.el
2879         (file-notify-test03-autorevert): Extend test for polling when file
2880         notification ceases to work.
2882 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
2884         Show full commit messages in 'hg log' when appropriate
2886         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
2887         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
2888         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
2890 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
2892         Use a plain SVG file for the icon
2894         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
2895           format instead of the Inkscape SVG format.
2897 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
2899         Fix subtle bug in auto-revert-tests.el
2901         * test/automated/auto-revert-tests.el
2902         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
2903         buffer where it belongs to.  (Bug#21668)
2905 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
2907         * lisp/emacs-lisp/map.el: Better docstrings.
2909         * lisp/emacs-lisp/seq.el: Better docstrings.
2911         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
2913 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
2915         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
2917 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
2919         Clarify that load-path contents should be directory file names
2921         * doc/lispref/files.texi (Directory Names): Define and use "directory
2922         file name".  Recommend `expand-file-name'.
2924         * src/lread.c (load-path): Fix doc string; elements are directory file
2925         names.
2927 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
2929         Fix simple-test.el test
2931         * test/automated/simple-test.el (simple-test--dummy-buffer):
2932         Make sure indentation doesn't use TABs, otherwise the 6th test
2933         might fail.
2935 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
2937         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
2938         `substring' does not account for full width characters.
2940 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
2942         Further work on `stopped' events in filenotify.el
2944         * doc/lispref/os.texi (File Notifications): Rework examples.
2946         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
2947         (file-notify--rm-descriptor, file-notify-callback): Improve check
2948         for sending `stopped' event.
2949         (file-notify-add-watch): Check for more events for `inotify'.
2951         * test/automated/file-notify-tests.el
2952         (file-notify--test-expected-events): New defvar.
2953         (file-notify--test-with-events): Use it.
2954         (file-notify--test-cleanup): Make it more robust when deleting
2955         directories.
2956         (file-notify--test-event-test): Check also for watched directories.
2957         (file-notify--test-event-handler): Suppress temporary .#files.
2958         (file-notify-test02-events, file-notify-test04-file-validity):
2959         Rework `stopped' events.
2960         (file-notify-test05-dir-validity): Wait for events when appropriate.
2962 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
2964         * src/keyboard.c (post-command-hook): Shorten docstring.
2966 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
2968         Fix infinite loop in sh-script's SMIE code
2970         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
2971         loop (bug#21747).
2973 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2975         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
2976         Character-fold search _still_ doesn't play well with
2977         lax-whitespace.  So disable it by default (again) for now.
2979 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2981         * lisp/isearch.el: No visual feedback for default search mode.
2982         During an isearch where character-folding is the default, we don't
2983         want to take up minibuffer space just to tell the user that
2984         "Char-fold " is on.  The same goes for other modes, if the user
2985         changes the default.  In contrast, if the user toggles OFF the
2986         default mode, they should see "Literal", to distinguish it from
2987         the default mode.
2988         (isearch--describe-regexp-mode): Return "" if describing the
2989         default mode, and return "literal " if describing a plain search
2990         and it is not default.
2992 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2994         * test/automated/simple-test.el: New file.
2995         Define tests for `newline' and `open-line'.
2997 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
2999         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
3000         Also run `post-self-insert-hook' when called interactively.
3002 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3004         * lisp/simple.el (open-line): Fix docstring.
3005         Also explain apparently redundant line.
3007 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3008             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
3010         Sync with soap-client repository, version 3.0.1
3012         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
3013         Bump version to 3.0.1.
3015         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
3017 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
3019         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
3021 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3023         * src/keyboard.c (post-command-hook): Extend the docstring.
3024         Mainly, explain how to use it without hanging Emacs, or giving the
3025         impression that it is hanging.  Also mention `pre-command-hook'.
3026         (pre-command-hook): Mention `post-command-hook'.
3028 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3030         * lisp/custom.el (custom-declare-variable): Shorten code again.
3031         Without using pcase this time.  We can't use pcase because it is
3032         loaded after custom in loadup.el.  Also add a comment explaining
3033         this to future dummies like me.
3035 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
3037         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
3039 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
3041         Introduce `stopped' event in file notification
3043         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
3044         (file-notify-rm-watch): Use it.
3045         (file-notify-callback): Implement `stopped' event.
3046         (file-notify-add-watch): Mention `stopped' in the docstring.
3047         Check, that upper directory exists.
3049         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
3050         Add two test cases.
3051         (file-notify-test02-events): Handle also `stopped' event.
3052         (file-notify-test04-file-validity): Add another test case.
3054 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
3056         Revert commit that broke 'make bootstrap'
3058         * lisp/custom.el (custom-declare-variable): Revert commit
3059         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
3060         even when pcase has not been defined yet, when doing bootstrapping.
3062 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
3064         Port recent inline functions fix to Standard C
3066         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
3067         All uses rewritten to define the function directly rather than to
3068         use a macro to define the function.  This conforms to Standard C,
3069         which does not allow stray semicolons at the top level.  I hope it
3070         also avoids the problems with TAGS.  Those macros, though clever,
3071         were pretty confusing anyway, and it wasn’t clear they were worth
3072         the aggravation even without the TAGS problem.
3074 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3076         * lisp/isearch.el: Make character-fold search the default again.
3078 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3080         * lisp/character-fold.el: Many improvements.
3081         (character-fold-search-forward, character-fold-search-backward):
3082         New command.
3083         (character-fold-to-regexp): Remove lax-whitespace hack.
3084         (character-fold-search): Remove variable.  Only isearch and
3085         query-replace use char-folding, and they both have their own
3086         variables to configure that.
3088 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3090         * lisp/isearch.el: Generalize definition of regexp-function toggles.
3091         (isearch-specify-regexp-function): New macro for specifying
3092         possible values of `isearch-regexp-function'.
3093         (isearch-toggle-character-fold, isearch-toggle-symbol)
3094         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
3096 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3098         * lisp/isearch.el (search-default-regexp-mode): New variable.
3099         (isearch-mode): Use it.
3101 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3103         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
3104         (search-slow-speed, search-upper-case)
3105         (search-nonincremental-instead, search-whitespace-regexp)
3106         (search-invisible, isearch-hide-immediately)
3107         (isearch-resume-in-command-history, search-ring-max)
3108         (regexp-search-ring-max, search-ring-update, search-highlight)
3109         (isearch-fail): Delete :group entries.
3111 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3113         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
3115 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3117         addpm.c: Silence some warnings.
3119         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
3120         to LPBYTE.
3121         (add_registry): Pass NULL to optional lpClass argument of
3122         RegCreateKeyEx, not an empty string.
3124 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3126         addpm.c: Do not add obsolete GTK libraries to the path.
3128         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
3129         (add_registry): Remove variables `size' and `gtk_key'.
3130         Do not add the GTK DLL directory to the library search path; it is
3131         confusing behavior (in particular, the same Emacs version with and
3132         without invoking addpm will use a different path), and the GTK image
3133         libraries are obsolete anyway.
3135 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3137         addpm.c: Replace existing registry entries, but do not create new ones
3139         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
3140         existing values from previous versions, but do not add new ones; the
3141         key could exist for other reasons unrelated to old Emacsen, like X-style
3142         resources, or to set some environment variables like HOME or LANG, and
3143         in that case we don't want to populate it with obsolete values.
3145 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3147         * nt/addpm.c (add_registry): Do not compute unused return value.
3149 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3151         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
3153         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
3154         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
3155         current behavior because REG_OPTION_NON_VOLATILE is defined to
3156         be 0L anyway, but that option is actually documented only for
3157         RegCreateKeyEx.
3159 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3161         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
3163 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3165         Update frame title when redisplay scrolls selected window
3167         * src/xdisp.c (redisplay_window): Reconsider the frame's title
3168         when the mode-line of the frame's selected window needs to be
3169         updated.
3171 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3173         Update frame title when scrolling the selected window
3175         * src/window.c (wset_update_mode_line): New function, sets either
3176         the window's update_mode_line flag or the global update_mode_lines
3177         variable.
3178         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
3179         (window_scroll_line_based): Call it instead of only setting the
3180         window's update_mode_line flag.
3182 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3184         An even better fix for bug#21739
3186         * src/window.c (set_window_buffer): If the window is the frame's
3187         selected window, set update_mode_lines, not the window's
3188         update_mode_line flag.
3189         * src/buffer.c (Fkill_buffer): Undo last change.
3190         (set_update_modelines_for_buf): Function deleted.
3192 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3193             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
3195         Sync with soap-client repository, version 3.0.0
3197         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
3198         Bump version to 3.0.0.
3200         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
3202         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
3204         * lisp/net/soap-inspect.el: Shorten first line description.
3206         * lisp/net/soap-client.el: Make a small whitespace fix.
3208         * lisp/net/soap-inspect.el: Update copyright years.
3210         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
3211         first use in soap-encode-xs-element.
3213         * lisp/net/soap-client.el (soap-type-is-array?): new defun
3214         (soap-encode-xs-element): handle array elements in this function
3215         (soap-encode-xs-complex-type): flag error if asked to encode an
3216         array type, this is handled in `soap-encode-xs-element'
3218         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
3219         Do not print type for attribute group.
3221         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
3222         New function.
3223         (soap-inspect-xs-attribute-group): Likewise.
3225         * lisp/net/soap-inspect.el
3226         (soap-resolve-references-for-xs-attribute-group): Resolve
3227         references of attributes in an attribute group.
3229         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
3230         type directly, not through soap-wsdl-get.
3232         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
3233         nil if reference attribute is nil.
3235         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
3236         Convert XML schema attributes to xsd:string.
3238         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
3239         New function.
3240         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
3241         (soap-sample-value-for-xs-complex-type): Likewise.
3242         (soap-inspect-xs-attribute): New function.
3243         (soap-inspect-xs-simple-type): Print attributes.
3244         (soap-inspect-xs-complex-type): Likewise.
3246         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
3247         Resolve references for attributes.
3248         (soap-resolve-references-for-xs-complex-type): Likewise.
3250         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
3251         Rename from soap-xml-node-first-child.
3252         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
3253         (soap-xs-parse-simple-type): Likewise.
3255         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
3257         * lisp/net/soap-client.el (soap-invoke-internal): New function.
3258         (soap-invoke-async): Call soap-invoke-internal.
3259         (soap-invoke): Likewise.
3261         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
3262         url-retrieve callback is killed.
3264         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
3265         Rename function.
3266         (soap-parse-wsdl-phase-fetch-imports): Likewise.
3267         (soap-parse-wsdl-phase-parse-schema): Likewise.
3268         (soap-parse-wsdl-phase-fetch-schema): Likewise.
3269         (soap-parse-wsdl-phase-finish-parsing): Likewise.
3270         (soap-parse-wsdl): Update calls.
3272         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
3274         * lisp/net/soap-client.el (soap-invoke-async): New function.
3275         (soap-invoke): Reimplement using soap-invoke-async.
3277         * lisp/net/soap-client.el (soap-parse-server-response):
3278         Improve docstring.
3279         (soap-invoke): Inline call to soap-parse-server-response.
3281         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3282         Prevent incorrect warning.
3284         * lisp/net/soap-client.el (soap-parse-server-response):
3285         Rename soap-process-url-response.  Destroy the mime part.
3286         (soap-invoke): Call soap-parse-server-response.
3288         * lisp/net/soap-client.el: Update copyright date.
3290         * lisp/net/soap-client.el: Fix checkdoc issues.
3292         * lisp/net/soap-client.el: Fix indentation and long lines.
3294         * lisp/net/soap-client.el (soap-time-format): Remove variable.
3295         (soap-encode-xs-basic-type): Simplify date-time format detection.
3296         (soap-decode-xs-basic-type): Remove soap-time-format support.
3298         * lisp/net/soap-client.el (soap-process-url-response): New function.
3299         (soap-fetch-xml-from-url): Call soap-process-url-response.
3300         (soap-parse-wsdl-phase-1): New function.
3301         (soap-parse-wsdl-phase-2): Likewise.
3302         (soap-parse-wsdl-phase-3): Likewise.
3303         (soap-parse-wsdl-phase-4): Likewise.
3304         (soap-parse-wsdl-phase-5): Likewise.
3305         (soap-parse-wsdl): Call phase functions.
3307         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
3308         Remove one-argument and call.
3310         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
3312         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
3313         (soap-parse-schema): Add wsdl argument.  Look up XML schema
3314         imports from wsdl.
3315         (soap-load-wsdl): Do not set soap-xmlschema-imports.
3316         (soap-parse-wsdl): Get XML schema imports from wsdl.
3318         * lisp/net/soap-client.el (soap-current-file): Remove variable.
3319         (soap-wsdl): Add current-file slot.
3320         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
3321         file from wsdl.
3322         (soap-fetch-xml-from-file): Likewise.
3323         (soap-fetch-xml): Likewise.
3324         (soap-load-wsdl): Always create wsdl object first.
3325         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
3327         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
3328         (soap-xs-parse-element): Set is-group slot.
3329         (soap-resolve-references-for-xs-element): Skip is-group elements.
3330         (soap-xs-complex-type): Add is-group slot.
3331         (soap-xs-parse-complex-type): Set is-group slot.
3332         (soap-xs-parse-sequence): Parse xsd:group elements.
3333         (soap-resolve-references-for-xs-complex-type): Inline elements
3334         from referenced xsd:group nodes.
3335         (soap-parse-schema): Parse xsd:group nodes.
3337         * lisp/net/soap-client.el (soap-invoke):
3338         Don't set url-http-version to 1.0.
3340         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3341         Allow choice nodes to accept multiple values.
3343         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
3344         for extra header values.
3346         * lisp/net/soap-client.el (soap-well-known-xmlns):
3347         Add wsa and wsaw tags.
3348         (soap-operation): Add input-action and output-action slots.
3349         (soap-parse-operation): Parse wsaw:Action nodes.
3350         (soap-encode-body): Encode service-url for WS-Addressing.
3351         (soap-create-envelope): Likewise.
3352         (soap-invoke): Update soap-create-envelope call to provide
3353         service-url argument.
3355         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3356         Support xsi:type override attribute.
3357         (soap-decode-array): Likewise.
3359         * lisp/net/soap-client.el (soap-parse-schema):
3360         Handle location attribute.
3362         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
3363         matched validation regexp.
3365         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
3366         Encode xsd:list nodes.
3367         (soap-decode-xs-simple-type): Decode xsd:list nodes.
3369         * lisp/net/soap-client.el (soap-get-candidate-elements):
3370         Fix reference handling.
3372         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
3373         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
3374         (soap-xs-add-list): New function.
3376         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
3377         expected, interpret nil as "false".
3379         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
3380         gYear, gMonthDay, gDay and gMonth.
3382         * lisp/net/soap-client.el (soap-time-format): New variable.
3383         (soap-encode-xs-basic-type): Handle dateTime, time, date,
3384         gYearMonth, gYear, gMonthDay, gDay and gMonth.
3385         (soap-decode-date-time): New function.
3386         (soap-decode-xs-basic-type): Use soap-decode-date-time.
3388         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
3389         after encoding.
3390         (soap-decode-xs-basic-type): Validate value before decoding.
3392         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
3393         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
3395         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
3396         instead of overwriting it.
3397         (soap-validate-xs-simple-type): Add union support.
3399         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
3400         to Emacs regexp using xsdre-translate.
3401         (soap-validate-xs-simple-type): Validate value against pattern.
3403         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
3404         inline simpleType nodes.
3405         (soap-decode-type): Handle union types.
3407         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
3408         attributes.
3410         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
3411         from soap-xs-attribute-group-consolidate, all callers updated
3412         (soap-get-xs-attributes): Rename from
3413         soap-xs-attributes-consolidate, all callers updated
3415         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
3416         (soap-xs-attribute-group): New type.
3417         (soap-xs-parse-attribute-group): New function.
3418         (soap-resolve-references-for-xs-attribute-group): Likewise.
3419         (soap-xs-add-extension): Handle attribute groups.
3420         (soap-resolve-references-for-xs-simple-type): Likewise.
3421         (soap-xs-parse-complex-type): Likewise.
3422         (soap-xs-parse-extension-or-restriction): Likewise.
3423         (soap-resolve-references-for-xs-complex-type): Likewise.
3424         (soap-xs-attribute-group-consolidate): New function.
3425         (soap-xs-attributes-consolidate): Handle attribute groups.
3426         (soap-parse-schema): Likewise.
3428         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
3429         Fix boolean encoding.
3431         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
3432         element names in warnings.
3434         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
3436         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3437         Eliminate invalid warnings for choice types.
3439         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
3440         Also encode base type attributes.
3442         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
3443         warning.  Print e-name in warnings, or element if e-name is nil.
3445         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
3446         (soap-xs-parse-element): Set substitution-group.
3447         (soap-resolve-references-for-xs-element): Populate alternatives slot.
3448         (soap-get-candidate-elements): New function.
3449         (soap-encode-xs-complex-type): Iterate through all candidate elements.
3450         Handle types with nil type indicator.  Fix warning logic.
3452         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
3453         earlier in the file to prevent compiler warning.
3455         * lisp/net/soap-client.el (soap-node-optional): New function.
3456         (soap-node-multiple): Likewise.
3457         (soap-xs-parse-element): Call soap-node-optional and
3458         soap-node-multiple.
3459         (soap-xs-complex-type): Add optional? and multiple? slots.
3460         (soap-xml-get-children-fq): New function.
3461         (soap-xs-element-get-fq-name): Likewise.
3462         (soap-xs-complex-type-optional-p): Likewise.
3463         (soap-xs-complex-type-multiple-p): Likewise.
3464         (soap-xs-attributes-consolidate): Likewise.
3465         (soap-decode-xs-attributes): Likewise.
3466         (soap-decode-xs-complex-type): Decode types with nil type indicator.
3467         Support children that use local namespaces.  Decode attributes.
3468         Add type considerations to optional? and multiple? warnings.
3470         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
3471         Store parsed attributes.
3472         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
3474         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
3475         Don't add the xsi:type attribute (Exchange refuses requests which have
3476         this attribute).
3478         * lisp/net/soap-client.el, soap-inspect.el: Convert to lexical binding,
3479         correct compiler warnings about unused function arguments and
3480         local variables.
3482         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
3483         type indicator.
3484         (soap-parse-envelope): Handle response headers.
3485         (soap-parse-response): Likewise.  Only return non-nil decoded values.
3487         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
3488         Return validated value.
3490         * lisp/net/soap-client.el (soap-xs-parse-element)
3491         (soap-xs-parse-simple-type)
3492         (soap-xs-parse-complex-type)
3493         (soap-parse-message)
3494         (soap-parse-operation): Add the current namespace to the element
3495         being created.
3496         (soap-resolve-references-for-xs-element)
3497         (soap-resolve-references-for-xs-simple-type)
3498         (soap-resolve-references-for-xs-complex-type)
3499         (soap-resolve-references-for-operation): Resolve the namespace to
3500         the namespace tag.
3501         (soap-make-wsdl): specify a namespace tag when creating the xsd
3502         and soapenc namespaces
3503         (soap-wsdl-resolve-references): don't update namespace tags in
3504         elements here
3505         (soap-parse-port-type): bind the urn: to soap-target-xmlns
3506         (soap-encode-body): don't add nil namespace tags to
3507         soap-encoded-namespaces
3509         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
3510         for registering the soap-inspect method.  Make debbugs tests pass.
3511         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
3512         type name, also skip string only nodes when decoding a structure.
3513         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
3514         types too.
3515         (soap-encode-body): Grab the header value from the param table.
3517         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
3518         New function.
3519         (soap-encode-xs-element): Don't encode nil value unless needed.
3521         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
3522         (soap-parse-binding): Parse the message parts required in the body.
3523         (soap-encode-body): Encode only the parts that are declared to be
3524         part of the body.
3526         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
3527         when writing out the tag.
3528         (soap-encode-body): Remove hack that inserts the xmlns in the
3529         element attributes list.
3531         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
3532         (soap-xs-parse-attribute): Default slot is set from the XML
3533         "fixed" attribute.
3534         (soap-encode-xs-complex-type-attributes): Encode any attributes
3535         that have a default value.  Also, don't put the xsi:nil attribute
3536         when the complex type has no content anyway.
3538         * lisp/net/soap-client.el (soap-well-known-xmlns):
3539         Add the xml namespace.
3540         (soap-local-xmlns): Start with the xml namespace.
3541         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
3542         (soap-make-xs-basic-types): More xsd types added.
3543         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
3544         Handle "language", "time", "date", "nonNegativeInteger".
3545         (soap-resolve-references-for-xs-element): Don't signal an error if
3546         the element does not have a type.
3547         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
3548         added stum for xsd:list.
3549         (soap-xs-add-union): Call soap-l2fq on all union members.
3550         (soap-xs-add-extension): Call soap-l2fq on the base member.
3551         (soap-resolve-references-for-xs-simple-type): Don't signal an
3552         error if the simple type has no base.
3553         (soap-resolve-references-for-xs-simple-type): Bugfix, call
3554         soap-wsdl-get on each type of the base.
3556         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
3557         Referenced type can be eiher a simple type or a basic type.
3558         (soap-xs-add-restriction)
3559         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
3560         (soap-make-xs-basic-types)
3561         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
3562         Add support for more XMLSchema basic types.
3563         (soap-current-file, soap-xmlschema-imports): New defvars.
3564         (soap-parse-schema): Add locations from xsd:import tags to
3565         `soap-xmlschema-imports'.
3566         (soap-wsdl): Make destructor private.
3567         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
3568         (soap-wsdl-add-alias): Check if we try to replace aliases.
3569         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
3570         (soap-fetch-xml): New defuns.
3571         (soap-load-wsdl): Update to load the WSDL from either a file or
3572         an url.
3573         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
3574         (soap-parse-wsdl): Process wsdl:import tags and imports from
3575         `soap-xmlschema-imports'.
3576         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
3577         symbol-name.
3578         (soap-l2fq): Make the name part always a string.
3579         (soap-name-p): New defun, used for name tests.
3581         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
3582         Supply sample values for choice types with a special tag.
3583         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
3584         Handle anonymous elements correctly.
3585         (soap-encode-value): Accept nodes that have no namespace tag.
3587         * lisp/net/soap-client.el (soap-invoke): Encode the string for
3588         `url-request-data' as UTF-8.  Fixes issue 16.
3590 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
3592         Update the new icon
3594         Move the E slightly to the right in the circle.
3596         * etc/images/icons/hicolor/128x128/apps/emacs.png:
3597         * etc/images/icons/hicolor/16x16/apps/emacs.png:
3598         * etc/images/icons/hicolor/24x24/apps/emacs.png:
3599         * etc/images/icons/hicolor/32x32/apps/emacs.png:
3600         * etc/images/icons/hicolor/48x48/apps/emacs.png:
3601         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
3602         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
3603         * nt/icons/emacs.ico: New icom update.
3605 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3607         Avoid missing inline functions from lisp.h in TAGS
3609         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
3610         need to end each invocation with a semi-colon.
3611         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
3612         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
3613         inline functions defined immediately after each invocation, and
3614         also avoid tagging every invocation of these macros.
3616 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3618         A better fix for bug#21739
3620         * src/buffer.c (set_update_modelines_for_buf): New function.
3621         (Fkill_buffer): Use it to set the global variable
3622         update_mode_lines if the killed buffer was displayed in some
3623         window.  Don't set windows_or_buffers_changed.  This is a better
3624         fix for bug#21739 than the previous fix, since it will cause only
3625         redisplay of mode lines, not of entire windows, but will still
3626         catch attention of x_consider_frame_title in xdisp.c, which
3627         redraws the frame title.
3629 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
3631         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
3632         tar.bz2 and tar.xz archives.
3634 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
3636         Fix infloop in redisplay introduced by a recent change
3638         * src/xdisp.c (redisplay_internal): Avoid inflooping when
3639         redisplaying the selected window sets the selected frame's
3640         redisplay flag.  (Bug#21745)
3642 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3644         * lisp/emacs-lisp/thunk.el: Better documentation.
3646 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3648         Replace the old icon for Windows and Mac OSX
3650         * nt/icons/emacs.ico:
3651         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
3652         Use the new icons.
3654 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
3656         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
3657         `load-path' should contain only directory names.
3659 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3661         New library thunk.el
3663         thunk.el is extracted from stream.el in ELPA, with additional tests.
3665         * lisp/emacs-lisp/thunk.el: New file.
3666         * test/automated/thunk-tests.el: New file.
3667         * etc/NEWS: Add information about thunk.el
3669 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
3671         Fix bug#21669
3673         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
3674         calling low-level functions.
3676         * test/automated/file-notify-tests.el (file-notify--test-timeout):
3677         Decrase to 6 seconds for remote directories.
3678         (file-notify-test02-events): Expect different number of
3679         `attribute-changed' events for the local and remote cases.  Apply
3680         short delays between the operations, in order to receive all
3681         events in the remote case.  Combine `attribute-change' tests.
3682         (Bug#21669)
3684 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
3686         Decode the HTML source when displaying it in EWW
3688         * lisp/net/eww.el (eww-view-source): Decode the HTML source
3689         according to its headers.
3691 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3693         New default icon
3695         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
3696         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
3697         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
3698         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
3699         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
3700         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
3701         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
3702         Move the old logo files to emacs23.*.
3703         * etc/images/icons/hicolor/128x128/apps/emacs.png:
3704         * etc/images/icons/hicolor/16x16/apps/emacs.png:
3705         * etc/images/icons/hicolor/24x24/apps/emacs.png:
3706         * etc/images/icons/hicolor/32x32/apps/emacs.png:
3707         * etc/images/icons/hicolor/48x48/apps/emacs.png:
3708         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
3709         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
3710         New files.
3711         * etc/images/icons/README: Update the copyright information.
3713 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
3715         Fix redisplay of frame title when current buffer is killed
3717         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
3718         non-zero value, to redisplay more than just the affected windows.
3719         (Bug#21739)
3721 2015-10-23  Anders Lindgren  <andlind@gmail.com>
3723         NextStep maximization and NSTRACE rewrite
3725         Full-height, full-width, and maximized windows now cover the
3726         entire screen (except the menu bar), including the part where the
3727         system dock is placed.  The system zoom animation is no longer
3728         used.
3730         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
3731         original size.
3733         * src/nsterm.m (ns_menu_bar_height): New function, return height of
3734         the menu bar, or 0 when it's hidden.
3735         (constrain_frame_rect): New function for constraining a frame.
3736         (ns_constrain_all_frames): Set frame size explicitly rather than
3737         relying on the system doing it for us by writing back the current
3738         frame size.
3739         (windowWillUseStandardFrame): Register non-maximized width or
3740         height as new user size.  When entering full width or height,
3741         the other size component is taken from the user size.
3742         (fullscreenState): New method for accessing the fullscreen state.
3743         (constrainFrameRect): Restrict frame to be placed under the menu bar,
3744         if present.  The old version, sometimes, restricted the height of a
3745         frame to the screen, this version never does this.
3746         (zoom): Perform zoom by setting the frame to the full size of the
3747         screen (minus the menu bar).  The default system function, with the
3748         zoom animation, is no longer used, as the final frame size doesn't
3749         cover the entire screen.
3751         Rework how to constrain resizing to the character grid.  The old
3752         system used "resizeIncrements" in NSWindows.  However, once a frame
3753         was resized so that it was not aligned to the text grid, it
3754         remained unaligned even after a resize.  In addition, it conflicted
3755         when resizing a fullheight window.
3757         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
3758         unless when pixelwise frame resizing is enabled.
3759         (updateFrameSize, initFrameFromEmacs)
3760         (toggleFullScreen, handleFS): Don't set resizeIncrements.
3762         Redesign the NS trace system.  The call structure is represented
3763         using indentations and vertical lines.  The NSTRACE macro accepts
3764         printf-style arguments.  New macros for printing various
3765         information.
3767         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
3768         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
3769         block (typically a function), accept printf-style arguments.
3770         (NSTRACE_MSG): Macro for extra information, accepts
3771         printf-style arguments.
3772         (NSTRACE_what): Macros for printing various types.
3773         (NSTRACE_FMT_what): Macro with printf format string snippets.
3774         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
3775         corresponds to NSTRACE_FMT_what.
3776         (NSTRACE_RETURN): Macro to print return value, accept
3777         printf-style arguments.
3778         (NSTRACE_RETURN_what): Macros to print return value for
3779         various types.
3781         * nsterm.m: Remove old NSTRACE macro
3782         * src/nsterm.m (nstrace_num): Trace counter.
3783         (nstrace_depth): Current call depth.
3784         (nstrace_leave): NSTRACE support function, called when the
3785         local variable "nstrace_enabled" goes out of scope using the
3786         "cleanup" extension.
3787         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
3788         (constrain_frame_rect, ns_constrain_all_frames)
3789         (ns_update_auto_hide_menu_bar, ns_update_begin)
3790         (ns_update_window_begin, update_window_end, ns_update_end)
3791         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
3792         (ns_frame_rehighlight, x_make_frame_visible)
3793         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
3794         (x_destroy_window, x_set_offset, x_set_window_size)
3795         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
3796         (ns_defined_color, frame_set_mouse_pixel_position)
3797         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
3798         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
3799         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
3800         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
3801         (dumpcursor, ns_draw_vertical_window_border)
3802         (ns_draw_window_divider, ns_draw_relief)
3803         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
3804         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
3805         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
3806         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
3807         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
3808         (ns_create_terminal, ns_term_init, sendEvent)
3809         (applicationDidFinishLaunching, applicationDidBecomeActive)
3810         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
3811         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
3812         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
3813         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
3814         (mouse_autoselect_window, in_window, mouseDragged)
3815         (rightMouseDragged, otherMouseDragged, windowShouldClose)
3816         (updateFrameSize, windowWillResize, windowDidResize)
3817         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
3818         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
3819         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
3820         (windowDidEnterFullScreen, windowWillExitFullScreen)
3821         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
3822         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
3823         (draggingEntered, performDragOperation, validRequestorForSendType)
3824         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
3825         (EmacsScroller_initFrame, EmacsScroller_setFrame)
3826         (EmacsScroller_dealloc, condemn, reprieve, judge)
3827         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
3828         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
3830         * nsfns.m: Remove old NSTRACE macro
3831         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
3832         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
3833         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
3835         * nsimage.m: Remove old NSTRACE macro
3836         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
3837         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
3839         * nsmenu.m: Remove old NSTRACE macro
3840         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
3841         Use new trace system.
3843 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
3845         No need to use eval-and-compile
3847         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
3848         autoload epg functions.
3850 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
3852         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
3854         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
3855         epg-context-set-passphrase-callback, epg-decrypt-string, and
3856         epg-encrypt-string; require epg when compiling for the setf-method
3857         for epg-context-armor. (bug#21724)
3859 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
3861         Include file cleanup for w32 files in src directory
3863         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
3864         fontset.h, blockinput.h.
3865         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
3866         charset.h, fontset.h.
3867         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
3868         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
3869         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
3870         in an ifdef-ed away block.
3871         Include fcntl.h for CYGWIN.
3872         (set_frame_param): Remove unused function.
3873         * src/w32select.c: Don't include charset.h and composite.h.
3874         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
3875         due to pointer signedness mismatches.
3876         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
3877         due to pointer signedness mismatches.
3878         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
3879         process.h, dispextern.h.
3880         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
3881         (Fw32_application_type): Avoid compiler warnings due to pointer
3882         signedness mismatches.
3883         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
3884         character.h, charset.h, dispextern.h.
3885         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
3886         to pointer signedness mismatches.
3887         * src/w32inevt.c: Don't include dispextern.h, window.h,
3888         termhooks.h, w32heap.h.
3889         * src/w32font.c: Don't include dispextern.h, character.h,
3890         charset.h, fontset.h, font.h.
3891         (intern_font_name, add_font_entity_to_list)
3892         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
3893         (list_all_matching_fonts): Avoid compiler warnings due to pointer
3894         signedness mismatches.
3895         * src/w32fns.c: Don't include character.h, intervals.h,
3896         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
3897         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
3898         (w32_color_map_lookup, add_system_logical_colors_to_map)
3899         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
3900         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
3901         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
3902         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
3903         compiler warnings, mainly due to pointer signedness mismatches.
3904         (unwind_create_frame_1): Remove unused function.
3905         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
3906         window.h, termhooks.h, dispextern.h.
3907         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
3908         signedness mismatch.
3909         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
3910         w32heap.h.
3912 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
3914         Improve doc-view wrt. auto-revert-mode
3916         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
3917         is corrupted (bug#21729).
3918         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
3920 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
3922         Describe dired-do-compress-to in the manual
3924         * etc/NEWS: Update.
3926         * lisp/dired-aux.el: Fix typo.
3928         * doc/emacs/dired.texi: Add entry.
3930 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
3932         Further fix for proper locale handling in tramp-gvfs.el
3934         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
3935         Just suppress LC_MESSAGES locale category settings.
3937 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
3939         New lispref section “Security Considerations”
3941         This attempts to document some of the issues recently discussed
3942         on emacs-devel, and to indicate other such issues.  The section
3943         could be a lot longer.
3944         * doc/lispref/os.texi (Security Considerations):
3945         New node.
3946         * doc/lispref/elisp.texi (Top):
3947         * doc/lispref/processes.texi (Shell Arguments):
3948         * lisp/subr.el (shell-quote-argument):
3949         * src/callproc.c (syms_of_callproc):
3950         Reference it.
3952 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
3954         Merge from gnulib
3956         This incorporates:
3957         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
3958         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
3959         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
3960         Copy from gnulib.
3962 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
3964         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
3965         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
3967 2015-10-21  Ken Brown  <kbrown@cornell.edu>
3969         Further include-file cleanup
3971         * src/sheap.c: Include stdlib.h.
3972         * src/unexcw.c: Include string.h.
3974 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
3976         Fix logic in 'server-kill-emacs-query-function'
3978         * lisp/server.el (server-kill-emacs-query-function): Correct the
3979         logic that controls whether the user is asked for confirmation.
3980         (Bug#21723)
3982 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
3984         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
3985         (isearch--lax-regexp-function-p): New function.
3987 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
3989         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
3990         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
3991         around `isearch-regexp-function'.
3993 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
3995         * lisp/isearch.el: Rename word search to regexp-function search.
3996         `isearch-word' went well beyond its original purpose, and the name
3997         no longer makes sense.  It is now called
3998         `isearch-regexp-function', and its value should always be a function
3999         that converts a string to a regexp (though setting it to t is still
4000         supported for now).
4001         (isearch-word): Make obsolete.
4002         (isearch-regexp-function): New variable.
4003         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
4004         (with-isearch-suspended, isearch-toggle-regexp)
4005         (isearch-toggle-word, isearch-toggle-symbol)
4006         (isearch-toggle-character-fold, isearch-query-replace)
4007         (isearch-occur, isearch-highlight-regexp)
4008         (isearch-search-and-update, isearch-message-prefix)
4009         (isearch-search-fun-default, isearch-search)
4010         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
4011         Use it.
4012         (isearch-lazy-highlight-regexp-function): New var.
4013         (isearch-lazy-highlight-word): Make obsolete.
4014         (isearch--describe-regexp-mode): New function.
4015         (isearch--describe-word-mode): Make obsolete.
4017         * lisp/info.el (Info-isearch-search):
4018         * lisp/replace.el (replace-search, replace-highlight):
4019         * lisp/obsolete/longlines.el (longlines-search-function):
4020         * lisp/hexl.el (hexl-isearch-search-function):
4021         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
4022         Use the new var.
4024 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
4026         Add dired-do-compress-to command bound to "c"
4028         * lisp/dired-aux.el (dired-shell-command): Use the caller's
4029           `default-directory', return the result of `process-file'.
4030         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
4031         used by default.
4032         (dired-compress-files-alist): New defvar.
4033         (dired-do-compress-to): New command.
4035         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
4036         (dired-do-compress-to): Add an autoload entry.
4038         * etc/NEWS: Add two entries.
4040 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
4042         Make RefTeX work with LaTeX subfiles package
4044         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
4045         document class argument as master file for referencing purposes.
4047 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
4049         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
4051 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
4053         Include-file cleanup for src directory
4055         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
4056         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
4057         but does not include it directly.  As a general rule, a source
4058         file should include foo.h if it needs the interfaces that foo.h
4059         defines.
4060         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
4061         systime.h.
4062         * src/atimer.c: Don’t include blockinput.h.
4063         * src/buffer.c: Include coding.h, systime.h.  Don’t include
4064         keyboard.h, coding.h.
4065         * src/callint.c: Don’t include commands.h, keymap.h.
4066         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
4067         systty.h, termhooks.h.
4068         * src/casetab.c: Don’t include character.h.
4069         * src/category.c: Don’t include charset.h, keymap.h.
4070         * src/ccl.h: Don’t include character.h.
4071         * src/character.c: Don’t include charset.h.
4072         * src/charset.c: Don’t include disptab.h.
4073         * src/chartab.c: Don’t include ccl.h.
4074         * src/cm.c: Don’t include frame.h, termhooks.h.
4075         * src/cmds.c: Don’t include window.h, dispextern.h.
4076         * src/coding.c: Don’t include window.h, frame.h.
4077         * src/composite.c: Include composite.h.  Don’t include window.h,
4078         font.h.
4079         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
4080         * src/dbusbind.c: Don’t include frame.h.
4081         * src/decompress.c: Don’t include character.h.
4082         * src/dired.c: Don’t include character.h, commands.h, charset.h.
4083         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
4084         process.h, timespec.h.  Include systime.h.
4085         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
4086         * src/editfns.c: Include composite.h.  Don’t include frame.h.
4087         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
4088         commands.h, systty.h..
4089         * src/fileio.c: Don’t include intervals.h, dispextern.h.
4090         Include composite.h.
4091         * src/filelock.c: Don’t include character.h, systime.h.
4092         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
4093         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
4094         * src/font.c: Include termhooks.h.
4095         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
4096         struct composition_it, struct face, struct glyph_string.
4097         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
4098         intervals.h, window.h, termhooks.h.
4099         * src/frame.c: Don’t include character.h, commands.h, font.h.
4100         * src/frame.h: Don’t include dispextern.h.
4101         * src/fringe.c: Don’t include character.h.
4102         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
4103         character.h, charset.h, fontset.h.
4104         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
4105         fontset.h.
4106         * src/ftxfont.c: Don’t include dispextern.h, character.h,
4107         charset.h, fontset.h.
4108         * src/gfilenotify.c: Don’t include frame.h, process.h.
4109         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
4110         Don’t include syssignal.h, buffer.h, charset.h, font.h.
4111         * src/gtkutil.h: Don’t include frame.h.
4112         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
4113         Don’t include character.h.
4114         * src/indent.c: Don’t include keyboard.h, termchar.h.
4115         * src/inotify.c: Don’t include character.h, frame.h.
4116         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
4117         * src/intervals.c: Don’t include character.h, keyboard.h.
4118         * src/intervals.h: Don’t include dispextern.h, composite.h.
4119         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
4120         Include coding.h.
4121         * src/keyboard.h: Don’t incldue systime.h.
4122         * src/keymap.c: Don’t include charset.h, frame.h.
4123         * src/lread.c: Include dispextern.h and systime.h.
4124         Don’t include frame.h.  Include systime.h.
4125         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
4126         * src/menu.c: Include character.h, coding.h.  Don’t include
4127         dispextern.h.
4128         * src/menu.h: Don’t include systime.h.
4129         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
4130         intervals.h, termhooks.h.
4131         * src/print.c: Include coding.h.  Don’t include keyboard.h,
4132         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
4133         Add forward decl of struct terminal.
4134         * src/process.c: Don’t include termhooks.h, commands.h,
4135         dispextern.h, composite.h.
4136         * src/region-cache.c: Don’t include character.h.
4137         * src/scroll.c: Don’t include keyboard.h, window.h.
4138         * src/search.c: Don’t include category.h, commands.h.
4139         * src/sound.c: Don’t include dispextern.h.
4140         * src/syntax.c: Don’t include command.h, keymap.h.
4141         * src/sysdep.c: Don’t include window.h, dispextern.h.
4142         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
4143         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
4144         * src/terminal.c: Include character.h.
4145         Don’t include charset.h, coding.h.
4146         * src/textprop.c: Don’t include character.h.
4147         * src/undo.c: Don’t include character.h, commands.h, window.h.
4148         * src/unexsol.c: Don’t include character.h, charset.h.
4149         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
4150         window.h, dispextern.h, blockinput.h, character.h, font.h.
4151         * src/widgetprv.h: Don’t include widget.h.
4152         * src/window.c: Don’t include character.h, menu.h, intervals.h.
4153         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
4154         macros.h, process.h.
4155         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
4156         intervals.h.
4157         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
4158         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
4159         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
4160         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
4161         * src/xgselect.c: Don’t include timespec.h, frame.h.
4162         Include systime.h.
4163         * src/xgselect.h: Don’t include time.h.
4164         Use a forward decl to struct timespec instead.
4165         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
4166         dispextern.h.  Include systime.h.
4167         * src/xml.c: Don’t include character.h.
4168         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
4169         * src/xselect.c: Don’t include dispextern.h, character.h,
4170         buffer.h, process.h.
4171         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
4172         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
4173         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
4175 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
4177         (/ N) now returns the reciprocal of N
4179         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
4180         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
4181         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
4182         (color-xyz-to-srgb, color-xyz-to-lab):
4183         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
4184         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
4185         (shr-color-hsl-to-rgb-fractions):
4186         Exploit the change to simplify the code a bit.
4187         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
4188         Don’t complain about single-argument calls to ‘/’.
4189         * src/data.c (arith_driver, float_arith_driver):
4190         Implement the change.
4192 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
4194         Call vc-dir-refresh after stash operations
4196         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
4197         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
4199         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
4200         since it can be abbreviated (as returned by vc-find-root).
4202 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
4204         * lisp/vc/vc-svn.el:
4205         * lisp/vc/vc-mtn.el:
4206         * lisp/vc/vc-hg.el:
4207         * lisp/vc/vc-cvs.el:
4208         * lisp/vc/vc-git.el:
4209         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
4210         Its usages have been replaced with vc-run-delayed.
4212 2015-10-20  Dima Kogan  <dima@secretsauce.net>
4214         Fix memory leak in fontset handling
4216         * src/font.c (copy_font_spec): Make a deep copy of the input
4217         argument FONT.  (Bug#21651)
4219 2015-10-20  Michael Sperber  <mike@xemacs.org>
4221         * lisp/gnus/mailcap.el (mailcap-mime-data):
4222         Conditonalize `doc-view-mode', which does not exist on XEmacs.
4224 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
4226         Update the way directories are compressed
4228         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
4229         for *.tar.gz decompression to use a pipe.
4230         Add an entry for the default directory compression (to *.tar.g).
4231         (dired-compress-file): Update.
4233         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
4235 2015-10-20  Michael Sperber  <mike@xemacs.org>
4237         Unbreak `group' option for `mail-sources'
4239         * nnml.el (nnml-retrieve-groups, nnml-request-scan):
4240         * nnmail.el (nnmail-get-new-mail-per-group)
4241         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
4243 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
4245         New function seq-position
4247         * lisp/emacs-lisp/seq.el (seq-position): New function.
4248         * test/automated/seq-tests.el: New tests for seq-position.
4249         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
4251 2015-10-19  Ken Brown  <kbrown@cornell.edu>
4253         Enable --with-wide-int build on 32-bit Cygwin
4255         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
4256         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
4258 2015-10-19  Glenn Morris  <rgm@gnu.org>
4260         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
4262 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4264         Resurrect image loading under auto-image-file-mode
4266         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
4267         'openp' specially.  This special case was lost in the changes on
4268         2015-08-18.  (Bug#21685)
4270 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4272         Fix return value of 'set-file-extended-attributes'
4274         * lisp/files.el (set-file-extended-attributes): Return non-nil
4275         when setting either ACLs or SELinux context succeeds.  Document
4276         the return value.  (Bug#21699)
4278         * doc/lispref/files.texi (Changing Files): Document the return
4279         value of set-file-extended-attributes.
4281 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4283         Improve documentation of functions that change files
4285         * doc/lispref/files.texi (Changing Files): Document that these
4286         functions signal an error on failure.
4288 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
4290         Fix doc string of 'shell-quote-argument'
4292         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
4294 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
4296         Some minor Tramp changes
4298         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
4300         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
4301         Expand `tramp-auto-save-directory'.
4303 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
4305         Minor edits in Tramp
4307         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
4308         Declare it.
4310         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
4311         Remove declaration.
4313 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
4315         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
4317 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
4319         Avoid crashes when redisplayng a window changes faces or fonts
4321         * src/xdisp.c (redisplay_internal): If redisplaying the selected
4322         window or one of the frames turns on the frame's 'redisplay' flag,
4323         redisplay again.  (Bug#21428)
4325         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
4327 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
4329         Solve timimg issues in file-notify-tests.el
4331         * test/automated/file-notify-tests.el (file-notify-test02-events):
4332         Rectify `attribute-change' tests.  There are timing issues with
4333         gfilenotify.  (Bug#21669)
4335 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
4337         Fix quoting of data within htmlfontify doc
4339         * doc/misc/htmlfontify.texi (Data Structures, Customization):
4340         Fix quoting of data structures.  A Lisp quote is needed only
4341         when data appears within Lisp code.
4343 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
4345         * lisp/emacs-lisp/package.el: Reload archive-contents if
4346         priorities change.
4347         (package--old-archive-priorities): New variable.
4348         (package-read-all-archive-contents, package-menu--refresh): Use it
4349         to decide when the `package-archive-contents' needs to be read
4350         again.
4352 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
4354         Make src headers idempotent and standalone
4356         Redo src/*.h so that each include file is idempotent (that is, can
4357         be included multiple times with the latter inclusions having no
4358         effect) and standalone (that is, can be included by itself,
4359         with no include file other than config.h needed as a prerequisite).
4360         This is standard practice in GNU programs nowadays.
4361         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
4362         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
4363         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
4364         * src/regex.h [emacs]:
4365         * src/syntax.h, src/systty.h, src/termhooks.h:
4366         Include lisp.h, for Lisp_Object.
4367         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
4368         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
4369         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
4370         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
4371         * src/termopts.h, src/tparam.h, src/unexec.h:
4372         Protect against multiple inclusion.
4373         * src/buffer.h: Include character.h, for STRING_CHAR.
4374         * src/emacsgtkfixed.h (struct frame):
4375         * src/fontset.h (struct face):
4376         * src/region-cache.h (struct buffer):
4377         * src/termhooks.h (struct glyph):
4378         * src/xsettings.h (struct x_display_info):
4379         Add possibly-forward decl.
4380         * src/syntax.h: Include buffer.h, for BVAR.
4381         * src/sysselect.h: Include lisp.h, for eassume.
4382         * src/termchar.h: Include <stdio.h>, for FILE.
4383         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
4384         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
4386 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
4388         Handle symlink targets containing spaces in tramp-gvfs.el
4390         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4391         Handle symlink targets containing spaces.
4393 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
4395         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
4397         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
4398         same reason that `load-path' shouldn't.  Setting it via the customize
4399         interface is a trap for the user.
4401         Installed themes commonly add themselves to this variable, which means
4402         its value is not fit for being saved (it will permanently remember dirs
4403         that don't exist anymore).
4405         This is aggravated by the fact that Emacs always applies the `user'
4406         theme on top of any theme that's loaded, since this will apply the old
4407         variable value and remove any new directories that had been recently
4408         added by themes themselves.
4410         Not to mention, we already have `custom-theme-directory', which is safe
4411         to customize.
4413 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
4415         * lisp/mpc.el: Rename the new toggling commands.
4416         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
4417         (mpc-toggle-shuffle): Add "-toggle" in the name.
4419 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4421         Improve the doc string of 'completion-boundaries'
4423         * lisp/minibuffer.el (completion-boundaries): Rename the argument
4424         TABLE to COLLECTION, for consistency with other high-level
4425         completion functions.  Document how COLLECTION is called if it
4426         is a function.  (Bug#21644)
4428 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
4430         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
4432 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
4434         Make dired-do-compress work for *.zip files
4436         * lisp/dired-aux.el (dired-check-process): Transform the top-level
4437           comment into a docstring.
4438         (dired-shell-command): New command.  This mirrors
4439         `dired-check-process', but is more user-friendly for passing
4440         arguments.
4441         (dired-compress-file-suffixes): Allow to specify the command switches
4442         along with input (%i) and output (%o) inside the PROGRAM part.
4443         Add an entry for *.zip files, and update the entry for *.tar.gz files
4444         to the new style.  Update the docstring.
4445         (dired-compress-file): When PROGRAM matches %i or %o, use the new
4446         logic.
4447         (dired-update-file-line): Avoid an error when at end of buffer.
4449         Fixes bug#21637.
4451 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4453         Minor improvement in documentation of internals
4455         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
4457 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4459         Improve documentation of COLLECTION in completion functions
4461         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
4462         cross-reference to "Programmed Completion".
4464         * src/minibuf.c (Fcompleting_read): Improve the doc string.
4465         (Bug#21644)
4467 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4469         Add more release info to etc/HISTORY
4471         * etc/HISTORY: Add more release information about 19.x and 20.x
4472         versions.
4474 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
4476         New file etc/HISTORY
4478         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
4479         * etc/HISTORY: New file.
4480         * etc/NEWS: Mention it.
4482 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
4484         js-mode: Don't misindent generator methods
4486         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
4487         generator methods from multiplication operator
4488         (https://github.com/mooz/js2-mode/issues/275).
4490 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
4492         Fix animation timeout delay calculation
4494         * lisp/image.el (image-animate-timeout):
4495         Don’t assume speed is floating-point.
4497 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
4499         Add commands for controlling MPD modes
4501         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
4502         (mpc-cmd-single): New functions.
4503         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
4504         (mpc-mode-menu): Add new commands as menu items.
4506 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
4508         Refer to `(elisp)Basic Completion' in completing-read docstring
4510         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
4511         Completion' in the docstring (bug#21644).
4513 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4515         * lisp/mpc.el (mpc-format): Always push form to pred
4517 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
4519         Spelling fixes
4521         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
4522         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
4523         Fix misspelling of nonexistent file name.
4525 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4527         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
4529 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
4531         Some editing fixes in Tramp
4533         * lisp/net/tramp-gvfs.el:
4534         * doc/misc/tramp.texi: "customer option" -> "custom option".
4536         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
4538 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
4540         Use proper localization in tramp-gvfs.el
4542         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4543         Suppress localized settings in order to proper parse gfvs output.
4545 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
4547         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
4548         Quote argument in proper order.  (Bug#21562)
4550 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
4552         Fix typos in docstrings
4554         * lisp/emacs-lisp/map.el:
4555         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
4556           macros.
4558 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4560         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
4562 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
4564         Make dired-jump work with tar-subfile-mode
4566         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
4567           emitting an error, switch to `tar-superior-buffer'.
4569 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
4571         * .gitignore: Add build-aux/ar-lib.
4573 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
4575         Better docstrings in seq.el and map.el
4577         * lisp/emacs-lisp/map.el:
4578         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
4580 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
4582         Merge from gnulib
4584         This incorporates:
4585         2015-10-13 binary-io, u64, unistd: port to strict C
4586         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
4587         2015-09-25 c-ctype: port better to z/OS EBCDIC
4588         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
4589         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
4590         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
4591         Copy from gnulib.
4593 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
4595         Take XPNTR private
4597         * src/alloc.c (PURE_POINTER_P): Remove.
4598         All uses replaced with PURE_P.
4599         (XPNTR_OR_SYMBOL_OFFSET): New function.
4600         (XPNTR): Move here from lisp.h.
4601         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
4602         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
4603         Remove unnecessary cast.
4604         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
4605         to avoid an unnecessary runtime test for symbols.
4606         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
4607         Only alloc.c needs XPNTR now.
4609 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4611         Add MPC play/pause command
4613         * lisp/mpc.el (mpc-toggle-play): New command.
4614         (mpc-mode-map): Bind it to "s".
4615         (mpc-mode-menu): Add corresponding menu item.
4617 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4619         Add bindings and menu items for prev and next tracks
4621         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
4622         "<" to mpc-prev.
4623         (mpc-mode-menu): Add corresponding menu items
4625 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
4627         Reduce face-related consing during frame creation.
4629         * faces.el (face--attributes-unspecified): Compute the "unspecified"
4630         attribute list once.
4631         (face-spec-reset-face): Use it instead of building the list.
4633 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
4635         Do process ConfigureNotify events indicating size changes.
4637         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
4638         events don't have the same size, process each one.
4640 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4642         Derive mpc-mode from special-mode
4644         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
4645         (mpc-mode): Derive from special mode.
4646         (mpc-songs-mode-map): Don't set parent keymap.
4648 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4650         Fix error messages for when covers are not found.
4652         The last change to mpc-format let the binding to file call
4653         mpc-file-local-copy with nil argument.  Instead, employ if-let here
4654         so nil bindings don't result in needless computation and errors.
4655         * lisp/mpc.el: Require 'subr-x at compile time.
4656         * lisp/mpc.el (mpc-format): Use if-let.
4658 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
4660         Make dired-do-compress work for *.tar.gz files
4662         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
4663           "tar -zxvf" to *.tar.gz; update docstring.
4665         (dired-compress-file): Allow to specify switches after the command in
4666         `dired-compress-file-suffixes'.
4668 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
4670         Make dired-do-compress work for directories
4672         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
4673           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
4674         Also convert the top comment into a docstring.
4676 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
4678         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
4680         ... since it might come straight from the memoizing table.
4682 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
4684         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
4686 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4688         Use special-mode in eww list modes
4690         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
4691         (eww-buffers-mode): Derive from special-mode and remove redundant
4692         setting of buffer-read-only.
4693         (eww-mode-map): Remove redundant keymap parent setting.
4694         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
4695         Remove redundant keymap suppressions and mappings.
4697 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
4699         Allow setting frame pixel sizes from frame parameters (Bug#21415)
4701         Also fix some misfeatures in frame (re-)sizing code, add more
4702         debugging information and remove some dead code.
4704         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
4705         parameter names when setting `frame-size-history'.
4706         (frame--size-history): New function.
4708         * src/frame.c (frame_inhibit_resize): If frame has not been made
4709         yet, return t if inhibit_horizontal_resize or
4710         inhibit_vertical_resize bit have been set.
4711         (adjust_frame_size): Simplify.
4712         (make_frame): Initialize inhibit_horizontal_resize,
4713         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
4714         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
4715         inhibit_vertical_resize slots.
4716         (x_set_frame_parameters): Handle `text-pixels' specification for
4717         width and height parameters.  Don't consider new_height or
4718         new_width changes.  Call adjust_frame_size instead of
4719         Fset_frame_size.
4720         (x_figure_window_size): Two new arguments x_width and y_width
4721         returning frame's figures width and height.  Calculate tool bar
4722         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
4723         Handle `text-pixels' specification for width and height
4724         parameters.
4725         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
4726         (Qx_set_window_size_1, Qx_set_window_size_2)
4727         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
4728         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
4729         (Qfree_frame_menubar_2): New symbols.
4730         * src/frame.h (structure frame): New booleans
4731         tool_bar_redisplayed, tool_bar_resized,
4732         inhibit_horizontal_resize, inhibit_vertical_resize.
4733         (x_figure_window_size): Update external declaration.
4734         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
4735         calling gtk_window_resize.
4736         (update_frame_tool_bar): Make inhibiting of frame resizing more
4737         discriminative.  Set tool_bar_resized bit.
4738         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
4739         resizing more discriminative.  Call adjust_frame_size instead of
4740         x_set_window_size.
4741         (Fx_create_frame): Handle x_width and x_height if
4742         set by x_figure_window_size.
4743         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
4744         subtract 3 from tool bar height.
4745         (x_set_window_size): Add frame_size_history_add call.
4746         (x_new_font): Call adjust_frame_size instead of
4747         x_set_window_size.
4748         * src/w32fns.c (x_change_tool_bar_height): Reset
4749         tool_bar_redisplayed and tool_bar_resized bits when adding tool
4750         bar.  Make inhibiting of frame resizing more discriminative.
4751         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
4752         (Fx_create_frame): Handle x_width and x_height if set by
4753         x_figure_window_size.  Set size hints before adjusting frame size.
4754         (x_create_tip_frame): Adjust x_figure_window_size call.
4755         * src/w32term.c (x_set_window_size): Add frame_size_history_add
4756         call.
4757         * src/widget.c (set_frame_size): Remove dead code.  Add
4758         frame_size_history_add call.  When frame_resize_pixelwise is t
4759         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
4760         pixel_width and pixel_height.
4761         (update_various_frame_slots): Remove dead code.
4762         (EmacsFrameResize): Add more information in
4763         frame_size_history_add call.
4764         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
4765         is not set.
4766         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
4767         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
4768         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
4769         tool_bar_resized bits when adding tool bar.  Make inhibiting of
4770         frame resizing more discriminative.
4771         (Fx_create_frame): Handle x_width and x_height if set by
4772         x_figure_window_size.  Set size hints before adjusting frame size.
4773         (x_create_tip_frame): Adjust x_figure_window_size call.
4774         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
4775         (set_frame_menubar): On Lucid never add core-border-width to
4776         avoid that adding XtNinternalBorderWidth adds it again.
4777         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
4778         * src/xterm.c (x_new_font): In non-toolkit case handle size
4779         change of menu bar.
4780         (x_set_window_size_1): Fix calls to frame_size_history_add.
4781         (x_wm_set_size_hint): Remove dead code.  Set
4782         size_hints.min_width and size_hints.min_height to base_width and
4783         base_height.
4785 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
4787         * test/automated/file-notify-tests.el (file-notify--test-timeout):
4788         Add docstring.  Increase to 10 seconds for remote
4789         directories.  (Bug#21669)
4791 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
4793         Unmacroize ebrowse.c and etags.c a bit
4795         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
4796         (streq, filename_eq, set_flag, has_flag): Now inline functions.
4797         (set_flag): First arg is now an address, not an lvalue.
4798         All callers changed.
4799         (filename_eq, set_flag, has_flag):
4800         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
4801         All callers changed.
4802         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
4803         Now inline functions.  Remove asserts that are unnecessary these
4804         days (and in some cases were too-generous anyway).
4806 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
4808         Use highlight for current items
4810         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
4811         Apply highlight face instead of region face.
4813 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
4815         Search for more cover image names in MPC
4817         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
4818         case insensitively
4820 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4822         Remove or comment out unused variables
4824         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
4825         nontext_cursor, mode_cursor, hand_cursor and count.
4826         (x_change_tool_bar_height): Remove variable old_text_height.
4827         (deliver_wm_chars): Remove variable strip_Alt.
4828         (Fw32_shell_execute): Remove variable document_a.
4829         (Fw32_frame_geometry): Remove variable fullboth.
4830         * src/w32term.c (w32_setup_relief_color): Comment out variable
4831         w32_display_info.
4832         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
4833         (w32_read_socket): Comment out variables rows, columns.
4834         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
4836 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4838         * src/w32proc.c (sys_select): Fix bitwise test.
4840 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4842         Minor typo corrections in doc strings
4844         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
4845         Doc fixes.
4847 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4849         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
4851 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4853         Attempt to avoid crashes in plist-member
4855         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
4856         and a call to XCDR.  (Bug#21655)
4858 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
4860         * lisp/select.el (gui-get-primary-selection): In
4861         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
4863 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
4865         Support RTF in doc-view
4867         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
4869 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4871         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
4873 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
4875         Replace the usage of an obsolete function in auth-source.el
4877         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
4878         Replace an usage of `epg-context-set-armor' with `setf'.
4880 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
4882         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
4884 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
4886         Have calc-yank recognize numbers in different bases.
4888         * lisp/calc/calc-yank.el (math-number-regexp): New function.
4889         (calc-yank): Use `math-number-regexp' to recognize numbers.
4891 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4893         Handle an opaque-move X11 window manager operation more efficiently
4895         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
4896         followed by more ConfigureNotify events for the same window, process
4897         only the last one.
4899 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4901         Fix cursor setting for tip frame; re-enable cursor generation
4903         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
4904         attributes sent when creating the new X window.  Don't skip setting
4905         the pointerColor parameter.
4907 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4909         Rewrite x_set_mouse_color to sync less
4911         We can track serial numbers of X requests and correlate error events
4912         with the associated requests.  This way we can identify errors for
4913         specific calls without having to use XSync after every one.
4915         * src/xfns.c (enum mouse_cursor): New type.
4916         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
4917         (mouse_cursor_types): New array listing the Lisp variables and default
4918         cursor appearances for each cursor type.
4919         (x_set_mouse_color_handler): New function; checks error event serial
4920         number against submitted requests.
4921         (x_set_mouse_color): Updated to use the new error handler callback,
4922         and to be more table-driven, to simplify repetitious code.
4924 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4926         Add x_catch_errors_with_handler
4928         * src/xterm.c (struct x_error_message_stack): Add new fields for a
4929         callback function and associated data pointer.
4930         (x_error_catcher): If the callback function is set, call it after
4931         saving the error message string.
4932         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
4933         accepts a callback function and data pointer.
4934         (x_catch_errors): Now a wrapper function.
4935         * src/xterm.h (x_special_error_handler): New typedef.
4936         (x_catch_errors_with_handler): Declare.
4938 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
4940         Introduce x_uncatch_errors_after_check to reduce XSync calls
4942         Both x_had_errors_p and x_check_errors call XSync, so if they're
4943         immediately followed by x_uncatch_errors, its XSync call will be
4944         redundant, resulting in a wasted round trip to the X server.
4946         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
4947         x_uncatch_errors without the XSync call.
4948         (XTmouse_position, x_wm_supports):
4949         * src/xfns.c (x_set_mouse_color):
4950         * src/xmenu.c (Fx_menu_bar_open_internal):
4951         * src/xselect.c (x_own_selection, x_get_foreign_selection):
4952         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
4953         * src/xterm.h (x_uncatch_errors_after_check): Declare.
4955 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
4957         Document the optional prefix to `calc-yank'
4959         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
4960         prefix to `calc-yank'.
4961         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
4962         the Calc buffer are yanked back unchanged.
4964 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
4966         * lisp/calendar/calendar.el: Display buffer before executing body.
4968         In each use of this macro, the modeline is derived from a window width
4969         calculation, which will be wrong if (display-buffer) splits the window
4970         horizontally.
4972 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
4974         Use ‘echo’ safely with ‘\’ or leading ‘-’
4976         POSIX says that ‘echo FOO’ produces implementation-defined output
4977         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
4978         behavior in that case.
4979         * Makefile.in (removenullpaths): Remove.
4980         (epaths-force): Rewrite to avoid the need for ‘echo’.
4981         (install-etc): Be clearer about escaping the shell metacharacters
4982         ‘\’ and ‘$’.
4983         * Makefile.in (install-arch-indep, install-etcdoc):
4984         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
4985         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
4986         * configure.ac, lib-src/rcs2log, make-dist:
4987         * src/Makefile.in (lisp.mk):
4988         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
4989         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
4990         if $foo can contain arbitrary characters.
4991         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
4992         * doc/lispref/two-volume.make (vol1.pdf):
4993         * test/etags/make-src/Makefile (web ftp publish):
4994         Use ‘printf’ rather than ‘echo -e’.
4996 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
4998         Allow numbers with different radixes to be yanked.
5000         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
5001         default base 10.
5003 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5005         Improve CHECK_IMPURE and PURE_P speedup
5007         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
5009 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
5011         Use events instead of chars to keep track of steps.
5013         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
5014         to keep track of steps.
5016 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5018         Fix --enable-gcc-warnings problem with older GCC
5020         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
5021         This is for building with --enable-gcc-warnings with
5022         GCC 4.6 through 5.0.
5024 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
5026         Fix vertical-motion in truncated lines that end in a stretch
5028         * src/indent.c (Fvertical_motion): Expect overshoot when point is
5029         beyond window margin and lines are truncated, even if we have a
5030         stretch at point.  (Bug#21468)
5032 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
5034         Avoid link-time errors due to inline functions
5036         * src/emacs.c: Include puresize.h, to avoid link-time errors in
5037         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
5038         inline functions.
5040 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
5042         * src/data.c (Faset): Fix last change.
5044 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5046         CHECK_IMPURE and PURE_P speedup
5048         * src/intervals.c (create_root_interval):
5049         Do CHECK_IMPURE only for strings; not needed for buffers.
5050         Prefer ! STRINGP to BUFFERP, for a tad more speed.
5051         * src/puresize.h (CHECK_IMPURE, PURE_P):
5052         Now inline functions instead of macros.
5053         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
5054         All callers changed.
5055         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
5056         All callers changed.
5058 2015-10-09  Noah Friedman  <friedman@splode.com>
5060         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
5062 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5064         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
5066         our after-change-function, rather than re-adding it if it was removed.
5068 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5070         * lisp/cedet/ede: Silence some compiler warnings
5072         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
5073         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
5074         (ede-apply-object-keymap, ede-reset-all-buffers)
5075         (ede-auto-add-to-target): Use dolist.
5076         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
5077         Use field names rather than initarg names in `oref'.
5078         (ede-load-project-file): Remove unused var `file'.
5079         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
5080         (ede-set): Remove unused var `a'.
5082         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
5083         (ede-project-autoload): Avoid the old-style "name" argument.
5084         (ede-emacs-find-matching-target): Use field names rather than initarg
5085         names in `oref'.
5087         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
5088         (ede-linux-load, ede-project-autoload): Avoid the old-style
5089         "name" argument.
5090         (ede-linux-find-matching-target): Use field names rather than initarg
5091         names in `oref'.
5093 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5095         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
5097 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5099         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
5100         indenting too far after ":-".
5102 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
5104         Update case-table and categories of recently added characters
5106         * lisp/international/characters.el: Update information about Latin
5107         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
5108         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
5109         blocks.  (Byug#21654)
5111 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
5113         * src/frame.c (adjust_frame_size): In minibuffer-only windows
5114         don't count minibuffer height twice.  (Bug#21643)
5116 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
5118         Avoid inflooping in font-lock
5120         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
5121         inhibit-field-text-motion around the call to
5122         line-beginning-position, to avoid inflooping.  (Bug#21615)
5124 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
5126         Refactor duplicated code; ensure default is in completions
5128         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
5129         New function.
5130         (reftex-extract-bib-entries): Use it.
5131         (reftex-extract-bib-entries-from-thebibliography): Use it.
5133 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5135         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
5136         in the example.
5138 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5140         * lisp/calc/calc.el: Silence byte-compiler warnings.
5141         (calc-scan-for-dels): Use ignore-errors.
5142         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
5143         (calc-read-key-sequence): Remove unused var `prompt2'.
5144         (calc-kill-stack-buffer): Remove unused var `buflist'.
5145         (calc): Remove unused var `oldbuf'.
5146         (calc-refresh): Use inhibit-read-only.
5147         (calc-can-abbrev-vectors): Declare.
5148         (calc-record): Remove unused var `mainbuf'.
5149         (math-sub-bignum): Remove unused var `sum'.
5150         (math-svo-c, math-svo-wid, math-svo-off): Declare.
5152 2015-10-08  Daiki Ueno  <ueno@gnu.org>
5154         Use g_clear_error instead of g_error_free
5156         * src/image.c: Define g_clear_error instead of g_error_free.
5157         (init_svg_functions): Resolve symbol g_clear_error instead of
5158         g_error_free.
5159         (svg_load_image): Use g_clear_error instead of g_error_free, to
5160         suppress GLib warnings when ERR is not set.  See bug#21641.
5162 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
5164         * src/image.c (image_size_error): Simplify.
5166 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
5168         Fix problems caught with --enable-gcc-warnings
5170         * src/image.c (lookup_rgb_color):
5171         * src/xfns.c (x_defined_color):
5172         * src/xterm.c (x_parse_color):
5173         Remove unused locals.
5175 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
5177         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
5179 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
5181         Format initial input uniformly
5183         * lisp/calc/calc.el (calc-digit-start-entry): New function.
5184         * lisp/calc/calc.el (calcDigit-start):
5185         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
5186         Use `calc-digit-start-entry' to format input.
5188 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5190         Disable non-working pointerColor setting for X tooltip frame
5192         It generates a bunch of server traffic, but there's some bug wherein
5193         the new mouse cursor settings don't seem to get used.  In most
5194         situations the cursor isn't likely to be seen anyway, so it's not
5195         urgent to fix.
5197         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
5199 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5201         Reduce some unnecessary X calls
5203         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
5204         call.  If border width is wanted, get it from the XGetGeometry call
5205         instead of calling XGetWindowAttributes on the same window.  Skip some
5206         X calls if we've already detected an error from the X server.
5207         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
5208         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
5210 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5212         Reduce color allocation/query traffic in the TrueColor case
5214         When working with an X visual with TrueColor class, pixel values can
5215         be generated from the RGB values according to mask value provided by
5216         the server on connection.  Some of the image-handling code was already
5217         doing this.
5219         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
5220         lookup_rgb_color.
5221         (x_mutable_colormap): New function.
5222         * src/image.c (lookup_rgb_color): Move pixel composition code to
5223         x_make_truecolor_pixel.
5224         (x_kill_gs_process): Call x_mutable_colormap.
5225         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
5226         x_mutable_colormap.
5227         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
5228         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
5229         pixel value into RGB values directly, and don't send a request to the
5230         server.
5231         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
5232         value with x_make_truecolor_pixel.
5233         (x_copy_color): For an immutable color map, just return the provided
5234         pixel value.
5236 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5238         Cache XParseColor results in the X display info structure
5240         With repeated lookups of foreground and background colors for multiple
5241         faces per frame, we issue a lot of redundant color name lookups to the
5242         X server, waiting every time for the response.  On a remote network
5243         with, say, 30ms round-trip time, this can add nearly a full second to
5244         creation of a new frame.
5246         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
5247         * src/image.c (get_spec_bg_or_alpha_as_argb):
5248         (xpm_init_color_cache, xpm_lookup_color):
5249         * src/xfns.c (x_defined_color):
5250         * src/xterm.c (x_parse_color): New function; caches color names not
5251         starting with "#" in the display-info structure.
5252         (x_delete_display): Delete the cache content.
5253         * src/xterm.h (struct color_name_cache_entry): New type.
5254         (x_parse_color): Declare.
5255         (struct x_display_info): Add a new field for the cache.
5257 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5259         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
5261 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
5263         Fix segfault in image_size_error
5265         * src/image.c (image_size_error): Pass a Lisp string to
5266         image_error, not a C string.  (Bug#21641)
5268 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
5270         Highlight CSS variable definitions
5272         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
5273         CSS variables.  (Bug#21638)
5275 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5277         * test/automated/tabulated-list-test.el: New file.
5278         Test bug#21639 and some basic functionality.
5280 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5282         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
5283         Check if column can be sorted before trying.  (Bug#21639)
5285 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
5287         Add test for `self-insert-command' (bug#21633)
5289         * test/automated/cmds-tests.el: New file.
5291 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
5293         * src/window.c (resize_frame_windows): Don't set root window's
5294         top position when resizing horizontally.
5296 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5298         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
5299         Document more possible values.
5301 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
5303         * lisp/textmodes/tex-mode.el: Use lexical-binding.
5305 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
5307         * lisp/indent.el (indent--default-inside-comment): New function.
5308         (indent-for-tab-command): Use it for `noindent' indentation.
5310 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
5312         Fix bug in GC_CHECK_MARKED_OBJECTS check
5314         * src/alloc.c (mark_object): Fix bug in checking code.
5315         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
5316         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
5317         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
5318         bucket.  The bug did not affect behavior either in the normal case
5319         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
5320         not have an internal error that a properly-written
5321         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
5323 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
5325         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
5326         Add prettified version for \\Bbb{Q}.
5328 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5330         * test/automated/package-test.el (package-test-install-single):
5331         Add a test for bug#21625.
5333 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
5335         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
5336           not a package-desc object.  Also clarify documentation.  (Bug#21625)
5338 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
5340         Fix display of characters adjacent to ZWJ and ZWNJ
5342         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
5343         characters the same as directional formatting controls.
5344         (bidi_level_of_next_char): Include all Bn characters in rule L1,
5345         as mandated by the UBA.
5347 2015-10-06  Andreas Schwab  <schwab@suse.de>
5349         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
5350         number.  (Bug#21633)
5352 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
5354         * doc/lispref/objects.texi (Window Type): Add a cross reference.
5356         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
5358 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
5360         * lisp/language/misc-lang.el (composition-function-table):
5361         Fix entries for Arabic and Syriac.
5363 2015-10-05  Damien Cassou  <damien@cassou.me>
5365         Add first unit tests for auth-source.el
5367         * test/automated/auth-source-tests.el: New file.
5369 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
5371         Remove redundant redisplay code
5373         * src/xdisp.c (redisplay_internal, try_cursor_movement)
5374         (try_window_reusing_current_matrix, try_window_id): Remove
5375         redundant restrictions on redisplay optimizations based on the
5376         frame's 'redisplay' flag.  See
5377         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
5378         discussions.
5380 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5382         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
5384 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
5386         Update tutorials/TUTORIAL.cn
5388         * etc/tutorials/TUTORIAL.cn: Improve translation.
5390 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5392         * src/macfont.m (macfont_encode_char, syms_of_macfont):
5393         Remove unused vars.
5395 2015-10-04  Stefan Merten  <stefan@merten-home.de>
5397         Pull in version numbers from rst.el upstream release.
5399         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
5400         (rst-svn-timestamp, rst-official-version)
5401         (rst-official-cvs-rev, rst-package-emacs-version-alist):
5402         Update version numbers.
5404 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
5406         * test/automated/coding-tests.el: New file.
5408 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
5410         Improve XEmacs compatibility of Tramp
5412         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
5413         Declare if it doesn't exist.
5414         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
5415         (redisplay): Make it an alias if it doesn't exist.
5417         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
5418         `file-remote-p' (due to XEmacs compatibility).
5420         * lisp/net/trampver.el (locate-dominating-file)
5421         (tramp-compat-replace-regexp-in-string): Autoload.
5422         (tramp-repository-get-version): Do not dupe byte-compiler.
5424 2015-09-02  K. Handa  <handa@gnu.org>
5426         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
5428         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
5429         Adjusted for the change of type of elements in the array
5430         MFLTGlyphString.glyphs.
5432 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
5433             Michael Heerdegen  <michael_heerdegen@web.de>
5435         shr: fix too long lines in rendered buffers (Bug#21012)
5437         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
5438         Correct calculation of available width.
5439         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
5440         is nil.
5442 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5444         Restore blank line before next section, erroneously erased
5445         in my previous commit
5447         * etc/compilation.txt (symbol ant): Add an additional trailing blank
5448         line to this section, so that there are two of them immediately before
5449         the next section.
5451 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5453         Support MSW filename style for ant compilation error regexp
5455         * etc/compilation.txt (symbol ant):
5456         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
5457         Support MSW filename style.
5459 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
5461         * nt/INSTALL: Minor spelling and quote fixes.
5463         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
5465 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
5467         Maintain ordering of JSON object keys by default
5469         * lisp/json.el (json-object-type): Mention order handling in doc-string.
5470         (json--plist-reverse): New utility function.
5471         (json-read-object): Maintain ordering for alists and plists.
5472         (json-pretty-print): Ensure that ordering is maintained.
5474         * test/automated/json-tests.el (test-json-plist-reverse): New test for
5475         `json--plist-reverse'.
5476         (json-read-simple-alist): Update test to accommodate for changes in
5477         `json-read-object'.
5479         * etc/NEWS: Document the new behavior of the pretty printing functions.
5481 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
5483         * src/coding.c (complement_process_encoding_system): Revert last change.
5485 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
5487         * admin/MAINTAINERS: Add entry for Ulf Jasper.
5489 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
5491         Doc fix for `defmacro'
5493         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
5495 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
5497         More validatation of coding systems
5499         * src/fileio.c (Finsert_file_contents): Remove redundant
5500         coding-system check.
5501         (choose_write_coding_system): Likewise.
5502         * src/coding.c (complement_process_encoding_system): Check argument
5503         for valid coding system.
5505 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5507         Avoid crashes in coding_inherit_eol_type
5509         * src/coding.c (coding_inherit_eol_type): Check the validity of
5510         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
5511         (Bug#21602)
5513 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5515         More validatation of coding system in 'write-region'
5517         * src/coding.c (choose_write_coding_system): More validation of
5518         coding-system from various sources.  Suggested by Andreas Schwab
5519         <schwab@linux-m68k.org>.  (Bug#21602)
5521 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5523         Avoid crashes due to invalid coding-system
5525         * src/fileio.c (choose_write_coding_system)
5526         (Finsert_file_contents): Check validity of coding-system-for-write
5527         and coding-system-for-read bound by the caller.  (Bug#21602)
5529 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
5531         Adapt to new prettify-symbols-unprettify-at-point default
5533         * etc/NEWS: Mention that unprettication of symbol at point is off
5534         by default.
5536 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
5538         Revert my two recent process.c changes
5540         Revert "Improve last commit to process.c" and "Remove callback-handled
5541         channels from Available set" because they did not fix bug#21313.
5543         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
5544         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
5546 2015-10-02  Markus Triska  <triska@metalevel.at>
5548         * lisp/progmodes/prolog.el: Update and extend operator table.
5549         (prolog-smie-grammar): Add multifile, public etc.
5551 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
5553         Allow autogen even when Git is not installed
5555         * autogen.sh: Test ‘git status’ before trying to use Git.
5557 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
5559         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
5560         Adjust lto/lfrom when we have uncommitted changes.
5562 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
5564         Fix problems found by clang 3.5.0
5566         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
5567         * src/font.c (font_parse_family_registry):
5568         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
5570 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
5572         * nt/INSTALL: Update instructions for running autogen.sh.
5574         * nt/INSTALL: Point to ezwinports for libXpm binaries.
5576 2015-10-02  Daniel Colascione  <dancol@dancol.org>
5578         Fix winner in cl-lib not loaded case
5580         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
5581         without requiring CL
5583 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
5585         Fix a few problems with directed quotes
5587         This is in response to a problem report by Kaushal Modi in:
5588         http://bugs.gnu.org/21588#25
5589         * lisp/cedet/mode-local.el (describe-mode-local-overload):
5590         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
5591         * lisp/info-xref.el (info-xref-check-all-custom):
5592         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
5593         Prefer directed to undirected single quotes in diagnostics.
5595 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5597         Revert "Attempt to fix slow redisplay caused by last changes"
5599         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
5600         (try_cursor_movement): Don't relax requirements for redisplay
5601         optimizations for the selected frame.  (Bug#21597)
5603         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
5605 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5607         Fix slow redisplay when daemon frame exists
5609         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
5610         when looking for frames that need to be redisplayed.  (Bug#21597)
5612 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5614         Attempt to fix slow redisplay caused by last changes
5616         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
5617         (try_cursor_movement): Relax requirements for redisplay
5618         optimizations for the selected frame.  (Bug#21597)
5620 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
5622         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
5623         Improve doc string.
5625 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
5627         * lisp/minibuffer.el (minibuffer-completion-help):
5628         Set default base-size, in case completion table does not set it.
5630 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5632         Fix GUD display of GDB output with non-ASCII text
5634         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
5635         (gdb-mi-decode): New function.
5636         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
5637         decode octal escapes in GDB output.  (Bug#21572)
5639 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5641         * nt/INSTALL: Document where to find XPM support files.
5643 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
5645         Un- and re-prettification are not exclusive
5647         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
5648         Re-apply prettification to previous symbol also when unprettifying
5649         next one.
5651 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
5653         Don't unprettify symbol at point by default
5655         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
5656         Default to disabled (nil).
5658 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
5660         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
5661         Support unprettifying when point is after a symbol.
5663         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
5665 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
5667         Avoid assertion violations in push_prefix_prop
5669         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
5670         a line that has a line-prefix defined starts with an image.  (Bug#21428)
5672 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
5674         Disable some display optimizations when frames need redisplay
5676         These optimizations were previously disabled by the
5677         windows_or_buffers_changed flag, which now is not set
5678         when only some frames need to be redrawn.
5679         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
5680         'redisplay' flag is set.
5681         (try_window_reusing_current_matrix, try_window_id)
5682         (try_cursor_movement): Disable these optimizations when the
5683         frame's 'redisplay' flag is set.
5685 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
5687         Don't modify buffer by unprettification
5689         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
5690         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
5691         modify buffer when setting/removing custom prettify-symbols-start/end
5692         text properties.  Add them to font-lock-extra-managed-props, too.
5694 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
5696         Try to avoid redisplaying all frames when creating a new one
5698         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
5699         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
5700         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
5701         * src/frame.c (x_set_screen_gamma): Set the specific frame's
5702         `redisplay' bit rather than windows_or_buffers_changed.
5704         * src/window.c (apply_window_adjustment): Remove redundant setting of
5705         windows_or_buffers_changed.
5707         * src/xdisp.c (redisplay_internal): Set the specific frame's
5708         `redisplay' bit rather than update_mode_lines in response to
5709         cursor_type_changed.
5710         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
5711         (AINC): Adjust accordingly.
5713 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
5715         Implement unprettification of symbol at point
5717         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
5718         symbol at point.
5719         (prettify-symbols--current-symbol-bounds): New variable.
5720         (prettify-symbols--post-command-hook): New function.
5721         (prettify-symbols-unprettify-at-point): New defcustom.
5722         (prettify-symbols-mode): Use it.
5723         (prettify-symbols--compose-symbol): Use them.
5725 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5727         * src/macfont.m (mac_font_descriptor_supports_languages):
5728         Regard "zh" as synonym of "zh-Hans".
5730 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5732         Work around crash when displaying etc/HELLO on OS X 10.11
5734         * src/macfont.m (mac_font_get_weight)
5735         (mac_font_descriptor_get_adjusted_weight): New functions.
5736         (macfont_store_descriptor_attributes): Adjust weight.
5738 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5740         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
5742 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
5744         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
5745         of the columns.
5747 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
5749         Use unar and lsar to handle RAR archives in arc-mode
5751         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
5752         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
5754 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
5756         Clarify :create in auth-source's docs
5758         * lisp/gnus/auth-source.el (auth-source-search):
5759         Clarify :create's meaning.
5761 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
5763         Avoid empty -path arguments in rgrep
5765         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
5766         the list produced according to grep-find-ignored-directories,
5767         before passing it to Find/Grep invocation.  (Bug#21548)
5769 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
5771         Clarify documentation of pos-visible-in-window-p
5773         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
5774         t for POS.  See
5775         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
5776         for the original report.
5778         * doc/lispref/windows.texi (Window Start and End): Clarify the
5779         meaning of t for the POSITION argument of pos-visible-in-window-p.
5781 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5783         * lisp/progmodes/prolog.el: Fix various indentation cases.
5784         (prolog-operator-chars): New const (add \\).
5785         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
5786         (prolog-smie-rules): Add rules according to bug#21526.
5788 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5790         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
5791         (sh-indent-after-continuation): Add new value `always' (bug#17620)
5792         (sh-smie-sh-rules): Remove old handling of continued lines.
5793         (sh-smie--indent-continuation): New function.
5794         (sh-set-shell): Use it.
5796 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5798         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
5799         Remove redundant :group keyword args.
5800         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
5801         Remove variables.
5802         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
5803         turn them into compile-time variables.
5804         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
5805         Add rules for break, continue, return, global, and persistent.
5806         Refine the rule for "until".
5807         (octave-smie--funcall-p, octave-smie--end-index-p)
5808         (octave-smie--in-parens-p): New functions.
5809         (octave-smie-backward-token, octave-smie-forward-token): Use them to
5810         distinguish the "enumeration" function and the "end" index from
5811         their corresponding keywords.
5812         (octave--block-offset-keywords): New constant.
5813         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
5814         parsing.
5815         (octave-reserved-words): Redefine using octave-smie-grammar.
5816         (octave-font-lock-keywords): Use octave-smie--funcall-p and
5817         octave-smie--end-index-p.
5819 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5821         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
5823 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
5825         * nt/INSTALL: Remove references to GTK site.
5826         That site no longer offers Windows downloads.
5828 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
5830         * nt/INSTALL: Add instructions for installing Git.
5832 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
5834         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
5835         use colors.  Suggested by Eli Zaretskii.
5837 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
5839         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
5840         not supporting 256 above colors (bug#21557).
5842 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
5844         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
5846         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
5848 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5850         Add documentation for seq.el
5852         * doc/lispref/sequences.texi: Add documentation regarding extending
5853         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
5854         seq-do and seq-map.
5856 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5858         Better documentation for seq-some
5860         * doc/lispref/sequences.texi:
5861         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
5862         guarantee that the returned value is the first non-nil value that
5863         resulted from applying the predicate.
5865 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5867         * lisp/arc-mode.el: Sharp-quote function arguments.
5869 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
5871         Avoid redisplay error in ediff-regions-wordwise
5873         * lisp/vc/ediff-util.el
5874         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
5875         set before activating it.  (Bug#21567)
5877 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
5879         Another attempt to fix crashes due to prematurely freed faces
5881         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
5882         faces for as long as we might have desired matrices that reference
5883         those faces.  (Bug#21428)
5885 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
5887         Add auctex development list email address
5889 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
5891         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
5893 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
5895         Improve wrapfig package support and caption parsing
5897         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
5898         Correct description string and add wraptable environment.
5899         (reftex-default-context-regexps): Improve caption regexp.
5901 2015-09-28  Anders Lindgren  <andlind@gmail.com>
5903         Respect value of frame_resize_pixelwise when handling fullscreen state
5905         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
5906         setting size increments.
5908 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
5910         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
5912 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
5914         Add prettify-symbols-alist for js-mode
5916         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
5917         (js-mode): Use it.
5919 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
5921         * nt/subdirs.el: File deleted (no longer used).
5923 2015-09-26  Alan Mackenzie  <acm@muc.de>
5925         Fix follow-scroll-up/down, making them replacements for scroll-up/down
5927         1. Allow point to move between follow windows in scroll operations.
5928         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
5929         when EOB was isolated in the last follow window.
5931         * lisp/follow.el (follow-fixed-window): New variable.
5932         (follow-get-scrolled-point): New function.
5933         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
5934         Reformulate the code.  Put `scroll-command' properties on the functions.
5935         Correct minor errors in ...-down's doc string and code.
5936         (follow-calc-win-end): Amend incomplete doc string.  Use
5937         `pos-visible-in-window-p' to check whether EOB is in the window.
5938         (follow-estimate-first-window-start): Correct an off-by-1 error.
5939         (follow-adjust-window): Add handling for explicit scrolling operations.
5941 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
5943         * admin/MAINTAINERS: Add self, plus list some more files
5944         sans maintaners.
5946 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
5948         New DWIM commands for changing letter-case
5950         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
5951         New functions.  (Bug#21501)
5953 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
5955         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
5957 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
5959         Make face realization be more frame-specific
5961         * src/frame.h (struct f): New flag face_change.
5962         * src/xfaces.c (Finternal_make_lisp_face)
5963         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
5964         (update_face_from_frame_parameter): Set the face_change flag only
5965         for the frame whose faces are affected.
5966         * src/xdisp.c (init_iterator): If a frame's face_change flag is
5967         set, free faces only on that frame.
5968         (redisplay_internal): Disable "display optimization 1" if the
5969         frame's face_change flag is set.
5970         (redisplay_window): Don't allow skipping a window's redisplay if
5971         its frame's face_change flag is set.
5972         * src/frame.c (x_set_screen_gamma): Instead of calling
5973         Fclear_face_cache, call clear_face_cache and set
5974         windows_or_buffers_changed to a non-zero value.  This avoids
5975         setting the global face_change flag that triggers face realization
5976         on all frames and thorough redisplay of all of them.
5978         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
5979         clear face cache if the selected frame is a GUI frame.
5981 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
5983         Remove font-latex specific check
5985         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
5986         Use syntax-ppss data to identify verbatim contents.
5988 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
5990         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
5991         Fix some false negatives.
5993 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
5995         Reorder Windows version in Emacs manifests
5997         * nt/emacs-x64.manifest:
5998         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
5999         highest.
6001 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6003         Update Emacs manifest files for Windows 10
6005         * nt/emacs-x86.manifest:
6006         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
6008 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6010         Avoid non-ASCII decoding errors in C src files
6012         * src/nsterm.m:
6013         * src/lisp.h:
6014         * src/editfns.c:
6015         * src/doprnt.c: Add 'coding' cookies -- these files include
6016         Unicode characters and should be decoded as UTF-8.
6018 2015-09-25  Alan Mackenzie  <acm@muc.de>
6020         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
6022         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
6023         amend to match current modes and functions.
6024         (edebug-set-initial-mode): Uncomment and change from setting a defun's
6025         `edebug-initial-mode''s property to setting the variable
6026         `edebug-initial-mode'.
6027         (top level): Create new binding C-x C-a C-m for
6028         `edebug-set-initial-mode'.
6030         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
6031         `edebug-set-initial-mode' and its new key binding.
6032         (Edebug Options): Mention the new command in the pertinent place.
6034         * etc/NEWS: Write entry for this change.
6036 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6038         Avoid non-ASCII decoding errors in Texinfo files
6040         * doc/misc/tramp.texi:
6041         * doc/lispref/strings.texi:
6042         * doc/lispref/positions.texi:
6043         * doc/lispref/help.texi:
6044         * doc/lispref/functions.texi:
6045         * doc/lispintro/emacs-lisp-intro.texi:
6046         * doc/emacs/text.texi:
6047         * doc/emacs/modes.texi:
6048         * doc/emacs/mini.texi:
6049         * doc/emacs/display.texi:
6050         * doc/emacs/custom.texi:
6051         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
6052         Unicode characters and should be decoded as UTF-8.
6053         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
6054         apostrophe unnecessarily.
6056 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
6058         Merge from gnulib
6060         This incorporates:
6061         2015-09-25 c-ctype: rewrite to use inline functions
6062         2015-09-24 maint: add coding cookies to non-ASCII sources
6063         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
6064         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
6065         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
6066         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
6067         * lib/set-permissions.c:
6068         Copy from gnulib.
6070 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
6072         Update publicsuffix.txt from upstream
6074         * etc/publicsuffix.txt: Update from
6075         https://publicsuffix.org/list/effective_tld_names.dat
6076         dated 2015-09-24 17:29:21 UTC.
6078 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
6080         Prevent timers from messing up TTY menus
6082         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
6083         the TTY menu is open.  (Bug#21530)
6085 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
6087         No need to mention K&R C in c-mode intro
6089 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
6091         Fix recent bootstrap problems
6093         * src/syntax.c (parse_sexp_propertize): Fix last fix.
6094         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
6095         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
6097 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
6099         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
6101 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
6103         Properly quote nested xml comments (Bug#6267) (Bug#20001)
6105         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
6106         (nxml-mode): Set comment-quote-nested-function.
6108 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
6110         Allow major-modes full control over quoting nested comments
6112         * lisp/newcomment.el (comment-quote-nested-function): New variable.
6113         (comment-quote-nested-default): New function.
6114         (comment-quote-nested): Use `comment-quote-nested-function'.
6116 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
6118         Prefer CALLN in a few more places
6120         * src/macfont.m (macfont_set_family_cache):
6121         * src/nsterm.m (append2):
6122         * src/xterm.c (x_cr_export_frames):
6123         Prefer CALLN to allocating the arg arrays by hand.
6125 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
6127         Adapt file-notify-test02-events test case
6129         * test/automated/file-notify-tests.el (file-notify-test02-events):
6130         Create a new watch for every test.
6132 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
6134         Continue gfilenotify.c implementation of missing parts
6136         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
6137         `gfile-add-watch' call.
6138         (file-notify-rm-watch): Modify `file-notify-descriptors' only
6139         after calling the low level functions.
6141         * src/gfilenotify.c (dir_monitor_callback): Check, whether
6142         event_type is expected.
6143         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
6144         (Fgfile_rm_watch): Fix typo.
6145         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
6147 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
6149         * src/syntax.c (parse_sexp_propertize): Handle spurious
6150         e_property_truncated flag.
6151         (update_syntax_table_forward): Remove invalid assertion.
6153 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
6155         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
6156         space display spec on text-mode terminals, by calling
6157         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
6158         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
6159         test for a GUI frame.
6161 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
6163         Move let-when-compile to lisp-mode.el
6165         This fixes the bootstrapping problem of `let-when-compile' using
6166         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
6168 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6170         * lisp/url/url-http.el (url-http-parse-headers): Do not
6171         automatically include Authorization header in redirect.
6172         (Bug#21350)
6174 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6176         Clarify documentation of ':relative-width'
6178         * doc/lispref/display.texi (Specified Space): Document that
6179         ':relative-width' is only supported on GUI frames.
6181 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6183         Fix 'current-column' in presence of :relative-width
6185         * src/indent.c (check_display_width): Support ':relative-width'
6186         in a display spec that specifies a stretch glyph.  (Bug#21533)
6188 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
6190         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
6192         ... to conform better to CONTRIBUTE guidelines.
6194 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
6196         * lisp/progmodes/prolog.el: Fix indentation of empty line
6198         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
6199         `empty-line-token' element.
6200         (smie-indent-empty-line): New function.
6201         (smie-indent-functions): Add it.
6203         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
6204         behavior and use the new `empty-line-token' element (bug#21526).
6205         (prolog-mode-variables): Fix comment-start-skip setting to match
6206         comment-start.
6208         * test/indent/prolog.prolog: Add nested indentation tests.
6210         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
6211         comment-start-skip not to misuse submatch 1.
6213 2015-09-22  Alan Mackenzie  <acm@muc.de>
6215         Make description of `edebug-initial-mode' user friendly
6217         Fixes bug#21365.
6219         * dec/lispref/edebug.texi (Edebug Execution Modes): Change the
6220         description of `edebug-initial-mode' from that of its implementation
6221         to that of its visual effect and use.  Move the paragraph higher up.
6223 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6225         lisp/progmodes/gud.el (gud-format-command): Fix last commit
6227         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
6228         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
6230 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
6232         Improve last commit to process.c
6234 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
6236         Implement gfile-valid-p
6238         * lisp/filenotify.el (file-notify-callback): Fix typo.
6239         (gfile-valid-p): Remove defalias.
6241         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
6242         the file or directory to be watched is deleted.
6243         (Fgfile_add_watch): Make watch_object a triple.
6244         (Fgfile_rm_watch): Check, whether watch is cancelled already.
6245         (Fgfile_valid_p): New defun.
6246         (syms_of_gfilenotify): Declare Sgfile_valid_p.
6248 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
6250         Remove callback-handled channels from Available set
6252         * src/process.c (wait_reading_process_output): Remove channel from
6253         Available set if it is handled by a callback, e.g., dbus or
6254         inotify (bug#21313).
6256 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
6258         Use lunate epsilon for TeX \epsilon
6260         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
6261         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
6262         \epsilon to use GREEK LUNATE EPSILON SYMBOL
6264 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
6266         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
6268         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
6269         rather than outermost paren (bug#21526).
6271 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6273         Improve git diff hunk headers for .el, .texi
6275         Problem reported by Alan Mackenzie in:
6276         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
6277         * .gitattributes (*.el, *.texi): New patterns.
6278         * autogen.sh: Configure diff.elisp.xfuncname and
6279         diff.texinfo.xfuncname if using Git.
6281 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6283         Don't rely on defaults in decoding UTF-8 encoded Lisp files
6285         * lisp/replace.el:
6286         * lisp/textmodes/rst.el:
6287         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
6289 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6291         Clarify or replace a few \u escapes
6293         * doc/lispref/nonascii.texi (Character Properties)
6294         More-detailed commentary for \u escapes.
6295         * lisp/progmodes/python.el (python--prettify-symbols-alist):
6296         * lisp/replace.el (query-replace-from-to-separator):
6297         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
6298         (rst-mode-syntax-table):
6299         * lisp/whitespace.el (whitespace-display-mappings):
6300         Prefer actual character to \u escape when this makes the code
6301         easier to follow in the usual case where Unicode chars can be
6302         displayed.
6304 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6306         Pacify GCC -Wmaybe-uninitialized in xdisp.c
6308         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
6309         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
6310         charpos.  The loop should always execute at least once anyway.
6312 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
6314         Signal error on invalid regexp
6316         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
6317         Signal an error when the user tries searching with a regexp
6318         matching the empty string.
6320 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6322         Another fix of file-notify-tests for w32notify
6324         * test/automated/file-notify-tests.el (file-notify-test02-events):
6325         Further adaptation for w32notify: reduce the number of expected
6326         'changed' events.  (Bug#21435)
6328 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
6330         Adapt tests and manual for w32notify
6332         * doc/lispref/os.texi (File Notifications): w32notify does not
6333         send `attribute-changed' events.
6335         * test/automated/file-notify-tests.el (file-notify--test-with-events):
6336         Simplify parameters.  Adapt all callees.
6337         (file-notify-test02-events): w32notify does not send
6338         `attribute-changed' events.
6339         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
6340         Do not skip in case of w32notify.  Simply ignore this part of the test.
6342 2015-09-21  Dima Kogan  <dima@secretsauce.net>
6344         Fix setting breakpoints when remote-debugging
6346         * lisp/progmodes/gud.el (gud-format-command): Send localized file
6347         names to the debugger running on the remote.  (Bug#13304)
6349 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
6351         Better docstring and parameter name for seq-find
6353         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
6354         the parameter `sentinel' to `default'.
6356         * doc/lispref/sequences.texi (Sequence Functions): Update the
6357           documentation for `seq-find' accordingly.
6359 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6361         Avoid infinite recursion while displaying box face
6363         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
6364         the previous string/buffer character position under bidi
6365         iteration.  (Bug#21428)
6367 2015-09-21  Anders Lindgren  <andlind@gmail.com>
6369         Keep upper edge unchanged when changing size of NS frame
6371         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
6372         (Bug#21415).
6374 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6376         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
6377         (prolog-smie-rules): Accommodate standard if/then/else special
6378         indentation.
6379         (prolog-mode): Add . to electric-indent-chars.
6380         (prolog-electric--if-then-else): Re-indent the line before adding space
6381         after the new char (bug#21526).
6383 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
6385         Add prettify symbols to python-mode
6387         * lisp/progmodes/python.el (python-prettify-symbols-alist):
6388         New variable.
6389         (python-mode): Use it
6391 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6393         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
6395 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
6397         (compilation-error-regexp-alist-alist): Tone down guile-file
6399         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
6400         Make guile-file a bit less enthusiastic (bug#21496).
6402 2015-09-20  Drew Csillag  <drew@thecsillags.com>
6404         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
6405         Fix m4_* highlighting.
6407         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
6408         of commands when they have a "m4_" prefix.
6410 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
6412         '.' -> `.' in doc string
6414         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
6415         individual chars with grave quotes instead of straight quotes, as
6416         this works better when they are translated to curved quotes.
6418 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
6420         Improve file notifications, especially for Tramp
6422         * doc/lispref/files.texi (Magic File Names):
6423         Mention `file-notify-valid-p'.
6425         * doc/lispref/os.texi (File Notifications):
6426         Describe `file-notify-valid-p'.
6428         * etc/NEWS: Add `file-notify-valid-p'.
6430         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
6431         Improve implementation.
6432         (tramp-gvfs-monitor-file-process-filter): Rename from
6433         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
6434         process if appropriate.
6436         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
6437         Improve implementation.
6438         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
6439         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
6440         if appropriate.
6441         (tramp-sh-inotifywait-process-filter): Rename from
6442         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
6443         appropriate.
6445         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
6446         Use `delete-process'.
6447         (tramp-handle-file-notify-valid-p): Check also, that file or
6448         directory to be watched still exists.
6450         * test/automated/file-notify-tests.el (file-notify--test-timeout):
6451         New defun.  Use it at all places a timeout is needed.
6452         (file-notify--test-cleanup): Delete directories recursively.
6453         Cleanup also Tramp connections.
6454         (file-notify-test02-events): Add tests for `attribute-change'.
6455         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
6456         Add tests for `file-notify-rm-watch'.
6458 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
6460         Use %s to format strings instead of splicing them
6462         If FOO might contain quotes that are part of a file or variable
6463         name, the quotes should not be translated when showing FOO’s name
6464         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
6465         is not quite right, as it would translate FOO’s quotes.
6466         Change it to (message "%s: bar" FOO) instead.
6467         * lisp/allout.el (allout-process-exposed):
6468         * lisp/calc/calc-ext.el (calc-do-prefix-help):
6469         * lisp/calc/calc-store.el (calc-store-into):
6470         * lisp/calendar/todo-mode.el (todo-category-completions):
6471         * lisp/cedet/semantic/complete.el (semantic-completion-message):
6472         * lisp/org/ob-latex.el (convert-pdf):
6473         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
6474         * lisp/org/ox-latex.el (org-latex-compile):
6475         * lisp/org/ox-man.el (org-man-compile):
6476         * lisp/org/ox-odt.el (org-odt--export-wrap):
6477         * lisp/org/ox-texinfo.el (org-texinfo-compile):
6478         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
6479         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
6480         (verilog-signals-combine-bus, verilog-read-defines)
6481         (verilog-getopt-file, verilog-expand-dirnames)
6482         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
6483         * lisp/term/ns-win.el (ns-spi-service-call):
6484         Use %s to avoid translating quotes of file names etc. in diagnostics.
6486 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6488         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
6489         (js-mode): Don't set syntax-begin-function.
6491 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6493         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
6494         syntax-begin-function is a symbol.
6496 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
6498         Improve documentation of 'run-at-time'
6499         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
6500         In particular, don't refer to 'diary-entry-time', because it is
6501         unavailable until diary-lib is loaded.  Also, refer to
6502         'timer-duration-words', not 'timer-duration', as the latter's doc
6503         string says nothing about the accepted strings.
6505 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
6507         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
6509 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
6511         Repair pdbtrack remote file tracking
6512         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
6513         Rectify pdbtrack so it follows transitions from one remote source
6514         file to the next.
6516 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
6518         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
6520 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
6522         Adapt vc-src to the old-new vc-checkin API
6523         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
6524         additional optional parameter.
6526 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
6528         Add overflow module to CSS property list
6529         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
6530         from CSS Overflow Module Level 3.
6532 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
6534         Fix documentation of "C-u C-x v v"
6535         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
6536         documentation of "C-u C-x v v" match what the code does.
6538         Resurrect the ability to specify a revision in vc-next-action
6539         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
6540         * lisp/vc/vc-dav.el (vc-dav-checkin):
6541         * lisp/vc/vc-git.el (vc-git-checkin):
6542         * lisp/vc/vc-hg.el (vc-hg-checkin):
6543         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
6544         an additional optional argument, the revision to checkin.
6545         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
6546         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
6547         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
6548         a revision to checkin.
6549         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
6550         revision when checking in files.
6551         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
6552         for the details.
6554 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
6556         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
6557         (verilog-decls-princ, verilog-modport-princ)
6558         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
6560 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
6562         Fix the routine for help on Calc's prefixes
6563         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
6564         (calc-do-prefix-help): Use `read-char' to determine the next Calc
6565         command.
6567 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
6569         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
6570         (font-lock-fontify-block): Don't let-bind it.
6571         (font-lock-compile-keywords): Don't use it.
6572         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
6573         start one slot earlier, instead.
6574         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
6575         Don't declare.
6576         (syntax-ppss): Don't use it either.
6577         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
6578         from docstring.
6579         * doc/emacs/display.texi (Font Lock): Don't mention
6580         font-lock-beginning-of-syntax-function.
6581         * doc/lispref/modes.texi (Font Lock Basics): Update description of
6582         font-lock-defaults.
6583         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
6584         * lisp/loadhist.el (unload-feature-special-hooks):
6585         Remove font-lock-beginning-of-syntax-function.
6586         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
6587         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
6588         font-lock-beginning-of-syntax-function.
6590 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
6592         Backslash cleanup in Elisp source files
6593         This patch should not change behavior.  It typically omits backslashes
6594         where they are redundant (e.g., in the string literal "^\$").
6595         In a few places, insert backslashes where they make regular
6596         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
6597         "^\\*", which has the same effect as a regular expression.
6598         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
6599         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
6600         RCS IDs, as that makes it clearer that the backslash is intended.
6602         Some more minor backslash fixes
6603         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
6604         * test/automated/info-xref.el (info-xref-test-write-file):
6605         Double backslashes in strings.
6607         Fix several backslash typos in Elisp strings
6608         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
6609         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
6610         (todo-reset-done-string, todo-reset-comment-string)
6611         (todo-reset-highlight-item):
6612         * lisp/erc/erc-networks.el (erc-networks-alist):
6613         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
6614         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
6615         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
6616         (nntp-telnet-shell-prompt):
6617         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
6618         * lisp/image-dired.el (image-dired-rotate-original):
6619         (image-dired-get-exif-file-name):
6620         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
6621         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
6622         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
6623         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
6624         * lisp/net/shr-color.el (shr-color->hexadecimal):
6625         * lisp/org/org-bibtex.el (org-bibtex-fields):
6626         * lisp/org/org-docview.el (org-docview-export):
6627         * lisp/org/org-entities.el (org-entities):
6628         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
6629         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
6630         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
6631         (ebnf-style-database):
6632         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
6633         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
6634         * lisp/progmodes/sql.el (sql-product-alist):
6635         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
6636         (verilog-error-font-lock-keywords)
6637         (verilog-assignment-operator-re):
6638         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
6639         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
6640         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
6641         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
6642         For example, to get the regular expression ‘\.’ use the string
6643         literal "\\.", not "\." (which is equivalent to ".").
6644         * lisp/emulation/viper-util.el (viper-glob-unix-files):
6645         Remove stray ‘\j’ from string.
6646         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
6647         (nntp-telnet-shell-prompt):
6648         Treat > like $ when matching a shell prompt.
6649         * lisp/progmodes/make-mode.el (makefile-browse):
6650         Properly quote a diagnostic.
6652         Fix minor quoting problems in diagnostics
6653         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
6654         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
6655         Follow text-quoting-style in diagnostic, and quote a file name.
6657 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
6659         * doc/lispref/frames.texi (Cursor Parameters):
6660         Document 'x-stretch-cursor'.
6662 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
6664         Omit unnecessary \ before paren in C docstrings
6665         Although \( is needed in docstrings in Elisp code, it is not needed in
6666         docstrings in C code, since C function definitiions do not start with
6667         a parenthesis.  The backslashes made the docstrings a bit harder to
6668         read and to format in columns.  Also, some C docstrings had ( in
6669         column 1 and this did not appear to be causing any problems.  So,
6670         simplify C docstrings by replacing \( with ( and \) with ).
6672         A few more minor quoting fixes in a script and a text file
6674         Minor quoting fixes in scripts and doc
6675         Prefer straight quotes in random script files, as they are not
6676         converted.  Prefer grave quotes in a couple of places in the manual
6677         that were missed earlier, as these quotes are converted.
6679         Minor backslash fixes in manuals and scripts
6680         * Makefile.in (install-arch-indep):
6681         * admin/charsets/compact.awk:
6682         * admin/charsets/gb180302.awk (gb_to_index):
6683         * admin/charsets/gb180304.awk (gb_to_index):
6684         Avoid undefined behavior in Awk regular expression backslashes.
6685         * doc/misc/efaq.texi (Matching parentheses):
6686         Omit unnecessary backslashes.
6687         * doc/misc/gnus-faq.texi (FAQ 5-8):
6688         Avoid undefined behavior in suggested sed backslash usage.
6690         Add -Wswitch to --enable-gcc-warnings
6691         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
6692         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
6693         * lib-src/etags.c (main, consider_token, C_entries):
6694         * src/coding.c (encode_invocation_designation):
6695         * src/data.c (Ftype_of):
6696         * src/eval.c (Fdefvaralias, default_toplevel_binding)
6697         (Fbacktrace__locals, mark_specpdl):
6698         * src/lisp.h (record_xmalloc):
6699         * src/syntax.c (scan_lists, scan_sexps_forward):
6700         * src/window.c (window_relative_x_coord):
6701         * src/xdisp.c (push_it, pop_it):
6702         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
6703         Error out or do nothing (as appropriate) if a switch statement
6704         with an enum value does not cover all of the enum.
6705         * src/dispextern.h (struct iterator_stack_entry.u.comp):
6706         Remove unused member discovered by using -Wswitch.
6707         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
6708         * src/vm-limit.c (check_memory_limits):
6709         Simplify warning-diagnostic computation by using a table.
6711         etags ‘fatal’ function is now printf-like
6712         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
6713         Also, now static; not clear why it needed to be extern.
6714         (verror): New function, with most of the old contents of ‘error’.
6715         (fatal, error): Use it.
6717 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
6719         More adaptations in file-notify-tests.el
6720         * test/automated/file-notify-tests.el
6721         (file-notify-test05-dir-validity): Skip for w32notify in
6722         batch-mode.  (Bug#21432)
6724 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
6726         Adapt test in file-notify-tests.el
6727         * test/automated/file-notify-tests.el
6728         (file-notify-test04-file-validity): Skip for w32notify in
6729         batch-mode.  Add test lost last commit.
6731 2015-09-16  Dima Kogan  <dima@secretsauce.net>
6733         winner no longer holds on to dead frames
6734         * lisp/winner.el (winner-change-fun): Cull dead frames.
6735         This prevents a potentially massive memory leak.  See:
6736         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
6738 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
6740         Use common report_file_notify_error function
6741         * src/fileio.c (report_file_notify_error): New function.
6742         * src/inotify.c (report_inotify_error): Remove function.
6743         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
6744         (Finotify_rm_watch): Use report_file_notify_error.
6745         * src/lisp.h (report_file_notify_error): Declare external function.
6746         * src/w32notify.c (report_w32notify_error): Remove function.
6747         (Fw32notify_add_watch, Fw32notify_rm_watch):
6748         Use report_file_notify_error.
6750 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
6752         Fix documentation.
6753         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
6754         the documentation of the root mean square.
6756 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
6758         Remove tool_bar_redisplayed_once and associated code.
6759         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
6760         * src/frame.c (make_frame, x_set_font): Remove initialization of
6761         f->tool_bar_redisplayed_once.
6762         * src/w32fns.c (x_change_tool_bar_height):
6763         * src/xfns.c (x_change_tool_bar_height): Don't check for
6764         f->tool_bar_redisplayed_once.
6765         * src/xdisp.c (redisplay_internal): Remove handling of
6766         f->tool_bar_redisplayed_once.
6768 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
6770         Restore some of the quoting in the manuals
6771         * doc/lispref/windows.texi (Coordinates and Windows)
6772         (Coordinates and Windows):
6773         * doc/lispref/variables.texi (Lexical Binding)
6774         (File Local Variables):
6775         * doc/lispref/text.texi (Format Properties):
6776         * doc/lispref/symbols.texi (Symbol Components):
6777         * doc/lispref/strings.texi (Creating Strings):
6778         * doc/lispref/sequences.texi (Sequence Functions):
6779         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
6780         (Search and Replace):
6781         * doc/lispref/processes.texi (Bindat Spec):
6782         * doc/lispref/os.texi (Idle Timers):
6783         * doc/lispref/objects.texi (Basic Char Syntax):
6784         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
6785         * doc/lispref/nonascii.texi (Character Properties):
6786         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
6787         (Mode Line Variables):
6788         * doc/lispref/minibuf.texi (Text from Minibuffer):
6789         * doc/lispref/loading.texi (Autoload):
6790         * doc/lispref/keymaps.texi (Controlling Active Maps):
6791         * doc/lispref/frames.texi (Frame Layout, Size and Position)
6792         (Size Parameters, Implied Frame Resizing):
6793         * doc/lispref/files.texi (Changing Files, Magic File Names):
6794         * doc/lispref/eval.texi (Self-Evaluating Forms):
6795         * doc/lispref/display.texi (Progress, Abstract Display)
6796         (Abstract Display Example, Bidirectional Display):
6797         * doc/lispref/commands.texi (Event Mod):
6798         * doc/emacs/windows.texi (Displaying Buffers):
6799         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
6800         * doc/emacs/text.texi (Enriched Text):
6801         * doc/emacs/programs.texi (MixedCase Words):
6802         * doc/emacs/picture-xtra.texi (Insert in Picture)
6803         (Tabs in Picture):
6804         * doc/emacs/misc.texi (Emacs Server, Printing):
6805         * doc/emacs/mini.texi (Minibuffer History):
6806         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
6807         (Pulling / Pushing):
6808         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
6809         * doc/emacs/help.texi (Help, Help Echo):
6810         * doc/emacs/glossary.texi (Glossary):
6811         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
6812         (Frame Commands):
6813         * doc/emacs/files.texi (Reverting, Saving, Directories):
6814         * doc/emacs/entering.texi (Exiting):
6815         * doc/emacs/emacs.texi (Top):
6816         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
6817         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
6818         appropriate or replace quoting with @dfn.
6819         * doc/misc/ediff.texi (Window and Frame Configuration):
6820         * doc/lispref/processes.texi (Network Feature Testing):
6821         * doc/lispref/display.texi (Display Margins): Quote the phrase
6822         after "a.k.a." where appropriate.
6824 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
6826         Clarify reftex-extra-bindings docs
6827         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
6828         * doc/misc/reftex.texi (Key Bindings): Document that the variable
6829         only has an effect at load-time.
6831 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
6833         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
6834         search argument.  (Bug#21492) (Bug#21493)
6836 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
6838         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
6839         Add pretty symbols for \qquad and \varrho.
6841 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
6843         Add new functions for the root mean square of a (Calc) vector
6844         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
6845         New functions.
6846         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
6847         `calc-vector-rms', add autoloads for `calc-vector-rms' and
6848         `calcFunc-rms'.
6849         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
6850         `calcFunc-rms'.
6851         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
6852         `calc-vector-rms'.
6853         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
6854         command.
6856 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
6858         Add monotone EDE generic project
6859         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
6860         Add monotone generic project.
6862         Revert premature commit
6863         * doc/lispref/files.texi: Revert premature commit of change to
6864         file-name-all-completions.
6866         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
6867         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
6868         with cl-generic defaults.
6869         (elisp--xref-find-references): Add doc string.
6870         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
6871         tests to find bug.
6873         Fix bugs in eieio-oref-default related to class symbols
6874         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
6875         (eieio-oref-default): Handle class properly.
6877 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
6879         Quote “fullboth” when defining it
6880         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
6881         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
6883 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
6885         Minor doc fix in emacs/ack.texi
6886         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
6887         first argument.
6889 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
6891         Adapt tests in auto-revert-tests.el
6892         * test/automated/auto-revert-tests.el (auto-revert--timeout):
6893         Make it a defconst.
6894         (auto-revert--wait-for-revert): New defun.
6895         (auto-revert-test00-auto-revert-mode)
6896         (auto-revert-test01-auto-revert-tail-mode)
6897         (auto-revert-test02-auto-revert-mode-dired): Use it.
6899 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
6901         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
6902         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
6903         (cl-lib-fdefs): Add defgeneric.
6904         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
6905         (eieio-kw, cl-lib-kw, el-kw): Remove.
6907 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
6909         Quote less in manuals
6910         The manuals often used quotes ``...'' when it is better to use @dfn or
6911         @code or capitalized words or no quoting at all.  For example, there is
6912         no need for the `` and '' in “if a variable has one effect for
6913         @code{nil} values and another effect for ``non-@code{nil}'' values”.
6914         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
6915         unnecessary quoting like this, and to use @dfn etc. instead when called
6916         for (Bug#21472).
6918 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
6920         * lisp/custom.el (load-theme): Only compute hash when needed.
6922 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
6924         Pacify --enable-gcc-warnings
6925         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
6927 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
6929         Improve error reports in inotify.c
6930         * src/inotify.c (report_inotify_error): New function.  Clone of
6931         report_w32notify_error.
6932         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
6933         (Finotify_rm_watch): Use it.
6935 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
6937         Fix the file-notify tests for watch validation on w32
6938         * test/automated/file-notify-tests.el
6939         (file-notify-test04-file-validity): Move the directory deletion
6940         out of the file-notify--test-with-events macro.
6941         (file-notify-test04-file-validity)
6942         (file-notify-test05-dir-validity): Enlarge the timeout of
6943         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
6945 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
6947         Use OPEN BOX instead of space for \quad.
6948         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
6949         character for \quad instead of a space.
6951 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
6953         Add missing *.pbm images
6954         * etc/images/connect.pbm: New file.
6955         * etc/images/custom/down-pushed.pbm: New file.
6956         * etc/images/custom/down.pbm: New file.
6957         * etc/images/custom/right-pushed.pbm: New file.
6958         * etc/images/custom/right.pbm: New file.
6959         * etc/images/describe.pbm: New file.
6960         * etc/images/disconnect.pbm: New file.
6961         * etc/images/ezimage/bits.pbm: New file.
6962         * etc/images/ezimage/bitsbang.pbm: New file.
6963         * etc/images/ezimage/box-minus.pbm: New file.
6964         * etc/images/ezimage/box-plus.pbm: New file.
6965         * etc/images/ezimage/box.pbm: New file.
6966         * etc/images/ezimage/checkmark.pbm: New file.
6967         * etc/images/ezimage/dir-minus.pbm: New file.
6968         * etc/images/ezimage/dir-plus.pbm: New file.
6969         * etc/images/ezimage/dir.pbm: New file.
6970         * etc/images/ezimage/doc-minus.pbm: New file.
6971         * etc/images/ezimage/doc-plus.pbm: New file.
6972         * etc/images/ezimage/doc.pbm: New file.
6973         * etc/images/ezimage/info.pbm: New file.
6974         * etc/images/ezimage/key.pbm: New file.
6975         * etc/images/ezimage/label.pbm: New file.
6976         * etc/images/ezimage/lock.pbm: New file.
6977         * etc/images/ezimage/mail.pbm: New file.
6978         * etc/images/ezimage/page-minus.pbm: New file.
6979         * etc/images/ezimage/page-plus.pbm: New file.
6980         * etc/images/ezimage/page.pbm: New file.
6981         * etc/images/ezimage/tag-gt.pbm: New file.
6982         * etc/images/ezimage/tag-minus.pbm: New file.
6983         * etc/images/ezimage/tag-plus.pbm: New file.
6984         * etc/images/ezimage/tag-type.pbm: New file.
6985         * etc/images/ezimage/tag-v.pbm: New file.
6986         * etc/images/ezimage/tag.pbm: New file.
6987         * etc/images/ezimage/unlock.pbm: New file.
6988         * etc/images/gnus/important.pbm: New file.
6989         * etc/images/gnus/mail-send.pbm: New file.
6990         * etc/images/gnus/receipt.pbm: New file.
6991         * etc/images/gnus/toggle-subscription.pbm: New file.
6992         * etc/images/gnus/unimportant.pbm: New file.
6993         * etc/images/gud/all.pbm: New file.
6994         * etc/images/gud/rcont.pbm: New file.
6995         * etc/images/gud/recstart.pbm: New file.
6996         * etc/images/gud/recstop.pbm: New file.
6997         * etc/images/gud/rfinish.pbm: New file.
6998         * etc/images/gud/rnext.pbm: New file.
6999         * etc/images/gud/rnexti.pbm: New file.
7000         * etc/images/gud/rstep.pbm: New file.
7001         * etc/images/gud/rstepi.pbm: New file.
7002         * etc/images/gud/thread.pbm: New file.
7003         * etc/images/lock-broken.pbm: New file.
7004         * etc/images/lock-ok.pbm: New file.
7005         * etc/images/lock.pbm: New file.
7006         * etc/images/mail/copy.pbm: New file.
7007         * etc/images/mail/forward.pbm: New file.
7008         * etc/images/mail/not-spam.pbm: New file.
7009         * etc/images/mail/outbox.pbm: New file.
7010         * etc/images/mail/preview.pbm: New file.
7011         * etc/images/mail/save-draft.pbm: New file.
7012         * etc/images/mh-logo.pbm: New file.
7013         * etc/images/mpc/add.pbm: New file.
7014         * etc/images/mpc/ffwd.pbm: New file.
7015         * etc/images/mpc/next.pbm: New file.
7016         * etc/images/mpc/pause.pbm: New file.
7017         * etc/images/mpc/play.pbm: New file.
7018         * etc/images/mpc/prev.pbm: New file.
7019         * etc/images/mpc/rewind.pbm: New file.
7020         * etc/images/mpc/stop.pbm: New file.
7021         * etc/images/redo.pbm: New file.
7022         * etc/images/smilies/braindamaged.pbm: New file.
7023         * etc/images/smilies/cry.pbm: New file.
7024         * etc/images/smilies/dead.pbm: New file.
7025         * etc/images/smilies/evil.pbm: New file.
7026         * etc/images/smilies/forced.pbm: New file.
7027         * etc/images/smilies/grin.pbm: New file.
7028         * etc/images/smilies/indifferent.pbm: New file.
7029         * etc/images/sort-ascending.pbm: New file.
7030         * etc/images/sort-column-ascending.pbm: New file.
7031         * etc/images/sort-criteria.pbm: New file.
7032         * etc/images/sort-descending.pbm: New file.
7033         * etc/images/sort-row-ascending.pbm: New file.
7034         * etc/images/unchecked.pbm: New file.
7035         * etc/images/zoom-in.pbm: New file.
7036         * etc/images/README: Update instructions for PBM files.
7038         Add separator.pbm tool-bar image
7039         * etc/images/separator.pbm: New file.  Having it avoids the side
7040         effect of changing the tool-bar height when the default font's size
7041         changes and XPM image support is not available, due to the SPC
7042         characters that are left in the Lisp string used to display the tool
7043         bar, because there are no images to display instead of those SPC
7044         characters.
7046         Make show-paren-match face visible on mono-color displays
7047         * lisp/faces.el (show-paren-match): Use the underline face for
7048         mono-color displays.  (Bug#21481)
7050 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
7052         Don’t double-encode non-ASCII mail clipboard
7053         * lisp/mail/mailclient.el (mailclient-send-it):
7054         Also fix the case when mailclient-place-body-on-clipboard-flag
7055         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
7057 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
7059         Adapt file-notify-tests.el test cases
7060         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
7061         * src/inotify.c (Finotify_valid_p): Adapt docstring.
7062         * test/automated/file-notify-tests.el
7063         (file-notify-test03-autorevert)
7064         (file-notify-test04-file-validity)
7065         (file-notify-test04-file-validity-remote)
7066         (file-notify-test05-dir-validity)
7067         (file-notify-test05-dir-validity-remote): Adapt docstring.
7068         (file-notify-test04-file-validity): Let events arrive before
7069         calling final `file-notify-valid-p'.  Do not ignore errors.
7070         (file-notify-test05-dir-validity): Do not manipulate
7071         `temporary-file-directory', it isn't necessary.  Let events arrive
7072         before calling final `file-notify-valid-p'.  Do not ignore errors.
7074 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
7076         Don’t double-encode non-ASCII for mail client
7077         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
7078         Use RFC 6068’s list of unreserved characters.
7079         (mailclient-send-it): When encoding the body as a URL,
7080         first decode it as per Content-Type: and Content-Transfer-Encoding:,
7081         as URLs must use percent-encoded UTF-8 (Bug#21471).
7082         * doc/misc/url.texi (mailto): Update RFC number.
7084 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
7086         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
7088 2015-09-14  Alan Mackenzie  <acm@muc.de>
7090         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
7091         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
7092         `cadr/car'.
7094 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7096         Clarify documentation of char-table extra slots
7097         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
7098         slot numbers are zero-based.  (Bug#21467)
7100 2015-09-14  Alan Mackenzie  <acm@muc.de>
7102         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
7103         Fixes bug#21449.
7104         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
7105         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
7106         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
7107         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
7108         Insert "\\|\\\\." into regexps which match symbols.
7110 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7112         Improve the doc string of w32notify-valid-p
7113         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
7114         that removing a watch makes its object invalid.
7116 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
7118         Fix tests for file-notify-valid-p
7119         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
7120         Use delete-directory to delete file-notify--test-tmpfile if it is
7121         a directory.  Likewise for file-notify--test-tmpfile1.
7122         (file-notify-test04-file-validity)
7123         (file-notify-test05-dir-validity): Delete the parent directory of
7124         the test.  Ignore errors when cleaning up after the test.
7126 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7128         Report file-notify-error in w32notify.c
7129         * src/w32notify.c (report_w32notify_error): New function.
7130         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
7131         errors, instead of calling report_file_error.  (Bug#21432)
7133         Implement w32notify-valid-p
7134         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
7135         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
7136         'identity'.
7138 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
7140         Test file-notify-valid-p
7141         * test/automated/file-notify-tests.el
7142         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
7143         New tests.
7145 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
7147         Fix markup in ELisp manual
7148         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
7149         of the 'alpha' parameter value.  (Bug#21470)
7151 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
7153         Introduce `file-notify-valid-p'
7154         * lisp/filenotify.el (file-notify-valid-p): New defun.
7155         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
7156         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
7157         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
7158         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
7159         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
7160         <file-notify-valid-p>: Add handler.
7161         * lisp/net/tramp.el (tramp-file-name-for-operation):
7162         Add `file-notify-valid-p'.
7163         (tramp-handle-file-notify-valid-p): New defun.
7164         * src/inotify.c (Finotify_valid_p): New defun.
7165         (syms_of_inotify): Declare Sinotify_valid_p.
7167 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
7169         Port Unicode char detection to FreeBSD+svgalib
7170         Problem reported by Ashish SHUKLA in:
7171         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
7172         * configure.ac: Check for struct unipair.unicode instead of for
7173         <linux/kd.h>, since that’s more specific to what the code
7174         actually needs.
7175         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
7177         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
7179 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
7181         Fix vertical cursor motion across overlay strings with newlines
7182         * src/indent.c (Fvertical_motion): Don't leave point in the middle
7183         of an overlay string with newlines, as that will position the
7184         cursor after the string at whatever column is there.  (Bug#21468)
7186 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
7188         Fix tests in file-notify-tests.el
7189         * test/automated/file-notify-tests.el: Remove Tramp declarations.
7190         (file-notify-test00-availability): Print remote command w/o Tramp
7191         internal functions.
7192         (file-notify-test02-events, file-notify-test02-events-remote):
7193         Adapt docstring.
7194         (file-notify-test03-autorevert): Use `format-message' when
7195         inspecting *Messages* buffer.
7197 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
7199         Bind inhibit-modification-hooks rather than a/b-c-f
7200         * lisp/wid-edit.el (widget-editable-list-insert-before)
7201         (widget-editable-list-delete-at):
7202         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
7203         (cperl-font-lock-unfontify-region-function):
7204         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
7205         * lisp/obsolete/longlines.el (longlines-mode):
7206         * lisp/obsolete/fast-lock.el (save-buffer-state):
7207         * lisp/mouse.el (mouse-save-then-kill-delete-region):
7208         * lisp/gnus/message.el (message-hide-headers):
7209         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
7210         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
7211         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
7212         than after/before-change-functions to nil.
7214 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
7216         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
7217         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
7218         the buffers, even if the forced redisplay is interrupted.
7220         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
7222         Merge syntax-propertize--done and parse-sexp-propertize-done
7223         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
7224         (syntax-propertize): Set syntax-propertize--done even if
7225         syntax-propertize-function is nil.  Avoid recursive invocations.
7226         (syntax-propertize-chunks): New var.
7227         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
7228         Simplify.
7229         (parse-sexp-propertize-function): Don't set any more.
7230         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
7231         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
7232         Call Qinternal__syntax_propertize instead of
7233         Vparse_sexp_propertize_function.  Truncate e_property if needed.
7234         (update_syntax_table_forward): Streamline.
7235         (syms_of_syntax): Define Qinternal__syntax_propertize.
7236         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
7238 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
7240         Prefer straight quoting in some text files
7241         Mostly this just changes ` to ' in static text.  Some exceptions:
7242         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
7243         typically does that now.
7244         * admin/quick-install-emacs (TRY, top level):
7245         Use straight quoting in diagnostics.
7246         * src/README: Fix working-directory confusion.
7248         * CONTRIBUTE: Move send-email here from git-workflow.
7250 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
7252         Improve file notifications in Tramp
7253         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
7254         Set proper events to watch for.
7255         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
7256         watched events.
7258 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
7260         Fix NS build with --enable-checking='glyphs'
7261         * src/nsfns.m (unwind_create_frame): Make the preprocessor
7262         conditionals for referencing 'dpyinfo' consistent throughout the
7263         function.  (Bug#21426)
7265 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
7267         Add seq-find
7268         This function is similar to `seq-some' but returns the found element.
7269         In the cases where nil can be the found element, a sentinel optional
7270         argument can be provided to avoid ambiguities.
7271         * lisp/emacs-lisp/seq.el (seq-find): New function.
7272         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
7273         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
7274         seq-find.
7276 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
7278         Document file-notify--test-with-events.
7279         * test/automated/file-notify-tests.el (file-notify--test-with-events):
7280         Add docstring.
7282 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
7284         Report used native library in file-notify-tests.el
7285         * test/automated/file-notify-tests.el
7286         (tramp-get-remote-gvfs-monitor-dir)
7287         (tramp-get-remote-inotifywait): Declare them.
7288         (file-notify-test00-availability): Print used native library.
7290 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
7292         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
7293         (mpc-file-local-copy): Check for absolute path.  Check more config
7294         locations.
7296 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
7298         Improve documentation of categories
7299         * doc/lispref/syntax.texi (Categories): Clarify the example of
7300         using define-category and modify-category-entry.  (Bug#21448)
7302 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
7304         Revert some stray curved quotes I missed earlier
7305         Problem reported by David Kastrup in:
7306         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
7307         * lisp/international/mule-cmds.el (leim-list-header):
7308         Use format-message with an ASCII-only format.
7310         Prefer NUMBERP to spelling it out
7311         * src/editfns.c (styled_format):
7312         * src/frame.h (NUMVAL):
7313         * src/image.c (parse_image_spec):
7314         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
7315         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
7316         * src/process.c (Fsignal_process):
7317         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
7318         * src/xfaces.c (check_lface_attrs):
7319         * src/xselect.c (x_fill_property_data, x_send_client_event):
7320         Use NUMBERP rather than INTEGERP || FLOATP.
7322 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
7324         Improve file-notify-tests
7325         * test/automated/file-notify-tests.el: Use lexical-binding.
7326         (file-notify--test-cleanup): New function.
7327         (file-notify-test00-availability, file-notify-test01-add-watch)
7328         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
7329         (file-notify--test-with-events): New macro.
7330         (file-notify-test02-events): Use it.
7332 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
7334         Add patch-sending instructions to git-workflow
7335         From a suggestion by Mitchel Humpherys in:
7336         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
7337         * admin/notes/git-workflow (Sending patches): New section.
7339         Port to GIFLIB 5.0.6 and later
7340         Problem reported by Mitchel Humpherys in:
7341         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
7342         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
7343         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
7344         (gif_load) [HAVE_GIF]: Use it.
7346 2015-09-10  Glenn Morris  <rgm@gnu.org>
7348         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
7350 2015-09-09  Glenn Morris  <rgm@gnu.org>
7352         * test/automated/file-notify-tests.el (file-notify-test02-events):
7353         Fix recent change.
7355 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7357         Refix movemail GCC pacification
7358         Problem reported by Ken Brown in:
7359         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
7360         * lib-src/movemail.c (main): Fix previous change.
7362 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7364         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
7365         Mark unused vars with underscore.
7367         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
7368         (parse_sexp_propertize): ...from here.
7370         * lisp/filenotify.el: Use lexical-binding
7371         (file-notify-add-watch): Avoid add-to-list.
7373 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
7375         Start checking event types in file-notify tests
7376         * test/automated/file-notify-tests.el (file-notify--test-events):
7377         New variable.
7378         (file-notify--test-event-handler): Append received event to
7379         file-notify--test-events for later analysis.
7380         (file-notify-test02-events): Assert that the expected notifications have
7381         arrived in the expected order.
7383 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7385         Merge from gnulib and texinfo
7386         This incorporates:
7387         2015-08-03 Improve port of stdalign to C++11
7388         * lib/stdalign.in.h: Copy from gnulib.
7389         * doc/misc/texinfo.tex: Copy from texinfo.
7391 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7393         Make syntax.c call syntax-propertize on demand
7394         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
7395         (parse-sexp-propertize-function): Use it.
7396         (syntax-propertize): Disable parse-sexp-propertize-function.
7397         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
7398         New functions.
7399         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
7400         `parse-sexp-propertize-function'.
7401         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
7402         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
7403         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
7404         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
7405         Don't assume `point' is set.
7407 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
7409         Fix indentation of an @example in ELisp manual
7410         * doc/lispref/syntax.texi (Categories): Untabify the example.
7411         (Bug#21448)
7413 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7415         Define internal-char-font even if --without-x
7416         The function is used now even in non-graphical environments.
7417         Problem reported by Glenn Morris in:
7418         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
7419         * src/font.c (Finternal_char_font): Move here ...
7420         * src/fontset.c (Finternal_char_font): ... from here.
7422 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7424         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
7425         Remove warning.
7427 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
7429         Fix display of complex local data types in GDB-MI
7430         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
7431         variable has no value, display "<complex data type>" as a
7432         placeholder, instead of a confusing "nil".  (Bug#21438)
7434 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
7436         Remove redundant redefinition of seq-drop-while from seq.el
7437         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
7439 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
7441         * lisp/emacs-lisp/package.el (package--ensure-init-file):
7442         More robust check for `package-initialize' calls in init file.
7443         This function accepts an optional argument, but calls passing
7444         an argument would not have been detected.
7446 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7448         Port movemail to RHEL 6 with --enable-gcc-warnings
7449         * lib-src/movemail.c (main): Declare local only if needed.
7451         Port recent Linux console changes to RHEL 6
7452         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
7454         Improvements for curved quotes on Linux consule
7455         This should help Emacs work better out-of-the-box on Linux consoles,
7456         which have only limited support for displaying Unicode characters.
7457         Also, undo the recent change that caused text-quoting-style to
7458         affect quote display on terminals, so that the two features are
7459         independent.  See Alan Mackenzie in:
7460         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
7461         Finally, add a style parameter to startup--setup-quote-display,
7462         so that this function can also be invoked after startup, with
7463         different styles depending on user preference at the time.
7464         * configure.ac: Check for linux/kd.h header.
7465         * doc/emacs/display.texi (Text Display): Document quote display.
7466         * doc/lispref/display.texi (Active Display Table):
7467         * etc/NEWS:
7468         * lisp/startup.el (startup--setup-quote-display, command-line):
7469         text-quoting-style no longer affects quote display.
7470         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
7471         * lisp/international/mule-util.el (char-displayable-p):
7472         * lisp/startup.el (startup--setup-quote-display):
7473         On a text terminal supporting glyph codes, use the reported
7474         glyph codes instead of the terminal coding system, as this
7475         is more accurate on the Linux console.
7476         * lisp/startup.el (startup--setup-quote-display):
7477         New optional arg STYLE.
7478         * src/fontset.c (Finternal_char_font):
7479         Report glyph codes for a text terminal, if they are available.
7480         Currently this is supported only for the Linux console.
7481         * src/termhooks.h (struct terminal): New member glyph-code-table.
7482         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
7483         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
7484         (terminal_glyph_code): New function.
7486 2015-09-08  Juri Linkov  <juri@linkov.net>
7488         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
7489         underline.  (Bug#21433)
7491 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
7493         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
7495 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
7497         Fix double-reporting of rename events with inotify
7498         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
7499         of rename events with inotify (bug#21435).
7501 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
7503         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
7504         (tetris-mode-map): Use it.
7506 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
7508         Remove a few simple cases of global redisplay
7509         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
7510         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
7511         rather than returning a "resized_p" boolean.
7512         (redisplay_internal): Adjust call accordingly.
7513         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
7514         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
7515         tracking of this undesirable situation.
7517         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
7518         * src/process.c (status_notify): Only set the update_mode_line on the
7519         relevant buffers rather than setting it globally.
7521 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
7523         * lisp/electric.el (electric-quote-post-self-insert-function):
7524         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
7525         (electric-quote-mode): Activate everywhere in message-mode.
7527 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
7529         Go back to grave quoting in source-code docstrings etc.
7530         This reverts almost all my recent changes to use curved quotes
7531         in docstrings and/or strings used for error diagnostics.
7532         There are a few exceptions, e.g., Bahá’í proper names.
7533         * admin/unidata/unidata-gen.el (unidata-gen-table):
7534         * lisp/abbrev.el (expand-region-abbrevs):
7535         * lisp/align.el (align-region):
7536         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
7537         (outlineify-sticky):
7538         * lisp/apropos.el (apropos-library):
7539         * lisp/bookmark.el (bookmark-default-annotation-text):
7540         * lisp/button.el (button-category-symbol, button-put)
7541         (make-text-button):
7542         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
7543         * lisp/calc/calc-embed.el (calc-do-embedded):
7544         * lisp/calc/calc-ext.el (calc-user-function-list):
7545         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
7546         * lisp/calc/calc-help.el (calc-describe-key)
7547         (calc-describe-thing, calc-full-help):
7548         * lisp/calc/calc-lang.el (calc-c-language)
7549         (math-parse-fortran-vector-end, math-parse-tex-sum)
7550         (math-parse-eqn-matrix, math-parse-eqn-prime)
7551         (calc-yacas-language, calc-maxima-language, calc-giac-language)
7552         (math-read-giac-subscr, math-read-math-subscr)
7553         (math-read-big-rec, math-read-big-balance):
7554         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
7555         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
7556         (calc-auto-recompute):
7557         * lisp/calc/calc-prog.el (calc-fix-token-name)
7558         (calc-read-parse-table-part, calc-user-define-invocation)
7559         (math-do-arg-check):
7560         * lisp/calc/calc-store.el (calc-edit-variable):
7561         * lisp/calc/calc-units.el (math-build-units-table-buffer):
7562         * lisp/calc/calc-vec.el (math-read-brackets):
7563         * lisp/calc/calc-yank.el (calc-edit-mode):
7564         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
7565         * lisp/calendar/appt.el (appt-display-message):
7566         * lisp/calendar/diary-lib.el (diary-check-diary-file)
7567         (diary-mail-entries, diary-from-outlook):
7568         * lisp/calendar/icalendar.el (icalendar-export-region)
7569         (icalendar--convert-float-to-ical)
7570         (icalendar--convert-date-to-ical)
7571         (icalendar--convert-ical-to-diary)
7572         (icalendar--convert-recurring-to-diary)
7573         (icalendar--add-diary-entry):
7574         * lisp/calendar/time-date.el (format-seconds):
7575         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
7576         (timeclock-make-hours-explicit, timeclock-log-data):
7577         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
7578         (todo-item-mark, todo-check-format)
7579         (todo-insert-item--next-param, todo-edit-item--next-key)
7580         (todo-mode):
7581         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
7582         * lisp/cedet/mode-local.el (describe-mode-local-overload)
7583         (mode-local-print-binding, mode-local-describe-bindings-2):
7584         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
7585         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
7586         * lisp/cus-start.el (standard):
7587         * lisp/cus-theme.el (describe-theme-1):
7588         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
7589         (custom--sort-vars-1, load-theme):
7590         * lisp/descr-text.el (describe-text-properties-1, describe-char):
7591         * lisp/dired-x.el (dired-do-run-mail):
7592         * lisp/dired.el (dired-log):
7593         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
7594         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
7595         (ad-disable-advice, ad-remove-advice, ad-set-argument)
7596         (ad-set-arguments, ad--defalias-fset, ad-activate)
7597         (ad-deactivate):
7598         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
7599         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
7600         (byte-optimize-while, byte-optimize-apply):
7601         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
7602         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
7603         (byte-compile-log-file, byte-compile-format-warn)
7604         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
7605         (byte-compile-cl-warn)
7606         (byte-compile-warn-about-unresolved-functions)
7607         (byte-compile-file, byte-compile--declare-var)
7608         (byte-compile-file-form-defmumble, byte-compile-form)
7609         (byte-compile-normal-call, byte-compile-check-variable)
7610         (byte-compile-variable-ref, byte-compile-variable-set)
7611         (byte-compile-subr-wrong-args, byte-compile-setq-default)
7612         (byte-compile-negation-optimizer)
7613         (byte-compile-condition-case--old)
7614         (byte-compile-condition-case--new, byte-compile-save-excursion)
7615         (byte-compile-defvar, byte-compile-autoload)
7616         (byte-compile-lambda-form)
7617         (byte-compile-make-variable-buffer-local, display-call-tree)
7618         (batch-byte-compile):
7619         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
7620         * lisp/emacs-lisp/chart.el (chart-space-usage):
7621         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
7622         (check-declare-warn, check-declare-file)
7623         (check-declare-directory):
7624         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
7625         (checkdoc-message-text-engine):
7626         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
7627         (cl--describe-class):
7628         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
7629         (cl--generic-describe, cl-generic-generalizers):
7630         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
7631         (cl-symbol-macrolet):
7632         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
7633         * lisp/emacs-lisp/copyright.el (copyright)
7634         (copyright-update-directory):
7635         * lisp/emacs-lisp/edebug.el (edebug-read-list):
7636         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
7637         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
7638         (eieio-oref):
7639         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
7640         * lisp/emacs-lisp/eieio-speedbar.el:
7641         (eieio-speedbar-child-make-tag-lines)
7642         (eieio-speedbar-child-description):
7643         * lisp/emacs-lisp/eieio.el (defclass, change-class):
7644         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
7645         (elint-init-form, elint-check-defalias-form)
7646         (elint-check-let-form):
7647         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
7648         (ert-results-pop-to-backtrace-for-test-at-point)
7649         (ert-results-pop-to-messages-for-test-at-point)
7650         (ert-results-pop-to-should-forms-for-test-at-point)
7651         (ert-describe-test):
7652         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
7653         (find-function-library):
7654         * lisp/emacs-lisp/generator.el (iter-yield):
7655         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
7656         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
7657         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
7658         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
7659         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
7660         (advice--make, define-advice):
7661         * lisp/emacs-lisp/package-x.el (package-upload-file):
7662         * lisp/emacs-lisp/package.el (package-version-join)
7663         (package-disabled-p, package-activate-1, package-activate)
7664         (package--download-one-archive)
7665         (package--download-and-read-archives)
7666         (package-compute-transaction, package-install-from-archive)
7667         (package-install, package-install-selected-packages)
7668         (package-delete, package-autoremove, describe-package-1)
7669         (package-install-button-action, package-delete-button-action)
7670         (package-menu-hide-package, package-menu--list-to-prompt)
7671         (package-menu--perform-transaction)
7672         (package-menu--find-and-notify-upgrades):
7673         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
7674         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
7675         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
7676         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
7677         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
7678         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
7679         (rx-form):
7680         * lisp/emacs-lisp/smie.el (smie-config-save):
7681         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
7682         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
7683         * lisp/emacs-lisp/testcover.el (testcover-1value):
7684         * lisp/emacs-lisp/timer.el (timer-event-handler):
7685         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
7686         (viper-toggle-search-style, viper-kill-buffer)
7687         (viper-brac-function):
7688         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
7689         * lisp/env.el (setenv):
7690         * lisp/erc/erc-button.el (erc-nick-popup):
7691         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
7692         * lisp/eshell/em-dirs.el (eshell/cd):
7693         * lisp/eshell/em-glob.el (eshell-glob-regexp)
7694         (eshell-glob-entries):
7695         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
7696         * lisp/eshell/esh-opt.el (eshell-show-usage):
7697         * lisp/facemenu.el (facemenu-add-new-face)
7698         (facemenu-add-new-color):
7699         * lisp/faces.el (read-face-name, read-face-font, describe-face)
7700         (x-resolve-font-name):
7701         * lisp/files-x.el (modify-file-local-variable):
7702         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
7703         (set-auto-mode, hack-one-local-variable--obsolete)
7704         (dir-locals-set-directory-class, write-file, basic-save-buffer)
7705         (delete-directory, copy-directory, recover-session)
7706         (recover-session-finish, insert-directory)
7707         (file-modes-char-to-who, file-modes-symbolic-to-number)
7708         (move-file-to-trash):
7709         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
7710         * lisp/find-cmd.el (find-generic, find-to-string):
7711         * lisp/finder.el (finder-commentary):
7712         * lisp/font-lock.el (font-lock-fontify-buffer):
7713         * lisp/format.el (format-write-file, format-find-file)
7714         (format-insert-file):
7715         * lisp/frame.el (get-device-terminal, select-frame-by-name):
7716         * lisp/fringe.el (fringe--check-style):
7717         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
7718         * lisp/help-fns.el (help-fns--key-bindings)
7719         (help-fns--compiler-macro, help-fns--parent-mode)
7720         (help-fns--obsolete, help-fns--interactive-only)
7721         (describe-function-1, describe-variable):
7722         * lisp/help.el (describe-mode)
7723         (describe-minor-mode-from-indicator):
7724         * lisp/image.el (image-type):
7725         * lisp/international/ccl.el (ccl-dump):
7726         * lisp/international/fontset.el (x-must-resolve-font-name):
7727         * lisp/international/mule-cmds.el (prefer-coding-system)
7728         (select-safe-coding-system-interactively)
7729         (select-safe-coding-system, activate-input-method)
7730         (toggle-input-method, describe-current-input-method)
7731         (describe-language-environment):
7732         * lisp/international/mule-conf.el (code-offset):
7733         * lisp/international/mule-diag.el (describe-character-set)
7734         (list-input-methods-1):
7735         * lisp/mail/feedmail.el (feedmail-run-the-queue):
7736         * lisp/mouse.el (minor-mode-menu-from-indicator):
7737         * lisp/mpc.el (mpc-playlist-rename):
7738         * lisp/msb.el (msb--choose-menu):
7739         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
7740         * lisp/net/imap.el (imap-interactive-login):
7741         * lisp/net/mairix.el (mairix-widget-create-query):
7742         * lisp/net/newst-backend.el (newsticker--sentinel-work):
7743         * lisp/net/newst-treeview.el (newsticker--treeview-load):
7744         * lisp/net/rlogin.el (rlogin):
7745         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
7746         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
7747         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
7748         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
7749         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
7750         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
7751         (org-babel-goto-named-result):
7752         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
7753         * lisp/org/ob-ref.el (org-babel-ref-resolve):
7754         * lisp/org/org-agenda.el (org-agenda-prepare):
7755         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
7756         (org-clock-resolve):
7757         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
7758         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
7759         * lisp/org/org-habit.el (org-habit-parse-todo):
7760         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
7761         (org-mouse-context-menu):
7762         * lisp/org/org-table.el (org-table-edit-formulas):
7763         * lisp/org/ox.el (org-export-async-start):
7764         * lisp/proced.el (proced-log):
7765         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
7766         (ada-check-matching-start, ada-goto-matching-start):
7767         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
7768         * lisp/progmodes/ada-xref.el (ada-find-executable):
7769         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
7770         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
7771         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
7772         (flymake-start-syntax-check-process):
7773         * lisp/progmodes/python.el (python-shell-get-process-or-error)
7774         (python-define-auxiliary-skeleton):
7775         * lisp/progmodes/sql.el (sql-comint):
7776         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
7777         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
7778         * lisp/recentf.el (recentf-open-files):
7779         * lisp/replace.el (query-replace-read-from)
7780         (occur-after-change-function, occur-1):
7781         * lisp/scroll-bar.el (scroll-bar-columns):
7782         * lisp/server.el (server-get-auth-key):
7783         * lisp/simple.el (execute-extended-command)
7784         (undo-outer-limit-truncate, list-processes--refresh)
7785         (compose-mail, set-variable, choose-completion-string)
7786         (define-alternatives):
7787         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
7788         (command-line-1):
7789         * lisp/subr.el (noreturn, define-error, add-to-list)
7790         (read-char-choice, version-to-list):
7791         * lisp/term/common-win.el (x-handle-xrm-switch)
7792         (x-handle-name-switch, x-handle-args):
7793         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
7794         * lisp/textmodes/reftex-ref.el (reftex-label):
7795         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
7796         * lisp/textmodes/two-column.el (2C-split):
7797         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
7798         (tutorial--find-changed-keys):
7799         * lisp/type-break.el (type-break-noninteractive-query):
7800         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
7801         (wdired-do-perm-changes):
7802         * lisp/whitespace.el (whitespace-report-region):
7803         Prefer grave quoting in source-code strings used to generate help
7804         and diagnostics.
7805         * lisp/faces.el (face-documentation):
7806         No need to convert quotes, since the result is a docstring.
7807         * lisp/info.el (Info-virtual-index-find-node)
7808         (Info-virtual-index, info-apropos):
7809         Simplify by generating only curved quotes, since info files are
7810         typically that ways nowadays anyway.
7811         * lisp/international/mule-diag.el (list-input-methods):
7812         Don’t assume text quoting style is curved.
7813         * lisp/org/org-bibtex.el (org-bibtex-fields):
7814         Revert my recent changes, going back to the old quoting style.
7816 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7818         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
7819         (package--autoloads-file-name)
7820         (package--activate-autoloads-and-load-path): New function.
7821         (package-activate-1): Delegate autoloading and load-path
7822         configuration to `package--activate-autoloads-and-load-path'.
7823         (package--compile): Before compilation, call
7824         `package--activate-autoloads-and-load-path' instead of
7825         `package-activate-1'.
7827 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
7829         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
7831 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
7833         Fix deletion of symlinks to directories on MS-Windows
7834         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
7835         symlink to a directory, try again with 'rmdir'.
7836         (is_symlink): If the argument is a symlink to a directory, set a
7837         bit in the return value to indicate that fact.
7839 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7841         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
7842         When `package-initialize' is called as part of loading the init file,
7843         the user probably doesn't want it to be called again afterwards.
7844         In this situation, `package-initialize' now sets
7845         `package-enable-at-startup' to nil to prevent that.  The user can have
7846         the old behavior by setting this variable to t after the call to
7847         `package-initialize'.  (Bug#21423)
7848         * doc/emacs/package.texi (Package Installation): Document it.
7849         * doc/lispref/package.texi (Packaging Basics): Document it.
7850         * etc/NEWS: Document it.
7852 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7854         Bump version of ntlm.el to 2.00
7855         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
7856         Add comm keyword.
7858 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
7860         * doc/misc/gnus.texi (Mail Source Specifiers):
7861         Allow :mailbox to be a list.
7863 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
7865         * lisp/progmodes/etags.el (etags-tags-completion-table):
7866         Allow even one non-regular character before the implicit tag name.
7867         Reported at http://emacs.stackexchange.com/questions/15269/.
7869 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7871         Add support for NTLMv2 authentication
7872         * lisp/net/ntlm.el (ntlm): New customization group.
7873         (ntlm-compatibility-level): New defcustom.
7874         (ntlm-compute-timestamp): New function.
7875         (ntlm-generate-nonce): Likewise.
7876         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
7878 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7880         * lisp/emacs-lisp/package.el: Rename custom faces.
7881         All of the recently introduced faces, like `package-name-face', have
7882         been renamed to no end in `-face' to comply with the convention
7883         described in (info "(elisp) Defining Faces").
7884         (package-name, package-description)
7885         (package-status-built-in, package-status-external)
7886         (package-status-available, package-status-new)
7887         (package-status-held, package-status-disabled)
7888         (package-status-installed, package-status-dependency)
7889         (package-status-unsigned, package-status-incompat)
7890         (package-status-avail-obso): New faces.
7891         (package-menu--print-info-simple): Use them.
7893 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
7895         mail-source.el: Make the imap mail-source's :mailbox handle a list
7896         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
7897         Allow :mailbox to be  a list.
7899 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
7901         nnimap.el: Handle nil arg to nnimap-request-group
7902         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
7903         This arg isn't always passed in, check it's not nil before making it
7904         into a list.  The active arg will also be nil if the group is new,
7905         check for that.
7907 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
7909         File notifications: Support renaming over directory boundaries
7910         * lisp/filenotify.el (file-notify-handle-event):
7911         (file-notify--pending-event): Adapt docstring.
7912         (file-notify--descriptor, file-notify-callback): Reimplement in
7913         order to support renaming over directory boundaries.
7914         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
7915         * doc/lispref/os.texi (File Notifications): Remove limitation of
7916         file renaming to the same directory.
7918 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
7920         Spelling fix (Bug#21420)
7922 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
7924         Improve the semantic of map-some
7925         Update map-some to return the returned by the predicate, similar to
7926         seq-some.
7927         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
7928           return value of the predicate.
7929         * test/automated/map-tests.el (test-map-some): Update the test to check
7930           for non-nil values only.
7932         Rename map-contains-key-p and map-some-p
7933         Remove the "-p" suffix from both function names.
7934         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
7935           Rename the functions.
7936         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
7937           Update both test functions.
7939         Improve the semantic of seq-some
7940         Update seq-some to return non-nil if the predicate returns non-nil for
7941         any element of the seq, in which case the returned value is the one
7942         returned by the predicate.
7943         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
7944           docstring.
7945         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
7946         * doc/lispref/sequences.texi (Sequence Functions): Update the
7947           documentation for seq-some.
7949         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
7950         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
7951           without the "-p" prefix.
7952         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
7953           the tests accordingly.
7954         * doc/lispref/sequences.texi (Sequence Functions): Update the
7955           documentation for seq.el.
7957 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
7959         text-quoting-style for usage of fn names with ‘’
7960         * lisp/help.el (help--docstring-quote): Don’t assume
7961         text-quoting-style is ‘curve’ when generating usage strings for
7962         functions whose names contain curved quotes.
7964 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
7966         Fix fix for describe-function keybinding confusion
7967         This fixes a bug introduced by the previous patch.
7968         * lisp/help-fns.el (help-fns--signature):
7969         Last arg of help-fns--signature is now a buffer, or nil if a
7970         raw signature is wanted.  All callers changed.
7971         (describe-function-1): Use this to do the right thing with signatures.
7973 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
7975         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
7977         Use PAT rather than UPAT in pcase macros
7978         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
7979         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
7980           than UPAT.
7982 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
7984         Fix describe-function keybinding confusion
7985         * lisp/help-fns.el (describe-function-1): Compute signature
7986         in the original buffer, not in standard-output, so that
7987         substitute-command-keys uses the proper keybindings.
7988         This fixes Bug#21412, introduced in commit
7989         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
7991 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
7993         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
7995 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
7997         Avoid read error messages from 'inotify'
7998         * src/process.c (wait_reading_process_output): Add a
7999         'tls_available' set and manipulate it instead of 'Available' when
8000         checking TLS inputs.  Assign the value to 'Available' only if we
8001         find any TLS data waiting to be read.  This avoids error messages
8002         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
8004 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
8006         Avoid errors in thing-at-point with 2nd argument non-nil
8007         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
8008         sequences.  (Bug#21391)
8010 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
8012         Fix segfaults due to using a stale face ID
8013         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
8014         (display_echo_area_1, redisplay_internal): Call it to avoid
8015         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
8016         faces, which could case a segfault if the frame's face cache was
8017         freed since the last redisplay.  (Bug#21394)
8018         * src/xfaces.c (free_realized_faces):
8019         Call forget_escape_and_glyphless_faces.
8020         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
8022 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
8024         Fix minor problems with " in manual
8026 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
8028         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
8029         multi-hop files.
8031 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
8033         Support automated ‘make check’ in non-C locale
8034         This lets the builder optionally test Emacs behavior in other locales.
8035         The C locale is still the default for tests.
8036         * test/automated/Makefile.in (TEST_LOCALE): New macro.
8037         (emacs): Use it.
8038         * test/automated/flymake-tests.el (flymake-tests--current-face):
8039         Use C locale for subprocesses so that tests behave as expected.
8040         * test/automated/python-tests.el:
8041         (python-shell-prompt-validate-regexps-1)
8042         (python-shell-prompt-validate-regexps-2)
8043         (python-shell-prompt-validate-regexps-3)
8044         (python-shell-prompt-validate-regexps-4)
8045         (python-shell-prompt-validate-regexps-5)
8046         (python-shell-prompt-validate-regexps-6)
8047         (python-shell-prompt-set-calculated-regexps-1):
8048         Adjust expected output to match locale.
8049         * test/automated/tildify-tests.el (tildify-test--test)
8050         (tildify-space-test--test, tildify-space-undo-test--test):
8051         This test assumes UTF-8 encoding.
8053 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
8055         Fix some more docstring etc. quoting problems
8056         Mostly these fixes prevent the transliteration of apostrophes
8057         that should stay apostrophes.  Also, prefer curved quotes in
8058         Bahá’í proper names, as that’s the preferred Bahá’í style and
8059         these names are chock-full of non-ASCII characters anyway.
8060         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
8061         (eieio-defclass-internal):
8062         * lisp/emacs-lisp/eieio.el (defclass):
8063         * lisp/hi-lock.el (hi-lock-mode):
8064         Don’t transliterate Lisp apostrophes when generating a
8065         doc string or diagnostic.
8066         * lisp/international/mule-diag.el (list-coding-systems-1):
8067         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
8068         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
8069         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
8070         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
8071         Substitute quotes before putting them in the help buffer.
8073 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
8075         Re-add the notion of echo_prompt lost in the translation
8076         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
8077         echo_prompt which contains the actual string.  Update all uses.
8078         * src/keyboard.c (kset_echo_prompt): New function.
8079         (echo_update): Add echo_prompt at the very beginning.
8080         (read_char): Remove workaround for bug#19875, not needed any more.
8081         (read_key_sequence): Set echo_prompt rather than echo_string
8082         (bug#21403).
8083         (mark_kboards): Mark echo_prompt.
8085         Fix disassembly of non-compiled lexical functions (bug#21377)
8086         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
8087         * lisp/emacs-lisp/disass.el: Use lexical-binding.
8088         (disassemble): Recognize `closure's as well.
8089         (disassemble-internal): Use indirect-function and
8090         help-function-arglist, and accept `closure's.
8091         (disassemble-internal): Use interactive-form.
8092         (disassemble-1): Use functionp.
8094         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
8095         Don't compose inside verbatim blocks!
8097 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
8099         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
8100         (bug#19441).
8102         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
8104 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
8106         vc-git-mode-line-string: Explicitly re-apply the face
8107         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
8108         the face (bug#21404).
8110 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
8112         Treat initial-scratch-message as a doc string
8113         * doc/emacs/building.texi (Lisp Interaction):
8114         * doc/lispref/os.texi (Startup Summary):
8115         * etc/NEWS: Document this.
8116         * lisp/startup.el (initial-scratch-message):
8117         Look up find-file’s key rather than hardcoding it.
8118         (command-line-1): Substitute the doc string.
8119         This also substitutes the quotes, which will help test display
8120         quoting at startup.
8122         Fix describe-char bug with glyphs on terminals
8123         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
8124         buffers too, so don’t treat them differently from graphic displays.
8125         Without this fix, describe-char would throw an error on a terminal
8126         if given a glyph with a non-default face.
8128         Follow text-quoting-style in display table init
8129         This attempts to fix a problem reported by Alan Mackenzie in:
8130         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
8131         * doc/lispref/display.texi (Active Display Table):
8132         Mention how text-quoting-style affects it.
8133         * doc/lispref/help.texi (Keys in Documentation):
8134         Say how to set text-quoting-style in ~/.emacs.
8135         * etc/NEWS: Document the change.
8136         * lisp/startup.el (startup--setup-quote-display):
8137         Follow user preference if text-quoting-style is set.
8138         (command-line): Setup quote display again if user expresses
8139         a preference in .emacs.
8141 2015-09-02  K. Handa  <handa@gnu.org>
8143         Fix typo
8144         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
8145         -> OTF_positioning_type_components_mask.
8147         Fix previous change
8148         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
8149         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
8151 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
8153         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
8154         Rename from vc-find-file-hook and make interactive.
8155         (vc-find-file-hook): Redefine as obsolete alias.
8157 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8159         Escape ` and ' in doc
8160         Escape apostrophes and grave accents in docstrings if they are
8161         are supposed to stand for themselves and are not quotes.  Remove
8162         apostrophes from docstring examples like ‘'(calendar-nth-named-day
8163         -1 0 10 year)’ that confuse source code with data.  Do some other
8164         minor docstring fixups as well, e.g., insert a missing close quote.
8166 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
8168         Generalize the prefix-command machinery of C-u
8169         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
8170         (prefix-command-preserve-state-hook): New hooks.
8171         (internal-echo-keystrokes-prefix): New function.
8172         (prefix-command--needs-update, prefix-command--last-echo): New vars.
8173         (prefix-command-update, prefix-command-preserve): New functions.
8174         (reset-this-command-lengths): New compatibility definition.
8175         (universal-argument--mode): Call prefix-command-update.
8176         (universal-argument, universal-argument-more, negative-argument)
8177         (digit-argument): Call prefix-command-preserve-state.
8178         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
8179         the "prefix argument" to echo.
8180         (this_command_key_count_reset, before_command_key_count)
8181         (before_command_echo_length): Delete variables.
8182         (echo_add_key): Always add a space.
8183         (echo_char): Remove.
8184         (echo_dash): Don't give up when this_command_key_count is 0, since that
8185         is now the case after a prefix command.
8186         (echo_update): New function, extracted from echo_now.
8187         (echo_now): Use it.
8188         (add_command_key, read_char, record_menu_key): Remove old disabled code.
8189         (command_loop_1): Don't refrain from pushing an undo boundary when
8190         prefix-arg is set.  Remove other prefix-arg special case, now handled
8191         directly in the prefix commands instead.  But call echo_now if there's
8192         a prefix state to echo.
8193         (read_char, record_menu_key): Use echo_update instead of echo_char.
8194         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
8195         (Freset_this_command_lengths): Delete function.
8196         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
8197         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
8198         * lisp/simple.el: Use those new hooks for C-u.
8199         (universal-argument--description): New function.
8200         (prefix-command-echo-keystrokes-functions): Use it.
8201         (universal-argument--preserve): New function.
8202         (prefix-command-preserve-state-hook): Use it.
8203         (command-execute): Call prefix-command-update if needed.
8204         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
8205         (kmacro-step-edit-prefix-index): Delete variables.
8206         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
8207         support for prefix arg commands.
8208         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
8209         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
8210         (cua--shift-control-prefix): Use prefix-command-preserve-state.
8211         Remove now unused arg `arg'.
8212         (cua--prefix-override-handler, cua--prefix-repeat-handler)
8213         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
8214         Update accordingly.
8215         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
8216         any more.
8217         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
8218         if the mark is not set.
8220 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8222         Rework quoting in Emacs Lisp Introduction
8223         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
8224         (if in more detail, type-of-animal in detail, else): Rework the
8225         early example to use " rather than ' so that we don’t burden
8226         complete novices with the low-priority detail of text quoting style.
8227         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
8228         (kill-new function, kill-ring-yank-pointer)
8229         (Complete forward-sentence, Loading Files)
8230         (Code for current-kill, Code for current-kill, yank):
8231         Resurrect the Emacs 22 versions of the code, which uses grave
8232         quoting style in doc strings.
8233         (Complete zap-to-char): Mention how quoting works in doc strings.
8235         Setup quote display only if interactive
8236         * lisp/startup.el (command-line):
8237         Skip call to startup--setup-quote-display if noninteractive.
8238         Without this change, python-shell-prompt-validate-regexps-1
8239         fails in test/automated/python-tests.el when run in an
8240         en_US.utf8 locale on Fedora.
8242 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
8244         Use defalias at the top level
8245         * lisp/gnus/gnus-util.el (gnus-format-message):
8246         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
8247         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
8249 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8251         terminal-init-w32console mimicks command-line
8252         Problem reported by Eli Zaretskii.
8253         * lisp/startup.el (startup--setup-quote-display):
8254         New function, refactored from a part of ‘command-line’.
8255         (command-line): Use it.
8256         * lisp/term/w32console.el (terminal-init-w32console):
8257         Use it, so that this function stays consistent with ‘command-line’.
8259         Display replacement quotes with shadow glyphs
8260         * lisp/startup.el (command-line): When displaying ASCII
8261         replacements for curved quotes, use a shadow glyph instead of a
8262         regular one, to avoid ambiguity.
8264 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
8266         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
8268 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8270         Docstring fixes re quotes in C code
8271         Fix some docstring quoting problems, mostly by escaping apostrophe.
8273 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
8275         Some Tramp password fixes
8276         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
8277         of the hops.
8278         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
8279         at the beginning of the command.  Otherwise, it could be
8280         interpreted as password prompt if the remote host echoes the
8281         command.
8282         (tramp-remote-coding-commands): Add "openssl enc -base64".
8284 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
8286         Make vc-git-working-revision always return the commit hash
8287         * lisp/vc/vc-git.el (vc-git-working-revision):
8288         Return the commit hash (bug#21383).
8289         (vc-git--symbolic-ref): New function, extracted from above.
8290         (vc-git-mode-line-string): Use it.
8292 2015-09-01  K. Handa  <handa@gnu.org>
8294         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
8295         * src/ftfont.c (MFLTGlyphFT): New type.
8296         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
8297         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
8298         elements in the array MFLTGlyphString.glyphs.
8300 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
8302         Improve comments in elisp-mode.el, elisp-mode-tests.el
8303         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
8305         Delete Emacs 25 test in mode-local.el
8306         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8307         Fix missed an edit in previous commit.
8309         Show all known mode-local overrides in *Help*
8310         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8311         Assume Emacs 25. Add all known mode-local overrides.
8313 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
8315         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
8316         Ensure that the article where the search word is found is displayed
8317         and pointed to in the summary buffer.
8319 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
8321         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
8322         When the region is active, but is empty (length 0), act as though
8323         the region was not active; that is, put a comment at the end of
8324         the line.  (Bug#21119)
8326 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
8328         Port tls.el to older Emacs
8329         * lisp/net/tls.el (tls-format-message):
8330         Alias to format-message, or format if not available.
8331         (open-tls-stream): Use it.
8333 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
8335         hideif.el: Recognize .h++ as C++ header
8336         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
8338         isearch: Document character folding mode
8339         * lisp/isearch.el (isearch-forward):
8340         Mention `isearch-toggle-character-fold' in doc string.
8342 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8344         Quoting fixes in ERC and Eshell
8345         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
8346         * lisp/erc/erc-backend.el (define-erc-response-handler):
8347         * lisp/erc/erc-fill.el (erc-fill-static-center):
8348         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
8349         * lisp/eshell/em-glob.el (eshell-glob-entries):
8350         * lisp/eshell/em-hist.el (eshell-save-some-history):
8351         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
8352         (eshell-shuffle-files):
8353         * lisp/eshell/esh-cmd.el (eshell-do-eval):
8354         * lisp/eshell/esh-proc.el (eshell-process-interact)
8355         (eshell-query-kill-processes):
8356         Respect ‘text-quoting-style’ in diagnostics and doc strings.
8358         Quoting fixes in Gnus
8359         * lisp/gnus/gnus-agent.el:
8360         (gnus-agent-possibly-synchronize-flags-server):
8361         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
8362         * lisp/gnus/gnus-eform.el (gnus-edit-form):
8363         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
8364         (gnus-group-nnimap-edit-acl):
8365         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
8366         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
8367         * lisp/gnus/message.el (message-strip-subject-encoded-words)
8368         (message-check-recipients, message-send-form-letter):
8369         * lisp/gnus/mm-decode.el (mm-display-part):
8370         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
8371         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
8372         (mml-smime-get-ldap-cert):
8373         * lisp/gnus/spam-report.el (spam-report-process-queue):
8374         Respect ‘text-quoting-style’ in diagnostics.
8375         * lisp/gnus/gnus-art.el (article-display-face)
8376         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
8377         Use straight quoting in email.
8378         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
8379         Escape apostrophes in doc strings.
8381         Quoting fixes in lisp mail, mh-e, net, url
8382         * lisp/mail/emacsbug.el (report-emacs-bug)
8383         (report-emacs-bug-hook): Use straight quotes in outgoing email,
8384         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
8385         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
8386         * lisp/mail/rmailout.el (rmail-output-read-file-name):
8387         * lisp/net/imap.el (imap-interactive-login):
8388         * lisp/net/tls.el (open-tls-stream):
8389         * lisp/url/url-auth.el (url-register-auth-scheme):
8390         Respect ‘text-quoting-style’ in diagnostics.
8391         * lisp/mh-e/mh-e.el (mh-sortm-args):
8392         Quote docstring example using text quotes, not as a Lisp quote.
8394 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
8396         Fix some byte-compiler warnings in EDE
8397         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
8398         existing autoloader list, rather than add to it.
8399         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
8400         argument to eieio class constructor.
8401         (ede-show-supported-projects): New.
8402         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
8403         with (oref ... name).
8404         (ede-auto-load-project): Use slot name, not initarg key.
8405         * lisp/cedet/ede/generic.el (ede-generic-load)
8406         (ede-generic-find-matching-target): Use slot name, not initarg key.
8407         (ede-find-target): Use oref-default on class name.
8408         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
8409         class constructor.
8410         (ede-enable-generic-projects): Make project type names unique.
8412 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
8414         Fix directory accessibility tests for w32 network volumes
8415         * src/w32.c (faccessat): Don't fail with network volumes without a
8416         share.
8417         (w32_accessible_directory_p): Handle network volumes without a
8418         share.
8420         Fix handling long file names in readdir on MS-Windows
8421         * src/w32.c (sys_readdir): Append "\*" to the directory after
8422         converting it to UTF-16/ANSI, not before, to avoid overflowing the
8423         260-character limit on file names in filename_to_utf16/ansi.
8425         Make file-accessible-directory-p reliable on MS-Windows
8426         * src/w32.c (w32_accessible_directory_p): New function.
8427         * src/w32.h (w32_accessible_directory_p): Add prototype.
8428         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
8429         w32_accessible_directory_p to test a directory for accessibility
8430         by the current user.  (Bug#21346)
8431         (Ffile_accessible_directory_p): Remove the w32 specific caveat
8432         from the doc string.
8434 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
8436         Don't call do_pending_window_change in signal handlers (Bug#21380)
8437         * src/gtkutil.c (xg_frame_resized):
8438         * src/xterm.c (x_set_window_size):
8439         * src/w32term.c (x_set_window_size): Don't call
8440         do_pending_window_change.
8442 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8444         Quoting fixes in lisp/org
8445         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
8446         (org-tags-view):
8447         * lisp/org/org-capture.el (org-capture-mode)
8448         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
8449         (org-ctags-ask-append-topic):
8450         * lisp/org/org.el (org-time-string-to-time)
8451         (org-time-string-to-absolute):
8452         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
8453         (org-ctags-ask-append-topic):
8454         * lisp/org/org.el (org-time-string-to-time)
8455         (org-time-string-to-absolute):
8456         Respect ‘text-quoting-style’ in diagnostics.
8457         * lisp/org/org-agenda.el (org-agenda-custom-commands)
8458         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
8459         * lisp/org/org-capture.el (org-capture-fill-template):
8460         Avoid contraction in output file that might be ASCII.
8461         * lisp/org/org-compat.el (format-message):
8462         Define if not already defined, for backward compatibility.
8463         * lisp/org/org-src.el (org-edit-src-save):
8464         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
8465         Escape apostrophes in diagnostics.
8467         Treat “instead” strings as docstrings
8468         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
8469         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
8470         Substitute quotes in instead strings.
8472 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
8474         Better documentation of seq-let
8475         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
8476         documentation of seq-let.
8478 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8480         * lisp/international/ccl.el: Fix quoting.
8482         Quoting fixes in lisp/international and lisp/leim
8483         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
8484         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
8485         * lisp/international/mule-cmds.el:
8486         (select-safe-coding-system-interactively, leim-list-file-name):
8487         * lisp/international/quail.el (quail-use-package, quail-help):
8488         * lisp/international/titdic-cnv.el (tit-process-header)
8489         (miscdic-convert):
8490         Respect text quoting style in doc strings and diagnostics.
8491         * lisp/international/quail.el (lisp/international/quail.el):
8492         * lisp/leim/quail/ethiopic.el ("ethiopic"):
8493         Escape apostrophes in doc strings.
8495         Make ‘text-quoting-style’ a plain defvar
8496         It doesn’t need customization, as it’s likely useful only by experts.
8497         Suggested by Stefan Monnier in:
8498         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
8499         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
8501         Quoting fixes in lisp/textmodes
8502         * lisp/textmodes/bibtex.el (bibtex-validate)
8503         (bibtex-validate-globally, bibtex-search-entries):
8504         * lisp/textmodes/ispell.el (ispell-command-loop):
8505         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
8506         * lisp/textmodes/texinfmt.el (texinfmt-version)
8507         (texinfo-format-region, texinfo-format-buffer-1):
8508         * lisp/textmodes/two-column.el (2C-split):
8509         Respect text quoting style in doc strings and diagnostics.
8510         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
8511         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
8512         Escape apostrophes in doc strings.
8514         Documentation fixes re quotes
8515         Prefer curved quotes in examples if users will typically see
8516         curved quotes when the examples run.
8517         Mention format-message when appropriate.
8518         Don’t use @code in examples.
8519         Quote an apostrophe with @kbd.
8521         Quoting fixes in lisp/progmodes
8522         * lisp/progmodes/cc-engine.el (c-bos-report-error):
8523         * lisp/progmodes/cpp.el (cpp-edit-reset):
8524         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
8525         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
8526         (etags-tags-apropos, list-tags, tags-apropos):
8527         * lisp/progmodes/executable.el (executable-set-magic):
8528         * lisp/progmodes/octave.el (octave-sync-function-file-names)
8529         (octave-help, octave-find-definition-default-filename)
8530         (octave-find-definition):
8531         Respect text quoting style in doc strings and diagnostics.
8532         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
8533         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
8534         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
8535         Escape apostrophes in doc strings.
8536         * lisp/progmodes/cmacexp.el (c-macro-expansion):
8537         Use straight quoting in ASCII comment.
8538         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
8539         (idlwave-pad-keyword):
8540         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
8541         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
8542         (vhdl-electric-semicolon, vhdl-electric-comma)
8543         (vhdl-electric-period, vhdl-electric-equal):
8544         Use directed quotes in diagnostics and doc strings.
8546 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
8548         Minor documentation and NEWS tweak
8549         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
8550         Add an index entry.
8551         * etc/NEWS: Fix a typo in character-fold-to-regexp.
8553 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
8555         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
8556         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
8557         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
8558         Adapt test.
8560 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
8562         Text quoting fixes in cedet, emulation, emacs-lisp
8563         * lisp/cedet/ede.el (ede-check-project-directory):
8564         * lisp/cedet/semantic/analyze/debug.el
8565         (semantic-analyzer-debug-insert-include-summary):
8566         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
8567         * lisp/cedet/semantic/decorate/include.el
8568         (semantic-decoration-unknown-include-describe)
8569         (semantic-decoration-all-include-summary):
8570         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
8571         * lisp/emulation/edt.el (edt-load-keys):
8572         * lisp/emulation/viper-cmd.el
8573         (viper-display-current-destructive-command)
8574         (viper-query-replace, viper-brac-function):
8575         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
8576         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
8577         Respect text quoting style in doc string or diagnostic.
8578         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8579         Use format-message to avoid overtranslating quotes.
8580         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
8581         Escape an apostrophe in a docstring.
8582         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
8584 2015-08-29  Daniel Colascione  <dancol@dancol.org>
8586         Fix which-func for curly quotes: look for symbol, not message
8587         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
8588         imenu-unavailable error symbol instead of trying to match message
8589         exactly.
8590         * lisp/imenu.el (imenu-unavailable): New error.
8591         (imenu-unavailable-error): New function.
8593 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
8595         Fix Python tests on MS-Windows
8596         * test/automated/python-tests.el
8597         (python-shell-calculate-command-1): Run python-shell-interpreter
8598         through shell-quote-argument before comparing with what
8599         python-shell-calculate-command returns.
8600         (python-shell-calculate-pythonpath-1)
8601         (python-shell-calculate-pythonpath-2)
8602         (python-shell-calculate-process-environment-2): Use path-separator
8603         instead of a literal ':'.
8604         (python-shell-calculate-exec-path-2)
8605         (python-shell-calculate-exec-path-3)
8606         (python-shell-calculate-exec-path-4)
8607         (python-shell-with-environment-1)
8608         (python-shell-with-environment-2): Run "/env/bin" through
8609         expand-file-name before comparing with exec-path.  (Bug#21375)
8611 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8613         Use Core Text types/functions/variables/enumerators directly
8614         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
8615         (CharacterCollection): Remove typedefs.  All uses replaced with
8616         definitions.
8617         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
8618         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
8619         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
8620         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
8621         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
8622         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
8623         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
8624         definitions.
8625         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
8626         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
8627         (MAC_FONT_FORMAT_BITMAP)
8628         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
8629         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
8630         All uses replaced with definitions.
8631         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
8632         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
8633         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
8634         Add compatibility enumerators for older versions.
8635         (mac_font_descriptor_create_with_attributes)
8636         (mac_font_descriptor_create_matching_font_descriptors)
8637         (mac_font_descriptor_create_matching_font_descriptor)
8638         (mac_font_descriptor_copy_attribute)
8639         (mac_font_descriptor_supports_languages)
8640         (mac_font_create_with_name, mac_font_get_size)
8641         (mac_font_copy_family_name, mac_font_copy_character_set)
8642         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
8643         (mac_font_get_descent, mac_font_get_leading)
8644         (mac_font_get_underline_position)
8645         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
8646         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
8647         replaced with definitions.
8648         (mac_font_create_preferred_family_for_attributes)
8649         (mac_font_get_advance_width_for_glyph)
8650         (mac_font_get_bounding_rect_for_glyph)
8651         (mac_font_create_available_families, mac_font_shape):
8652         Remove macros for renamed functions.
8653         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
8654         * src/macterm.m (mac_font_descriptor_supports_languages):
8655         Rename from mac_ctfont_descriptor_supports_languages.
8656         (mac_font_create_preferred_family_for_attributes): Rename from
8657         mac_ctfont_create_preferred_family_for_attributes.
8658         (mac_font_get_advance_width_for_glyph): Rename from
8659         mac_ctfont_get_advance_width_for_glyph.
8660         Use kCTFontOrientationDefault also for older versions.
8661         (mac_font_get_bounding_rect_for_glyph): Rename from
8662         mac_ctfont_get_bounding_rect_for_glyph.
8663         Use kCTFontOrientationDefault also for older versions.
8664         (mac_font_create_available_families): Rename from
8665         mac_ctfont_create_available_families.
8666         (mac_font_equal_in_postscript_name): Rename from
8667         mac_ctfont_equal_in_postscript_name.  All uses changed.
8668         (mac_font_create_line_with_string_and_font): Rename from
8669         mac_ctfont_create_line_with_string_and_font.  All uses changed.
8670         (mac_font_shape): Rename from mac_ctfont_shape.
8671         (mac_font_family_compare): Remove unused declaration.
8673 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
8675         Fix minor text quoting in calc, calendar, vc
8676         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
8677         * lisp/calc/calc-help.el (calc-j-prefix-help):
8678         * lisp/calc/calc-misc.el (calc-help):
8679         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
8680         Escape an apostrophe in a docstring.
8681         * lisp/calc/calc-forms.el (calc-hms-notation):
8682         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
8683         Escape an apostrophe in a diagnostic.
8684         * lisp/calc/calc-misc.el (calc-help):
8685         * lisp/calendar/diary-lib.el (diary-include-files):
8686         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
8687         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
8688         * lisp/vc/ediff-diff.el (ediff-same-contents):
8689         * lisp/vc/ediff-merg.el (ediff-re-merge):
8690         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
8691         * lisp/vc/ediff-util.el (ediff-test-save-region)
8692         (ediff-status-info):
8693         * lisp/vc/ediff.el (ediff-merge-revisions)
8694         (ediff-merge-revisions-with-ancestor):
8695         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
8696         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
8697         Respect text quoting style in doc string or diagnostic.
8698         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
8699         * lisp/vc/add-log.el (change-log-goto-source):
8700         Avoid double-formatting.
8701         * lisp/vc/ediff-init.el (format-message):
8702         New backward-compatibility alias.
8704 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
8706         Fix minor text quoting problems in lisp top level
8707         * lisp/apropos.el (apropos-describe-plist):
8708         * lisp/cus-theme.el (customize-themes):
8709         * lisp/dired.el (dired-log):
8710         * lisp/help-fns.el (describe-variable):
8711         * lisp/hexl.el (hexl-insert-multibyte-char):
8712         * lisp/info.el (Info-finder-find-node):
8713         * lisp/json.el (json-read-string):
8714         * lisp/novice.el (disabled-command-function)
8715         (disabled-command-function):
8716         * lisp/startup.el (normal-mouse-startup-screen):
8717         * lisp/woman.el (WoMan-log, WoMan-warn):
8718         Respect text quoting style in doc string or diagnostic.
8719         * lisp/replace.el (replace-character-fold):
8720         * src/syntax.c (Fmodify_syntax_entry):
8721         Escape an apostrophe in a docstring.
8722         * lisp/tempo.el (tempo-define-template):
8723         Remove confusing apostrophe from docstring.
8724         * lisp/whitespace.el (whitespace-mark-x):
8725         Use directed quotes in docstring.
8727 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
8729         Fix indentation rule in css-mode
8730         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
8731         brackets in presence of pseudo-selectors.  (Bug#21328)
8733 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
8735         Fix a bug in recording a macro while flyspell-mode is active
8736         * lisp/subr.el (sit-for): Don't call read-event when recording a
8737         macro.  (Bug#21329)
8739 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
8741         Tweak startup screen quoting
8742         * lisp/startup.el (normal-splash-screen): Use standard
8743         "M-" abbrevation rather than a confusingly-different one.
8744         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
8746 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
8748         Add test case for ‘format’ bug and refactor
8749         * src/editfns.c (styled_format): Refactor internally, mostly by
8750         moving declarations closer to uses.  This should not affect behavior.
8751         * test/automated/textprop-tests.el (textprop-tests-format): New test.
8753         Fix ‘format’ bug with property offsets
8754         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
8755         bug in calculating string property offsets (Bug#21351).
8757         Use straight quotes in lib-src diagnostics
8758         These auxiliary programs can’t use Emacs’s text-quoting-style,
8759         and it’s too much trouble to redo that mechanism by hand.
8760         So just use straight quotes for now.
8761         * lib-src/ebrowse.c (main):
8762         * lib-src/emacsclient.c (decode_options, main):
8763         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
8764         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
8765         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
8766         (none_help, print_language_names, print_help, add_regex)
8767         (suggest_asking_for_help):
8768         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
8769         Use straight quotes in diagnostics.
8771         ‘text-quoting-style’ fixes for admin
8772         * admin/admin.el (cusver-scan, cusver-check):
8773         * admin/authors.el (authors-canonical-file-name):
8774         * admin/bzrmerge.el (bzrmerge-missing):
8775         Respect ‘text-quoting-style’ in diagnostics.
8777 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8779         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
8780         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
8781         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
8782         * doc/lispref/internals.texi (Writing Emacs Primitives):
8783         * etc/NEWS:
8784         Document the change.
8785         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
8786         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
8787         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
8788         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
8789         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
8790         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
8791         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
8792         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
8793         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
8794         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
8795         Remove.  All uses removed.  The code now assumes
8796         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
8797         * src/bytecode.c (relocate_byte_stack):
8798         Rename from unmark_byte_stack, since it now only relocates.
8799         All callers changed.
8800         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
8801         with GCPROs removed.
8802         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
8803         * test/automated/finalizer-tests.el (finalizer-basic)
8804         (finalizer-circular-reference, finalizer-cross-reference)
8805         (finalizer-error):
8806         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
8807         Remove tests, as they depend on gc-precise.
8809 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
8811         Improve seq-concatenate for new sequence types
8812         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
8813         ensure that concatenation happens on sequences only.  This makes it
8814         possible to use `seq-concatenate' for new types of seqs.
8815         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
8816         New function used in `seq-concatenate'.
8817         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
8818         for seq-into-sequence.
8820 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
8822         Add mode local overrides to xref-find-definitions
8823         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
8824         (xref-mode-local-overload): New; add mode local overrides to
8825         xref-find-definitions.
8826         * test/automated/elisp-mode-tests.el: Add mode local override tests.
8827         (xref-elisp-test-run): Handle indented defuns.
8828         (xref-elisp-generic-*): Improve doc strings.
8829         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
8830         (elisp--xref-find-definitions): Use it.
8832         Add mode local overrides to describe-function
8833         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8834         New; add mode local overrides to describe-function.
8835         * etc/NEWS: Document change.
8837 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8839         Prefer straight quoting in some etc text files
8840         These files are plain text and might be used by non-Emacs apps.
8841         They’re mostly ASCII, so just use straight quotes.
8843         Fix quoting in ‘message_with_string’
8844         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
8845         should work now.
8846         * src/xdisp.c (message_to_stderr): New function, refactored from
8847         part of ‘message3_nolog’.
8848         (message3_nolog): Use it.
8849         (message_with_string): Use it.  Don’t mishandle NUL bytes when
8850         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
8851         Use ‘format-message’, not ‘format’, so that quotes are translated.
8853 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
8855         Mention false positives of file-accessible-directory on w32
8856         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
8857         (Bug#21346)
8859 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8861         Treat error strings as help
8862         * src/print.c (print_error_message): Translate quotes and command
8863         keys in errmsg so that users see, e.g., "Symbol’s value as
8864         variable is void: foo" when text-quoting-style is curved.
8866 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
8868         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
8870 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8872         Top-level elisp files respect ‘text-quoting-style’
8873         In top-level elisp files, use format-message in diagnostic formats,
8874         so that they follow user preference as per ‘text-quoting-style’
8875         rather than being hard-coded to quote `like this'.
8876         * lisp/allout.el (allout-get-configvar-values):
8877         * lisp/apropos.el (apropos-symbols-internal):
8878         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
8879         (dired-do-create-files-regexp, dired-create-files-non-directory):
8880         * lisp/dired-x.el (dired-do-run-mail):
8881         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
8882         * lisp/disp-table.el (standard-display-european):
8883         * lisp/find-dired.el (find-dired):
8884         * lisp/forms.el (forms-mode):
8885         * lisp/ido.el (ido-buffer-internal):
8886         * lisp/info.el (Info-index-next):
8887         * lisp/outline.el (outline-invent-heading):
8888         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
8889         * lisp/proced.el (proced-log):
8890         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
8891         * lisp/recentf.el (recentf-open-files, recentf-save-list):
8892         * lisp/savehist.el (savehist-save):
8893         * lisp/server.el (server-ensure-safe-dir):
8894         * lisp/ses.el (ses-rename-cell):
8895         * lisp/simple.el (list-processes--refresh):
8896         * lisp/startup.el (command-line):
8897         * lisp/strokes.el (strokes-unset-last-stroke)
8898         (strokes-execute-stroke):
8899         Use format-message so that quotes are restyled.
8900         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
8901         Don’t quote ‘raised’.
8902         * lisp/descr-text.el (describe-char):
8903         * lisp/dirtrack.el (dirtrack-debug-message):
8904         * lisp/hexl.el (hexl-insert-multibyte-char):
8905         Apply substitute-command-keys to help string.
8906         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
8907         (wdired-do-perm-changes):
8908         Let dired-log do the formatting.
8910 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
8912         Go back to grave quoting in Tramp
8913         * lisp/net/tramp-adb.el:
8914         * lisp/net/tramp-cache.el:
8915         * lisp/net/tramp-compat.el:
8916         * lisp/net/tramp-gvfs.el:
8917         * lisp/net/tramp-gw.el:
8918         * lisp/net/tramp-sh.el:
8919         * lisp/net/tramp-smb.el:
8920         * lisp/net/tramp.el:
8921         Stick with grave quoting in diagnostics strings.  This is more
8922         portable to older Emacs, desirable for Tramp.
8923         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
8924         for diagnostic that needs requoting.
8925         * lisp/net/tramp-compat.el (format-message):
8926         Fall back on simple ‘format’, since that’s good enough now.
8928         Go back to grave quoting in Gnus
8929         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
8930         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
8931         (gnus-agent-fetch-headers):
8932         * lisp/gnus/gnus-int.el (gnus-start-news-server):
8933         * lisp/gnus/gnus-registry.el:
8934         (gnus-registry--split-fancy-with-parent-internal)
8935         (gnus-registry-post-process-groups):
8936         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
8937         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
8938         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
8939         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
8940         * lisp/gnus/spam.el (spam-check-blackholes):
8941         Stick with grave quoting in diagnostics strings.  This is more
8942         portable to older Emacs, desirable for Gnus.
8944         Fix customization of text-quoting-style
8945         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
8946         * lisp/wid-edit.el (widget-docstring):
8947         Get raw docstring here since it’s cooked later and should not be
8948         cooked twice.
8949         * lisp/cus-edit.el (custom-group-value-create):
8950         Cook the docstring before inserting it.
8951         * lisp/cus-start.el (text-quoting-style): Quote the customization
8952         docstrings according to the new rules.  Give curved examples.
8954         format-message now curves ` and '
8955         That way, the caller doesn’t have to use curved quotes to
8956         get diagnostics that match the text-quoting-style preferences.
8957         Suggested by Dmitry Gutov in:
8958         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
8959         This means we no longer need %qs, so remove that format.
8960         While we’re at it, fix an unlikely bug and lessen the pressure
8961         on the garbage collector by processing the string once rather
8962         than twice in the usual case.
8963         * doc/lispref/strings.texi (Formatting Strings):
8964         * etc/NEWS: Document this.
8965         * lisp/subr.el (format-message): Remove; now done in C.
8966         * src/callint.c (Fcall_interactively):
8967         * src/editfns.c (Fmessage, Fmessage_box):
8968         Use Fformat_message instead of Finternal__text_restyle
8969         followed by Fformat.
8970         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
8971         uLSQM and uRSQM.
8972         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
8973         when pure ASCII now suffices.  Fix unlikely bug when parsing
8974         unibyte string containing non-ASCII bytes.  Use inline code
8975         rather than memcpy, as it’s a tiny number of bytes.
8976         (Finternal__text_restyle): Remove; no longer used.
8977         (syms_of_doc): Don’t declare it.
8978         * src/editfns.c (Fformat): Rewrite in terms of new function
8979         ‘styled_format’.
8980         (Fformat_message): New function, moved here from subr.el.
8981         (styled_format): New function, with the old guts of Fformat,
8982         except it now optionally transliterates quotes, and it transliterates
8983         traditional grave accent and apostrophe quoting as well.
8984         Remove recently-added q flag; no longer needed or used.
8985         (syms_of_editfns): Define format-message.
8986         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
8987         Remove; no longer need to be global symbols.
8988         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
8989         so that callers can use `%s'.
8990         * src/image.c (image_size_error, xbm_load_image, xbm_load)
8991         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
8992         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
8993         (svg_load_image, gs_load, x_kill_gs_process):
8994         * src/lread.c (load_warn_old_style_backquotes):
8995         * src/xfaces.c (load_pixmap):
8996         * src/xselect.c (x_clipboard_manager_error_1):
8997         Use `%s' instead of %qs in formats.
8999 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
9001         Minor fixes in doc/emacs/search.texi
9002         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
9003         (Special Isearch): Use @w{} to generate several consecutive spaces
9004         with Texinfo 6.  (Bug#21345)
9006 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
9008         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
9009         (tramp-awk-coding-test): New defconsts.
9010         (tramp-remote-coding-commands): Use them.
9011         (tramp-find-inline-encoding): Check for Perl only if necessary.
9013 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
9015         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
9016         index entries for the special form `quote'.
9018 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9020         Spelling fixes
9022         Gnus format-message typo fix
9023         * lisp/gnus/gnus-util.el (gnus-format-message):
9024         Fix typo when running in older Emacs.
9026         Prefer directed to neutral quotes in docstings and diagnostics.
9027         In docstrings, escape apostrophes that would otherwise be translated
9028         to curved quotes using the newer, simpler rules.
9029         * admin/unidata/unidata-gen.el (unidata-gen-table):
9030         * lisp/align.el (align-region):
9031         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
9032         * lisp/bookmark.el (bookmark-default-annotation-text):
9033         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
9034         * lisp/calc/calc-lang.el (math-read-giac-subscr)
9035         (math-read-math-subscr):
9036         * lisp/calc/calc-misc.el (report-calc-bug):
9037         * lisp/calc/calc-prog.el (calc-fix-token-name)
9038         (calc-read-parse-table-part):
9039         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
9040         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
9041         * lisp/dabbrev.el (dabbrev-expand):
9042         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
9043         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
9044         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
9045         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
9046         * lisp/erc/erc-button.el (erc-nick-popup):
9047         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
9048         * lisp/eshell/em-dirs.el (eshell/cd):
9049         * lisp/eshell/em-glob.el (eshell-glob-regexp):
9050         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
9051         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
9052         * lisp/eshell/esh-opt.el (eshell-show-usage):
9053         * lisp/files-x.el (modify-file-local-variable):
9054         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
9055         (filesets-update-pre010505):
9056         * lisp/find-cmd.el (find-generic, find-to-string):
9057         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
9058         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
9059         (gnus-agent-fetch-headers):
9060         * lisp/gnus/gnus-int.el (gnus-start-news-server):
9061         * lisp/gnus/gnus-registry.el:
9062         (gnus-registry--split-fancy-with-parent-internal):
9063         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
9064         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
9065         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
9066         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
9067         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
9068         * lisp/gnus/spam.el (spam-check-blackholes):
9069         * lisp/mail/feedmail.el (feedmail-run-the-queue):
9070         * lisp/mpc.el (mpc-playlist-rename):
9071         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
9072         * lisp/net/mairix.el (mairix-widget-create-query):
9073         * lisp/net/tramp-cache.el:
9074         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
9075         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
9076         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
9077         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
9078         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
9079         (org-babel-goto-named-result):
9080         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
9081         * lisp/org/ob-ref.el (org-babel-ref-resolve):
9082         * lisp/org/org-agenda.el (org-agenda-prepare):
9083         * lisp/org/org-bibtex.el (org-bibtex-fields):
9084         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
9085         (org-clock-resolve):
9086         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
9087         * lisp/org/org-habit.el (org-habit-parse-todo):
9088         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
9089         (org-mouse-context-menu):
9090         * lisp/org/org-table.el (org-table-edit-formulas):
9091         * lisp/org/ox.el (org-export-async-start):
9092         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
9093         (dun-rooms, dun-endgame-questions):
9094         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
9095         * lisp/progmodes/ada-xref.el (ada-find-executable):
9096         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
9097         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
9098         (flymake-start-syntax-check-process):
9099         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
9100         * lisp/progmodes/sql.el (sql-comint):
9101         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
9102         * lisp/server.el (server-get-auth-key):
9103         * lisp/subr.el (version-to-list):
9104         * lisp/textmodes/reftex-ref.el (reftex-label):
9105         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
9106         * lisp/vc/ediff-diff.el (ediff-same-contents):
9107         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
9108         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
9109         Use directed rather than neutral quotes in diagnostics.
9111         Treat ' like ’ even when not matching `
9112         This is simpler and easier to explain, and should encourage better
9113         typography.  Do this in Electric Quote mode and when translating
9114         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
9115         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
9116         * doc/emacs/text.texi (Quotation Marks):
9117         * doc/lispref/help.texi (Keys in Documentation):
9118         * etc/NEWS:
9119         Document this.
9120         * lisp/electric.el (electric-quote-post-self-insert-function):
9121         * src/doc.c (Fsubstitute_command_keys):
9122         Always treat ' like ’ even when not matched by an open quote.
9124 2015-08-25  Glenn Morris  <rgm@gnu.org>
9126         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
9127         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
9129 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9131         * src/macfont.m (macfont_create_family_with_symbol):
9132         Accept localized names.
9134 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9136         Tramp diagnostics as per ‘text-quoting-style’
9137         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
9138         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
9139         (tramp-adb-handle-delete-directory)
9140         (tramp-adb-handle-delete-file)
9141         (tramp-adb-handle-file-local-copy)
9142         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
9143         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
9144         (tramp-adb-maybe-open-connection):
9145         * lisp/net/tramp-cache.el:
9146         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
9147         (tramp-compat-octal-to-decimal)
9148         (tramp-compat-coding-system-change-eol-conversion):
9149         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
9150         (tramp-gvfs-do-copy-or-rename-file)
9151         (tramp-gvfs-handle-delete-directory)
9152         (tramp-gvfs-handle-delete-file)
9153         (tramp-gvfs-handle-expand-file-name)
9154         (tramp-gvfs-handle-file-local-copy)
9155         (tramp-gvfs-handle-file-notify-add-watch)
9156         (tramp-gvfs-handle-make-directory)
9157         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
9158         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
9159         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
9160         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
9161         (tramp-sh-handle-set-visited-file-modtime)
9162         (tramp-sh-handle-set-file-modes)
9163         (tramp-sh-handle-file-name-all-completions)
9164         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
9165         (tramp-do-copy-or-rename-file-directly)
9166         (tramp-do-copy-or-rename-file-out-of-band)
9167         (tramp-sh-handle-make-directory)
9168         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
9169         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
9170         (tramp-sh-handle-start-file-process)
9171         (tramp-sh-handle-file-local-copy)
9172         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
9173         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
9174         (tramp-find-file-exists-command, tramp-open-shell)
9175         (tramp-find-shell)
9176         (tramp-open-connection-setup-interactive-shell)
9177         (tramp-find-inline-encoding, tramp-find-inline-compress)
9178         (tramp-compute-multi-hops, tramp-maybe-open-connection)
9179         (tramp-wait-for-output, tramp-send-command-and-check)
9180         (tramp-send-command-and-read, tramp-get-remote-path)
9181         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
9182         (tramp-get-ls-command-with-quoting-style)
9183         (tramp-get-test-command, tramp-get-remote-ln)
9184         (tramp-get-remote-perl, tramp-get-remote-stat)
9185         (tramp-get-remote-readlink, tramp-get-remote-trash)
9186         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
9187         (tramp-get-remote-inotifywait, tramp-get-remote-id)
9188         (tramp-get-remote-python):
9189         * lisp/net/tramp-smb.el (tramp-smb-errors)
9190         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
9191         (tramp-smb-handle-delete-directory)
9192         (tramp-smb-handle-delete-file)
9193         (tramp-smb-handle-file-local-copy)
9194         (tramp-smb-handle-make-directory)
9195         (tramp-smb-handle-make-directory-internal)
9196         (tramp-smb-handle-make-symbolic-link)
9197         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
9198         (tramp-smb-handle-set-file-modes)
9199         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
9200         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
9201         (tramp-process-actions):
9202         Generate diagnostics according to ‘text-quoting-style’, by
9203         using curved quotes in format strings and ‘format-message’
9204         when appropriate.
9205         * lisp/net/tramp-compat.el (format-message):
9206         Define a replacement, if it’s an older version of Emacs
9207         that doesn’t have it already.
9209         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
9211 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
9213         Fix documentation for `save-excursion'
9214         * doc/lispref/positions.texi (Excursions):
9215         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
9216         (Template for save-excursion, Point and mark): `save-excursion'
9217         does not save&restore the mark any more.
9219 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
9221         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
9222         New defconsts.
9223         (tramp-do-file-attributes-with-stat)
9224         (tramp-do-directory-files-and-attributes-with-stat): Use them.
9225         (tramp-convert-file-attributes): Remove double slashes in symlinks.
9226         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
9227         Handle symlinks with "//" in the file name.
9229         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
9231 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
9233         Fix cl-subseq and cl-concatenate
9234         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
9235         seq functions.
9236         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
9237         seq-concatenate.
9239 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
9241         Fix full-screen code when there is no window manager (Bug#21317)
9242         * src/xterm.h (x_wm_supports): Declare external.
9243         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
9244         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
9245         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
9246         `fullscreen' frame parameter.
9247         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
9248         without a window manager.
9250 2015-08-24  Glenn Morris  <rgm@gnu.org>
9252         * lisp/version.el (emacs-version): No longer include build host.
9253         * doc/lispref/intro.texi (Version Info): Update example.
9255 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9257         * doc/lispref/elisp.texi: Fix typo in previous change.
9259         More-conservative ‘format’ quote restyling
9260         Instead of restyling curved quotes for every call to ‘format’,
9261         create a new function ‘format-message’ that does the restyling,
9262         and using the new function instead of ‘format’ only in contexts
9263         where this seems appropriate.
9264         Problem reported by Dmitry Gutov and Andreas Schwab in:
9265         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
9266         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
9267         * doc/lispref/commands.texi (Using Interactive):
9268         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
9269         * doc/lispref/display.texi (Displaying Messages, Progress):
9270         * doc/lispref/elisp.texi:
9271         * doc/lispref/help.texi (Keys in Documentation):
9272         * doc/lispref/minibuf.texi (Minibuffer Misc):
9273         * doc/lispref/strings.texi (Formatting Strings):
9274         * etc/NEWS:
9275         Document the changes.
9276         * lisp/abbrev.el (expand-region-abbrevs):
9277         * lisp/apropos.el (apropos-library):
9278         * lisp/calc/calc-ext.el (calc-record-message)
9279         (calc-user-function-list):
9280         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
9281         * lisp/calc/calc-lang.el (math-read-big-balance):
9282         * lisp/calc/calc-store.el (calc-edit-variable):
9283         * lisp/calc/calc-units.el (math-build-units-table-buffer):
9284         * lisp/calc/calc-yank.el (calc-edit-mode):
9285         * lisp/calendar/icalendar.el (icalendar-export-region)
9286         (icalendar--add-diary-entry):
9287         * lisp/cedet/mode-local.el (mode-local-print-binding)
9288         (mode-local-describe-bindings-2):
9289         * lisp/cedet/semantic/complete.el (semantic-completion-message):
9290         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
9291         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
9292         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
9293         * lisp/descr-text.el (describe-text-properties-1, describe-char):
9294         * lisp/dframe.el (dframe-message):
9295         * lisp/dired-aux.el (dired-query):
9296         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
9297         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
9298         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
9299         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
9300         (cconv-analyze-form):
9301         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
9302         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
9303         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
9304         * lisp/emacs-lisp/edebug.el (edebug-format):
9305         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
9306         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
9307         (eldoc-message):
9308         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
9309         * lisp/emacs-lisp/find-func.el (find-function-library):
9310         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
9311         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
9312         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
9313         * lisp/emacs-lisp/package.el (package-compute-transaction)
9314         (package-install-button-action, package-delete-button-action)
9315         (package-menu--list-to-prompt):
9316         * lisp/emacs-lisp/timer.el (timer-event-handler):
9317         * lisp/emacs-lisp/warnings.el (lwarn, warn):
9318         * lisp/emulation/viper-cmd.el:
9319         (viper-toggle-parse-sexp-ignore-comments)
9320         (viper-kill-buffer, viper-brac-function):
9321         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
9322         * lisp/facemenu.el (facemenu-add-new-face):
9323         * lisp/faces.el (face-documentation, read-face-name)
9324         (face-read-string, read-face-font, describe-face):
9325         * lisp/files.el (find-alternate-file, hack-local-variables)
9326         (hack-one-local-variable--obsolete, write-file)
9327         (basic-save-buffer, delete-directory):
9328         * lisp/format.el (format-write-file, format-find-file)
9329         (format-insert-file):
9330         * lisp/help-fns.el (help-fns--key-bindings)
9331         (help-fns--compiler-macro, help-fns--obsolete)
9332         (help-fns--interactive-only, describe-function-1)
9333         (describe-variable):
9334         * lisp/help.el (describe-mode):
9335         * lisp/info-xref.el (info-xref-output):
9336         * lisp/info.el (Info-virtual-index-find-node)
9337         (Info-virtual-index, info-apropos):
9338         * lisp/international/kkc.el (kkc-error):
9339         * lisp/international/mule-cmds.el:
9340         (select-safe-coding-system-interactively)
9341         (select-safe-coding-system, describe-input-method):
9342         * lisp/international/mule-conf.el (code-offset):
9343         * lisp/international/mule-diag.el (describe-character-set)
9344         (list-input-methods-1):
9345         * lisp/international/quail.el (quail-error):
9346         * lisp/minibuffer.el (minibuffer-message):
9347         * lisp/mpc.el (mpc--debug):
9348         * lisp/msb.el (msb--choose-menu):
9349         * lisp/net/ange-ftp.el (ange-ftp-message):
9350         * lisp/net/gnutls.el (gnutls-message-maybe):
9351         * lisp/net/newst-backend.el (newsticker--sentinel-work):
9352         * lisp/net/newst-treeview.el (newsticker--treeview-load):
9353         * lisp/net/nsm.el (nsm-query-user):
9354         * lisp/net/rlogin.el (rlogin):
9355         * lisp/net/soap-client.el (soap-warning):
9356         * lisp/net/tramp.el (tramp-debug-message):
9357         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
9358         * lisp/nxml/nxml-parse.el (nxml-parse-error):
9359         * lisp/nxml/rng-cmpct.el (rng-c-error):
9360         * lisp/nxml/rng-match.el (rng-compile-error):
9361         * lisp/nxml/rng-uri.el (rng-uri-error):
9362         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
9363         * lisp/org/org-ctags.el:
9364         (org-ctags-ask-rebuild-tags-file-then-find-tag):
9365         * lisp/proced.el (proced-log):
9366         * lisp/progmodes/ebnf2ps.el (ebnf-log):
9367         * lisp/progmodes/flymake.el (flymake-log):
9368         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
9369         * lisp/replace.el (occur-1):
9370         * lisp/simple.el (execute-extended-command)
9371         (undo-outer-limit-truncate, define-alternatives):
9372         * lisp/startup.el (command-line):
9373         * lisp/subr.el (error, user-error, add-to-list):
9374         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
9375         (tutorial--find-changed-keys):
9376         * src/callint.c (Fcall_interactively):
9377         * src/editfns.c (Fmessage, Fmessage_box):
9378         Restyle the quotes of format strings intended for use as a
9379         diagnostic, when restyling seems appropriate.
9380         * lisp/subr.el (format-message): New function.
9381         * src/doc.c (Finternal__text_restyle): New function.
9382         (syms_of_doc): Define it.
9384 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9386         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
9388 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9390         python.el: Fix python-shell-buffer-substring on indented code
9391         (Bug#21086)
9392         * lisp/progmodes/python.el (python-shell-buffer-substring):
9393         Respect current line indentation when calculating string.
9394         * test/automated/python-tests.el
9395         (python-shell-buffer-substring-10)
9396         (python-shell-buffer-substring-11)
9397         (python-shell-buffer-substring-12): New tests.
9399 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9401         Fix minor glitches from ‘format’ reversion
9402         * doc/lispref/strings.texi (Formatting Strings):
9403         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
9404         Documentation’, not below.
9405         * src/syntax.c (Finternal_describe_syntax_value):
9406         Prefer AUTO_STRING to build_string where either will do, as
9407         AUTO_STRING is a bit faster.
9409 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9411         python.el: Defer shell setup code until first interactive prompt
9412         * lisp/progmodes/python.el
9413         (python-shell-comint-watch-for-first-prompt-output-filter):
9414         New function.
9415         (inferior-python-mode): Use it.
9416         (python-shell-first-prompt-hook): New hook.
9417         (python-shell-send-setup-code)
9418         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
9419         this hook instead of inferior-python-hook.
9421 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
9423         Remove the calls to `seq-into` from `seq-concatenate`
9424         Since most new types of seq would have to be defined as sequences (cons
9425         cells or CL structs, mostly), there is no need to convert the seqs to
9426         sequences (which can be a fairly expensive operation).
9427         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
9428         sequences.
9430 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9432         python.el: Fix completion for pdb interactions
9433         * lisp/progmodes/python.el (python-shell-completion-setup-code):
9434         Simplify.  Toggle print_mode for native wrapped completer.
9435         (python-shell-completion-native-setup): Ensure process buffer.
9436         Add print_mode attribute to completer wrapper to toggle returning
9437         or printing candidates.
9438         (python-shell-completion-native-get-completions): Cleanup.
9439         (python-shell-completion-get-completions): Cleanup.
9440         (python-shell-completion-at-point): Perform prompt checks.
9441         Force fallback completion in pdb interactions.
9443 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
9445         Make seq.el more extensible by using cl-defmethod
9446         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
9447         make it easier to extend seq.el with new "seq types".
9448         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
9449         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
9450         subseq in cl-extra.el, and use it in seq.el.
9452 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9454         python.el: Fix prompt detection with user overridden interpreter
9455         * lisp/progmodes/python.el (python-shell-prompt-detect):
9456         Honor buffer local python-shell-interpreter and
9457         python-shell-interpreter-interactive-arg.
9459 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
9461         Support exec-directory with non-ASCII characters on Windows
9462         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
9463         in the system's ANSI codepage, when it is used for invoking
9464         cmdproxy.
9466 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
9468         Revert "Extend ‘format’ to translate curved quotes"
9469         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
9471         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
9472         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
9474 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
9476         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
9477         Clarify "invisible window".
9479 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
9481         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
9482         magic-fallback-mode-alist.
9484 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9486         python.el: fallback completion, ffap and eldoc setup enhancements
9487         Setup codes are now sent continuously so that the current frame is
9488         always taken into account.  This allows working within debuggers
9489         and always keeping a fresh version of setup codes that will return
9490         proper results.
9491         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
9492         (python-shell-send-setup-code): Send code only when
9493         python-shell-setup-codes is non-nil.
9494         (python-shell-completion-string-code): Cleanup trailing newline.
9495         (python-shell-completion-get-completions): Always use
9496         python-shell-completion-setup-code.
9497         (python-ffap-setup-code): Work with any object, not only modules.
9498         (python-ffap-string-code): Cleanup trailing newline.
9499         (python-ffap-module-path): Always use python-ffap-setup-code.
9500         (python-eldoc-string-code): Cleanup trailing newline.
9501         (python-eldoc--get-doc-at-point): Always use
9502         python-eldoc-setup-code.  Return non-nil only if docstring is
9503         found.
9505         python.el: Increase native completion robustness
9506         * lisp/progmodes/python.el (python-shell-completion-native-setup):
9507         Make completer print real candidates and just return dummy ones to
9508         avoid input modification.
9509         (python-shell-completion-native-get-completions): Set
9510         comint-redirect-insert-matching-regexp to non-nil and make
9511         comint-redirect-finished-regexp match the last dummy candidate.
9512         Use python-shell-accept-process-output to wait for the full list
9513         of candidates.
9515 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9517         Fix invocation of programs via cmdproxy.exe
9518         * src/w32proc.c (sys_spawnve): Use exec-directory, not
9519         invocation-directory, for finding cmdproxy.exe.  When Emacs is
9520         run from the source tree, look for cmdproxy.exe in the same source
9521         tree.  (Bug#21323)
9523 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
9525         Handle comments inside unquoted URIs in css-mode
9526         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
9527         (css-syntax-propertize-function): New defconst.
9528         (css--font-lock-keywords): Handle parens around unquoted URIs.
9529         (css-mode): Set `syntax-propertize-function'.
9531 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9533         Support invocation of Hunspell with multiple dictionaries
9534         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
9535         Support lists of dictionaries of the form "DICT1,DICT2,...".
9536         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
9538         Minor formatting changes in ispell.el
9539         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
9540         (ispell-print-if-debug, ispell-aspell-find-dictionary)
9541         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
9542         (ispell-hunspell-dictionary-alist)
9543         (ispell-hunspell-fill-dictionary-entry)
9544         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
9545         (ispell-buffer-with-debug, ispell-complete-word)
9546         (ispell-current-dictionary, ispell-current-personal-dictionary)
9547         (ispell-accept-output, ispell-minor-mode)
9548         (ispell-personal-dictionary, ispell-dictionary-alist)
9549         (ispell-really-aspell, ispell-really-hunspell)
9550         (ispell-encoding8-command, ispell-aspell-supports-utf8)
9551         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
9552         Fix whitespace, inconsistent capitalization, and arguments in doc
9553         strings.
9555 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
9557         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
9558         function refused to resize a size-preserved window.
9560 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9562         * doc/lispref/windows.texi (Selecting Windows): Improve
9563         documentation and indexing of 'window-use-time'.
9565 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9567         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
9568         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
9569         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
9570         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
9571         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
9572         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
9573         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
9574         Fix up commenting style.
9576 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9578         text-quoting-style in emacs-lisp diagnostics
9579         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
9580         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
9581         (ad-disable-advice, ad-remove-advice, ad-set-argument)
9582         (ad-set-arguments):
9583         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
9584         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
9585         (byte-optimize-while, byte-optimize-apply):
9586         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
9587         (byte-compile-log-file, byte-compile-format-warn)
9588         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
9589         (byte-compile-cl-warn)
9590         (byte-compile-warn-about-unresolved-functions)
9591         (byte-compile-file, byte-compile-fix-header)
9592         (byte-compile--declare-var, byte-compile-file-form-defmumble)
9593         (byte-compile-form, byte-compile-normal-call)
9594         (byte-compile-variable-ref, byte-compile-variable-set)
9595         (byte-compile-subr-wrong-args, byte-compile-setq-default)
9596         (byte-compile-negation-optimizer)
9597         (byte-compile-condition-case--old)
9598         (byte-compile-condition-case--new, byte-compile-save-excursion)
9599         (byte-compile-defvar, byte-compile-autoload)
9600         (byte-compile-lambda-form)
9601         (byte-compile-make-variable-buffer-local, display-call-tree)
9602         (batch-byte-compile):
9603         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
9604         (cconv-analyze-form):
9605         * lisp/emacs-lisp/chart.el (chart-space-usage):
9606         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
9607         (check-declare-warn, check-declare-file)
9608         (check-declare-directory):
9609         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
9610         (checkdoc-message-text-engine):
9611         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
9612         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
9613         (cl-symbol-macrolet):
9614         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
9615         * lisp/emacs-lisp/copyright.el (copyright)
9616         (copyright-update-directory):
9617         * lisp/emacs-lisp/edebug.el (edebug-read-list):
9618         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
9619         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
9620         (eieio-oref, eieio-oset-default):
9621         * lisp/emacs-lisp/eieio-speedbar.el:
9622         (eieio-speedbar-child-make-tag-lines)
9623         (eieio-speedbar-child-description):
9624         * lisp/emacs-lisp/eieio.el (defclass, change-class):
9625         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
9626         (elint-init-form, elint-check-defalias-form)
9627         (elint-check-let-form):
9628         * lisp/emacs-lisp/ert.el (ert-get-test):
9629         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
9630         (find-function-library):
9631         * lisp/emacs-lisp/generator.el (iter-yield):
9632         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
9633         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
9634         * lisp/emacs-lisp/package-x.el (package-upload-file):
9635         * lisp/emacs-lisp/package.el (package-version-join)
9636         (package-disabled-p, package-activate-1, package-activate)
9637         (package--download-one-archive)
9638         (package--download-and-read-archives)
9639         (package-compute-transaction, package-install-from-archive)
9640         (package-install, package-install-selected-packages)
9641         (package-delete, package-autoremove)
9642         (package-install-button-action, package-delete-button-action)
9643         (package-menu-hide-package, package-menu--list-to-prompt)
9644         (package-menu--perform-transaction)
9645         (package-menu--find-and-notify-upgrades):
9646         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
9647         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
9648         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
9649         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
9650         * lisp/emacs-lisp/smie.el (smie-config-save):
9651         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
9652         * lisp/emacs-lisp/testcover.el (testcover-1value):
9653         Use curved quotes in diagnostic format strings.
9655 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9657         python.el: Ensure remote process-environment on non-interactive processes
9658         * lisp/progmodes/python.el
9659         (python-shell-tramp-refresh-process-environment): New function.
9660         (python-shell-with-environment): Use it.
9661         * test/automated/python-tests.el (python-shell-with-environment-2):
9662         Update.
9664         python.el: Enhancements to process environment setup.
9665         * lisp/progmodes/python.el (python-shell-process-environment)
9666         (python-shell-extra-pythonpaths, python-shell-exec-path)
9667         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
9668         (python-shell-setup-codes): Remove :safe.
9669         (python-shell-remote-exec-path): New defcustom.
9670         (python-shell--add-to-path-with-priority): New macro.
9671         (python-shell-calculate-pythonpath): Give priority to
9672         python-shell-extra-pythonpaths.  Update docstring.
9673         (python-shell-calculate-process-environment): Give priority to
9674         python-shell-process-environment.  Update docstring.
9675         (python-shell-calculate-exec-path): Give priority to
9676         python-shell-exec-path and calculated virtualenv bin directory.
9677         Update docstring.
9678         (python-shell-tramp-refresh-remote-path): New function.
9679         (python-shell-with-environment): Use it when working remotely and
9680         do not modify tramp-remote-path.  Allow nesting.
9681         (python-shell-calculate-command): Remove useless
9682         python-shell-with-environment call.
9683         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
9684         (python-shell-calculate-pythonpath-2)
9685         (python-shell-calculate-process-environment-6)
9686         (python-shell-calculate-process-environment-7)
9687         (python-shell-calculate-process-environment-8)
9688         (python-shell-calculate-exec-path-3)
9689         (python-shell-calculate-exec-path-4)
9690         (python-shell-calculate-exec-path-5)
9691         (python-shell-calculate-exec-path-6)
9692         (python-shell-with-environment-3): New tests.
9693         (python-shell-calculate-process-environment-2)
9694         (python-shell-calculate-process-environment-3)
9695         (python-shell-calculate-process-environment-4)
9696         (python-shell-calculate-process-environment-5)
9697         (python-shell-calculate-exec-path-1)
9698         (python-shell-calculate-exec-path-2)
9699         (python-shell-with-environment-1)
9700         (python-shell-with-environment-2): Update and simplify.
9702 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9704         Avoid hard-coding "M-x command" in docstrings
9705         * lisp/calendar/todo-mode.el (todo-mode):
9706         * lisp/desktop.el (desktop-save-mode):
9707         * lisp/edmacro.el (edit-kbd-macro):
9708         * lisp/emacs-lisp/package.el (package-menu-execute):
9709         * lisp/emulation/viper-cmd.el (viper-ask-level):
9710         * lisp/emulation/viper-init.el (viper-expert-level):
9711         * lisp/filesets.el (filesets-add-buffer):
9712         * lisp/follow.el (follow-mode):
9713         * lisp/gnus/auth-source.el (auth-sources):
9714         * lisp/international/ogonek.el (ogonek-informacja)
9715         (ogonek-information):
9716         * lisp/net/tramp.el (tramp-process-actions):
9717         * lisp/org/org-gnus.el (org-gnus-no-new-news):
9718         * lisp/org/org.el (org-ellipsis):
9719         * lisp/progmodes/python.el (python-shell-get-process-or-error):
9720         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
9721         * lisp/server.el (server-start):
9722         * lisp/type-break.el (type-break-noninteractive-query):
9723         * lisp/userlock.el (ask-user-about-supersession-help):
9724         * lisp/whitespace.el (whitespace-report-region):
9725         Prefer (substitute-command-keys "`\\[foo-command]'")
9726         to "`M-x foo-command'" in docstrings and the like.
9728 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
9730         Use add-function for prettify-symbols-compose-predicate
9731         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
9732         prettify-symbols-compose-predicate in terms of add-function.
9733         * etc/NEWS: Mention prettify-symbols-compose-predicate and
9734         prettify-symbols-mode support in tex-mode.
9736 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9738         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
9739         (smie-indent-exps, smie-indent-keyword): Use it.
9740         * test/indent/css-mode.css: Test alignment with leading comment.
9742 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9744         Respect text-quoting-style in (*Finder*) menus
9745         * lisp/info.el (info--prettify-description):
9746         Treat description as a docstring, so that it's requoted as
9747         per text-quoting-style.
9749 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
9751         Document `window-use-time' in Elisp manual
9752         * doc/lispref/windows.texi (Selecting Windows): Document
9753         `window-use-time'.
9755 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9757         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
9758         This is a cleaner fix for Bug#21260 than the previous change.
9760 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9762         Respect text-quoting-style in calc
9763         In calc, tespect text-quoting-style preference in diagnostic
9764         formats and fix a few similar problems in docstrings.
9765         * lisp/calc/calc-aent.el (math-read-factor):
9766         * lisp/calc/calc-embed.el (calc-do-embedded):
9767         * lisp/calc/calc-ext.el (calc-user-function-list)
9768         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
9769         * lisp/calc/calc-help.el (calc-describe-key)
9770         (calc-describe-thing):
9771         * lisp/calc/calc-lang.el (calc-c-language)
9772         (math-parse-fortran-vector-end, math-parse-tex-sum)
9773         (math-parse-eqn-matrix, math-parse-eqn-prime)
9774         (calc-yacas-language, calc-maxima-language, calc-giac-language)
9775         (math-read-big-rec, math-read-big-balance):
9776         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
9777         (calc-auto-recompute):
9778         * lisp/calc/calc-prog.el (calc-user-define-invocation)
9779         (math-do-arg-check):
9780         * lisp/calc/calc-store.el (calc-edit-variable):
9781         * lisp/calc/calc-units.el (math-build-units-table-buffer):
9782         * lisp/calc/calc-vec.el (math-read-brackets):
9783         * lisp/calc/calc-yank.el (calc-edit-mode):
9784         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
9785         Use curved quotes in diagnostic format strings.
9786         * lisp/calc/calc-help.el (calc-describe-thing):
9787         Format docstrings with substitute-command-keys.
9788         * lisp/calc/calc-help.el (calc-j-prefix-help):
9789         * lisp/calc/calc-misc.el (calc-help):
9790         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
9791         Escape a docstring "`".
9793 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9795         Fix documentation of 'menu-set-font' and 'set-frame-font'
9796         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
9797         * doc/lispref/frames.texi (Frame Font): Document that
9798         set-frame-font with the last argument 't' will also make the font
9799         the default for the future GUI frames.
9801         Document '--create-frame' option to emacsclient
9802         * doc/emacs/misc.texi (emacsclient Options): Document the
9803         '--create-frame' option.  (Bug#21308)
9805 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9807         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
9809 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9811         Document 'get-mru-window' in the ELisp manual
9812         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
9813         'get-mru-window'.  (Bug#21306)
9815         Clarify documentation of 'get-buffer-window-list'
9816         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
9817         current window, if relevant, will be the first in the list
9818         returned by 'get-buffer-window-list'.
9819         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
9821 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
9823         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
9824         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
9825         `switch-to-buffer'.
9827 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
9829         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
9830         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
9831         `display-buffer' instead of `switch-to-buffer'.
9833 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9835         Follow user preference in calendar diagnostics
9836         Respect text-quoting-style preference in diagnostic formats by
9837         using curved quotes (which are translated as per text-quoting-style)
9838         instead of grave accent and apostrophe (which are not).
9839         * lisp/calendar/appt.el (appt-display-message):
9840         * lisp/calendar/diary-lib.el (diary-check-diary-file)
9841         (diary-mail-entries, diary-from-outlook):
9842         * lisp/calendar/icalendar.el (icalendar-export-region)
9843         (icalendar--convert-float-to-ical)
9844         (icalendar--convert-date-to-ical)
9845         (icalendar--convert-ical-to-diary)
9846         (icalendar--convert-recurring-to-diary)
9847         (icalendar--add-diary-entry):
9848         * lisp/calendar/time-date.el (format-seconds):
9849         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
9850         (timeclock-make-hours-explicit):
9851         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
9852         (todo-item-mark, todo-check-format)
9853         (todo-insert-item--next-param, todo-edit-item--next-key)
9854         (todo-mode):
9855         Use curved quotes in diagnostic format strings.
9856         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
9857         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
9858         Just use straight quoting for simple test case.
9860 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
9862         * src/gfilenotify.c (Fgfile_add_watch):
9863         Handle errors from g_file_monitor.
9865 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
9867         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
9868         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
9869         frame" instead of "non-minibuffer frame".
9871         Fix frame geometry related text
9872         * doc/lispref/frames.texi (Frame Layout):
9873         Rename `x-frame-geometry' to `frame-geometry'.
9874         * doc/lispref/frames.texi (Mouse Position):
9875         * doc/lispref/windows.texi (Coordinates and Windows):
9876         Use `set-mouse-absolute-pixel-position' instead of
9877         `x-set-mouse-absolute-pixel-position'.
9879         Sanitize frame geometry related functions
9880         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
9881         (Fx_frame_edges): Rename to Fns_frame_edges.
9882         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
9883         (Fx_frame_edges): Rename to Fw32_frame_edges.
9884         (Fx_mouse_absolute_pixel_position): Rename to
9885         Fw32_mouse_absolute_pixel_position.
9886         (Fx_set_mouse_absolute_pixel_position): Rename to
9887         Fw32_set_mouse_absolute_pixel_position.
9888         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
9889         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
9890         (ns-frame-edges, w32-mouse-absolute-pixel-position)
9891         (x-mouse-absolute-pixel-position)
9892         (w32-set-mouse-absolute-pixel-position)
9893         (x-set-mouse-absolute-pixel-position): Declare.
9894         (frame-geometry, mouse-absolute-pixel-position)
9895         (set-mouse-absolute-pixel-position): New functions.
9896         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
9898 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9900         Fix MinGW64 build broken by latest w32uniscribe.c changes
9901         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
9902         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
9903         (Bug#21260)
9905 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
9907         Add TeX defaults for prettify-symbol-mode
9908         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
9909         Rename from tex-prettify-symbols-alist.
9910         (tex--prettify-symbols-compose-p): New function.
9911         (tex-common-initialization): Use them as prettify-symbols-alist
9912         and prettify-symbols-compose-predicate.
9914         Generalize prettify-symbols to arbitrary modes
9915         * lisp/progmodes/prog-mode.el
9916         (prettify-symbols-default-compose-p): New function.
9917         (prettify-symbols-compose-predicate): New variable.
9918         (prettify-symbols--compose-symbol): Use it.
9920 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
9922         Don't quote symbols 'like-this' in docstrings etc.
9923         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
9924         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
9925         * lisp/allout.el (allout-add-resumptions, allout-mode):
9926         * lisp/calculator.el (calculator-operators):
9927         * lisp/cedet/data-debug.el (dd-propertize):
9928         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
9929         * lisp/cedet/semantic/analyze/debug.el:
9930         (semantic-analyzer-debug-global-miss-text):
9931         * lisp/cedet/semantic/lex-spp.el:
9932         (semantic-lex-spp-replace-or-symbol-or-keyword):
9933         * lisp/cedet/semantic/symref.el:
9934         (semantic-symref-cleanup-recent-buffers-fcn):
9935         * lisp/cedet/semantic/tag.el (semantic-tag-class):
9936         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
9937         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
9938         * lisp/gnus/pop3.el (pop3-authentication-scheme):
9939         * lisp/help-fns.el (describe-function-orig-buffer):
9940         * lisp/imenu.el (imenu--history-list):
9941         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
9942         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
9943         (feedmail-queue-default-file-slug)
9944         (feedmail-queue-buffer-file-name):
9945         * lisp/net/mairix.el (mairix-searches-mode-map):
9946         * lisp/net/newst-backend.el (newsticker-retrieval-method)
9947         (newsticker-auto-mark-filter-list):
9948         * lisp/obsolete/vi.el (vi-mode):
9949         * lisp/progmodes/cc-engine.el (c-literal-type):
9950         * lisp/progmodes/cpp.el (cpp-face):
9951         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
9952         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
9953         * lisp/progmodes/pascal.el (pascal-auto-lineup):
9954         * lisp/progmodes/prog-mode.el (prog-widen):
9955         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
9956         (verilog-auto-lineup, verilog-auto-reset-widths)
9957         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
9958         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
9959         (flyspell-maybe-correct-doubling):
9960         * lisp/textmodes/table.el (table-justify, table-justify-cell)
9961         (table-justify-row, table-justify-column, table-insert-sequence)
9962         (table--justify-cell-contents):
9963         * lisp/url/url-auth.el (url-get-authentication):
9964         * lisp/window.el (display-buffer-record-window):
9965         * lisp/xml.el (xml-parse-file, xml-parse-region):
9966         * src/gfilenotify.c (Fgfile_add_watch):
9967         Don't quote symbols with apostrophes in doc strings.
9968         Use asymmetric quotes instead.
9969         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
9970         Likewise for symbol in diagnostic.
9971         * lisp/image.el (image-extension-data):
9972         * lisp/register.el (frame-configuration-to-register):
9973         * src/buffer.c (syms_of_buffer):
9974         Remove bogus apostrophes after symbols.
9975         * lisp/thumbs.el (thumbs-conversion-program):
9976         Quote Lisp string values using double-quotes, not apostrophes.
9978 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
9980         Describe frame geometry and related functions in Elisp manual
9981         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
9982         (Showing Images): Update references.
9983         * doc/lispref/elisp.texi (Top): Update node listing.
9984         * doc/lispref/frames.texi (Frame Geometry): New node.
9985         Move `Size and Position' section here.
9986         (Size Parameters): Update references.
9987         (Mouse Position): Update references and nomenclature.
9988         Describe new functions `x-mouse-absolute-pixel-position' and
9989         `x-set-mouse-absolute-pixel-position'.
9990         * doc/lispref/windows.texi (Window Sizes): Update references.
9991         (Resizing Windows): Update references.  Move description of
9992         `fit-frame-to-buffer' here.
9993         (Coordinates and Windows): Update nomenclature and references.
9994         Describe new arguments of `window-edges'.  Comment out
9995         descriptions of `window-left-column', `window-top-line',
9996         `window-pixel-left' and `window-pixel-top'.  Describe
9997         `window-absolute-pixel-position'.
9999 2015-08-20  Alan Mackenzie  <acm@muc.de>
10001         Handling of `c-parse-state'.  Fix low level bug.
10002         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
10003         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
10005 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
10007         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
10008         window instead of deleting it.
10010 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
10012         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
10013         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
10014         determine whether frame has a titlebar.
10015         Suggested by Eli Zaretskii <eliz@gnu.org>
10017 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
10019         Add a prettify-symbols-alist for (La)TeX
10020         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
10021         New variable holding an alist suitable as prettify-symbols-alist in
10022         (La)TeX modes.
10024 2015-08-19  Alan Mackenzie  <acm@muc.de>
10026         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
10027         Fixes debbugs#21275.
10028         In Emacs >= 25, let electric-pair-mode take precedence over
10029         delete-selection-mode.
10030         * lisp/delsel.el (delete-selection-uses-region-p): New function,
10031         previously a lambda expression in a property value for
10032         `self-insert-command'.
10033         (top-level): Set the `delete-selection' property of
10034         `self-insert-command' to `delete-selection-uses-region-p'.
10035         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
10036         property for c-electric-\(brace\|paren\) the value
10037         `delete-selection-uses-region-p' when the latter function exists.
10039 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
10041         Fix key binding quoting in tutorial *Help*
10042         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
10043         When generating help for custom key bindings, use the user-preferred
10044         quoting style rather than hardcoding the grave style.
10046 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
10048         Improve and future-proof OTF fonts support in w32uniscribe.c
10049         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
10050         about the expected results and why the new Uniscribe APIs are not
10051         used in this function.
10052         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
10053         (ScriptGetFontFeatureTags_Proc): New function typedefs.
10054         (uniscribe_new_apis): New static variable.
10055         (uniscribe_check_features): New function, implements OTF features
10056         verification while correctly accounting for features in the list
10057         after the nil member, if any.
10058         (uniscribe_check_otf_1): New function, retrieves the features
10059         supported by the font for the requested script and language using
10060         the Uniscribe APIs available from Windows Vista onwards.
10061         (uniscribe_check_otf): If the new Uniscribe APIs are available,
10062         use them in preference to reading the font data directly.  Call
10063         uniscribe_check_features to verify that the requested features are
10064         supported, replacing the original incomplete code.
10065         (syms_of_w32uniscribe): Initialize function pointers for the new
10066         Uniscribe APIs.  (Bug#21260)
10067         (otf_features): Scan the script, langsys, and feature arrays back
10068         to front, so that the result we return has them in alphabetical
10069         order, like ftfont.c does.
10070         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
10071         New variable for debugging w32uniscribe.c code.
10073 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
10075         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
10076         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
10077         clause of `isearch-search-fun-default'.  That lax variable does not
10078         refer to lax-whitespacing.  Related to (bug#21777).
10079         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
10080         * lisp/character-fold.el (character-fold-search): Set to nil.
10081         Default to nil for now, until someone implements proper
10082         lax-whitespacing with char-fold searching.
10084 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
10086         Fix doc-string of `help-mode-finish'.
10087         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
10089         In nsimage.m include coding.h (Bug#21292)
10090         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
10092         Move window edge functions to Elisp.
10093         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
10094         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
10095         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
10096         Move to window.el.
10097         (calc_absolute_offset): Remove.
10098         * lisp/frame.el (frame-edges): New function.
10099         * lisp/window.el (window-edges, window-pixel-edges)
10100         (window-absolute-pixel-edges): Move here from window.c.
10101         (window-body-edges, window-body-pixel-edges)
10102         (window-absolute-body-pixel-edges): Move here from window.c and
10103         rename "inside" to "body".  Keep old names as aliases.
10104         (window-absolute-pixel-position): New function.
10106 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
10108         [Gnus]: Use overlay functions directly
10109         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
10110         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
10111         (gnus-article-highlight-signature, gnus-article-extend-url-button)
10112         (gnus-article-add-button, gnus-insert-prev-page-button)
10113         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
10114         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
10115         (gnus-cite-add-face):
10116         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
10117         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
10118         (gnus-tree-recenter, gnus-highlight-selected-tree):
10119         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
10120         (gnus-summary-show-thread, gnus-summary-hide-thread)
10121         (gnus-highlight-selected-summary):
10122         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
10123         * lisp/gnus/message.el (message-fix-before-sending)
10124         (message-toggle-image-thumbnails):
10125         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
10126         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
10127         Use overlay functions directly instead of using gnus-overlay-*,
10128         message-overlay-*, and sieve-overlay-*.
10129         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
10130         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
10131         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
10132         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
10133         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
10134         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
10135         (message-overlay-get, message-overlay-put, message-overlays-in):
10136         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
10137         (sieve-overlays-at): Remove.
10139 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
10141         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
10142         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
10143         builds can use the declaration from the system headers.
10144         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
10145         definition of TITLEBAR_INFO.
10146         Suggested by Eli Zaretskii  <eliz@gnu.org>
10148 2015-08-19  Glenn Morris  <rgm@gnu.org>
10150         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
10152 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
10154         Use new q ‘format’ flag when fixing quotes in C
10155         * src/image.c (image_size_error): New function.  All uses of
10156         image_error with "Invalid image size ..."  changed to use it.
10157         * src/image.c (image_size_error, xbm_load_image, xbm_load)
10158         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
10159         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
10160         (imagemagick_load, svg_load, svg_load_image, gs_load)
10161         (x_kill_gs_process):
10162         * src/lread.c (load_warn_old_style_backquotes):
10163         * src/xfaces.c (load_pixmap):
10164         * src/xselect.c (x_clipboard_manager_error_1):
10165         Use %qs, not uLSQM and uRSQM.
10166         * src/syntax.c (Finternal_describe_syntax_value):
10167         Prefer Fsubstitute_command_keys to Fformat, as this lets
10168         us use AUTO_STRING.
10169         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
10170         as it's now guaranteed to be ASCII.
10171         * src/xselect.c (x_clipboard_manager_error_2):
10172         Avoid grave accent in low-level stderr diagnostic.
10174 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
10176         New q flag for ‘format’
10177         * doc/lispref/processes.texi (Sentinels):
10178         Don't hardwire grave quoting style in example.
10179         * doc/lispref/strings.texi (Formatting Strings):
10180         * etc/NEWS:
10181         Document new q flag.
10182         * src/editfns.c (Fformat): Implement it.
10184 2015-08-18  Daiki Ueno  <ueno@gnu.org>
10186         pinentry.el: Add debugging support
10187         * lisp/net/pinentry.el (pinentry-debug): New variable.
10188         (pinentry-debug-buffer): New variable.
10189         (pinentry--process-filter): Send input to the debug buffer, if
10190         `pinentry-debug' is set.
10192         pinentry.el: Improve multiline prompt
10193         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
10194         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
10195         command.
10197 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
10199         Fix multibyte confusion in diagnostics
10200         * src/print.c (print_error_message):
10201         Don't assume that the caller's name is unibyte.
10202         * src/xdisp.c (vadd_to_log):
10203         Don't assume that the formatted diagnostic is unibyte.
10205         Fix file name encodings in diagnostics
10206         Also, close some minor races when opening image files, by opening
10207         them once instead of multiple times.
10208         * src/gtkutil.c (xg_get_image_for_pixmap):
10209         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
10210         (svg_load):
10211         * src/nsimage.m (allocInitFromFile:):
10212         * src/xfns.c (xg_set_icon):
10213         Encode file name, since x_find_image_file no longer does that.
10214         * src/image.c (x_find_image_fd): New function.
10215         (x_find_image_file): Use it.  Do not encode resulting file name,
10216         since callers sometimes need it decoded.
10217         (slurp_file): File arg is now a fd, not a file name.
10218         All callers changed.  This saves us having to open the file twice.
10219         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
10220         (svg_load):
10221         Use x_find_image_fd and fdopen to save a file-open.
10222         Report file name that failed.
10223         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
10225 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
10227         Allow blink-matching-paren to jump off screen
10228         * doc/emacs/programs.texi (Matching): Mention the
10229         `blink-matching-paren' value `jump-offscreen'.
10230         * lisp/simple.el (blink-matching-paren): New possible value.
10231         (blink-matching-paren-on-screen): Clarify the docstring.
10232         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
10234         Refine the previous change
10235         * lisp/simple.el (blink-matching-open): Use minibuffer-message
10236         outside of save-excursion (bug#21286).
10238 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
10240         Rewrite and add frame geometry related functions.
10241         * src/frame.c (Fframe_position): New function.
10242         (Fset_frame_position): Rename parameters and rewrite doc-string.
10243         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
10244         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
10245         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
10246         Qtitle_bar_size.
10247         * src/nsfns.m (frame_geometry): New function.
10248         (Fx_frame_geometry): Call frame_geometry.
10249         (Fx_frame_edges): New function.
10250         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
10251         (GetTitleBarInfo_Proc): Define these so we can use the
10252         GetTitleBarInfo API.
10253         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
10254         (Fx_frame_geometry): Rewrite.
10255         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
10256         (Fx_set_mouse_absolute_pixel_position): New functions.
10257         * src/xfns.c (frame_geometry): New function.
10258         (Fx_frame_geometry): Call frame_geometry.
10259         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
10260         (Fx_set_mouse_absolute_pixel_position): New functions.
10262 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
10264         Improve Tramp's compatibility
10265         * lisp/net/tramp.el (tramp-get-method-parameter):
10266         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
10267         (tramp-adb-get-device):
10268         * lisp/net/trampver.el (tramp-repository-get-version):
10269         Use `tramp-compat-replace-regexp-in-string'.
10271 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
10273         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
10274         Encode/decode string.
10276 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
10278         Clarify what happens to match data on failure
10279         Problem reported by Ernesto Alfonso (Bug#21279).
10280         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
10281         Document more carefully what happens to match data after a failed
10282         search.
10283         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
10284         the return value is undefined if the last search failed.
10285         (Fmatch_data): Simplify doc string line 1.
10287 2015-08-18  Daiki Ueno  <ueno@gnu.org>
10289         Revert "pinentry.el: Support external passphrase cache"
10290         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
10291         pinentry.el shouldn't directly interact with the secrets service,
10292         but ask the caller to cache the passphrase.
10294 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
10296         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
10297         Message mode hooks.
10299 2015-08-17  Daiki Ueno  <ueno@gnu.org>
10301         epg.el: Make gpgconf output parsing future proof
10302         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
10303         --list-options" output.
10305         pinentry.el: Support external passphrase cache
10306         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
10307         (pinentry--allow-external-password-cache): New local variable.
10308         (pinentry--key-info): New local variable.
10309         (secrets-enabled, secrets-search-items, secrets-get-secret):
10310         Declare.
10311         (pinentry--send-passphrase): New function, split from
10312         `pinentry--process-filter'.
10313         (pinentry--process-filter): Use secrets.el to retrieve passphrase
10314         from login keyring.
10316         pinentry.el: Popup window for multiline prompt
10317         * lisp/net/pinentry.el (pinentry): New custom group.
10318         (pinentry-popup-prompt-window): New user option.
10319         (pinentry-prompt-window-height): New user option.
10320         (pinentry--prompt-buffer): New variable.
10321         (pinentry-prompt-mode-map): New variable.
10322         (pinentry-prompt-mode): New function.
10323         (pinentry--prompt): New function.
10324         (pinentry--process-filter): Use `pinentry--prompt' instead of
10325         `read-passwd' and `y-or-n-p'.
10327 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
10329         message.el: Silent the byte compiler
10330         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
10331         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
10332         (message-delete-overlay, message-window-inside-pixel-edges):
10333         Declare before using.
10335         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
10336         (message-window-inside-pixel-edges): XEmacs compatible functions.
10338 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10340         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
10342 2015-08-17  Noah Friedman  <friedman@splode.com>
10344         * lisp/simple.el (blink-matching-open): Restore point before
10345         calling minibuffer-message.
10347 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
10349         * lisp/play/dunnet.el: Update version number in header (now
10350         matches help).
10352 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
10354         Curved quotes in --batch diagnostics in non-UTF-8
10355         When run with --batch, check that curved quotes are compatible with
10356         the system locale before outputting them in diagnostics.
10357         Problem reported by Eli Zaretskii in:
10358         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
10359         * lisp/startup.el (command-line): Set internal--text-quoting-flag
10360         after the standard display table is initialized.
10361         * src/doc.c (default_to_grave_quoting_style): New function.
10362         (text_quoting_style): Use it.
10363         (text_quoting_flag): New static var, visible to Lisp as
10364         internal--text-quoting-flag.
10365         * src/emacs.c: Include <wchar.h> if available.
10366         (using_utf8): New function.
10367         (main): Use it to initialize text_quoting_flag.
10368         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
10369         Don't define, as it's not needed and it clashes with wchar.h.
10371 2015-08-17  Glenn Morris  <rgm@gnu.org>
10373         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
10374         from makeinfo about spurious "Note:" cross-reference, and for grammar.
10376 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
10378         Minor change in variable initialization on MS-Windows
10379         * src/w32fns.c <after_dead_key>: Initialize to -1.
10380         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
10381         non-zero.
10383         Fix a bug with LWindow key remapping on MS-Windows
10384         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
10386 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
10388         Improve fontset support for latest OTF script tags
10389         * lisp/international/fontset.el (otf-script-alist): Add some
10390         missing script tags.
10391         (setup-default-fontset): Include settings for v2 versions of the
10392         script tags used by some modern OTF/TTF fonts.
10394 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
10396         Spelling fixes
10398 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
10400         Use curved quotes in core elisp diagnostics
10401         In the core elisp files, use curved quotes in diagnostic formats,
10402         so that they follow user preference as per ‘text-quoting-style’
10403         rather than being hard-coded to quote `like this'.
10404         * lisp/abbrev.el (expand-region-abbrevs):
10405         * lisp/button.el (button-category-symbol, button-put)
10406         (make-text-button):
10407         * lisp/cus-start.el:
10408         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
10409         (custom--sort-vars-1, load-theme):
10410         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
10411         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
10412         (cl-generic-generalizers):
10413         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
10414         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
10415         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
10416         (advice--make, define-advice):
10417         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
10418         * lisp/emacs-lisp/timer.el (timer-event-handler):
10419         * lisp/env.el (setenv):
10420         * lisp/facemenu.el (facemenu-add-new-face)
10421         (facemenu-add-new-color):
10422         * lisp/faces.el (face-documentation, read-face-name)
10423         (face-read-string, read-face-font, face-spec-set-match-display)
10424         (read-color, x-resolve-font-name):
10425         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
10426         (set-auto-mode, hack-local-variables)
10427         (hack-one-local-variable--obsolete)
10428         (dir-locals-set-directory-class, write-file)
10429         (basic-save-buffer, delete-directory, copy-directory)
10430         (recover-session, recover-session-finish, insert-directory)
10431         (file-modes-char-to-who, file-modes-symbolic-to-number)
10432         (move-file-to-trash):
10433         * lisp/font-lock.el (font-lock-fontify-buffer):
10434         * lisp/format.el (format-write-file, format-find-file)
10435         (format-insert-file):
10436         * lisp/frame.el (get-device-terminal, select-frame-by-name):
10437         * lisp/fringe.el (fringe--check-style):
10438         * lisp/help.el (describe-minor-mode-from-indicator):
10439         * lisp/image.el (image-type):
10440         * lisp/international/fontset.el (x-must-resolve-font-name):
10441         * lisp/international/mule-cmds.el (prefer-coding-system)
10442         (select-safe-coding-system-interactively)
10443         (select-safe-coding-system, activate-input-method)
10444         (toggle-input-method, describe-current-input-method):
10445         * lisp/international/mule-conf.el (code-offset):
10446         * lisp/mouse.el (minor-mode-menu-from-indicator):
10447         * lisp/replace.el (query-replace-read-from)
10448         (occur-after-change-function, occur-1):
10449         * lisp/scroll-bar.el (scroll-bar-columns):
10450         * lisp/simple.el (execute-extended-command)
10451         (undo-outer-limit-truncate, compose-mail, set-variable)
10452         (choose-completion-string, define-alternatives):
10453         * lisp/startup.el (site-run-file, tty-handle-args)
10454         (command-line, command-line-1):
10455         * lisp/subr.el (noreturn, define-error, add-to-list)
10456         (read-char-choice):
10457         * lisp/term/common-win.el (x-handle-xrm-switch)
10458         (x-handle-name-switch, x-handle-args):
10459         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
10460         Use curved quotes in diagnostics.
10461         * lisp/international/mule.el (find-auto-coding):
10462         Use " to quote in a diagnostic, to be consistent with the rest of
10463         this file.
10465         Convert lisp/term/x-win.el to UTF-8
10466         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
10467         runtime behavior, and the file is multilingual so compile-time
10468         appearance shouldn't be an issue.
10469         * admin/notes/unicode: Document this.
10471 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
10473         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
10474         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
10475         issues and comments, bug#943.
10476         (verilog-type-font-keywords): Cycle delay operators like ##1 and
10477         ##[0:$] are now highlighted in their entirety similarly to the #
10478         delay-control operator.  Likewise, the followed-by operators #-#
10479         and #=# are no longer partially highlighed.
10480         (verilog-backward-syntactic-ws-quick)
10481         (verilog-skip-backward-comments): Minor performance improvements
10482         to buffer traversal functions for reduced latency.
10483         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
10484         keyword 'final' follows 'assert/assume/cover', then it is part of
10485         a deferred immediate assertion item and should not be treated as a
10486         final construct for indentation.  Reported by Yuri Sugihara.
10487         (verilog-do-indent): Virtual task/function/class definition lines
10488         should not be considered as declarations.  Reported by Enzo Chi.
10489         (verilog-do-indent): Do not falsely indent to '=' of
10490         property/sequence operators on subsequent lines of a multi-line
10491         statement.
10492         (verilog-assignment-operator-re): Fix '!==' operator and add
10493         support for '<->', ':/', '#-#', and '#=#' operators.
10494         (verilog-calculate-indent, verilog-label-be): Enable
10495         case-sensitive regular expression parsing when looking for
10496         keywords.
10497         (verilog-calc-1): Detect 'pure virtual method' declarations which
10498         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
10499         (verilog-backward-ws&directives): When moving back to the start of
10500         a line and the preceeding line ended with an escaped-newline, then
10501         jump up one line.  This properly consumes a multi-line
10502         pre-processor directive.  Reported by Kaushal Modi.
10503         (verilog-dpi-import-export-re, verilog-extended-complete-re)
10504         (verilog-calc-1): Teach verilog-mode to properly indent after a
10505         DPI import/export statement that resides outside of a module.
10506         Reported by Kaushal Modi.
10507         (verilog-extended-complete-re): Update regexp to match both
10508         "DPI-C" and "DPI".  Reported by Kaushal Modi.
10510 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10512         substitute-command-keys a few more doc strings
10513         * lisp/allout.el (outlineify-sticky):
10514         * lisp/files.el (hack-one-local-variable--obsolete):
10515         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
10516         Use substitute-command-keys on some doc strings so that
10517         they don't use hard-coded key bindings or quoting styles.
10519         Fix quoting in Fformat calls
10520         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
10521         (xpm_load, xpm_load_image, pbm_load, png_load_body)
10522         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
10523         (imagemagick_load, svg_load, svg_load_image, gs_load)
10524         (x_kill_gs_process):
10525         * src/lread.c (load_warn_old_style_backquotes):
10526         * src/xfaces.c (load_pixmap):
10527         * src/xselect.c (x_clipboard_manager_error_1):
10528         Quote diagnostics according to user preference when calling
10529         Fformat or its derivatives.
10531 2015-08-15  Glenn Morris  <rgm@gnu.org>
10533         * admin/admin.el (set-version, set-copyright): Remove deleted files.
10535 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
10537         Allow describe-function helpers to access buffer-local values
10538         This will be used by cedet/mode-local.el `describe-mode-local-override'
10539         on `help-fns-describe-function-functions' in upstream CEDET.
10540         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
10541         `describe-function'.
10542         (describe-function): Bind it, save it on the help xref stack.
10544         Handle pulse-background being nil
10545         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
10546         pulse-background, handle it being nil.
10548 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10550         Fix "\`" confusion in Lisp strings
10551         * admin/authors.el (authors-canonical-author-name):
10552         Fix typo by using "\\`" not "\`" in string RE.
10553         * lisp/obsolete/complete.el (PC-complete-as-file-name):
10554         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
10555         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
10556         Use plain "`", not the equivalent-but-confusing "\`", in strings.
10557         * lisp/textmodes/texinfmt.el: Fix comment likewise.
10559 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
10561         * nt/zipdist.bat: Remove -- no longer used.
10563 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
10565         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
10566         rather than "getenforce".
10567         (tramp-sh-handle-set-file-selinux-context): Do not
10568         cache SELinux context if not all context components are given.
10570 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
10572         Add doc strings to 2 help-mode.el functions
10573         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
10574         strings.  (Bug#21263)
10576         Remove files used by the old MS-Windows specific build procedure
10577         * admin/unidata/makefile.w32-in:
10578         * doc/emacs/makefile.w32-in:
10579         * doc/lispintro/makefile.w32-in:
10580         * doc/lispref/makefile.w32-in:
10581         * doc/misc/makefile.w32-in:
10582         * leim/makefile.w32-in:
10583         * lib-src/makefile.w32-in:
10584         * lib/makefile.w32-in:
10585         * lisp/makefile.w32-in:
10586         * nt/INSTALL.OLD:
10587         * nt/config.nt:
10588         * nt/emacs-src.tags:
10589         * nt/envadd.bat:
10590         * nt/gmake.defs:
10591         * nt/makefile.w32-in:
10592         * nt/multi-install-info.bat:
10593         * nt/nmake.defs:
10594         * nt/paths.h:
10595         * src/makefile.w32-in: Files deleted.
10596         * nt/configure.bat: Remove everything except the blurb about the
10597         new build procedure.
10598         * make-dist: Remove references to makefile.w32-in in various
10599         directories, and to files in nt/ that were deleted.
10600         * etc/NEWS: Mention the fact that the files were dropped.
10602 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10604         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
10605         (Bug#21248)
10607 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
10609         Default to inotify instead of gfile
10610         * configure.ac (with_file_notification): Fix typo that
10611         prevented suppression of file notification if HAVE_NS.
10612         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
10613         with_file_notification is 'yes' (Bug#21241).
10614         * etc/NEWS: Mention this.
10616         Fix broken URLs for ISO-IR
10617         * doc/emacs/mule.texi (Charsets):
10618         * lisp/international/mule-conf.el:
10619         Fix broken URL (Bug#21248).
10621         Low-level diagnostics now use ‘text-quoting-style’
10622         * src/doprnt.c (doprnt):
10623         Format ` and ' as per ‘text-quoting-style’.
10624         * src/xdisp.c (vmessage, message): Mention that the format should
10625         not contain ` or '.
10627         Prefer ‘format’ to ‘substitute-command-keys’
10628         * src/character.h (uLSQM, uRSQM): Move here ...
10629         * src/doc.c (uLSQM, uRSQM): ... from here.
10630         * src/doc.c (Fsubstitute_command_keys):
10631         * src/syntax.c (Finternal_describe_syntax_value):
10632         * lisp/cedet/mode-local.el (mode-local-print-binding)
10633         (mode-local-describe-bindings-2):
10634         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
10635         * lisp/cus-theme.el (describe-theme-1):
10636         * lisp/descr-text.el (describe-text-properties-1, describe-char):
10637         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
10638         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
10639         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
10640         * lisp/emacs-lisp/package.el (describe-package-1):
10641         * lisp/faces.el (describe-face):
10642         * lisp/help-fns.el (help-fns--key-bindings)
10643         (help-fns--compiler-macro, help-fns--parent-mode)
10644         (help-fns--obsolete, help-fns--interactive-only)
10645         (describe-function-1, describe-variable):
10646         * lisp/help.el (describe-mode):
10647         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
10648         to implement quoting style.  This generally makes the code simpler.
10650         Extend ‘format’ to translate curved quotes
10651         This is a followup to the recent doc string change, and deals with
10652         diagnostics and the like.  This patch is more conservative than
10653         the doc string change, in that the behavior of ‘format’ changes
10654         only if its first arg contains curved quotes and the user prefers
10655         straight or grave quotes.  (Come to think of it, perhaps we should
10656         be similarly conservative with doc strings too, but that can wait.)
10657         The upside of this conservatism is that existing usage is almost
10658         surely unaffected.  The downside is that we'll eventually have to
10659         change Emacs's format strings to use curved quotes in places where
10660         the user might want curved quotes, but that's a simple and
10661         mechanical translation that I'm willing to do later.  (Bug#21222)
10662         * doc/lispref/help.texi (Keys in Documentation):
10663         Move description of text-quoting-style from here ...
10664         * doc/lispref/strings.texi (Formatting Strings):
10665         ... to here, and describe new behavior of ‘format’.
10666         * etc/NEWS: Describe new behavior.
10667         * lisp/calc/calc-help.el (calc-describe-thing):
10668         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
10669         * lisp/info.el (Info-find-index-name):
10670         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
10671         of recently-added curved quotes.
10672         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
10673         Move from here ...
10674         * src/lisp.h: ... to here.
10675         * src/doc.c (text_quoting_style): New function.
10676         (Fsubstitute_command_keys): Use it.
10677         * src/editfns.c (Fformat): Implement new behavior.
10678         * src/lisp.h (enum text_quoting_style): New enum.
10680 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
10682         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
10683         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
10685 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
10687         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
10688         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
10690 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
10692         Flush file properties in Tramp
10693         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
10694         (tramp-sh-handle-set-file-times):
10695         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
10696         (tramp-adb-handle-set-file-times): Flush the file properties of
10697         the directory.
10699 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
10701         * doc/emacs/misc.text (Amusements): Fixed typo.
10703 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
10705         Don't miss warnings about removing string text properties while dumping
10706         * src/alloc.c (purecopy): Warn about removing a string's text
10707         properties even when the same string was already pure-copied
10708         earlier.
10709         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
10710         (elisp--xref-format-extra): Fix the commentary.
10712 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
10714         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
10716 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
10718         * lisp/progmodes/compile.el: Use lexical-binding.
10719         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
10721 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
10723         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
10724         * lisp/uniquify.el: Remove redundant `:group's.
10726 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
10728         * lisp/net/tramp-adb.el
10729         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
10730         result to prevent modification of the tramp-cache by side effects.
10731         Use the correct cache key.
10733 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
10735         Make add_to_log varargs
10736         * src/alloc.c (run_finalizer_handler):
10737         * src/charset.c (load_charset_map_from_vector):
10738         * src/nsimage.m (ns_load_image):
10739         * src/xfaces.c (load_pixmap, load_color2):
10740         Simplify, now that add_to_log has a variable number of args.
10741         * src/image.c (image_error): Take a variable number of args.
10742         Callers simplified.
10743         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
10744         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
10745         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
10746         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
10748         Optional args for holiday-greek-orthodox-easter
10749         * etc/NEWS: Document this.
10750         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
10751         Add optional args N and STRING, mimicking the API and code of
10752         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
10754 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
10756         xref-find-definitions: Exclude more generic function items.
10757         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
10758         Add doc string.
10759         (cl--generic-find-defgeneric-regexp): New.
10760         (find-function-regexp-alist): Add it.
10761         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
10762         elisp-mode.el, change to search for ";;; Code:"
10763         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
10764         (find-function-regexp-alist): Add them.
10765         * lisp/progmodes/elisp-mode.el:
10766         (elisp--xref-format, elisp--xref-format-extra): Change back to
10767         defvar due to bug#21237.
10768         (elisp--xref-find-definitions): Exclude co-located default methods for
10769         generic functions.  Also exclude implicitly declared defgeneric.
10770         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
10771         mode variables defined by 'define-minor-mode'.
10772         * test/automated/elisp-mode-tests.el: Declare generic functions, add
10773         tests for them.
10774         (xref-elisp-test-run): Fix bug.
10775         (emacs-test-dir): Improve initial value.
10776         (find-defs-defun-defvar-el): Don't expect defvar.
10777         (find-defs-feature-el): Match change to find-feature-regexp.
10779 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
10781         Improve warning about purecopy of strings with properties
10782         * src/alloc.c (purecopy): Show the offending string with the
10783         warning about removing its text properties.
10785 2015-08-12  Alan Mackenzie  <acm@muc.de>
10787         Introduce new macros to cover Emacs's new names in cl-lib.el
10788         This also eliminates `mapcan' warnings in XEmacs.
10789         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
10790         characterise [X]Emacs versions.
10791         (top-level): Require either 'cl or 'cl-lib, depending on
10792         c--mapcan-status.
10793         Change this back to cc-external-require from an eval-when-compile
10794         require.
10795         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
10796         (c--delete-duplicates): New macros which expand into either old or new
10797         names.
10798         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
10799         rather than the old names.
10800         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
10801         rather than mapcan.
10802         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
10803         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
10804         depending on c--mapcan-status.
10805         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
10806         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
10807         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
10808         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
10809         (c-decl-block-key, c-keywords, c-keywords-obarray)
10810         (c-regular-keywords-regexp, c-primary-expr-regexp)
10811         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
10812         (c-known-type-key, c-nonlabel-token-key)
10813         (c-make-init-lang-vars-fun): Use the new macros rather than the old
10814         names.
10816 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
10818         loadhist.el (read-feature): Conform to completing-read
10819         * lisp/loadhist.el (read-feature): According to `completing-read'
10820         documentation, if collection is a list, then it must be a list of
10821         strings, not a list of symbols like before.
10823 2015-08-12  David Kastrup  <dak@gnu.org>
10825         Deal gracefully with up-events (Bug#19746)
10826         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
10827         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
10828         those may easily be injected by user-level Lisp code.
10829         (read_key_sequence): Discard unbound up-events like unbound
10830         down-events: they are even more likely only relevant for special
10831         purposes.
10832         While Emacs will not produce up-events on its own currently (those are
10833         converted to drag or click events before being converted to
10834         Lisp-readable structures), the input queue can be made to contain them
10835         by synthesizing events to `unread-command-events'.  Emacs should deal
10836         consistently with such events.
10838 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
10840         Fix display of thin lines whose newline has line-height property of t
10841         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
10842         and descent values of non-empty glyph rows, since they could have
10843         forced low values deliberately.  (Bug#21243)
10845 2015-08-12  Richard Stallman  <rms@gnu.org>
10847         Offer to combine multiple To or CC fields.
10848         * lisp/mail/sendmail.el (mail-combine-fields): New function.
10849         (mail-send): Call 'mail-combine-fields'.
10851         Don't decrypt encrypted files.
10852         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
10854         Handle encrypted mbox files.
10855         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
10856         the mbox file if necessary.
10858         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
10859         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
10860         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
10861         In a mime message, reenable Mime and show the parts that
10862         were shown before.
10863         Add keyword "decrypt" if anything decrypted.
10865         epa-inhibit inhibits auto-recognition of .gpg files
10866         * lisp/epa-file.el (epa-inhibit): New variable.
10867         (epa-file-handler): Check epa-inhibit.
10869 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
10871         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
10873 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
10875         Respect python.el imenu when semantic-mode is off
10876         Fixes bug#21220
10877         * lisp/cedet/semantic/wisent/python.el: Do not force
10878         wisent-python-default-setup on python-mode-hook.
10880 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
10882         Give names to Unicode code points in C code
10883         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
10884         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
10885         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
10886         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
10887         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
10888         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
10889         (OBJECT_REPLACEMENT_CHARACTER):
10890         New named constants for Unicode code points.
10891         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
10892         * src/composite.c (char_composable_p):
10893         * src/lread.c (readevalloop, read1):
10894         * src/xdisp.c (get_next_display_element):
10895         Use them.
10896         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
10897         Remove; now in character.h.
10899 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
10901         elisp--xref-find-definitions handle cl-defstuct default constructor
10902         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
10903         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
10904         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
10905         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
10906         from xref-elisp-test for ease of debugging.
10907         (xref-elisp-deftest): Rename from xref-elisp-test.
10908         (find-defs-constructor): New test.
10909         (find-defs-defgeneric-el): Match batch test config.
10910         (compile): Required for find-defs compilation-minor-mode test.
10911         (find-defs-defvar-el): Match code change.
10912         (find-defs-face-el): Match code change.
10913         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
10914         Improve doc string.
10916 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
10918         * lisp/replace.el (perform-replace): Document `replacements'.
10919         (perform-replace): Move the description of the format of `replacements'
10920         from the body's comment to the doc string.
10922 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
10924         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
10925         sequence.  Recent adb version send initial escape sequences, even
10926         when terminal type is set to TERM=dumb.
10928 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
10930         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
10931         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
10932         Function deleted.
10933         (elisp--xref-format-cl-defmethod): New defconst.
10934         (find-feature-regexp, find-alias-regexp): New defcustoms.
10935         (elisp--xref-make-xref): New function.
10936         (elisp--xref-find-definitions): Rewrite using the above, handle many
10937         more cases.  Always output all available definitions.
10938         (xref-location-marker): No need for special cases.
10939         * test/automated/elisp-mode-tests.el: Add more tests of
10940         elisp--xref-find-definitions, improve current tests.
10942 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
10944         Fix recording of events pushed onto unread-command-events
10945         * src/keyboard.c (read_char): Make sure events read from
10946         unread-command-events and unread-post-input-method-events are
10947         always recorded by record_char.  Reported by David Kastrup
10948         <dak@gnu.org>, see
10949         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
10951 2015-08-10  Samer Masterson  <samer@samertm.com>
10953         Set file buffer as current for "--file"
10954         * lisp/startup.el (command-line-1): Set file buffer as current before
10955         it is displayed so it can be used with options like "--eval".
10956         (Bug#21095)
10958 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
10960         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
10961         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
10962         after setting LC_ALL to the desired locale, to avoid affecting how
10963         numbers are read and printed.  (Bug#21223)
10965 2015-08-10  Alan Mackenzie  <acm@muc.de>
10967         Fix "Invalid search bound (wrong side of point)" in fontification
10968         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
10969         an initialization expression, check point is not beyond the
10970         fontification limit.
10972 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
10974         Fix DPI calculation when Xft/DPI is default
10975         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
10976         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
10977         Remove unnecessary cast while we're in the neighborhood.
10979 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
10981         Add project-vc-search-path and project-vc-ignores
10982         * lisp/progmodes/project.el (project-vc): New group.
10983         (project-vc-search-path, project-vc-ignores): New variables.
10984         (project--value-in-dir): Utility function.
10985         (project-search-path, project-ignores): Use them.
10986         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
10987         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
10989 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
10991         Fix some minor quoting issues with grave accent
10992         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
10993         Remove redundant quotes.
10994         * src/doc.c (uLSQM, uRSQM): New macros.
10995         * src/doc.c (Fsubstitute_command_keys):
10996         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
10997         preference for quotes rather than hardcoding the ‘grave’ style.
10998         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
10999         (re_match_2_internal) [DEBUG]: In debugging output, quote C
11000         strings with "...", not `...'.
11002         ChangeLog.2 ignores remote-tracking merges
11003         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
11004         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
11005         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
11007 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
11009         Use kpsewhich in ffap-latex-mode, if available
11010         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
11011         (ffap-latex-mode): Use kpsewhich if available.
11013         ffap: disallow braces in filenames for tex modes
11014         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
11015         braces in tex-related modes.
11017         Remove useless backslashes from ffap-string-at-point-mode-alist
11018         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
11019         misleading backslashes from default value.
11021         Augment docstring of ffap-string-at-point-mode-alist
11022         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
11023         and END are handled.
11025 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
11027         * lisp/org/org-src.el (org-edit-src-code)
11028         (org-edit-fixed-width-region):
11029         * lisp/simple.el (completion-setup-function):
11030         Remove calls to substitute-command-keys that always just return
11031         their argument.
11033 2015-08-09  Daiki Ueno  <ueno@gnu.org>
11035         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
11036         (Bug#21210)
11038 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
11040         Fix link to source code in help window
11041         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
11042         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
11043         'No longer include timestamp in header of .elc files'.  Add code
11044         that will return .el source file in load-path.
11046 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
11048         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
11049         Respect `isearch-lax-whitespace' when searching through
11050         `isearch-word'.
11052 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
11054         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
11056         * org.el: Fix up some lexical scoping warnings, and use dolist
11057         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
11058         (org-set-regexps-and-options, org-assign-fast-keys)
11059         (org-contextualize-keys, org-contextualize-validate-key)
11060         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
11061         (org-find-olp, org-find-exact-heading-in-directory)
11062         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
11063         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
11064         (org-replace-escapes): Use dolist.
11065         (org-mode): Optimize away XEmacs-only code.
11066         (org-refile-get-targets): Remove unused var `f'.
11067         (org-fast-todo-selection): Remove unused var `e'.
11068         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
11069         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
11070         (org-format-latex): Use dolist.  Remove unused var `e'.
11071         (org-toggle-heading): Access vars lexically rather than dynamically.
11072         (org-backward-sentence, org-forward-sentence, org-meta-return)
11073         (org-kill-line): Mark arg as unused.
11074         (org-submit-bug-report): Silence compiler warning.
11075         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
11076         (org-get-cursor-date): Remove unused var `tm'.
11077         (org-comment-or-uncomment-region): Use standard name `_'.
11078         (reftex-docstruct-symbol, reftex-cite-format): Declare to
11079         silence byte-compiler.
11080         (org-reftex-citation): Add `org--' prefix to dynamically scoped
11081         `rds' var.
11083 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
11085         Electric quote if coding is undecided or no conv
11086         * lisp/electric.el (electric--insertable-p): Also say that a
11087         string is insertable if the buffer file coding system is undecided
11088         or uses no conversion, as curved quotes will work in either case.
11090         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
11092 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
11094         Fix overlay string display regressions introduced in Emacs 24.5
11095         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
11096         buffer position, if we move the iterator to a new position as
11097         result of jumping over text covered by a "replacing" display
11098         property.
11099         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
11101         Support recovery from C stack overflow on MS-Windows
11102         * src/w32fns.c (w32_reset_stack_overflow_guard)
11103         (stack_overflow_handler): New functions for handling C stack
11104         overflow exceptions.
11105         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
11106         specially, and zero out except_addr if we do.
11107         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
11108         mode.
11109         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
11110         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
11111         the MinGW build, but the code guarded by that is for Posix hosts.
11112         * src/keyboard.c (command_loop) [WINDOWSNT]:
11113         Call w32_reset_stack_overflow_guard.
11114         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
11115         (sigsetjmp): New macro.
11116         (w32_reset_stack_overflow_guard): Declare the prototype.
11117         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
11119 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
11121         Improve error signalling for seq-subseq
11122         * lisp/seq.el (seq-subseq): The existing behavior is to error
11123         when indexes are too large, but to silently ignore numbers which
11124         are too negative for lists.  String and vector handling errors in
11125         both cases.  This has been regularized.  Error signaling behavior
11126         has been explicitly added to the doc string.
11128         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
11129         therefore also impacted by this change.  Update the doc string
11130         to reflect this.
11132         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
11133         added for these exceptional cases, as well as one non exceptional
11134         base case.
11136 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
11138         Improve error checking in tramp-adb.el
11139         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
11140         Improve error checking.  "ls -l" on Android in Enforcing mode can
11141         print "lstat './FILENAME failed: Permission denied".
11143 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11145         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
11146         non-struct vectors.
11148 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
11150         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
11151         * lisp/window.el: Fix typo that broke build.
11152         (display-buffer--action-function-custom-type):
11153         Add `display-buffer-use-some-frame'.
11154         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
11156         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
11157         * lisp/window.el (display-buffer-use-some-frame): Add support for
11158         'inhibit-same-window in alist.
11159         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
11160         'inhibit-same-window in alist.
11162 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
11164         Avoid infinite loop in display of invisible text in strings
11165         * src/xdisp.c (handle_invisible_prop): If the next change of
11166         invisibility spec does not mean the beginning of a visible text,
11167         update the string position from which to start the search for the
11168         next invisibility change.  This avoids an infinite loop when we
11169         have more than one invisibility spec that are made inactive by
11170         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
11171         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
11172         for the situation that caused bug #21200.
11174 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
11176         * lisp/emacs-lisp/package.el: Simplify describe-package-1
11177         (package-help-section-name-face): New face.
11178         (package--print-help-section): New function.
11179         (describe-package-1): Refactor section printing.
11180         (package-make-button): Use face instead of font-lock-face, which
11181         doesn't work on buttons.
11183         * lisp/emacs-lisp/package.el: Define custom faces
11184         (package-name-face, package-description-face)
11185         (package-status-built-in-face, package-status-external-face)
11186         (package-status-available-face, package-status-new-face)
11187         (package-status-held-face, package-status-disabled-face)
11188         (package-status-installed-face, package-status-dependency-face)
11189         (package-status-unsigned-face, package-status-incompat-face)
11190         (package-status-avail-obso-face): New faces.
11191         (package-menu--print-info-simple): Use them.
11193 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
11195         Fix some confusion with ‘format’
11196         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
11197         (allout-graphics-modification-handler):
11198         Protect arbitrary string in a format context with "%s" format.
11199         * lisp/avoid.el:
11200         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
11201         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
11202         * lisp/erc/erc-button.el (erc-button-beats-to-time):
11203         * lisp/gnus/message.el (message-send-form-letter):
11204         * lisp/org/ob-core.el (org-babel-check-evaluate)
11205         (org-babel-confirm-evaluate):
11206         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
11207         * lisp/org/ox-latex.el (org-latex-compile):
11208         * lisp/org/ox-man.el (org-man-compile):
11209         * lisp/org/ox-odt.el (org-odt-template):
11210         * lisp/org/ox-texinfo.el (org-texinfo-compile):
11211         * lisp/progmodes/prolog.el (prolog-help-info)
11212         (prolog-view-predspec):
11213         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
11214         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
11215         * lisp/textmodes/rst.el (rst-replace-lines):
11216         Change (message (format ...)) to (message ...), and likewise
11217         for ‘error’.  This lessens the probability of confusion when the
11218         output of ‘format’ contains ‘%’.
11220 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11222         * lisp/replace.el (replace-character-fold): Default to nil.
11224         * lisp/character-fold.el: Fix lax whitespace.
11225         (character-fold-table): Don't make space match other whitespace chars.
11226         (character-fold-to-regexp): Simplify lax behavior.
11228 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
11230         Preserve window point in xref-find-definitions-other-window
11231         Fix the problem reported by Ingo Logmar in
11232         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
11233         * lisp/progmodes/xref.el (xref--goto-char): Extract from
11234         xref--goto-location.
11235         (xref--pop-to-location): Use it.  Replace xref--goto-location with
11236         a direct xref-location-marker call.
11237         (xref--show-location): Likewise.
11238         (xref--display-position): Use xref--goto-char.
11240         * lisp/progmodes/project.el: Add a paragraph to the front matter.
11242 2015-08-04  David Kastrup  <dak@gnu.org>
11244         * lisp/vc/emerge.el (emerge-show-file-name):
11245         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
11246         (vhdl-comment-insert, vhdl-hooked-abbrev):
11247         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
11248         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
11249         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
11250         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
11251         * lisp/obsolete/vip.el (vip-escape-to-emacs)
11252         (vip-prefix-arg-value, vip-prefix-arg-com):
11253         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
11254         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
11255         (quail-tibkey-update-translation):
11256         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
11257         * lisp/leim/quail/lao.el (quail-lao-update-translation):
11258         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
11259         (quail-japanese-self-insert-and-switch-to-alpha):
11260         * lisp/leim/quail/hangul.el (hangul2-input-method)
11261         (hangul3-input-method, hangul390-input-method):
11262         * lisp/language/hanja-util.el (hangul-to-hanja-char):
11263         * lisp/international/robin.el (robin-input-method):
11264         * lisp/international/quail.el (quail-start-translation)
11265         (quail-start-conversion):
11266         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
11267         (gnus-article-describe-key-briefly):
11268         * lisp/eshell/em-hist.el (eshell-list-history):
11269         * lisp/term.el (term-dynamic-list-input-ring)
11270         (term-dynamic-list-completions):
11271         * lisp/subr.el (momentary-string-display):
11272         * lisp/simple.el (read-quoted-char):
11273         * lisp/pcomplete.el (pcomplete-show-completions):
11274         * lisp/kmacro.el (kmacro-repeat-on-last-key):
11275         * lisp/info.el (Info-summary):
11276         * lisp/ehelp.el (electric-help-command-loop):
11277         * lisp/ebuff-menu.el (electric-buffer-list)
11278         (Electric-buffer-menu-exit):
11279         * lisp/double.el (double-translate-key):
11280         * lisp/comint.el (comint-dynamic-list-input-ring)
11281         (comint-dynamic-list-completions): Do not overwrite preexisting
11282         contents of `unread-command-events' when putting new events into it.
11284 2015-08-04  Daniel Colascione  <dancol@dancol.org>
11286         Improve ansi-color filtering of unrecognized escape sequences
11287         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
11288         escape sequences.
11289         (ansi-color-filter-apply, ansi-color-apply): Filter out
11290         unrecognized escape sequences.
11292 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
11294         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
11295         definitions to `easy-menu-define', improve a couple to account for
11296         async, and add a couple of new commands.
11298 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
11300         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
11302 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
11304         Add new 'calendar-weekend-days' option
11305         Make the days receiving the 'calendar-weekend-header' face freely
11306         customizable, as they differ by region/culture.
11307         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
11308         new variable.
11309         * lisp/calendar/calendar.el (calendar-generate-month): New variable
11310         calendar-weekend-days to customize day header fontification.
11312 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
11314         Redo text-quoting-style variable
11315         Rename help-quote-translation to text-quoting-style,
11316         and use symbols rather than characters as values.
11317         This follows suggestions along these lines by Alan Mackenzie in:
11318         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
11319         and by Drew Adams in:
11320         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
11321         * doc/lispref/help.texi (Keys in Documentation)
11322         * etc/NEWS:
11323         * lisp/cus-start.el (standard):
11324         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
11325         Document and/or implement the new behavior instead of the old.
11326         (syms_of_doc): New symbols 'grave' and 'straight'.
11328 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
11330         nnimap.el: Use IMAP MOVE extension if available
11331         * lisp/gnus/nnimap.el (nnimap-request-move-article)
11332         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
11333         Use MOVE extension if available.
11335         nnimap.el: Explicitly ask for server capabilities
11336         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
11337         capabilities will be returned in the login-result.
11339 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
11341         Treat help strings like other doc strings
11342         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
11343         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
11344         substitute-command-keys.
11345         * src/keyboard.c (show_help_echo, parse_menu_item): Call
11346         substitute-command-keys on the help string before displaying it.
11348         Also mention "curly quotes"
11349         See Drew Adams's email in:
11350         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
11351         * doc/lispref/help.texi (Keys in Documentation):
11352         Add index entry "curly quotes".
11353         * etc/NEWS: Use the phrase "curly quotes" too.
11355         ede-proj-target-makefile docstring tweaks
11356         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
11357         Consistently use "all:" to describe the all: target,
11358         replacing three different and confusingly-quoted usages.
11360 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
11362         Don't abort emacsclientw when -a was specified
11363         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
11364         out if we are in emacsclientw and -a was specified.
11366 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
11368         Fix handling of 1st keystroke on MS-Windows
11369         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
11370         This is needed to correctly handle the session's first keystroke,
11371         if it has any modifiers.  (Bug#19994)
11373 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
11375         Substitute some customization etc. doc strings
11376         These changes apply substitute-command-keys to some
11377         doc strings that were going through untranslated
11378         when creating customization or other widgets.
11379         * lisp/cus-edit.el (custom-group-value-create):
11380         * lisp/wid-edit.el (widget-default-create):
11381         (widget-push-button-value-create):
11382         Treat the widget tag as a doc string.
11383         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
11384         Treat the :documentation value as a doc string.
11385         * lisp/wid-edit.el (widget-choose):
11386         Treat the choice names as doc strings.
11387         (widget-default-create): Treat the :doc value as a doc string.
11388         (widget-toggle-value-create): Treat the :on and :off values
11389         as doc strings.
11390         (widget-documentation-string-value-create):
11391         Substitute the doc string.
11393 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
11395         Add a second argument to project-ignores
11396         * lisp/progmodes/project.el (project-ignores): Add a second
11397         argument DIR.
11398         * lisp/progmodes/project.el (project-ignores): Only include the VC
11399         ignores if DIR is the VC root.
11400         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
11402 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
11404         Prevent incorrect display when 'line-spacing' variable is set
11405         * src/xdisp.c (try_window_id): Give up this optimization if the
11406         buffer has its 'line-spacing' variable set non-nil.
11408 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
11410         Don't pass NOVISIT to find-file
11411         * lisp/progmodes/etags.el (next-file):
11412         Don't pass NOVISIT to find-file (bug#21175).
11414         Ignore buffer restriction for tags-loop-eval
11415         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
11416         restriction (bug#21167).
11418 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
11420         Fix a thinko in 'ffap-gopher-at-point'
11421         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
11423         Honor 'line-spacing' for empty lines
11424         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
11425         property and 'line-spacing' frame parameter or variable or
11426         property for empty lines, by doing the same processing as in
11427         x_produce_glyph for newline characters.  (Bug#21165)
11429 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
11431         Simplify by assuming C99 integer division
11432         * src/floatfns.c (ceiling2, floor2, truncate2):
11433         Assume C99 (i.e., Fortran) semantics for integer division.
11434         This simplifies the code.
11436 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
11438         Don't overflow if computing approximate percentage
11439         * lisp/align.el (align-region):
11440         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
11441         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
11442         * lisp/cus-edit.el (custom-buffer-create-internal):
11443         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
11444         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
11445         (checkdoc-next-message-error):
11446         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
11447         * lisp/epa.el (epa-progress-callback-function):
11448         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
11449         * lisp/ffap.el (ffap-menu-rescan):
11450         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
11451         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
11452         * lisp/gnus/nneething.el (nneething-retrieve-headers):
11453         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
11454         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
11455         * lisp/gnus/nnml.el (nnml-retrieve-headers):
11456         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
11457         * lisp/gnus/nntp.el (nntp-retrieve-headers)
11458         (nntp-retrieve-articles):
11459         * lisp/imenu.el (imenu--relative-position):
11460         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
11461         (skkdic-convert-okuri-nasi):
11462         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
11463         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
11464         * lisp/org/org-list.el (org-update-checkbox-count):
11465         * lisp/org/org.el (org-table-map-tables)
11466         (org-update-parent-todo-statistics):
11467         * lisp/play/decipher.el (decipher-insert-frequency-counts)
11468         (decipher-analyze-buffer):
11469         * lisp/profiler.el (profiler-format-percent):
11470         * lisp/progmodes/cc-cmds.el (c-progress-update):
11471         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
11472         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
11473         (idlwave-list-load-path-shadows):
11474         * lisp/progmodes/opascal.el (opascal-step-progress):
11475         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
11476         (vhdl-scan-directory-contents):
11477         * lisp/textmodes/bibtex.el (bibtex-progress-message):
11478         * lisp/textmodes/flyspell.el (flyspell-small-region)
11479         (flyspell-external-point-words):
11480         * lisp/textmodes/table.el (table-recognize):
11481         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
11482         progress-report percentages and the like.  This avoids problems
11483         if (* 100 NUMERATOR) would overflow.
11484         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
11485         * lisp/gnus/registry.el (registry-reindex):
11486         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
11487         * lisp/descr-text.el (describe-char):
11488         * lisp/org/org-colview.el (org-nofm-to-completion):
11489         * lisp/ps-print.el (ps-plot):
11490         * lisp/simple.el (what-cursor-position):
11491         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
11492         more-complicated and less-accurate approximation.
11494         Fix some int overflows in profiler.c
11495         * src/profiler.c (make_log): Make args EMACS_INT, not int,
11496         to avoid unwanted behavior on 'int' overflow.
11497         (make_log, evict_lower_half, record_backtrace):
11498         Use ptrdiff_t, not int, for object indexes.
11500         Port to pedantic memcpy
11501         * src/keyboard.c (menu_bar_items, tool_bar_items):
11502         * src/xrdb.c (magic_db):
11503         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
11505         Merge from gnulib
11506         This incorporates:
11507         2015-07-29 time_rz: port to pedantic memcpy
11508         * lib/time_rz.c: Copy from gnulib.
11510 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
11512         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
11513         When updating the very last entry, tabulated-list-print would
11514         erase it and then try to look at the next one (which obviously
11515         isn't there).
11517 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
11519         Allow to use the old key processing code on MS-Windows
11520         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
11521         New variable.
11522         (w32_wnd_proc): Use it to invoke the old code that processed
11523         character keys, as fallback, when this variable is non-nil.
11524         Fix typos in comments.  (Bug#19994)
11526 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
11528         Improve handling of Unicode keyboard input on MS-Windows
11529         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
11530         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
11531         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
11532         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
11533         successful, don't call TranslateMessage.  (Bug#19994)
11535 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
11537         Fix default-directory in changeset diffs after vc-print-log
11538         * lisp/vc/log-view.el (log-view-diff-common): Move the
11539         revision-granularity check back into log-view-diff-changeset.
11540         (log-view-diff-changeset): Bind default-directory to the current
11541         VC root.
11543         Rename project-directories to project-roots
11544         * lisp/progmodes/project.el (project-search-path-function)
11545         (project-search-path): Update the docstring.
11546         (project-directories): Rename to `project-roots', update all
11547         callers and implementations accordingly.
11548         (project-root): Remove.
11549         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
11550         as the default file mask.
11552 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
11554         Support long URLs in w32-shell-execute
11555         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
11556         and filename_to_ansi to convert the DOCUMENT argument, as it could
11557         be a URL that is not limited to MAX_PATH characters.  Instead, use
11558         MultiByteToWideChar directly, and allocate heap storage as
11559         required to accommodate the converted string.  Likewise with
11560         non-Unicode operation.  Ensure OPERATION is null-terminated, even
11561         if it is longer than 32K bytes.  (Bug#21158)
11563 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
11565         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
11567 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
11569         Add docs for display-buffer action display-buffer-use-some-frame
11570         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
11571         * doc/lispref/windows.texi (Display Action Functions):
11572         Add display-buffer-use-some-frame.
11573         * etc/NEWS: Mention display-buffer-use-some-frame.
11575         Add display-buffer action display-buffer-use-some-frame
11576         * lisp/window.el (display-buffer-use-some-frame): New.
11578         Handle vc-mtn error more gently
11579         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
11580         branch is nil.
11582 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
11584         Fix Tramp problems with multihops, and nc
11585         * lisp/net/tramp-cache.el (tramp-get-file-property)
11586         (tramp-set-file-property, tramp-flush-file-property)
11587         (tramp-get-connection-property, tramp-set-connection-property)
11588         (tramp-flush-connection-property): Remove hop from vector.
11589         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
11590         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
11591         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
11592         netstat to 60".
11593         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
11594         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
11595         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
11596         Keep hop in result.
11597         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
11598         Add hop tests.
11600 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
11602         Resurrect highlighting of repeated words by Flyspell Mode
11603         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
11604         characters between point and the doublon candidate, so that
11605         flyspell-word-search-backward finds it.  (Bug#21157)
11607         Fix redisplay of large images on expose events
11608         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
11609         between signed negative values and unsigned values.  This
11610         prevented redisplay on expose events when the window showed a very
11611         large image.
11613 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
11615         Remove unnecessary stack overflow dependency
11616         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
11617         Don't worry about $ac_cv_header_sys_resource_h and
11618         $ac_cv_func_getrlimit, as they're no longer needed for this.
11619         Problem reported by Eli Zaretskii in:
11620         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
11622 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
11624         Pacify compilation -Wincompatible-pointer-types warnings
11625         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
11626         warning.
11627         (CompareStringW_Proc): New typedef.
11628         (w32_compare_strings): Use it, to pacify compiler warnings under
11629         "-Wincompatible-pointer-types".
11630         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
11631         (GetDiskFreeSpaceExA_Proc): New typedefs.
11632         (Ffile_system_info): Use them, to pacify compiler warnings under
11633         "-Wincompatible-pointer-types".
11635 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
11637         Fix subscript error in calculate_direct_scrolling
11638         Use slightly-longer cost vectors.  Without this change,
11639         calculate_direct_scrolling can have a subscript violation when
11640         FRAME_LINES (frame) <= delta.
11641         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
11642         (line_ins_del, do_line_insertion_deletion_costs):
11643         Allocate and use slightly-larger cost vectors, ones based on
11644         FRAME_TOTAL_LINES instead of FRAME_LINES.
11646         Fix uninitalized value in encode_coding_object
11647         * src/coding.c (encode_coding_object): Also initialize
11648         coding->src_pos and coding->src_pos_byte when NILP (src_object).
11649         This avoids later use of uninitialized storage.
11651 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
11653         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
11654         (Bug#21141)
11656 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
11658         Merge from gnulib
11659         This incorporates:
11660         2015-07-27 time_rz: port better to MinGW
11661         2015-07-27 time: port __need_time_t to MinGW
11662         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11663         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
11664         * lib/time-internal.h: New file, from gnulib.
11666 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
11668         Handle NULL pointers in w32heap.c allocation routines
11669         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
11670         freeable".
11671         (realloc_after_dump, realloc_before_dump, free_before_dump):
11672         Handle NULL pointers gracefully, as Emacs now seems to expect that.
11674         Fix Cairo build without PNG
11675         * src/image.c: Define PNG function when USE_CAIRO is defined, even
11676         if HAVE_PNG is not.  (Bug#21133)
11678         MS-Windows follow-up for recent TZ-related changes
11679         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
11680         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
11681         picking up 'struct timespec' from pthread.h, if it is installed on
11682         the user's system.  We want either the definitions from MinGW
11683         system headers, if available, or the Gnulib replacements if not.
11684         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
11685         lib/time.h.
11686         * lib/time.in.h: Don't let __need_* symbols affect what happens on
11687         MinGW.  These symbols are defined by MinGW system headers, but we
11688         don't want that to affect whether Gnulib portions of the header
11689         are or aren't used.
11691 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
11693         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
11695         New optional ZONE arg for format-time-string etc.
11696         This simplifies time conversions in other time zones.
11697         It also prevents display-time-world tampering with TZ (Bug#21020).
11698         * admin/admin.el (add-release-logs):
11699         Use improved add-log-time-format API.
11700         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
11701         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
11702         * configure.ac (tzalloc): Remove test for this, since
11703         Emacs no longer uses HAVE_TZALLOC directly.
11704         * doc/lispref/os.texi (Time of Day, Time Conversion)
11705         (Time Parsing):
11706         * etc/NEWS: Document the new behavior.
11707         Merge from gnulib, incorporating:
11708         2015-07-25 strftime: fix newly-introduced bug on Solaris
11709         2015-07-23 fprintftime, strftime: use timezone_t args
11710         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11711         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
11712         * m4/time_h.m4:
11713         Update from gnulib.
11714         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
11715         New files from gnulib.
11716         * lisp/time-stamp.el (time-stamp-string):
11717         * lisp/time.el (display-time-world-list)
11718         (display-time-world-display):
11719         Use new API, with time zone arg.
11720         * lisp/time.el (display-time-world-display):
11721         Fix race when current-time advances while we're running.
11722         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
11723         (add-log-iso8601-time-string): Accept optional time zone arg.
11724         * lisp/vc/add-log.el (add-change-log-entry):
11725         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
11726         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
11727         Add rules for the time module, since they're now needed
11728         for tzalloc etc.
11729         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
11730         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
11731         * src/editfns.c: Include errno.h.
11732         (set_time_zone_rule): Omit unnecessary forward decl.
11733         (initial_tz): Remove, replacing with ...
11734         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
11735         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
11736         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
11737         (tzlookup): New static functions.
11738         (init_editfns): New arg DUMPING.  All uses changed.
11739         (init_editfns): Omit most initialization if dumping, not if
11740         !initialized.  Initialize wall_clock_tz and local_tz.
11741         (emacs_nmemftime, format_time_string): Time zone argument can now
11742         be any time zone, not just a boolean for UTC or local time.  All
11743         callers changed.
11744         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
11745         (Fcurrent_time_zone): New optional arg ZONE.
11746         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
11747         the same form as with the other new additions.
11748         (decode_time_zone): Remove; no longer needed.
11749         (tzvalbuf): Now file-scope.
11750         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
11751         (syms_of_editfns): Define Qwall.
11752         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
11753         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
11754         [!HAVE_TZALLOC]:
11755         Remove; now supplied by gnulib.
11756         * src/emacs.c (main):
11757         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
11759 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
11761         Fix infinite loop in delete-consecutive-dups
11762         * lisp/subr.el (delete-consecutive-dups): Work even if the last
11763         element is nil (Bug#20588).  Avoid rescan of a circular list in
11764         deletion of last element.
11766 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
11768         Have `x-frame-geometry' return nil for terminal and initial
11769         frames (Bug#21132)
11770         * src/nsfns.m (Fx_frame_geometry):
11771         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
11772         terminal frames.
11773         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
11774         (Fx_frame_geometry): Return nil for terminal frames
11776 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
11778         * etc/tutorials/TUTORIAL.ja: Improve translation.
11780 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
11782         Avoid crashes when w32 GUI functions are called in -batch
11783         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
11784         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
11785         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
11787         Fix flyspell-check-previous-highlighted-word
11788         * lisp/textmodes/flyspell.el
11789         (flyspell-check-previous-highlighted-word): Really accept a
11790         numeric argument, as the doc string describes.  Fix an off-by-one
11791         error in looking up overlays, so invocation with point immediately
11792         after a word would check that word.  Clarify the doc string as
11793         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
11795 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
11797         Minor cleanup in tramp-tests.el
11798         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
11799         Implement using the documented interface
11800         `tramp-connection-properties', rather than with internal functions.
11802 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
11804         Pass lambdas to `skeleton-read'
11805         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
11806         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
11807         lambdas to `skeleton-read' (bug#20386).
11809 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
11811         * INSTALL (DETAILED BUILDING AND INSTALLATION):
11812         Mention --without-imagemagick.
11814         Don't require GUI frames and mouse for Flyspell menus
11815         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
11816         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
11817         support, since pop-up menus work with text terminals and can be
11818         controlled via the keyboard.
11820         Improve documentation of Flyspell commands
11821         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
11822         can be invoked via the keyboard.  Mention those commands by name
11823         and add them to the fn index.  (Bug#21125)
11825 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
11827         Fix some Tramp problems with HP-UX
11828         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11829         Add "tab0" to stty call.
11830         * test/automated/tramp-tests.el (tramp-persistency-file-name):
11831         Set to nil.
11832         (tramp--test-hpux-p): New defun.
11833         (tramp--test-utf8): Use it.
11835 2015-07-22  Glenn Morris  <rgm@gnu.org>
11837         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
11839 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
11841         Fix point positioning in ffap-next-guess
11842         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
11843         as our callers expect.  This was clobbered as part of fixing
11844         bug#5673.  (Bug#21107)
11845         (ffap-gopher-at-point): Set ffap-string-at-point-region.
11847 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
11849         * lisp/window.el (even-window-sizes): Fix customization type.
11851         Optionally even widths of `display-buffer' windows.  (Bug#21100)
11852         * lisp/window.el (quit-restore-window): Restore width if
11853         requested.
11854         (display-buffer-record-window): Record width when window is
11855         reused and horizontally combined.
11856         (even-window-sizes): New option to allow evening window widths.
11857         (even-window-heights): Defalias to `even-window-sizes'.
11858         (window--even-window-heights): Rename to
11859         `window--even-window-sizes'.  Handle side-by-side windows.
11860         (display-buffer-use-some-window): Call `window--even-window-sizes'
11861         instead of `window--even-window-heights'.
11862         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
11863         * doc/lispref/windows.texi (Choosing Window Options): Describe
11864         `even-window-sizes'.
11865         (Coordinates and Windows): Fix typo.
11867 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
11869         Add file name to autoload error messages
11870         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
11871         Add condition-case to add file name to error message.
11873 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
11875         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
11876         Use 0.0.0.1 as test host.
11878 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
11880         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
11881         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
11882         Fix inf-loop (bug#21083).
11884 2015-07-21  Glenn Morris  <rgm@gnu.org>
11886         * test/automated/package-test.el (package-test-signed):
11887         Update for recent changes.
11889         * test/automated/elisp-mode-tests.el
11890         (elisp-xref-finds-both-function-and-variable)
11891         (elisp-xref-finds-only-function-for-minor-mode):
11892         Update for recent xref name changes.
11894 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
11896         Make eldoc timer non-repeatable
11897         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
11898         non-repeatable.  Since it's on post-command hook, that just wasted
11899         CPU cycles.
11901 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
11903         Mention `tramp-connection-properties' in NEWS
11905         Sync with Tramp repository
11906         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
11907         required prior changing its configuration.
11908         (Connection caching, Predefined connection information)
11909         (Remote shell setup): Fix typos.
11910         (Predefined connection information): Describe, how to overwrite
11911         parameters of `tramp-methods'.
11912         (Remote programs, Remote processes, Traces and Profiles):
11913         Simplify example.
11914         (Remote programs): Remove superfluous comment.
11915         * doc/misc/trampver.texi: Update release number.
11916         * lisp/net/tramp-cache.el (tramp-connection-properties):
11917         Adapt docstring.
11918         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
11919         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
11920         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
11921         "gvfs-mkdir -p ..." does not work robust.
11922         (tramp-gvfs-maybe-open-connection):
11923         Adapt `tramp-get-method-parameter' call.
11924         * lisp/net/tramp-sh.el (tramp-methods):
11925         Add `tramp-remote-shell-login' parameter where it fits.
11926         (tramp-get-remote-path): Use it.
11927         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
11928         (all): Adapt `tramp-get-method-parameter' calls.
11929         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
11930         (tramp-get-method-parameter): Replace argument METHOD by VEC.
11931         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
11932         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
11933         (all): Adapt `tramp-get-method-parameter' calls.
11934         * lisp/net/trampver.el Update release number.
11935         * test/automated/tramp-tests.el (tramp--instrument-test-case):
11936         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
11937         (tramp-test13-make-directory, tramp--test-adb-p)
11938         (tramp--test-smb-or-windows-nt-p): Simplify.
11939         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
11940         (tramp--test-special-characters): Fix docstring.  Add gvfs and
11941         ftp tests.
11942         (tramp--test-utf8): Fix docstring.
11944 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
11946         Add new xref-query-replace command
11947         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
11948         New function, extracted from xref-pulse-momentarily.
11949         (xref-query-replace): New command.
11950         (xref--query-replace-1): New helper function.
11951         (xref--xref-buffer-mode-map): Add `r' binding.
11953 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
11955         Simplify icalendar decoding of Z dates
11956         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
11957         Simplify calculation of time strings with trailing "Z".
11959 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
11961         Do not corrupt grep-find-ignored-files
11962         * lisp/progmodes/project.el (project-ignores): Change the order of
11963         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
11965         Add xref-match-item, and use it
11966         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
11967         (xref-file-location): Add reader for the column slot.
11968         (xref-match-item): New class.
11969         (xref-match-bounds): A method implementation for it.
11970         (xref-make-match): New constructor function.
11971         (xref--current-item): New private variable.
11972         (xref-pulse-momentarily): Use it.
11973         (xref--pop-to-location): Change the first argument to an xref
11974         item, instead of location, bind xref--current-item.
11975         Update all callers.
11976         (xref-next-line, xref-prev-line, xref--next-error-function)
11977         (xref--mouse-2): Look for the property `xref-item',
11978         instead of `xref-location'.
11979         (xref--item-at-point): Likewise.  This function replaces
11980         `xref-location-at-point'.  Update all callers.
11981         (xref--insert-xrefs): Add the `xref-item' text property, instead
11982         of `xref-location'.
11983         (xref--collect-match): Use xref-make-match.
11985         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
11986         Update all references.
11988         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
11989         slot to `summary'.
11991         vc-hg: Perform the print-log call asynchronously
11992         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
11993         asynchronously (bug#21067).
11995         Add xref-after-jump-hook and xref-after-return-hook
11996         * lisp/progmodes/xref.el (xref-after-jump-hook)
11997         (xref-after-return-hook): New hooks.
11998         (xref-pulse-on-jump): Remove, in favor of the above.
11999         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
12000         (xref--pop-to-location, xref--display-position)
12001         (xref-pop-marker-stack): Use the new hooks, as requested in
12002         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
12004 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
12006         * lisp/progmodes/js.el (js-mode): Correct the lighter.
12008 2015-07-19  Leo Liu  <sdl.web@gmail.com>
12010         Fix a bug in cfengine3-mode
12011         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
12012         eldoc-documentation-function.
12014 2015-07-18  Julien Danjou  <julien@danjou.info>
12016         sieve-mode: support "body" test command
12017         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
12018         Add missing "body" test command.
12020 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
12022         Fix info-apropos when the default encoding is Latin-N
12023         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
12024         'undecided', so that it is set to the encoding of the Info file we
12025         are about to insert.  Otherwise, 'info-apropos' will fail to find
12026         some index nodes in some UTF-8 encoded files, if the buffer's
12027         previous encoding is Latin-N or some such.
12029 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
12031         * lisp/epg.el (epg--start): Check that gpgconf can be found
12032         before calling it.
12034         Expose more file types to OS X that Emacs understands
12035         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
12036         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
12038 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
12040         Fix visual-order cursor movement when lines are truncated
12041         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
12042         simulate display in a window of infinite width, to allow move_it_*
12043         functions reach positions outside of normal window dimensions.
12044         Remove code that tried to handle a subset of these situations by
12045         manual iteration of buffer text.  (Bug#17777)
12047         Fix following Info cross-references to anchors
12048         * lisp/info.el (Info-read-subfile): Add to the returned value the
12049         length of subfile preamble, after converting it to file's byte
12050         offset, as expected by the caller.  Use bufferpos-to-filepos.
12051         (Info-find-node-2): If searching for a node with a
12052         1000-character slop fails, try again with a 10000-character slop,
12053         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
12054         * lisp/international/mule-util.el (bufferpos-to-filepos): New
12055         function.
12056         * etc/NEWS: Mention bufferpos-to-filepos.
12058         Fix scrolling backwards on TTY frames under scroll-conservatively
12059         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
12060         in moving backwards on TTY frames.  (Bug#21080)
12062 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
12064         Consider a jsdoc tag to be a beginning of a paragraph as well
12065         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
12066         consider a jsdoc tag to be a beginning of a paragraph as well.
12068 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12070         * lisp/emacs-lisp/package.el: Fix warnings.
12072         * lisp/emacs-lisp/package.el (package-buffer-info):
12073         Add author and maintainers to `package-buffer-info'.
12075         * lisp/emacs-lisp/package.el: Many small changes.
12076         Replace all instances of 'face with 'font-lock-face.
12077         (describe-package-1): Improve some strings and move the summary
12078         up the list.
12079         (package-install-file): Update docstring.
12080         (package-menu-hide-package): Bind to `H'.
12082         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
12083         Fix error handling.
12085 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
12087         Fix hang with large yanks This should fix the bug fixed by Mike
12088         Crowe's patch in:
12089         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
12090         A problem in this area has been reported by several users; see
12091         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
12092         This fix differs from Mike Crowe's patch in that it should avoid a
12093         race condition that could lose SIGIO signals.  ignore_sigio dates
12094         back to the 1980s when some platforms couldn't block signals, and
12095         could only ignore them, which led to races when signals arrived
12096         while being ignored.  We shouldn't have to worry about those old
12097         platforms now.
12098         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
12099         * src/emacs.c (shut_down_emacs):
12100         Don't call ignore_sigio; unrequest_sigio should suffice.
12101         * src/keyboard.c (kbd_buffer_store_buffered_event):
12102         Use unrequest_sigio, not ignore_sigio.
12103         (kbd_buffer_get_event):
12104         Call request_sigio when getting the ball rolling again.
12106 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12108         * lisp/obsolete/longlines.el (longlines-search-function):
12109         Fallback on `isearch-search-fun-default'.
12111 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
12113         Support @-mentions
12114         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
12115         of mentions/messages with @nick instead of just nick.
12117 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
12119         Fix bug#20943
12120         * lisp/autorevert.el (auto-revert-handler): Do not check for
12121         `buffer-modified-p'.
12122         * lisp/files.el (buffer-stale--default-function): Check for
12123         `buffer-modified-p'.
12124         * test/automated/auto-revert-tests.el
12125         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
12127 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
12129         Fix delete-dups bug on long lists
12130         * lisp/subr.el (delete-dups):
12131         Don't mistakenly keep some dups when applied to long lists.
12133 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
12135         Better heuristic for C stack overflow
12136         Improve the heuristic for distinguishing stack overflows from
12137         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
12138         the getrlimit method wasn't portable to Cygwin; see:
12139         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
12140         Corinna suggested pthread_getattr_np but this also has problems.
12141         Instead, replace the low-level system stuff with a simple
12142         heuristic based on known good stack addresses.
12143         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
12144         * src/sysdep.c: Don't include <sys/resource.h>.
12145         (stack_direction): Remove.  All uses removed.
12146         (stack_overflow): New function.
12147         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
12148         Make SEGV fatal in non-main threads.
12150 2015-07-16  Daiki Ueno  <ueno@gnu.org>
12152         epg: Automatically start pinentry server
12153         * lisp/epg-config.el (epg-gpgconf-program): New variable.
12154         * lisp/epg.el (epg--start): Call `pinentry-start' if
12155         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
12157 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
12159         * lisp/gnus/nnimap.el: Fix my last bogus change.
12160         Reinstall Stefan Monnier's change that was made in
12161         <83d824bc4041332f338ad7e5e830f443535aa300>.
12163 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
12165         Merge from gnulib
12166         This incorporates:
12167         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
12168         2015-07-05 acl-permissions: Fix on FreeBSD
12169         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
12170         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
12171         * lib/set-permissions.c: Copy from gnulib.
12173         Port to stricter C99
12174         * src/keyboard.h (kbd_buffer_store_event_hold):
12175         Don't return a void expression.
12177 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
12179         * doc/emacs/frames.texi (Creating Frames):
12180         Fix the command `C-x 5 m' runs.
12182 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
12184         New autorevert tests
12185         * test/automated/auto-revert-tests.el: New file.
12187 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
12189         Clear gcprolist etc. after stack overflow
12190         After stack overflow, command_loop calls init_eval, and this needs to
12191         clear gcprolist and byte_stack_list (Bug#20996).
12192         * src/alloc.c (init_alloc):
12193         Move gcprolist and byte_stack_list initialization from here ...
12194         * src/eval.c (init_eval): ... to here.
12196 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
12198         * doc/emacs/windows.texi (Pop Up Window): Fix the description
12199         of `C-x 4 m'.
12201 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12203         Avoid deprecated enums in mac-ct font backend driver
12204         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
12205         (mac_ctfont_get_advance_width_for_glyph)
12206         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
12208         Cache font family in mac-ct font backend driver
12209         * src/macfont.m (macfont_family_cache): New variable.
12210         (syms_of_macfont): Initialize it.
12211         (macfont_available_families_cache): New variable.
12212         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
12213         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
12214         (macfont_handle_font_change_notification)
12215         (macfont_init_font_change_handler)
12216         (macfont_copy_available_families_cache): New functions.
12217         (macfont_create_family_with_symbol): Use font family caches.
12218         (macfont_list, macfont_list_family):
12219         Use macfont_copy_available_families_cache instead of
12220         mac_font_create_available_families.
12222 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
12224         Show the default value in the prompt
12225         * lisp/progmodes/xref.el: Add `M-?' binding for
12226         xref-find-references.  Declare functions `grep-read-files' and
12227         `grep-expand-template'.
12228         (xref--read-identifier): Show the default value in the prompt.
12230         * lisp/progmodes/xref.el (xref-find-regexp): When called with
12231         prefix argument, ask for file patterns to search as well.  When
12232         prompting for the directory, require an existing one.
12233         (xref-collect-matches): Add a new argument, FILES.  Use it in the
12234         above function.
12236         Add `project-ignores'
12237         * lisp/progmodes/project.el (project-ignores): New generic
12238         function, and an implementation for the VC project type.
12239         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
12240         variant of rgrep-default-command that handles a generic list of
12241         ignores.
12242         (xref-collect-matches): Use it, and pass through to it the value
12243         of the newly added argument.
12244         (xref-find-regexp): Handle ignored paths within the project.
12245         Remove outdated comment.
12246         * lisp/vc/vc.el (vc-default-ignore-completion-table):
12247         Skip the comments and the empty lines.
12249 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
12251         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
12253 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
12255         gnus-registry.el: Correct function argument order
12256         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
12257         Reverse the order of function arguments.
12259 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
12261         Bind grep-highlight-matches to nil
12262         * lisp/progmodes/xref.el (xref-collect-matches):
12263         Bind grep-highlight-matches to nil (bug#20728).
12265 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
12267         nnimap.el: Fix IMAP message size parsing
12268         * lisp/gnus/nnimap.el (nnimap-transform-headers):
12269         Don't assume that UID comes before RFC822.SIZE.
12271 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
12273         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
12274         (auth-source-creation-prompts): Declare.
12275         (nnimap-retrieve-headers, nnimap-status-message)
12276         (nnimap-request-create-group, nnimap-request-delete-group)
12277         (nnimap-close-group, nnimap-request-move-article)
12278         (nnimap-request-accept-article, nnimap-request-newgroups)
12279         (nnimap-request-post, nnimap-dummy-active-number)
12280         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
12281         (nnimap-parse-flags): Remove unused var `p'.
12282         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
12283         (nnimap-flags-to-marks): Remove unused var `totalp'.
12285 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
12287         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
12289 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12291         * src/macfont.m (macfont_list): Ignore font families lacking
12292         font descriptors.
12294 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
12296         Don't check the exit status, it can be misleading
12297         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
12298         exit status, it can be misleading.
12300         Introduce a Project API
12301         * lisp/progmodes/project.el: New file.
12302         * lisp/cedet/ede.el (project-try-ede): New function.
12303         (project-root): New implementation.
12304         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
12305         Set project-search-path-function.
12306         (elisp--xref-find-references): Delegate some logic to
12307         project-search-path.
12308         (elisp-search-path): New function.
12309         (elisp-xref-find): Don't implement `matches' anymore.
12310         * lisp/progmodes/etags.el: Don't implement `matches'.
12311         Delegate some logic to project-search-path.
12312         (etags-search-path): New function.
12313         * lisp/progmodes/xref.el (xref-find-function):
12314         Remove `matches' from the API.
12315         (xref-find-regexp): Move whatever common logic was in elisp and
12316         etags implementations, and search the directories returned by
12317         project-directories and project-search-path.
12319 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
12321         * test/automated/map-tests.el (test-map-delete-return-value):
12322         Uncomment test.
12324         Add support for gv.el in map.el
12325         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
12326         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
12327         * test/automated/map-tests.el: Update tests to work with the new
12328         implementations of map-elt and map-put.
12330 2015-07-09  Glenn Morris  <rgm@gnu.org>
12332         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
12334 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
12336         Syntax-propertize until the end of the line first
12337         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
12338         until the end of the line first.
12340 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
12342         * doc/emacs/files.texi (File Archives): Add a cross reference.
12344 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
12346         nnimap.el: Handle plain value for nnimap-stream
12347         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
12348         capabilities, so that a 'plain value for the `nnimap-stream' server
12349         variable is handled correctly.
12350         * doc/misc/gnus.texi (Customizing the IMAP Connection):
12351         Document the 'plain option.
12353 2015-07-08  Leo Liu  <sdl.web@gmail.com>
12355         Fix bug in thing-at-point--bounds-of-well-formed-url
12356         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
12357         sure boundary contains current point.
12359 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
12361         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
12362         in the end.
12364         Declare whitespace-line-column a safe file-local
12365         * lisp/whitespace.el (whitespace-line-column): Declare to be a
12366         safe file-local when the value is an integer.
12368 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
12370         gnus-group.el: Check if group names are already strings
12371         * lisp/gnus/gnus-group.el (gnus-group-group-name):
12372         The group name may already be a string.
12373         Specifically, in the group list reached from the *Server* buffer,
12374         the 'gnus-group text property returns a string.  Everywhere else
12375         it returns a symbol.
12377         nnimap.el: Remove unused let variables
12378         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
12380 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
12382         Support "maximized" property of runemacs's shortcut
12383         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
12384         the '--maximized' switch to Emacs.
12386         Support "minimized" property of runemacs's shortcut
12387         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
12388         pass the '--iconic' switch to Emacs.  (Bug#20991)
12390 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
12392         Doc fixes
12393         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
12394         C-w' in Diff mode.
12395         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
12396         Add a cross reference.
12398 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
12400         * lisp/obsolete/landmark.el: Add Obsolete-since header.
12402 2015-07-07  Glenn Morris  <rgm@gnu.org>
12404         * test/automated/ert-tests.el (ert-test-deftest):
12405         Update for recent changes.
12407 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12409         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
12410         * lisp/emacs-lisp/gv.el (gv-setter): New function.
12411         (gv-invalid-place): New error.
12412         (gv-get): Use them.
12413         (gv-synthetic-place, gv-delay-error): New places.
12414         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
12415         (cl-defgeneric, cl-defmethod): Use gv-setter.
12417 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
12419         Make vc-tests work with MSYS svn program
12420         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
12421         svn is an MSYS program.
12423 2015-07-07  Ken Brown  <kbrown@cornell.edu>
12425         Improve recent change to emacsclient on Cygwin
12426         * lisp/server.el (server-process-filter): Remove redundant check
12427         that 'cygwin-convert-file-name-from-windows' is defined as a
12428         function on Cygwin.  Don't call that function unless its argument
12429         starts with a drive letter.
12431 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
12433         * lisp/emacs-lisp/package.el (package-compute-transaction):
12434         Fix void variable due to `found-something' being in the wrong `let'.
12436 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
12438         * lisp/play/landmark.el: Move to lisp/obsolete/.
12440 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
12442         Have `x-show-tip' handle `right' and `bottom' frame parameters
12443         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
12444         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
12445         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
12446         tooltips also via `right' and `bottom' frame parameters.
12448 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12450         Add online-help support to describe types
12451         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
12452         (describe-symbol): Improve the selection of default.
12453         * lisp/help-mode.el: Require cl-lib.
12454         (describe-symbol-backends): Move from help-fns.el.
12455         (help-make-xrefs): Use it.
12456         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
12457         for types.
12458         (cl--typedef-regexp): New const.
12459         (find-function-regexp-alist): Add entry for types.
12460         (cl-help-type, cl-type-definition): New buttons.
12461         (cl-find-class): New function.
12462         (cl-describe-type): New command.
12463         (cl--describe-class, cl--describe-class-slot)
12464         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
12465         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
12466         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
12467         New functions.  Moved from eieio-opt.el.
12468         (cl--generic-class-parents): New function, extracted from
12469         cl--generic-struct-specializers.
12470         (cl--generic-struct-specializers): Use it.
12471         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
12472         Improve constructor's docstrings.
12473         (cl-struct-unknown-slot): New error.
12474         (cl-struct-slot-offset): Use it.
12475         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
12476         definition in current-load-list.
12477         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
12478         (eieio--add-new-slot): Set it.
12479         (eieio-defclass-internal): Use new name for current-load-list.
12480         (eieio-oref): Add compiler-macro to warn about unknown slots.
12481         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
12482         as compile-time as well.  Improve constructor docstrings.
12483         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
12484         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
12485         (eieio-class-def): Remove button.
12486         (eieio-help-constructor): Use new name for load-history element.
12487         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
12488         (eieio-method-documentation): Move to cl-generic.el.
12489         (eieio-display-method-list): Use new names.
12490         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
12491         Add "define-linline".
12492         (lisp-fdefs): Remove "defsubst".
12493         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
12494         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
12495         (macroexp--warn-and-return): Use it to avoid inf-loops.
12496         Add `compile-only' argument.
12498 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12500         python.el: Fix local/remote shell environment setup
12501         * lisp/progmodes/python.el (python-shell-with-environment):
12502         Fix remote/local environment setup.
12503         * test/automated/python-tests.el (python-shell-with-environment-1)
12504         (python-shell-with-environment-2): New tests.
12506 2015-07-06  Glenn Morris  <rgm@gnu.org>
12508         * lisp/simple.el (set-variable): Tweak recent doc fix.
12510 2015-07-06  Ken Brown  <kbrown@cornell.edu>
12512         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
12514 2015-07-06  Glenn Morris  <rgm@gnu.org>
12516         * lisp/simple.el (set-variable): Use user-error for type mismatch.
12518 2015-07-06  Ken Brown  <kbrown@cornell.edu>
12520         * src/emacs.c (main): Don't increase the stack size on Cygwin.
12522 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
12524         (describe-symbol): Rewrite describe-function-or-variable
12525         * lisp/help-fns.el (describe-symbol-backends): New var.
12526         (help-xref-stack-item): Declare.
12527         (describe-symbol): Rename from describe-function-or-variable.
12528         Rewrite using describe-symbol-backends instead of help-xref-interned.
12529         * lisp/help.el (help-map): Use it.
12530         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
12531         (help-xref-interned): Make it into an obsolete alias.
12533         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
12534         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
12535         and cl-letf.
12537 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
12539         Fix parsing glitches in dired-mark-sexp (bug#13575)
12540         * lisp/dired-x.el (dired-x--string-to-number): New function.
12541         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
12542         of directory-listing-before-filename-regexp.  Consider
12543         forward-word harmful and replace it.  Add more verbiage in
12544         comments and doc string.
12546 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12548         python.el: Respect process environment for remote shells
12549         * lisp/progmodes/python.el
12550         (python-shell-calculate-process-environment): Calculate
12551         process-environment or tramp-remote-process-environment depending
12552         whether current file is remote.
12553         (python-shell-calculate-exec-path): Calculate exec-path or
12554         tramp-remote-path depending whether current file is remote.
12555         (python-shell-with-environment): New macro.
12556         (python-shell-prompt-detect, python-shell-calculate-command)
12557         (python-shell-make-comint, python-check): Use it.
12559         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
12560         * lisp/progmodes/python.el (python-shell--interpreter)
12561         (python-shell--interpreter-args): New vars.
12562         (inferior-python-mode, python-shell-make-comint): Use them.
12564         python.el: Fixes for IPython 3.x  (Bug#20580)
12565         * lisp/progmodes/python.el:
12566         (python-shell-completion-native-setup): Fix IPython 3.x setup.
12567         (python-shell-completion-native-get-completions): Fix timeout
12568         logic.
12570         python.el: Fix mark-defun behavior  (Bug#19665)
12571         * lisp/progmodes/python.el (python-mark-defun): New function.
12572         * test/automated/python-tests.el (python-mark-defun-1)
12573         (python-mark-defun-2, python-mark-defun-3): New tests.
12575 2015-07-05  Glenn Morris  <rgm@gnu.org>
12577         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
12578         such as "extends(parent), private".  (Bug#20969)
12579         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
12580         New tests.
12582 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
12584         Avoid duplicate calls to current_timespec
12585         * src/process.c (wait_reading_process_output):
12586         Cache current_timespec results as long as we're not waiting.
12588 2015-07-05  Ian Kelling  <ian@iankelling.org>
12590         Avoid returning early reading process output due to SIGIO
12591         * src/process.c (wait_reading_process_output): Extend the behavior of
12592         not breaking due to not finding output when a timer has lowered the
12593         timeout to include when SIGIO lowers the timeout.
12595         Don't return as fast reading any process output
12596         * src/process.c (wait_reading_process_output):
12597         The patch for Bug#17647 returns too fast sometimes when reading
12598         from any processes.  Revert part of it, and limit the timeout more
12599         sensibly (Bug#20978).
12601         Refactor timeouts in wait_reading_process_output
12602         * src/process.c (wait_reading_process_output):
12603         Simplify timeouts with an enum.  Remove a redundant condition.
12604         (Bug#20978)
12606         Remove ADAPTIVE_READ_BUFFERING ifdef
12607         * src/process.c (make-process, make-pipe-process, deactivate_process)
12608         (wait_reading_process_output, read_process_output, send_process)
12609         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
12610         added in case there was an operating system in which it was not
12611         useful.  That was 11 years ago and it hasn't happened.  Make
12612         development easier by not considering the effect of changes on a
12613         theoretical OS where this is disabled (Bug#20978).
12615 2015-07-05  Glenn Morris  <rgm@gnu.org>
12617         * lisp/simple.el (set-variable): Doc fix.
12619         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
12621 2015-07-05  Ian Kelling  <ian@iankelling.org>
12623         accept-process-output fix
12624         This is a followon to the fix for bug#17647 (Bug#20976).
12625         * src/process.c (status_notify): Fix too high return in some cases.
12627 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
12629         * lisp/character-fold.el (character-fold-table):
12630         Only fold decompositions if at least one character is non-spacing.
12631         (Bug#20975)
12633 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
12635         Merge from gnulib
12636         This incorporates:
12637         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
12638         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
12639         2015-07-02 update-copyright: fix test failure with perl >= 5.22
12640         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
12641         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
12642         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
12643         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
12645 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
12647         Respect `prog-indentation-context' in python.el
12648         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
12649         (python-indent-context, python-indent--calculate-indentation)
12650         (python-info-current-defun)
12651         (python-info-dedenter-opening-block-message)
12652         (python-info-line-ends-backslash-p)
12653         (python-info-beginning-of-backslash)
12654         (python-info-continuation-line-p): Use `prog-widen'.
12655         (python-indent--calculate-indentation)
12656         (python-indent--calculate-levels)
12657         (python-indent-calculate-indentation): Use `prog-first-column'.
12658         (python-indent--calculate-levels): Simplify.
12659         Ignore also initial empty lines for syntax calculation.
12660         * lisp/progmodes/python.el (python-indent-context): Return
12661         :no-indent for first non-empty line, not just in line 1.
12662         * test/automated/python-tests.el (python-indent-base-case)
12663         (python-indent-inside-paren-1, python-indent-inside-paren-2)
12664         (python-indent-inside-paren-3, python-indent-inside-paren-4)
12665         (python-indent-inside-paren-5, python-indent-inside-paren-6)
12666         (python-indent-after-backslash-1)
12667         (python-indent-after-backslash-2)
12668         (python-indent-after-backslash-3)
12669         (python-indent-after-backslash-4, python-indent-inside-string-1):
12670         Expect :no-indent for first non-empty line.
12672 2015-07-04  Daniel Colascione  <dancol@dancol.org>
12674         Factor isearch word description into new function
12675         * lisp/isearch.el (isearch--describe-word-mode): New function.
12676         (isearch-message-prefix, isearch-query-replace): Use it.
12678 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
12680         Fix mouse pointer on w32 when a menu is active
12681         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
12682         shape while a menu is in use.  This started happening since we now
12683         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
12685 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
12687         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
12688         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
12689         parameter.  (Bug#17344)
12691         Have `compilation-set-window' use right window for getting fringes
12692         (Bug#20829)
12693         * lisp/progmodes/compile.el (compilation-set-window):
12694         Take `window-fringes' from argument window.
12696 2015-07-03  Glenn Morris  <rgm@gnu.org>
12698         Update eieio tests for recent eieio-core change.
12699         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
12700         * test/automated/eieio-tests.el
12701         (eieio-test-32-slot-attribute-override-2):
12702         Replace the deleted eieio--class-v with cl--find-class.
12704 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
12706         Fix some issues with `window-divider-mode'
12707         * lisp/frame.el (window-divider-default-places): New option.
12708         (window-divider-mode): Remove option.
12709         (window-divider-mode): Make it a "regular" minor mode.
12710         (window-divider-width-valid-p): Drop frame- prefix.
12711         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
12712         prefix.  Handle `window-divider-default-places'.
12713         (frame--window-divider-mode-set-and-apply): Remove.
12714         (window-divider-default-bottom-width)
12715         (window-divider-default-right-width): Drop :group entries.
12716         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
12717         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
12718         (menu-bar-no-window-divider): Set `window-divider-default-places'
12719         and call `window-divider-mode'.
12720         * doc/emacs/frames.texi (Window Dividers): Document
12721         `window-divider-default-places'.
12723 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
12725         * doc/emacs/display.texi (Displaying Boundaries):
12726         * doc/emacs/search.texi (Word Search): Add cross references.
12728 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
12730         -batch should not affect ‘’ -> `' display
12731         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
12732         -batch (Bug#20926).
12734 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
12736         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
12737         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
12738         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
12739         Use cl--find-class instead.
12741         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
12743 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
12745         Some further fixes in Change Window node (Bug#20183)
12746         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
12747         by "resizing" in section title.  Add some concept indices.
12748         Suggested by N. Jackson (Bug#20183).
12750         * doc/emacs/windows.texi (Change Window): Reference window
12751         dividers.
12753         Document new `window-divider-mode'.
12754         * lisp/frame.el (window-divider-mode): Fix doc-string.
12755         * doc/emacs/frames.texi (Window Dividers): New section.
12757         Improve accessibility of window dividers (Bug#20183)
12758         * lisp/faces.el (window-divider)
12759         (window-divider-first-pixel, window-divider-last-pixel): Change
12760         membership from `frames' to `window-divider' customization group.
12761         * lisp/frame.el (window-divider): New customization group.
12762         (window-divider-mode): New minor mode.
12763         (window-divider-default-bottom-width)
12764         (window-divider-default-right-width): New options.
12765         (frame--window-divider-previous-mode): New variable.
12766         (frame-window-divider-width-valid-p)
12767         (frame--window-divider-mode-apply)
12768         (frame--window-divider-mode-set-and-apply): New functions.
12769         * lisp/menu-bar.el (menu-bar-options-save): Save
12770         window-divider-mode settings.
12771         (menu-bar-window-divider-customize)
12772         (menu-bar-bottom-and-right-window-divider)
12773         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
12774         (menu-bar-no-window-divider): New functions.
12775         (menu-bar-showhide-window-divider-menu): New variable.
12776         (menu-bar-showhide-menu): Show/hide window divider menu.
12777         * lisp/mouse.el (mouse-split-window-vertically)
12778         (mouse-split-window-horizontally): Replace `error' by
12779         `user-error'.  Bind `window-combination-resize' to nil.
12780         (top-level): Add/reorder mouse key bindings on mode- and
12781         vertical-line.
12783 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
12785         Don't display ‘’ as `' under X in en_GB
12786         The curved quote setup code invokes (char-displayable-p ?‘),
12787         but this isn’t reliable until after the X frame replaces the
12788         terminal frame (Bug#20926).
12789         * lisp/international/mule-cmds.el (set-locale-environment):
12790         Move curved quote setup code from here ...
12791         * lisp/startup.el (command-line): ... to here, after creating
12792         the X frame.
12794 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
12796         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
12798         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
12799         to reverse the meaning (Bug#15631).
12801 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
12803         Be more tolerant to fonts named "Foobar-12"
12804         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
12805         don't barf; instead, request a new fontset to be generated.  This
12806         avoids unnecessarily rejecting fonts named against XLFD rules.  See
12807         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
12808         for the description of the original problem.
12809         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
12810         by a hyphen in a font's name.
12812         Fix value of posn-at-pont in R2L lines
12813         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
12814         coordinate of -1, for a newline in a right-to-left line that
12815         overflowed into the left fringe.
12817 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
12819         (cl--copy-slot-descriptor): Copy the `props' alist as well
12820         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
12821         Rename from cl--copy-slot-descriptor.
12822         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
12824 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
12826         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
12827         (xterm-query-timeout): New var.
12828         (xterm--query): Use it.  Fallback on async method if we timeout before
12829         getting the first byte of the reply (bug#12354).
12831 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
12833         Spelling fixes
12834         * lisp/character-fold.el (character-fold-search):
12835         * lisp/emacs-lisp/package.el (package-hidden-regexps):
12836         Fix typos.
12838 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
12840         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
12842 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
12844         In strings, prefer plain ` and ' to \` and \'
12845         * lisp/allout.el (allout-insert-listified):
12846         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
12847         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
12848         (ls-lisp-string-lessp):
12849         * lisp/menu-bar.el (menu-bar-open):
12850         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
12851         * lisp/progmodes/compile.el (compile):
12852         * lisp/progmodes/etags.el (tags-loop-scan):
12853         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
12854         * lisp/subr.el (posn-actual-col-row):
12855         * lisp/term/pc-win.el (x-list-fonts):
12856         * lisp/textmodes/texinfmt.el (texinfmt-version):
12857         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
12858         * lisp/time.el (display-time-world-list):
12859         * lisp/tmm.el (tmm-menubar):
12860         * src/buffer.c (syms_of_buffer):
12861         * src/fileio.c (syms_of_fileio):
12862         Omit unnecessary and confusing backslash before quote.
12863         * lisp/erc/erc.el (erc-cmd-LASTLOG):
12864         * lisp/progmodes/flymake.el (flymake-fix-file-name):
12865         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
12866         Fix string that was intended to escape a backslash and not a quote.
12868 2015-06-30  Glenn Morris  <rgm@gnu.org>
12870         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
12872         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
12873         Replace hard-coded lists with wildcard + filter-out.
12875         * configure.ac (system-configuration-features): Add X11, NS.
12877         Improve reproducibility of generated loaddefs file
12878         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
12879         Make the return value the modtime of the input file (if no autoloads).
12880         (update-directory-autoloads): In the "no autoloads" section,
12881         use "most recent modtime" rather than "current time".
12883 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12885         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
12886         (Bug#20930)
12888 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
12890         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
12892         Add seq-min and seq-max
12893         Bump version number.
12894         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
12895         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
12897 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
12899         Make sure sleep-for always delays for as long as it's told
12900         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
12901         a loop, to ensure we always wait exactly the required amount of
12902         time.  (Bug#15990)
12904 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
12906         Fix pointer signedness glitch
12907         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
12909 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
12911         Don't block changes in mouse pointer inside 'track-mouse'
12912         * etc/NEWS:
12913         * doc/lispref/frames.texi (Mouse Tracking): Document the special
12914         effect of setting 'track-mouse' to 'dragging'.
12915         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
12916         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
12917         * lisp/mouse-drag.el (mouse-drag-throw):
12918         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
12919         to avoid changes in the shape of the mouse pointer.
12920         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
12921         pointer shape when do_mouse_tracking has the value of 'dragging',
12922         not just any non-nil value.  (Bug#20934)
12923         (syms_of_xdisp): DEFSYM 'dragging'.
12925 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
12927         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
12929         * lisp/emacs-lisp/package.el (package-compute-transaction):
12930         Don't assume version sorting.
12932         * lisp/emacs-lisp/package.el (package--save-selected-packages):
12933         Don't save before init time, to avoid overwriting configurations.
12934         (Bug#20855)
12936 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
12938         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
12939         references.
12941 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
12943         Update for the upcoming CFEngine 3.7 release: support macros and
12944         quoted context strings; reformat JSON; indent promise attributes 2
12945         units by default; give function parameter descriptions in the eldoc
12946         glue.
12947         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
12948         Autoload `json-pretty-print'.  Support new features in 3.7.
12949         (cfengine-parameters-indent): Set default promise attribute indent to
12950         2 more than the promise itself.
12951         (cfengine3-macro-regex): New variable to match the new macro syntax.
12952         (cfengine3-font-lock-keywords): Use it to highlight macros.
12953         (cfengine3-indent-line): Use it to indent macros to column 0.
12954         (cfengine3-class-selector-regex): Update for the new quoted strings
12955         format.
12956         (cfengine3-reformat-json-string): New function to reformat a JSON
12957         string using `json-pretty-print'.
12958         (cfengine3-format-function-docstring): Use function parameter
12959         description if it's provided by the cf-promises syntax dump.
12961 2015-06-29  Michael R. Mauger  <michael@mauger.com>
12963         Cygwin emacsclient handles w32 file names
12964         * lisp/server.el (server-process-filter): Allow Cygwin's
12965         emacsclient to be used as a file handler on MS-Windows.
12967 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
12969         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
12970         (bug#20925).
12972 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
12974         * doc/lispref/text.texi (Sticky Properties): Improve wording.
12975         (Bug#20924)
12977         Allow font names that end in "-NN", where NN is a number
12978         * src/font.c (font_load_for_lface): If the font-spec didn't match
12979         any available fonts, try again without interpreting trailing "-NN"
12980         as the font size.  For the description of the original problem, see
12981         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
12983         .gdbinit followup to changes in !USE_LSB_TAG
12984         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
12985         !USE_LSB_TAG, as Emacs no longer does.
12987 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
12989         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
12990         Otherwise `s p' of f and F will stomp on each other's value.
12991         (Bug#20916)
12993 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
12995         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
12996         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
12998 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
13000         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
13001         as additional guess.
13003         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
13004         to a string.
13006 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
13008         apropos-library quoting fix
13009         * lisp/apropos.el (apropos-library): Quote library consistently
13010         with the rest of the quoting used by apropos.
13012         Clarify interpreter-mode-alist doc
13013         * lisp/files.el (interpreter-mode-alist):
13014         Reword to avoid confusing quoting that wasn't working anyway.
13016 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
13018         Sync with Tramp 2.2.12
13019         * doc/misc/trampver.texi:
13020         * lisp/net/trampver.el: Update release number.
13021         * test/automated/tramp-tests.el (tramp-test13-make-directory):
13022         Fix cleanup.
13024 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
13026         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
13028 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
13030         Bind grep-highlight-matches around the rgrep call
13031         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
13032         around the rgrep call (bug#20728).
13034         Put "--color" before the other options in grep-command
13035         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
13036         before the other options in grep-command (bug#20912).
13038         Add --color Grep option to the command dynamically
13039         * lisp/progmodes/grep.el (grep-template, grep-find-template):
13040         Update the description for <C>.  (Bug#20728)
13041         (grep-compute-defaults): Don't add the --color option to
13042         grep-options.  Only add it to grep-command.
13043         (grep-expand-keywords): Expand the env value opts into <C>.
13044         (grep-expand-template): Replace cf in the env with the opts list,
13045         that can include -i and --color.
13046         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
13047         "--color=always" from the template, because we don't have to.
13049 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
13051         cl-extra fixes for most-negative-fixnum
13052         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
13053         Don't mishandle an argument equal to most-negative-fixnum,
13054         whose absolute value equals itself.
13055         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
13057         Initialize cl--gensym-counter to 0
13058         Previously it was initialized to a random value, which made it
13059         harder to reproduce earlier Emacs runs.  The need for a random
13060         value went away when Emacs introduced and used the #: syntax for
13061         uninterned symbols (Bug#20862).
13062         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
13063         Document that cl--gensym-counter now starts with 0.
13064         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
13065         (cl--random-time): Move to near only remaining use.
13066         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
13068         Improve docstring for macroexp-let2
13069         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
13070         Improve as per suggestion by RMS in:
13071         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
13072         Also, rename args to match new doc string.
13074 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
13076         Fix VC test suite on MS-Windows
13077         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
13078         always starts with 3 slashes after the colon.
13079         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
13080         'w32-application-type' to invoke CVS on MS-Windows with properly
13081         formatted CVSROOT directory name.
13083         Add a new function w32-application-type
13084         * src/w32proc.c (Fw32_application_type): New function.
13086         Avoid error in TLS connections due to incorrect format
13087         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
13088         the call to 'error', instead of the unsupported %u.  Reported by
13089         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
13091 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
13093         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
13095 2015-06-26  Leo Liu  <sdl.web@gmail.com>
13097         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
13098         `with-output-to-string' in elisp.
13100         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
13101         with-output-to-string".
13102         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
13104 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
13106         Minor corrections in ELisp manual
13107         * doc/lispref/nonascii.texi (Character Properties): Correct
13108         inaccuracies in description of values of the Unicode properties.
13110         Fix invisible mouse pointers on Windows.
13111         * src/w32fns.c: Include windowsx.h.
13112         (w32_wnd_proc): If the mouse moved and the mouse pointer is
13113         invisible, make it visible again even when the main (Lisp)
13114         thread is busy.
13115         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
13116         garbaging the frame have the input thread call SetCursor.
13118 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
13120         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
13121         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
13122         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
13123         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
13124         (w32_toggle_invisible_pointer): New function.
13125         (w32_create_terminal): Add w32_toggle_invisible_pointer as
13126         toggle_invisible_pointer_hook for this terminal.
13128 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
13130         Doc fix for deletion commands
13131         'delete-char' does not respect the value of 'delete-active-region'.
13132         * doc/emacs/killing.texi (Deletion):
13133         Fix documentation for some single-char deletion commands.
13135         * doc/emacs/help.texi (Apropos):
13136         Improve documentation of 'apropos-do-all'.
13138         * doc/emacs/help.texi (Help Summary):
13139         Improve documentation of 'describe-mode'.
13141 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13143         Fix submake dependency bug with .h files
13144         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
13145         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
13146         before the submake in $(libsrc) would spin off a subsubmake
13147         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
13149 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
13151         * lisp/character-fold.el (character-fold-table): Reuse `table'.
13153 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13155         Translate undisplayable ‘ to `
13156         * doc/lispref/help.texi (Keys in Documentation):
13157         * lisp/international/mule-cmds.el (set-locale-environment):
13158         * lisp/term/w32console.el (terminal-init-w32console):
13159         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
13160         If ‘ is not displayable, transliterate it to `, not to '.  See:
13161         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
13163         Fix C99 incompatibilities in Cairo code
13164         * src/image.c (xpm_load) [USE_CAIRO]:
13165         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
13166         Fix pointer signedness problem.
13168 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
13170         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
13171         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
13172         `with-output-to-string' should have the same indent as `progn'.
13173         This is in line with the declaration of `with-output-to-string'.
13175 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13177         Get ‘./configure; make -C src emacs’ to work
13178         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
13179         * lib-src/Makefile.in (../lib/libgnu.a):
13180         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
13182 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
13184         Fix GC bugs --with-wide-int and Qnil == 0
13185         Use the same alignment for the !USE_LSB_TAG case as for the
13186         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
13187         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
13188         once we changed the representation of symbols so that Qnil == 0.
13189         Problem reported by Eli Zaretskii (Bug#20862).
13190         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
13191         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
13192         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
13193         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
13194         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
13195         This optimization in the !USE_LSB_TAG case is no longer valid when
13196         symbols are represented via offsets.  Change the only use to
13197         assume that pointers might hide in objects.
13198         * src/lisp.h (alignas) [!USE_LSB_TAG]:
13199         Require support in this case, too.
13200         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
13201         This is OK, because the !USE_LSB_TAG case now applies only when
13202         Lisp_Object is wider than void *, so there's no longer any need
13203         to shift the offset.  Not shifting the offset means that
13204         symbol representations have the same alignment as pointers,
13205         which the GC assumes.
13207 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
13209         * doc/lispintro/emacs-lisp-intro.texi (Data types):
13210         Improve documentation of 'substring'.
13212 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13214         * lisp/character-fold.el (character-fold-table): Fix table generation.
13216 2015-06-24  Glenn Morris  <rgm@gnu.org>
13218         * nextstep/Makefile.in (all): Make it the first target.
13219         (../src/emacs${EXEEXT}): Add rule for making it.
13221 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13223         * etc/NEWS: Fix mention to old function name.
13225         * lisp/character-fold.el: New file (Bug#20887)
13226         (character-fold-to-regexp): New function.
13227         * lisp/replace.el (replace-search): Check value of
13228         `character-fold-search'.
13229         * lisp/isearch.el: Move character-folding code to
13230         character-fold.el
13231         (isearch-toggle-character-fold): New command.
13232         (isearch-mode-map): Bind it to "\M-sf".
13233         (isearch-mode): Check value of `character-fold-search'.
13235 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13237         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
13238         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
13239         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
13241         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
13242         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
13244 2015-06-24  Glenn Morris  <rgm@gnu.org>
13246         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
13248 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13250         lisp/gnus/nnmaildir.el: Silence lexical warnings
13251         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
13252         functional style.
13253         (nnmaildir--update-nov): Remove unused var `numdir'.
13254         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
13255         (nnmaildir-request-group, nnmaildir-request-create-group)
13256         (nnmaildir-request-post, nnmaildir-request-move-article)
13257         (nnmaildir-request-accept-article, nnmaildir-active-number):
13258         Mark unused args.
13259         (nnmaildir-get-new-mail, nnmaildir-group-alist)
13260         (nnmaildir-active-file): Declare.
13261         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
13262         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
13263         `mark', `end', `new-mark', and `mark-sym'.
13264         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
13265         `nlist2'.
13266         (nnmaildir-request-expire-articles):
13267         Remove unused vars `article', `stop' and `nlist2'.
13268         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
13269         `end'.  Use nnmaildir--article when dyn-binding is needed.
13270         Give the value directly in the `let' for `del-mark', `del-action',
13271         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
13272         (nnmaildir-close-server): Declare those local vars that need to be
13273         dyn-bound.
13275 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
13277         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
13279         Port selection info fix to clang
13280         * src/keyboard.h (kbd_buffer_store_event_hold):
13281         Don't assume C11 semantics for alignof (Bug#20756).
13283         Fix bug that munged selection info
13284         On some optimizing C compilers, copying a structure did not
13285         copy the padding bytes between elements, and the type punning
13286         between struct input_data and struct selection_input_data did
13287         not work.  Change the C code to use a proper union type instead.
13288         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
13289         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
13290         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
13291         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
13292         (mark_kboards):
13293         Use union buffered_input_event, not struct input_event.
13294         (clear_event, deliver_input_available_signal, process_special_events):
13295         Remove unnecessary forward decls.
13296         (kbd_buffer_store_buffered_event): New function, mostly just the
13297         old kbd_buffer_store_event_hold, except its argument is of type
13298         union buffered_input_event, not struct input_event.
13299         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
13300         not needed otherwise.  Argument is now of type
13301         struct selection_input_event *, not struct input_event *.
13302         All callers changed.
13303         (clear_event): Arg is now of type union buffered_input_event *,
13304         not struct input_event *.  All callers changed.
13305         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
13306         (union buffered_input_event): New type.
13307         (kbd_buffer_store_event_hold): Now an inline function,
13308         defined here.
13309         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
13310         (struct input_event): Use it.
13311         * src/xselect.c (struct selection_event_queue):
13312         Make elements be of type struct selection_input_event,
13313         not struct input_event.
13314         (selection_input_event_equal): New static function.
13315         (x_queue_event): Use it.
13316         (x_queue_event, x_decline_selection_request)
13317         (x_selection_current_request, x_reply_selection_request)
13318         (x_handle_selection_request, x_handle_selection_clear)
13319         (x_handle_selection_event): Use struct selection_input_event,
13320         not struct input_event.  All callers changed.
13321         (x_convert_selection): Omit unused first arg.  All callers changed.
13322         (Fx_disown_selection_internal): Omit unnecessary union.
13323         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
13324         rather than rolling our own equivalent.  Prefer sie.kind when
13325         setting up that kind of structure.
13326         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
13327         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
13328         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
13329         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
13330         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
13331         (SELECTION_EVENT_TIME, x_handle_selection_event):
13332         Arg is now of type struct selection_input_event *)
13333         not struct input_event *.  All callers changed.
13335 2015-06-23  Glenn Morris  <rgm@gnu.org>
13337         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
13339 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
13341         * lisp/isearch.el: Fold many unicode characters to ASCII.
13342         (isearch-character-fold-search, isearch--character-fold-extras)
13343         (isearch--character-fold-table): New variable.
13344         (isearch--character-folded-regexp): New function.
13345         (isearch-search-fun-default): Use them.
13346         * lisp/replace.el (replace-character-fold): New variable.
13347         (replace-search): Use it.
13348         * etc/NEWS: Document it.
13350 2015-06-23  Glenn Morris  <rgm@gnu.org>
13352         Check for an input event before showing a dialog box.  (Bug#20813)
13353         * lisp/subr.el (y-or-n-p):
13354         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
13355         as last-nonmenu-event.
13357 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
13359         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
13360         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
13361         (switch-to-prev-buffer, switch-to-next-buffer): Respect
13362         switch-to-visible-buffer independent of the windows history.
13364 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
13366         * src/keyboard.c (last_timer_event): Remove unused var.
13368 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
13370         * test/automated/package-test.el (package-test-update-listing):
13371         Fix test.
13373 2015-06-23  Glenn Morris  <rgm@gnu.org>
13375         Revert 2014-06-25 nextstep/Makefile change.
13376         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
13377         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
13378         not as an order-only prerequisite.
13380         * configure.ac (--with-ns): Enable by default on OS X.
13382 2015-06-23  Leo Liu  <sdl.web@gmail.com>
13384         Fix shell-for/backward-command to exclude spaces
13385         * lisp/shell.el (shell-forward-command, shell-backward-command):
13386           Handle the 'move case from re-search-forward/backward.
13387           fixes debbugs:20873
13389 2015-06-22  Juri Linkov  <juri@linkov.net>
13391         * lisp/replace.el (query-replace-read-from): Add separator to
13392         the local binding of text-property-default-nonsticky.  (Bug#20690)
13394         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
13395         (Bug#20785)
13397 2015-06-22  Ken Brown  <kbrown@cornell.edu>
13399         Enable CPU profiling on Cygwin
13400         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
13401         change that undefined this.
13402         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
13403         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
13404           Cygwin.
13406         Improve diagnostics of profiler-cpu-start
13407         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
13408         return -1 if the sampling interval is invalid.
13409         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
13410         fails.  (Bug#20843)
13412 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
13414         * lisp/emacs-lisp/package.el: Exclude packages by name.
13415         (package-hidden-regexps): New variable.
13416         (package-menu--refresh): Use it.
13417         (package-menu-hide-package): New command.
13419         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
13421 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
13423         Fix debug-timer-check on systems without HAVE_TIMERFD
13424         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
13425         the expired timers, since wait_reading_process_output doesn't.
13426         (debug_timer_callback): Enlarge the tolerance to 20 msec.
13428         Fix RCS crashes in vc-test
13429         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
13430         ports of 'ci' on MS-Windows by always passing the -t- switch.
13432 2015-06-22  Glenn Morris  <rgm@gnu.org>
13434         * doc/emacs/package.texi (Packages):
13435         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
13437         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
13439 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
13441         Port tests to help-quote-translation
13442         * test/automated/ert-x-tests.el (ert-test-describe-test):
13443         * test/automated/package-test.el (package-test-describe-package)
13444         (package-test-signed): Allow straight quotes, too.
13446 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
13448         Make find-function-on-key use the current window
13449         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
13450         Extract from `find-function-on-key', add a second argument.
13451         (find-function-on-key): Use it (bug#19679).
13452         (find-function-on-key-other-window)
13453         (find-function-on-key-other-frame): New commands.
13455 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13457         Revert "Define `map-elt' as a generalized variable"
13458         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
13460 2015-06-21  Ken Brown  <kbrown@cornell.edu>
13462         Drop support for CPU profiling on Cygwin
13463         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
13464         (Bug#20843)
13466 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
13468         Fix some “nested” quoting confusion in doc strings
13469         * lisp/emacs-lisp/advice.el (ad-map-arglists):
13470         * lisp/kermit.el (kermit-clean-on):
13471         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
13472         * src/keyboard.c (Frecursive_edit):
13473         Use curved quotes when quoting text containing apostrophe,
13474         so that the apostrophe isn't curved in the output.
13476 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13478         Define `map-elt' as a generalized variable
13479         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
13480         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
13481         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
13482         `setf' with `map-elt'.
13483         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
13485 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
13487         Improve error handling in tramp-adb.el
13488         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
13489         Improve error handling.
13491 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13493         Reuse `alist-get' in map.el
13494         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
13495         elements.
13497 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
13499         Fix bytecomp-tests--warnings when $TMPDIR has a long name
13500         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
13501         Allow the warning to begin on the 3rd, not only 2nd line, which
13502         happens if temporary-file-directory has a very long name.
13504         Expect 2 icalendar tests to fail on MS-Windows
13505         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
13506         (icalendar-real-world): Make them expected failures on MS-Windows.
13508 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
13510         Improve port of settings UI to older displays
13511         * lisp/cus-start.el (standard): Don't assume curved quotes are
13512         easily distinguishable when users are tinkering with a setting
13513         that affects how curved quotes are generated.
13515         Fix quoting in electric-quote-mode doc string
13516         * lisp/electric.el (electric-quote-mode): Fix quoting.
13517         This is a fallout from the recent change introducing
13518         ‘help-quote-translation’.
13520         Spelling fix
13522         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
13524         * src/doc.c (syms_of_doc): Remove unused symbols.
13526 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
13528         * lisp/window.el (window-state-put): Undedicate target window
13529         before putting STATE into it.  (Bug#20848)
13531 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
13533         Merge from origin/emacs-24
13534         a5e6f33 Fixes: debbugs:20832
13535         b9f02cf Fixes: debbugs:20832
13537 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
13539         Fix file-in-directory-p when the directory is UNC
13540         * lisp/files.el (file-in-directory-p): Support files and
13541         directories that begin with "//".  (Bug#20844)
13543 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
13545         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
13546         in the minibuffer.  (Bug#20832)
13548 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
13550         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
13551         for adding new todo file is empty but modified.  (Bug#20832)
13553 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
13555         (filepos-to-bufferpos): Further tweaks to the utf-16 code
13556         * lisp/international/mule-util.el (filepos-to-bufferpos):
13557         Fix typo.  Move non-exact check to the utf-16 branch (the only one
13558         affected).  Don't use byte-to-position for the utf-16 case.
13560 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
13562         Minor fixes in filepos-to-bufferpos
13563         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
13564         test for utf-8-emacs.  Exempt single-byte encodings from the
13565         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
13566         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
13567         UTF-16 encoded files for CR-LF EOLs.
13569 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
13571         Improve the optional translation of quotes
13572         Fix several problems with the recently-added custom variable
13573         help-quote-translation where the code would quote inconsistently
13574         in help buffers.  Add support for quoting 'like this', which
13575         is common in other GNU programs in ASCII environments.  Change
13576         help-quote-translation to use more mnemonic values: values are now the
13577         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
13578         traditional Emacs help-buffer quoting style `like this'.  Change the
13579         default behavior of substitute-command-keys to match what's done in
13580         set-locale-environment, i.e., quote ‘like this’ if displayable,
13581         'like this' otherwise.
13582         * doc/lispref/help.texi (Keys in Documentation): Document
13583         new behavior of substitute-command-keys, and document
13584         help-quote-translation.
13585         * doc/lispref/tips.texi (Documentation Tips):
13586         Mention the effect of help-quote-translation.
13587         * etc/NEWS: Mention new behavior of substitute-command-keys,
13588         and merge help-quote-translation news into it.
13589         When talking about doc strings, mention new ways to type quotes.
13590         * lisp/cedet/mode-local.el (overload-docstring-extension):
13591         Revert my recent change to this function, which shouldn't be
13592         needed as the result is a doc string.
13593         * lisp/cedet/mode-local.el (mode-local-print-binding)
13594         (mode-local-describe-bindings-2):
13595         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
13596         * lisp/cus-theme.el (describe-theme-1):
13597         * lisp/descr-text.el (describe-text-properties-1, describe-char):
13598         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
13599         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
13600         (eieio-help-constructor):
13601         * lisp/emacs-lisp/package.el (describe-package-1):
13602         * lisp/faces.el (describe-face):
13603         * lisp/help-fns.el (help-fns--key-bindings)
13604         (help-fns--compiler-macro, help-fns--parent-mode)
13605         (help-fns--obsolete, help-fns--interactive-only)
13606         (describe-function-1, describe-variable):
13607         * lisp/help.el (describe-mode):
13608         Use substitute-command-keys to ensure a more-consistent quoting
13609         style in help buffers.
13610         * lisp/cus-start.el (standard):
13611         Document new help-quote-translation behavior.
13612         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
13613         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
13614         (help-xref-url-regexp):
13615         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
13616         * lisp/wid-edit.el (widget-documentation-link-regexp):
13617         Also match 'foo', in case we're in a help buffer generated when
13618         help-quote-translation is ?'.
13619         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
13620         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
13621         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
13622         (Fsubstitute_command_keys): Document and implement new behavior.
13623         (Vhelp_quote_translation): Document new behavior.
13625 2015-06-18  Glenn Morris  <rgm@gnu.org>
13627         * lisp/cus-start.el (help-quote-translation): Add :version.
13629         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
13631 2015-06-18  Alan Mackenzie  <acm@muc.de>
13633         Make translation of quotes to curly in doc strings optional.
13634         * src/doc.c (traditional, prefer-unicode): New symbols.
13635         (help-quote-translation): New variable.
13636         (Fsubstitute_command_keys): Make translation of quotes dependent on
13637         `help-quote-translation'; also translate curly quotes back to ASCII
13638         ones.
13639         * lisp/cus-start.el (top-level): Add a customization entry for
13640         `help-quote-translation'.
13642 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
13644         * lisp/emacs-lisp/package.el: Don't always propagate async errors
13645         (package--with-work-buffer-async): Only propagate the error if the
13646         callback returns non-nil.
13647         (package--download-one-archive): Return nil on the signature
13648         checking callback if we accept unsigned.
13649         (package--download-and-read-archives): Return non-nil on the
13650         archive download callback.
13652 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
13654         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
13655         * src/nsfns.m (Fx_create_frame):
13656         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
13657         image_cache_refcount before first x_default_parameter call.
13659 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
13661         Improve and extend filepos-to-bufferpos
13662         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
13663         Don't barf if F returns nil for some argument.
13664         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
13665         that every encoding of type 'charset' is single-byte.
13667 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
13669         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
13670         Properly delete packages.  (Bug#20836)
13672 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
13674         Update data files from just-released Unicode 8.0
13675         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
13676         status.
13677         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
13678         * admin/unidata/BidiMirroring.txt:
13679         * admin/unidata/BidiBrackets.txt:
13680         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
13682 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
13684         Document curved quotes a bit better
13685         * doc/emacs/basic.texi (Inserting Text):
13686         Mention C-x 8.  Change example to use curved quote rather
13687         than infinity, as this lets us give more ways to do it.
13688         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
13689         and quotation marks.
13690         * doc/emacs/text.texi (Quotation Marks):
13691         * doc/lispref/tips.texi (Documentation Tips):
13692         Add "curly quotes" and "curved quotes" to the index.
13693         * doc/emacs/text.texi (Quotation Marks):
13694         Give the C-x 8 shorthands for curved quotes.
13695         Cross-reference to "Quotation Marks".
13697 2015-06-17  Daiki Ueno  <ueno@gnu.org>
13699         Add pinentry.el for better GnuPG integration
13700         * lisp/pinentry.el: New file.
13701         * etc/NEWS: Add entry about pinentry.el.
13702         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
13703         (Bug#20550)
13705 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
13707         * lisp/emacs-lisp/package.el: Slightly better error reporting.
13709 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
13711         (define-minor-mode): Use setq-default for :global minor modes
13712         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
13713         Use setq-default for :global minor modes (bug#20712).
13715 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
13717         Avoid infloop in redisplay with tall images
13718         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
13719         down near ZV.  (Bug#20808)
13720         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
13721         instead of CHARPOS.
13723 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
13725         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
13726         Fix error reporting.
13728         * lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
13730         * lisp/emacs-lisp/package.el: Revert buffer after any operation
13731         Call `package-menu--post-refresh' after any operation that changes
13732         the package database (`package-install' and `package-delete').  To
13733         avoid performance issues in large transactions, these functions
13734         add `post-refresh' to `post-command-hook' instead of calling it
13735         immediately.
13736         (package-menu--mark-or-notify-upgrades): New function.
13737         (list-packages): Add it to `package--post-download-archives-hook'.
13738         (package-menu--post-refresh): Lose the upgrade-checking code, add
13739         code to remove itself from `post-command-hook'.
13740         (package-install, package-delete): Add it to `post-command-hook'.
13741         (package-menu-execute): Don't call `package-menu--post-refresh'.
13743 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
13745         Add missing function xref-location-group for elisp-mode.
13746         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
13748 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
13750         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
13751         The behavior now matches the description in the manual.  (Bug#20783)
13753 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
13755         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
13757 2015-06-17  Glenn Morris  <rgm@gnu.org>
13759         Generate char-script-table from Unicode source.  (Bug#20789)
13760         * admin/unidata/Makefile.in (AWK): New, set by configure.
13761         (all): Add charscript.el.
13762         (blocks): New variable.
13763         (charscript.el, ${unidir}/charscript.el): New targets.
13764         (extraclean): Also remove generated charscript.el.
13765         * admin/unidata/blocks.awk: New script.
13766         * admin/unidata/Blocks.txt: New data file, from unicode.org.
13767         * lisp/international/characters.el: Load charscript.
13768         * src/Makefile.in (charscript): New variable.
13769         (${charscript}): New target.
13770         (${lispintdir}/characters.elc): Depend on charscript.elc.
13771         (temacs$(EXEEXT)): Depend on charscript.
13773         * lisp/international/characters.el (char-script-table): Tweak
13774         some ranges to better match the source.  (Bug#20789#17)
13776         Remove "no-byte-compile: t" from a few files.
13777         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
13778         * lisp/obsolete/patcomp.el: No reason not to compile these.
13780 2015-06-16  Glenn Morris  <rgm@gnu.org>
13782         Fix some typos in copied Unicode data.  (Bug#20789)
13783         * lisp/international/characters.el (char-script-table):
13784         * lisp/international/fontset.el (script-representative-chars)
13785         (setup-default-fontset): Fix typos.
13787         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
13788         Don't print filename twice (it's in the prefix now).
13790         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
13791         No longer needed.
13793         Address a compilation warning.
13794         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
13795         Replace 't' with '_' in pcase.
13797         Address some check-declare warnings.
13798         * lisp/simple.el (tabulated-list-print):
13799         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
13800         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
13801         (ns-get-selection): Update declarations.
13803         Address some compilation warnings.
13804         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
13805         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
13806         Replace 't' with '_' in pcase.
13808         Address some compilation warnings.
13809         * lisp/face-remap.el (text-scale-adjust):
13810         * lisp/menu-bar.el (popup-menu-normalize-position):
13811         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
13812         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
13813         * lisp/emacs-lisp/generator.el (cps--transform-1):
13814         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
13815         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
13816         * lisp/progmodes/octave.el (octave-goto-function-definition)
13817         (octave-find-definition-default-filename):
13818         Replace 't' with '_' in pcase.
13820         * lisp/emacs-lisp/pcase.el (pcase--u1):
13821         Paper-over today's bootstrap failure.
13823 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
13825         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
13827         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
13829         Better confirmation message in `find-alternate-file' (Bug#20830)
13830         * lisp/files.el (find-alternate-file'): Improve the confirmation
13831         message to show the buffer name.
13833         Better docstring for null.  (Bug#20815)
13834         * src/data.c (null): Improves the docstring, saying what null returns
13835         when OBJECT is non-nil.
13837 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13839         * lisp/net/newst-treeview.el: Use lexical-binding.
13841         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
13842         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
13843         New auxiliary function, extracted from filepos-to-bufferpos.
13844         Make sure it terminates.
13845         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
13846         Add support for the `exact' quality.
13848 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
13850         Identify feeds in newsticker treeview with :nt-feed property
13851         * lisp/net/newst-treeview.el:
13852         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
13854 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13856         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
13857         (pcase--self-quoting-p): Floats aren't self-quoting.
13858         (pcase): Tweak docstring.
13859         (pcase--u1): Deprecate the t pattern.  Improve error detection for
13860         the nil pattern.
13861         (\`): Tweak docstring.  Signal an error for unrecognized cases.
13862         (bug#20784)
13864 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
13866         Fix infloop in filepos-to-bufferpos
13867         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
13868         offset calculation, and make it conditional on the eol-type of the
13869         file's encoding.  (Bug#20825)
13871 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
13873         Fix handling of image cache refcounts.  (Bug#20802)
13874         This backports Eli Zaretskii's solution of this problem for W32
13875         to X and NS.
13876         * src/nsfns.m (image_cache_refcount): Define unconditionally.
13877         (unwind_create_frame): If the image cache's reference count
13878         hasn't been updated yet, do that now.
13879         (Fx_create_frame): Set image_cache_refcount unconditionally.
13880         * src/xfns.c (image_cache_refcount): Define unconditionally.
13881         (unwind_create_frame): If the image cache's reference count
13882         hasn't been updated yet, do that now.
13883         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
13884         unconditionally.
13885         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
13886         X and NS.
13888 2015-06-16  Nils Ackermann  <nils@ackermath.info>
13890         Improve reftex-label-regexps default value
13891         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
13892         keyvals label regexp more strict to better cope with unbalanced
13893         brackets common in math documents.
13895 2015-06-16  Glenn Morris  <rgm@gnu.org>
13897         * doc/emacs/calendar.texi (Format of Diary File):
13898         Move "nonmarking" from here...
13899         (Displaying the Diary): ... to here.
13901         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
13902         Swap the order of these nodes.
13903         * doc/emacs/emacs.texi: Update detailed menu for the above change.
13905         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
13906         Update date of examples.
13907         (Diary, Format of Diary File): Move example from former to latter.
13908         Reduce duplication.
13910         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
13911         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
13912         Don't set no-byte-compile in the outputs.
13913         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
13915 2015-06-15  Glenn Morris  <rgm@gnu.org>
13917         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
13918         * doc/emacs/calendar.texi (Diary, Format of Diary File):
13919         Update for above diary-file change.
13921         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
13922         (apply-macro-to-region-lines): Use user-error.
13924         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
13925         (pages-directory-for-addresses): Doc fixes.
13927 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
13929         * lisp/info.el: Cleanup bytepos/charpos issues
13930         * lisp/international/mule-util.el: Use lexical-binding.
13931         (filepos-to-bufferpos): New function.
13932         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
13933         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
13934         (Info-read-subfile, Info-search): Use 0-based file positions.
13936         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
13937         (perl--syntax-exp-intro-keywords): New var.
13938         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
13939         (bug#20800).
13941 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
13943         Fix quoting when making derived mode docstring
13944         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
13945         Nest regexp-quote inside format, not the reverse.
13946         Problem reported by Artur Malabarba in:
13947         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
13949 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
13951         Fix current-iso639-language on MS-Windows
13952         * lisp/international/mule-cmds.el (set-locale-environment):
13953         Downcase the locale name before interning it.  This is so the
13954         'current-iso639-language' on MS-Windows matches the ':lang'
13955         property of font-spec objects.
13957         Limit Symbola usage some more
13958         * lisp/international/fontset.el (setup-default-fontset): Limit
13959         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
13960         (Bug#20727)
13962 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
13964         * lisp/emacs-lisp/map.el (map-let): Better docstring.
13966 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
13968         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
13969         (help-fns-test-funny-names): Spelling fixes.
13971 2015-06-14  Glenn Morris  <rgm@gnu.org>
13973         * lisp/version.el (emacs-repository-version-git): Demote errors.
13974         Check result is a hash.
13976 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
13978         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
13979         Catch errors that happen before going async.  (Bug#20809)
13981 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
13983         Another improvement of documentation of set-fontset-font
13984         * doc/lispref/display.texi (Fontsets): Say explicitly that
13985         CHARACTER can be a single codepoint.
13986         * src/fontset.c (Fset_fontset_font): Doc fix.
13988         Another improvement for symbol and punctuation characters
13989         * lisp/international/fontset.el (setup-default-fontset): Exclude
13990         from Symbola character ranges for symbols and punctuation covered
13991         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
13992         installed and where its coverage of symbols and punctuation is
13993         known to be good.  (Bug#20727)
13995 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
13997         Some generic support for multi-mode indentation.
13998         * lisp/progmodes/prog-mode.el (prog-indentation-context):
13999         New variable.
14000         (prog-first-column, prog-widen): New convenience functions.
14002 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14004         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
14005         Don't assume that `tabulated-list-printer' will leave point at the
14006         end of the buffer.  (Bug#20810)
14008 2015-06-13  Glenn Morris  <rgm@gnu.org>
14010         Tweaks for getting repository version; a bit more like it was for bzr
14011         * lisp/version.el (emacs-repository-version-git)
14012         (emacs-repository--version-git-1): New functions,
14013         split from emacs-repository-get-version.
14014         (emacs-repository-get-version): Make the second argument meaningful.
14016         * lisp/startup.el (command-line-1): Inform if skipping relative
14017         file names due to deleted PWD.
14019         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
14020         when starup directory is missing.  (Bug#18851)
14021         (errno.h): Include it.
14023 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
14025         Better fix for documenting `X as "`X"
14026         Fix suggested by Stefan Monnier.
14027         * lisp/help-fns.el (help-fns--signature):
14028         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
14029         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
14030         Don't treat `X specially, as help-fns--signature now handles this.
14032 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
14034         Improve the default fontset when Symbola is not installed
14035         * lisp/international/fontset.el (setup-default-fontset): Only
14036         prepend Symbola and FreeMono font specs for symbols and
14037         punctuation; do not replace the default spec for them.  This
14038         should have better results when Symbola/FreeMono are not
14039         installed.  (Bug#20727)
14041         Improve documentation of ':lang' in font specs
14042         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
14043         use of the ':lang' property of the font spec.
14044         * doc/emacs/frames.texi (Fonts): Document the language names that
14045         can be in the STYLE part of XLFD.
14046         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
14047         property.
14049         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
14051         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
14053         Revert last change in fontset.el
14054         * lisp/international/fontset.el (setup-default-fontset): Revert
14055         the change "Configure Symbola font only if installed", since font
14056         search is evidently not yet set up when this function is called.
14057         (Bug#20727)
14059 2015-06-12  Glenn Morris  <rgm@gnu.org>
14061         Ensure early startup warnings are visible at the end.  (Bug#20792)
14062         * lisp/emacs-lisp/warnings.el (display-warning):
14063         If startup isn't complete, delay the warning.
14064         * lisp/startup.el (normal-top-level, command-line):
14065         Let display-warning automatically handle the needed delays.
14066         Run delayed-warnings-hook.
14068         * lisp/version.el (emacs-repository-get-version):
14069         Avoid calling external executable if possible.  (Bug#20799)
14071 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14073         Document `X as "`X", not as "(` X)"
14074         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
14075         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
14077         * src/print.c (print_object): Minor simplification.
14079 2015-06-12  Glenn Morris  <rgm@gnu.org>
14081         * src/buffer.c (init_buffer): Add final newline to message.
14083 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14085         Configure Symbola font only if installed
14086         * lisp/international/fontset.el (setup-default-fontset):
14087         Don't specify the Symbola font if it's not installed.
14088         Likewise for FreeMono.  (Bug#20727)
14090 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
14092         Configure Symbola font only for symbols and punctuation
14093         * lisp/international/fontset.el (setup-default-fontset): Leave
14094         only symbols and punctuation in the fontset setup for Symbola
14095         font; remove "Greek and Coptic" and "Cyrillic Supplement".
14096         (Bug#20798)
14098 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
14100         Fix crash in fontset-info
14101         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
14102         non-nil.
14104 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14106         Port to Solaris 10 sparc + Sun C 5.13
14107         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
14108         Adjust to process.c change.
14109         * src/process.c (create_process): Declare volatile variables at
14110         top level of this function, so that they're less likely to be
14111         reused later in the function in the code executed by the vforked
14112         child.  Do not declare locals used only in the vforked child, as
14113         they might share memory with locals still live in the parent.
14114         Instead, use the same variables in the child as in the parent.
14115         This works around a subtle bug that causes a garbage collector
14116         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
14118 2015-06-12  Glenn Morris  <rgm@gnu.org>
14120         * lisp/startup.el (normal-top-level): Don't let *Messages* get
14121         a nil default-directory.
14123 2015-06-11  Glenn Morris  <rgm@gnu.org>
14125         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
14127         Some progress towards starting with PWD deleted.  (Bug#18851)
14128         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
14129         * lisp/startup.el (normal-top-level, command-line-1):
14130         * lisp/minibuffer.el (read-file-name-default):
14131         Handle default-directory being nil.
14133 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
14135         Fix "not a tty" bug on Solaris 10
14136         * configure.ac (PTY_OPEN): Define to plain 'open'
14137         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
14138         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
14139         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
14140         hosts that call grantpt which does its work via a setuid subcommand
14141         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
14142         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
14143         seems relevant in that case too.
14145 2015-06-11  Juri Linkov  <juri@linkov.net>
14147         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
14148         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
14149         (Bug#20785)
14151 2015-06-11  Glenn Morris  <rgm@gnu.org>
14153         * lisp/international/characters.el (char-script-table): Fix typo.
14155 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
14157         Fix quoting of help for functions with odd names
14158         While investigating Bug#20759, I discovered other quoting problems:
14159         C-h f mishandled characters like backslash and quote in function names.
14160         This fix changes the behavior so that 'C-h f pcase RET' now
14161         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
14162         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
14163         in src/lread.c's read1 function says that the backslash will be
14164         needed starting in Emacs 25, which implies that 'format' is
14165         correct and the old pcase documention was wrong to omit the backslash.
14166         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
14167         * lisp/help-fns.el (help-fns--signature):
14168         * lisp/help.el (help-add-fundoc-usage):
14169         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
14170         Use help--make-usage-docstring rather than formatting
14171         help-make-usage.
14172         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
14173         Return raw docstring.
14174         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
14175         raw docstring.  Take more care to distinguish raw from cooked dstrings.
14176         (describe-function-1): Let help-fns--signature substitute
14177         command keys.
14178         * lisp/help.el (help--docstring-quote): New function.
14179         (help-split-fundoc): Use it, to quote funny characters more
14180         systematically.
14181         (help--make-usage): Rename from help-make-usage, since this
14182         should be private.  Leave an obsolete alias for the old name.
14183         (help--make-usage-docstring): New function.
14184         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
14186 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
14188         * lisp/thingatpt.el (in-string-p): Revert last change,
14189         since in-string-p is not used in thingatpt.el but only from outside.
14190         Also, use lexical binding.
14192 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
14194         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
14195         * test/automated/let-alist.el (let-alist-cons): Test it.
14197 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
14199         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
14201 2015-06-10  Glenn Morris  <rgm@gnu.org>
14203         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
14205         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
14206         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
14207         * admin/gitmerge.el (gitmerge-commit-message):
14208         Exclude "skipped" messages from ChangeLog once again.
14210         Slight namespace cleanup for thingatpt.el.
14211         * lisp/thingatpt.el (thing-at-point--in-string-p)
14212         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
14213         (thing-at-point--read-from-whole-string): Rename from
14214         old versions without "thing-at-point--" prefix.
14215         Keep old versions as obsolete aliases.  Update all uses.
14217         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
14218         Move requiring of finder from here...
14219         (checkdoc-package-keywords): ... to here.
14221         Use 'user-error' in a few calendar files.
14222         * lisp/calendar/appt.el (appt-add):
14223         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
14224         (calendar-generate):
14225         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
14226         Replace 'error' with 'user-error'.
14228         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
14230         * lisp/files-x.el (add-file-local-variable):
14231         Special-case 'lexical-binding'.  (Bug#20641)
14233         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
14234         No longer autoload.
14235         * doc/misc/autotype.texi (Executables):
14236         Undocument executable-self-display.
14238         * lisp/progmodes/executable.el (executable-self-display):
14239         Use non-obsolete tail syntax.  (Bug#20779)
14240         (executable-self-display): Doc update.
14242 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
14244         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
14245         (finder-known-keywords): Silence byte-compiler.
14247 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
14249         * lisp/simple.el (eval-expression): Macroexpand before evaluating
14250         (bug#20730).
14252         * lisp/progmodes/sh-script.el: Better handle nested quotes.
14253         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
14254         (sh-font-lock-quoted-subshell): Make sure double quotes within single
14255         quotes don't mistakenly end prematurely the surrounding string.
14257         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
14259 2015-06-09  Glenn Morris  <rgm@gnu.org>
14261         * test/automated/Makefile.in (ELFILES): Sort.
14263         * Makefile.in (SUBDIR_MAKEFILES):
14264         * lwlib/Makefile.in (WARN_CFLAGS):
14265         Use built-in Make functions rather than echo+sed.
14267 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
14269         Update char-script-table
14270         * lisp/international/characters.el (char-script-table): Update
14271         from Unicode 8.0 Draft.
14273         Improve font selection for punctuation and other symbols
14274         * src/fontset.c (face_for_char): If the character's script is
14275         'symbol', and the font used for ASCII face has a glyph for it, use
14276         the font for the ASCII face instead of searching the fontsets.
14277         This comes instead of NS-specific code that used the current
14278         face's font instead, which is now disabled due to undesirable
14279         consequences.  (Bug#20727)
14281 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
14283         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
14284         Skip past `#' to find BEG (bug#20771).
14285         * test/automated/elisp-mode-tests.el
14286         (elisp-completes-functions-after-hash-quote): New test.
14288 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
14290         Fix compilation warning/error in --without-x builds
14291         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
14292         code on HAVE_WINDOW_SYSTEM.
14294         Improve the default fontset wrt symbols
14295         * lisp/international/fontset.el (setup-default-fontset): Better
14296         setup of fontset-default for symbols: use Symbola and FreeMono.
14297         (Bug#20727)
14299 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
14301         Add new command checkdoc-package-keywords
14302         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
14303         New defcustom.
14304         (checkdoc-list-of-strings-p): Add doc.
14305         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
14306         non-nil, call `checkdoc-package-keywords'.
14307         (checkdoc-get-keywords): New defun.
14308         (checkdoc-package-keywords): New command.  Warns if the current file
14309         has package.el-style keywords that aren't in `finder-known-keywords'.
14310         * etc/NEWS: Add entry.
14312 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
14314         Avoid crashes when key-binding is called from a timer
14315         * src/keymap.c (Fkey_binding): Don't segfault if called with an
14316         empty vector as KEY.  (Bug#20705)
14318         Fix a thinko in arc-mode.el
14319         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
14320         non-Zip64 case.  (Bug#20769)
14322 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
14324         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
14326 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
14328         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
14329         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
14330         "*warn*", print the warning to the standard output.  (bug#20754)
14332 2015-06-07  Glenn Morris  <rgm@gnu.org>
14334         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
14336         * src/font.c (syms_of_font) <font-log>: Doc fix.
14338         Remove the obsolete leading "*" from some C doc strings.
14339         * src/coding.c (syms_of_coding):
14340         * src/font.c (syms_of_font): Remove leading "*" from docs.
14341         * lisp/cus-start.el (enable-character-translation): Add it.
14343 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
14345         Move gen_origin from program to data
14346         That way, 'make change-history' needs to change only ChangeLog.2,
14347         instead of having to change two files.
14348         * ChangeLog.2: Add commit info for range that this file covers.
14349         * Makefile.in (new_commit_regexp): New macro.
14350         (change-history-nocommit): Simplify, by putting what used to be
14351         the gen_origin value into the data (ChangeLog.2) rather than
14352         into the program (gitlog-to-emacslog).
14353         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
14354         the input file (e.g., ChangeLog.2) rather than by having a
14355         constant in the program.  Substitute it into the output.
14357 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
14359         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
14360         function name (bug#20759).
14362 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
14364         Adapt 'struct timespec' to next release of MinGW runtime
14365         * nt/inc/ms-w32.h (struct timespec): Don't declare if
14366         __struct_timespec_defined is defined.
14368 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
14370         Merge from gnulib
14371         This incorporates:
14372         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
14373         2015-06-05 stdio: Don't redefine gets when using C++
14374         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
14375         2015-06-02 file-has-acl: fix build on Mac OS X 10
14376         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
14377         2015-06-01 pthread_sigmask: discount system version if a simple macro
14378         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
14379         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
14380         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
14381         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
14382         * lib/gnulib.mk: Regenerate.
14384 2015-06-06  Juri Linkov  <juri@linkov.net>
14386         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
14387         before calling grep-compute-defaults because now it affects the
14388         command lines computed in grep-compute-defaults.  (Bug#20728)
14390 2015-06-06  Glenn Morris  <rgm@gnu.org>
14392         Address some compilation warnings.
14393         * lisp/international/mule-cmds.el (w32-get-console-codepage)
14394         (w32-get-console-output-codepage):
14395         * lisp/progmodes/elisp-mode.el (xref-collect-references):
14396         * lisp/version.el (cairo-version-string): Declare.
14397         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
14399 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
14401         Fix display when a font claims large values of ascent and descent
14402         This fixes bug#20628.
14403         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
14404         coordinate of a hollow cursor glyph when the original glyph's
14405         ascent is too small.
14406         (get_font_ascent_descent, normal_char_ascent_descent)
14407         (normal_char_height): New functions.
14408         (handle_single_display_spec, append_space_for_newline)
14409         (calc_pixel_width_or_height, produce_stretch_glyph)
14410         (calc_line_height_property): Use normal_char_ascent_descent and
14411         normal_char_height.
14412         (x_produce_glyphs): When font-global values of ascent and descent
14413         are too large, use per-character glyph metrics instead, if
14414         possible.  But don't allow the glyph row's ascent and descent
14415         values become smaller than the values from the metrics of the
14416         font's "normal" character.
14417         * src/xftfont.c (xftfont_draw):
14418         * src/w32font.c (w32font_draw): Correct the values of ascent and
14419         descent used to draw glyphless characters' hex code in a box.
14420         * src/xterm.c (x_draw_glyph_string_background):
14421         * src/xdisp.c (x_produce_glyphs):
14422         * src/w32term.c (x_draw_glyph_string_background):
14423         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
14424         to detect fonts whose global ascent and descent values are too
14425         large to be used in layout decision, and redraw the background
14426         when that happens.
14427         * src/dispextern.h (FONT_TOO_HIGH): New macro.
14428         (get_font_ascent_descent): Add prototype.
14429         * src/xterm.c (x_new_font):
14430         * src/w32term.c (x_new_font):
14431         * src/nsterm.m (x_new_font):
14432         * src/font.c (font_open_entity):
14433         * src/composite.c (composition_gstring_width):
14434         Use get_font_ascent_descent to obtain reasonable values for ascent
14435         and descent of a font.
14437 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
14439         Add assertion in adjust_point_for_property
14440         * src/keyboard.c (adjust_point_for_property): Add eassert for
14441         current buffer being shown in selected window.
14443 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
14445         Replace uses of in-string-p; make it obsolete
14446         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
14447         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
14449 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
14451         Fix Dired display of an explicit list of files by ls-lisp.el
14452         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
14453         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
14454         correct for when displaying individual files separately, not as
14455         part of listing a directory, in which case these values are not
14456         recomputed by 'ls-lisp-insert-directory', but used verbatim.
14458         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
14460 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
14462         Do not adjust point in a non-selected window
14463         * src/keyboard.c (command_loop_1): Do not adjust point when
14464         current buffer is not shown in selected window (Bug#20590).
14466         * etc/DEBUG: Mention 'maybe_call_debugger'
14468 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
14470         Fix a unit test for map.el
14471         * test/automated/map-tests.el (test-map-let): Fix the test to work
14472         with the new syntax of `map-let'.
14474         * lisp/emacs-lisp/map.el (map-let): Better docstring.
14476         Better syntax for the map pcase pattern
14477         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
14478         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
14480         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
14482         Fix a byte-compiler error in map-put and map-delete
14483         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
14484         called with a symbol.
14486 2015-06-05  Glenn Morris  <rgm@gnu.org>
14488         * admin/gitmerge.el (gitmerge-commit-message):
14489         Revert to including "skipped" messages in ChangeLog once again.
14491 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
14493         Use string> instead of equiv lambda with string<
14494         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
14495         lambda with string<.
14497 2015-06-05  Glenn Morris  <rgm@gnu.org>
14499         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
14500         (map--delete-array): Fix typo.
14502         * test/automated/map-tests.el: Replace "assert" with "should".
14504         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
14505         (SUBDIRS_REL): Derive from SUBDIRS.
14507         Tweak some build messages.
14508         * lisp/Makefile.in ($(lisp)/loaddefs.el):
14509         * lisp/cus-dep.el (custom-make-dependencies):
14510         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
14511         * lisp/international/titdic-cnv.el (batch-titdic-convert):
14512         Don't say how to compile.
14514 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
14516         Omit U+0332 COMBINING LOW LINE in previous change
14517         It turns out that it does not work on Ubuntu 15.04.
14519         Fix transliteration of Bahá'í months
14520         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
14521         Improve quality of Latin transliteration of Bahá'í month names.
14523         Fix curved quotes in a few places
14524         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
14525         The strings in question are not doc strings, so this partially
14526         undoes the recent change that assumed they were doc strings.
14527         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
14528         * lisp/info.el (Info-finder-find-node):
14529         Use curved quotes.
14530         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
14531         Also allow curved quotes in doc strings.
14533 2015-06-04  Glenn Morris  <rgm@gnu.org>
14535         * lisp/Makefile.in (AM_V_at): Add missing definition.
14537         * lisp/Makefile.in: Quieten output a bit.
14538         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
14539         Don't echo directories, since the commands we invoke print them.
14541         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
14542         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
14543         (SUBDIRS_SUBDIRS): New variables.
14544         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
14545         Remove.
14546         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
14547         (update-subdirs, compile-main, compile-clean):
14548         Replace "setwins" usage with new "SUBDIRS" variables.
14550         * lisp/vc/compare-w.el (compare-windows-get-window-function):
14551         Fix :version tag.
14553 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14555         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
14557         Undo removal of x_clear_area call on expose for GTK3 or cairo
14558         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
14559         Clear exposed area.  (Bug#20677)
14561 2015-06-04  Glenn Morris  <rgm@gnu.org>
14563         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
14565         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
14567         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
14568         Rename from quail-lao-update-translation, since lao.el defines that.
14570 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
14572         Handle new-style advice in find-funct
14573         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
14574         Handle new-style advice.  Return the symbol's function definition.
14575         (Bug#20718)
14576         (find-function-library): Update accordingly.
14578 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
14580         Merge branch 'map'
14582         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
14584         Add new function string-greaterp
14585         * lisp/subr.el (string-greaterp): New function.  Also aliased to
14586         `string>'.
14587         * test/automated/subr-tests.el (string-comparison-test): Add unit
14588         tests for `string>'and `string<'.
14589         * src/fns.c (string-lessp): Better docstring.
14591 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
14593         Fix timezone-related functions on MS-Windows
14594         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
14595         'xputenv', even if no reallocation of tzvalbuf was necessary.
14596         This fixes a bug in timezone-related functions on MS-Windows.
14597         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
14599 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
14601         Don't pass raw directory name to 'error'
14602         * lisp/files.el (basic-save-buffer-2): Avoid format error if
14603         a directory name contains a string like "%s".
14605 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
14607         Override 'grep --color=always'
14608         * lisp/progmodes/xref.el (xref-collect-matches):
14609         Override --color=always in grep-find-template.
14611 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
14613         Fix error introduced recently in file-notify-tests.el
14614         * test/automated/file-notify-tests.el
14615         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
14616         (file-notify--deftest-remote): Revert previous patch, not
14617         necessary anymore.
14619 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
14621         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
14622         Starting from a display string after a newline, point went to the
14623         previous line.  Also, fix an inadvertent use of a buffer position
14624         with FETCH_BYTE.  (Bug#20701)
14626 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
14628         Instrument file-notify-test.el in order to catch hydra error
14629         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
14630         Wrap body by `ignore-case', in order to trap non-local errors.
14632 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14634         Undo previous changes in non-toolkit scroll bar drawing
14635         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
14636         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
14638 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
14640         * .gitignore: Also ignore doc/*/*/*.html and .ps.
14642         Support quotes 'like this' in info files
14643         This is possible when 'makeinfo --disable-encoding' is used
14644         in Texinfo 5.
14645         * lisp/calc/calc-help.el (calc-describe-thing):
14646         * lisp/gnus/gnus-art.el (gnus-button-alist):
14647         * lisp/info.el (Info-find-index-name):
14648         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
14649         Also support quotes 'like this'.
14650         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
14651         * lisp/finder.el (finder-font-lock-keywords): Remove var that
14652         hasn't been used in years, instead of bothering to fix its quoting.
14654 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
14656         * .gitignore: Remove !test/etags/html-src/*.html.
14657         It's no longer needed, since *.html was removed.  Sort.
14659 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
14661         Restore <D> instead of '.' in grep-find-template
14662         * lisp/cedet/semantic/symref/grep.el
14663         (semantic-symref-grep-use-template): Update a comment.
14664         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
14665         instead of '.' in grep-find-template (bug#20719).
14666         (rgrep): Pass nil as the directory to rgrep-default-command.
14667         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
14668         default value for DIR.
14669         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
14670         workaround.
14672 2015-06-02  Glenn Morris  <rgm@gnu.org>
14674         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
14676         * configure.ac (emacs_config_features): Add Cairo.
14678         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
14680 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
14682         Ensure that autorevert works for remote files in file-notify-tests.el
14683         * test/automated/file-notify-tests.el (file-notify--test-desc):
14684         New defvar.
14685         (file-notify--test-remote-enabled)
14686         (file-notify-test00-availability, file-notify-test01-add-watch)
14687         (file-notify-test02-events): Use it.
14688         (file-notify--test-event-test): Check proper descriptor.
14689         (file-notify-test03-autorevert): Ensure that
14690         `visited-file-modtime' has changed.  (Bug#20392)
14692 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
14694         Add a pcase pattern for maps and `map-let' based on it
14695         * lisp/emacs-lisp/map.el (map-let): New macro.
14696         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
14697         * test/automated/map-tests.el: New test for `map-let'.
14699 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
14701         Reuse rgrep mechanics in xref-find-regexp
14702         * lisp/progmodes/grep.el (rgrep-default-command):
14703         Extract from `rgrep'.
14704         * lisp/progmodes/xref.el (xref-collect-references): Split from
14705         `xref-collect-matches'.  Only handle the case of symbol search.
14706         (xref-collect-matches): Instead of Semantic Symref, use
14707         `rgrep-default-command', to take advantage of its directory and
14708         file ignore settings.
14709         (xref--collect-match): Remove the last argument, leaving the
14710         regexp construction up to the caller.
14711         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
14712         Change to take the xref-collect- function to use as an argument.
14713         (elisp-xref-find): Update accordingly.
14714         * lisp/progmodes/etags.el (etags--xref-find-matches)
14715         (etags-xref-find): Same.
14717         Move xref-elisp-location to elisp-mode.el
14718         * lisp/progmodes/xref.el (xref-elisp-location)
14719         (xref-make-elisp-location, xref-location-marker): Remove here.
14720         (xref--xref): Don't limit the type of the location slot.
14721         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
14722         Define as a cl-struct here.
14723         (xref-location-marker): Move here.
14725 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
14727         Minor tweaks for .gitignore
14728         * .gitignore: Don't ignore versioned *.html and *.ps files.
14729         Don't ignore admin/notes/tags that might be ignored as TAGS
14730         on case-insensitive filesystems.  (Bug#20710)
14732 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
14734         Generate curved quotes in ert doc
14735         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
14736         (ert-results-mode-menu)
14737         (ert-results-pop-to-backtrace-for-test-at-point)
14738         (ert-results-pop-to-messages-for-test-at-point)
14739         (ert-results-pop-to-should-forms-for-test-at-point)
14740         (ert-describe-test):
14741         Quote ‘like this’, not `like this', when generating doc strings
14742         and the like.
14743         * test/automated/ert-x-tests.el (ert-test-describe-test):
14744         Allow quoting ‘like this’.
14746 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
14748         Add test for previous commit
14749         * test/automated/replace-tests.el: New file.
14750         (query-replace--split-string-tests): Add test for previous commit.
14752         Avoid confusion in query-replace history when replacing NUL chars
14753         * lisp/replace.el (query-replace--split-string): New function.
14754         (query-replace-read-from): Rely on the 'separator' property
14755         instead of searching for the NUL character (Bug#20690).
14757 2015-06-02  Glenn Morris  <rgm@gnu.org>
14759         Merge from origin/emacs-24
14760         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
14762         * admin/gitmerge.el (gitmerge-commit-message):
14763         Exclude "skipped" messages from ChangeLog.
14765 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
14767         Sync with Tramp repository
14768         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
14769         messages.
14770         (tramp-handle-make-auto-save-file-name): When calling
14771         `make-auto-save-file-name' internally, make sure it uses Unix-like
14772         behavior, not Windows-like behavior.
14773         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
14774         the local case, because "chown" might fail on w32.
14775         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
14776         for XEmacs.
14778 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
14780         MS-Windows followup for batch stdout/stderr output changes
14781         * lisp/international/mule-cmds.el (set-locale-environment):
14782         In batch mode, use console codepages for keyboard and terminal
14783         encoding.  (Bug#20545)
14785         Update .gitattributes for DOS EOL files
14786         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
14787         CRLF end-of-line format.
14789         NS equivalents of xterm.c and w32term.c changes
14790         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
14791         glyph string background also when the font in use claims
14792         preposterously large global height value.  Helps to remove
14793         artifacts left from previous displays when glyphless characters
14794         are displayed as hex code in a box.
14795         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
14796         value for FRAME_LINE_HEIGHT, even when a font claims very large
14797         value for its height.
14799 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
14801         Avoid grave accent quoting in stderr diagnostics
14802         A few Emacs diagnostics go directly to stderr, and so can't easily
14803         contain curved quotes (as non-UTF-8 locales might mishandle them).
14804         Instead of bothering to add support for this rarity, reword the
14805         diagnostics so that they don't use grave accent to quote.
14806         * src/alloc.c (mark_memory): Fix comment.
14807         * src/buffer.c (init_buffer):
14808         * src/dispnew.c (init_display):
14809         * src/emacs.c (main, sort_args):
14810         * src/lread.c (dir_warning):
14811         * src/term.c (init_tty):
14812         * src/unexmacosx.c (unexec):
14813         * src/xfns.c (select_visual):
14814         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
14815         Reword stderr diagnostics to avoid quoting `like this'.
14816         * src/unexmacosx.c: Include errno.h.
14817         * src/xfns.c (select_visual): Encode value for locale.
14819 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
14821         Treat batch stdout/stderr like standard display
14822         Calls like (print FOO) could generate improperly encoded or
14823         hard-to-read output if FOO contains characters outside the system
14824         locale.  Fix this by treating batch stdout and stderr like
14825         interactive standard display, when it comes to transliterating and
14826         encoding characters (Bug#20545).
14827         * doc/emacs/mule.texi (Communication Coding):
14828         * doc/lispref/display.texi (Active Display Table):
14829         * doc/lispref/nonascii.texi (Locales):
14830         * etc/NEWS:
14831         * src/coding.c (syms_of_coding):
14832         * src/dispnew.c (syms_of_display):
14833         Document this.
14834         * src/print.c: Include disptab.h.
14835         (printchar_to_stream): New function, with much of the guts of the
14836         old Fexternal_debugging_output, except this one also uses the
14837         standard display table.
14838         (printchar, strout, Fexternal_debugging_output): Use it.
14840 2015-05-31  Glenn Morris  <rgm@gnu.org>
14842         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
14844 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
14846         Remove DEFSYMs that aren't used at the C level.  Also:
14847         * src/decompress.c (Qzlib_dll):
14848         * src/font.c (Qunicode_sip):
14849         * src/frame.c (Qtip_frame):
14850         * src/ftfont.c (Qserif):
14851         * src/gnutls.c (Qgnutls_dll):
14852         * src/xml.c (Qlibxml2_dll):
14853         Move from here ...
14854         * src/w32fns.c (syms_of_w32fns): ... to here,
14855         as these are used only on MS-Windows.
14857 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
14859         Use another default value for tramp-histfile-override
14860         * lisp/net/tramp-sh.el (tramp-histfile-override):
14861         Use ".tramp_history" as default.
14862         Fixes bug#20446
14864 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
14866         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
14868 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
14870         * etc/NEWS: Add an entry about map.el.
14872         Improve the docstring of functions in map.el
14873         Since a map is not a data structure but a concept, adding information
14874         about the possible types of maps can be useful information.
14875         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
14876         each public function.
14878 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
14880         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
14881         specific tests depending on the type of the map.
14883         * lisp/emacs-lisp/map.el: Better docstrings.
14885 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
14887         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
14889 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
14891         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
14893         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
14895         Fix a false negative in `map-elt' with alists and values being nil
14896         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
14897         found but its associated value is nil, do not return the default
14898         value.
14899         * test/automated/map-tests.el: Add a regression test.
14901 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
14903         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
14905         Do not signal an error when trying to delete a key from an array
14906         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
14907         the key is present to avoid signaling an error.
14908         * test/automated/map-tests.el: Add a test for deleting non-existing
14909         keys from maps.
14911         * lisp/emacs-lisp/map.el: Better docstring.
14913         Minor improvement in map-elt
14914         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
14915         doing a lookup in arrays, but check the boundaries of the array
14916         instead.
14917         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
14918         and a negative integer as key.
14920 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
14922         * test/automated/map-tests.el: Refactoring of test methods.
14924         * test/automated/map-tests.el: Renamed from map-test.el.
14926 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
14928         * lisp/emacs-lisp/map.el (map-into): Better error message.
14930         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
14932         Throw an error when converting a map into an unknown map type
14933         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
14934         not valid.
14935         * test/automated/map-test.el: Add a regression test.
14937         New library map.el similar to seq.el but for mapping data structures.
14938         * test/automated/map-test.el: New file.
14939         * lisp/emacs-lisp/map.el: New file.
14941 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
14943         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
14944         there's no explicit tag name (bug#20629).
14946 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
14948         Remove format2
14949         * src/editfns.c, src/lisp.h (format2): Remove.
14950         It is more trouble than it's worth, now that we have CALLN.
14951         This is just a minor refactoring.
14952         * src/buffer.c (Fkill_buffer):
14953         * src/dbusbind.c (XD_OBJECT_TO_STRING):
14954         * src/fileio.c (barf_or_query_if_file_exists):
14955         Adjust to format2 going away.
14957         Don't misencode C-generated messages
14958         Also, be more consistent about calls to 'Fmessage' vs 'message'.
14959         * src/alloc.c (Fgc_status):
14960         Prefer AUTO_STRING to build_string for Fmessage call.
14961         * src/data.c (Fmake_variable_buffer_local)
14962         (Fmake_local_variable, Fmake_variable_frame_local):
14963         * src/doc.c (store_function_docstring):
14964         Use Fmessage, not message, since the argument can contain
14965         non-ASCII characters, and this can cause the resulting message
14966         to be incorrectly encoded for the current environment.
14967         * src/fns.c (maybe_resize_hash_table):
14968         * src/xselect.c (x_clipboard_manager_save_all):
14969         Use message, not Fmessage, since Fmessage's power isn't needed here.
14970         * src/process.c (Fmake_network_process): Reword message to avoid %s.
14971         * src/xdisp.c (vmessage): Document restrictions on message contents.
14972         (message_nolog) [false]: Remove unused code.
14974         Use \r rather than ^M in string literals
14975         This is less likely to cause problems on platforms that
14976         use CRLF (or CR!) termination for lines.
14978         Update .gitattributes to match current sources
14979         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
14980         * .gitattributes: Accommodate tests that insist on DOS format.
14981         Remove test/automated/data/decompress/foo-gzipped.
14982         Add etc/e/eterm-color.
14984 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
14986         * doc/emacs/mule.texi (Modifying Fontsets):
14987         Document face-ignored-fonts.  (Bug#20628)
14989         Add etags test for the new -Q option
14990         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
14991         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
14992         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
14993         test-case changes below.
14994         * test/etags/ETAGS.good_6: New file.
14995         * test/etags/cp-src/x.cc: New file.
14996         * test/etags/Makefile (CPSRC): Add x.cc.
14997         (check): Add one more test, for -Q.
14999 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
15001         Use list for the tags completion table, not obarray
15002         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
15003         list instead of an obarray
15004         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
15005         (tags-completion-table): Combine those lists.
15006         (tags-completion-table): Update the docstring.
15008 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
15010         Restore EOL format testing in etags
15011         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
15012         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
15013         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
15014         test-case changes below.
15015         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
15016         * test/etags/cp-src/c.C (B): Add back stray CR character.
15017         * test/etags/c-src/dostorture.c: Add back.
15018         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
15020 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
15022         Declare Emacs on MS-Windows to be DPI-aware
15023         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
15024         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
15025         This avoids Windows entering compatibility mode for Emacs,
15026         which causes fonts to look less nice.
15028 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
15030         Improve Tramp traces
15031         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
15032         * lisp/net/tramp.el (tramp-debug-message): Use it.
15034 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
15036         backup-buffer minor reworking of internals
15037         * lisp/files.el (backup-buffer): Rework to avoid a couple of
15038         unused locals inadvertently introduced in the previous change.
15040         backup-buffer now reports .emacs.d/%backup% ills
15041         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
15042         fails due to disk space exhaustion or whatever, do not pretend
15043         that it succeeded.  More generally, do a better job of checking
15044         for I/O failures, and limit the scope of the condition-case to
15045         just the operations where file errors should be caught and ignored
15046         (Bug#20595).  Also, don't bother trying to delete later backups if
15047         an earlier deletion fails, as this is a sign of trouble and it's
15048         better to stop when there's trouble.
15050         copy-file now truncates output after writing
15051         * src/fileio.c (Fcopy_file): Truncate output after writing rather
15052         than before.  This is more likely to work than truncation before
15053         writing, if the file system is out of space or the user is over
15054         disk quota (Bug#20595).  Also, check for read errors.
15056 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
15058         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
15059         Don't load descriptors from directories above the package directories.
15061 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
15063         Merge from gnulib
15064         This incorporates the following (Bug#20681):
15065         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
15066         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
15067         * lib/set-permissions.c: Copy from gnulib.
15069 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
15071         Improve Tramp traces
15072         * lisp/net/tramp.el (tramp-call-process-region): New defun.
15073         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
15075 2015-05-29  Glenn Morris  <rgm@gnu.org>
15077         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
15079 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
15081         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
15082         The signature was changed in the cairo branch, merged on 2015-05-23.
15083         This oversight broke compiling only the non-toolkit X version.
15085 2015-05-29  Samer Masterson  <samer@samertm.com>
15087         * doc/lispref/os.texi: Update initial-buffer-choice docs.
15089 2015-05-29  Glenn Morris  <rgm@gnu.org>
15091         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
15092         Mark as an expected failure.
15094 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
15096         Change package test to look for curved quotes
15097         * test/automated/package-test.el (package-test-describe-package)
15098         (package-test-signed): Search for curved single quotes as well as
15099         for grave accent and apostrophe.
15101 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
15103         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
15104         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
15106 2015-05-28  Samer Masterson  <samer@samertm.com>
15108         Show files when `initial-buffer-choice' is non-nil
15109         * lisp/startup.el (command-line-1): When Emacs is given a file as an
15110         argument and `initial-buffer-choice' is non-nil, display both the file
15111         and `initial-buffer-choice'.  For more than one file, show
15112         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
15113         commands out of the command line arg parser.
15114         (initial-buffer-choice): Clarify docstring.
15116 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
15118         Fix last commit
15119         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
15120         (gnulib module qcopy-acl): Add back, as it is harmless.  This
15121         minimizes differences wrt lib/gnulib.mk.
15123         Fix the MS-Windows build as followup to gnulib update
15124         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
15125         set-permissions.c, as they don't compile on MinGW.
15126         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
15128 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
15130         Revert my change to gnus-art.el
15131         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
15132         It wasn't that important, and it caused a Gnus build to fail.  See:
15133         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
15135         New minor mode Electric Quote
15136         This lets you easily insert quotes ‘like this’ by typing
15137         quotes `like this', and similarly you can easily insert
15138         quotes “like this” by typing quotes ``like this'' (Bug#20545).
15139         * doc/emacs/basic.texi (Inserting Text):
15140         * doc/emacs/modes.texi (Minor Modes):
15141         * etc/NEWS: Document it.
15142         * doc/emacs/text.texi (Quotation Marks): New section.
15143         * lisp/electric.el (electric-quote-comment)
15144         (electric-quote-string, electric-quote-paragraph):
15145         New custom vars.
15146         (electric--insertable-p)
15147         (electric-quote-post-self-insert-function): New functions.
15148         (electric-quote-mode, electric-quote-local-mode): New minor modes.
15149         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15150         Add curved single quotes to electric-pair-text-pairs.
15151         Set electric-quote-string in this buffer.
15153         A few more doc string fixes (Bug#20385)
15155         Accept curved quotes in doc strings
15156         * lisp/info-look.el (info-lookup-guess-custom-symbol):
15157         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
15159         Generate curved quotes in pseudo-info nodes
15160         * lisp/info.el (Info-virtual-index-find-node)
15161         (Info-virtual-index, Info-apropos-find-node, info-apropos):
15162         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
15164         Fix minor quoting problems in doc strings
15165         Most of these fixes involve escaping grave accents that are
15166         actually intended to be grave accents, not left quotes.
15167         (Bug#20385)
15169         Support curved quotes in doc strings
15170         Emacs's traditional doc string style has been to quote symbols
15171         `like this'.  This worked well on now-obsolete terminals where
15172         ` and ' were symmetric quotes, but nowadays curved quotes
15173         ‘like this’ look better.  Support quoting the new way too.
15174         (Bug#20385)
15175         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
15176         ‘like-this’ as well as `like-this'.
15177         * etc/NEWS: Mention this.
15178         * lisp/cedet/mode-local.el (overload-docstring-extension)
15179         (mode-local-print-binding, mode-local-describe-bindings-2):
15180         * lisp/cus-theme.el (describe-theme-1):
15181         * lisp/descr-text.el (describe-text-properties-1, describe-char):
15182         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
15183         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
15184         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
15185         (eieio-help-constructor):
15186         * lisp/emacs-lisp/package.el (describe-package-1):
15187         * lisp/faces.el (describe-face):
15188         * lisp/help-fns.el (help-fns--key-bindings)
15189         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
15190         (help-fns--interactive-only, describe-function-1):
15191         (describe-variable):
15192         * lisp/help.el (describe-mode):
15193         * lisp/international/mule-cmds.el (describe-input-method)
15194         (describe-language-environment):
15195         * lisp/international/mule-diag.el (describe-character-set)
15196         (print-coding-system-briefly, list-input-methods)
15197         (list-input-methods-1):
15198         Insert curved quotes rather than grave accent and apostrophe.
15199         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
15200         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
15201         (checkdoc-proper-noun-region-engine):
15202         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
15203         (lisp-cl-font-lock-keywords-2):
15204         * lisp/finder.el (finder-font-lock-keywords):
15205         * lisp/gnus/gnus-art.el (gnus-button-alist):
15206         * lisp/help-fns.el (help-do-arg-highlight)
15207         (describe-function-1, describe-variable):
15208         * lisp/help-mode.el (help-xref-symbol-regexp)
15209         (help-xref-info-regexp, help-xref-url-regexp):
15210         * lisp/help.el (describe-mode):
15211         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
15212         * lisp/wid-edit.el (widget-documentation-link-regexp):
15213         Parse symbols quoted ‘like-this’ as well as `like-this'.
15214         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15215         Add "‘" and "’" to electric-pair-text-pairs.
15216         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
15217         (elisp-completion-at-point, elisp--preceding-sexp):
15218         Also treat "‘" and "’" as quoting chars.
15220         substitute-command-keys now curves quotes
15221         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
15222         * doc/lispref/help.texi (Keys in Documentation):
15223         * etc/NEWS: Document this.
15224         * src/doc.c (Fsubstitute_command_keys): Implement it.
15226 2015-05-28  Glenn Morris  <rgm@gnu.org>
15228         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
15229         (rmail-summary-by-topic, rmail-summary-by-senders):
15230         No longer strip leading/trailing whitespace.
15232         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
15233         (f90-no-block-limit): Add "enum".  (Bug#20680)
15234         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
15235         New tests.
15237 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15239         * lisp/isearch.el (isearch--current-buffer): Give a default value.
15240         Un-revert changes mistakenly dropped by f9fabb2b.
15242 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
15244         Merge from gnulib
15245         This incorporates:
15246         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
15247         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
15248         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
15249         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
15250         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
15251         2015-05-26 stdio: fix probe on mingw under gcc 5.1
15252         * admin/merge-gnulib (GNULIB_MODULES):
15253         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
15254         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
15255         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
15256         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
15257         Get latest versions from gnulib.
15258         * lib/get-permissions.c, lib/set-permissions.c: New files.
15259         * lib/gnulib.mk, m4/gnulib-comp.m4:
15260         Regenerate.
15261         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
15263 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
15265         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
15266         process here.
15267         (vc-do-command): Rather than here (bug#20608).
15269 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
15271         Avoid gratuitous delete-dups in face-at-point
15272         * lisp/faces.el (face-at-point): Do not compute the properly
15273         ordered, duplicate-free list if only a single value is
15274         requested anyway.  (Bug#20519)
15276         Show the exact C-x 8 RET invocation in describe-char
15277         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
15278         invocation instead of a template.  (Bug#20522)
15280 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15282         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
15283         (package-menu--post-refresh): Call `tabulated-list-print' with the
15284         UPDATE argument.  This only affects the refresh action, the revert
15285         action still erases tags.
15286         (package-menu-get-status): Change `assq' to `assoc'.
15287         (package-menu--mark-upgrades-1): New function.
15288         (package-menu--mark-upgrades-pending): New variable.
15289         (package-menu-mark-upgrades): Use them to delay marking until
15290         after refresh is done.
15291         (package-menu--post-refresh): Call mark-upgrades-1 if
15292         mark-upgrades-pending is non-nil.
15294 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
15296         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
15297         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
15298         (commit 3953c4be2816537be95520605d45b866dc731f4b).
15300 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15302         * lisp/isearch.el (isearch--current-buffer): New var.
15303         (isearch-update): Set cursor-sensor-inhibit here.
15304         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
15305         (bug#20532).
15307         Change inhibit-point-motion-hooks to t
15308         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
15309         to t and document it as obsolete.
15311 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
15313         Support ZIP files that use Zip64 extensions
15314         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
15315         format of central directory offsets used by Zip64 extensions.
15316         (Bug#20665)
15318 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
15320         New test tramp-test30-make-auto-save-file-name
15321         * test/automated/tramp-tests.el
15322         (tramp-test30-make-auto-save-file-name): New test.
15323         (tramp-test31-special-characters)
15324         (tramp-test31-special-characters-with-stat)
15325         (tramp-test31-special-characters-with-perl)
15326         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
15327         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
15328         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
15329         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
15331         Improve tramp-handle-make-auto-save-file-name
15332         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
15333         (tramp-handle-make-auto-save-file-name): Let native
15334         `make-auto-save-file-name' use `auto-save-file-name-transforms',
15335         if `tramp-auto-save-directory' is not set.
15337 2015-05-27  Glenn Morris  <rgm@gnu.org>
15339         No longer set dired-directory in eshell.  (Bug#16477)
15340         * lisp/eshell/esh-mode.el (eshell-mode):
15341         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
15343         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
15345         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
15346         * lisp/progmodes/cc-mode.el (c-mode-help-address):
15347         Change to submit@debbugs.
15348         (c-mode-bug-package): New constant.
15349         (mail-position-on-field): Declare.
15350         (c-submit-bug-report): Insert X-Debbugs-Package header.
15351         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
15352         Mention debbugs.gnu.org.
15354 2015-05-26  Glenn Morris  <rgm@gnu.org>
15356         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
15357         (rmail-summary-by-recipients, rmail-summary-by-topic)
15358         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
15359         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
15361 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
15363         Handle curved quotes in info files
15364         * lisp/calc/calc-help.el (calc-describe-thing):
15365         * lisp/info.el (Info-find-index-name)
15366         (Info-try-follow-nearest-node, Info-fontify-node):
15367         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
15368         In info files, process quotes ‘like this’ the same way we process
15369         quotes `like this'.  This catches a few places we missed earlier.
15371 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
15373         xref-prompt-for-identifier: Use a list value
15374         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
15375         value, to be interpreted as a list of commands.
15376         (xref--prompt-p): New function.
15377         (xref--read-identifier): Use it.
15379 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
15381         Teach MS-Windows font back-end return per-glyph ascent/descent
15382         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
15383         values.
15384         * src/w32font.c (w32font_text_extents): Compute, cache, and
15385         accumulate per-glyph ascent and descent values, instead of copying
15386         global values from the font.  If the values are not available from
15387         the font data, i.e., non-TTF fonts, fall back on font-global values.
15388         (compute_metrics): Compute and return per-glyph ascent and descent
15389         values, if returned by GetGlyphOutlineW, falling back on
15390         font-global values.  (Bug#20628)
15391         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
15392         height of rectangle to be drawn, to be compatible with
15393         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
15394         box, when per-glyph ascent/descent values are used.
15396 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
15398         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
15399         Don't sort if sorter is nil.
15401 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
15403         Fix Bug#20621
15404         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
15405         are major modes which set `auto-save-mode' on their own rules;
15406         Tramp shall not overwrite such settings.
15408 2015-05-26  Glenn Morris  <rgm@gnu.org>
15410         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
15411         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
15412         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
15413         Doc updates.
15414         (vc-dir-mode): Remove unnecessary autoload.
15416 2015-05-25  Philipp Stephani  <phst@google.com>
15418         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
15419         (xterm--extra-capabilities-type): Add `getSelection'.
15420         (xterm--query): Add `no-async' argument.
15421         (xterm--init-activate-get-selection): New function.
15422         (terminal-init-xterm): Use it.
15423         (xterm--init-modify-other-keys): Rename from
15424         terminal-init-xterm-modify-other-keys.
15425         (xterm--init-bracketed-paste-mode): Rename from
15426         terminal-init-xterm-bracketed-paste-mode.
15427         (xterm--init-activate-set-selection): Rename from
15428         terminal-init-xterm-activate-set-selection.
15429         (xterm--selection-char): New function.
15430         (gui-backend-set-selection): Use it.  Use the &context to only apply
15431         this method in terminals where we enabled the feature.
15432         (gui-backend-get-selection): New method.
15434 2015-05-25  Daniel Colascione  <dancol@dancol.org>
15436         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
15437         keyword constants to C++.
15439 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
15441         Make TAGS files more portable to MS-Windows
15442         * etc/NEWS: Document this.
15443         * lib-src/etags.c (readline_internal) [DOS_NT]:
15444         Don't treat CRs differently from GNUish hosts.
15445         * lisp/progmodes/etags.el (etags-goto-tag-location):
15446         Adjust STARTPOS to account for the skipped CRs in dos-style files.
15448 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15450         Improve fix of bug#20634 in tramp-sh.el
15452 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
15454         Fix a typo in last commit
15455         * lib-src/etags.c (C_entries): Fix a typo.
15456         * test/etags/ETAGS.good_1:
15457         * test/etags/ETAGS.good_2:
15458         * test/etags/ETAGS.good_3:
15459         * test/etags/ETAGS.good_4:
15460         * test/etags/ETAGS.good_5:
15461         * test/etags/CTAGS.good: Update due to the change in etags.c.
15463         Fix tagging of class members in C-like OO languages
15464         * lib-src/etags.c (longopts): Add new option --class-qualify and
15465         its shorthand -Q.
15466         (print_help): Add help text for --class-qualify.
15467         (main): Add handling of -Q.
15468         (consider_token, C_entries) <omethodparm>: Append argument types
15469         to Objective C methods only if --class-qualify was specified.
15470         Qualify C++, Objective C, and Java class members with their class
15471         names only if --class-qualify was specified.
15472         (C_entries): If --class-qualify was not specified, remove the
15473         namespace and class qualifiers from tag names of C++ methods.
15474         This allows to use etags.el as xref back-end without the
15475         tag-symbol-match-p method, which greatly increases the number of
15476         potentially false positives.  (Bug#20629)
15477         * doc/man/etags.1: Update to document the new --class-qualify
15478         option.
15479         * test/etags/ETAGS.good_1:
15480         * test/etags/ETAGS.good_2:
15481         * test/etags/ETAGS.good_3:
15482         * test/etags/ETAGS.good_4:
15483         * test/etags/ETAGS.good_5:
15484         * test/etags/CTAGS.good: Update due to changes in etags.c.
15486 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
15488         (cl-generic-define-method): Side effects are evil (bug#20644)
15489         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
15490         cons-cells that might be used as keys in an `equal' hash-table.
15492 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15494         Make erc timestamps visible again
15495         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
15496         Make timestamps visible again (if requested).
15498 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
15500         Fix last change in etags.c that broke tagging compresed files
15501         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
15502         quoting of decompression shell command for MS-Windows/MS-DOS.
15504 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
15506         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
15507         (Bug#20639)
15509 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15511         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
15512         Fix typo in "Inhibit `epa-file-handler' in Tramp"
15513         (commit 89035e247591c8d688fce922b7079881aa110f33).
15515 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
15517         Fix IPv6 addresses in Tramp
15518         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
15519         Add square brackets around host name.
15521 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15523         Inhibit `epa-file-handler' in Tramp (Bug#20634)
15524         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
15525         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
15526         `epa-file-handler'.
15528 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
15530         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
15531         (pcase-let): Document the behavior in case the pattern doesn't match.
15533 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15535         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
15536         (tabulated-list-print): New optional argument, UPDATE.  If
15537         non-nil, the list is printed by only adding and deleting the
15538         changed entries, instead of erasing the whole buffer.  This method
15539         is much faster when few or no entries have changed.
15540         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
15541         * etc/NEWS: Document it.
15543         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
15544         (tabulated-list--get-sorter): New function.
15545         (tabulated-list-print): Restore window-line when remember-pos is
15546         passed and optimize away the `nreverse'.
15548 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
15550         Simpilify etags TEX mode scanning
15551         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
15552         Remove static vars.
15553         (TeX_commands): Deduce escapes here instead.
15554         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
15555         This removes the need for a reset_input call.
15557         Improve etags I/O error reporting
15558         * lib-src/etags.c:
15559         Don't include sys/types.h and sys/stat.h; no longer needed.
15560         (infilename): New static var.
15561         (process_file_name): Don't call 'stat'.  Instead, just open the
15562         file for reading and report any errors.  Don't bother making
15563         a copy of the file argument; it's not needed.  Be more careful to
15564         use the failing errno when reporting an error.
15565         Quote the real name better (though no perfectly)
15566         when passing it to the shell.
15567         (reset_input): New function, which reports I/O errors.
15568         All uses of 'rewind' changed to use this function.
15569         (perhaps_more_input): New function, which also checks for
15570         I/O errors.  All uses of 'feof' changed to use this function.
15571         (analyze_regex): Report an error if fclose fails.
15572         (readline_internal): Report an error if getc fails.
15573         (etags_mktmp): Return an error if close fails.
15575         etags.c: avoid side effects in 'if'
15576         * lib-src/etags.c (process_file_name, Perl_functions)
15577         (TEX_decode_env): Hoist side effects into previous statement.
15579         .gitignore tweaks
15580         * .gitignore: Ignore all *.stamp files.  Sort.
15581         Ignore [0-9]*.txt (commonly used name for git patches)
15582         and /vc-dwim-log-* (vc-dwim temporary).
15584 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
15586         Fix last change in etags.c, which failed the test suite
15587         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
15588         before the last change.
15590 2015-05-23  Glenn Morris  <rgm@gnu.org>
15592         Remove charset map files from repository, generate in first bootstrap
15593         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
15594         (all): Create the stamp file.
15595         (extraclean): Delete the stamp file.
15596         * src/Makefile.in (lispintdir, charsets): New variables.
15597         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
15598         New rules.
15599         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
15600         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
15601         * etc/charsets/*.map: Remove from repository.
15603 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
15605         Cleanup etags.c to use locale-independent code
15606         Although this doesn't alter behavior (as etags doesn't use
15607         setlocale), the new version is more clearly locale-independent and
15608         the executable is a bit smaller on my platform.
15609         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
15610         Include <c-ctype.h> instead of <ctype.h>.
15611         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
15612         (begtk, midtk):
15613         Remove; no longer needed.
15614         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
15615         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
15616         c_islower, c_tolower, respectively.
15617         (notinname, begtoken, intoken, endtoken): Rewrite as functions
15618         instead of macros, and initialize the tables at compile-time
15619         rather than at run-time.
15621         Put default action first in src/Makefile
15622         * src/Makefile.in (all): Put this rule before lisp.mk.
15623         That way, plain 'make' works in the src directory again.
15625 2015-05-23  Glenn Morris  <rgm@gnu.org>
15627         * Makefile.in: Fix extraclean rule.
15628         (extraclean_dirs): New.
15629         (extraclean): Use it.
15631 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
15633         Avoid compiler warning in image.c on MS-Windows
15634         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
15635         warning in image.c.
15637 2015-05-23  Glenn Morris  <rgm@gnu.org>
15639         Fix --without-toolkit-scroll-bars builds.
15640         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
15641         Add new argument to x_clear_area1.
15642         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15643         Update x_clear_area arguments.
15645         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
15646         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
15647         Change to included version.
15648         (LOCAL, local, totalclean): Remove.
15649         (extraclean): Delete all generated files.
15651 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15653         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
15654         CVS/Entries exists.
15656         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
15658         * lisp/progmodes/etags.el (tags-completion-at-point-function):
15659         Don't trust the find-tag function.
15661 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
15663         Pacify --enable-gcc-warnings
15664         * src/frame.h (x_query_color): Remove redundant extern decl.
15665         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
15666         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
15667         (ftcrfont_text_extents, ftcrfont_draw):
15668         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
15669         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
15670         (x_ins_del_lines, frame_highlight, frame_unhighlight)
15671         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
15672         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
15673         (x_update_window_begin, x_connection_closed)
15674         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
15675         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
15676         (*x_gc_get_ext_data, x_extension_initialize)
15677         (x_cr_accumulate_data):
15678         Remove redundant static decl.  Many of these GCC doesn't complain
15679         about, but we might as well clean out the duplication while we're
15680         in the neighborhood.
15681         * src/xterm.c (x_fill_trapezoid_for_relief):
15682         Remove decl of nonexistent function.
15684 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15686         Replace gui-method macros with cl-generic with &context
15687         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
15688         (gui-method-declare, gui-call): Remove.
15689         (frame-creation-function): Use cl-defgeneric.
15690         (make-frame): Adjust callers.
15691         * lisp/menu-bar.el (menu-bar-edit-menu):
15692         Use gui-backend-selection-exists-p.
15693         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
15694         (gui-backend-get-selection): New cl-generic to replace
15695         gui-get-selection method.
15696         (gui-backend-set-selection): New cl-generic to replace
15697         gui-set-selection method.
15698         (gui-selection-owner-p): New cl-generic to replace
15699         gui-selection-owner-p method.
15700         (gui-backend-selection-exists-p): New cl-generic to replace
15701         gui-selection-exists-p method.  Adjust all callers.
15702         * lisp/server.el (server-create-window-system-frame): Don't ignore
15703         window-system spec even when unsupported.
15704         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
15705         * lisp/startup.el (handle-args-function, window-system-initialization):
15706         Use cl-defgeneric.
15707         (command-line): Adjust calls accordingly.
15708         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
15709         a window-system-initialization method.
15710         (handle-args-function, frame-creation-function): Use cl-defmethod.
15711         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
15712         (gui-get-selection): Use cl-defmethod on the new functions instead.
15713         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
15714         a gui-backend-get-selection method.
15715         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
15716         Use cl-defmethod on the new functions instead.
15717         (msdos-window-system-initialization): Turn into
15718         a window-system-initialization method.
15719         (frame-creation-function, handle-args-function): Use cl-defmethod.
15720         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
15721         a window-system-initialization method.
15722         (handle-args-function, frame-creation-function): Use cl-defmethod.
15723         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
15724         (gui-get-selection): Use cl-defmethod on the new functions instead.
15725         * lisp/term/x-win.el (x-window-system-initialization): Turn into
15726         a window-system-initialization method.
15727         (handle-args-function, frame-creation-function): Use cl-defmethod.
15728         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
15729         (gui-get-selection): Use cl-defmethod on the new functions instead.
15730         * lisp/term/xterm.el (xterm--set-selection): Turn into
15731         a gui-backend-set-selection method.
15732         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
15733         (Fns_selection_owner_p): Remove unused arg `terminal'.
15734         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
15736 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
15738         Revert "Fix etags Bug#20629 that broke C++ support"
15739         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
15741 2015-05-23  Jan D  <jan.h.d@swipnet.se>
15743         Fix etags Bug#20629 that broke C++ support
15744         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
15745         Revert commit from Sun May 10 (Bug#20629).
15747         Merge branch 'cairo'.
15748         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
15749         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
15751         Merge branch 'master' into cairo
15753         Fixes to compile cairo branch without cairo
15754         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
15755         first argument.
15756         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
15757         USE_CAIRO.
15759 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
15761         * lisp/emacs-lisp/package.el: Always update selected-packages.
15762         (package--update-selected-packages): New function.
15763         (package-menu-execute): Use it before starting the transaction,
15764         this way the list of selected packages is updated even when the
15765         transaction fails.
15766         (package-menu--perform-transaction): Don't edit selected-packages.
15768 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
15770         Fix etags reading of compressed files
15771         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
15772         Include fcntl.h, for O_CLOEXEC.
15773         (process_file_name): Don't use 'popen', whose streams cannot be
15774         rewound.  Instead, uncompress the file to a temporary file,
15775         created by 'etags_mktmp', and read from that as usual.
15776         (etags_mktmp): New function.
15777         * test/etags/ETAGS.good_1:
15778         * test/etags/ETAGS.good_2:
15779         * test/etags/ETAGS.good_3:
15780         * test/etags/ETAGS.good_4:
15781         * test/etags/ETAGS.good_5: Update to be consistent with latest
15782         changes in etags.c regarding reading compressed files.
15784         Improve documentation of 'set-fontset-font'
15785         * doc/lispref/display.texi (Fontsets): Document the value of nil
15786         for the 3rd argument of 'set-fontset-font'.
15788         Fix documentation of forward-line
15789         * src/cmds.c (Fforward_line): Clarify the return value if the line
15790         at end of accessible portion of the buffer has no newline.
15791         * doc/lispref/positions.texi (Text Lines): Document what happens
15792         if the line at end of accessible portion of buffer has no newline.
15793         (Bug#20587)
15795 2015-05-22  Glenn Morris  <rgm@gnu.org>
15797         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
15799         * admin/charsets/mapconv (LC_ALL): Set to C.
15801         * Makefile.in: Add admin/charsets into top-level clean rules.
15802         (clean): Add admin/charsets.
15803         (maybeclean_dirs): New variable.
15804         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
15806         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
15808 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
15810         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
15812 2015-05-22  Glenn Morris  <rgm@gnu.org>
15814         Generate admin/charsets Makefile via configure, and make more portable
15815         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
15816         (admin/charsets/Makefile): Generate it.
15817         * admin/charsets/Makefile.in: Rename from Makefile.
15818         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
15819         New variables, set by configure.
15820         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
15821         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
15822         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
15823         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
15824         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
15825         (all): Declare PHONY.
15826         (local): New PHONY target.
15827         (map_template): New template.  Use to define short PHONY aliases.
15828         (*.map): Add directory prefixes to targets and prerequisites.
15829         Respect make verbosity.
15830         (JISC6226.map): Replace non-portable sed append without newline.
15831         (install): Remove rule.
15832         (clean): Only delete temporary sedscript.
15833         (bootstrap-clean, distclean, maintainer-clean, extraclean)
15834         (totalclean): New PHONY rules.
15835         * admin/charsets/mapconv (BASE): Replace basename with expr.
15836         (FILE): Add "mapfiles" subdirectory.
15837         (AWK): New variable.  Use throughout in place of "awk".
15838         (main): Use "gunzip -c" in place of "zcat".
15839         Don't leave whitespace before "p", for older sed.
15840         * admin/charsets/mapfiles/PTCP154: Add final newline,
15841         to make older sed versions happy.
15843 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
15845         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
15846         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
15847         (auto-revert-notify-watch-descriptor): Use defvar-local.
15848         (find-file-hook, auto-revert-tail-mode)
15849         (auto-revert-notify-add-watch): Use setq-local.
15850         (auto-revert-notify-add-watch): Don't call make-local-variable on
15851         kill-buffer-hook (bug#20601).
15853 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
15855         Change defgeneric so it doesn't completely redefine the function
15856         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
15857         previously defined methods.
15858         (cl-generic-define-method): Let-bind purify-flag instead of
15859         using `fset'.
15860         (cl--generic-prefill-dispatchers): Only define during compilation.
15861         (cl-method-qualifiers): Remove redundant alias.
15862         (help-fns-short-filename): Silence byte-compiler.
15863         * test/automated/cl-generic-tests.el:
15864         Adjust to new defgeneric semantics.
15866 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
15868         * lisp/emacs-lisp/package.el (package-menu-execute):
15869         Remove reference to remove-dups.
15871 2015-05-21  kwhite  <kwhite@gnu.org>
15873         * lisp/erc/erc.el: Hide network/channel messages.
15874         (erc-network-hide-list, etc-channel-hide-list): New lists to define
15875         message types per network/channel.
15876         (erc-add-targets): New function to parse list of targets.
15877         (erc-hide-current-message-p): Modified to check for new targets.
15879 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
15881         Don't quote nil and t in doc strings
15882         This is as per "Tips for Documentation Strings" in the elisp manual.
15883         For consistency, do the same in diagnostics and comments.
15885 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
15887         Fix a minor problem with mouse-face on mode line
15888         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
15889         mouse face also if the mouse pointer hovers above mode-line glyphs
15890         that don't come from any Lisp string.  (Bug#20620)
15892 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
15894         * lisp/emacs-lisp/package.el: Fix selected-package logic.
15895         (package-menu-execute): Mark as selected all non-upgrade packages
15896         being installed.
15897         (package-menu--perform-transaction): Don't mark anything.
15899         * lisp/emacs-lisp/package.el: Mode-line progress report.
15900         (package-menu--transaction-status): New variable.
15901         (package-menu-mode, package-menu--perform-transaction): Use it.
15903         * lisp/emacs-lisp/package.el: Better transaction messages.
15904         (package-menu--partition-transaction): New function.
15905         (package-menu--prompt-transaction-p, package-menu-execute):
15906         Use it.
15907         (package-menu--perform-transaction): Don't do any messaging.
15909         * lisp/emacs-lisp/package.el: Revert async package transactions.
15910         (package-menu-async): Update doc.
15911         (package-install-from-archive, package-download-transaction)
15912         (package-install, package-menu--perform-transaction)
15913         (package-menu-execute): Remove asynchronous functionality.
15915 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
15917         Revert doc string changes to f90.el
15918         Problem reported by Glenn Morris in:
15919         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
15920         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
15921         Revert recent changes to doc strings, as it's intended that they
15922         use grave accent, not quote.
15924 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
15926         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
15927         Improve parameter name.
15929         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
15931 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
15933         Don't require help-fns when not needed
15934         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
15935         * lisp/emacs-lisp/elint.el:
15936         Don't require help-fns at the top level
15937         * lisp/emacs-lisp/advice.el (ad-arglist):
15938         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
15939         Don't require help-fns.  (Bug#17001)
15941 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
15943         Fix slash collapsing in etags on MS-Windows
15944         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
15945         MS-Windows code from the Posix code, and support collapsing both
15946         forward- and back-slashes on MS-Windows.  Fixes a regression found
15947         by the test suite.
15949         Improve documentation of glyphless-char-display
15950         * doc/lispref/display.texi (Glyphless Chars): Improve
15951         documentation of glyphless character display.
15953         Fix "acronym" display of glyphless characters on w32
15954         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
15955         ignore "acronym" substitutes of 1 character for glyphless characters.
15957 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
15959         Add an automated test for let-when-compile
15960         * test/automated/subr-tests.el (let-when-compile): New test.
15962         Add let-when-compile macro instead of using pcase-let
15963         * lisp/subr.el (let-when-compile): New let-like macro that makes its
15964         bindings known to macros like `eval-when-compile' in the body.
15965         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
15966         a `let-when-compile'.  Also comment out the unused lexical var
15967         `el-kws-re'.
15968         The change greatly improves readability, while providing almost the
15969         same (even shorter) byte code: instead of pre-evaluating 10 variables,
15970         tossing them into a list, and destructuring that list a full screen
15971         page later, the variables are simply bound as they are evaluated,
15972         wrapped individually in `eval-when-compile'.
15974 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
15976         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
15977         (package-delete-button-action): New function.
15978         (describe-package-1): Add Delete button.
15980         * lisp/emacs-lisp/package.el: Better dependency description.
15981         (package--used-elsewhere-p): New optional arg, ALL, and return
15982         package-desc objects instead of names.
15983         (package-delete): Update accordingly.
15984         (describe-package-1): Describe which packages require the package.
15986 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
15988         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
15989         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
15990         Fix doc-string.
15992         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
15993         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
15994         (switch-to-buffer): If the selected window is strongly dedicated
15995         to its buffer, signal error before prompting for buffer name.
15996         Handle `switch-to-buffer-in-dedicated-window'.
15997         * doc/lispref/windows.texi (Switching Buffers):
15998         Document `switch-to-buffer-in-dedicated-window'.
16000 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16002         Prefer "this" to “this” in doc strings
16003         This mostly just straightens quotes introduced in my previous patch.
16004         Suggested by Dmitry Gutov in:
16005         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
16006         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
16007         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
16008         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
16009         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
16010         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
16011         Prefer straight double quotes to curved double quotes in doc strings.
16013         Fix minor quoting problems in doc strings
16014         These were glitches regardless of how or whether we tackle the
16015         problem of grave accent in doc strings.
16016         * lisp/calc/calc-aent.el (math-restore-placeholders):
16017         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
16018         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
16019         * lisp/leim/quail/hebrew.el ("hebrew-new")
16020         ("hebrew-biblical-sil"):
16021         * lisp/leim/quail/thai.el ("thai-kesmanee"):
16022         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
16023         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
16024         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
16025         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
16026         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
16027         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
16028         (semantic-tag-components):
16029         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
16030         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
16031         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
16032         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
16033         * lisp/emacs-lisp/generator.el (iter-next):
16034         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
16035         (gnus-article-mode-syntax-table):
16036         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
16037         * lisp/net/soap-client.el (soap-wsdl-get):
16038         * lisp/net/telnet.el (telnet-mode):
16039         * lisp/org/org-compat.el (org-number-sequence):
16040         * lisp/org/org.el (org-remove-highlights-with-change)
16041         (org-structure-template-alist):
16042         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
16043         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
16044         (handwrite-12pt, handwrite-13pt):
16045         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
16046         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
16047         * lisp/progmodes/verilog-mode.el (verilog-tool)
16048         (verilog-string-replace-matches, verilog-preprocess)
16049         (verilog-auto-insert-lisp, verilog-auto-insert-last):
16050         * lisp/textmodes/makeinfo.el (makeinfo-options):
16051         * src/font.c (Ffont_spec):
16052         Fix minor quoting problems in doc strings, e.g., missing quote,
16053         ``x'' where `x' was meant, etc.
16054         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
16055         Fix minor quoting problem in other string.
16056         * lisp/leim/quail/ethiopic.el ("ethiopic"):
16057         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
16058         Omit unnecessary quotes.
16059         * lisp/faces.el (set-face-attribute, set-face-underline)
16060         (set-face-inverse-video, x-create-frame-with-faces):
16061         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
16062         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
16063         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
16064         * lisp/net/tramp.el (tramp-methods):
16065         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
16066         * lisp/textmodes/artist.el (artist-ellipse-right-char)
16067         (artist-ellipse-left-char, artist-vaporize-fuzziness)
16068         (artist-spray-chars, artist-mode, artist-replace-string)
16069         (artist-put-pixel, artist-text-see-thru):
16070         * lisp/vc/ediff-util.el (ediff-submit-report):
16071         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
16072         Use double-quotes rather than TeX markup in doc strings.
16073         * lisp/skeleton.el (skeleton-pair-insert-maybe):
16074         Reword to avoid the need for grave accent and apostrophe.
16075         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
16076         Don't use grave and acute accents to quote.
16078 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
16080         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
16081         Silence compiler.
16083 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16085         Try to port new etags tests to MS-Windows
16086         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
16087         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
16088         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
16089         Adjust to test-case changes below.
16090         * test/etags/Makefile (CSRC): Remove dostorture.c.
16091         Whatever it was trying to test, wasn't working portably.
16092         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
16093         just a line-ending problem.
16094         * test/etags/c-src/dostorture.c: Remove.
16095         * test/etags/cp-src/c.C: Remove stray CR.
16096         * test/etags/html-src/algrthms.html: Remove trailing CRs.
16097         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
16098         but if someone edits it later it should stay UTF-8-compatible.
16100 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
16102         Fix display of overlapping window-specific overlays
16103         * src/keyboard.c (adjust_point_for_property): When adjusting point
16104         due to display strings, ignore overlays that are specific to
16105         windows other than the currently selected one.
16106         * src/xdisp.c (handle_single_display_spec): If the display
16107         property comes from an overlay, arrange for buffer iteration to
16108         resume only after the end of that overlay.  (Bug#20607)
16110 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
16112         New command icomplete-force-complete-and-exit
16113         * lisp/icomplete.el (icomplete-force-complete-and-exit):
16114         New command
16115         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
16116         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
16117         (icomplete-minibuffer-map): Bind C-j to it.
16118         (icomplete-forward-completions, icomplete-backward-completions):
16119         Mention the new command in the docstring.
16120         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
16121         Revert the previous fix for bug#17545.
16123 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
16125         Fix last commit
16127         In Elisp manual explain how to override window manager positioning
16128         (Bug#20552)
16129         * doc/lispref/frames.texi (Position Parameters): Give example of
16130         how to override a window manager positioning decision.
16132         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
16133         * src/frame.c (Fdelete_frame): In doc-string mention that frame
16134         can't be deleted if it has a surrogate minibuffer.
16135         * doc/lispref/frames.texi (Minibuffers and Frames)
16136         (Deleting Frames): Explain "surrogate minibuffer frames".
16138         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
16140 2015-05-18  Glenn Morris  <rgm@gnu.org>
16142         Add option to ignore commit lines matching a pattern in ChangeLog
16143         * build-aux/gitlog-to-changelog: Add --ignore-line option.
16144         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
16146 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
16148         Don't skip new etags tests on non-UTF-8 hosts
16149         Problem reported by Eli Zaretskii for MS-Windows.
16150         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
16151         (LC_ALL): Set to C if the current locale isn't UTF-8.
16152         (.PHONY): Remove ediff_1 thru ediff_5.
16153         (check): Always run.
16155 2015-05-18  Glenn Morris  <rgm@gnu.org>
16157         * lisp/calculator.el (calculator-funcall):
16158         * lisp/textmodes/artist.el (artist-spray-random-points):
16159         Use standard degree/radian conversion utilities.
16161         Further lisp-complete-symbol related cleanup.
16162         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
16163         Unadvertise non-functional argument.  Replace obsolete alias.
16165 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
16167         Add a test case for Maven warning ouput
16168         * test/automated/compile-tests.el
16169         (compile-tests--test-regexps-data): Add a case for Maven warning
16170         ouput.
16171         (compile--test-error-line): Check the compilation message type, if
16172         it's specified in the test data.
16174 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
16176         Update Maven compilation-mode entry to distinguish warnings
16177         * lisp/progmodes/compile.el
16178         (compilation-error-regexp-alist-alist): Update Maven entry to
16179         distinguish warnings (bug#20556).
16181 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
16183         * test/automated/sgml-mode-tests.el: New file.
16185 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
16187         Improve handling of the first Git revision
16188         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
16189         there's no next entry, delete until the end of the buffer.
16190         (log-view-end-of-defun-1): Stop at eob.
16191         * lisp/vc/vc-annotate.el
16192         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
16193         when previous-revision is nil.
16194         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
16195         with `--' to avoid ambiguity.
16196         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
16197         returned revision string.
16198         (vc-git-annotate-time): Expect `^' before the first revision.
16199         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
16200         REV1 is nil, and REV2 is not.
16201         * lisp/vc/vc.el: Update the description of the `diff' function.
16203 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
16205         Allow checkdoc to be called in batch
16206         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
16207         is non-nil, echo the error with `warn'.
16208         How it can be used in -batch:
16209         (with-current-buffer (find-file "checkdoc.el")
16210           (checkdoc-current-buffer t))
16212 2015-05-18  Glenn Morris  <rgm@gnu.org>
16214         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
16216 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
16218         * admin/notes/unicode: New section "binary files".
16220         Change new etags test to use UTF-8 encoding
16221         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
16222         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
16223         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
16224         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
16225         * test/etags/html-src/softwarelibero.html:
16226         Switch to UTF-8 encoding.
16227         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
16228         Remove Makefile, as it's too incestuous to have the test input
16229         include the build procedure.
16230         (UTF8_LOCALE, UTF_ENCODING): New macros.
16231         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
16232         (check): Skip if not UTF-8.
16233         (.PHONY): New rule.
16234         (FRC): Remove, as superseded by .PHONY.  All uses removed.
16235         (regexfile): Prefer printf to echo when outputting oddball chars.
16236         (.PRECIOUS): Remove, as these files are not built.
16238         Rename 'foo-gzipped' to 'foo.gz'
16239         * test/automated/data/decompress/foo.gz:
16240         Rename from test/automated/data/decompress/foo-gzipped,
16241         to make it easier for other tools to tell that it's compressed.
16242         * test/automated/zlib-tests.el (zlib--decompress):
16243         Adjust to renamed file.
16245 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
16247         Set up default-directory
16248         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
16249         binding for `v'.
16250         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
16251         appropriate value for default-directory.
16253 2015-05-17  Samer Masterson  <samer@samertm.com>
16255         * lisp/eshell/em-term.el (eshell-term-sentinel):
16256         No-op by default, only kills term buffer if
16257         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
16258         (eshell-destroy-buffer-when-process-dies): New custom to preserve
16259         previous behavior.
16261         eshell: Introduce new buffer syntax
16262         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
16263         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
16264         needed (Bug#19319).
16265         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
16266         (eshell-get-target): Remove shorthand-specific code.
16267         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
16268         '#<buffer-name>'.
16270 2015-05-17  Jan D  <jan.h.d@swipnet.se>
16272         Merge branch 'master' into cairo
16274 2015-04-26  Jan D  <jan.h.d@swipnet.se>
16276         Merge branch 'master' into cairo
16278         Add PBM support for cairo
16279         * src/image.c (xcolor_to_argb32): New function.
16280         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
16281         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
16282         XImagePtr if ! USE_CAIRO.
16283         (pbm_load): Add cairo support.
16285 2015-04-12  Jan D  <jan.h.d@swipnet.se>
16287         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
16288         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
16289         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
16290         x_free_cr_resources.
16292         Handle specified bg in images.  Use generic libpng code for PNGs.
16293         * src/image.c (get_spec_bg_or_alpha_as_argb)
16294         (create_cairo_image_surface): New functions when USE_CAIRO.
16295         (xpm_load): Call the above functions.  Handle XPM without mask
16296         when USE_CAIRO.
16297         (png_load_body): Handle USE_CAIRO case.
16298         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
16299         instead.
16300         (jpeg_load_body): Call create_cairo_image_surface.
16301         (gif_load, svg_load_image): Handle specified background, call
16302         create_cairo_image_surface.
16303         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
16305 2015-04-11  Jan D  <jan.h.d@swipnet.se>
16307         Support GIF and TIFF with cairo
16308         * configure.ac: Allow jpeg with cairo.
16309         Allow tiff and gif with cairo.
16310         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
16311         (tiff_load): Create cairo image surface if USE_CAIRO.
16312         (gif_load): Ditto.
16314         Support JPEG with USE_CAIRO
16315         * configure.ac: Allow jpeg with cairo.
16316         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
16318 2015-04-05  Jan D  <jan.h.d@swipnet.se>
16320         Support RSVG and cairo
16321         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
16322         * src/dispextern.h (struct image): Add cr_data2 if cairo.
16323         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
16324         (x_clear_image): Free cr_data and cr_data2 if set.
16325         (xpm_load): Assign data to cr_data2.
16326         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
16328 2015-04-03  Jan D  <jan.h.d@swipnet.se>
16330         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
16331         * configure.ac (HAVE_RSVG): Move after cairo.
16332         (USE_CAIRO): Disable rsvg, don't disable Xpm.
16333         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
16334         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
16335         don't return early.
16336         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
16337         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
16338         and create a surface.
16340         Tool tips for menus did not show any text.
16341         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
16342         tip frames, the geometry may be wrong.
16344         Merge branch 'master' into cairo, fixes tooltips not shown.
16346         Merge branch 'master' into cairo
16348         Add CAIRO_CFLAGS to lwlib/Makefile.in
16349         * Makefile.in (CAIRO_CFLAGS): Add.
16351 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16353         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
16355 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16357         Draw outermost line using black relief and erase corners also for cairo.
16358         * src/xterm.c [USE_CAIRO]: Include math.h.
16359         (enum corners) [USE_CAIRO]: New enum.
16360         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
16361         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
16362         than 1, draw the outermost line using the black relief.
16364         * src/xterm.c (x_fill_trapezoid_for_relief):
16365         Remove unnecessary cairo_close_path.
16367 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16369         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
16371         * src/xterm.c (x_draw_stretch_glyph_string):
16372         Call x_reset_clip_rectangles instead of XSetClipMask.
16374         Use int instead of unsigned int for width and height args.
16375         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
16376         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
16377         width and height args.
16379         Modernize k&r cairo-related function declarations.
16380         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
16381         (xg_print_frames_dialog): Modernize k&r declarations.
16382         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
16383         (Fx_print_frames_dialog): Modernize k&r declarations.
16384         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
16385         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
16386         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
16387         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
16388         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
16389         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
16390         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
16391         (x_clear_area): Modernize k&r declarations.
16393         Implement wave-style variant of underlining for cairo.
16394         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
16395         (x_draw_underwave) [USE_CAIRO]: Use it.
16397         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
16398         instead of XFillRectangle.
16400 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16402         Fix fringe bitmap initialization for cairo
16403         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
16404         data for cairo image surface.
16405         * src/xterm.c (x_cr_define_fringe_bitmap):
16406         Call cairo_surface_mark_dirty.
16408 2015-02-11  Jan D  <jan.h.d@swipnet.se>
16410         Add cairo drawing
16411         * configure.ac (with-cairo): New option.
16412         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
16413         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
16414         Output "Does Emacs use cairo?".
16415         * lisp/version.el (emacs-version): Add cairo version.
16416         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
16417         (FONT_OBJ): Add comment about ftcrfont.
16418         (ALL_CFLAGS): Add CAIRO_CFLAGS.
16419         (LIBES): Add CAIRO_LIBS.
16420         * src/dispextern.h (struct image): Add cr_data for cairo.
16421         (x_cr_init_fringe): Declare.
16422         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
16423         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
16424         * src/fringe.c (x_cr_init_fringe): New function name that shares code
16425         with w32_init_fringe.
16426         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
16427         * src/ftfont.c (ftfont_info_size); New global variable.
16428         (ftfont_open2): New extern function almost the same as old ftfont_open,
16429         but takes the font_object as argument.
16430         (ftfont_open): Build font object and call ftfont_open2.
16431         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
16432         * src/gtkutil.c (xg_clear_under_internal_border)
16433         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
16434         Only queue_draw if not cairo.  Change args to x_clear_area.
16435         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
16436         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
16437         (xg_print_frames_dialog): New functions for printing.
16438         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
16439         (xg_print_frames_dialog): Declare.
16440         * src/image.c: Add defined (USE_CAIRO) for PNG.
16441         Add !defined USE_CAIRO for W32 PNG code.
16442         (x_clear_image): If cairo, destroy the surface in cr_data.
16443         (png_load): Add new cairo compatible implementation.
16444         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
16445         * src/xfns.c: New section Printing.
16446         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
16447         (x-print-frames-dialog): New printing functions.
16448         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
16449         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
16450         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
16451         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
16452         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
16453         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
16454         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
16455         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
16456         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
16457         Declare.
16458         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
16459         (max_fringe_bmp, fringe_bmp): New variables.
16460         (x_gc_get_ext_data, x_extension_initialize)
16461         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
16462         (x_set_cr_source_with_gc_foreground)
16463         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
16464         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
16465         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
16466         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
16467         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
16468         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
16469         (x_update_begin): Create cairo surface if needed.
16470         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
16471         (x_update_end): Paint cairo drawing surface to xlib surface.
16472         (x_clear_under_internal_border, x_after_update_window_line): Adjust
16473         arguments to x_clear_area.
16474         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
16475         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
16476         of XSetClipMask.
16477         (x_set_glyph_string_clipping)
16478         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
16479         instead of XSetClipRectangles.
16480         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
16481         Use x_fill_rectangle instead of XFillRectangle.
16482         (x_draw_glyph_string_foreground)
16483         (x_draw_composite_glyph_string_foreground)
16484         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
16485         instead of XDrawRectangle.
16486         (x_draw_relief_rect): Add code for USE_CAIRO.
16487         Call x_reset_clip_rectangles instead of XSetClipMask.
16488         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
16489         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
16490         instead of XSetClipMask.
16491         (x_draw_image_foreground, x_draw_image_foreground_1):
16492         x_draw_rectangle instead of XDrawRectangle.
16493         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
16494         XFillRectangle.
16495         (x_draw_image_glyph_string): If img has cr_data, use it as
16496         a cairo surface.
16497         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
16498         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
16499         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
16500         x_reset_clip_rectangles instead of XSetClipMask.
16501         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
16502         (x_clear_area1): New function that calls XClearArea.
16503         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
16504         non-cairo.
16505         (x_clear_frame): x_clear_window instead of XClearWindow.
16506         (x_scroll_run): Set frame garbaged if cairo.
16507         (XTmouse_position): Initialize *part to 0.
16508         (x_scroll_bar_create): Adjust arguments to x_clear_area.
16509         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
16510         x_fill_rectangle instead of XFillRectangle.
16511         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
16512         arguments to x_clear_area.
16513         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
16514         (handle_one_xevent): Adjust arguments to x_clear_area.
16515         Destroy cairo surface for frame if ConfigureNotify.
16516         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
16517         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
16518         x_reset_clip_rectangles instead of XSetClipMask.
16519         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
16520         x_reset_clip_rectangles instead of XSetClipMask.
16521         (x_clear_frame_area): Adjust arguments to x_clear_area.
16522         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
16523         (x_term_init): Call x_extension_initialize if cairo.
16524         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
16525         x_cr_destroy_fringe_bitmap for cairo.
16526         (x_initialize): Call x_cr_init_fringe for cairo.
16527         * src/xterm.h: Add include of cairo header files.
16528         (x_bitmap_record): Add img if cairo.
16529         (x_gc_ext_data): New struct for cairo.
16530         (x_display_info): Add ext_codes for cairo.
16531         (x_output): Add cr_context and cr_surface for cairo.
16532         (x_clear_area): Change arguments from Display*/Window to frame pointer.
16533         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
16534         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
16535         (x_cr_draw_frame, x_cr_export_frames): Declare.
16537 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
16539         Fix integer-valued `mouse-highlight' (Bug#20590)
16540         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
16542 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
16544         MS-Windows followup for ASCIIfication of curved quotes
16545         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
16546         test for curved quotes being displayable, after switching the
16547         terminal encoding.  (Bug#20545)
16549 2015-05-17  Jan D  <jan.h.d@swipnet.se>
16551         Add comment that x_shift_glyphs_for_insert is never called
16552         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
16553         Add comment that this function is never called.
16555 2015-05-16  Glenn Morris  <rgm@gnu.org>
16557         * src/lisp.mk: Remove from repository and generate at build-time.
16558         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
16559         (shortlisp_filter): New variable.
16560         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
16561         (distclean): Remove lisp.mk.
16562         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
16563         * lisp/loadup.el: Tweak layout to make it easier to parse.
16564         * make-dist: Do not distribute src/lisp.mk.
16566 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
16568         Display shorter dates in Git annotate output
16569         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
16570         format (when not overridden with vc-git-annotate-switches).
16571         (vc-git-annotate-time): Support the short format, as well as ISO
16572         8601 that has been used until now (bug#5428).
16574 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
16576         ASCIIfy curved quotes on displays lacking them
16577         * lisp/international/mule-cmds.el (set-locale-environment):
16578         If curved quotes don't work, display straight ASCII approximations
16579         (Bug#20545).
16581 2015-05-16  Glenn Morris  <rgm@gnu.org>
16583         Small src/Makefile simplification
16584         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
16585         * src/Makefile.in (lisp): Derive from shortlisp.
16586         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
16588 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
16590         * lisp/help-mode.el (help-go-forward): Doc fix.
16591         (Bug#20577)
16593         * doc/lispref/debugging.texi (Profiling): Improve indexing.
16594         (Bug#20576)
16596 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
16598         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
16599         have one fewer `not'.
16601         * lisp/vc/vc-git.el (vc-git-diff-switches)
16602         (vc-git-annotate-switches, vc-git-resolve-conflicts)
16603         (vc-git-program, vc-git-root-log-format): Remove the redundant
16604         :group declarations.
16606 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
16608         Removes the predicate from lisp-complete-symbol (Bug#20456)
16609         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
16610         and remove it from the docstring.
16612 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
16614         Add new option vc-git-resolve-conflicts
16615         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
16616         (vc-git-find-file-hook): Add to after-save-hook only when the
16617         above is non-nil.
16618         (vc-git-resolve-when-done): Update to honor the new variable.
16619         (Bug#20292)
16621 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16623         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
16624         (tabulated-list-init-header): Document new behavior.
16625         (tabulated-list-print-fake-header): Do nothing if
16626         `tabulated-list--header-string' is nil.
16627         (tabulated-list--header-string): Add a docstring.
16628         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
16629         * etc/NEWS: Document it.
16631 2015-05-15  Leo Liu  <sdl.web@gmail.com>
16633         Revert "Fix cps--gensym"
16634         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
16635         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
16637 2015-05-15  Glenn Morris  <rgm@gnu.org>
16639         Replace AC_SUBST_FILE in configure with include in Makefiles
16640         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
16641         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
16642         (AUTO_DEPEND): New output variable.
16643         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
16644         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
16645         (lwlib_deps_frag): Replace by conditional include.
16646         * lwlib/autodeps.mk: Remove file.
16647         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
16648         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
16649         (oldxmenu_deps_frag): Replace by conditional include.
16650         * oldXMenu/autodeps.mk: Remove file.
16651         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
16652         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
16653         (lisp_frag): Replace by an include.
16654         (deps_frag): Replace by conditional include.
16655         * src/autodeps.mk: Remove file.
16657         Tweak japanese.el's loading of dependencies
16658         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
16659         * lisp/language/japanese.el: Use require rather than load.
16660         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
16661         Provide a feature.
16662         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
16663         Provide a feature in the generated file.
16665 2015-05-15  Jan D  <jan.h.d@swipnet.se>
16667         Fix NS warnings
16668         * src/nsmenu.m (ns_popup_dialog)
16669         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
16670         * src/nsfns.m (Fx_create_frame): Remove unused variables.
16671         (Fns_read_file_name): Initialize fname, remove ret.
16672         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
16673         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
16674         Remove unused variable.
16675         (init): Add parantesis in if.
16676         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
16678 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
16680         Fix a enum conversion warning in macfont.m
16681         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
16682         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
16684 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
16686         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
16687         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
16689 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
16691         * lisp/cus-start.el: Add ns-confirm-quit.
16693         Fix warnings on OSX 10.10
16694         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
16695         OSX versions.
16696         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
16697         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
16698         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
16699         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
16700         setScalesWhenResized for OSX < 10.6.
16701         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
16702         * src/nsterm.m (ns_copy_bits): New function that does not use
16703         deprecated NSCopyBits.
16704         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
16705         (runAlertPanel): New function.
16706         (applicationShouldTerminate:): Call runAlertPanel.
16707         (initFrameFromEmacs, toggleFullScreen:): Only call
16708         useOptimizedDrawing for OSX < 10.10.
16709         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
16710         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
16711         (draggingEntered:): Returns NSDragOperation.
16712         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
16714 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16716         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
16717         (package--init-file-ensured): New variable.
16718         (package-initialize, package--ensure-init-file): Use it.
16720 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
16722         Honor :fore/background for XBM on NS (Bug#14969)
16723         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
16724         initFromXBM takes bg, fg args, remove flip arg.
16725         (ns_image_from_XBM): Add bg, fg args.
16726         * src/image.c (x_create_bitmap_from_data)
16727         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
16728         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
16729         initFromXBM.  Remove flip arg.
16730         (initFromSkipXBM): Move code to initFromXBM.
16731         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
16732         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
16733         always false.
16734         Remove bit flipping (bitPat, swt), generated incorrect images when
16735         width/height wasn't a multiple of 8.
16736         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
16737         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
16738         remove flip arg.
16740 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16742         * lisp/emacs-lisp/package.el: Be more careful with the init file.
16743         (package--ensure-init-file): Check that user-init-file is set,
16744         exists, is readable, and is writable.  (Bug#20584)
16745         Also expand the docstring.
16747 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
16749         Sync with upstream verilog-mode revision 6232468
16750         * lisp/progmodes/verilog-mode.el
16751         (verilog-font-lock-grouping-keywords-face)
16752         (verilog-highlight-grouping-keywords): Fix use of face when
16753         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
16754         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
16755         parent is reset, bug906.  Reported by Ken Schmidt.
16756         (verilog-auto-inout-module): Add fourth regexp argument to
16757         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
16758         Reported by John Tillema.
16759         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
16760         modport if signal attachment is itself a modport.  Reported by
16761         Matthew Lovell.
16762         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
16763         always_comb and always_latch, bug844.  Reported by Greg Hilton.
16764         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
16765         with many curly-bracket pairs, bug663.
16766         (verilog-set-auto-endcomments): Fix end comments for functions of
16767         type void, etc.  Reported by Alex Reed.
16768         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
16769         caused by indent-line-to deleting tabls pre 24.5.
16770         (verilog-nameable-item-re): Fix nameable items that can have an
16771         end-identifier to include endchecker, endgroup, endprogram,
16772         endproperty, and endsequence.  Reported by Alex Reed.
16773         (verilog-label-be): When auto-commenting a buffer, consider
16774         auto-comments on all known keywords (not just a subset thereof).
16775         Reported by Alex Reed.
16776         (verilog-auto-end-comment-lines-re)
16777         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
16778         Automatically comment property/endproperty blocks to match other
16779         similar blocks like sequence/endsequence, function/endfunction, etc.
16780         Reported by Alex Reed.
16781         (verilog-set-auto-endcomments): Detect the function- or task-name
16782         when auto-commenting blocks that lack an explicit portlist.
16783         Reported by Alex Reed.
16784         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
16785         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
16786         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
16787         is nil, fix indenting initial/final to match always statements,
16788         bug825.  Reported by Tim Clapp.
16789         (verilog-extended-complete-re): Fix indentation of DPI-C imports
16790         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
16791         Mao and Jason Forkey.
16792         (verilog-read-decls): Fix parsing typed interfaces.  Fix
16793         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
16794         Fix localparam not being ignored in AUTOINSTPARAM,
16795         bug889.  Reported by Shannon Hill.
16796         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
16797         bug793.  Reported by Pierre-David Pfister.
16798         (verilog-auto-arg-format, verilog-auto-arg-ports):
16799         Add verilog-auto-arg-format to support newlines in AUTOARG.
16800         Reported by Jie Xiao.
16801         (verilog-batch-execute-func): Do not batch re-auto files loaded by
16802         Local Variables.  Fix printing "no changes to be saved" with
16803         verilog-batch.  Reported by Dan Dever.
16804         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
16805         interface-only modules, bug721.  Reported by Dean Hoyt.
16806         Author: Alex Reed <acreed4@gmail.com>
16807         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
16808         Don't treat '<keyword>:<identifier>' as the start of a labeled
16809         statement, bug905.  Reported by Enzo Chi.
16810         (verilog-directive-re, verilog-compiler-directives)
16811         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
16812         directives (plus some extras) when determining indentation, bug
16813         901.  Reported by Bernd Beuster.
16814         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
16815         iff expression doesn't start with word-character, bug900.
16816         (verilog-optional-signed-range-re, verilog-optional-signed-re):
16817         Fix incorrect indentation/alignment of unsigned declarations,
16818         bug897.
16819         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
16820         always constructs, bug895.
16821         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
16822         Reported by Eric Mastromarchi.
16823         (verilog-beg-of-statement): Fix indenting for some forms of
16824         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
16825         continued assignment incorrect if first line ends with ']', bug437.
16826         Reported by Dan Dever.  Fix indention of cover inside an
16827         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
16828         blocks, bug842.
16829         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
16830         Reported by Kaushal Modi.
16831         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
16832         (verilog-backward-token): Fix indenting sensitivity lists with
16833         named events, bug840.  Reed.
16834         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
16835         nil not honoring 'forever', 'foreach', and 'do' keywords.
16837 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
16839         Check for invalid GTK+ monitor scales
16840         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
16841         INT_MAX for too-large scales.  All callers changed to assume the
16842         result is valid (Bug#20432).
16843         (xg_frame_set_char_size, xg_update_scrollbar_pos):
16844         Calculate scale only if needed.
16845         Show ASCII approximations instead.
16847 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
16849         Fix daemon crashes when linum-mode is turned on early on
16850         * src/window.c (Fwindow_end): Don't try calling display engine
16851         functions on initial-frame frame.  (Bug#20565)
16853         Fix selective diff browsing in Ediff
16854         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
16855         Go to the beginning of the region before searching for the
16856         ediff-regexp-focus-* regexps.  (Bug#20568)
16858 2015-05-14  Jan D  <jan.h.d@swipnet.se>
16860         Fixes bug#20142
16861         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
16862         arrive in the main loop, even for Gtk 3 (Bug#20142).
16864         Don't access display after i/o error (Bug#19147).
16865         * src/xterm.c (x_connection_closed): Add third arg ioerror.
16866         If ioerror, set display to 0 (Bug#19147).
16867         (x_error_quitter): Call x_connection_closed with third arg false.
16868         (x_io_error_quitter): Call x_connection_closed with third arg true.
16870         Handle GTK_SCALE, fixes Bug#20432.
16871         * src/gtkutil.c (xg_get_gdk_scale): New function.
16872         (xg_frame_set_char_size)
16873         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
16874         (xg_get_default_scrollbar_height)
16875         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
16876         when setting sizes (Bug#20432).
16878 2015-05-13  Leo Liu  <sdl.web@gmail.com>
16880         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
16882 2015-05-13  Glenn Morris  <rgm@gnu.org>
16884         Fix bootstrap (void function cl-member).
16885         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
16886         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
16888 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
16890         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
16891         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
16892         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
16893         Avoid defalias for closures which are not immutable.
16894         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
16895         the dispatchers table with various entries.
16896         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
16897         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
16899 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
16901         Improve tagging of C bindings in DEFVAR_*
16902         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
16903         from DEFVAR_*.
16905 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
16907         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
16909 2015-05-12  Glenn Morris  <rgm@gnu.org>
16911         * lisp/progmodes/tcl.el (tcl-filter):
16912         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
16914         Add basic VC push support
16915         * lisp/vc/vc.el (vc-push): New autoloaded command.
16916         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
16917         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
16918         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
16919         (vc-bzr-push): New.
16920         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
16921         (vc-git-pull): Reimplement using vc-git--pushpull.
16922         (vc-git-push): New.
16923         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
16924         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
16925         * doc/emacs/maintaining.texi (Pulling / Pushing):
16926         Rename from "VC Pull".  Mention pushing.
16927         (VC With A Merging VCS, VC Change Log): Update xrefs.
16928         (Branches): Update menu.
16929         * doc/emacs/emacs.texi: Update menu.
16930         * etc/NEWS: Mention this.
16932 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
16934         Improve the seq pcase pattern and the `seq-let' macro
16935         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
16936         object is a sequence, and binds each element of ARGS to the
16937         corresponding element of the sequence.
16939 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
16941         Fix tags created from DEFVAR_* declarations in C
16942         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
16943         to make tags extracted from DEFVAR_* declarations more accurate.
16945         Add a test suite for etags
16946         * test/etags/: New test suite, adapted from
16947         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
16948         whose original author is Francesco Potortì <pot@gnu.org>.
16950         Fix tagging of symbols in C enumerations
16951         * lib-src/etags.c (consider_token): Don't tag symbols in
16952         expressions that assign values to enum constants.  See
16953         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
16954         for details.
16955         (C_entries): Reset fvdef to fvnone after processing a preprocessor
16956         conditional and after a comma outside of parentheses.
16958 2015-05-12  Glenn Morris  <rgm@gnu.org>
16960         * lisp/url/url-handlers.el (url-file-name-completion)
16961         (url-file-name-all-completions): Silence compiler.
16963         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
16965         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
16967 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
16969         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
16970         (cl--generic-mandatory-args): Remove.
16971         (cl--generic-split-args): New function.
16972         (cl-generic-define, cl--generic-lambda): Use it.
16973         (cl-generic-define-method): Use it as well, and add support for
16974         context args.
16975         (cl--generic-get-dispatcher): Handle &context dispatch.
16976         (cl--generic-cache-miss): `dispatch-arg' can now be a
16977         context expression.
16978         (cl--generic-dispatchers): Pre-fill.
16979         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
16980         New test.
16982 2015-05-11  Glenn Morris  <rgm@gnu.org>
16984         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
16986 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
16988         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
16989         * lisp/term/rxvt.el: Require term/xterm.
16990         (rxvt-function-map): Use xterm-rxvt-function-map.
16991         (rxvt-standard-colors): Move before first use.
16992         (terminal-init-rxvt): Use xterm--push-map and
16993         xterm-register-default-colors.
16994         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
16995         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
16996         Move shared bindings between rxvt and xterm to it.
16997         (xterm-function-map): Use it.  Move the xterm-paste binding to
16998         xterm-rxvt-function-map (bug#20444).
16999         (xterm-standard-colors): Move before first use.
17000         (xterm--push-map): New function.
17001         (xterm-register-default-colors): Take standard colors as argument.
17002         (terminal-init-xterm): Use it.  Adjust call to
17003         xterm-register-default-colors.
17005 2015-05-11  Glenn Morris  <rgm@gnu.org>
17007         * lisp/term/x-win.el: Quieten --without-x compilation.
17008         (x-own-selection-internal, x-disown-selection-internal)
17009         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
17010         Declare.
17012         * Makefile.in (emacslog): Remove srcdir.
17013         (ChangeLog): Update for the above.
17015 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17017         python.el: better limit for looking-back calls
17018         * lisp/progmodes/python.el (python-shell-accept-process-output):
17019         Use last comint prompt start as limit for looking-back.
17021 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
17023         CEDET (srecode-insert-fcn): Fix use of oref on a class
17024         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
17025         on a class.  Reported by Pierre Lorenzon.
17026         (srecode-template-inserter-point): Remove declaration.
17028         CEDET (srecode-create-dictionary): Avoid obsolete object name
17029         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
17030         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
17032 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
17034         C-x 8 shorthands for curved quotes, Euro, etc.
17035         Although C-x 8 lets you insert arbitrary Unicode characters,
17036         it's awkward to use this to insert commonly used symbols such as curved
17037         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
17038         characters commonly found in English text and in basic math.
17039         For example, assuming the Alt key works on your keyboard and iso-transl
17040         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
17041         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
17042         (Bug#20499)
17043         * doc/emacs/mule.texi (Unibyte Mode):
17044         A few other printing characters now work too.
17045         * etc/NEWS: Document this.
17046         * lisp/international/iso-transl.el (iso-transl-char-map):
17047         Also support the following characters:
17048         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
17050 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
17052         Add xref-find-regexp
17053         * lisp/progmodes/xref.el (xref-find-function): Describe the
17054         `matches' action.
17055         (xref-find-regexp): New command, using it.
17056         (xref-collect-references): Rename to xref-collect-matches.
17057         (xref--collect-reference): Rename to xref--collect-match.
17058         (xref-collect-matches, xref--collect-match): Accept new argument,
17059         KIND.  Update accordingly.
17060         (xref--regexp-to-extended): New function.
17061         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
17062         `matches' action.
17063         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
17064         * lisp/progmodes/etags.el (etags-xref-find):
17065         Support the `matches' action.
17066         (etags--xref-find-matches): New function.
17068 2015-05-10  Glenn Morris  <rgm@gnu.org>
17070         * Makefile.in: Fixes for recent change-history changes.
17071         (change-history-nocommit): Update footer regexp.
17072         Ensure output script stays executable.
17074 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
17076         New version of `seq-let' based on a pcase pattern
17077         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
17078         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
17080 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
17082         Add basic HTML5 tags and a template
17083         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
17084         (html-tag-alist): Add HTML5 tags.
17085         (html-tag-help): Add new tags descriptions.
17086         (html-navigational-links): Template for nav links.
17087         (html-html5-template): Template for a HTML5 page.
17089 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
17091         semantic/symref/grep: Don't use word boundaries
17092         * lisp/cedet/semantic/symref/grep.el
17093         (semantic-symref-perform-search): Instead of wrapping input in
17094         word boundaries, check that the characters before and after are
17095         not word constituents.
17097         semantic/symref/grep: Support regexp search
17098         * lisp/cedet/semantic/symref.el
17099         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
17100         the search type is regexp.
17101         * lisp/cedet/semantic/symref/grep.el
17102         (semantic-symref-perform-search): Support the regexp search type.
17103         Pass -E to Grep when it's used.
17105         semantic-symref-regexp: Allow to input an arbitrary string
17106         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
17107         Allow to input an arbitrary string interactively.
17109         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
17110         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
17111         Remove tag-symbol-match-p from the default value
17112         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
17114         Declare find-tag obsolete
17115         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
17116         xref-find-definitions.
17118 2015-05-10  Jan D  <jan.h.d@swipnet.se>
17120         Draw composite string correctly (Bug#20537)
17121         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
17122         New function.
17123         (ns_draw_glyph_string): Call it.
17125 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
17127         Avoid infloop in ERC
17128         * lisp/simple.el (line-move-to-column): Ignore field boundaries
17129         while computing line beginning position.  (Bug#20498)
17131 2015-05-08  Glenn Morris  <rgm@gnu.org>
17133         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
17134         * build-aux/gitlog-to-emacslog: Check called from right directory.
17135         (srcprefix): Remove.
17137         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
17138         * Makefile.in (ChangeLog): No longer pass "distprefix".
17139         * make-dist: Update "make ChangeLog" syntax for the above change.
17141         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
17142         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
17144         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
17146         Add command-line option-parsing to gitlog-to-emacslog
17147         * build-aux/gitlog-to-emacslog: Add command-line options.
17148         By default, refuse to remove an existing output file.
17149         * Makefile.in (CHANGELOG): Update default.
17150         (ChangeLog): Do not test for existing file.
17151         (change-history-nocommit): Ensure temp file does not exist.
17153         Quieten --without-x compilation
17154         * lisp/term/common-win.el: Provide a feature.
17155         * lisp/term/x-win.el (term/common-win): Require it.
17157         * lisp/dired-aux.el (dired-do-print): Require lpr.
17159         Quieten compilation, eg in --without-x builds
17160         * lisp/dired-aux.el (lpr-printer-switch):
17161         * lisp/frame.el (tool-bar-height):
17162         * lisp/linum.el (font-info):
17163         * lisp/window.el (font-info, overflow-newline-into-fringe)
17164         (tool-bar-height):
17165         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
17166         * lisp/gnus/gnus-util.el (iswitchb-mode):
17167         * lisp/mail/rmailmm.el (libxml-parse-html-region):
17168         * lisp/net/nsm.el (gnutls-peer-status)
17169         (gnutls-peer-status-warning-describe):
17170         * lisp/net/shr.el (libxml-parse-xml-region):
17171         * lisp/url/url-http.el (gnutls-peer-status): Declare.
17173 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
17175         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
17176         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
17177         `subclass' since they're never called with a class.
17178         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
17179         srecode-dictionary-child-p.
17181 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
17183         * lisp/help.el (help--binding-locus): Document argument POSITION.
17184         (Bug#20530)
17186 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
17188         Merge from gnulib
17189         * doc/misc/texinfo.tex: Get latest version.
17191 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
17193         ffap.el (ffap-read-file-or-url): Fix completing-read call
17194         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
17195         `completing-read' should be a symbol.
17197 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
17199         Verify file modifications by other programs
17200         * src/filelock.c (lock_file): Check whether the file was modified
17201         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
17203         Fix keyboard macros that include function keys
17204         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
17205         keys in the macro before returning.  (Bug#20454)
17207 2015-05-08  Glenn Morris  <rgm@gnu.org>
17209         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
17210         "Copyright-paperwork-exempt".  (Bug#20324)
17212         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
17213         (log-edit-rewrite-tiny-change): New variable.
17214         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
17215         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
17216         * etc/NEWS: Mention this.
17218         * lisp/calc/calc.el (math-zerop): Declare.
17220         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
17222 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17224         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
17225         Support the case when BINDINGS is a single tuple.  (Bug#20525)
17227         * etc/NEWS: Fix typo in previous commit
17228         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
17230 2015-05-07  Jan D  <jan.h.d@swipnet.se>
17232         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
17233         Output URL to Gtk+ bug (Bug#20452).
17235         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
17237 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17239         * lisp/emacs-lisp/package.el: New "external" package status.
17240         An external package is any installed package that's not built-in
17241         and not from `package-user-dir', which usually means it's from an
17242         entry in `package-directory-list'.  They are treated much like
17243         built-in packages, in that they cannot be through the Package Menu
17244         deleted and are not considered for upgrades.
17245         (package-desc-status): Identify if a package is installed outside
17246         `package-user-dir'.
17247         (package-menu--print-info-simple)
17248         (package-menu--status-predicate): Add support for it.
17249         * etc/NEWS: Document it.
17251 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17253         * lisp/mail/rmail.el: Use lexical-binding.
17254         (rmail-bury): Remove unused var `buffer-to-bury'.
17255         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
17256         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
17257         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
17258         (rmail-insert-inbox-text): Remove unused var `movemail'.
17259         (rmail-add-mbox-headers): Remove unused var `limit'.
17260         (rmail-undelete-previous-message): Remove unused var `value'.
17261         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
17262         `resent-reply-to'.
17263         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
17264         (rmail-restore-desktop-buffer): Rename arguments.
17266 2015-05-06  Glenn Morris  <rgm@gnu.org>
17268         * Makefile.in (change-history-commit): Add missing piece of previous.
17270         Avoid unnecessary bumping of Makefile.in's timestamp
17271         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
17272         (emacslog): New variable.
17273         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
17274         (unchanged-history-files): Use $emacslog rather than Makefile.in.
17275         (change-history-nocommit): Store hash in $emacslog.
17276         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
17277         * admin/update_autogen (changelog_files): Update for the above.
17279         * Makefile.in: Don't always insist on removing existing "ChangeLog".
17280         (CHANGELOG): New variable.
17281         (no-ChangeLog): Remove.
17282         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
17283         (change-history-nocommit): Use a temp file rather than insisting
17284         on deletion of any existing "ChangeLog".
17286         * build-aux/gitlog-to-emacslog: Allow specification of output.
17288         * admin/update_autogen: Add option to update ChangeLog.
17289         (usage): Mention -H.
17290         (changelog_flag, changelog_n, changelog_files): New variables.
17291         (main): Check for -H, and maybe run change-history-nocommit.
17293 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17295         * lisp/subr.el (delete-dups): Pre-size the hashtable.
17297         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
17298         cl--arglist-args is defined (bug#20517).
17300 2015-05-06  Glenn Morris  <rgm@gnu.org>
17302         * Makefile.in (change-history-nocommit): New.
17304 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
17306         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
17307         timer when it is non-nil
17308         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
17310 2015-05-06  Glenn Morris  <rgm@gnu.org>
17312         Quieten CEDET compilation
17313         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
17314         Invert fboundp test to quieten on current Emacs.
17315         * lisp/cedet/ede/config.el (ede-shell-run-something)
17316         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
17317         (semanticdb-refresh-table): Declare.
17318         (ede-preprocessor-map): Require semantic/db.
17320         Quieten cc-mode compilation
17321         * lisp/progmodes/cc-awk.el (c-forward-sws):
17322         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
17323         Declare.
17325 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
17327         * lisp/subr.el (delete-dups): Avoid nreverse.
17329 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17331         * lisp/subr.el (delete-dups): Make it destructive again.
17333 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
17335         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
17337 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17339         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
17340         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
17341         (testcover--read): Rename from testcover-read.  Change calling
17342         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
17343         is gone.
17344         (testcover-start): Use add-function.  Move edebug-all-defs binding to
17345         testcover--read.
17346         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
17347         (testcover-mark): Remove unused var `item'.
17348         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
17350 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
17352         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
17353           use a hash table.  This can result in ~500 times speed-up for typical
17354           collections of size 5000, like that of `load-library'.
17356 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17358         CEDET: Avoid `oref' on classes in a few more cases
17359         * lisp/cedet/ede/generic.el (ede-find-target):
17360         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
17361         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
17362         var `prefix'.
17364         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
17365         (grepflags, greppattern): Declare.
17366         (semantic-symref-perform-search): Remove unused var `pat'.
17368         CEDET (srecode-compile-inserter): Avoid `oref' on classes
17369         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
17370         Avoid `oref' on classes (bug#20491).
17371         (srecode-compile-split-code): Remove unused var `key'.
17373 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
17375         Clean up pulse.el a little
17376         * lisp/cedet/pulse.el (pulse): Remove.
17377         (pulse-momentary-timer): Save instead of the stop time.
17378         (pulse-momentary-highlight-overlay):
17379         Call pulse-momentary-unhighlight first thing.
17380         Treat pulse-momentary-overlay as a single value, not a list.
17381         Save the created timer.  Only pass the stop time to the timer.
17382         (pulse-tick): Update accordingly.
17383         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
17384         single value.  Cancel the timer.
17386 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
17388         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
17389         Support the biblatex journaltitle field.
17391 2015-05-05  Glenn Morris  <rgm@gnu.org>
17393         Minor declare-function improvement
17394         * lisp/emacs-lisp/bytecomp.el
17395         (byte-compile-macroexpand-declare-function):
17396         Handle declarations after calls.  (Bug#20509)
17398         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
17400         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
17402 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
17404         Pulse using a timer
17405         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
17406         (pulse-momentary-highlight-overlay): Set up the timer instead of
17407         calling `pulse'
17408         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
17409         (pulse-tick): New function.
17410         (pulse-momentary-unhighlight): Cut off the stop time.
17411         (pulse-delay): Update the docstring WRT to not using sit-for.
17413         Add semantic/symref/grep file patterns for ruby-mode
17414         * lisp/cedet/semantic/symref/grep.el
17415         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
17416         Clarify the docstring.
17418         Don't require match
17419         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
17420         match.  That doesn't work for every command, and some identifier
17421         completion tables are bound to be imperfect anyway.
17423 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
17425         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
17426         (semantic-grammar--template-expand): New function.
17427         (semantic-grammar-header, semantic-grammar-footer): Use it.
17428         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
17429         (semantic-grammar-file-regexp): Refine regexp.
17430         (semantic-grammar-eldoc-get-macro-docstring):
17431         Use elisp-get-fnsym-args-string when available.
17432         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
17433         instead of the old eldoc-* names.
17434         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
17435         from elisp-mode.el.  Tweak calling convention.
17436         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
17437         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
17438         elisp--get-fnsym-args-string.
17439         (elisp--highlight-function-argument): Add `prefix' arg.
17440         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
17441         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
17443 2015-05-05  Glenn Morris  <rgm@gnu.org>
17445         * lisp/help-fns.el (describe-function-1):
17446         Handle builtins with advertised calling conventions.  (Bug#20479)
17448 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
17450         Merge branch 'seq-let'
17452         Update `seq-let' documentation
17453         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
17454         with the support of  `&rest'.
17456         Add support for &rest in `seq-let'
17457         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
17458         in the argument list.
17459         * test/automated/seq-tests.el: Add a test for parsing and binding
17460         `&rest' in `seq-let'.
17462 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
17464         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
17465         Add missing increment (Bug#20467).
17466         (eieio-object-value-create): Adjust to new slots representation
17467         (Bug#20467).
17468         (eieio-object-value-create): Fix missed adjustment to new
17469         representation of slots metadata.
17471 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
17473         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
17475 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
17477         Work around "Attempt to modify read-only object"
17478         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
17479         elisp--xref-find-definitions, to work around "Attempt to modify
17480         read-only object" error.
17482         Only skip some variables that have function counterparts
17483         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
17484         Only skip minor-mode-named variable if it's defined in a Lisp
17485         file, and it's in minor-mode-list (bug#20506).
17486         * test/automated/elisp-mode-tests.el
17487         (elisp-xref-finds-both-function-and-variable)
17488         (elisp-xref-finds-only-function-for-minor-mode): New tests.
17490 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17492         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
17493         previous change.
17494         (xref--insert-xrefs): Buttonize the whole line, including the
17495         number at the beginning.
17497         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
17498         Make sure we're inside the let bindings.
17499         * test/automated/elisp-mode-tests.el
17500         (elisp-completes-functions-after-let-bindings): New test.
17502 2015-05-04  Glenn Morris  <rgm@gnu.org>
17504         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
17505         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
17506         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
17507         Remove outdated declarations.
17509         Replace instances of "(eval-when-compile (autoload ...))"
17510         * lisp/gnus/gnus-art.el (nneething-get-file-name):
17511         Declare rather than autoload.
17512         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
17513         Remove pointless autoload.
17514         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
17515         (gnus-topic-create-topic, gnus-topic-enter-dribble):
17516         Declare rather than autoload.
17517         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
17518         (mailcap-extension-to-mime): Autoload at run-time.
17519         * lisp/gnus/mm-util.el (latin-unity-massage-name)
17520         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
17521         (latin-unity-representations-present-region):
17522         Declare rather than autoload.
17523         * lisp/gnus/mml-smime.el (epg-make-context)
17524         (epg-passphrase-callback-function): Autoload at run-time.
17525         (epg-context-set-signers, epg-context-result-for)
17526         (epg-new-signature-digest-algorithm)
17527         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
17528         (epg-sign-string, epg-encrypt-string)
17529         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
17530         (epg-configuration, epg-expand-group, epa-select-keys):
17531         Declare rather than autoload.
17532         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
17533         Autoload at run-time.
17534         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
17535         (gnus-registry-get-id-key, gnus-registry-action):
17536         Declare rather than autoload.
17537         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
17538         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
17539         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
17540         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
17541         (spam-stat-split-fancy): Remove pointless autoloads.
17542         * lisp/net/mairix.el: Load gnus-util when compiling.
17543         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
17544         (message-field-value): Declare rather than autoload.
17545         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
17546         Check gnus-alive-p is fbound.
17547         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
17548         (vm-check-for-killed-summary, vm-error-if-folder-empty)
17549         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
17550         Declare rather than autoload.
17552         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
17554         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
17555         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
17557         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
17559         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
17561         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
17562         * lisp/emacs-lisp/package.el (epg-signature-status):
17563         Fix declarations.
17565         * lisp/play/gametree.el (gametree-show-children-and-entry)
17566         (gametree-apply-layout, gametree-mouse-show-subtree)
17567         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
17569         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
17570         Handle cl-defgeneric, cl-defmethod.
17572 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17574         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
17575         Highlight both type and symbol name.
17577         Insert, highlight and align line numbers in xref output
17578         * lisp/progmodes/etags.el (xref-location-line): Specialize for
17579         xref-etags-location.
17580         * lisp/progmodes/xref.el (xref-location-line): New generic method.
17581         (xref-file-location): Add reader for the line slot.
17582         (xref--location-at-point): Skip to the `xref-location' property.
17583         (xref--collect-reference): Drop the line number from description.
17584         (xref--insert-xrefs): Insert, highlight and align line numbers.
17586 2015-05-04  Daniel Colascione  <dancol@dancol.org>
17588         * lisp/simple.el (save-mark-and-excursion--save)
17589         (save-mark-and-excursion--restore): Fix previous commit
17590         (255a011f0ecf004b31c59945b10154b10fac3af1).
17592 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17594         Don't pulse the indentation, or the newline
17595         * lisp/cedet/pulse.el (pulse-lighten-highlight)
17596         (pulse-reset-face): Fall back to the inherited background
17597         attribute in FACE.
17598         (pulse-momentary-highlight-region): Add autoload cookie.
17599         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
17600         indentation, or the newline, if the line's non-empty
17601         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
17603 2015-05-04  Daniel Colascione  <dancol@dancol.org>
17605         Add `save-mark-and-excursion', which has the old
17606         `save-excursion' behavior
17607         * doc/lispref/positions.texi (Excursions):
17608         Document `save-mark-and-excursion'.
17609         * lisp/font-lock.el (font-lock-fontify-block):
17610         Use `save-mark-and-excursion' instead of `save-excursion',
17611         restoring Emacs 24 behavior.
17612         * lisp/simple.el (save-mark-and-excursion--save)
17613         (save-mark-and-excursion--restore): New functions.
17614         (save-mark-and-excursion): New user macro.
17615         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
17616         in `save-excursion' documentation.
17618 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17620         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
17621         Classify lone symbol inside let varlist as variable.
17622         * test/automated/elisp-mode-tests.el
17623         (completest-variables-in-let-bindings): New test.
17625         Add xref-pulse-on-jump
17626         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
17627         Add autoload cookie.
17628         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
17629         (xref--maybe-pulse): New function.
17630         (xref-pop-marker-stack, xref--pop-to-location)
17631         (xref--display-position): Use it.
17632         (xref--location-at-point): Use back-to-indentation.
17634 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
17636         lisp/org/org-{macs,list}.el: Fix lexical warnings
17637         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
17638         (org-list-get-next-item, org-list-get-prev-item)
17639         (org-list-get-children): Mark unused arg `struct'.
17640         (org-list-use-alpha-bul-p): Remove unused var `bul'.
17641         (org-toggle-checkbox): Mark unused var.
17642         (org-update-checkbox-count): Remove unused var `box-num'.
17643         (org-adapt-indentation): Declare.
17644         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
17645         (org-list-send-list): Remove unused var `txt'.
17646         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
17647         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
17648         * lisp/org/org-macs.el: Use `declare'.
17649         (org-with-limited-levels): Declare dyn-bound vars.
17651 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
17653         Fix minor issues with CEDET on MS-Windows
17654         * lisp/cedet/semantic/symref/idutils.el
17655         (semantic-symref-parse-tool-output-one-line): Fix the search
17656         regexp to match MS-Windows file names with drive letters.
17657         (Bug#19468)
17658         * lisp/cedet/semantic/symref/grep.el
17659         (semantic-symref-grep-use-template): Remove "--color=always" from
17660         Grep switches on MS-Windows.
17661         (semantic-symref-grep-shell): Use shell-file-name as the default
17662         value, so this works not only on Posix platforms.
17663         (semantic-symref-perform-search): Use shell-quote-argument instead
17664         of literal '..' for portable quoting of Grep command-line
17665         argument.  Use shell-command-switch instead of a literal "-c".
17666         * lisp/cedet/semantic/bovine/gcc.el
17667         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
17668         for an absolute file name in a portable way.
17670 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17672         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
17673         (package-import-keyring, package-refresh-contents)
17674         (package-compute-transaction, package--save-selected-packages)
17675         (package-install-from-archive, package-delete)
17676         (package-menu--perform-transaction): Use `inhibit-message' instead.
17677         (package--compile): Set `warning-minimum-level' to :error.
17679 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
17681         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
17682         (terminal-init-screen): Use it (bug#20356).
17683         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
17684         (xterm--extra-capabilities-type): New const.
17685         (xterm-extra-capabilities): Use it.
17686         (xterm--version-handler): Lower the pseudo-version for `screen'.
17688 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
17690         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
17691         Always insert a newline at the end (to avoid mouse-face background
17692         tail at the last line).
17694         elisp-completion-at-point: Prioritize being quoted over funpos
17695         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
17696         Only consider function position when not inside quoted form
17697         (bug#20425).
17698         * test/automated/elisp-mode-tests.el: New file.
17700         Stop vc-print-log from jumping to the top
17701         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
17702         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
17703         is not specified.
17704         (vc-incoming-outgoing-internal): Always pass nil.
17705         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
17706         call it, and don't set vc-sentinel-movepoint (bug#15322).
17707         (vc-print-root-log): Don't fetch the root working revision, nor
17708         pass it to vc-print-log-internal.
17710 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
17712         Fix display of keyboard layouts for right-to-left scripts
17713         * lisp/international/quail.el (quail-insert-kbd-layout):
17714         Force left-to-right paragraph direction.
17716 2015-05-02  K. Handa  <handa@gnu.org>
17718         * src/cmds.c (internal_self_insert): When we insert spaces for
17719         padding, set point before the padding spaces, not after them.
17721 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
17723         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
17725 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
17727         Fix etags-xref-find for references
17728         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
17729         Use `cl-mapcan'.
17730         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
17731         directory if no tags tables are loaded (bug#19468).
17733 2015-05-02  Philipp Stephani  <phst@google.com>
17735         Update the options in whitespace-style defcustom
17736         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
17737         `repeat' because the option is really set-like.  Add missing
17738         options.  Reorder options to match the order in the
17739         documentation.  (Bug#20346)
17741 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
17743         Fix error diagnostics of c-macro-expand
17744         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
17745         too early if no start-marker string was found -- that generally
17746         means cpp exited abnormally, and we still want to show its error
17747         messages to the user.
17749         Don't require Texinfo 5.0 for Emacs documentation
17750         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
17751         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
17752         "@codequoteundirected on", respectively, to avoid requiring
17753         Texinfo 5.x for Emacs documentation.
17755 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
17757         * lisp/files.el (pwd):
17758         When called with a prefix argument, insert the current default
17759         directory at point.
17761 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
17763         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
17764         * lisp/isearch.el (isearch-mode-map): Don't inhibit
17765         function-key-map remapping for backspace (bug#20466).
17767 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
17769         Implement xref-find-references in etags and elisp-mode
17770         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
17771         (elisp-xref-find): Use it.
17772         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
17773         * lisp/progmodes/xref.el (xref-collect-references):
17774         (xref--collect-reference): New functions.
17776 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
17778         Prefer plain characters to Texinfo circumlocutions
17779         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
17780         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
17782         Fix single-quoting style in PDF manuals
17783         The PDF versions of the GNU manuals used curved single quotes to
17784         represent grave accent and apostrophe, which made it a pain to cut
17785         and paste code examples from them.  Fix the PDF versions to use
17786         grave accent and apostrophe for Lisp source code, keystrokes, etc.
17787         This change does not affect the info files, nor does it affect
17788         ordinary uses of curved single quotes in PDF.
17789         * doc/emacs/docstyle.texi: New file, which specifies treatment for
17790         grave accent and apostrophe, as well as the document encoding.
17791         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
17792         * doc/lispintro/emacs-lisp-intro.texi:
17793         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
17794         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
17795         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
17796         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
17797         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
17798         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
17799         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
17800         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
17801         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
17802         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
17803         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
17804         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
17805         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
17806         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
17807         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
17808         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
17809         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
17810         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
17811         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
17812         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
17813         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
17814         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
17815         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
17816         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
17817         * doc/misc/woman.texi:
17818         Use it instead of '@documentencoding UTF-8', to lessen the need for
17819         global changes like this in the future.
17820         * doc/emacs/Makefile.in (EMACS_XTRA):
17821         * doc/lispintro/Makefile.in (srcs):
17822         * doc/lispref/Makefile.in (srcs):
17823         Add dependency on docstyle.texi.
17824         * doc/misc/Makefile.in (style): New macro.
17825         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
17826         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
17827         Use it.
17829 2015-05-01  Glenn Morris  <rgm@gnu.org>
17831         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
17833         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
17834         (help-fns--signature): Declare.
17836         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
17838 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
17840         New macro seq-let, providing destructuring support to seq.el
17841         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
17842         to `cl-destructuring-bind' but works on all sequence types supported
17843         by `seq.el'.  Bump version number to 1.6.
17844         * test/automated/seq-tests.el: Add tests for seq-let.
17845         * doc/lispref/sequences.texi: Add documentation for seq-let.
17847 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
17849         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
17851 2015-05-01  Glenn Morris  <rgm@gnu.org>
17853         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
17855 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
17857         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
17858         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
17859         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
17860         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
17861         (Bug#20445).
17863 2015-05-01  K. Handa  <handa@gnu.org>
17865         * lisp/international/mule-cmds.el (input-method-use-echo-area):
17866         Change :type to 'boolean.
17868 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
17870         Start using proportional fonts in eww by default
17871         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
17872         it seems to work well.
17874         Fix links in tables in shr
17875         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
17876         makes (some) links in tables not work.
17878 2015-05-01  Jan D  <jan.h.d@swipnet.se>
17880         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
17882 2015-04-30  Glenn Morris  <rgm@gnu.org>
17884         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
17885         Update for 2015-02-08 change to indirect-function.
17887         * lisp/term/ns-win.el (ns-get-selection-internal):
17888         Remove declaration for function deleted 2014-10-21.
17890         * lisp/dom.el: Load subr-x when compiling, for when-let.
17892         Silence some compilation warnings
17893         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
17894         * lisp/emulation/cua-base.el (delete-active-region):
17895         * lisp/net/net-utils.el (w32-get-console-output-codepage):
17896         * lisp/term/ns-win.el (ns-own-selection-internal)
17897         (ns-disown-selection-internal, ns-selection-owner-p)
17898         (ns-selection-exists-p, ns-get-selection):
17899         Declare for compiler.
17901         Function declaration updates prompted by 'make check-declare'
17902         * lisp/emacs-lisp/package.el (lm-homepage):
17903         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
17904         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
17905         * lisp/gnus/mml.el (libxml-parse-html-region):
17906         * lisp/gnus/nnrss.el (libxml-parse-html-region):
17907         * lisp/net/eww.el (libxml-parse-html-region):
17908         * lisp/net/shr.el (libxml-parse-html-region):
17909         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
17910         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
17911         * lisp/vc/vc-git.el (vc-annotate-convert-time):
17912         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
17913         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
17914         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
17915         Update declaration.
17917         Remove compatibility code for 20-year old function renaming
17918         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
17919         Make it an obsolete alias.
17920         (idlwave-shell-filter): Change all uses to comint-output-filter.
17922 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
17924         Add ace-window face config
17925         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
17926         configuration.
17928 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
17930         Unclutter 'make doc' output a bit
17931         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
17932         Use make subst rather than sh IFS to split target string apart.
17933         This makes 'make' output easier to follow.
17935         Merge from gnulib
17936         * doc/misc/texinfo.tex: Update from gnulib.
17938 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
17940         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
17941         (package-menu--print-info): Obsolete.
17942         (package-menu--print-info-simple): New function.
17943         (package-menu--refresh): Use it, simplify code, and improve
17944         performance.
17945         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
17946         Tiny performance improvement.
17948         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
17950 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
17952         Omit -Wstrict-overflow workaround in GCC 5
17953         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
17954         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
17956         Merge from gnulib
17957         This incorporates:
17958         2015-04-29 extern-inline: no need for workaround in GCC 5.1
17959         2015-04-26 file-has-acl: port to CentOS 6
17960         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
17962 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
17964         Set next-error-* in xref--xref-buffer-mode
17965         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
17966         Set `next-error-function' and `next-error-last-buffer'.
17967         (xref--next-error-function): New function.
17968         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
17970 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17972         python.el: Fix warnings on looking-back calls missing LIMIT
17973         * lisp/progmodes/python.el (python-shell-accept-process-output):
17974         Pass LIMIT arg to looking-back.
17976 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
17978         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
17979         (package--download-and-read-archives): Use pushnew instead of
17980         append.  If something terrible happened during a previous
17981         download, simply refreshing should now make things work again.
17983 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
17985         Introduce etags-xref-find-definitions-tag-order
17986         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
17987         New variable.
17988         (etags--xref-find-definitions): Use it (bug#19468).
17990 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
17992         PATH- and completion-related fixes in Eshell on MS-Windows
17993         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
17994         MS-Windows, prepend "." to list of directories produced from PATH,
17995         as Windows always implicitly searches the current directory first.
17996         (eshell-force-execution): Make it have a non-nil default value on
17997         MS-Windows and MS-DOS.
17998         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
17999         eshell-force-execution is non-nil, complete on readable files and
18000         directories, not only executables.  When running on MS-Windows,
18001         prepend "." to list of directories produced from PATH, as Windows
18002         always implicitly searches the current directory first.
18004 2015-04-29  Sam Steingold  <sds@gnu.org>
18006         Bury RCIRC buffers when there is no activity
18007         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
18008         (rcirc-bury-buffers): New function.
18009         (rcirc-next-active-buffer): When there is no new activity, use
18010         `rcirc-bury-buffers' to hide all RCIRC buffers.
18012 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
18014         Fix DBUS query result parsing for secrets-search-items
18015         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
18016         parsing.  The function assumed that return value of the
18017         SearchItems method called on a collection is a list of two lists,
18018         however this is true only when no collection is specified.  GNOME
18019         had used to incorrectly return a list of two lists in both cases,
18020         but this was already fixed:
18021         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
18022         incorrect information in the secrets-search-items’ docstring.
18023         (Bug#20449)
18025 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
18027         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
18028         Use `inhibit-message' instead of hiding the previous message
18029         with (message nil).
18031 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
18033         Remove the deprecated INTERNAL_FIELD macro by expanding it
18034         * src/lisp.h (INTERNAL_FIELD): Remove.
18035         (DEFVAR_KBOARD): Modify accordingly.
18036         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
18037         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
18038         * src/buffer.c (compact_buffer): Use BVAR.
18040 2015-04-29  Glenn Morris  <rgm@gnu.org>
18042         Replace an obsolete function alias
18043         * lisp/isearch.el (isearch-yank-x-selection):
18044         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
18045         (mouse-drag-secondary-moving):
18046         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
18047         Replace obsolete alias x-get-selection with gui-get-selection.
18049 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18051         * lisp/mail/rmailsum.el: Use lexical-binding.
18053 2015-04-29  Glenn Morris  <rgm@gnu.org>
18055         * test/automated/package-test.el (package-test-update-archives-async):
18056         Skip test on hydra.nixos.org.
18058 2015-04-28  Glenn Morris  <rgm@gnu.org>
18060         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
18061         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
18062         (foldout-mouse-hide-or-exit): Use new names for outline functions.
18064         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
18065         Update for 2014-06-26 hideif.el change.
18067         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
18068         (rmail--decode-and-apply): New function.
18069         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
18071         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
18073 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18075         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
18076         (package-menu--refresh): Delegate obsolete-hiding to
18077         `package--remove-hidden'.
18078         (package--remove-hidden): Disregard high-priority package if it is
18079         older than the installed one.
18081 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
18083         Update source file encoding list
18084         Update admin/notes/unicode, along with coding system cookies in
18085         other files, so that the two match each other better.
18086         * admin/notes/unicode: lisp/language/ethio-util.el and
18087         lisp/language/ethiopic.el also use utf-8-emacs.
18088         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
18089         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
18090         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
18091         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
18092         * etc/refcards/sk-survival.tex:
18093         Add "coding: utf-8" so that this file is not mishandled in a
18094         Latin-1 or Big-5 locale.
18095         * lisp/international/robin.el, lisp/org/ox-ascii.el:
18096         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
18097         * lisp/language/ethio-util.el: Fix trailer.
18099 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
18101         Fix synchronous invocation of Ispell
18102         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
18103         value to ispell-process-directory before calling ispell-init-process.
18104         Don't call set-process-coding-system if ispell-async-processp is nil.
18105         (Bug#20448)
18107 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18109         * lisp/emacs-lisp/package.el: Skip space and comments in init file
18110         (package--ensure-init-file): Insert snippet at first
18111         non-whitespace non-comments line.  Respects local-vars at the top
18112         of the file.
18114 2015-04-28  Glenn Morris  <rgm@gnu.org>
18116         * lisp/mail/rmail.el (rmail-copy-headers):
18117         Handle rmail-nonignored-headers being nil.  (Bug#18878)
18119         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
18121         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
18122         Don't get confused by a bzrlib version mismatch warning.
18124 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18126         Change default location of EUDC options file
18127         * etc/NEWS: Document change to EUDC options file's default location.
18128         * lisp/net/eudc-vars.el (eudc-options-file): Use
18129         `locate-user-emacs-file' to change default options file location.
18131 2015-04-27  Glenn Morris  <rgm@gnu.org>
18133         * test/automated/package-test.el (package-test-update-archives-async):
18134         Try to handle the test server script dying.
18136 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18138         * lisp/saveplace.el (save-place-mode): New minor mode.
18139         (save-place): Redefine as an obsolete alias.
18141         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
18142         * lisp/midnight.el: Use lexical-binding.
18143         (midnight-mode): Make it a proper minor mode.
18144         (midnight-buffer-display-time): Make arg non-optional.
18145         (midnight-find): Remove.
18146         (clean-buffer-list-kill-never-regexps)
18147         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
18148         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
18149         contain functions.
18150         (clean-buffer-list): Use cl-find.
18151         Allow clean-buffer-list-kill-never-regexps to contain functions.
18153 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
18155         Bump version of seq.el to 1.5
18156         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
18157         from seq-doseq.  Bump version number of seq.el.
18159 2015-04-27  Glenn Morris  <rgm@gnu.org>
18161         * lisp/mail/rmail.el (rmail-reply):
18162         Decode subject before matching "Re:" prefix.  (Bug#20396)
18164 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
18166         * lisp/emacs-lisp/package.el: Small improvements
18167         (package--with-work-buffer-async): More informative error.
18168         (package-install-user-selected-packages): Rename to
18169         `package-install-selected-packages'.
18171 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18173         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
18174         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
18175         (eieio--class-make): Remove leftover `tag'.
18177 2015-04-27  Glenn Morris  <rgm@gnu.org>
18179         * lisp/gnus/message.el (gnus-extract-address-components):
18180         Remove bogus declaration that was masking previous problem.
18182 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
18184         * lisp/gnus/message.el (message-insert-formatted-citation-line):
18185         Fix typo.  (Bug#20318)
18187 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18189         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
18191         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
18192         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
18193         the buffer in yet another frame.
18194         (reftex-toc-visit-location): Make sure toc-window has focus at the end
18195         when `final' is nil.
18196         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
18197         silence warnings.  Use `--' to clarify that it's internal.
18198         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
18199         (reftex-toc-promote): Clarify unused argument.
18200         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
18201         Add `reftex--' prefix.  Fix all users.
18202         (reftex-toc-promote-prepare): Use _ for dummy variable.
18203         (reftex-toc-restore-region): Rename `m.
18205 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
18207         Fix a typo in bibtex.el
18208         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
18209         last change.  (Bug#20429)
18211         Fix redisplay of frame after loading new fonts
18212         * src/xdisp.c (redisplay_internal): When retrying redisplay of
18213         a frame because new fonts were loaded, disable all redisplay
18214         optimizations on that frame by calling SET_FRAME_GARBAGED.
18215         (Bug#20410)
18217 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18219         * lisp/info.el (Info-menu): Properly provide the `default'
18220         (Bug#20391)
18222         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
18223         Catch errors from documentation (bug#20418).
18224         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
18226 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
18228         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
18229         Remove redundant ":group 'package".
18231 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
18233         Fix a typo in rmail.el
18234         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
18235         last commit.  (Bug#20429)
18237 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
18239         Introduce xref-prompt-for-identifier
18240         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
18241         (xref--read-identifier): Use it
18242         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
18244 2015-04-26  João Távora  <joaotavora@gmail.com>
18246         `tex-insert-quote' after single `'' opens quotes instead of closing
18247         Without this, it's very hard to precede double quotes with the
18248         apostrophe character, i.e. insert the sequence '``
18249         (quote-backquote-backquote), commonly useful in portuguese, for
18250         instance.
18251         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
18252         preceding chars making `tex-insert-quote' be in the "opening" context.
18254 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
18256         Pass `id' to `completing-read' as def instead of initial input
18257         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
18258         `completing-read' as the default value instead of initial input
18259         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
18261 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
18263         Don't freeze with unreadable processes
18264         Don't freeze if an exiting process can't be read from.  (Bug#19860).
18265         This fixes a bug I introduced in
18266         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
18267         "* process.c: Add sanity checks for file descriptors."
18268         Dmitry Gutov did most of the legwork in finding the problem.
18269         * src/process.c (wait_reading_process_output):
18270         Treat non-running processes that can't be read from
18271         the same as other non-running processes.
18273 2015-04-25  Alan Mackenzie  <acm@muc.de>
18275         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
18276         * lisp/subr.el (remove-yank-excluded-properties): Put
18277         `with-silent-modifications' around only the last three lines of code.
18279 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18281         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
18282         (package--all-keywords): Deleted variable.
18284         * etc/NEWS: Document package-hiding functionality.
18286 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
18288         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
18290         Clarify the doc string of 'replace-regexp-in-string'
18291         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
18293         Improve doc string of 'insert-buffer-substring'
18294         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
18296         MS-Windows followup for the recent gnulib update
18297         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
18298         acl-internal.c.
18300 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
18302         Spelling fixes
18304         Merge from gnulib
18305         This incorporates:
18306         2015-04-24 file-has-acl: new module, split from acl
18307         2015-04-24 manywarnings: add GCC 5.1 warnings
18308         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
18309         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
18310         2015-04-15 acl: On Linux, check for acls without libacl
18311         2015-04-14 tempname: avoid unused parameter warnings (trivial)
18312         * lib/acl-internal.c: New file, from gnulib.
18313         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
18314         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
18315         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
18316         Update from gnulib.
18318         Port --enable-gcc-warnings to GCC 5.1 x86-64
18319         * lib-src/ebrowse.c (dump_sym):
18320         * lib-src/hexl.c (main):
18321         * src/ccl.c (ccl_driver):
18322         * src/character.c (string_escape_byte8):
18323         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
18324         * src/gnutls.c (Fgnutls_boot):
18325         * src/gtkutil.c (xg_check_special_colors):
18326         * src/image.c (x_build_heuristic_mask):
18327         * src/print.c (safe_debug_print, print_object):
18328         * src/term.c (produce_glyphless_glyph):
18329         * src/xdisp.c (get_next_display_element)
18330         (produce_glyphless_glyph):
18331         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
18332         Don't use a signed format to print an unsigned integer, or vice
18333         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
18334         * src/image.c (png_load_body, jpeg_load_body):
18335         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
18337 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
18339         Add new faces to tsdh-light-theme
18340         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
18341         definitions for Info-quoted, ace-jump-face-foreground,
18342         hl-paren-face, show-paren-match, and show-paren-mismatch.
18344 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
18346         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
18348 2015-04-24  Glenn Morris  <rgm@gnu.org>
18350         * build-aux/gitlog-to-emacslog:
18351         Use raw log format rather than wrapped one.
18353 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
18355         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
18356         (seq-doseq): Fix out-of-scope binding.
18357         Don't call `seq-length at every iteration.
18358         Reduce `if's from 3 to 2 per iteration.
18359         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
18361 2015-04-24  Glenn Morris  <rgm@gnu.org>
18363         * lisp/textmodes/text-mode.el (text-mode-hook):
18364         Move text-mode-hook-identify to default.
18366         * lisp/mouse.el (minor-mode-menu-from-indicator):
18367         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
18369         * lisp/help-fns.el (describe-function): More type checking.
18370         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
18372         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
18373         (Bug#20325)
18375 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
18377         shr: strip leading whitespace when expanding URLs
18378         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
18380 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
18382         Clarify "co-authored" some more
18384         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
18386         Clarify doc strings of functions that search for properties
18387         * src/textprop.c (Fnext_char_property_change)
18388         (Fprevious_char_property_change)
18389         (Fnext_single_char_property_change)
18390         (Fprevious_single_char_property_change, Fnext_property_change)
18391         (Fnext_single_property_change, Fprevious_property_change)
18392         (Fprevious_single_property_change): Clarify doc strings wrt return
18393         value and the optional LIMIT argument.  (Bug#20411)
18395 2015-04-24  Glenn Morris  <rgm@gnu.org>
18397         * test/automated/message-mode-tests.el (message-mode-propertize):
18398         Handle non-writable HOME; eg on hydra.nixos.org.
18400 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
18402         Avoid starting threads by w32-shell-execute
18403         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
18404         local file names, before invoking ShellExecute.  (Bug#20220)
18406 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
18408         Fix following doc-links in `widget-documentation-link-action'
18409         * lisp/wid-edit.el (widget-documentation-link-action): Make
18410         following doc-links less simplistic (Bug#20398).
18412 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18414         Improve EUDC manual
18415         * doc/misc/eudc.texi (Troubleshooting):
18416         New LDAP troubleshooting subsection.
18418 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
18420         Omit needless "\ " after multibyte then newline
18421         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
18422         (print_object): When print-escape-multibyte is non-nil and a
18423         multibyte character is followed by a newline or formfeed, followed
18424         by a hex digit, don't output a needless "\ " before the hex digit.
18425         * test/automated/print-tests.el (print-hex-backslash): New test.
18427 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
18429         Add a new `inhibit-message' variable
18430         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
18431         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
18432         `inhibit_message' is non-zero.
18433         * etc/NEWS: Add an entry.
18434         * doc/lispref/display.texi: Add an entry for `inhibit-message',
18435         mention it in `message'.
18437 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
18439         Fix last fix in `display-buffer-record-window'.
18440         * lisp/window.el (display-buffer-record-window): Fix last fix.
18442 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
18444         Minor edits in CONTRIBUTE
18445         * CONTRIBUTE: Rearrange instructions about log messages.
18446         Use "Git" capitalized all over.
18447         Use 2 spaces between sentences.
18449 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
18451         * lisp/files.el (basic-save-buffer): Fix argument.
18453         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
18454         In case `(and (null custom-file) init-file-had-error)' do the same
18455         thing we'd do if `(null user-init-file)', which is to either error out
18456         or return nil.  This is in line with `custom-save-all' which would
18457         throw an error in that situation.  (Bug#20355)
18459         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
18460         (package-menu-hide-low-priority): New variable, see its doc.
18461         (package-archive-priorities): Update doc.
18462         (package-desc-priority): New function.
18463         (package-desc-priority-version): Use it.
18464         (package--remove-hidden): New function.
18465         (package-menu--refresh): Use it.
18467         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
18468         (package-menu--hide-obsolete): New variable.
18469         (package--remove-hidden): Use it.
18470         (package-menu-hide-obsolete): New interactive function to toggle
18471         the variable.
18472         (package--quick-help-keys): Document it.
18473         (package-menu-async): Add :version tag.
18474         (package-menu-mode-map): Bind package-menu-hide-obsolete.
18475         (package-desc-status): Indicate non-installed obsolete packages as
18476         avail-obso.
18477         (package-menu-mark-install): Allow installation of avail-obso.
18478         (package-menu--status-predicate): Sort avail-obso with available.
18480 2015-04-22  Alan Mackenzie  <acm@muc.de>
18482         On C-y, stop some text property entries being written into buffer-undo-list
18483         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
18484         `with-silent-modifications'.
18486 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
18488         In display-buffer-record-window record selected window if necessary
18489         * lisp/window.el (display-buffer-record-window): Store selected window
18490         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
18492 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
18494         Fix reftex-citation bug
18495         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
18496         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
18497         integration is enabled and there are no citations in the document
18498         so far.
18500 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
18502         Add or reset based on the presence of MERGE_HEAD
18503         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
18504         `vc-git-resolve-when-done' to `after-save-hook' in either case.
18505         (vc-git-conflicted-files): Add a TODO.
18506         (vc-git-resolve-when-done): Depending on the presence of
18507         MERGE_HEAD, either update the resolved file in the index, or
18508         remove it from there.  (Bug#20292)
18510 2015-04-21  Glenn Morris  <rgm@gnu.org>
18512         * lisp/custom.el (custom-declare-group): No need to purecopy
18513         custom-current-group-alist members following recent change to set
18514         it to nil before dumping.
18516         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
18517         (Bug#20399)
18519 2015-04-21  Daniel Colascione  <dancol@dancol.org>
18521         Unbreak no-op buffer save message
18522         * lisp/files.el (basic-save-buffer): Accept called-interactively as
18523         an argument instead of directly invoking called-interactively-p,
18524         which will always yield nil in that context.
18526 2015-04-21  Alan Mackenzie  <acm@muc.de>
18528         CC Mode: Do nothing in before/after-change-functions for text
18529         property changes
18530         Fixes bug#20266.
18531         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
18532         yank-handled-properties buffer local, and remove 'category from it.
18533         (c-called-from-text-property-change-p): New function.
18534         (c-before-change): Don't do anything if a call of the new function
18535         returns non-nil.
18536         (c-after-change): Don't do much if a call of the new function returns
18537         non-nil.
18538         (c-extend-after-change-region): Put changes to text property 'fontified
18539         inside c-save-buffer-state.
18541 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
18543         Fix byte-compiler warnings about looking-back
18544         * lisp/vc/log-view.el (log-view-end-of-defun-1):
18545         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
18546         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
18547         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
18548         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
18549         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
18550         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
18551         * lisp/org/org.el (org-insert-heading, org-sort-entries):
18552         * lisp/org/org-mouse.el (org-mouse-end-headline)
18553         (org-mouse-context-menu):
18554         * lisp/org/org-clock.el (org-clock-cancel):
18555         * lisp/man.el (Man-default-man-entry):
18556         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
18557         (rmail-ensure-blank-line):
18558         * lisp/mail/footnote.el (Footnote-delete-footnote):
18559         * lisp/mail/emacsbug.el (report-emacs-bug):
18560         * lisp/info.el (Info-follow-reference, Info-fontify-node):
18561         * lisp/info-look.el (info-lookup-guess-custom-symbol):
18562         * lisp/help-fns.el (help-fns--key-bindings):
18563         * lisp/files.el (hack-local-variables):
18564         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
18565         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
18566         (viper-complete-filename-or-exit):
18567         * lisp/emulation/viper-cmd.el (viper-backward-indent):
18568         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
18569         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
18570         * lisp/cus-edit.el (custom-face-edit-value-create):
18571         * lisp/calendar/todo-mode.el (todo-set-item-priority)
18572         (todo-filter-items-1, todo-convert-legacy-files)
18573         (todo-prefix-overlays): Add explicit second arg to looking-back.
18575 2015-04-20  Glenn Morris  <rgm@gnu.org>
18577         Avoid non-nil current-load-list at startup
18578         * src/process.c (init_process_emacs): Move Fprovide statement...
18579         (syms_of_process): ... to here.
18581         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
18583         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
18584         in emacs -Q.
18586 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
18588         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
18589         (Bug#20330)
18591 2015-04-20  Glenn Morris  <rgm@gnu.org>
18593         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
18595         Tweak exec-path in uninstalled case
18596         * src/callproc.c (init_callproc): If running uninstalled, do not
18597         include eventual installation libexec directory in exec-path.
18599 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
18601         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
18602         cache keywords.
18603         (package-menu-filter): Accept a list of keywords.
18604         (package--all-keywords): New variable to cache known keywords.
18605         (package-all-keywords): Populate it if necessary.
18606         (package-refresh-contents): Reset it.
18608         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
18609         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
18610         as special keywords which match agains package archive and status
18611         respectively.
18612         * etc/NEWS: Document it.
18614 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
18616         Describe and index "empty overlays".
18617         * doc/lispref/display.texi (Overlays): Improve indexing.
18618         (Managing Overlays): Describe "empty" overlays.
18619         (Overlay Properties, Finding Overlays): Add cross-reference to
18620         where empty overlays are described.
18622 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
18624         Spelling fixes
18626         Quote 'like this' in top-level files
18627         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
18628         Prefer to single-quote 'like this' (instead of the older style
18629         `like this').
18630         * configure.ac: Fix some space-before-tab problems that 'git commit'
18631         complained about.
18633         Use bool for boolean in textprop.c, undo.c
18634         * src/textprop.c (soft, hard): Now constants instead of macros.
18635         (validate_plist): Rewrite to avoid need for boolean local.
18636         (interval_has_all_properties, interval_has_some_properties)
18637         (interval_has_some_properties_list, add_properties)
18638         (remove_properties, get_char_property_and_overlay)
18639         (Fnext_single_char_property_change)
18640         (Fprevious_single_char_property_change, add_text_properties_1)
18641         (Fremove_text_properties, Fremove_list_of_text_properties)
18642         (copy_text_properties):
18643         * src/tparam.c (tparam1):
18644         * src/undo.c (record_change, record_property_change)
18645         (syms_of_undo):
18646         Use 'true' and 'false' for booleans.
18648 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
18650         * lisp/vc/vc-git.el (vc-git-find-file-hook):
18651         Call `smerge-start-session' even when dealing with a stash
18652         conflict (bug#20292).
18654 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
18656         Add option to eshell/clear to clear scrollback.
18657         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
18658         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
18659         scrollback contents are cleared.
18660         * etc/NEWS: Describe change.
18661         * doc/misc/eshell.texi: Add entry for `clear'.
18663 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
18665         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
18666         where either will do.
18668 2015-04-19  Steve Purcell  <steve@sanityinc.com>
18670         Assume package archive-contents are UTF8-encoded
18671         * lisp/emacs-lisp/package.el (package--read-archive-file):
18672         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
18673         downloaded and cached archive-contents files, so that non-ASCII
18674         characters in package descriptions are displayed correctly in the
18675         `list-packages' menu.  (Bug#20231)
18677 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
18679         Abort when looking at stashed changes
18680         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
18681         stashed changes (bug#20292).
18683 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
18685         Refactor low-level printing for simplicity
18686         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
18687         PRINTPREPARE; doable now that we assume C99.  All callers changed.
18688         (PRINTCHAR): Remove, as it adds more mystery than clarity.
18689         All callers changed.
18690         (strout): Assume that caller computes length.  All callers changed.
18691         (print_c_string): New function.
18692         (write_string, write_string_1): Compute length instead of asking
18693         the caller to compute it.  All callers changed.
18694         (write_string): Simplify by using write_string_1.
18695         (write_string_1): Simplify by using print_c_string.
18696         (Fterpri): Compute default val more clearly.
18697         (Fprin1_to_string, print_object):
18698         Assume C99 to avoid unnecessary nesting.
18699         (print_object): Prefer print_c_string to multiple printchar, or
18700         to calling strout with -1 length.  Coalesce into sprintf when
18701         this is easy.
18703 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
18705         Prefer "Bug#1234" in commit messages (Bug#20325)
18706         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
18707         as this isn't useful for Git.
18708         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
18710 2015-04-18  Glenn Morris  <rgm@gnu.org>
18712         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
18713         (Bug#19506)
18715 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
18717         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
18718         Do not use `chomp' as a function.  (Bug#19505)
18720 2015-04-18  Glenn Morris  <rgm@gnu.org>
18722         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
18724         * doc/emacs/misc.texi (Sorting): Small edit.
18725         (Bug#19896)
18727         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
18729 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
18731         css-mode.el: Support multi-line comment filling
18732         (Bug#20256)
18733         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
18734         comment filling.
18735         (css-adaptive-fill): New function.
18736         (css-mode): Set `adaptive-fill-function'.
18737         (scss-mode): Set `comment-continue'.
18739 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
18741         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
18742         Better error messages.
18744 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
18746         Minor improvements in Bulgarian input methods
18747         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
18748         Replace U+042C with U+045D, as the former character is not used in
18749         the modern Bulgarian language.
18750         (Bug#20350)
18752 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18754         Improve EUDC manual
18755         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
18756         authentication schemes.  Add index items.  Shorten example server
18757         name.
18759 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
18761         Don't show both feature and function with the same name
18762         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
18763         Don't show both feature and function with the same name.
18765         (elisp--xref-identifier-location): Skip variable, if it's also
18766         a function
18767         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
18768         Avoid returning both the variable and the function for the same
18769         minor mode.
18771 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
18773         Fix fontification of keywords clobbered by the prompt
18774         * lisp/comint.el (comint-output-filter): Remove the uses of
18775         with-silent-modifications I introduced as part of the last change.
18776         This fixes, e.g., erratically missing highlighting when running
18777         ./configure --help; ./configure in a shell-mode buffer with
18778         compilation-shell-minor-mode turned on.
18780 2015-04-17  Glenn Morris  <rgm@gnu.org>
18782         * admin/authors.el (authors-valid-file-names)
18783         (authors-renamed-files-alist): Additions.
18785 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
18787         * lisp/indent.el (indent-region): Don't deactivate the mark.
18788         (Bug#20357)
18790 2015-04-17  Sam Steingold  <sds@gnu.org>
18792         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
18794 2015-04-16  Leo Liu  <sdl.web@gmail.com>
18796         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
18798 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
18800         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
18801         Don't use `pcomplete' any more.
18803 2015-04-16  Glenn Morris  <rgm@gnu.org>
18805         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
18807 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
18809         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
18810         * configure.ac (LIBJPEG): Leave it empty for MinGW.
18812 2015-04-16  Glenn Morris  <rgm@gnu.org>
18814         * lisp/replace.el (query-replace-from-to-separator):
18815         Delay initialization to avoid rogue setting after startup.
18817 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
18819         Pre-4.6 GCC succeeds with unknown option
18820         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
18821         (Bug#20338)
18823 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18825         '[:graph:]' now excludes whitespace, not just ' '
18826         * doc/lispref/searching.texi (Char Classes):
18827         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
18828         sans whitespace (not sans space).
18829         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
18830         not just space.
18831         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
18833 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18835         * lisp/subr.el (substitute-key-definition-key, special-form-p)
18836         (macrop): Drop deprecated second arg to indirect-function.
18837         (looking-back): Make the second arg non-optional.
18839         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
18840         command is actually sent to the shell.
18842 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18844         Port jpeg configuration to Solaris 10 with Sun C
18845         * configure.ac: Check for jpeglib 6b by trying to link it, instead
18846         of relying on cpp magic that has problems in practice.  Check for
18847         both jpeglib.h and jerror.h features.  Remove special case for
18848         mingw32, which should no longer be needed (and if it were needed,
18849         should now be addressable by hotwiring emacs_cv_jpeglib).
18850         (Bug#20332)
18852 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18854         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
18855         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
18856         Move to elisp-mode.el.
18857         (lisp-mode-variables): (Re)move elisp-specific settings.
18858         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
18859         from lisp-mode-variables.
18860         (elisp--font-lock-flush-elisp-buffers): New function, moved from
18861         lisp-mode.el.
18863         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
18864         Avoid pathological slowdown at top-level in large file.
18866 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18868         Standardize names of ChangeLog history files
18869         Suggested by Glenn Morris in:
18870         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
18871         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
18872         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
18873         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
18874         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
18875         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
18876         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
18877         Remove.
18879         Split top-level entries into pre- and post-April 7
18880         This more clearly distingiushes pre-April-7 ChangeLog entries (which
18881         are for top-level files only) from post-April-7 entries (which are
18882         about files at all levels.  Problem reported by Glenn Morris in:
18883         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
18884         * ChangeLog.1: Move post-April-7 entries from here ...
18885         * ChangeLog.2: ... to this new file.
18886         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
18888 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18890         Fix recent cus-start changes that added customize-rogues
18891         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
18892         vars early.
18893         * lisp/loadup.el ("cus-start"): Move to the end to reduce
18894         customize-rogue.
18896 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
18898         Define cl-concatenate as an alias to seq-concatenate
18899         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
18900           code by making cl-concatenate an alias to seq-concatenate.
18902 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18904         * src/lread.c (intern_1): Make sure we'd find the symbol we add
18905         (Bug#20334)
18906         * src/xfaces.c (resolve_face_name): Don't use `intern' with
18907         Lisp_Strings.
18909 2015-04-15  Glenn Morris  <rgm@gnu.org>
18911         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
18913 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
18915         Clean up gnus-uu saving code slightly
18916         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
18917         save-restriction/widen calls make more sense.
18919 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18921         Make [:graph:] act like [:print:] sans space
18922         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
18923         [:graph:] so that it matches everything that [:print:] does,
18924         except for space.
18925         * doc/lispref/searching.texi (Char Classes):
18926         * etc/NEWS:
18927         * lisp/emacs-lisp/rx.el (rx):
18928         Document [:graph:] to be [:print:] sans ' '.
18929         * src/character.c, src/character.h (graphicp): New function.
18930         * src/regex.c (ISGRAPH) [emacs]: Use it.
18931         (BIT_GRAPH): New macro.
18932         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
18933         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
18934         Return BIT_GRAPH for RECC_GRAPH.
18935         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
18936         and ISPRINT if BIT_PRINT.
18938 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
18940         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
18941         Don't use call-next-method in a cl-defmethod.
18943         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
18944         (eieio--class-p): Remove, provided by cl-defstruct.
18946 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
18948         Add seq-intersection and seq-difference to the seq library
18949         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
18950         New functions.
18951         * test/automated/seq-tests.el: Add tests for seq-intersection and
18952         seq-difference.
18953         * doc/lispref/sequences.texi: Add documentation for seq-intersection
18954         and seq-difference.
18956 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
18958         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
18959         to avoid leaking internals.
18961 2015-04-14  Sam Steingold  <sds@gnu.org>
18963         package--ensure-init-file: widen requires save-restriction
18965 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
18967         Improve the commit-msg Git hook for unibyte environments
18968         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
18969         in unibyte environments.  (Suggested by Paul Eggert
18970         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
18971         [:print:], based on UTF-8 sequences of the unprintable characters.
18973         Describe problems with cursor caused by Windows Magnifier
18974         * etc/PROBLEMS: Describe the problem with cursor shape on
18975         MS-Windows due to Windows Magnifier.
18976         (Bug#20271)
18978         Make [:print:] support non-ASCII characters correctly
18979         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
18980         (BIT_PRINT): New bit mask.
18981         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
18982         * src/character.c (printablep): New function.
18983         * src/character.h (printablep): Add prototype.
18984         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
18985         of 'print', 'alnum', and 'alphabetic'.
18986         * doc/lispref/searching.texi (Char Classes): Document the new
18987         behavior of [:print:].
18988         * etc/NEWS: Mention the new behavior of [:print:].
18990         Assign correct general-category and names to surrogates
18991         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
18992         surrogates.  This avoids assigning them the default
18993         general-category of 'Cn', i.e. unassigned codepoints.
18994         (unidata-get-name): Give surrogates synthetic names.
18996 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
18998         Assume C89 offsetof in xterm.c, xlwmenu.c
18999         * lwlib/xlwmenu.c (offset):
19000         * src/xterm.c (cvt_string_to_pixel_args):
19001         Use offsetof, not XtOffset.
19003 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
19005         Assume C89 offsetof in widget.c
19006         * src/widget.c (XtOffset): Remove; no longer needed.
19007         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
19009         Fix think-o in previous patch
19010         * src/window.c (count_windows, get_leaf_windows):
19011         Don't optimize count_windows incorrectly.
19013 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19015         Avoid some int overflows in window.c
19016         * src/print.c (print_object):
19017         * src/window.c (sequence_number):
19018         * src/window.h (struct window.sequence_number):
19019         Don't assume window sequence number fits in int.
19020         * src/window.c (window_select_count):
19021         * src/window.h (struct window.use_time, window_select_count):
19022         Don't assume window use time fits in int.
19023         * src/window.c (Fsplit_window_internal):
19024         Don't assume user-supplied integer, or sum, fits in int.
19025         (Fset_window_configuration, count_windows, get_leaf_windows)
19026         (save_window_save, Fcurrent_window_configuration):
19027         Use ptrdiff_t for object counts.
19028         (Fset_window_configuration): Omit unused local 'n'.
19029         (count_windows): Simplify by writing in terms of get_leaf_windows.
19030         (get_leaf_windows): Don't store through FLAT if it's null.
19031         (extract_dimension): New static function.
19032         (set_window_margins, set_window_fringes, set_window_scroll_bars):
19033         Use it to avoid undefined behavior when converting user-supplied
19034         integer to 'int'.
19036 2015-04-13  Glenn Morris  <rgm@gnu.org>
19038         Minor doc copyedits
19039         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
19040         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
19042 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
19044         [Gnus] Catch the invalid-operation that idna.el will issue
19045         * lisp/gnus/gnus-art.el (gnus-use-idna):
19046         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
19047         * lisp/gnus/message.el (message-use-idna):
19048         Catch the invalid-operation that idna.el will issue.
19050 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19052         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
19054 2015-04-13  Sam Steingold  <sds@gnu.org>
19056         package--ensure-init-file: widen before looking for
19057         "(package-initialize)"
19059 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
19061         Change diff-switches default to `-u' (Bug#20290)
19062         * doc/emacs/files.texi (Comparing Files): Document the new default
19063         value of `diff-switches'.
19064         * doc/emacs/trouble.texi (Sending Patches): Document the preference
19065         for unified diff format.  Escape the plus in the suggested `-F' regexp
19066         value.
19067         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
19069 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19071         (gnus-group--setup-tool-bar-update): Fix last change
19072         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
19073         cursor-sensor-functions should be a list of functions.
19075 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
19077         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
19078         Use gmm-called-interactively-p.
19080 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19082         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
19083         (Bug#20321)
19084         * lisp/cus-start.el (read-buffer-function): Don't advertise
19085         iswitchb-read-buffer any more.
19086         (iswitchb): Don't tweak this obsolete group any more.
19088 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
19090         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
19092         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
19093         Adding a string after a constructor's argument list will use
19094         that string as the constructor function docstring.  If this string
19095         is absent but the struct itself was given a docstring, use that as
19096         the constructor's docstring.
19097         Fixes bug#17284.
19099 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19101         Deprecate `intangible' and `point-entered' properties
19102         * lisp/emacs-lisp/cursor-sensor.el: New file.
19103         * lisp/simple.el (pre-redisplay-functions): New hook.
19104         (redisplay--pre-redisplay-functions): New function.
19105         (pre-redisplay-function): Use it.
19106         (minibuffer-avoid-prompt): Mark obsolete.
19107         (redisplay--update-region-highlight): Adapt it to work as a function on
19108         pre-redisplay-functions.
19109         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
19110         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
19111         than point-entered to make the prompt intangible.
19112         * lisp/forms.el: Move `provide' calls to the end.
19113         (forms-mode): Don't use `run-hooks' on a local var.
19114         (forms--make-format, forms--make-format-elt-using-text-properties):
19115         Use cursor-intangible rather than `intangible'.
19116         (forms-mode): Enable cursor-intangible-mode.
19117         * lisp/isearch.el (isearch-mode): Use defvar-local.
19118         (cursor-sensor-inhibit): Declare.
19119         (isearch-mode): Set cursor-sensor-inhibit.
19120         (isearch-done): Set it back.
19121         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
19122         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
19123         any more.
19124         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
19125         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
19126         Add Edebug spec.
19127         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
19128         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
19129         inhibit-point-motion-hooks any more.
19130         (ses--cell-at-pos, ses--curcell): New functions, extracted from
19131         ses-set-curcell.
19132         (ses-set-curcell): Use them.
19133         (ses-print-cell, ses-setup): Use cursor-intangible instead of
19134         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
19135         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
19136         Use ses--cell-at-pos.
19137         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
19138         extracted from ses-command-hook.  Make them work with multiple windows
19139         displaying the same buffer.
19140         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
19141         Enable cursor-intangible-mode.
19142         (ses-command-hook): Remove cell highlight and mode-line update code.
19143         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
19144         Update for new name of text-property holding the cell name.
19145         (ses-rename-cell): Don't mess with mode-line-process.
19146         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
19147         cursor-sensor-functions property instead of point-entered.
19148         (erc-insert-timestamp-right, erc-format-timestamp):
19149         Use cursor-intangible rather than `intangible'.
19150         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
19151         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
19152         cursor-sensor-mode if needed.
19153         (erc-echo-timestamp): Adapt to calling convention of
19154         cursor-sensor-functions.
19155         (erc-insert-timestamp-right): Remove unused vars `current-window' and
19156         `indent'.
19157         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
19158         (gnus-update-group-mark-positions): Remove unused `topic' var.
19159         (gnus-group-insert-group-line): Remove unused var `header'.
19160         (gnus-group--setup-tool-bar-update): New function.
19161         (gnus-group-insert-group-line): Use it.
19162         (gnus-group-update-eval-form): Declare local
19163         dynamically-bound variables.
19164         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
19165         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
19166         (gnus-group-prepare-topics, gnus-topic-update-topic)
19167         (gnus-topic-change-level, gnus-topic-catchup-articles)
19168         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
19169         Use inhibit-read-only.
19170         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
19171         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
19172         * lisp/textmodes/reftex-index.el (reftex-display-index):
19173         Use cursor-intangible-mode if available.
19174         (reftex-index-post-command-hook): Check cursor-intangible.
19175         * lisp/textmodes/reftex-toc.el (reftex-toc):
19176         Use cursor-intangible-mode if available.
19177         (reftex-toc-recenter, reftex-toc-post-command-hook):
19178         Check cursor-intangible.
19179         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
19180         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
19181         (sgml-tags-invisible): Use with-silent-modifications and
19182         inhibit-read-only.  Enable cursor-sensor-mode.
19183         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
19184         calling convention of cursor-sensor-functions.
19185         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
19186         (table-point-entered-cell-hook, table-point-left-cell-hook):
19187         Don't autoload.
19188         (table-cell-entered-state): Remove var.
19189         (table--put-cell-point-entered/left-property)
19190         (table--remove-cell-properties):
19191         Use cursor-sensor-functions rather than point-entered/left.
19192         (table--point-entered/left-cell-function): Merge
19193         table--point-entered-cell-function and table--point-left-cell-function
19194         and adjust to calling convention of cursor-sensor-functions.
19196         Update ldef-boots.el
19198         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
19200         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
19202         Collapse successive char deletions in the undo log
19203         * src/cmds.c (remove_excessive_undo_boundaries): New function,
19204         extracted from Fself_insert_command.
19205         (Fdelete_char, Fself_insert_command): Use it.
19206         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
19207         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
19209         xterm and OSC 52: Add NEWS entry, and tweak the code
19210         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
19211         to top-level.
19212         (terminal-init-xterm-activate-set-selection): Set a terminal property.
19213         (xterm--set-selection): Use it instead of checking the value of
19214         `terminal-initted'.  Don't use string-bytes.
19216 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
19218         xterm.el: Implement OSC-52 functionality for setting the X selection
19219         * lisp/term/xterm.el (xterm-max-cut-length): New var.
19220         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
19221         New funs.
19222         (terminal-init-xterm, xterm--version-handler): Use them.
19224 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19226         Remove left over code from when we used an obsolete/loaddefs.el file
19227         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
19228         when we used an obsolete/loaddefs.el file.
19230         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
19231         (semanticdb-without-unloaded-file-searches): Use declare.
19232         (semantic-fw-add-edebug-spec): Remove.
19234         * lisp/completion.el (completion-lisp-mode-hook):
19235         Use completion-separator-chars rather than local key binding.
19237         * src/*.c: Set deactivate_mark buffer-locally
19238         (Bug#20260)
19239         * src/insdel.c (prepare_to_modify_buffer_1):
19240         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
19241         buffer-locally.
19243 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19245         python.el: Keep symmetry on sexp navigation with parens
19246         (Bug#19954)
19247         * lisp/progmodes/python.el
19248         (python-nav--forward-sexp): Add argument skip-parens-p.
19249         (python-nav-forward-sexp, python-nav-backward-sexp)
19250         (python-nav-forward-sexp-safe)
19251         (python-nav-backward-sexp-safe): Use it.
19252         * test/automated/python-tests.el
19253         (python-nav-forward-sexp-1): Fix test.
19255 2015-04-12  João Távora  <joaotavora@gmail.com>
19257         Don't use `setq-local' in Gnus code
19258         This might break upstream builds with older Emacsen
19259         * lisp/gnus/message.el (message-mode): Use `set' and
19260         `make-local-variable' instead of `setq-local'.
19262 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
19264         Update Makefile.in's .PHONY dependencies
19265         * Makefile.in (change-history-commit, master-branch-is-current)
19266         (no-ChangeLog): Now phony.
19268         Remove configure's --with-mmdf option
19269         * configure.ac (MAIL_USE_MMDF): Remove.
19270         * etc/NEWS: Document this.
19271         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
19272         (Bug#20308)
19274         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
19275         That way, 'make install' won't think it's a man page.
19276         Reported by Ashish SHUKLA in:
19277         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
19279         Improve 'make change-history' prereq tests
19280         * Makefile.in (gen_origin): Fix to match what's in the master branch.
19281         (no-ChangeLog, master-branch-is-current): New rules.
19282         (change-history): Depend on them, to avoid similar future problems.
19283         Escape the local-variables string to pacify Emacs when editing
19284         Makefile.in.
19286 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
19288         * test/automated/package-test.el (with-package-test):
19289         Kill Packages buffer.
19291         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
19292         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
19293         "Upgrade" last, and use capitalized instead of all-caps.
19295         * lisp/emacs-lisp/package.el: Completely silence async operations.
19296         (package--make-autoloads-and-stuff): Silence autoloads.
19297         (package--save-selected-packages): New function, silences
19298         `customize-save-variable'.
19299         (package--user-selected-p, package-install-from-buffer)
19300         (package-delete, package-install): Use it.
19301         (package-install-from-archive)
19302         (package-menu--perform-transaction): Silence.
19303         (package-menu-execute): Feedback when operation starts.
19305         Use delay-mode-hooks when visiting the init-file
19306         * lisp/emacs-lisp/package.el (package--ensure-init-file):
19307         delay-mode-hooks.
19308         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
19310         * lisp/files.el: Only message when saving if save-silently is nil.
19311         (save-silently): New variable.
19312         (files--message): New function.
19313         (find-file-noselect, save-buffer, basic-save-buffer)
19314         (basic-save-buffer-2, save-some-buffers, not-modified)
19315         (append-to-file): Use them.
19317 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
19319         Support debug declarations in pcase macros
19320         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
19321         (pcase-UPAT): Use it.  Remove "`".
19322         (pcase--edebug-match-macro): New function.
19323         (pcase-defmacro): Support debug declarations.
19324         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
19325         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
19326         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
19327         Add debug declaration.
19329         pcase.el: Edebug support for `app' and vector patterns
19330         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
19331         (pcase-UPAT): Use it.  Support `app' patterns.
19332         (pcase-QPAT): Support vector patterns.
19334         edebug.el: Disambiguate vector specifications
19335         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
19336         `(vector ...)' as a vector specification, not as a sublist.
19338         (gnus-summary-refer-thread): Don't clobber unread articles
19339         This fixes a bug where `A T' causes "random" articles to become marked
19340         as read.
19341         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
19342         gnus-newsgroup-unreads remains sorted.
19344         mouse-sel.el: Fix mouse-sel-get-selection-function
19345         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
19346         Use gui--last-selected-text-primary instead of no longer existing
19347         gui-last-selected-text.
19349         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
19351         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
19353 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
19355         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
19357         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
19358         right buffer.
19360         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
19361         (byte-compile--interactive): New var.
19362         (byte-compile--message): New function.
19363         (byte-compile-log-1, byte-force-recompile)
19364         (byte-recompile-directory, byte-recompile-file)
19365         (byte-compile-file, compile-defun)
19366         (byte-compile-file-form-defmumble, byte-compile)
19367         (byte-compile-file-form-defalias, display-call-tree): Use it.
19369         * lisp/files.el: Don't message when nothing happened.
19370         (save-some-buffers, basic-save-buffer): Before messaging to say
19371         "nothing was saved" check if (called-interactively-p 'any).
19373 2015-04-12  João Távora  <joaotavora@gmail.com>
19375         Summary: Improve sexp-based movement in message-mode
19376         Works by giving citations and smileys a different syntax.  This helps
19377         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
19378         sexp-based movement.
19379         * lisp/gnus/message.el (message--syntax-propertize): New function.
19380         (message-mode): Set syntax-related vars.
19381         (message-smileys): New variable.
19382         * test/automated/message-mode-tests.el: New file
19384 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19386         Use bool for boolean in window.c
19387         * src/window.c: Omit unnecessary static function decls.
19388         (adjust_window_count, select_window, Fselect_window)
19389         (window_body_width, Fwindow_body_height, Fwindow_body_width)
19390         (set_window_hscroll, check_window_containing, Fwindow_at)
19391         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
19392         (unshow_buffer, replace_window, recombine_windows)
19393         (add_window_to_list, candidate_window_p, next_window)
19394         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
19395         (Fget_buffer_window, Fdelete_other_windows_internal)
19396         (replace_buffer_in_windows_safely, set_window_buffer)
19397         (Fset_window_buffer, Fforce_window_update)
19398         (temp_output_buffer_show, make_parent_window)
19399         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
19400         (resize_frame_windows, Fsplit_window_internal)
19401         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
19402         (Fresize_mini_window_internal, mark_window_cursors_off)
19403         (window_scroll, window_scroll_pixel_based)
19404         (window_scroll_line_based, scroll_command, Fscroll_other_window)
19405         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
19406         (Fmove_to_window_line, Fset_window_configuration)
19407         (delete_all_child_windows, apply_window_adjustment)
19408         (set_window_fringes, set_window_scroll_bars)
19409         (Fset_window_vscroll, foreach_window, foreach_window_1)
19410         (compare_window_configurations, Fcompare_window_configurations):
19411         Prefer 'bool', 'true', and 'false' for booleans.
19412         * src/window.h (WINDOW_MODE_LINE_LINES)
19413         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
19415 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
19417         Speed up byte-compilation and autoload generation by avoiding mode-hooks
19418         This prevents emacs-lisp-mode-hook from being run everytime an
19419         autoload file is generated, which can account for a fraction of
19420         package installation time depending on the hooks the user has
19421         configured.
19422         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
19423         * lisp/emacs-lisp/autoload.el (autoload-find-file)
19424         (autoload-find-generated-file): Use delay-mode-hooks.
19426         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
19427         (package-menu-refresh): Respect async and do new package checking.
19428         (list-packages): Use `package-menu-refresh' instead of repeating code.
19430         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
19431         (package--quick-help-keys): New variable.
19432         (package--prettify-quick-help-key): New function.
19433         (package-menu-quick-help): Use it.
19435         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
19436         (package--build-compatibility-table): Require finder.
19438         * test/automated/package-test.el: Fix new test.
19440         * lisp/emacs-lisp/package.el: Silence async operations.
19441         (package--silence): New variable.
19442         (package--message): New function.
19443         (package-import-keyring, package-refresh-contents)
19444         (package-compute-transaction, package-install, package-delete)
19445         (package-menu--perform-transaction, package-menu-execute): Use it.
19447         * test/automated/package-test.el: Test async functionality.
19448         (package-test-update-archives-async): New test.
19450 2015-04-11  Daiki Ueno  <ueno@gnu.org>
19452         Utilize `make-process' in epg.el
19453         * lisp/epg.el (epg-error-output): Abolish.
19454         (epg-context): New slot `error-buffer'.
19455         (epg--start): Use `make-process' and `make-pipe-process'.
19456         (epg--process-filter): Remove code separating stderr from stdout.
19457         (epg-wait-for-completion): Simplify `error-output' handling.
19458         (epg-reset): Dispose error buffer.
19460 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19462         * .gitignore: Ignore doc temps and outputs.
19464         Port commit-msg to MSYS Bash+Gawk
19465         See Eli Zaretskii in:
19466         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
19467         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
19468         (cent_sign, print_at_sign, at_sign): Revert previous change.
19469         (print_at_sign): Prepend "BEGIN".
19470         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
19472         Port commit-msg to broken MS-Windows shell
19473         * build-aux/git-hooks/commit-msg (cent_sign):
19474         Just use UTF-8 here rather than ASCII + printf, as the latter fails
19475         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
19476         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
19478 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
19480         Support GnuTLS v3.4 and later on MS-Windows
19481         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
19482         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
19483         GnuTLS DLL to load according to value of libgnutls-version.
19484         (Bug#20294)
19486 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19488         Minor quoting etc. fixes to misc manuals
19489         Fix some minor quoting and spacing issues.  Distinguish more
19490         clearly among grave accent and apostrophe (which are ASCII) and
19491         single quote (which is not).  Prefer the standard terms
19492         "apostrophe" and "grave accent" to alternative names that can be
19493         confusing.  Use apostrophes to single-quote ASCII text.
19494         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
19495         rather than approximating it in ASCII with grave accent.
19497 2015-04-11  Daiki Ueno  <ueno@gnu.org>
19499         Respect more keyword args in `make-process'
19500         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
19501         keywords as documented.
19503 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
19505         Extract ChangeLog entries when committing a directory
19506         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
19507         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
19508         Add a FIXME comment.
19509         (log-edit-changelog-entries): Extract from
19510         `log-edit-changelog-entries', handle FILE being a directory
19511         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
19513 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
19515         Fix problems found by --enable-gcc-warnings
19516         * src/process.c (create_process, Fmake_pipe_process)
19517         (Fmake_network_process): Omit unused locals.
19519         Fix commit-msg to handle scissors lines
19520         * build-aux/git-hooks/commit-msg:
19521         Ignore every line after a scissors line, such as a line generated
19522         by 'git commit -v'.  Problem reported by Johan Bockgård in:
19523         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
19525         port commit-msg to Gawk 3.0.4 (1999)
19526         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
19527         (print_at_sign, at_sign): New vars.  Use them to avoid problems
19528         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
19529         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
19531         Have commit-msg report commit failure
19532         * build-aux/git-hooks/commit-msg: If the commit is aborted,
19533         say so.  Simplify by doing this at the end.  Problem reported
19534         by Eli Zaretskii in:
19535         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
19537 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19539         Clean up LDAP Configuration section of EUDC manual
19540         * doc/misc/eudc.texi: Combine indices.
19541         (LDAP Configuration): Use command markup.  Add index entries.
19542         Change formatting.  Wrap long lines.  Add noindent markup.
19544 2015-04-10  Daiki Ueno  <ueno@gnu.org>
19546         Add facility to collect stderr of async subprocess
19547         * src/w32.h (register_aux_fd): New function declaration.
19548         * src/w32.c (register_aux_fd): New function.
19549         * src/process.h (struct Lisp_Process): New member stderrproc.
19550         * src/process.c (PIPECONN_P): New macro.
19551         (PIPECONN1_P): New macro.
19552         (Fdelete_process, Fprocess_status, Fset_process_buffer)
19553         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
19554         (Fcontinue_process): Handle pipe process specially.
19555         (create_process): Respect p->stderrproc.
19556         (Fmake_pipe_process): New function.
19557         (Fmake_process): Add new keyword argument :stderr.
19558         (wait_reading_process_output): Specially handle a pipe process when
19559         it gets an EOF.
19560         (syms_of_process): Register Qpipe and Smake_pipe_process.
19561         * doc/lispref/processes.texi (Asynchronous Processes): Document
19562         `make-pipe-process' and `:stderr' keyword of `make-process'.
19563         * lisp/subr.el (start-process): Suggest to use `make-process' handle
19564         standard error separately.
19565         * test/automated/process-tests.el (process-test-stderr-buffer)
19566         (process-test-stderr-filter): New tests.
19567         * etc/NEWS: Mention new process type `pipe' and its usage with the
19568         `:stderr' keyword of `make-process'.
19570 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
19572         Minor quoting etc. fixes to lispref manual
19573         * doc/lispref/tips.texi (Documentation Tips):
19574         Distinguish more clearly among grave accent, apostrophe,
19575         and single quote.
19576         * doc/lispref/README, doc/lispref/buffers.texi:
19577         * doc/lispref/commands.texi, doc/lispref/control.texi:
19578         * doc/lispref/customize.texi, doc/lispref/display.texi:
19579         * doc/lispref/elisp.texi, doc/lispref/files.texi:
19580         * doc/lispref/frames.texi, doc/lispref/hash.texi:
19581         * doc/lispref/help.texi, doc/lispref/internals.texi:
19582         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
19583         * doc/lispref/markers.texi, doc/lispref/modes.texi:
19584         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
19585         * doc/lispref/os.texi, doc/lispref/positions.texi:
19586         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
19587         * doc/lispref/text.texi, doc/lispref/tips.texi:
19588         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
19589         Use American-style double quoting in ordinary text,
19590         and quote 'like this' when single-quoting in ASCII text.
19591         Also, fix some minor spacing issues.
19593 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
19595         Handle symlinked test directory in tramp-tests.el
19596         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
19597         (tramp--test-check-files): Use `file-truename' for directories.
19599 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
19601         Fix 'recenter' when visual-line-mode is turned on
19602         * src/window.c (Frecenter): Use the same code for GUI and TTY
19603         frames alike; use vmotion only for "initial" frames.  This is
19604         because vmotion doesn't support visual-line-mode.  Rewrite the
19605         'iarg >= 0' case to use move_it_* functions instead of using
19606         vmotion, for the same reason.  Fix the clipping of the argument
19607         value to support scroll-margin in all cases and avoid unwarranted
19608         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
19609         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
19610         which see.
19612 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19614         * lisp/abbrev.el (define-abbrev-table): Refine last change.
19616         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
19617         use of c[ad]+r", so as to keep the "cl-" prefix on all
19618         cl-lib definitions.
19620         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
19621         Use inhibit-point-motion-hooks.
19623         * lisp/cedet/semantic: Remove some dead code.
19624         * lisp/cedet/semantic/util-modes.el
19625         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
19626         any more.
19627         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
19628         not supported any more.
19629         (semantic-safe): Use `declare'.
19630         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
19631         (semantic-tag-intangible-p): Remove unused functions.
19632         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
19633         Remove unused function.
19635         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
19636         (gnus-article-hide-text, gnus-article-unhide-text)
19637         (gnus-article-unhide-text-type): Remove special handling of
19638         `intangible' since that property is not used any more.
19639         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
19641 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
19643         Use the VC root in `log-edit-listfun'
19644         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
19645         `log-edit-listfun'.
19647 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
19649         Fix description of Unix time, mention new function.
19650         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
19651         Unix time.
19652         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
19653         (Basic Operations on Units): Mention `calc-convert-exact-units'.
19655 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
19657         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
19659 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
19661         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
19662         Don't add newline after the last entry.
19664 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
19666         css-mode.el: Add "not" pseudo-class
19667         (Bug#20267)
19668         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
19669         list of CSS pseudo-classes.
19671 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19673         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
19675 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
19677         Stop messing with the EMACS env var
19678         * doc/emacs/misc.texi (Interactive Shell): Remove description of
19679         EMACS env var.
19681 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19683         Adapt 'make change-history' to coding cookie
19684         * Makefile.in (change-history): Adjust to change of format of
19685         ChangeLog file, which now has a coding cookie before an indented
19686         copyright notice.
19688 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19690         Adapt 'make change-history' to coding cookie
19691         * Makefile.in (change-history): Adjust to change of format of
19692         ChangeLog file, which now has a coding cookie before an indented
19693         copyright notice.
19695         gitlog-to-changelog coding cookie and mv -i
19696         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
19697         for copyright notice prototype, so that we get a proper "coding:"
19698         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
19699         existing ChangeLog.  Problems reported by Eli Zaretskii in:
19700         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
19702         Merge from gnulib
19703         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
19704         2015-04-09 gitlog-to-changelog: port to MS-Windows
19706 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
19708         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
19709         (Bug#20212)
19711 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19713         Stop messing with the EMACS env var
19714         (Bug#20202)
19715         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
19716         * lisp/comint.el (comint-exec-1):
19717         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
19718         * lisp/progmodes/compile.el (compilation-start): Same and bring
19719         INSIDE_EMACS's format in line with other users.
19721         css-mode.el (css-smie-rules): Fix indentation after complex selectors
19722         (Bug#20282)
19723         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
19724         inner structure of selectors.
19726 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19728         python.el: Indent docstring lines to base-indent
19729         (Bug#19595)
19730         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
19731         an initial patch.
19732         * lisp/progmodes/python.el
19733         (python-indent-context): Add :inside-docstring context.
19734         (python-indent--calculate-indentation): Handle :inside-docstring.
19735         (python-indent-region): Re-indent docstrings.
19736         * test/automated/python-tests.el (python-indent-region-5)
19737         (python-indent-inside-string-2): Fix tests.
19739         python.el: Increase native completion robustness
19740         (Bug#19755)
19741         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
19742         this and providing useful ideas.
19743         * lisp/progmodes/python.el
19744         (python-shell-completion-native-output-timeout): Increase value.
19745         (python-shell-completion-native-try-output-timeout): New var.
19746         (python-shell-completion-native-try): Use it.
19747         (python-shell-completion-native-setup): New readline setup avoids
19748         polluting current context, ensures output when no-completions are
19749         available and includes output end marker.
19750         (python-shell-completion-native-get-completions): Trigger with one
19751         tab only.  Call accept-process-output until output end is found or
19752         python-shell-completion-native-output-timeout is exceeded.
19754 2015-04-08  Samer Masterson  <samer@samertm.com>
19756         * lisp/eshell: Make backslash a no-op in front of normal chars
19757         (Bug#8531)
19758         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
19759         (eshell-parse-backslash): Return escaped character after backslash
19760         if it is special.  Otherwise, if the backslash is not in a quoted
19761         string, ignore the backslash and return the character after; if
19762         the backslash is in a quoted string, return the backslash and the
19763         character after.
19764         * test/automated/eshell.el (eshell-test/escape-nonspecial)
19765         (eshell-test/escape-nonspecial-unicode)
19766         (eshell-test/escape-nonspecial-quoted)
19767         (eshell-test/escape-special-quoted): Add tests for new
19768         `eshell-parse-backslash' behavior.
19770 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
19772         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
19773         after the file name.
19774         (Bug#20276)
19776 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
19778         Minor quoting etc. fixes to Emacs manual
19779         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
19780         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
19781         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
19782         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
19783         * doc/emacs/indent.texi, doc/emacs/macos.texi:
19784         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
19785         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
19786         * doc/emacs/search.texi, doc/emacs/trouble.texi:
19787         * doc/emacs/vc1-xtra.texi:
19788         Use American-style double quoting in ordinary text,
19789         and quote 'like this' when single-quoting in ASCII text.
19790         Also, fix some minor spacing issues.
19792         Minor quoting etc. fixes to elisp intro
19793         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
19794         American-style double quoting in ordinary text.  In ASCII text,
19795         consistently quote 'like this' instead of `like this', unless
19796         Emacs requires the latter.
19798 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
19800         * CONTRIBUTE: Mention log-edit-insert-changelog.
19802         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
19804 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
19806         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
19808 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
19810         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
19811         Fix inheritance of initargs.  (Bug#20270)
19813 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
19815         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
19816         while dowloading information.
19818         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
19819         (package--ensure-init-file): Check file contents before visiting.
19820         (package-initialize): Call it.
19821         (package-install-from-buffer, package-install): Don't call it.
19823 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
19825         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
19826         (Bug#17517)
19828 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
19830         * lisp/net/tramp-cache.el (tramp-flush-file-property):
19831         Fix nasty scoping bug.
19833 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
19835         Add notice to visual commands section
19836         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
19837         such as git call less with its -F option which omits pagination if
19838         the contents is less than one page long.  This interferes with
19839         eshell's visual (sub-)commands.
19841 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
19843         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
19844         environment variable expansion in file names.  (Bug#19839)
19846 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19848         Prefer double-quote to accent-grave in man pages
19850 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19852         (Bug#20257)
19853         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
19855 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
19857         Update etc/PROBLEMS.
19858         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
19859         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
19860         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
19861         respectively); other minor updates and tweaks.  (Bug#20011)
19863 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19865         Add doc strings for some Isearch state vars
19866         * lisp/misearch.el (multi-isearch-buffer-list)
19867         (multi-isearch-file-list): Add doc strings.
19868         (Bug#20232)
19870 2015-04-07  Alan Mackenzie  <acm@muc.de>
19872         Always mark "<" and ">" in #include directives with text properties.
19873         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock
19874         "anchored matcher" with an invocation of
19875         c-make-font-lock-search-function to allow fontification when there's
19876         no trailing space on an "#include <..>" line.
19878 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19880         Generate a ChangeLog file from commit logs
19881         * .gitignore: Add 'ChangeLog'.
19882         * build-aux/gitlog-to-changelog: New file, from Gnulib.
19883         * build-aux/gitlog-to-emacslog: New file.
19884         * CONTRIBUTE: Document the revised workflow.
19885         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
19886         instead of just special cases.
19887         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
19888         (ChangeLog, unchanged-history-files, change-history)
19889         (change-history-commit): New rules.
19890         * admin/admin.el (make-manuals-dist--1):
19891         Don't worry about doc/ChangeLog.
19892         * admin/authors.el: Add a FIXME.
19893         * admin/make-tarball.txt:
19894         * lisp/calendar/icalendar.el:
19895         * lisp/gnus/deuglify.el:
19896         * lisp/obsolete/gulp.el:
19897         * lwlib/README:
19898         Adjust to renamed ChangeLog history files.
19899         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
19900         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
19901         Remove obsolete discussion of merging ChangeLog files.
19902         New section "Maintaining ChangeLog history".
19903         * build-aux/git-hooks/pre-commit:
19904         Reject attempts to commit files named 'ChangeLog'.
19905         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
19906         * make-dist: Make and distribute top-level ChangeLog if there's a
19907         .git directory.  Distribute the new ChangeLog history files
19908         instead of scattered ChangeLog files.  Distribute the new files
19909         gitlog-to-changelog and gitlog-to-emacslog.
19910         (Bug#19113)
19912         Rename ChangeLogs for gitlog-to-changelog
19913         This patch was implemented via the following shell commands:
19914         find * -name ChangeLog |
19915         sed 's,.*,git mv & &.1,
19916         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
19917         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
19918         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
19919         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
19920         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
19921         sh
19922         git commit -am"[this commit message]"
19924 This file records repository revisions from
19925 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
19926 commit 9a2363ec04c24a6959902da9b8eff2f1559ab3e0 (inclusive).
19927 See ChangeLog.1 for earlier changes.
19929 ;; Local Variables:
19930 ;; coding: utf-8
19931 ;; End:
19933   Copyright (C) 2015 Free Software Foundation, Inc.
19935   This file is part of GNU Emacs.
19937   GNU Emacs is free software: you can redistribute it and/or modify
19938   it under the terms of the GNU General Public License as published by
19939   the Free Software Foundation, either version 3 of the License, or
19940   (at your option) any later version.
19942   GNU Emacs is distributed in the hope that it will be useful,
19943   but WITHOUT ANY WARRANTY; without even the implied warranty of
19944   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
19945   GNU General Public License for more details.
19947   You should have received a copy of the GNU General Public License
19948   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.