ps-print generate autoloads to non versioned file.
[emacs.git] / ChangeLog.2
blobc4d954f4c8c76fa9de9b080b984b196f94eadc56
1 2015-12-07  Stefan Monnier  <monnier@iro.umontreal.ca>
3         * lisp/calculator.el (calculator-define-key): Undo last change
5         Make map argument mandatory instead (bug#22106).
6         (calculator-add-operators): Pass the argument that's not optional any more.
8 2015-12-03  Glenn Morris  <rgm@gnu.org>
10         * Makefile.in: Avoid duplication.
12         (have-tests): New rule.
13         (check, check-maybe): Use it.
15 2015-12-02  Phillip Lord  <phillip.lord@russet.org.uk>
17         make check unconditional, check-maybe top-level.
19          * Makefile.in: Add check-maybe target.
20          * test/Makefile.in: Restore unconditional behaviour to make check.
22 2015-12-01  Phillip Lord  <phillip.lord@russet.org.uk>
24         Tests now support out-of-source-build.
26          * tests/Makefile.in,test/make-test-deps.emacs-lisp: Remove assumptions
27            about current working directory.
29 2015-12-01  Artur Malabarba  <bruce.connor.am@gmail.com>
31         * lisp/emacs-lisp/let-alist.el: Now an Elpa :core package
33 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
35         Improve documentation and clean up.
37          * test/Makefile.in: Improve documentation, use EMACS variable
38            correctly, and clean up makefile rules.
40 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
42         Update file headers for name change.
44          * (test/src/decompress-tests.el, test/src/alloc-tests.el): Update headers.
46 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
48         Test files renamed to new scheme.
50          * (finalizer-tests.el): Now renamed alloc-tests.el
51          * (zlib-tests.el): Now renamed decompress-tests.el.
53 2015-11-30  Phillip Lord  <phillip.lord@russet.org.uk>
55         Tests now depend on source files
57          * test/Makefile.in: Include dependences from tests to source files.
58          * test/make-test-deps.emacs-lisp: New file
59          * .gitignore: Ignore generated make include file
61 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
63         * lisp/progmodes/which-func.el: Improve disabling the mode
65         Use lexical-binding.
66         (which-func-modes, which-func-non-auto-modes, which-func-maxout)
67         (which-func, which-func-format): Remove redundant :group arg.
68         (which-func-try-to-enable): New function.
69         (which-func-ff-hook, which-function-mode): Use it.
70         (mode-line-misc-info): Add ourselves here instead of in bindings.el.
71         * lisp/bindings.el (mode-line-misc-info): Remove which-func-mode entry.
73 2015-11-30  Stefan Monnier  <monnier@iro.umontreal.ca>
75         * lisp/calculator.el (calculator-define-key): Silence warning
77         ...about unknown calculator-mode-map.
79 2015-11-29  Eli Barzilay  <eli@barzilay.org>
81         * lisp/calculator.el: more improvements and bugfixes.
83         - Mark `calculator-paste-decimals' as obsolete.  (It wasn't having an
84           effect anyway.)
86         - Simplify `calculator-number-to-string' by throwing most of the work
87           onto `number-to-string', leaving just some tweaks for decimal inputs.
88           This leads to some minor changes, for example, pasting "1x1" in hex
89           mode would warn that "x" is ignored and result in "11" (and it wasn't
90           done in decimal mode), whereas now it just ignores everything from the
91           "x" and on and result in a "1" just like in decimal input mode.  Also,
92           overflows are left for `number-to-string' to deal with.
94         - `calculator-paste' is very simple as a result.
96         - Extend the simplified `calculator-paste': with a prefix argument it
97           pastes a string as if the characters were entered.  This can be used
98           to reduce expressions, but note that it's a simple literal operation,
99           so precedence can be messed, a number can be paster while entering a
100           number, spaces and newlines matter, etc.
102         - Fix a minor bug where "e+" in hex mode wouldn't use "+" as an
103           operator.
105         - Fix a bug in `calculator-put-value': avoid grouping in the display
106           that is used to construct `calculator-curnum'.  This would trigger
107           when pasting or getting a value from a register in some radix mode
108           with a large enough value.  Another fix: make the output radix equal
109           the input one, otherwise numbers could be converted twice.
111 2015-11-29  Eli Barzilay  <eli@barzilay.org>
113         * lisp/calculator.el: Re-do key bindings.
115         Use a helper function that arranges a parent keymap that binds alternate
116         case keys so if some letter key is unbound and it's un/shifted version
117         is, it will get used.  This makes the global-map trickery unnecessary.
119         Also switch to passing strings that name keys through `kbd'.
121 2015-11-29  Eli Barzilay  <eli@barzilay.org>
123         * lisp/calculator.el: improve radix modes
125         Fix prompt for some input radix with decimal output (eg, "BD" instead of
126         the incorrect "B="); also, some minor docstring tweaks for these.
128 2015-11-29  Eli Barzilay  <eli@barzilay.org>
130         * lisp/calculator.el: better reading of register names
132         Use `register-read-with-preview' with a dynamically bound
133         `register-alist' and a proper preview function to read register names.
135 2015-11-29  Eli Barzilay  <eli@barzilay.org>
137         * lisp/calculator.el: General improvements
139         Use things like `when', `unless', and `push'.
141         Improve `calculator-last-input' so it doesn't barf when hitting `F1' in
142         non-electric mode.
144 2015-11-28  Michael Albinus  <michael.albinus@gmx.de>
146         Fix a problem with gfilenotify in filenotify-tests.el
148         * test/lisp/filenotify-tests.el
149         (file-notify--test-expected-events): Remove.
150         (file-notify--test-cleanup): Do not set that variable.
151         (file-notify--test-with-events): EVENTS can also be a list of lists.
152         (file-notify-test02-events, file-notify-test04-file-validity):
153         Adapt expected result.
155 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
157         * .gitignore: Adjust to changes in 'test' directory structure.
159 2015-11-28  Eli Zaretskii  <eliz@gnu.org>
161         Fix test/manual/etags/Makefile
163         * test/manual/etags/Makefile (ETAGS_PROG, CTAGS_PROG): Adjust to
164         changes in 'test' directory structure.
166 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
168         Exclude resource dirs from search for tests.
170         * test/Makefile.in: Test file locations are now found with find
171           rather than using finds native functions.
173 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
175         Add test targets without directory names.
177          * (test/Makefile.in): Extend test_template to add two targets for each
178            file.
180 2015-11-27  Artur Malabarba  <bruce.connor.am@gmail.com>
182         * lisp/emacs-lisp/package.el: Require url-handlers
184 2015-11-27  Phillip Lord  <phillip.lord@russet.org.uk>
186         Move elisp-mode-tests to new function names.
188          * test/lisp/progmodes/elisp-mode-tests.el (find-defsdefun-c-defvar-c,
189          find-defs-defun-el-defvar-c): Call `elisp--xref-find-definitions'.
191 2015-11-27  Juanma Barranquero  <lekktu@gmail.com>
193         * lisp/emacs-lisp/package.el: Declare `url-insert-buffer-contents'
195 2015-11-26  Phillip Lord  <phillip.lord@russet.org.uk>
197         Merge branch 'feature/standard-test-location'
199 2015-11-25  Stefan Monnier  <monnier@iro.umontreal.ca>
201         * lisp/emacs-lisp/eieio.el: Add some default implementations
203         (standard-class): Mark it obsolete.
204         (slot-missing): Give it a default implementation.
205         (destructor): Simplify and mark it obsolete.
206         (object-print): Give it a default implementation.
207         (eieio-change-class): Rename from change-class.
208         (change-class): Redefine as obsolete alias.
210 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
212         Some final fixes in file notification before merging with master
214         * lisp/filenotify.el (file-notify--rm-descriptor): Remove WHAT arg.
215         (file-notify-callback): Improve check for `stopped' event.  Call
216         `file-notify-rm-watch' rather than `file-notify--rm-descriptor'.
217         (file-notify-add-watch): In case FILE is not a directory, call the
218         file monitor for the kqueue backend.  Otherwise, call the
219         directory monitor for the upper directory.
221         * src/inotify.c (inotifyevent_to_event): Extract file name from
222         watch_object if the event doesn't provide it.
223         (Finotify_add_watch): Add file name to watch_object.
225         * test/automated/file-notify-tests.el (file-notify--test-timeout):
226         Use different timeouts for different libraries.
227         (file-notify--test-with-events): Suppress lock files.  Flush
228         outstanding events before running the body.
229         (file-notify-test02-events, file-notify-test04-file-validity): Do
230         not skip cygwin tests.  Add additional test for file creation.
231         Adapt expected result for different backends.
232         (file-notify-test03-autorevert): Some of the tests don't work for
233         w32notify.
234         (file-notify-test06-many-events): Rename into both directions.
236 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
238         Rework file notifications, kqueue has problems with directory monitors
240         * lisp/filenotify.el (file-notify-add-watch): Call the native
241         add-watch function on the file, not on the dir.
243         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
244         about already deleted entries.
246         * test/automated/auto-revert-tests.el
247         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
248         since this deletes the target file first.
250         * test/automated/file-notify-tests.el (file-notify--test-event-test):
251         Make stronger checks.
252         (file-notify-test01-add-watch, file-notify-test02-events)
253         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
254         Rewrite in order to call file monitors but directory monitors.
255         (file-notify-test06-many-events): Ler rename work in both directions.
257 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
259         Continue with pending events
261         * src/kqueue.c (pending_events): Remove global variable.
262         (kqueue_compare_dir_list): Create `write' event for not used
263         pending events.
264         (globals_of_kqueue): Remove initialization of pending_events.
266 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
268         Improve loops in file-notify-test06-many-events
270         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
271         Use `read-event' pauses for the `write-file' loops; otherwise
272         events are lost in inotify and gfilenotify cases.
274 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
276         Handle more complex rename operation in kqueue
278         * src/kqueue.c (pending_events): New variable.
279         (kqueue_compare_dir_list): Handle more complex rename operation.
280         (globals_of_kqueue): Initialize pending_events.
282         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
283         Adapt expected events in the `rename-file' case.
284         (file-notify-test06-many-events-remote): Declare.
286 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
288         New test with a larger number of events
290         * test/automated/file-notify-tests.el (file-notify--test-with-events):
291         Make timeout heuristically depend on the number of events.
293         (file-notify-test06-many-events): Use it for new test.
295 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
297         Further fixes for kqueue
299         * lisp/filenotify.el (file-notify-callback): Raise also event if
300         directory name matches.
301         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
303         * src/kqueue.c (kqueue_generate_event): Use watch_object as
304         argument instead of ident.  Remove callback argument.  Adapt
305         callees.  Check actions whether they are monitored flags.
307         * test/automated/file-notify-tests.el (file-notify--test-library):
308         New defun.
309         (file-notify-test00-availability, file-notify-test02-events)
310         (file-notify-test04-file-validity)
311         (file-notify-test05-dir-validity): Use it.
312         (file-notify-test02-events, file-notify-test04-file-validity): Add
313         `read-event' calls between different file actions, in order to
314         give the backends a chance to rais an event.  Needed especially
315         for kqueue.  In case of deleting a directory, there are two
316         `deleted' events.
318 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
320         Code cleanup of kqueue.c
322         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
323         (kqueue_compare_dir_list): Do not loop when calling
324         directory_files_internal.  Remove checks for "." and "..", this is
325         done in kqueue_directory_listing now.
326         (Fkqueue_add_watch): Check for proper emacs_open flags.
328 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
330         Doc changes for kqueue
332         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
333         Fix some glitches in the example.
335 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
337         Finish implementation in kqueue.c
339         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
340         Simplify access to list.
341         (kqueue_compare_dir_list): Simplify access to list.  Raise
342         `delete' event if directory does not exist any longer.  Otherwise,
343         wait until directory contents has changed.  Fix error in check.
345 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
347         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
349 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
351         More work on kqueue
353         * lisp/filenotify.el (file-notify-callback): Handle also the
354         `rename' event from kqueue.
355         (file-notify-add-watch): Do not register an entry twice.
357         * src/kqueue.c (kqueue_directory_listing): New function.
358         (kqueue_generate_event): New argument FILE1.  Adapt callees.
359         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
361 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
363         Implement directory events
365         * lisp/filenotify.el (file-notify-handle-event)
366         (file-notify-callback): Remove traces.
368         * src/kqueue.c: Include <sys/time.h>.
369         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
370         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
371         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
372         Compute initial directory listing.  Close file descriptor in case
373         of errors.
374         (syms_of_kqueue): Declare Qcreate.
376 2015-11-25  Wolfgang Jenkner  <wjenkner@inode.at>
378         Build fixes for kqueue support
380         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
381         flag.
383         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
384         kqueue on *BSD.
386 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
388         Continue kqueue implementation
390         * lisp/filenotify.el (file-notify-handle-event)
391         (file-notify-callback): Enable trace messages.
393         * src/kqueue.c: Include also <sys/types.h>.
394         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
395         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
396         (syms_of_kqueue): Add them.
398 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
400         Work on kqueue
402         * lisp/filenotify.el (file-notify--library)
403         (file-notify-descriptors, file-notify-callback)
404         (file-notify-add-watch, file-notify-rm-watch)
405         (file-notify-valid-p): Add kqueue support.
407         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
409 2015-11-25  Michael Albinus  <michael.albinus@gmx.de>
411         Add kqueue support
413         * configure.ac (--with-file-notification): Add kqueue.
414         (top): Remove special test for "${HAVE_NS}" and
415         ${with_file_notification}, this is handled inside gfilenotify
416         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
417         instead of library specific variables.
419         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
421         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
423         * src/kqueue.c: New file.
425         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
427 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
429         Update elisp-mode-tests for changed file location.
431          * test/lisp/progmodes/elisp-mode-tests.el:
433 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
435         Exclude manual tests from Makefile
437          * test/Makefile.in:
439 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
441         Move package test files to new directory.
443          * test/lisp/emacs-lisp/package-tests.el: Update resoruce file location.
444          * test/data/package: Moved to test/lisp/emacs-lisp/package-resources
446 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
448         Restore delete Makefiles and fix .gitignore.
450          * .gitignore: Update Makefiles to changed locations
451          * test/lisp/progmodes/flymake-resources/Makefile,
452            test/manual/etags/Makefile,
453            test/manual/etags/make-src/Makefile,
454            test/manual/indent/Makefile: Restored and moved to new location.
456 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
458         Test infrastructure: updates after directory move
460          * (test/Makefile.in): Support directories several levels deep.
461          * (test/data/flymake): Rename to test/lisp/progmodes/flymake-resources.
462          * (test/lisp/progmodes/flymake-tests.el): Support renamed resource directory.
464 2015-11-24  Phillip Lord  <phillip.lord@russet.org.uk>
466         Rename all test files to reflect source layout.
468          * CONTRIBUTE,Makefile.in,configure.ac: Update to reflect
469            test directory moves.
470          * test/file-organisation.org: New file.
471          * test/automated/Makefile.in
472            test/automated/data/decompress/foo.gz
473            test/automated/data/epg/pubkey.asc
474            test/automated/data/epg/seckey.asc
475            test/automated/data/files-bug18141.el.gz
476            test/automated/data/flymake/test.c
477            test/automated/data/flymake/test.pl
478            test/automated/data/package/archive-contents
479            test/automated/data/package/key.pub
480            test/automated/data/package/key.sec
481            test/automated/data/package/multi-file-0.2.3.tar
482            test/automated/data/package/multi-file-readme.txt
483            test/automated/data/package/newer-versions/archive-contents
484            test/automated/data/package/newer-versions/new-pkg-1.0.el
485            test/automated/data/package/newer-versions/simple-single-1.4.el
486            test/automated/data/package/package-test-server.py
487            test/automated/data/package/signed/archive-contents
488            test/automated/data/package/signed/archive-contents.sig
489            test/automated/data/package/signed/signed-bad-1.0.el
490            test/automated/data/package/signed/signed-bad-1.0.el.sig
491            test/automated/data/package/signed/signed-good-1.0.el
492            test/automated/data/package/signed/signed-good-1.0.el.sig
493            test/automated/data/package/simple-depend-1.0.el
494            test/automated/data/package/simple-single-1.3.el
495            test/automated/data/package/simple-single-readme.txt
496            test/automated/data/package/simple-two-depend-1.1.el
497            test/automated/abbrev-tests.el
498            test/automated/auto-revert-tests.el
499            test/automated/calc-tests.el
500            test/automated/icalendar-tests.el
501            test/automated/character-fold-tests.el
502            test/automated/comint-testsuite.el
503            test/automated/descr-text-test.el
504            test/automated/electric-tests.el
505            test/automated/cl-generic-tests.el
506            test/automated/cl-lib-tests.el
507            test/automated/eieio-test-methodinvoke.el
508            test/automated/eieio-test-persist.el
509            test/automated/eieio-tests.el
510            test/automated/ert-tests.el
511            test/automated/ert-x-tests.el
512            test/automated/generator-tests.el
513            test/automated/let-alist.el
514            test/automated/map-tests.el
515            test/automated/advice-tests.el
516            test/automated/package-test.el
517            test/automated/pcase-tests.el
518            test/automated/regexp-tests.el
519            test/automated/seq-tests.el
520            test/automated/subr-x-tests.el
521            test/automated/tabulated-list-test.el
522            test/automated/thunk-tests.el
523            test/automated/timer-tests.el
524            test/automated/epg-tests.el
525            test/automated/eshell.el
526            test/automated/faces-tests.el
527            test/automated/file-notify-tests.el
528            test/automated/auth-source-tests.el
529            test/automated/gnus-tests.el
530            test/automated/message-mode-tests.el
531            test/automated/help-fns.el
532            test/automated/imenu-test.el
533            test/automated/info-xref.el
534            test/automated/mule-util.el
535            test/automated/isearch-tests.el
536            test/automated/json-tests.el
537            test/automated/bytecomp-tests.el
538            test/automated/coding-tests.el
539            test/automated/core-elisp-tests.el
540            test/automated/decoder-tests.el
541            test/automated/files.el
542            test/automated/font-parse-tests.el
543            test/automated/lexbind-tests.el
544            test/automated/occur-tests.el
545            test/automated/process-tests.el
546            test/automated/syntax-tests.el
547            test/automated/textprop-tests.el
548            test/automated/undo-tests.el
549            test/automated/man-tests.el
550            test/automated/completion-tests.el
551            test/automated/dbus-tests.el
552            test/automated/newsticker-tests.el
553            test/automated/sasl-scram-rfc-tests.el
554            test/automated/tramp-tests.el
555            test/automated/obarray-tests.el
556            test/automated/compile-tests.el
557            test/automated/elisp-mode-tests.el
558            test/automated/f90.el
559            test/automated/flymake-tests.el
560            test/automated/python-tests.el
561            test/automated/ruby-mode-tests.el
562            test/automated/subword-tests.el
563            test/automated/replace-tests.el
564            test/automated/simple-test.el
565            test/automated/sort-tests.el
566            test/automated/subr-tests.el
567            test/automated/reftex-tests.el
568            test/automated/sgml-mode-tests.el
569            test/automated/tildify-tests.el
570            test/automated/thingatpt.el
571            test/automated/url-future-tests.el
572            test/automated/url-util-tests.el
573            test/automated/add-log-tests.el
574            test/automated/vc-bzr.el
575            test/automated/vc-tests.el
576            test/automated/xml-parse-tests.el
577            test/BidiCharacterTest.txt
578            test/biditest.el
579            test/cedet/cedet-utests.el
580            test/cedet/ede-tests.el
581            test/cedet/semantic-ia-utest.el
582            test/cedet/semantic-tests.el
583            test/cedet/semantic-utest-c.el
584            test/cedet/semantic-utest.el
585            test/cedet/srecode-tests.el
586            test/cedet/tests/test.c
587            test/cedet/tests/test.el
588            test/cedet/tests/test.make
589            test/cedet/tests/testdoublens.cpp
590            test/cedet/tests/testdoublens.hpp
591            test/cedet/tests/testfriends.cpp
592            test/cedet/tests/testjavacomp.java
593            test/cedet/tests/testnsp.cpp
594            test/cedet/tests/testpolymorph.cpp
595            test/cedet/tests/testspp.c
596            test/cedet/tests/testsppcomplete.c
597            test/cedet/tests/testsppreplace.c
598            test/cedet/tests/testsppreplaced.c
599            test/cedet/tests/testsubclass.cpp
600            test/cedet/tests/testsubclass.hh
601            test/cedet/tests/testtypedefs.cpp
602            test/cedet/tests/testvarnames.c
603            test/etags/CTAGS.good
604            test/etags/ETAGS.good_1
605            test/etags/ETAGS.good_2
606            test/etags/ETAGS.good_3
607            test/etags/ETAGS.good_4
608            test/etags/ETAGS.good_5
609            test/etags/ETAGS.good_6
610            test/etags/a-src/empty.zz
611            test/etags/a-src/empty.zz.gz
612            test/etags/ada-src/2ataspri.adb
613            test/etags/ada-src/2ataspri.ads
614            test/etags/ada-src/etags-test-for.ada
615            test/etags/ada-src/waroquiers.ada
616            test/etags/c-src/a/b/b.c
617            test/etags/c-src/abbrev.c
618            test/etags/c-src/c.c
619            test/etags/c-src/dostorture.c
620            test/etags/c-src/emacs/src/gmalloc.c
621            test/etags/c-src/emacs/src/keyboard.c
622            test/etags/c-src/emacs/src/lisp.h
623            test/etags/c-src/emacs/src/regex.h
624            test/etags/c-src/etags.c
625            test/etags/c-src/exit.c
626            test/etags/c-src/exit.strange_suffix
627            test/etags/c-src/fail.c
628            test/etags/c-src/getopt.h
629            test/etags/c-src/h.h
630            test/etags/c-src/machsyscalls.c
631            test/etags/c-src/machsyscalls.h
632            test/etags/c-src/sysdep.h
633            test/etags/c-src/tab.c
634            test/etags/c-src/torture.c
635            test/etags/cp-src/MDiagArray2.h
636            test/etags/cp-src/Range.h
637            test/etags/cp-src/burton.cpp
638            test/etags/cp-src/c.C
639            test/etags/cp-src/clheir.cpp.gz
640            test/etags/cp-src/clheir.hpp
641            test/etags/cp-src/conway.cpp
642            test/etags/cp-src/conway.hpp
643            test/etags/cp-src/fail.C
644            test/etags/cp-src/functions.cpp
645            test/etags/cp-src/screen.cpp
646            test/etags/cp-src/screen.hpp
647            test/etags/cp-src/x.cc
648            test/etags/el-src/TAGTEST.EL
649            test/etags/el-src/emacs/lisp/progmodes/etags.el
650            test/etags/erl-src/gs_dialog.erl
651            test/etags/f-src/entry.for
652            test/etags/f-src/entry.strange.gz
653            test/etags/f-src/entry.strange_suffix
654            test/etags/forth-src/test-forth.fth
655            test/etags/html-src/algrthms.html
656            test/etags/html-src/index.shtml
657            test/etags/html-src/software.html
658            test/etags/html-src/softwarelibero.html
659            test/etags/lua-src/allegro.lua
660            test/etags/objc-src/PackInsp.h
661            test/etags/objc-src/PackInsp.m
662            test/etags/objc-src/Subprocess.h
663            test/etags/objc-src/Subprocess.m
664            test/etags/objcpp-src/SimpleCalc.H
665            test/etags/objcpp-src/SimpleCalc.M
666            test/etags/pas-src/common.pas
667            test/etags/perl-src/htlmify-cystic
668            test/etags/perl-src/kai-test.pl
669            test/etags/perl-src/yagrip.pl
670            test/etags/php-src/lce_functions.php
671            test/etags/php-src/ptest.php
672            test/etags/php-src/sendmail.php
673            test/etags/prol-src/natded.prolog
674            test/etags/prol-src/ordsets.prolog
675            test/etags/ps-src/rfc1245.ps
676            test/etags/pyt-src/server.py
677            test/etags/tex-src/gzip.texi
678            test/etags/tex-src/nonewline.tex
679            test/etags/tex-src/testenv.tex
680            test/etags/tex-src/texinfo.tex
681            test/etags/y-src/atest.y
682            test/etags/y-src/cccp.c
683            test/etags/y-src/cccp.y
684            test/etags/y-src/parse.c
685            test/etags/y-src/parse.y
686            test/indent/css-mode.css
687            test/indent/js-indent-init-dynamic.js
688            test/indent/js-indent-init-t.js
689            test/indent/js-jsx.js
690            test/indent/js.js
691            test/indent/latex-mode.tex
692            test/indent/modula2.mod
693            test/indent/nxml.xml
694            test/indent/octave.m
695            test/indent/pascal.pas
696            test/indent/perl.perl
697            test/indent/prolog.prolog
698            test/indent/ps-mode.ps
699            test/indent/ruby.rb
700            test/indent/scheme.scm
701            test/indent/scss-mode.scss
702            test/indent/sgml-mode-attribute.html
703            test/indent/shell.rc
704            test/indent/shell.sh
705            test/redisplay-testsuite.el
706            test/rmailmm.el
707            test/automated/buffer-tests.el
708            test/automated/cmds-tests.el
709            test/automated/data-tests.el
710            test/automated/finalizer-tests.el
711            test/automated/fns-tests.el
712            test/automated/inotify-test.el
713            test/automated/keymap-tests.el
714            test/automated/print-tests.el
715            test/automated/libxml-tests.el
716            test/automated/zlib-tests.el: Files Moved.
718 2015-11-20  Michael Albinus  <michael.albinus@gmx.de>
720         Rework file notifications, kqueue has problems with directory monitors
722         * lisp/filenotify.el (file-notify-add-watch): Call the native
723         add-watch function on the file, not on the dir.
725         * src/kqueue.c (kqueue_compare_dir_list): Make also bookkeeping
726         about already deleted entries.
728         * test/automated/auto-revert-tests.el
729         (auto-revert-test01-auto-revert-several-files): Do not call "cp -f"
730         since this deletes the target file first.
732         * test/automated/file-notify-tests.el (file-notify--test-event-test):
733         Make stronger checks.
734         (file-notify-test01-add-watch, file-notify-test02-events)
735         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
736         Rewrite in order to call file monitors but directory monitors.
737         (file-notify-test06-many-events): Ler rename work in both directions.
739 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
741         Continie with pending events
743         * src/kqueue.c (pending_events): Remove global variable.
744         (kqueue_compare_dir_list): Create `write' event for not used
745         pending events.
746         (globals_of_kqueue): Remove initialization of pending_events.
748 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
750         Improve loops in file-notify-test06-many-events
752         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
753         Use `read-event' pauses for the `write-file' loops; otherwise
754         events are lost in inotify and gfilenotify cases.
756 2015-11-19  Michael Albinus  <michael.albinus@gmx.de>
758         Handle more complex rename operation in kqueue
760         * src/kqueue.c (pending_events): New variable.
761         (kqueue_compare_dir_list): Handle more complex rename operation.
762         (globals_of_kqueue): Initialize pending_events.
764         * test/automated/file-notify-tests.el (file-notify-test06-many-events):
765         Adapt expected events in the `rename-file' case.
766         (file-notify-test06-many-events-remote): Declare.
768 2015-11-18  Wolfgang Jenkner  <wjenkner@inode.at>
770         New test with a larger number of events.
772         * test/automated/file-notify-tests.el (file-notify--test-with-events):
773         Make timeout heuristically depend on the number of events.
775         (file-notify-test06-many-events): Use it for new test.
777 2015-11-18  Michael Albinus  <michael.albinus@gmx.de>
779         Further fixes for kqueue.
781         * lisp/filenotify.el (file-notify-callback): Raise also event if
782         directory name matches.
783         (file-notify-add-watch): Add `create' to the flags for `kqueue'.
785         * src/kqueue.c (kqueue_generate_event): Use watch_object as
786         argument instead of ident.  Remove callback argument.  Adapt
787         callees.  Check actions whether they are monitored flags.
789         * test/automated/file-notify-tests.el (file-notify--test-library):
790         New defun.
791         (file-notify-test00-availability, file-notify-test02-events)
792         (file-notify-test04-file-validity)
793         (file-notify-test05-dir-validity): Use it.
794         (file-notify-test02-events, file-notify-test04-file-validity): Add
795         `read-event' calls between different file actions, in order to
796         give the backends a chance to rais an event.  Needed especially
797         for kqueue.  In case of deleting a directory, there are two
798         `deleted' events.
800 2015-11-17  Michael Albinus  <michael.albinus@gmx.de>
802         Code cleanup of kqueue.c
804         * src/kqueue.c (kqueue_directory_listing): Skip "." and "..".
805         (kqueue_compare_dir_list): Do not loop when calling
806         directory_files_internal.  Remove checks for "." and "..", this is
807         done in kqueue_directory_listing now.
808         (Fkqueue_add_watch): Check for proper emacs_open flags.
810 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
812         Doc changes for kqueue
814         * doc/lispref/os.texi (File Notifications): Add kqueue as backend.
815         Fix some glitches in the example.
817 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
819         Finish implementation in kqueue.c
821         * src/kqueue.c (kqueue_directory_listing, kqueue_callback):
822         Simplify access to list.
823         (kqueue_compare_dir_list): Simplify access to list.  Raise
824         `delete' event if directory does not exist any longer.  Otherwise,
825         wait until directory contents has changed.  Fix error in check.
827 2015-11-16  Michael Albinus  <michael.albinus@gmx.de>
829         * lisp/filenotify.el (file-notify-add-watch): Fix thinko.
831 2015-11-15  Michael Albinus  <michael.albinus@gmx.de>
833         More work on kqueue
835         * lisp/filenotify.el (file-notify-callback): Handle also the
836         `rename' event from kqueue.
837         (file-notify-add-watch): Do not register an entry twice.
839         * src/kqueue.c (kqueue_directory_listing): New function.
840         (kqueue_generate_event): New argument FILE1.  Adapt callees.
841         (kqueue_compare_dir_list): Rewrite in order to make it more robust.
843 2015-11-14  Michael Albinus  <michael.albinus@gmx.de>
845         Implement directory events
847         * lisp/filenotify.el (file-notify-handle-event)
848         (file-notify-callback): Remove traces.
850         * src/kqueue.c: Include <sys/time.h>.
851         (kqueue_generate_event, kqueue_compare_dir_list): New functions.
852         (kqueue_callback): Use them.  Call kevent() with a zero timeout.
853         (Fkqueue_add_watch): Adapt docstring.  Support directory events.
854         Compute initial directory listing.  Close file descriptor in case
855         of errors.
856         (syms_of_kqueue): Declare Qcreate.
858 2015-11-11  Wolfgang Jenkner  <wjenkner@inode.at>
860         Build fixes for kqueue support.
862         * src/kqueue.c (Fkqueue_add_watch): O_BINARY is not a POSIX open(3)
863         flag.
865         * configure.ac (HAVE_KQUEUE): There is no pkg-config module for native
866         kqueue on *BSD.
868 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
870         Continue kqueue implementation
872         * lisp/filenotify.el (file-notify-handle-event)
873         (file-notify-callback): Enable trace messages.
875         * src/kqueue.c: Include also <sys/types.h>.
876         (kqueue_callback): Remove watch in case of NOTE_DELETE or NOTE_RENAME.
877         (Fkqueue_rm_watch, Fkqueue_valid_p): New functions.
878         (syms_of_kqueue): Add them.
880 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
882         Work on kqueue
884         * lisp/filenotify.el (file-notify--library)
885         (file-notify-descriptors, file-notify-callback)
886         (file-notify-add-watch, file-notify-rm-watch)
887         (file-notify-valid-p): Add kqueue support.
889         * src/keyboard.c (make_lispy_event): Check also for HAVE_KQUEUE.
891 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
893         Add kqueue support
895         * configure.ac (--with-file-notification): Add kqueue.
896         (top): Remove special test for "${HAVE_NS}" and
897         ${with_file_notification}, this is handled inside gfilenotify
898         tests.  Add kqueue tests.  Use NOTIFY_CFLAGS and NOTIFY_LIBS
899         instead of library specific variables.
901         * src/Makefile.in: Use NOTIFY_CFLAGS and NOTIFY_LIBS.
903         * src/emacs.c (main): Call globals_of_kqueue and syms_of_kqueue.
905         * src/kqueue.c: New file.
907         * src/lisp.h: Declare extern globals_of_kqueue and syms_of_kqueue.
909 2015-11-21  Wilson Snyder  <wsnyder@wsnyder.org>
911         verilog-mode.el: Commentary and fix pre-Emacs 21 behavior.
913         * verilog-mode.el (verilog-save-font-no-change-functions):
914         Commentary and fix pre-Emacs 21 behavior.
916 2015-11-19  Przemysław Wojnowski  <esperanto@cumego.com>
918         Use obarray functions from obarray.
920         * lisp/abbrev.el (copy-abbrev-table, abbrev-table-p, make-abbrev-table,
921           abbrev-table-get, abbrev-table-put, abbrev-table-empty-p,
922           clear-abbrev-table, define-abbrev, abbrev--symbol, abbrev-table-menu):
923           delegate to obarray.el functions.
924         * lisp/loadup.el: load obarray before abbrev
925         * test/automated/abbrev-tests.el: new tests
927 2015-11-18  Christian Schwarzgruber  <c.schwarzgruber.cs@gmail.com>  (tiny change)
929         epa.el: Add option to replace original text
931         * lisp/epa.el (epa-replace-original-text): New user option.
932         (Bug#21947)
934 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
936         Add interactive seek command.
938         * lisp/mpc.el (mpc-cmd-seekcur): New function.
939         (mpc-seek-current): New command.
940         (mpc-mode-menu): Add entry for mpc-seek-current
941         (mpc-mode-map): Bind mpc-seek-current to "g"
943 2015-11-18  Mark Oteiza  <mvoteiza@udel.edu>
945         Fix issue where a new tempfile was created every refresh
947         * lisp/mpc.el (mpc-format): Leave dir as relative path
949 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
951         * lisp/progmodes/cc-defs.el: Use with-silent-modifications
953         (c-save-buffer-state): Use with-silent-modifications when available.
954         (c--macroexpand-all): Check macroexpand-all directly rather than
955         c--mapcan-status.
957 2015-11-18  Stefan Monnier  <monnier@iro.umontreal.ca>
959         * lisp/loadup.el: Set max-lisp-eval-depth here
961         * lisp/Makefile.in (BIG_STACK_DEPTH, BIG_STACK_OPTS): Remove.
962         (BYTE_COMPILE_FLAGS): Adjust accordingly.
964 2015-11-17  João Távora  <joaotavora@gmail.com>
966         Minor fix to comment indentation and typo in last commit
968         * linum.el (linum-update-window): Fix comment indentation and a
969         typo.
971 2015-11-17  João Távora  <joaotavora@gmail.com>
973         linum-mode plays more nicely with other margin-setting extensions
975         linum.el will only modify the left margin if it needs to, and will
976         only reset the it back to 0 if it guesses that no-one has touched that
977         margin in the meantime.
979         As such, this is a more of a workaround than an actual fix, but fixes
980         the problems described in bug#20674 regarding the interaction with
981         modes such as darkroom-mode and olivetti-mode.
983         A similar fix was commited to nlinum.el in ELPA.git's
984         e7f5f549fbfb740b911fb7f33b42381ecece56d8
986         * linum.el (linum-delete-overlays): Restore margins more
987         criteriously.
988         (linum-update-window): Set margins more criteriously.
990 2015-11-16  Daiki Ueno  <ueno@gnu.org>
992         * lisp/image-mode.el: Support encrypted file
994         (image-toggle-display-image): Read content from the buffer instead
995         of the file, if the buffer holds a decrypted data.  (Bug#21870)
997 2015-11-15  Juanma Barranquero  <lekktu@gmail.com>
999         * lisp/progmodes/verilog-mode.el (verilog-save-buffer-state): Add backquote
1001 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
1003         * lisp/emacs-lisp/package.el: Fix a decoding issue
1005         (package--with-response-buffer): Use `url-insert-buffer-contents'.
1006         The previous code had some issues with decoding. Refactoring that
1007         function allows us to use the decoding from url-handlers while still
1008         treating both sync and async requests the same.
1010         * lisp/url/url-handlers.el (url-insert-file-contents): Move some code to
1011         `url-insert-buffer-contents'.
1012         (url-insert-buffer-contents): New function
1014 2015-11-15  Artur Malabarba  <bruce.connor.am@gmail.com>
1016         * lisp/emacs-lisp/package.el: Refactor -with-work-buffer-async
1018         (package--with-work-buffer-async): Reimplement as
1019         `package--with-response-buffer'.
1020         (package--with-work-buffer): Mark obsolete.
1021         (package--with-response-buffer): New macro. This is a more self
1022         contained and less contrived version of
1023         `package--with-work-buffer-async'.  It uses keyword arguments,
1024         doesn't have async on the name, doesn't fallback on
1025         `package--with-work-buffer', and has _much_ simpler error
1026         handling.
1028         (package--check-signature, package--download-one-archive)
1029         (package-install-from-archive, describe-package-1): Use it.
1031         (package--download-and-read-archives): Let
1032         `package--download-one-archive' take care of calling
1033         `package--update-downloads-in-progress'.
1035 2015-11-15  Stefan Monnier  <monnier@iro.umontreal.ca>
1037         * lisp/progmodes/verilog-mode.el: Use with-silent-modifications
1039         (verilog-save-buffer-state): Use with-silent-modifications when available.
1040         (verilog-save-font-no-change-functions): Don't bind
1041         before/after-change-functions if it's not needed.
1043 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1045         * CONTRIBUTE: Remove information about feature freeze.
1047         Merge branch 'release-process-lowercase'
1049 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1051         Document the release process
1053         * admin/notes/versioning: Add information about RC releases.
1054         * admin/release-process: Document the release process.
1055         * admin/authors.el (authors-ignored-files):
1056         * admin/README: Change FOR-RELEASE to release-process.
1057         * CONTRIBUTE:
1058         * admin/notes/bugtracker: Don't mention FOR-RELEASE.
1060 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1062         * admin/release-process: Rename from admin/FOR-RELEASE.
1064 2015-11-14  David Engster  <deng@randomsample.de>
1066         gitmerge: Fix git log command
1068         * admin/gitmerge.el (gitmerge-missing): Use '--left-only' since we
1069         only want commits from the branch that is to be merged.
1070         (gitmerge-setup-log-buffer): Use the same symmetric range as in
1071         `gitmerge-missing'.
1073 2015-11-14  David Engster  <deng@randomsample.de>
1075         gitmerge: Try to detect cherry-picks
1077         * admin/gitmerge.el (gitmerge-default-branch): Change to
1078         origin/emacs-25.
1079         (gitmerge-missing): Use symmetric difference ('...') between
1080         branch and master so that cherry-picks can be detected.
1082 2015-11-14  Eli Zaretskii  <eliz@gnu.org>
1084         Increment Emacs version on master branch
1086         * lisp/cus-edit.el (customize-changed-options-previous-release):
1087         Increase previous version to 24.5.
1089         * configure.ac:
1090         * msdos/sed2v2.inp: Bump version to 25.1.50.
1092 2015-11-14  Xue Fuqiao  <xfq.free@gmail.com>
1094         Mention CONTRIBUTE in README, since it was moved from etc/ to root.
1095         * etc/TODO: Remove the reference to `etc/CONTRIBUTE'.
1096         * README: Mention CONTRIBUTE.
1098 2015-11-13  Wilson Snyder  <wsnyder@wsnyder.org>
1100         Update verilog-mode.el to 2015-11-09-b121d60-vpo
1102         * verilog-mode.el (verilog-auto, verilog-delete-auto)
1103         (verilog-modi-cache-results, verilog-save-buffer-state)
1104         (verilog-save-font-no-change-functions): When internally suppressing
1105         change functions, use `inhibit-modification-hooks' and call
1106         `after-change-funtions' to more nicely work with user hooks.
1107         Reported by Stefan Monnier.
1108         (verilog-auto, verilog-delete-auto, verilog-delete-auto-buffer):
1109         Create `verilog-delete-auto-buffer' to avoid double-calling
1110         fontification hooks.
1111         (verilog-restore-buffer-modified-p, verilog-auto)
1112         (verilog-save-buffer-state): Prefer restore-buffer-modified-p over
1113         set-buffer-modified-p.  Reported by Stefan Monnier.
1114         (verilog-diff-auto, verilog-diff-buffers-p)
1115         (verilog-diff-ignore-regexp): Add `verilog-diff-ignore-regexp'.
1116         (verilog-auto-inst-port, verilog-read-sub-decls-expr): Fix
1117         AUTOINST with unpacked dimensional parameters, bug981.  Reported by
1118         by Amol Nagapurkar.
1119         (verilog-read-decls, verilog-read-sub-decls-line): Avoid unneeded
1120         properties inside internal structures.  No functional change
1121         intended.
1123 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1125         Use generic dispatch for xref backends
1127         * lisp/progmodes/xref.el (xref-backend-functions):
1128         New variable.
1129         (xref-find-function): Remove.
1130         (xref-find-backend)
1131         (xref--etags-backend): New functions.
1132         (xref-identifier-at-point-function)
1133         (xref-identifier-completion-table-function): Remove.
1134         (xref-backend-definitions, xref-backend-references)
1135         (xref-backend-apropos, xref-backend-identifier-at-point)
1136         (xref-backend-identifier-completion-table):
1137         New generic functions.
1139         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
1140         Add `elisp--xref-backend' to the beginning of
1141         `xref-backend-functions', locally.  Delete references to
1142         removed functions and vars.
1143         (elisp-xref-find): Remove.
1144         (elisp--xref-backend): New function.
1145         (elisp--xref-find-references, elisp--xref-find-apropos)
1146         (elisp--xref-identifier-completion-table):
1147         Turn into appropriately named generic methods.
1149         * lisp/progmodes/etags.el (etags-xref-find): Remove.
1150         (xref-backend-identifier-completion-table)
1151         (xref-backend-references, xref-backend-definitions)
1152         (xref-backend-apropos): New generic methods.
1154 2015-11-13  Juri Linkov  <juri@linkov.net>
1156         Support rectangular regions for more commands
1158         * lisp/simple.el (region-extract-function): Handle the arg
1159         value ‘bounds’.
1160         (region-insert-function): New function.
1161         (shell-command-on-region): Add arg ‘region-noncontiguous-p’.
1162         If non-nil, operate on multiple chunks.
1163         (region-noncontiguous-p): New function.
1165         * lisp/rect.el: Add function rectangle--insert-region
1166         around region-insert-function.
1167         (extract-rectangle-bounds): New function.
1168         (rectangle--extract-region): Handle the arg value ‘bounds’.
1169         (rectangle--insert-region): New function.
1171         * lisp/emulation/cua-rect.el: Add function cua--insert-rectangle
1172         around region-insert-function.
1173         (cua--extract-rectangle-bounds): New function.
1174         (cua--rectangle-region-extract): Handle the arg value ‘bounds’.
1176         * lisp/replace.el (query-replace, query-replace-regexp): Add arg
1177         ‘region-noncontiguous-p’.  Use ‘use-region-p’.
1178         (query-replace-regexp-eval, map-query-replace-regexp)
1179         (replace-string, replace-regexp): Use ‘use-region-p’.
1180         (keep-lines, flush-lines, how-many): Use ‘use-region-p’.
1181         (perform-replace): Add arg ‘region-noncontiguous-p’.
1182         If non-nil, operate on multiple chunks.
1184         * src/casefiddle.c (Fdowncase_region): Add arg ‘region-noncontiguous-p’.
1185         If non-nil, operate on multiple chunks.  (Bug#19829)
1187 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1189         Handle multiple matches on the same line; add highlighting
1191         * lisp/progmodes/xref.el (xref-location-marker): Interpret the
1192         column value in characters.
1193         (xref--collect-matches): Rename from `xref--collect-match'.
1194         Search for all matches in the hit line.  Add `highlight' face to
1195         the matched region in the summary.  Update both callers.
1197 2015-11-13  Dmitry Gutov  <dgutov@yandex.ru>
1199         Replace xref-match-bounds with xref-match-length
1201         Relying on xref-location-marker to point to the beginning of the match
1203         * lisp/progmodes/xref.el (xref-match-bounds): Remove.
1204         (xref-match-length): Add.
1205         (xref-make-match): Change the arguments.
1206         (xref--match-buffer-bounds): Remove.
1207         (xref-match-item): Store length, instead of end-column.
1208         (xref-pulse-momentarily)
1209         (xref--collect-match)
1210         (xref--query-replace-1): Update accordingly.
1211         (xref-query-replace): Ditto.  And check that the search results
1212         are up-to-date.
1214 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1216         Merge from gnulib
1218         This incorporates:
1219         2015-11-13 xalloc-oversized: improve performance with GCC 5
1220         * lib/xalloc-oversized.h: Copy from gnulib.
1222 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1224         Spruce up ftfont.c memory allocation
1226         * src/ftfont.c (setup_otf_gstring):
1227         Avoid O(N**2) behavior when reallocating.
1228         (ftfont_shape_by_flt): Prefer xpalloc to xrealloc when
1229         reallocating buffers; this simplifies the code.  Do not trust
1230         mflt_run to leave the output areas unchanged on failure, as
1231         this isn’t part of its interface spec.
1233 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1235         Port recent XCB changes to 64-bit ‘long int’
1237         For historical reasons, libX11 represents 32-bit values like Atoms as
1238         ‘long int’ even on platforms where ‘long int’ is 64 bits.  XCB doesn’t
1239         do that, so adapt the recent XCB code to behave properly on 64-bit
1240         platforms.  Also, fix what appears to be a bug in the interpretation
1241         of xcb_get_property_value_length, at least on my Fedora platform
1242         which is running libxcb-1.11-5.fc21.
1243         * src/xfns.c (x_real_pos_and_offsets):
1244         * src/xterm.c (get_current_wm_state):
1245         xcb_get_property_value_length returns a byte count, not a word count.
1246         For 32-bit quantities, xcb_get_property_value returns a vector
1247         of 32-bit words, not of (possibly 64-bit) long int.
1249 2015-11-13  Paul Eggert  <eggert@cs.ucla.edu>
1251         * src/undo.c (run_undoable_change): Now static.
1253 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1255         Remove support for ':timeout' from w32 tray notifications
1257         * src/w32fns.c (Fw32_notification_notify): Delete the code that
1258         supports ':timeout'.
1259         (syms_of_w32fns): Don't DEFSYM ':timeout'.  This avoids clashes
1260         with dbusbind.c when D-Bus is compiled in.
1262         * doc/lispref/os.texi (Desktop Notifications): Don't mention
1263         ':timeout'.
1265 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1267         * test/automated/simple-test.el: Add test for bug#20698 (bug#21885)
1268         (simple-test--transpositions): New macro.
1269         (simple-transpose-subr): New test.
1271 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1273         * lisp/progmodes/elisp-mode.el: Declare function `project-roots'
1275 2015-11-13  Juanma Barranquero  <lekktu@gmail.com>
1277         * src/undo.c: Small fixes for previous change
1278         (run_undoable_change): Mark void argument list.
1279         (record_property_change): Remove unused variable `boundary'.
1281 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1283         Add a few more variables to redisplay--variables
1285         * lisp/frame.el (redisplay--variables): Add bidi-paragraph-direction
1286         and bidi-display-reordering to the list.
1288 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1290         * lisp/loadup.el: Enlarge the size of the hash table to 80000.
1292 2015-11-13  Eli Barzilay  <eli@barzilay.org>
1294         Fix point positioning after transposing with negative arg
1296         * lisp/simple.el (transpose-subr): When invoked with a negative
1297         argument, move point to after the transposed text, like we do
1298         when invoked with a positive argument.  (Bug#21885)
1300 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1302         Fix last change in shr.el
1304         * lisp/net/shr.el (shr--have-one-fringe-p): Rename from
1305         have-fringes-p.  All callers changed.  Doc fix.  (Bug#21895)
1307 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1309         Fix last change
1311         * src/w32fns.c (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]:
1312         Don't DEFSYM tray notification symbols if D-Bus is being used.
1314 2015-11-13  Eli Zaretskii  <eliz@gnu.org>
1316         Another fix for MinGW64 and Cygwin builds due to notifications
1318         * src/w32fns.c: Ifdef away tray notification code if D-Bus is
1319         being compiled into Emacs.
1320         (syms_of_w32fns) [WINDOWSNT && !HAVE_DBUS]: Don't defsubr
1321         Sw32_notification_notify and Sw32_notification_close if the code
1322         is not compiled.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
1324 2015-11-12  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
1326         Remove intern calls and XXX comments from Fx_export_frames
1328         * src/xfns.c (Fx_export_frames): Use Qpdf, Qpng, Qpostscript, and
1329         Qsvg instead of intern calls.  Use "postscript" instead of "ps"
1330         for consistency with image types.  Remove XXX comments.
1331         (syms_of_xfns) <Qpdf>: DEFSYM it.
1333 2015-11-12  Eric Hanchrow  <eric.hanchrow@gmail.com>
1335         shr: don't invoke unbound function (Bug#21895)
1337         * lisp/net/shr.el (have-fringes-p): New function.
1338         (shr-insert-document, shr-fill-text): Use it.
1340 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
1342         * test/automated/keymaps-test.el: Fix test to make it repeatable
1344         (keymap-store_in_keymap-FASTINT-on-nonchars): Reset Buffer-menu-mode-map
1345         entry to its initial value to make the test repeatable in interactive
1346         sessions (assuming it doesn't fail and crashes Emacs, of course).
1348 2015-11-12  Artur Malabarba  <bruce.connor.am@gmail.com>
1350         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
1351         Small fix.
1353 2015-11-12  Phillip Lord  <phillip.lord@newcastle.ac.uk>
1355         The heuristic that Emacs uses to add an `undo-boundary' has been
1356         reworked, as it interacts poorly with functions on `post-command-hook'
1357         or `after-change-functions'.
1359         * lisp/simple.el: New section added.
1360         * src/cmds.c (remove_excessive_undo_boundaries): Now in lisp.
1361         (self_insert_command): Calls simple.el to amalgamate.
1362         (delete_char): Calls simple.el to amalgamate.
1363         * src/keyboard.c (last_undo_boundary): Removed.
1364         * src/undo.c (run_undoable_change): New function.
1366 2015-11-12  Juri Linkov  <juri@linkov.net>
1368         Bind [?\S-\ ] to previous line command in Dired-like modes
1370         * lisp/arc-mode.el (archive-mode-map):
1371         * lisp/dired.el (dired-mode-map):
1372         * lisp/proced.el (proced-mode-map):
1373         * lisp/vc/vc-dir.el (vc-dir-mode-map):
1374         Bind [?\S-\ ] to previous line command.
1375         (Bug#20790)
1377 2015-11-12  Eli Zaretskii  <eliz@gnu.org>
1379         Fix the MinGW64 and Cygwin-w32 builds
1381         * src/w32fns.c (MYNOTIFYICONDATAW_V1_SIZE)
1382         (MYNOTIFYICONDATAW_V2_SIZE, MYNOTIFYICONDATAW_V3_SIZE): Define and
1383         use instead of the corresponding NOTIFYICONDATAW_Vn_SIZE macros,
1384         which cause trouble with MinGW42 headers.  Ifdef away tray
1385         notifications code for Cygwin.  Reported by Andy Moreton
1386         <andrewjmoreton@gmail.com>.
1388 2015-11-12  Simen Heggestøyl  <simenheg@gmail.com>
1390         Enable sorting of JSON object keys when encoding
1392         * lisp/json.el (json-encoding-object-sort-predicate): New variable
1393         for specifying a sorting predicate for JSON objects during encoding.
1394         (json--plist-to-alist): New utility function.
1395         (json-encode-hash-table): Re-use `json-encode-alist' when object keys
1396         are to be sorted.
1397         (json-encode-alist): Sort output by
1398         `json-encoding-object-sort-predicate, when set.
1399         (json-encode-plist): Re-use `json-encode-alist' when object keys are
1400         to be sorted.
1401         (json-pretty-print-buffer-ordered): New command to pretty print the
1402         buffer with object keys sorted alphabetically.
1403         (json-pretty-print-ordered): New command to pretty print the region
1404         with object keys sorted alphabetically.
1406         * test/automated/json-tests.el (test-json-plist-to-alist)
1407         (test-json-encode-plist, test-json-encode-hash-table)
1408         (test-json-encode-alist-with-sort-predicate)
1409         (test-json-encode-plist-with-sort-predicate): New tests.
1411         * etc/NEWS: Add an entry for the new commands.
1413 2015-11-12  Juanma Barranquero  <lekktu@gmail.com>
1415         * test/automated/keymap-tests.el: New test file.
1417 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1419         Speed up x_real_pos_and_offsets using XCB
1421         * src/xfns.c (x_real_pos_and_offsets) [USE_XCB]: Add XCB flavors of
1422         all X calls, and pipeline requests when possible, collecting results
1423         later.  Eliminate use of x_catch_errors (and thus XSync) in XCB case.
1425 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1427         Enable use of XCB for checking window manager state
1429         * src/xterm.c (get_current_wm_state) [USE_XCB]: Use XCB calls instead
1430         of XGetWindowProperty plus error-catching, since we can explicitly
1431         check for errors in the XCB version.  This eliminates 3 XSync calls on
1432         top of the round-trip actually fetching the information.
1434 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1436         Detect XCB and save a connection handle
1438         * configure.ac: If using X11, check for XCB libraries and header.
1439         * src/Makefile.in (XCB_LIBS): Define.
1440         (LIBX_EXTRA): Include it.
1442         * src/xterm.h [USE_XCB]: Include X11/Xlib-xcb.h.
1443         (struct x_display_info) [USE_XCB]: Add an XCB connection handle field.
1444         * src/xterm.c (x_term_init) [USE_XCB]: Initialize the new field.
1446 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1448         Reduce some data dependencies between X calls
1450         Gains nothing in the traditional-Xlib code, but more closely aligns
1451         with how the XCB version will work.
1453         * src/xfns.c (x_real_pos_and_offsets): When translating coordinates,
1454         send coordinates (0,0) to the X server and add in the real coordinates
1455         after getting the response.  Move XGetGeometry for outer window inside
1456         error-trapping block.  Use DPY variable more, since it's available.
1458 2015-11-12  Ken Raeburn  <raeburn@raeburn.org>
1460         Use color cache for creating bitmap
1462         * src/image.c (x_create_bitmap_from_xpm_data) [ALLOC_XPM_COLORS]:
1463         Set attributes to use the caching color allocator.  Initialize and
1464         free the cache.
1466 2015-11-12  Eli Barzilay  <eli@barzilay.org>
1468         Add "^" to the interactive specs of `dired-next/previous-line'
1470         * lisp/dired.el (dired-next-line, dired-previous-line): It makes sense
1471         to bind these commands to the arrow keys, and that means that they work
1472         better with a "^" in the `interactive' declaration so selection works
1473         as expected.
1475 2015-11-11  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
1477         Sync with soap-client repository, version 3.0.2
1479         * soap-client.el: Bump version to 3.0.2.
1481         * soap-client.el (soap-warning): Use format, not format-message.
1483         * soap-client.el: Add cl-lib to Package-Requires.  Require cl-lib.
1484         (soap-validate-xs-simple-type): Use cl-labels instead of cl-flet.
1486         * soap-client.el: Support Emacs versions that do not have
1487         define-error.
1489         * soap-inspect.el: Remove version header.
1491         * soap-client.el, soap-inspect.el, jira2.el: Fix first line header
1492         format.
1494 2015-11-11  Alan Mackenzie  <acm@muc.de>
1496         CC Mode: Respect users' settings of open-paren-in-column-0-is-defun-start
1498         * lisp/progmodes/cc-engine.el (c-backward-single-comment)
1499         (c-backward-comments, c-invalidate-state-cache-1, c-parse-state-1)
1500         (c-guess-basic-syntax):
1501         Remove bindings of open-paren-in-column-0-is-defun-start to nil.
1502         (c-get-fallback-scan-pos): "New" function (existed several years ago).
1503         (c-parse-state-get-strategy): Reintroduce the 'BOD strategy, using
1504         c-get-fallback-scan-pos.
1505         (c-parse-state-1): Handle 'BOD strategy.
1507         * lisp/progmodes/cc-mode.el (c-before-change, c-after-change)
1508         (c-font-lock-fontify-region): Remove bindings of
1509         open-paren-in-column-0-is-defun-start to nil.
1511         * doc/misc/cc-mode.texi (Performance Issues)
1512         (Limitations and Known Bugs): Fix mix up between @chapter and @appendix.
1514 2015-11-11  Artur Malabarba  <bruce.connor.am@gmail.com>
1516         * lisp/obarray.el: Fix shadowed variables.
1517         (obarray-map, obarray-remove, obarray-put, obarray-get):
1518         Change OBARRAY arg to OB to avoid shadowing ‘obarray’.
1520 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
1522         Avoid error in submitting a form with EWW
1524         * lisp/gnus/mm-url.el (mm-url-form-encode-xwfu): Allow argument
1525         CHUNK to be nil.  (Bug#21881)
1527 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1529         Rename seq-p and map-p to seqp and mapp
1531         * lisp/emacs-lisp/seq.el (seqp): New name.
1532         * lisp/emacs-lisp/map.el (mapp): New name.
1533         * doc/lispref/sequences.texi: Update the documentation for seqp.
1534         * test/automated/map-tests.el: Update the tests for mapp.
1536 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1538         Rename obarray-p to obarrayp
1540         * lisp/obarray.el (obarrayp): New name.
1541         * test/automated/obarray-tests.el: Update the tests.
1543 2015-11-11  Nicolas Petton  <nicolas@petton.fr>
1545         Rename obarray-foreach to obarray-map
1547         * lisp/obarray.el (obarray-map): New name.
1548         * test/automated/obarray-tests.el: Update the corresponding tests.
1550 2015-11-11  Przemysław Wojnowski  <esperanto@cumego.com>
1552         New file with obarray functions
1554         * lisp/obarray.el: Basic obarray functions extracted from abbrev.el.
1555         * test/automated/obarray-tests.el: New file.
1557 2015-11-11  Eli Zaretskii  <eliz@gnu.org>
1559         Implement tray notifications for MS-Windows
1561         * src/w32fns.c (MY_NOTIFYICONDATAW): New typedef.
1562         (NOTIFYICONDATAW_V1_SIZE, NOTIFYICONDATAW_V2_SIZE)
1563         (NOTIFYICONDATAW_V3_SIZE, NIF_INFO, NIIF_NONE, NIIF_INFO)
1564         (NIIF_WARNING, NIIF_ERROR, EMACS_TRAY_NOTIFICATION_ID)
1565         (EMACS_NOTIFICATION_MSG): New macros.
1566         (NI_Severity): New enumeration.
1567         (get_dll_version, utf8_mbslen_lim, add_tray_notification)
1568         (delete_tray_notification, Fw32_notification_notify)
1569         (Fw32_notification_close): New functions.
1570         (syms_of_w32fns): Defsubr functions exposed to Lisp.  DEFSYM
1571         keywords used by w32-notification-notify.
1573         * doc/lispref/os.texi (Desktop Notifications): Describe the native
1574         w32 tray notifications.
1576 2015-11-11  Michael Albinus  <michael.albinus@gmx.de>
1578         Optimize `file-equal-p' and `file-in-directory-p' in Tramp
1580         * lisp/net/tramp.el (tramp-handle-file-equal-p)
1581         (tramp-handle-file-in-directory-p): New defuns.  Suggested by
1582         Harvey Chapman <hchapman@3gfp.com>.
1584         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist):
1585         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist):
1586         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist):
1587         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist): Use them.
1589 2015-11-10  Karl Fogel  <kfogel@red-bean.com>
1591         * CONTRIBUTE: Encourage adding tests.
1593         Based on this post from John Wiegley:
1595           From: "John Wiegley" <johnw@newartisans.com>
1596           Subject: Re: [Emacs-diffs] master 1f02cbe: Fix bug#21766 and add test
1597           To: Juanma Barranquero <lekktu@gmail.com>
1598           Cc: emacs-diffs@gnu.org, bruce.connor.am@gmail.com,
1599               emacs-devel <emacs-devel@gnu.org>
1600           Date: Wed, 28 Oct 2015 18:45:29 -0700
1601           Message-ID: <m2y4emqwg6.fsf@newartisans.com>
1603           https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02372.html
1605 2015-11-10  David Reitter  <david.reitter@gmail.com>
1607         Avoid creating notification objects when possible
1609         * src/nsterm.m (windowWillEnterFullScreen, windowWillExitFullScreen:)
1610         (windowDidEnterFullScreen, windowDidExitFullScreen): Provide convenience
1611         functions that do not require a notification object.  When needed,
1612         define NSWindowDidEnterFullScreenNotification to allow for compilation
1613         on OS X 10.6.8.
1615 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1617         Move INTEGER_TO_CONS body out of .h file
1619         * src/data.c (INTBIG_TO_LISP): New macro, with most
1620         of the contents of the old INTEGER_TO_CONS.
1621         (intbig_to_lisp, uintbig_to_lisp): New functions.
1622         * src/lisp.h (INTEGER_TO_CONS):
1623         Simplify by using EXPR_SIGNED and the new functions.
1624         This shrinks code size a bit, and makes it easier to
1625         put a breakpoint on handling of large integers.
1627 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1629         Merge from gnulib
1631         This incorporates:
1632         2015-11-10 intprops: new public macro EXPR_SIGNED
1633         2015-11-10 intprops: fix typo in clang port
1634         * lib/intprops.h: Copy from gnulib.
1636 2015-11-10  Paul Eggert  <eggert@cs.ucla.edu>
1638         Spelling fixes
1640         * lisp/net/soap-inspect.el (soap-inspect-xs-simple-type):
1641         Fix misspelling in output.
1643 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1645         * doc/lispref/variables.texi (Directory Local Variables):
1646         Document dir-locals wildcards.
1648         * lisp/files.el (dir-locals-file): Point to Info node.
1650         * doc/emacs/custom.texi (Directory Variables):
1651         Document dir-locals wildcards.
1653         * etc/NEWS: Document new functionality.
1655 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1657         * lisp/files.el: Don't allow customization of dir-locals sorting.
1658         In retrospect, this is not a good idea for the same reason that
1659         `dir-locals-file' is a defconst, because it is important that this
1660         behaviour be "uniform across different environments and users".
1661         Sure, the user can still change the sorting with a hack, but we
1662         shouldn't encourage them to change it.
1663         (dir-locals--all-files): Return list in the order returned by
1664         `file-expand-wildcards'.
1665         (file-expand-wildcards): Document the sorting predicate used.
1666         (dir-locals-sort-predicate): Delete variable.
1668 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1670         * lisp/files.el (dir-locals-read-from-file): Better handle errors.
1672         * lisp/isearch.el (search-default-regexp-mode): Change default value.
1674 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1676         * lisp/files.el (dir-locals-find-file): Don't stop at unreadable files.
1677         `locate-dominating-file' will now keep looking if the files it finds in
1678         a given directory are unreadable (or not files).
1680 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1682         * lisp/files.el (dir-locals-file): Allow wildcards.
1683         (dir-locals-find-file, dir-locals-collect-variables)
1684         (dir-locals-read-from-file): Update accordingly.
1685         (hack-dir-local-variables): Rename a local variable.
1687         * lisp/files-x.el (modify-dir-local-variable): Update accordingly.
1689         * lisp/help-fns.el (describe-variable): Update accordingly.
1691         * .gitignore: Add .dir-locals?.el.
1693 2015-11-10  Artur Malabarba  <bruce.connor.am@gmail.com>
1695         * lisp/emacs-lisp/map.el (map-merge-with): New function.
1697         * test/automated/map-tests.el (test-map-merge-with): New test.
1699 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
1701         Fix some recently-perturbed bookmark autoloads
1703         * lisp/bookmark.el (bookmark-set-internal): Remove unnecessary autoload.
1704         (bookmark-set): Restore autoload.
1705         (bookmark-set-no-overwrite): Add autoload.
1707         Thanks to Juanma Barranquero for noticing the autoload problems
1708         introduced by my recent commit adding/changing the above functions
1709         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
1711 2015-11-09  Noah Friedman  <friedman@splode.com>
1713         * etc/emacs-buffer.gdb (ydump-buffer): Handle case where gap is at
1714         the start of buffer.  I don't recall if older versions of gdb were
1715         less strict but you cannot dump a 0-length range in gdb 7.9.1.
1717 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
1719         * lisp/progmodes/project.el: Update Commentary.
1721         Merge branch 'project-next'
1723 2015-11-09  Dmitry Gutov  <dgutov@yandex.ru>
1725         Fold `project-ask-user' into `project-current'
1727         * lisp/progmodes/project.el (project-find-functions):
1728         Remove `project-ask-user'.
1729         (project-ask-user): Remove function and the corresponding
1730         `project-roots' implementation.
1731         (project-current): Add a new argument, MAYBE-PROMPT.  Prompt the
1732         user in case there's no project in the current directory.  Update
1733         all callers.
1735 2015-11-09  Karl Fogel  <kfogel@red-bean.com>
1737         When VC detects a conflict, specify which file
1739         * lisp/vc/vc.el (vc-message-unresolved-conflicts): New function.
1740         * lisp/vc/vc-svn.el (vc-svn-find-file-hook):
1741         * lisp/vc/vc-hg.el (vc-hg-find-file-hook):
1742         * lisp/vc/vc-bzr.el (vc-bzr-find-file-hook):
1743         * lisp/vc/vc-git.el (vc-git-find-file-hook): Use above new function
1744           to display a standard message that specifies the conflicted file.
1746         Before this change, the message VC used for indicating a conflicted
1747         file was just "There are unresolved conflicts in this file" without
1748         naming the file (and this language was duplicated in several places).
1749         After this change, it's "There are unresolved conflicts in file FOO"
1750         (and this language is now centralized in one function in vc.el).
1752         Justification: It's important for the message to name the conflicted
1753         file because the moment when VC realizes a file is conflicted does not
1754         always come interactively.  For example, some people automatically
1755         find a set of Org Mode files on startup, and may keep those .org files
1756         under version control.  If any of the files are conflicted, the user
1757         just sees some messages fly by, and might later check the "*Messages*"
1758         buffer to find out what files were conflicted.  I'm not saying this
1759         happened to me or anything; it's a purely hypothetical example.
1761 2015-11-09  Eli Zaretskii  <eliz@gnu.org>
1763         Fix assertion violation in define-key
1765         * src/keymap.c (store_in_keymap): Don't use XFASTINT on non-character
1766         objects.  Reported by Drew Adams <drew.adams@oracle.com>
1767         and Juanma Barranquero <lekktu@gmail.com>.
1769 2015-11-09  Dima Kogan  <dima@secretsauce.net>
1771         Fix a memory leak in GC of font cache
1773         * src/alloc.c (compact_font_cache_entry): Don't GC unmarked font
1774         entities if some of the fonts it references are marked.  This
1775         plugs a memory leak.  (Bug#21556)
1777 2015-11-09  Paul Eggert  <eggert@cs.ucla.edu>
1779         Use INT_ADD_WRAPV etc. to check integer overflow
1781         * src/alloc.c (xnmalloc, xnrealloc, xpalloc, Fmake_string):
1782         * src/buffer.c (record_overlay_string, overlay_strings):
1783         * src/casefiddle.c (casify_object):
1784         * src/ccl.c (Fccl_execute_on_string):
1785         * src/character.c (char_width, c_string_width, lisp_string_width)
1786         (count_size_as_multibyte, string_escape_byte8):
1787         * src/coding.c (coding_alloc_by_realloc, produce_chars):
1788         * src/data.c (arith_driver):
1789         * src/dispnew.c (realloc_glyph_pool, init_display):
1790         * src/editfns.c (styled_format):
1791         * src/fns.c (Ffillarray):
1792         * src/ftfont.c (ftfont_shape_by_flt):
1793         * src/gnutls.c (gnutls_hex_string):
1794         * src/gtkutil.c (get_utf8_string):
1795         * src/image.c (x_to_xcolors, x_detect_edges, png_load_body):
1796         * src/keymap.c (Fkey_description):
1797         * src/lisp.h (SAFE_ALLOCA_LISP):
1798         * src/term.c (encode_terminal_code):
1799         * src/tparam.c (tparam1):
1800         * src/xselect.c (x_property_data_to_lisp):
1801         * src/xsmfns.c (smc_save_yourself_CB):
1802         * src/xterm.c (x_term_init):
1803         When checking for integer overflow, prefer INT_MULTIPLY_WRAPV to
1804         more-complicated code involving division and/or
1805         INT_MULTIPLY_OVERFLOW, and similarly for INT_ADD_WRAPV and
1806         subtraction and/or INT_ADD_OVERFLOW.
1807         * src/casefiddle.c (casify_object): Simplify multibyte size check.
1808         * src/character.c: Remove some obsolete ‘#ifdef emacs’s.
1809         * src/data.c (arith_driver): Also check for division overflow,
1810         as that’s now possible given that the accumulator can now contain
1811         any Emacs integer.
1812         * src/lisp.h (lisp_word_count): Remove; no longer used.
1814 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
1816         Make sure that the ignore file exists
1818         * lisp/vc/vc.el (vc-default-ignore-completion-table):
1819         Make sure that the ignore file exists.
1821 2015-11-08  Michael Sperber  <mike@xemacs.org>
1823         * gnus-sum.el (gnus-summary-backend-map): Bind B-backspace to
1824         `gnus-summary-delete-article` in a way that also works on XEmacs.
1826 2015-11-08  Simen Heggestøyl  <simenheg@gmail.com>
1828         Add support for retrieving paths to JSON elements
1830         Add support for retrieving the path to a JSON element. This can for
1831         instance be useful to retrieve paths in deeply nested JSON
1832         structures.
1834         * lisp/json.el (json-pre-element-read-function)
1835         (json-post-element-read-function): New variables to hold pre- and post
1836         read callback functions for `json-read-array' and `json-read-object'.
1837         (json--path): New variable used internally by `json-path-to-position'.
1838         (json--record-path, json--check-position): New functions used
1839         internally by `json-path-to-position'.
1840         (json-path-to-position): New function for retrieving the path to a
1841         JSON element at a given position.
1842         (json-read-object, json-read-array): Call
1843         `json-pre-element-read-function' and `json-post-element-read-function'
1844         when set.
1846         * test/automated/json-tests.el (test-json-path-to-position-with-objects)
1847         (test-json-path-to-position-with-arrays)
1848         (test-json-path-to-position-no-match): New tests for
1849         `json-path-to-position'.
1851 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
1853         * etc/NEWS: Mention new `bookmark-set-no-overwrite'.
1855         This really should been part of my previous commit
1856         (Sun Nov 8 14:16:43 2015 -0500, git commit 3812e17978).
1858 2015-11-08  Karl Fogel  <kfogel@red-bean.com>
1860         Offer non-overwrite bookmark setter (Bug#15746)
1862         * lisp/bookmark.el (bookmark-set-internal): New helper function to do
1863         what `bookmark-set' used to do, but with more choices for overwrite
1864         vs push, and with minor changes to the interactive prompt format.
1865         (bookmark-set): Rewrite as wrapper around above.
1866         If overwriting, inform the user of that in the prompt.
1867         (bookmark-set-no-overwrite): New function, also done as wrapper.
1868         Bind to "M" in `ctl-x-r-map' autoloads.
1869         (bookmark-map): Similarly bind "M" here.
1871 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
1873         * src/unexelf.c (NEW_PROGRAM_H): Remove unused macro (Bug#20614).
1875 2015-11-08  Alan Modra  <amodra@gmail.com>
1877         ELF unexec: Don't insert a new section
1879         Reuse the .bss section instead, making it SHT_PROGBITS.  This way we
1880         don't need to mess with symbol st_shndx, or section sh_link and
1881         sh_info.
1883         This does lead to eu-elflint complaints about symbols defined in .bss
1884         with a needed version, because normally it is undefined symbols that
1885         have needed versions;  Defined symbols have version definitions.
1886         The exception is symbols defined by the linker in .dynbss for
1887         variables copied from a shared library in order to avoid text
1888         relocations, with copy relocs to copy their initial values from the
1889         shared library.  These symbols are both defined and have needed
1890         versions, and eu-elflink only expects to see them in SHT_NOBITS
1891         sections.  Of course there is no real problem with having such symbols
1892         in SHT_PROGBITS sections.  glibc ld.so handles them fine.
1894         * src/unexelf.c: Delete outdated comments.
1895         (PATCH_INDEX): Delete.
1896         (find_section): Delete.
1897         (unexec): Don't add a new section.  Instead reuse the last bss
1898         section, extending it to cover dumped data.  Make bss sections
1899         SHT_PROGBITS.  Remove all patching of sh_link, sh_info and
1900         st_shndx.  Rename bss sections.
1902 2015-11-08  Alan Modra  <amodra@gmail.com>
1904         ELF unexec: Drive from PT_LOAD header rather than sections
1906         This rewrites bss handling in the ELF unexec code.  Finding bss
1907         sections by name results in complicated code that
1908         - does not account for all names of possible bss sections,
1909         - assumes specific ordering of bss sections,
1910         - can wrongly choose a SHT_NOBITS section not in the bss segment,
1911         - incorrectly calculates bss size (no accounting for alignment gaps),
1912         - assumes .data and .bss are in the same segment.
1914         All of these problems and more are solved by finding the bss segment
1915         in PT_LOAD headers, ie. the address range included in p_memsz but not
1916         p_filesz of the last PT_LOAD header, then matching SHT_NOBITS sections
1917         in that address range.
1919         * src/unexelf.c: Delete old ppc comment.
1920         (OLD_PROGRAM_H): Define.
1921         (round_up): Delete.
1922         (unexec): Don't search for bss style sections by name.  Instead,
1923         use the last PT_LOAD header address range covered by p_memsz
1924         but not p_filesz and match any SHT_NOBITS section in that
1925         address range.  Simplify initialisation of section header vars.
1926         Don't assume that section headers are above bss segment.  Move
1927         copying of bss area out of section loop.  Align .data2 section
1928         to 1, since it now covers the entire bss area.  For SHT_NOBITS
1929         sections in the bss segment, leave sh_addr and sh_addralign
1930         unchanged, but correct sh_offset.  Clear memory corresponding
1931         to SHT_NOBITS .plt section.  Delete comment and hacks for
1932         sections partly overlapping bss range now that the full range
1933         is properly calculated.  Delete now dead .sbss code.
1934         (Bug#20614)
1936 2015-11-08  Alan Modra  <amodra@gmail.com>
1938         ELF unexec: R_*_NONE relocs
1940         These should be ignored on all targets.
1942         * src/unexelf.c (unexec): Ignore R_*_NONE relocs for any target,
1943         not just Alpha.  Comment on reloc size assumption.
1945 2015-11-08  Alan Modra  <amodra@gmail.com>
1947         ELF unexec: _OBJC_ symbols in bss sections
1949         This code assumed that there was only one bss section.  Rather than
1950         checking for a particular index, check the section type.  Also, handle
1951         the possibility that the section was SHT_NOBITS originally and is
1952         unchanged, in which case no clearing is needed (and sh_offset isn't
1953         necessarily valid, which can lead to a wild memset).
1955         * src/unexelf.c (unexec): Properly handle _OBJC_ symbols in
1956         bss sections.
1958 2015-11-08  Alan Modra  <amodra@gmail.com>
1960         ELF unexec: Symbol table patching
1962         No st_shndx value larger than SHN_LORESERVE should be changed.
1963         * src/unexelf.c (unexec): Don't adjust any st_shndx larger than
1964         SHN_LORESERVE.  Error on SHN_XINDEX.
1966 2015-11-08  Alan Modra  <amodra@gmail.com>
1968         ELF unexec: Merge Alpha and MIPS COFF debug handling
1970         * src/unexelf.c (unexec): Merge Alpha and MIPS COFF debug handling.
1971         Don't find .mdebug section index, find the section in the loop.
1972         Allow for unlikely possibility that .mdebug is located at sh_offset
1973         before bss segment, by calculating move from difference in
1974         sh_offset rather than just assuming new_data2_size.  Simplify
1975         cbLineOffset handling.
1977 2015-11-08  Alan Modra  <amodra@gmail.com>
1979         ELF unexec: Tidy code
1981         Separate out some of the more mechanical changes so following patches
1982         are smaller.
1984         * src/unexelf.c (unexec): Rearrange initialisation of program
1985         header vars.  Use pointer vars in loops rather than indexing
1986         section header array via macros.  Simplify _OBJC_ sym code
1987         and reloc handling code.
1989 2015-11-08  Alan Modra  <amodra@gmail.com>
1991         ELF unexec: Correct section header index
1993         First a small fix.  The code incorrectly uses "NEW_SECTION_H (n)" when
1994         it should have been using "NEW_SECTION_H (nn)" to find the name of the
1995         section currently being processed.  Of course, before the bss
1996         sections, n and nn have the same value, so this doesn't matter except
1997         in the case of .sbss.  For .sbss this probably meant .bss (most likely
1998         the next section) was copied from memory.  A later patch removes the
1999         bogus .sbss handling anyway.
2001         * src/unexelf.c (unexec): Use correct index to look up names.
2003 2015-11-08  Michael Albinus  <michael.albinus@gmx.de>
2005         Fix Bug#21841
2007         * lisp/filenotify.el (file-notify--rm-descriptor):
2008         Use `descriptor' instead of computing its value.
2009         (file-notify--descriptor): Additional argument FILE.  Adapt all callees.
2010         (file-notify-rm-watch): Use `descriptor' when calling file name handler.
2011         (Bug#21841)
2013 2015-11-08  Dmitry Gutov  <dgutov@yandex.ru>
2015         Remove dirs in vc project roots from the the vc project library roots
2017         * lisp/progmodes/project.el (project-library-roots):
2018         Remove directories inside the project roots from the result.
2019         (http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00536.html)
2021 2015-11-07  Dmitry Gutov  <dgutov@yandex.ru>
2023         Move and rename xref-find-regexp to the project package
2025         * lisp/progmodes/project.el (project-find-regexp)
2026         (project--read-regexp)
2027         (project--find-regexp-in): New functions.
2029         * lisp/progmodes/xref.el (xref--find-xrefs): Extract from
2030         xref--show-xrefs.  Use in existing callers in place of that
2031         function.
2032         (xref--show-xrefs): Only do the "show" part.
2033         (xref-find-regexp): Rename, more or less, to
2034         project-or-libraries-find-regexp.
2036 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
2038         Abolish temporary buffer management for xref
2040         * lisp/progmodes/xref.el (xref--temporary-buffers)
2041         (xref--current)
2042         (xref--inhibit-mark-current)
2043         (xref--mark-selected): Remove.  Remove all references.
2044         (xref--show-xrefs): Do not construct the
2045         list of the temporary buffers, nor pass it along.
2047 2015-11-06  Dmitry Gutov  <dgutov@yandex.ru>
2049         Rename "search path" to "library roots"
2051         * lisp/emacs-lisp/cl-seq.el (cl-set-difference): Retain the order
2052         of the elements from CL-LIST1.
2054         * test/automated/cl-lib-tests.el (cl-lib-test-set-functions):
2055         Update WRT to the above change.
2057         * lisp/progmodes/project.el (project-search-path-function): Rename
2058         to project-library-roots-function, update the documentation and
2059         references.
2060         (project-search-path): Likewise, to project-library-roots.
2061         (project-roots): Clarify documentation.
2062         (project-vc-search-path): Likewise, to project-vc-library-roots.
2063         (project-library-roots): In addition to the renames, thread the
2064         results through file-name-as-directory.
2065         (project-prune-directories): Accept a variable number of
2066         arguments.  Rename to project-combine-directories.
2067         (project-subtract-directories): New function.
2069         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
2070         Append project-roots and project-library-roots together.
2072         * lisp/progmodes/etags.el (etags--xref-find-references): Ditto.
2074 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2076         Prefer xpalloc to doubling buffers by hand
2078         * src/lread.c (grow_read_buffer): New function, which uses xpalloc.
2079         (read1): Use it for simplicity.
2080         * src/macros.c (store_kbd_macro_char):
2081         * src/minibuf.c (read_minibuf_noninteractive):
2082         * src/term.c (encode_terminal_code):
2083         * src/xrdb.c (magic_db):
2084         Prefer xpalloc to growing buffers by hand.
2085         This doesn’t fix any bugs, but simplifies the code a bit.
2087 2015-11-08  Paul Eggert  <eggert@cs.ucla.edu>
2089         Merge from gnulib
2091         This incorporates:
2092         2015-11-05 timespec-sub: fix overflow bug; add tests
2093         2015-11-04 intprops: revise _WRAPV macros, revert _OVERFLOW
2094         2015-11-03 intprops: add parentheses
2095         * lib/intprops.h, lib/timespec-add.c, lib/timespec-sub.c:
2096         Copy from gnulib.
2098 2015-11-07  David Reitter  <david.reitter@gmail.com>
2100         Provide NS notification objects where required to eliminate warnings
2102         * nsterm.m (windowDidResize:, toggleFullScreen:):
2103         Call notification functions with notification objects
2104         as per delegate APIs.
2106 2015-11-07  Noam Postavsky  <npostavs@users.sourceforge.net>
2108         Add test for bug #21824
2110         * test/automated/buffer-tests.el: New file.
2111         (overlay-modification-hooks-message-other-buf): New test.
2113 2015-11-07  Kelvin White  <kwhite@gnu.org>
2115         * lisp/erc/erc-pcomplete.el (pcomplete-erc-nicks): Fix bug#18771.
2117 2015-11-07  David Reitter  <david.reitter@gmail.com>
2119         Ignore fullscreen exit notifications on NS when frame is dead
2121         * nsterm.m (windowDidResize:, windowWillExitFullScreen:)
2122         (windowDidExitFullScreen:): Return if frame is dead.
2123         These functions may be called when a fullscreen frame
2124         is closed; they are called before, not after.
2126         May address Bug#21428.
2128 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
2130         Speed up lookup in redisplay--variables
2132         * lisp/frame.el (redisplay--variables): Make it a hash-table.
2134         * src/xdisp.c (maybe_set_redisplay): Access redisplay--variables
2135         as a hash-table.  This speeds up this function by an order of
2136         magnitude: where previously a setq was slowed down by 100% by
2137         introducing the maybe_set_redisplay test, it is now only 5%
2138         slower.
2139         (syms_of_xdisp) <redisplay--variables>: Doc fix.
2141 2015-11-07  Artur Malabarba  <bruce.connor.am@gmail.com>
2143         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Fix a bug.
2145         The defsubst was being created as:
2146             (cl-defsubst name (args) ("DOC") ...)
2148         * test/automated/cl-lib-tests.el (cl-lib-struct-constructors):
2149         Add test.
2151 2015-11-07  Mihai Olteanu  <mihai_olteanu@fastmail.fm>  (tiny change)
2153         Update doc string of hexl-mode
2155         * lisp/hexl.el (hexl-mode): Doc fix.  (Bug#21800)
2157 2015-11-07  Eli Zaretskii  <eliz@gnu.org>
2159         Fix error in copy-abbrev-table
2161         * lisp/abbrev.el (define-abbrev): Don't erase the :abbrev-table-modiff
2162         property of the abbrev-table.  (Bug#21828)
2164         * test/automated/abbrev-tests.el: New file.
2166 2015-11-07  Michael Albinus  <michael.albinus@gmx.de>
2168         Add test to auto-revert-tests.el for Bug#21841
2170         * test/automated/auto-revert-tests.el
2171         (auto-revert-test01-auto-revert-several-files): New test.
2172         (auto-revert-test02-auto-revert-tail-mode)
2173         (auto-revert-test03-auto-revert-mode-dired): Rename them.
2175 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
2177         * doc/lispref/windows.texi (Coordinates and Windows): Fix typo.
2179 2015-11-07  Martin Rudalics  <rudalics@gmx.at>
2181         In x_consider_frame_title don't set title of tooltip frames
2183         * src/xdisp.c (x_consider_frame_title): Return immediately for
2184         tooltip frames to avoid displaying empty tooltips.
2186 2015-11-06  Anders Lindgren  <andlind@gmail.com>
2188         Fixed NextStep fullscreen problem (bug#21770).
2190         * src/nsterm.m (ns_constrain_all_frames): Don't constrain
2191         fullscreen frames.
2193 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2195         Ensure redisplay after evaluation
2197         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp):
2198         Revert last change.
2199         * lisp/frame.el (redisplay--variables): Populate the
2200         redisplay--variables list.
2201         * src/xdisp.c (maybe_set_redisplay): New function.
2202         (syms_of_xdisp) <redisplay--variables>: New variable.
2203         * src/window.h (maybe_set_redisplay): Declare prototype.
2204         * src/data.c (set_internal): Call maybe_set_redisplay.  (Bug#21835)
2206 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2208         * test/automated/subr-tests.el (subr-test-when): Fix again.
2210 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2212         Don't invoke overlay modification hooks in wrong buffer
2214         * src/buffer.c (report_overlay_modification): When called with
2215         AFTER non-zero, don't invoke overlay modification hooks if the
2216         buffer recorded in last_overlay_modification_hooks is different
2217         from the current buffer.  (Bug#21824)
2219 2015-11-06  Juanma Barranquero  <lekktu@gmail.com>
2221         * admin/notes/repo: Fix a few obsolete references to Bazaar.
2223 2015-11-06  Artur Malabarba  <bruce.connor.am@gmail.com>
2225         * test/automated/subr-tests.el (subr-test-when): Fix test.
2227 2015-11-06  Martin Rudalics  <rudalics@gmx.at>
2229         Avoid division by zero crash observed by Yuan MEI
2231         See http://lists.gnu.org/archive/html/emacs-devel/2015-11/msg00194.html.
2233         * src/dispnew.c (required_matrix_height, required_matrix_width):
2234         Avoid division by zero.
2235         * src/xterm.c (x_term_init): Init dpyinfo->smallest_font_height and
2236         dpyinfo->smallest_char_width to 1.
2238 2015-11-06  Eli Zaretskii  <eliz@gnu.org>
2240         Ensure redisplay after "C-x C-e"
2242         * lisp/progmodes/elisp-mode.el (elisp--eval-last-sexp): Make sure
2243         redisplay happens to account for any side effects of the evaluated
2244         sexp.  (Bug#21835)
2246 2015-11-06  Michael Albinus  <michael.albinus@gmx.de>
2248         Skip some file notification tests for cygwin
2250         * test/automated/file-notify-tests.el (file-notify--test-with-events):
2251         Remove argument TIMEOUT.  Adapt all callees.
2252         (file-notify-test02-events, file-notify-test04-file-validity):
2253         Skip for cygwin.  (Bug#21804)
2255 2015-11-05  Stephen Leake  <stephen_leake@stephe-leake.org>
2257         * lisp/progmodes/xref.el: Require semantic/symref during compilation.
2259 2015-11-05  Daiki Ueno  <ueno@gnu.org>
2261         Suppress redundant Pinentry startup messages
2263         * lisp/net/pinentry.el (pinentry-start): Add optional QUIET argument.
2264         * lisp/epg.el: Declare `pinentry-start'.
2265         (epg--start): Call `pinentry-start' with QUIET argument set.
2267 2015-11-05  Xue Fuqiao  <xfq.free@gmail.com>
2269         * doc/emacs/ack.texi (Acknowledgments): Updates.
2271 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
2273         * test/automated/elisp-mode-test.el: Silence some run-time warnings.
2274         (xref-elisp-deftest): Bind `find-file-suppress-same-file-warnings' to t.
2276 2015-11-05  Tassilo Horn  <tsdh@gnu.org>
2278         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
2279         Add prettification support for \times.
2281 2015-11-05  Juanma Barranquero  <lekktu@gmail.com>
2283         * test/automated/process-tests.el: Skip tests when bash is unavailable.
2284         (process-test-sentinel-accept-process-output)
2285         (process-test-sentinel-sit-for): skip-unless bash executable found.
2287 2015-11-05  Eli Zaretskii  <eliz@gnu.org>
2289         Add test for bug #21831
2291         * test/automated/process-tests.el
2292         (start-process-should-not-modify-arguments): New test.  (Bug#21831)
2293         Suggested by Nicolas Richard <youngfrog@members.fsf.org>
2295 2015-11-04  Stefan Monnier  <monnier@iro.umontreal.ca>
2297         * lisp/emacs-lisp/eieio-compat.el: Typo caught by tests.
2299         (eieio--generic-static-object-generalizer): Fix typo.
2300         * test/automated/eieio-tests.el: Byte-compile it again.  It looks
2301         like the underlying cause of bug#17852 was fixed in the mean time.
2303 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2305         Revert "* lisp/subr.el (when): Use `macroexp-progn'"
2307         This reverts commit 8e843831eaf271801836b7a3e4dd3b4fb0bb72b8.
2308         It breaks bootstrapping (duh).
2310 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2312         * lisp/files.el (report-errors): Obsolete.
2314         (normal-mode, hack-local-variables, dir-locals-find-file):
2315         Use `with-demoted-errors' instead.
2317 2015-11-04  Artur Malabarba  <bruce.connor.am@gmail.com>
2319         * lisp/subr.el (when): Use `macroexp-progn'.
2321         * test/automated/subr-tests.el (subr-test-when): New test.
2323 2015-11-04  Juanma Barranquero  <lekktu@gmail.com>
2325         * lisp/progmodes/xref.el: Doc fixes.
2326         (xref-make-file-location, xref-make-buffer-location, xref-make)
2327         (xref-make-bogus-location, xref-make-match): Add cross-references.
2328         (xref--insert-xrefs): Fix typo in docstring.
2330 2015-11-04  Anders Lindgren  <andlind@gmail.com>
2332         Render fringe bitmaps correctly on NextStep (bug#21301)
2334         The fringe bitmaps were inverted, the background was not transparent,
2335         the image data was horizontally mirrored, and periodic fringe bitmaps
2336         were not supported.
2338         * src/nsimage.m ([EmacsImage initFromXBM:width:height:fg:bg:]):
2339         When both background and foreground colors are 0, set the background
2340         alpha channel to 0 (making the background transparent).  When
2341         copying the image data, do this from the most significant bit
2342         (leftmost) to the least (rightmost), to avoid mirroring.
2343         * src/nsterm.m (ns_draw_fringe_bitmap): Don't invert the image bits.
2344         Add support for periodic images (e.g. the empty line indicator).
2346 2015-11-03  Michael Heerdegen  <michael_heerdegen@web.de>
2348         * lisp/emacs-lisp/pcase.el (pcase): Tweak docstring.
2350 2015-11-03  Nicolas Petton  <nicolas@petton.fr>
2352         * admin/MAINTAINERS: Add seq-tests.el, map-tests.el, and thunk-tests.el.
2354         * admin/MAINTAINERS: Add thunk.el.
2356 2015-11-03  Jay Belanger  <jay.p.belanger@gmail.com>
2358         * lisp/calc/calc (calc-bug-address): Change maintainer address.
2360 2015-11-03  Michael Albinus  <michael.albinus@gmx.de>
2362         Fix a stupid error in gfilenotify.c
2364         * src/gfilenotify.c (dir_monitor_callback): Cancel monitor only,
2365         if we've got a `deleted' signal AND the file name is the watched one.
2367 2015-11-03  Stephen Leake  <stephen_leake@stephe-leake.org>
2369         Fix Bug#21816; case insensitive file system in elisp-mode-tests.el
2371         * test/automated/elisp-mode-tests.el (xref-elisp-test-run):
2372         Use case-insensitive string compare for file names.
2373         (emacs-test-dir): Add 'downcase' to cause case differences (at
2374         least on my system).
2376 2015-11-02  Juanma Barranquero  <lekktu@gmail.com>
2378         flymake-tests.el (warning-predicate-rx-gcc): Fix check
2380         * test/automated/flymake-tests.el (warning-predicate-rx-gcc):
2381         Also check that "make" is available, not just "gcc".
2383 2015-11-02  Ken Brown  <kbrown@cornell.edu>
2385         Document behavior of collation on Cygwin
2387         * test/automated/fns-tests.el (fns-tests-collate-sort): Mark as
2388         expected failure on Cygwin.
2389         * doc/lispref/strings.texi (Text Comparison): Document that
2390         punctuation and whitespace are not ignored for sorting on Cygwin.
2392 2015-11-02  Dani Moncayo  <dmoncayo@gmail.com>
2394         * build-aux/msys-to-w32: Prevent double slashes in w32 path list.
2396 2015-11-01  Glenn Morris  <rgm@gnu.org>
2398         * lisp/progmodes/f90.el (f90-no-block-limit): Add associate.
2399         (Bug#21794)
2400         * test/automated/f90.el (f90-test-bug21794): New test.
2402 2015-11-01  Juanma Barranquero  <lekktu@gmail.com>
2404         Fix incompatibility with TCC in test for bug#18745
2406         * test/automated/process-tests.el (process-test-quoted-batfile):
2407         Remove spaces unrelated to the bug being tested.
2409 2015-11-01  Michael Albinus  <michael.albinus@gmx.de>
2411         Improve completion in tramp-gvfs.el
2413         * lisp/net/tramp-gvfs.el (tramp-zeroconf-parse-device-names):
2414         Rename from `tramp-zeroconf-parse-service-device-names'.
2415         (tramp-zeroconf-parse-webdav-device-names): Remove.  Code merged
2416         with `tramp-zeroconf-parse-device-names'.
2417         (tramp-gvfs-parse-device-names): New defun.
2418         (top): Use it when `tramp-zeroconf-parse-device-names' is not
2419         applicable.
2421         * lisp/net/tramp.el (tramp-set-completion-function): The argument
2422         could also be a zeroconf service type.
2424 2015-10-31  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
2426         * lisp/net/ntlm.el: Change version to 2.0.0.
2428 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2430         Fix bug#21762
2431         * lisp/progmodes/python.el (python-syntax-closing-paren-p): Check with
2432         `eql' instead of `=' to accommodate the case that (syntax-after (point))
2433         returns nil.
2434         * test/automated/python-tests.el (python-indent-inside-paren-7):
2435         New test.
2437 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2439         * test/automated/python-tests.el: Avoid warnings.
2440         (python-tests-with-temp-buffer, python-tests-with-temp-file):
2441         Bind `python-indent-guess-indent-offset' to nil.
2443 2015-10-31  Juanma Barranquero  <lekktu@gmail.com>
2445         * src/alloc.c: Silence compiler warnings.
2446         (pointers_fit_in_lispobj_p, mmap_lisp_allowed_p): #ifdef DOUG_LEA_MALLOC.
2448 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
2450         * etc/NEWS: Fix js-jsx-mode entry punctuation.
2452 2015-10-31  Jackson Ray Hamilton  <jackson@jacksonrayhamilton.com>
2454         Add JSX indentation via js-jsx-mode  (Bug#21799)
2456         * progmodes/js.el: Add JSX indentation support.
2457         (js--jsx-end-tag-re)
2458         (js--jsx-after-tag-re): New variables.
2459         (js--jsx-find-before-tag)
2460         (js--jsx-indented-element-p)
2461         (js--as-sgml)
2462         (js--expression-in-sgml-indent-line)
2463         (js-jsx-indent-line)
2464         (js-jsx-mode): New functions.
2465         * test/indent/js-jsx.el: New file.
2466         * etc/NEWS: Add information about js-jsx-mode.
2468 2015-10-31  Michael Albinus  <michael.albinus@gmx.de>
2470         Minor fix in filenotify.el
2472         * lisp/filenotify.el (file-notify--event-file-name)
2473         (file-notify--event-file1-name): Normalize result with
2474         `directory-file-name'.
2476 2015-10-31  Eli Zaretskii  <eliz@gnu.org>
2478         Avoid errors in redisplay--pre-redisplay-functions
2480         * lisp/emacs-lisp/cursor-sensor.el (cursor-sensor--detect): Don't
2481         use 'bobp', instead compare window-point with 1.  (Bug#21730)
2483 2015-10-30  Paul Eggert  <eggert@cs.ucla.edu>
2485         Merge from gnulib
2487         This incorporates:
2488         2015-10-30 intprops: add WRAPV and const flavors for GCC 5
2489         2015-10-25 stdalign: port to Sun C 5.9
2490         * doc/misc/texinfo.tex, lib/intprops.h, lib/stdalign.in.h:
2491         Copy from gnulib.
2493 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
2495         * src/w32proc.c (_NLSCMPERROR): Fix a typo in the name of this macro.
2496         (w32_compare_strings): Adjust for the correction.
2498 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
2500         * test/automated/vc-tests.el (vc-test--state)
2501         (vc-test--working-revision, vc-test--checkout-model):
2502         Add result messages.
2504 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2506         * test/automated/faces-tests.el: Add another test
2508 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2510         * lisp/faces.el (faces--attribute-at-point): Fix bug
2511         introduced by previous commit.
2513 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2515         * test/automated/faces-tests.el: New file.
2517 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2519         * lisp/faces.el: Refactor common code and fix a bug.
2520         (faces--attribute-at-point): New function.  Fix a bug when the
2521         face at point is a list of faces and the desired attribute is not
2522         on the first one.
2523         (foreground-color-at-point, background-color-at-point): Use it.
2525 2015-10-30  Przemysław Wojnowski  <esperanto@cumego.com>
2527         * etc/tutorials/TUTORIAL.translators: Fix PL names.
2529 2015-10-30  Juanma Barranquero  <lekktu@gmail.com>
2531         * lisp/character-fold.el: Provide `character-fold'.
2533 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
2535         * etc/themes/tsdh-dark-theme.el (tsdh-dark): Add more faces
2536         for Gnus and ivy.
2538 2015-10-30  Michael Albinus  <michael.albinus@gmx.de>
2540         Some minor fixes for tramp-gvfs.el
2542         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
2543         An attribute returned by gvfs-info might be empty.  In case of
2544         undetermined uid or gid, return "UNKNOWN" or -1, respectively.
2545         (tramp-zeroconf-parse-service-device-names): New defun.
2546         Derived from `tramp-zeroconf-parse-workstation-device-names'.
2547         (top): Add completion functions for "afp" and "smb" methods.
2549 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2551         * test/automated/character-fold-tests.el: New file
2553 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2555         * test/automated/sort-tests.el: New file.
2556         Tests in this file are randomly generated and then tested with
2557         regular, reverse, and case-fold sorting.
2559 2015-10-30  Eli Zaretskii  <eliz@gnu.org>
2561         Describe known problems with pinning Emacs to taskbar
2563         * etc/PROBLEMS: Describe the problem with pinning Emacs to taskbar
2564         on Windows 10.  For the details, see the discussion starting at
2565         http://lists.gnu.org/archive/html/help-emacs-windows/2015-09/msg00000.html.
2567 2015-10-30  Artur Malabarba  <bruce.connor.am@gmail.com>
2569         * lisp/isearch.el: Avoid an error that blocks isearch.
2570         (isearch-update): Don't error if `isearch--current-buffer' has
2571         been killed.
2573         * test/automated/isearch-tests.el (isearch--test-update):
2574         New file.
2576 2015-10-30  Phil Sainty  <psainty@orcon.net.nz>
2578         Fix documentation of 'beginning/end-of-buffer'
2580         * lisp/simple.el (beginning-of-buffer, end-of-buffer): Clarify
2581         conditions under which the mark will be pushed at the previous
2582         position.  (Bug#21748)
2584 2015-10-30  Tassilo Horn  <tsdh@gnu.org>
2586         Add RefTeX feature idea: editing RefTeX TOC buffers
2588         More face defs for ivy, swiper, ace-window, eshell
2590 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2592         * lisp/gnus/auth-source.el: Silence lexical-binding warnings.
2593         (auth-source-netrc-use-gpg-tokens): Simplify (symbol-value 'VAR) to
2594         just VAR.
2595         (auth-source-backend-parse): Use make-instance.
2596         (auth-source-search): Remove unused key args.
2597         Remove unused vars `accessor-key' and `backend'.  Avoid `eval'.
2598         (auth-source-search-backends): Use slot names rather than their initarg.
2599         (auth-source-netrc-create):
2600         (auth-source-delete):
2601         (auth-source-secrets-create, auth-source-plstore-search)
2602         (auth-source-macos-keychain-create, auth-source-macos-keychain-search)
2603         (auth-source-plstore-create, auth-source-netrc-search)
2604         (auth-source-netrc-parse): Remove unused key args.
2605         (auth-source-forget+): Simplify the arglist.
2606         (auth-source-macos-keychain-search-items)
2607         (auth-source-token-passphrase-callback-function): Mark unused args.
2608         (auth-source-epa-extract-gpg-token): Remove unused var `plain'.
2609         (pp-escape-newlines): Declare.
2610         (auto-source--symbol-keyword): New function.
2611         (auth-source-plstore-create, auth-source-netrc-create)
2612         (auth-source-netrc-normalize): Use it.
2613         (auth-source-netrc-search): Don't pass :delete to
2614         auth-source-netrc-parse since it doesn't use it.
2615         (auth-source-plstore-create, auth-source-netrc-create): Use plist-get
2616         symbol-value to index in keyword args.
2617         (auth-source-macos-keychain-result-append): Avoid setq.
2618         (auth-source-netrc-create): Remove unused vars `file' and `add'.
2619         (auth-source-user-or-password): Remove unused var `cname'.
2621 2015-10-29  Juri Linkov  <juri@linkov.net>
2623         * lisp/dired.el (dired-unmark-all-files-query): Declare.
2624         (dired-unmark-all-files): Let-bind it and use instead of ‘query’.
2625         (Bug#21746)
2627 2015-10-29  Juri Linkov  <juri@linkov.net>
2629         * lisp/ielm.el (ielm-indent-line): Use non-nil arg of comint-bol
2630         to go to the beginning of text line instead of command line.
2631         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02360.html
2633 2015-10-29  Eli Zaretskii  <eliz@gnu.org>
2635         Fix encoding of saving *Help* buffers
2637         * lisp/help-fns.el (describe-function-1): If we use curved quotes,
2638         set help buffer's buffer-file-coding-system to UTF-8.  (Bug#21780)
2640 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2642         * lisp/emacs-lisp/cl-generic.el: Add (major-mode MODE) context.
2643         (cl--generic-derived-specializers): New function.
2644         (cl--generic-derived-generalizer): New generalizer.
2645         (cl-generic-generalizers): New specializer (derived-mode MODE).
2646         (cl--generic-split-args): Apply the rewriter, if any.
2647         (cl-generic-define-context-rewriter): New macro.
2648         (major-mode): Use it to define a new context-rewriter, so we can write
2649         `(major-mode MODE)' instead of `(major-mode (derived-mode MODE))'.
2651         * lisp/frame.el (window-system): New context-rewriter so we can write
2652         `(window-system VAL)' instead of (window-system (eql VAL)).
2653         (cl--generic-split-args): Apply the rewriter, if any.
2654         (frame-creation-function): Use the new syntax.
2656         * lisp/term/x-win.el (window-system-initialization)
2657         (handle-args-function, frame-creation-function)
2658         (gui-backend-set-selection, gui-backend-selection-owner-p)
2659         (gui-backend-selection-exists-p, gui-backend-get-selection):
2660         * lisp/term/w32-win.el (window-system-initialization)
2661         (handle-args-function, frame-creation-function)
2662         (gui-backend-set-selection, gui-backend-get-selection)
2663         (gui-backend-selection-owner-p, gui-backend-selection-exists-p):
2664         * lisp/term/pc-win.el (gui-backend-get-selection)
2665         (gui-backend-selection-exists-p, gui-backend-selection-owner-p)
2666         (gui-backend-set-selection, window-system-initialization)
2667         (frame-creation-function, handle-args-function):
2668         * lisp/term/ns-win.el (window-system-initialization)
2669         (handle-args-function, frame-creation-function)
2670         (gui-backend-set-selection, gui-backend-selection-exists-p)
2671         (gui-backend-get-selection):
2672         * lisp/startup.el (handle-args-function):
2673         * lisp/term/xterm.el (gui-backend-get-selection)
2674         (gui-backend-set-selection): Use the new syntax.
2676 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2678         * test/indent/css-mode.css: Add tests for url(...) syntax.
2680 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2682         * lisp/emacs-lisp/smie.el: Use `declare' for `pure'.
2683         (smie-precs->prec2, smie-merge-prec2s, smie-bnf->prec2)
2684         (smie-prec2->grammar): Use `declare'.
2686 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2688         * lisp/emacs-lisp/cl-generic.el: Accommodate future changes.
2689         (cl--generic-generalizer): Add `name' field.
2690         (cl-generic-make-generalizer): Add corresponding `name' argument.
2691         (cl-generic-define-generalizer): New macro.
2692         (cl--generic-head-generalizer, cl--generic-eql-generalizer)
2693         (cl--generic-struct-generalizer, cl--generic-typeof-generalizer)
2694         (cl--generic-t-generalizer): Use it.
2695         (cl-generic-ensure-function): Add `noerror' argument.
2696         (cl-generic-define): Use it so we don't follow aliases.
2697         (cl-generic-define-method): Preserve pre-existing ordering of methods.
2698         (cl--generic-arg-specializer): New function.
2699         (cl--generic-cache-miss): Use it.
2700         (cl-generic-generalizers): Only fset a temporary definition
2701         during bootstrap.
2702         (cl--generic-struct-tag, cl--generic-struct-specializers):
2703         Allow extra arguments.
2705         * lisp/emacs-lisp/eieio-compat.el
2706         (eieio--generic-static-symbol-generalizer)
2707         (eieio--generic-static-object-generalizer):
2708         Use cl-generic-define-generalizer.
2709         (eieio--generic-static-symbol-specializers): Allow extra arguments.
2711         * lisp/emacs-lisp/eieio-core.el (eieio--generic-generalizer)
2712         (eieio--generic-subclass-generalizer):
2713         Use cl-generic-define-generalizer.
2714         (eieio--generic-subclass-specializers): Allow extra arguments.
2716 2015-10-29  Stefan Monnier  <monnier@iro.umontreal.ca>
2718         * lisp/emacs-lisp/bytecomp.el (compile-defun): Add defvars in scope.
2720 2015-10-29  Michael Albinus  <michael.albinus@gmx.de>
2722         Add "afp" method to Tramp
2724         * doc/misc/tramp.texi (GVFS based methods): Describe `afp' method.
2726         * lisp/net/tramp-gvfs.el (tramp-gvfs-methods): Add "afp" method.
2727         (tramp-gvfs-handle-expand-file-name)
2728         (tramp-gvfs-handler-mounted-unmounted)
2729         (tramp-gvfs-connection-mounted-p, tramp-gvfs-mount-spec)
2730         (tramp-gvfs-maybe-open-connection): Support also "afp".
2731         (tramp-gvfs-handle-file-attributes): Handle the case of empty
2732         "owner::user" and "owner::group" entries.
2734 2015-10-29  Andy Moreton  <andrewjmoreton@gmail.com>
2736         Handle negative coordinates in ‘x_calc_absolute_position’
2738         * src/w32term.c (x_calc_absolute_position): Find display origin to
2739         allow for negative coordinates.
2741 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
2743         (internal--syntax-propertize): Save match-data here (bug#21766)
2745         * lisp/emacs-lisp/syntax.el (internal--syntax-propertize): Save match-data.
2746         * lisp/simple.el (delete-trailing-whitespace): Undo last change.
2748 2015-10-28  Dmitry Gutov  <dgutov@yandex.ru>
2750         Don't require default-directory to end with a slash
2752         * doc/lispref/files.texi (Magic File Names): Document the change
2753         in unhandled-file-name-directory.
2755         * lisp/url/url-handlers.el
2756         (url-handler-unhandled-file-name-directory): Update accordingly.
2758         * src/buffer.c (default-directory): Update the docsting.
2760         * src/fileio.c (unhandled-file-name-directory): Default to calling
2761         `file-name-as-directory'
2762         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02294.html).
2764 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2766         * lisp/isearch.el: Delete some outdated comments.
2768 2015-10-28  Vibhav Pant  <vibhavp@gmail.com>
2770         Fix eshell/clear not working if the output has a small line count
2772         * lisp/eshell/esh-mode.el (eshell/clear): Use (window-size) as the
2773         number of newlines to be inserted. This fixes the issue where
2774         eshell/clear wouldn't work if the prompt was not at the bottom of the
2775         window, and the output wasn't too long.
2777 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
2779         * lisp/files.el (write-file): Use vc-refresh-state.
2781         * lisp/autorevert.el (auto-revert-handler): Use vc-refresh-state.
2783         * lisp/vc/pcvs.el (cvs-revert-if-needed): Use vc-refresh-state.
2785 2015-10-28  Stefan Monnier  <monnier@iro.umontreal.ca>
2787         * lisp/emacs-lisp/macroexp.el: Tweak macroexp-if optimizations.
2788         (macroexp-unprogn): Make sure we never return an empty list.
2789         (macroexp-if): Remove unused (and unsafe) optimization.
2790         Optimize (if A T (if B T E)) into (if (or A B) T E) instead, which does
2791         occur occasionally.
2793 2015-10-28  Juanma Barranquero  <lekktu@gmail.com>
2795         Fix bug#21766 and add test
2796         * lisp/simple.el (delete-trailing-whitespace): Save match data when
2797         calling `skip-syntax-backward'.
2798         * test/automated/simple-test.el (simple-delete-trailing-whitespace):
2799         New test.
2801 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2803         * doc/lispref/sequences.texi (Sequence Functions): Fix typo.
2805 2015-10-28  Paul Eggert  <eggert@cs.ucla.edu>
2807         * src/dispnew.c (init_display): Simplify overflow checking.
2809 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2811         * lisp/character-fold.el (character-fold-to-regexp): Fix case
2812         where string ends in space
2814 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2816         * lisp/emacs-lisp/seq.el (seq-mapn): New function.
2818         * doc/lispref/sequences.texi (Sequence Functions): Document seq-mapn.
2820 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2822         * lisp/character-fold.el: Make compatible with lax-whitespace.
2823         (character-fold-to-regexp): Rework internals to play nice with
2824         lax-whitespacing.
2826         When the user types a space, we want to match the table entry for
2827         ?\s, which is generally a regexp like "[ ...]".  However, the
2828         `search-spaces-regexp' variable doesn't "see" spaces inside these
2829         regexp constructs, so we need to use "\\( \\|[ ...]\\)" instead (to
2830         manually expose a space).
2832         Furthermore, the lax search engine acts on a bunch of spaces, not
2833         on individual spaces, so if the string contains sequential spaces
2834         like "  ", we need to keep them grouped together like this:
2835         "\\(  \\|[ ...][ ...]\\)".
2837 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2839         * lisp/isearch.el: Refactor momentary messages.
2840         (isearch--momentary-message): New function.
2841         (isearch-toggle-lax-whitespace, isearch-toggle-case-fold)
2842         (isearch-toggle-invisible): Use it.
2844 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2846         * lisp/isearch.el: Define all toggles with `isearch-define-mode-toggle'.
2847         (isearch-define-mode-toggle): New macro.
2848         (isearch-toggle-invisible): Rename to
2849         `isearch-define-mode-toggle'.
2850         (isearch-toggle-case-fold, isearch-toggle-invisible)
2851         (isearch-toggle-regexp, isearch-toggle-lax-whitespace): Define
2852         with `isearch-define-mode-toggle'.
2854 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
2856         Avoid using `add-to-list' on a let-local var in tramp-smb.el
2858         * lisp/net/tramp-compat.el (tramp-compat-delete-dups): New defun.
2859         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files): Use it.
2861 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2863         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
2865         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
2867         Merge branch 'master' of /Volumes/HD2/build/emacs-git-ssh
2869 2015-10-28  Michael Albinus  <michael.albinus@gmx.de>
2871         * lisp/net/tramp-smb.el (tramp-smb-handle-directory-files):
2872         Revert 692bce5b9eccfae19ae2a5a23a9ccd8d6bf86076, `delete-dups'
2873         does not exist in XEmacs 21.4.
2875 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2877         Fixed OS X startup crash
2879         Input events started to arrive before ns_term_init() was finished.
2880         Solved by blocking input.  This also seems to correct the "You
2881         can't open the application "Emacs" because it may be damaged or
2882         incomplete" error issued when double-clicking on the Emacs
2883         application.
2885         * nsterm.m (ns_constrain_all_frames, ns_init_term): Block input.
2886         * nsterm.m (ns_send_appdefined, EmacsApp): Trace output.
2888 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2890         Merge branch 'master' of ssh://git.sv.gnu.org/srv/git/emacs
2892 2015-10-28  Artur Malabarba  <bruce.connor.am@gmail.com>
2894         * src/process.c (Fget_buffer_process): Improve docstring.
2895         Document the fact that it doesn't return dead processes.
2897 2015-10-28  Anders Lindgren  <andlind@gmail.com>
2899         Fix incorrect NextStep tool-bar-mode -- wrong number of rows in frame.
2901         * nsterm.h (struct ns_output): New flag, in_animation.
2902         * nsfns.m (Fx_create_frame): Initialize in_animation flag.
2903         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar): Set
2904         in_animation flag around call to "setVisible". Set new tool bar
2905         height before call to setVisible.
2906         * nsterm.m (x_set_window_size): Don't call [view setRow:
2907         andColumns:] as this fools the subsequent call to updateFrameSize
2908         from performing the real resize.
2909         (windowDidResize): Don't update anything when in_animation is
2910         non-zero.
2912         Trace output.
2914         * nsmenu.m (free_frame_tool_bar, update_frame_tool_bar)
2915         (EmacsToolbar):
2916         * nsterm.m (x_set_window_size, updateFrameSize)
2917         ([EmacsView setRows: andColumns:])
2919 2015-10-28  Nicolas Petton  <nicolas@petton.fr>
2921         * lisp/emacs-lisp/thunk.el (thunk-delay): Fix the macro.
2923 2015-10-28  Tassilo Horn  <tsdh@gnu.org>
2925         Prettify TeX macros not ending in a word char
2927         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
2928         Prettify macros which don't end in a word character.
2930 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
2932         Pipe Hg commit descriptions through 'tabindent'
2934         * lisp/vc/vc-hg.el (vc-hg-log-format): Pipe commit description
2935         through 'tabindent'.
2936         (vc-hg-log-view-mode): Set tab-width to 2 locally.
2937         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02259.html)
2939 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2941         * lisp/net/tramp-smb.el: Avoid using `add-to-list' on a let-local var.
2942         (tramp-smb-handle-directory-files): Use `delete-dups'.
2944         * lisp/net/tramp.el (auto-save-file-name-transforms): Declare.
2946 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2948         * lisp/international/ccl.el: Use lexical-binding.
2949         (ccl-compile-if): Remove unused var `false-ic'.
2950         (ccl-compile-write-repeat): Remove unused var `i'.
2951         (ccl-compile-map-single): Remove unused var `id'.
2952         (ccl-dump, ccl-dump-binary): Use explicit let-binding to bind the
2953         dynamic var `ccl-code'.
2955 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2957         * lisp/json.el (json-new-object): Optimize trivial `list' call.
2959 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2961         * lisp/help.el: Fix bug with incorrect arglist string.
2962         (help-add-fundoc-usage): Don't mistake a mis-formatted string
2963         for a list.
2965 2015-10-27  Stefan Monnier  <monnier@iro.umontreal.ca>
2967         * lisp/gnus/gnus-topic.el: Silence some warnings.
2968         (gnus-topic-prepare-topic): Remove unused var `topic'.
2969         (gnus-topic-remove-topic): Mark unused arg `hide'.
2970         (gnus-tmp-header): Declare.
2971         (gnus-topic-goto-missing-group): Remove unused var `entry'.
2972         (gnus-topic-unmark-topic): Mark unused arg `dummy'.
2973         (gnus-topic-copy-matching): Mark unused arg `copyp'.
2974         Move initialization of `topic' into its declaration.
2976 2015-10-27  Stephen Leake  <stephen_leake@stephe-leake.org>
2978         Minor CEDET fixes
2980         * lisp/cedet/cedet-global.el (cedet-gnu-global-gtags-call):
2981         Handle warnings from gtags about invalid options.
2982         (cedet-gnu-global-create/update-database): Do incremental update
2983         properly.
2985         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
2986         Get monotone root right.
2988 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
2990         Fall back to polling in autorevert when needed
2992         * lisp/autorevert.el (auto-revert-notify-handler): When a
2993         `stopped' event arrives from file notification, fall back to polling.
2995         * test/automated/file-notify-tests.el
2996         (file-notify-test03-autorevert): Extend test for polling when file
2997         notification ceases to work.
2999 2015-10-27  Dmitry Gutov  <dgutov@yandex.ru>
3001         Show full commit messages in 'hg log' when appropriate
3003         * lisp/vc/vc-hg.el (vc-hg-log-format): New variable.
3004         (vc-hg-print-log, vc-hg-expanded-log-entry): Use it.
3005         (http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg02191.html)
3007 2015-10-27  Nicolas Petton  <nicolas@petton.fr>
3009         Use a plain SVG file for the icon
3011         * etc/images/icons/hicolor/scalable/apps/emacs.svg: Use a plain SVG
3012           format instead of the Inkscape SVG format.
3014 2015-10-27  Michael Albinus  <michael.albinus@gmx.de>
3016         Fix subtle bug in auto-revert-tests.el
3018         * test/automated/auto-revert-tests.el
3019         (auto-revert-test02-auto-revert-mode-dired): Narrow *Messages*
3020         buffer where it belongs to.  (Bug#21668)
3022 2015-10-26  Nicolas Petton  <nicolas@petton.fr>
3024         * lisp/emacs-lisp/map.el: Better docstrings.
3026         * lisp/emacs-lisp/seq.el: Better docstrings.
3028         * lisp/emacs-lisp/seq.el: Rename all seq arguments to sequence.
3030 2015-10-26  Phillip Lord  <phillip.lord@russet.org.uk>
3032         * lisp/emacs-lisp/ert.el: Print results without newline escaping.
3034 2015-10-26  Stephen Leake  <stephen_leake@stephe-leake.org>
3036         Clarify that load-path contents should be directory file names
3038         * doc/lispref/files.texi (Directory Names): Define and use "directory
3039         file name".  Recommend `expand-file-name'.
3041         * src/lread.c (load-path): Fix doc string; elements are directory file
3042         names.
3044 2015-10-26  Eli Zaretskii  <eliz@gnu.org>
3046         Fix simple-test.el test
3048         * test/automated/simple-test.el (simple-test--dummy-buffer):
3049         Make sure indentation doesn't use TABs, otherwise the 6th test
3050         might fail.
3052 2015-10-26  Mark Oteiza  <mvoteiza@udel.edu>
3054         * lisp/net/eww.el (eww-bookmark-prepare): Use truncate-string-to-width.
3055         `substring' does not account for full width characters.
3057 2015-10-26  Michael Albinus  <michael.albinus@gmx.de>
3059         Further work on `stopped' events in filenotify.el
3061         * doc/lispref/os.texi (File Notifications): Rework examples.
3063         * lisp/filenotify.el (file-notify--rm-descriptor): Optional parameter.
3064         (file-notify--rm-descriptor, file-notify-callback): Improve check
3065         for sending `stopped' event.
3066         (file-notify-add-watch): Check for more events for `inotify'.
3068         * test/automated/file-notify-tests.el
3069         (file-notify--test-expected-events): New defvar.
3070         (file-notify--test-with-events): Use it.
3071         (file-notify--test-cleanup): Make it more robust when deleting
3072         directories.
3073         (file-notify--test-event-test): Check also for watched directories.
3074         (file-notify--test-event-handler): Suppress temporary .#files.
3075         (file-notify-test02-events, file-notify-test04-file-validity):
3076         Rework `stopped' events.
3077         (file-notify-test05-dir-validity): Wait for events when appropriate.
3079 2015-10-26  Artur Malabarba  <bruce.connor.am@gmail.com>
3081         * src/keyboard.c (post-command-hook): Shorten docstring.
3083 2015-10-26  Tassilo Horn  <tsdh@gnu.org>
3085         Fix infinite loop in sh-script's SMIE code
3087         * lisp/progmodes/sh-script.el (sh-smie-sh-forward-token): Fix infinite
3088         loop (bug#21747).
3090 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3092         * lisp/isearch.el (search-default-regexp-mode): Revert to nil.
3093         Character-fold search _still_ doesn't play well with
3094         lax-whitespace.  So disable it by default (again) for now.
3096 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3098         * lisp/isearch.el: No visual feedback for default search mode.
3099         During an isearch where character-folding is the default, we don't
3100         want to take up minibuffer space just to tell the user that
3101         "Char-fold " is on.  The same goes for other modes, if the user
3102         changes the default.  In contrast, if the user toggles OFF the
3103         default mode, they should see "Literal", to distinguish it from
3104         the default mode.
3105         (isearch--describe-regexp-mode): Return "" if describing the
3106         default mode, and return "literal " if describing a plain search
3107         and it is not default.
3109 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3111         * test/automated/simple-test.el: New file.
3112         Define tests for `newline' and `open-line'.
3114 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3116         * lisp/simple.el (open-line): Integrate with electric-indent-mode.
3117         Also run `post-self-insert-hook' when called interactively.
3119 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3121         * lisp/simple.el (open-line): Fix docstring.
3122         Also explain apparently redundant line.
3124 2015-10-25  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3125             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
3127         Sync with soap-client repository, version 3.0.1
3129         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
3130         Bump version to 3.0.1.
3132         * lisp/net/soap-client.el, lisp/net/soap-inspect.el: Update home page.
3134 2015-10-25  Eli Zaretskii  <eliz@gnu.org>
3136         * lisp/progmodes/grep.el (grep): Doc fix.  (Bug#21754)
3138 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3140         * src/keyboard.c (post-command-hook): Extend the docstring.
3141         Mainly, explain how to use it without hanging Emacs, or giving the
3142         impression that it is hanging.  Also mention `pre-command-hook'.
3143         (pre-command-hook): Mention `post-command-hook'.
3145 2015-10-25  Artur Malabarba  <bruce.connor.am@gmail.com>
3147         * lisp/custom.el (custom-declare-variable): Shorten code again.
3148         Without using pcase this time.  We can't use pcase because it is
3149         loaded after custom in loadup.el.  Also add a comment explaining
3150         this to future dummies like me.
3152 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
3154         * doc/lispref/os.texi (File Notifications): Document `stopped event'.
3156 2015-10-25  Michael Albinus  <michael.albinus@gmx.de>
3158         Introduce `stopped' event in file notification
3160         * lisp/filenotify.el (file-notify--rm-descriptor): New defun.
3161         (file-notify-rm-watch): Use it.
3162         (file-notify-callback): Implement `stopped' event.
3163         (file-notify-add-watch): Mention `stopped' in the docstring.
3164         Check, that upper directory exists.
3166         * test/automated/file-notify-tests.el (file-notify-test01-add-watch):
3167         Add two test cases.
3168         (file-notify-test02-events): Handle also `stopped' event.
3169         (file-notify-test04-file-validity): Add another test case.
3171 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
3173         Revert commit that broke 'make bootstrap'
3175         * lisp/custom.el (custom-declare-variable): Revert commit
3176         79fac080d277fed07b3c192890ad59d36d9f83b6.  custom.el needs to work
3177         even when pcase has not been defined yet, when doing bootstrapping.
3179 2015-10-25  Paul Eggert  <eggert@cs.ucla.edu>
3181         Port recent inline functions fix to Standard C
3183         * src/lisp.h (LISP_MACRO_DEFUN, LISP_MACRO_DEFUN_VOID): Remove.
3184         All uses rewritten to define the function directly rather than to
3185         use a macro to define the function.  This conforms to Standard C,
3186         which does not allow stray semicolons at the top level.  I hope it
3187         also avoids the problems with TAGS.  Those macros, though clever,
3188         were pretty confusing anyway, and it wasn’t clear they were worth
3189         the aggravation even without the TAGS problem.
3191 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3193         * lisp/isearch.el: Make character-fold search the default again.
3195 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3197         * lisp/character-fold.el: Many improvements.
3198         (character-fold-search-forward, character-fold-search-backward):
3199         New command.
3200         (character-fold-to-regexp): Remove lax-whitespace hack.
3201         (character-fold-search): Remove variable.  Only isearch and
3202         query-replace use char-folding, and they both have their own
3203         variables to configure that.
3205 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3207         * lisp/isearch.el: Generalize definition of regexp-function toggles.
3208         (isearch-specify-regexp-function): New macro for specifying
3209         possible values of `isearch-regexp-function'.
3210         (isearch-toggle-character-fold, isearch-toggle-symbol)
3211         (isearch-toggle-word): Define with `isearch-specify-regexp-function'.
3213 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3215         * lisp/isearch.el (search-default-regexp-mode): New variable.
3216         (isearch-mode): Use it.
3218 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3220         * lisp/isearch.el (search-exit-option, search-slow-window-lines)
3221         (search-slow-speed, search-upper-case)
3222         (search-nonincremental-instead, search-whitespace-regexp)
3223         (search-invisible, isearch-hide-immediately)
3224         (isearch-resume-in-command-history, search-ring-max)
3225         (regexp-search-ring-max, search-ring-update, search-highlight)
3226         (isearch-fail): Delete :group entries.
3228 2015-10-24  Artur Malabarba  <bruce.connor.am@gmail.com>
3230         * lisp/custom.el (custom-declare-variable): Shorten code a bit.
3232 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3234         addpm.c: Silence some warnings.
3236         * nt/addpm.c (DdeCommand): Cast pData argument of DdeClientTransaction
3237         to LPBYTE.
3238         (add_registry): Pass NULL to optional lpClass argument of
3239         RegCreateKeyEx, not an empty string.
3241 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3243         addpm.c: Do not add obsolete GTK libraries to the path.
3245         * nt/addpm.c (REG_GTK, REG_RUNEMACS_PATH): Delete.
3246         (add_registry): Remove variables `size' and `gtk_key'.
3247         Do not add the GTK DLL directory to the library search path; it is
3248         confusing behavior (in particular, the same Emacs version with and
3249         without invoking addpm will use a different path), and the GTK image
3250         libraries are obsolete anyway.
3252 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3254         addpm.c: Replace existing registry entries, but do not create new ones
3256         * nt/addpm.c (add_registry): If the Emacs registry key exists, replace
3257         existing values from previous versions, but do not add new ones; the
3258         key could exist for other reasons unrelated to old Emacsen, like X-style
3259         resources, or to set some environment variables like HOME or LANG, and
3260         in that case we don't want to populate it with obsolete values.
3262 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3264         * nt/addpm.c (add_registry): Do not compute unused return value.
3266 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3268         addpm.c: Don't pass REG_OPTION_NON_VOLATILE to RegOpenKeyEx
3270         * nt/addpm.c (add_registry): Pass 0 to ulOptions argument of
3271         RegOpenKeyEx, not REG_OPTION_NON_VOLATILE.  This doesn't change
3272         current behavior because REG_OPTION_NON_VOLATILE is defined to
3273         be 0L anyway, but that option is actually documented only for
3274         RegCreateKeyEx.
3276 2015-10-24  Juanma Barranquero  <lekktu@gmail.com>
3278         * src/w32notify.c (Fw32notify_add_watch): Fix version check.
3280 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3282         Update frame title when redisplay scrolls selected window
3284         * src/xdisp.c (redisplay_window): Reconsider the frame's title
3285         when the mode-line of the frame's selected window needs to be
3286         updated.
3288 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3290         Update frame title when scrolling the selected window
3292         * src/window.c (wset_update_mode_line): New function, sets either
3293         the window's update_mode_line flag or the global update_mode_lines
3294         variable.
3295         (Fset_window_start, set_window_buffer, window_scroll_pixel_based)
3296         (window_scroll_line_based): Call it instead of only setting the
3297         window's update_mode_line flag.
3299 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3301         An even better fix for bug#21739
3303         * src/window.c (set_window_buffer): If the window is the frame's
3304         selected window, set update_mode_lines, not the window's
3305         update_mode_line flag.
3306         * src/buffer.c (Fkill_buffer): Undo last change.
3307         (set_update_modelines_for_buf): Function deleted.
3309 2015-10-24  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
3310             Alexandru Harsanyi  <AlexHarsanyi@gmail.com>
3312         Sync with soap-client repository, version 3.0.0
3314         * lisp/net/soap-client.el, lisp/net/soap-inspect.el:
3315         Bump version to 3.0.0.
3317         * lisp/net/soap-inspect.el: Merge in changes from Emacs master branch.
3319         * lisp/net/soap-client.el: Merge in changes from Emacs master branch.
3321         * lisp/net/soap-inspect.el: Shorten first line description.
3323         * lisp/net/soap-client.el: Make a small whitespace fix.
3325         * lisp/net/soap-inspect.el: Update copyright years.
3327         * lisp/net/soap-client.el (soap-encoded-namespaces): Move above
3328         first use in soap-encode-xs-element.
3330         * lisp/net/soap-client.el (soap-type-is-array?): new defun
3331         (soap-encode-xs-element): handle array elements in this function
3332         (soap-encode-xs-complex-type): flag error if asked to encode an
3333         array type, this is handled in `soap-encode-xs-element'
3335         * lisp/net/soap-inspect.el (soap-inspect-xs-attribute-group):
3336         Do not print type for attribute group.
3338         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute-group)
3339         New function.
3340         (soap-inspect-xs-attribute-group): Likewise.
3342         * lisp/net/soap-inspect.el
3343         (soap-resolve-references-for-xs-attribute-group): Resolve
3344         references of attributes in an attribute group.
3346         * lisp/net/soap-client.el (soap-decode-xs-attributes): Process attribute
3347         type directly, not through soap-wsdl-get.
3349         * lisp/net/soap-client.el (soap-xs-parse-attribute): Leave reference
3350         nil if reference attribute is nil.
3352         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
3353         Convert XML schema attributes to xsd:string.
3355         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-attribute):
3356         New function.
3357         (soap-sample-value-for-xs-simple-type): Prepend attributes to result.
3358         (soap-sample-value-for-xs-complex-type): Likewise.
3359         (soap-inspect-xs-attribute): New function.
3360         (soap-inspect-xs-simple-type): Print attributes.
3361         (soap-inspect-xs-complex-type): Likewise.
3363         * lisp/net/soap-inspect.el (soap-resolve-references-for-xs-simple-type):
3364         Resolve references for attributes.
3365         (soap-resolve-references-for-xs-complex-type): Likewise.
3367         * lisp/net/soap-client.el (soap-xml-node-find-matching-child):
3368         Rename from soap-xml-node-first-child.
3369         (soap-xs-parse-attribute): Call soap-xml-node-find-matching-child.
3370         (soap-xs-parse-simple-type): Likewise.
3372         * lisp/net/soap-client.el (soap-invoke-async): Add error checking.
3374         * lisp/net/soap-client.el (soap-invoke-internal): New function.
3375         (soap-invoke-async): Call soap-invoke-internal.
3376         (soap-invoke): Likewise.
3378         * lisp/net/soap-client.el (soap-invoke-async): Ensure buffer passed to
3379         url-retrieve callback is killed.
3381         * lisp/net/soap-client.el (soap-parse-wsdl-phase-validate-node):
3382         Rename function.
3383         (soap-parse-wsdl-phase-fetch-imports): Likewise.
3384         (soap-parse-wsdl-phase-parse-schema): Likewise.
3385         (soap-parse-wsdl-phase-fetch-schema): Likewise.
3386         (soap-parse-wsdl-phase-finish-parsing): Likewise.
3387         (soap-parse-wsdl): Update calls.
3389         * lisp/net/soap-client.el (soap-invoke-async): Fix callback invocation.
3391         * lisp/net/soap-client.el (soap-invoke-async): New function.
3392         (soap-invoke): Reimplement using soap-invoke-async.
3394         * lisp/net/soap-client.el (soap-parse-server-response):
3395         Improve docstring.
3396         (soap-invoke): Inline call to soap-parse-server-response.
3398         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3399         Prevent incorrect warning.
3401         * lisp/net/soap-client.el (soap-parse-server-response):
3402         Rename soap-process-url-response.  Destroy the mime part.
3403         (soap-invoke): Call soap-parse-server-response.
3405         * lisp/net/soap-client.el: Update copyright date.
3407         * lisp/net/soap-client.el: Fix checkdoc issues.
3409         * lisp/net/soap-client.el: Fix indentation and long lines.
3411         * lisp/net/soap-client.el (soap-time-format): Remove variable.
3412         (soap-encode-xs-basic-type): Simplify date-time format detection.
3413         (soap-decode-xs-basic-type): Remove soap-time-format support.
3415         * lisp/net/soap-client.el (soap-process-url-response): New function.
3416         (soap-fetch-xml-from-url): Call soap-process-url-response.
3417         (soap-parse-wsdl-phase-1): New function.
3418         (soap-parse-wsdl-phase-2): Likewise.
3419         (soap-parse-wsdl-phase-3): Likewise.
3420         (soap-parse-wsdl-phase-4): Likewise.
3421         (soap-parse-wsdl-phase-5): Likewise.
3422         (soap-parse-wsdl): Call phase functions.
3424         * lisp/net/soap-client.el (soap-decode-xs-basic-type):
3425         Remove one-argument and call.
3427         * lisp/net/soap-client.el (soap-decode-date-time): Improve docstring.
3429         * lisp/net/soap-client.el (soap-xmlschema-imports): Remove variable.
3430         (soap-parse-schema): Add wsdl argument.  Look up XML schema
3431         imports from wsdl.
3432         (soap-load-wsdl): Do not set soap-xmlschema-imports.
3433         (soap-parse-wsdl): Get XML schema imports from wsdl.
3435         * lisp/net/soap-client.el (soap-current-file): Remove variable.
3436         (soap-wsdl): Add current-file slot.
3437         (soap-fetch-xml-from-url): Add wsdl argument.  Look up current
3438         file from wsdl.
3439         (soap-fetch-xml-from-file): Likewise.
3440         (soap-fetch-xml): Likewise.
3441         (soap-load-wsdl): Always create wsdl object first.
3442         (soap-parse-wsdl): Pass wsdl to soap-fetch-xml.
3444         * lisp/net/soap-client.el (soap-xs-element): Add is-group slot.
3445         (soap-xs-parse-element): Set is-group slot.
3446         (soap-resolve-references-for-xs-element): Skip is-group elements.
3447         (soap-xs-complex-type): Add is-group slot.
3448         (soap-xs-parse-complex-type): Set is-group slot.
3449         (soap-xs-parse-sequence): Parse xsd:group elements.
3450         (soap-resolve-references-for-xs-complex-type): Inline elements
3451         from referenced xsd:group nodes.
3452         (soap-parse-schema): Parse xsd:group nodes.
3454         * lisp/net/soap-client.el (soap-invoke):
3455         Don't set url-http-version to 1.0.
3457         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3458         Allow choice nodes to accept multiple values.
3460         * lisp/net/soap-client.el (soap-encode-body): Check parameters argument
3461         for extra header values.
3463         * lisp/net/soap-client.el (soap-well-known-xmlns):
3464         Add wsa and wsaw tags.
3465         (soap-operation): Add input-action and output-action slots.
3466         (soap-parse-operation): Parse wsaw:Action nodes.
3467         (soap-encode-body): Encode service-url for WS-Addressing.
3468         (soap-create-envelope): Likewise.
3469         (soap-invoke): Update soap-create-envelope call to provide
3470         service-url argument.
3472         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3473         Support xsi:type override attribute.
3474         (soap-decode-array): Likewise.
3476         * lisp/net/soap-client.el (soap-parse-schema):
3477         Handle location attribute.
3479         * lisp/net/soap-client.el (soap-decode-type): Check that multiRef
3480         matched validation regexp.
3482         * lisp/net/soap-client.el (soap-encode-xs-simple-type):
3483         Encode xsd:list nodes.
3484         (soap-decode-xs-simple-type): Decode xsd:list nodes.
3486         * lisp/net/soap-client.el (soap-get-candidate-elements):
3487         Fix reference handling.
3489         * lisp/net/soap-client.el (soap-xs-simple-type): Add is-list slot.
3490         (soap-xs-parse-simple-type): Call soap-xs-add-list for xsd:list nodes.
3491         (soap-xs-add-list): New function.
3493         * lisp/net/soap-client.el (soap-encode-xs-element): When a boolean is
3494         expected, interpret nil as "false".
3496         * lisp/net/soap-client.el (soap-make-xs-basic-types): Add gYearMonth,
3497         gYear, gMonthDay, gDay and gMonth.
3499         * lisp/net/soap-client.el (soap-time-format): New variable.
3500         (soap-encode-xs-basic-type): Handle dateTime, time, date,
3501         gYearMonth, gYear, gMonthDay, gDay and gMonth.
3502         (soap-decode-date-time): New function.
3503         (soap-decode-xs-basic-type): Use soap-decode-date-time.
3505         * lisp/net/soap-client.el (soap-encode-xs-basic-type): Validate value
3506         after encoding.
3507         (soap-decode-xs-basic-type): Validate value before decoding.
3509         * lisp/net/soap-client.el (soap-validate-xs-basic-type): New function.
3510         (soap-validate-xs-simple-type): Call soap-validate-xs-basic-type.
3512         * lisp/net/soap-client.el (soap-xs-add-union): Append result to base
3513         instead of overwriting it.
3514         (soap-validate-xs-simple-type): Add union support.
3516         * lisp/net/soap-client.el (soap-xs-add-restriction): Translate pattern
3517         to Emacs regexp using xsdre-translate.
3518         (soap-validate-xs-simple-type): Validate value against pattern.
3520         * lisp/net/soap-client.el (soap-xs-add-union): Preserve WSDL order of
3521         inline simpleType nodes.
3522         (soap-decode-type): Handle union types.
3524         * lisp/net/soap-client.el (soap-decode-xs-attributes): Decode basic-type
3525         attributes.
3527         * lisp/net/soap-client.el (soap-get-xs-attributes-from-groups): Rename
3528         from soap-xs-attribute-group-consolidate, all callers updated
3529         (soap-get-xs-attributes): Rename from
3530         soap-xs-attributes-consolidate, all callers updated
3532         * lisp/net/soap-client.el (soap-xs-type): Add attribute-group slot.
3533         (soap-xs-attribute-group): New type.
3534         (soap-xs-parse-attribute-group): New function.
3535         (soap-resolve-references-for-xs-attribute-group): Likewise.
3536         (soap-xs-add-extension): Handle attribute groups.
3537         (soap-resolve-references-for-xs-simple-type): Likewise.
3538         (soap-xs-parse-complex-type): Likewise.
3539         (soap-xs-parse-extension-or-restriction): Likewise.
3540         (soap-resolve-references-for-xs-complex-type): Likewise.
3541         (soap-xs-attribute-group-consolidate): New function.
3542         (soap-xs-attributes-consolidate): Handle attribute groups.
3543         (soap-parse-schema): Likewise.
3545         * lisp/net/soap-client.el (soap-encode-xs-basic-type):
3546         Fix boolean encoding.
3548         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Print ref
3549         element names in warnings.
3551         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Fix splicing.
3553         * lisp/net/soap-client.el (soap-decode-xs-complex-type):
3554         Eliminate invalid warnings for choice types.
3556         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
3557         Also encode base type attributes.
3559         * lisp/net/soap-client.el (soap-encode-xs-complex-type): Fix compilation
3560         warning.  Print e-name in warnings, or element if e-name is nil.
3562         * lisp/net/soap-client.el (soap-xs-element): Add alternatives slot.
3563         (soap-xs-parse-element): Set substitution-group.
3564         (soap-resolve-references-for-xs-element): Populate alternatives slot.
3565         (soap-get-candidate-elements): New function.
3566         (soap-encode-xs-complex-type): Iterate through all candidate elements.
3567         Handle types with nil type indicator.  Fix warning logic.
3569         * lisp/net/soap-client.el (soap-current-wsdl): Move declaration
3570         earlier in the file to prevent compiler warning.
3572         * lisp/net/soap-client.el (soap-node-optional): New function.
3573         (soap-node-multiple): Likewise.
3574         (soap-xs-parse-element): Call soap-node-optional and
3575         soap-node-multiple.
3576         (soap-xs-complex-type): Add optional? and multiple? slots.
3577         (soap-xml-get-children-fq): New function.
3578         (soap-xs-element-get-fq-name): Likewise.
3579         (soap-xs-complex-type-optional-p): Likewise.
3580         (soap-xs-complex-type-multiple-p): Likewise.
3581         (soap-xs-attributes-consolidate): Likewise.
3582         (soap-decode-xs-attributes): Likewise.
3583         (soap-decode-xs-complex-type): Decode types with nil type indicator.
3584         Support children that use local namespaces.  Decode attributes.
3585         Add type considerations to optional? and multiple? warnings.
3587         * lisp/net/soap-client.el (soap-xs-parse-extension-or-restriction):
3588         Store parsed attributes.
3589         (soap-encode-xs-complex-type-attributes): Encode custom attributes.
3591         * lisp/net/soap-client.el (soap-encode-xs-complex-type-attributes):
3592         Don't add the xsi:type attribute (Exchange refuses requests which have
3593         this attribute).
3595         * lisp/net/soap-client.el, soap-inspect.el: Convert to lexical binding,
3596         correct compiler warnings about unused function arguments and
3597         local variables.
3599         * lisp/net/soap-client.el (soap-decode-xs-complex-type): Handle nil
3600         type indicator.
3601         (soap-parse-envelope): Handle response headers.
3602         (soap-parse-response): Likewise.  Only return non-nil decoded values.
3604         * lisp/net/soap-client.el (soap-validate-xs-simple-type):
3605         Return validated value.
3607         * lisp/net/soap-client.el (soap-xs-parse-element)
3608         (soap-xs-parse-simple-type)
3609         (soap-xs-parse-complex-type)
3610         (soap-parse-message)
3611         (soap-parse-operation): Add the current namespace to the element
3612         being created.
3613         (soap-resolve-references-for-xs-element)
3614         (soap-resolve-references-for-xs-simple-type)
3615         (soap-resolve-references-for-xs-complex-type)
3616         (soap-resolve-references-for-operation): Resolve the namespace to
3617         the namespace tag.
3618         (soap-make-wsdl): specify a namespace tag when creating the xsd
3619         and soapenc namespaces
3620         (soap-wsdl-resolve-references): don't update namespace tags in
3621         elements here
3622         (soap-parse-port-type): bind the urn: to soap-target-xmlns
3623         (soap-encode-body): don't add nil namespace tags to
3624         soap-encoded-namespaces
3626         * lisp/net/soap-inspect.el: Use `soap-make-wsdl` to construct the object
3627         for registering the soap-inspect method.  Make debbugs tests pass.
3628         * lisp/net/soap-client.el (soap-decode-any-type): Use soap-l2fq on the
3629         type name, also skip string only nodes when decoding a structure.
3630         (soap-xs-parse-complex-type): (BUG) Dispatch parsing for choice
3631         types too.
3632         (soap-encode-body): Grab the header value from the param table.
3634         * lisp/net/soap-client.el (soap-should-encode-value-for-xs-element):
3635         New function.
3636         (soap-encode-xs-element): Don't encode nil value unless needed.
3638         * lisp/net/soap-client.el (soap-bound-operation): New slot `soap-body`.
3639         (soap-parse-binding): Parse the message parts required in the body.
3640         (soap-encode-body): Encode only the parts that are declared to be
3641         part of the body.
3643         * lisp/net/soap-client.el (soap-encode-xs-element): use the fq name
3644         when writing out the tag.
3645         (soap-encode-body): Remove hack that inserts the xmlns in the
3646         element attributes list.
3648         * lisp/net/soap-client.el (soap-xs-attribute): Add "default" slot.
3649         (soap-xs-parse-attribute): Default slot is set from the XML
3650         "fixed" attribute.
3651         (soap-encode-xs-complex-type-attributes): Encode any attributes
3652         that have a default value.  Also, don't put the xsi:nil attribute
3653         when the complex type has no content anyway.
3655         * lisp/net/soap-client.el (soap-well-known-xmlns):
3656         Add the xml namespace.
3657         (soap-local-xmlns): Start with the xml namespace.
3658         (soap-xml-node-first-child): Skip xsd:annotation nodes too.
3659         (soap-make-xs-basic-types): More xsd types added.
3660         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
3661         Handle "language", "time", "date", "nonNegativeInteger".
3662         (soap-resolve-references-for-xs-element): Don't signal an error if
3663         the element does not have a type.
3664         (soap-xs-parse-simple-type): Subtypes are handled with ecase,
3665         added stum for xsd:list.
3666         (soap-xs-add-union): Call soap-l2fq on all union members.
3667         (soap-xs-add-extension): Call soap-l2fq on the base member.
3668         (soap-resolve-references-for-xs-simple-type): Don't signal an
3669         error if the simple type has no base.
3670         (soap-resolve-references-for-xs-simple-type): Bugfix, call
3671         soap-wsdl-get on each type of the base.
3673         * lisp/net/soap-client.el (soap-resolve-references-for-xs-attribute):
3674         Referenced type can be eiher a simple type or a basic type.
3675         (soap-xs-add-restriction)
3676         (soap-xs-parse-extension-or-restriction): Use `soap-l2fq' on base.
3677         (soap-make-xs-basic-types)
3678         (soap-encode-xs-basic-type, soap-decode-xs-basic-type):
3679         Add support for more XMLSchema basic types.
3680         (soap-current-file, soap-xmlschema-imports): New defvars.
3681         (soap-parse-schema): Add locations from xsd:import tags to
3682         `soap-xmlschema-imports'.
3683         (soap-wsdl): Make destructor private.
3684         (soap-make-wsdl): New defun, SOAP-WSDL object constructor.
3685         (soap-wsdl-add-alias): Check if we try to replace aliases.
3686         (soap-fetch-xml-from-url, soap-fetch-xml-from-file)
3687         (soap-fetch-xml): New defuns.
3688         (soap-load-wsdl): Update to load the WSDL from either a file or
3689         an url.
3690         (soap-load-wsdl-from-url): Now an alias to `soap-load-wsdl'.
3691         (soap-parse-wsdl): Process wsdl:import tags and imports from
3692         `soap-xmlschema-imports'.
3693         * lisp/net/soap-client.el (soap-l2wk): Bugfix: call symbolp instead of
3694         symbol-name.
3695         (soap-l2fq): Make the name part always a string.
3696         (soap-name-p): New defun, used for name tests.
3698         * lisp/net/soap-inspect.el (soap-sample-value-for-xs-complex-type):
3699         Supply sample values for choice types with a special tag.
3700         * lisp/net/soap-client.el (soap-encode-xs-complex-type):
3701         Handle anonymous elements correctly.
3702         (soap-encode-value): Accept nodes that have no namespace tag.
3704         * lisp/net/soap-client.el (soap-invoke): Encode the string for
3705         `url-request-data' as UTF-8.  Fixes issue 16.
3707 2015-10-24  Nicolas Petton  <nicolas@petton.fr>
3709         Update the new icon
3711         Move the E slightly to the right in the circle.
3713         * etc/images/icons/hicolor/128x128/apps/emacs.png:
3714         * etc/images/icons/hicolor/16x16/apps/emacs.png:
3715         * etc/images/icons/hicolor/24x24/apps/emacs.png:
3716         * etc/images/icons/hicolor/32x32/apps/emacs.png:
3717         * etc/images/icons/hicolor/48x48/apps/emacs.png:
3718         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
3719         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
3720         * nt/icons/emacs.ico: New icom update.
3722 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3724         Avoid missing inline functions from lisp.h in TAGS
3726         * src/lisp.h (LISP_MACRO_DEFUN): Mention in the commentary the
3727         need to end each invocation with a semi-colon.
3728         Add a semi-colon at the end of each invocation of LISP_MACRO_DEFUN
3729         and LISP_MACRO_DEFUN_VOID.  This is to avoid missing in TAGS
3730         inline functions defined immediately after each invocation, and
3731         also avoid tagging every invocation of these macros.
3733 2015-10-24  Eli Zaretskii  <eliz@gnu.org>
3735         A better fix for bug#21739
3737         * src/buffer.c (set_update_modelines_for_buf): New function.
3738         (Fkill_buffer): Use it to set the global variable
3739         update_mode_lines if the killed buffer was displayed in some
3740         window.  Don't set windows_or_buffers_changed.  This is a better
3741         fix for bug#21739 than the previous fix, since it will cause only
3742         redisplay of mode lines, not of entire windows, but will still
3743         catch attention of x_consider_frame_title in xdisp.c, which
3744         redraws the frame title.
3746 2015-10-24  Tassilo Horn  <tsdh@gnu.org>
3748         * lisp/dired-aux.el (dired-compress-files-alist): Add support for
3749         tar.bz2 and tar.xz archives.
3751 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
3753         Fix infloop in redisplay introduced by a recent change
3755         * src/xdisp.c (redisplay_internal): Avoid inflooping when
3756         redisplaying the selected window sets the selected frame's
3757         redisplay flag.  (Bug#21745)
3759 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3761         * lisp/emacs-lisp/thunk.el: Better documentation.
3763 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3765         Replace the old icon for Windows and Mac OSX
3767         * nt/icons/emacs.ico:
3768         * nextstep/Cocoa/Emacs.base/Contents/Resources/Emacs.icns:
3769         Use the new icons.
3771 2015-10-23  Stephen Leake  <stephen_leake@stephe-leake.org>
3773         * lisp/emacs-lisp/package.el (package-autoload-ensure-default-file):
3774         `load-path' should contain only directory names.
3776 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3778         New library thunk.el
3780         thunk.el is extracted from stream.el in ELPA, with additional tests.
3782         * lisp/emacs-lisp/thunk.el: New file.
3783         * test/automated/thunk-tests.el: New file.
3784         * etc/NEWS: Add information about thunk.el
3786 2015-10-23  Michael Albinus  <michael.albinus@gmx.de>
3788         Fix bug#21669
3790         * lisp/filenotify.el (file-notify-rm-watch): Improve check for
3791         calling low-level functions.
3793         * test/automated/file-notify-tests.el (file-notify--test-timeout):
3794         Decrase to 6 seconds for remote directories.
3795         (file-notify-test02-events): Expect different number of
3796         `attribute-changed' events for the local and remote cases.  Apply
3797         short delays between the operations, in order to receive all
3798         events in the remote case.  Combine `attribute-change' tests.
3799         (Bug#21669)
3801 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
3803         Decode the HTML source when displaying it in EWW
3805         * lisp/net/eww.el (eww-view-source): Decode the HTML source
3806         according to its headers.
3808 2015-10-23  Nicolas Petton  <nicolas@petton.fr>
3810         New default icon
3812         * etc/images/icons/hicolor/128x128/apps/emacs23.png:
3813         * etc/images/icons/hicolor/16x16/apps/emacs23.png:
3814         * etc/images/icons/hicolor/24x24/apps/emacs23.png:
3815         * etc/images/icons/hicolor/32x32/apps/emacs23.png:
3816         * etc/images/icons/hicolor/48x48/apps/emacs23.png:
3817         * etc/images/icons/hicolor/scalable/apps/emacs23.svg:
3818         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document23.svg:
3819         Move the old logo files to emacs23.*.
3820         * etc/images/icons/hicolor/128x128/apps/emacs.png:
3821         * etc/images/icons/hicolor/16x16/apps/emacs.png:
3822         * etc/images/icons/hicolor/24x24/apps/emacs.png:
3823         * etc/images/icons/hicolor/32x32/apps/emacs.png:
3824         * etc/images/icons/hicolor/48x48/apps/emacs.png:
3825         * etc/images/icons/hicolor/scalable/apps/emacs.svg:
3826         * etc/images/icons/hicolor/scalable/mimetypes/emacs-document.svg:
3827         New files.
3828         * etc/images/icons/README: Update the copyright information.
3830 2015-10-23  Eli Zaretskii  <eliz@gnu.org>
3832         Fix redisplay of frame title when current buffer is killed
3834         * src/buffer.c (Fkill_buffer): Set windows_or_buffers_changed to a
3835         non-zero value, to redisplay more than just the affected windows.
3836         (Bug#21739)
3838 2015-10-23  Anders Lindgren  <andlind@gmail.com>
3840         NextStep maximization and NSTRACE rewrite
3842         Full-height, full-width, and maximized windows now cover the
3843         entire screen (except the menu bar), including the part where the
3844         system dock is placed.  The system zoom animation is no longer
3845         used.
3847         Made NonMaximized->FullWidth->FullHeight->NonMaximized restore the
3848         original size.
3850         * src/nsterm.m (ns_menu_bar_height): New function, return height of
3851         the menu bar, or 0 when it's hidden.
3852         (constrain_frame_rect): New function for constraining a frame.
3853         (ns_constrain_all_frames): Set frame size explicitly rather than
3854         relying on the system doing it for us by writing back the current
3855         frame size.
3856         (windowWillUseStandardFrame): Register non-maximized width or
3857         height as new user size.  When entering full width or height,
3858         the other size component is taken from the user size.
3859         (fullscreenState): New method for accessing the fullscreen state.
3860         (constrainFrameRect): Restrict frame to be placed under the menu bar,
3861         if present.  The old version, sometimes, restricted the height of a
3862         frame to the screen, this version never does this.
3863         (zoom): Perform zoom by setting the frame to the full size of the
3864         screen (minus the menu bar).  The default system function, with the
3865         zoom animation, is no longer used, as the final frame size doesn't
3866         cover the entire screen.
3868         Rework how to constrain resizing to the character grid.  The old
3869         system used "resizeIncrements" in NSWindows.  However, once a frame
3870         was resized so that it was not aligned to the text grid, it
3871         remained unaligned even after a resize.  In addition, it conflicted
3872         when resizing a fullheight window.
3874         * src/nsterm.m (windowWillResize): Restrict frame size to text grid,
3875         unless when pixelwise frame resizing is enabled.
3876         (updateFrameSize, initFrameFromEmacs)
3877         (toggleFullScreen, handleFS): Don't set resizeIncrements.
3879         Redesign the NS trace system.  The call structure is represented
3880         using indentations and vertical lines.  The NSTRACE macro accepts
3881         printf-style arguments.  New macros for printing various
3882         information.
3884         * src/nsterm.h (NSTRACE_ENABLED): Macro to enable trace system.
3885         (NSTRACE, NSTRACE_WHEN, NSTRACE_UNLESS): Macros to start a new
3886         block (typically a function), accept printf-style arguments.
3887         (NSTRACE_MSG): Macro for extra information, accepts
3888         printf-style arguments.
3889         (NSTRACE_what): Macros for printing various types.
3890         (NSTRACE_FMT_what): Macro with printf format string snippets.
3891         (NSTRACE_ARG_what): Macros for passing printf-style arguments,
3892         corresponds to NSTRACE_FMT_what.
3893         (NSTRACE_RETURN): Macro to print return value, accept
3894         printf-style arguments.
3895         (NSTRACE_RETURN_what): Macros to print return value for
3896         various types.
3898         * nsterm.m: Remove old NSTRACE macro
3899         * src/nsterm.m (nstrace_num): Trace counter.
3900         (nstrace_depth): Current call depth.
3901         (nstrace_leave): NSTRACE support function, called when the
3902         local variable "nstrace_enabled" goes out of scope using the
3903         "cleanup" extension.
3904         (ns_print_fullscreen_type_name): NSTRACE_FSTYPE support function.
3905         (constrain_frame_rect, ns_constrain_all_frames)
3906         (ns_update_auto_hide_menu_bar, ns_update_begin)
3907         (ns_update_window_begin, update_window_end, ns_update_end)
3908         (ns_focus, ns_unfocus, ns_ring_bell, ns_frame_raise_lower)
3909         (ns_frame_rehighlight, x_make_frame_visible)
3910         (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
3911         (x_destroy_window, x_set_offset, x_set_window_size)
3912         (ns_fullscreen_hook, ns_lisp_to_color, ns_color_to_lisp)
3913         (ns_defined_color, frame_set_mouse_pixel_position)
3914         (note_mouse_movement, ns_mouse_position, ns_frame_up_to_date)
3915         (ns_define_frame_cursor, x_get_keysym_name, ns_redraw_scroll_bars)
3916         (ns_clear_frame, ns_clear_frame_area, ns_scroll_run)
3917         (ns_after_update_window_line, ns_shift_glyphs_for_insert)
3918         (dumpcursor, ns_draw_vertical_window_border)
3919         (ns_draw_window_divider, ns_draw_relief)
3920         (ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
3921         (ns_dumpglyphs_image, ns_draw_glyph_string, ns_send_appdefined)
3922         (ns_read_socket, ns_select, ns_set_vertical_scroll_bar)
3923         (ns_set_horizontal_scroll_bar, ns_condemn_scroll_bars)
3924         (ns_redeem_scroll_bar, ns_judge_scroll_bars, ns_delete_terminal)
3925         (ns_create_terminal, ns_term_init, sendEvent)
3926         (applicationDidFinishLaunching, applicationDidBecomeActive)
3927         (timeout_handler, fd_handler, EmacsView_dealloc, changeFont)
3928         (acceptsFirstResponder, resetCursorRects, keyDown, mouseDown)
3929         (deltaIsZero, rightMouseDown, otherMouseDown, mouseUp)
3930         (rightMouseUp, otherMouseUp, scrollWheel, mouseMoved)
3931         (mouse_autoselect_window, in_window, mouseDragged)
3932         (rightMouseDragged, otherMouseDragged, windowShouldClose)
3933         (updateFrameSize, windowWillResize, windowDidResize)
3934         (windowDidBecomeKey, windowDidResignKey, windowWillMiniaturize)
3935         (initFrameFromEmacs, windowDidMove, windowDidDeminiaturize)
3936         (windowDidExpose, windowDidMiniaturize, windowWillEnterFullScreen)
3937         (windowDidEnterFullScreen, windowWillExitFullScreen)
3938         (windowDidExitFullScreen, toggleFullScreen, handleFS, setFSValue)
3939         (mouseEntered, mouseExited, menuDown, toolbarClicked, drawRect)
3940         (draggingEntered, performDragOperation, validRequestorForSendType)
3941         (setMiniwindowImage, constrainFrameRect, performZoom, zoom)
3942         (EmacsScroller_initFrame, EmacsScroller_setFrame)
3943         (EmacsScroller_dealloc, condemn, reprieve, judge)
3944         (resetCursorRects, setPosition, EmacsScroller_mouseDown)
3945         (EmacsScroller_mouseDragged, syms_of_nsterm): Use new trace system.
3947         * nsfns.m: Remove old NSTRACE macro
3948         * src/nsfns.m (x_set_icon_name, ns_set_name, x_explicitly_set_name)
3949         (x_implicitly_set_name, x_set_title, ns_set_name_as_filename)
3950         (ns_implicitly_set_icon_type, x_set_icon_type): Use new trace system.
3952         * nsimage.m: Remove old NSTRACE macro
3953         * src/nsimage.m (ns_image_from_XBM, ns_image_for_XPM)
3954         (ns_image_from_bitmap_file, ns_load_image): Use new trace system.
3956         * nsmenu.m: Remove old NSTRACE macro
3957         * src/nsmenu.m (ns_update_menubar, ns_menu_show, ns_popup_dialog):
3958         Use new trace system.
3960 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
3962         No need to use eval-and-compile
3964         * lisp/gnus/auth-source.el: Do require epg (when compiling) before
3965         autoload epg functions.
3967 2015-10-22  Katsumi Yamaoka  <yamaoka@jpl.org>
3969         Fix auth-source-epa-make-gpg-token compilation (bug#21724)
3971         * lisp/gnus/auth-source.el: Add eval-and-compile to autoloads for
3972         epg-context-set-passphrase-callback, epg-decrypt-string, and
3973         epg-encrypt-string; require epg when compiling for the setf-method
3974         for epg-context-armor. (bug#21724)
3976 2015-10-22  Eli Zaretskii  <eliz@gnu.org>
3978         Include file cleanup for w32 files in src directory
3980         * src/w32xfns.c: Don't include keyboard.h, window.h, charset.h,
3981         fontset.h, blockinput.h.
3982         * src/w32uniscribe.c: Don't include dispextern.h, character.h,
3983         charset.h, fontset.h.
3984         * src/w32term.c: Don't include systty.h, systime.h, charset.h,
3985         character.h, ccl.h, dispextern.h, disptab.h, intervals.h,
3986         process.h, atimer.h, keymap.h, w32heap.h.  Include bitmap/gray.xbm
3987         in an ifdef-ed away block.
3988         Include fcntl.h for CYGWIN.
3989         (set_frame_param): Remove unused function.
3990         * src/w32select.c: Don't include charset.h and composite.h.
3991         (setup_config, Fw32_get_clipboard_data): Avoid compiler warnings
3992         due to pointer signedness mismatches.
3993         * src/w32reg.c (w32_get_string_resource): Avoid compiler warnings
3994         due to pointer signedness mismatches.
3995         * src/w32proc.c: Include unistd.h.  Don't include systime.h,
3996         process.h, dispextern.h.
3997         (sys_spawnve, Fw32_short_file_name, Fw32_long_file_name)
3998         (Fw32_application_type): Avoid compiler warnings due to pointer
3999         signedness mismatches.
4000         * src/w32menu.c: Don't include keymap.h, termhooks.h, window.h,
4001         character.h, charset.h, dispextern.h.
4002         (simple_dialog_show, add_menu_item): Avoid compiler warnings due
4003         to pointer signedness mismatches.
4004         * src/w32inevt.c: Don't include dispextern.h, window.h,
4005         termhooks.h, w32heap.h.
4006         * src/w32font.c: Don't include dispextern.h, character.h,
4007         charset.h, fontset.h, font.h.
4008         (intern_font_name, add_font_entity_to_list)
4009         (registry_to_w32_charset, w32_to_x_charset, fill_in_logfont)
4010         (list_all_matching_fonts): Avoid compiler warnings due to pointer
4011         signedness mismatches.
4012         * src/w32fns.c: Don't include character.h, intervals.h,
4013         dispextern.h, epaths.h, charset.h, ccl.h, fontset.h, systime.h,
4014         termhooks.h, w32heap.h, bitmap/gray.xbm, font.h, w32font.h.
4015         (w32_color_map_lookup, add_system_logical_colors_to_map)
4016         (x_decode_color, x_set_name, FPRINTF_WM_CHARS, Fxw_color_defined_p)
4017         (Fxw_color_values, x_display_info_for_name, Fset_message_beep)
4018         (x_create_tip_frame, Fx_file_dialog, Fsystem_move_file_to_trash)
4019         (w32_parse_hot_key, Ffile_system_info, w32_kbd_patch_key): Avoid
4020         compiler warnings, mainly due to pointer signedness mismatches.
4021         (unwind_create_frame_1): Remove unused function.
4022         * src/w32console.c: Don't include character.h, disptab.h, frame.h,
4023         window.h, termhooks.h, dispextern.h.
4024         (w32con_write_glyphs, w32con_write_glyphs_with_face): Fix pointer
4025         signedness mismatch.
4026         * src/w32.c: Include c-strcase.h and systty.h.  Don't include
4027         w32heap.h.
4029 2015-10-22  Tassilo Horn  <tsdh@gnu.org>
4031         Improve doc-view wrt. auto-revert-mode
4033         * lisp/doc-view.el (doc-view-revert-buffer): Don't revert when file
4034         is corrupted (bug#21729).
4035         (doc-view-mode): Set doc-view-revert-buffer as revert-buffer-function.
4037 2015-10-22  Oleh Krehel  <ohwoeowho@gmail.com>
4039         Describe dired-do-compress-to in the manual
4041         * etc/NEWS: Update.
4043         * lisp/dired-aux.el: Fix typo.
4045         * doc/emacs/dired.texi: Add entry.
4047 2015-10-22  Jürgen Hötzel  <juergen@archlinux.org>
4049         Further fix for proper locale handling in tramp-gvfs.el
4051         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4052         Just suppress LC_MESSAGES locale category settings.
4054 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
4056         New lispref section “Security Considerations”
4058         This attempts to document some of the issues recently discussed
4059         on emacs-devel, and to indicate other such issues.  The section
4060         could be a lot longer.
4061         * doc/lispref/os.texi (Security Considerations):
4062         New node.
4063         * doc/lispref/elisp.texi (Top):
4064         * doc/lispref/processes.texi (Shell Arguments):
4065         * lisp/subr.el (shell-quote-argument):
4066         * src/callproc.c (syms_of_callproc):
4067         Reference it.
4069 2015-10-21  Paul Eggert  <eggert@cs.ucla.edu>
4071         Merge from gnulib
4073         This incorporates:
4074         2015-10-18 stdalign: work around pre-4.9 GCC x86 bug
4075         2015-10-18 time_rz: avoid warning from bleeding-edge gcc's -Wnonnull
4076         * doc/misc/texinfo.tex, lib/stdalign.in.h, lib/time_rz.c:
4077         Copy from gnulib.
4079 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
4081         * lisp/gnus/mailcap.el (mailcap-mime-data): Remove fboundp checks.
4082         (mailcap-viewer-passes-test): Do it instead.  Thanks to Stefan Monnier.
4084 2015-10-21  Ken Brown  <kbrown@cornell.edu>
4086         Further include-file cleanup
4088         * src/sheap.c: Include stdlib.h.
4089         * src/unexcw.c: Include string.h.
4091 2015-10-21  Eli Zaretskii  <eliz@gnu.org>
4093         Fix logic in 'server-kill-emacs-query-function'
4095         * lisp/server.el (server-kill-emacs-query-function): Correct the
4096         logic that controls whether the user is asked for confirmation.
4097         (Bug#21723)
4099 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
4101         * lisp/isearch.el (isearch-search-fun-default): Simplify logic.
4102         (isearch--lax-regexp-function-p): New function.
4104 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
4106         * lisp/isearch.el: Support lax-whitespace in regexp-function searches.
4107         (isearch-search-fun-default): Let-bind `search-spaces-regexp'
4108         around `isearch-regexp-function'.
4110 2015-10-21  Artur Malabarba  <bruce.connor.am@gmail.com>
4112         * lisp/isearch.el: Rename word search to regexp-function search.
4113         `isearch-word' went well beyond its original purpose, and the name
4114         no longer makes sense.  It is now called
4115         `isearch-regexp-function', and its value should always be a function
4116         that converts a string to a regexp (though setting it to t is still
4117         supported for now).
4118         (isearch-word): Make obsolete.
4119         (isearch-regexp-function): New variable.
4120         (isearch-mode, isearch-done, isearch--state, isearch--set-state)
4121         (with-isearch-suspended, isearch-toggle-regexp)
4122         (isearch-toggle-word, isearch-toggle-symbol)
4123         (isearch-toggle-character-fold, isearch-query-replace)
4124         (isearch-occur, isearch-highlight-regexp)
4125         (isearch-search-and-update, isearch-message-prefix)
4126         (isearch-search-fun-default, isearch-search)
4127         (isearch-lazy-highlight-new-loop, isearch-lazy-highlight-search):
4128         Use it.
4129         (isearch-lazy-highlight-regexp-function): New var.
4130         (isearch-lazy-highlight-word): Make obsolete.
4131         (isearch--describe-regexp-mode): New function.
4132         (isearch--describe-word-mode): Make obsolete.
4134         * lisp/info.el (Info-isearch-search):
4135         * lisp/replace.el (replace-search, replace-highlight):
4136         * lisp/obsolete/longlines.el (longlines-search-function):
4137         * lisp/hexl.el (hexl-isearch-search-function):
4138         * lisp/cedet/semantic/senator.el (senator-isearch-search-fun):
4139         Use the new var.
4141 2015-10-21  Oleh Krehel  <ohwoeowho@gmail.com>
4143         Add dired-do-compress-to command bound to "c"
4145         * lisp/dired-aux.el (dired-shell-command): Use the caller's
4146           `default-directory', return the result of `process-file'.
4147         (dired-compress-file-suffixes): Add comment on why "tar -zxf" isn't
4148         used by default.
4149         (dired-compress-files-alist): New defvar.
4150         (dired-do-compress-to): New command.
4152         * lisp/dired.el (dired-mode-map): Bind `dired-do-compress-to' to "c".
4153         (dired-do-compress-to): Add an autoload entry.
4155         * etc/NEWS: Add two entries.
4157 2015-10-21  Tassilo Horn  <tsdh@gnu.org>
4159         Make RefTeX work with LaTeX subfiles package
4161         * lisp/textmodes/reftex.el (reftex-TeX-master-file): Recognize subfiles
4162         document class argument as master file for referencing purposes.
4164 2015-10-21  Katsumi Yamaoka  <yamaoka@jpl.org>
4166         * lisp/gnus/mailcap.el (mailcap-mailcap-entry-passes-test): Doc fix.
4168 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
4170         Include-file cleanup for src directory
4172         Omit ‘#include "foo.h"’ unless the file needs foo.h (Bug#21707).
4173         In a few cases, add ‘#include "foo.h"’ if the file needs foo.h
4174         but does not include it directly.  As a general rule, a source
4175         file should include foo.h if it needs the interfaces that foo.h
4176         defines.
4177         * src/alloc.c: Don’t include process.h.  Include dispextern.h,
4178         systime.h.
4179         * src/atimer.c: Don’t include blockinput.h.
4180         * src/buffer.c: Include coding.h, systime.h.  Don’t include
4181         keyboard.h, coding.h.
4182         * src/callint.c: Don’t include commands.h, keymap.h.
4183         * src/callproc.c: Don’t include character.h, ccl.h, composite.h,
4184         systty.h, termhooks.h.
4185         * src/casetab.c: Don’t include character.h.
4186         * src/category.c: Don’t include charset.h, keymap.h.
4187         * src/ccl.h: Don’t include character.h.
4188         * src/character.c: Don’t include charset.h.
4189         * src/charset.c: Don’t include disptab.h.
4190         * src/chartab.c: Don’t include ccl.h.
4191         * src/cm.c: Don’t include frame.h, termhooks.h.
4192         * src/cmds.c: Don’t include window.h, dispextern.h.
4193         * src/coding.c: Don’t include window.h, frame.h.
4194         * src/composite.c: Include composite.h.  Don’t include window.h,
4195         font.h.
4196         * src/data.c: Don’t include syssignal.h, termhooks.h, font.h.
4197         * src/dbusbind.c: Don’t include frame.h.
4198         * src/decompress.c: Don’t include character.h.
4199         * src/dired.c: Don’t include character.h, commands.h, charset.h.
4200         * src/dispnew.c: Don’t include character.h, indent.h, intervals.h,
4201         process.h, timespec.h.  Include systime.h.
4202         * src/doc.c: Include coding.h.  Don’t include keyboard.h.
4203         * src/editfns.c: Include composite.h.  Don’t include frame.h.
4204         * src/emacs.c: Include fcntl.h, coding.h.  Don’t include
4205         commands.h, systty.h..
4206         * src/fileio.c: Don’t include intervals.h, dispextern.h.
4207         Include composite.h.
4208         * src/filelock.c: Don’t include character.h, systime.h.
4209         * src/fns.c: Don’t include time.h, commands.h, keyboard.h,
4210         keymap.h, frame.h, blockinput.h, xterm.h.  Include composite.h.
4211         * src/font.c: Include termhooks.h.
4212         * src/font.h: Don’t include ccl.h, frame.h.  Add forward decls of
4213         struct composition_it, struct face, struct glyph_string.
4214         * src/fontset.c: Don’t include buffer.h, ccl.h, keyboard.h,
4215         intervals.h, window.h, termhooks.h.
4216         * src/frame.c: Don’t include character.h, commands.h, font.h.
4217         * src/frame.h: Don’t include dispextern.h.
4218         * src/fringe.c: Don’t include character.h.
4219         * src/ftcrfont.c: Don’t include dispextern.h, frame.h,
4220         character.h, charset.h, fontset.h.
4221         * src/ftfont.c: Don’t include frame.h, blockinput.h, coding.h,
4222         fontset.h.
4223         * src/ftxfont.c: Don’t include dispextern.h, character.h,
4224         charset.h, fontset.h.
4225         * src/gfilenotify.c: Don’t include frame.h, process.h.
4226         * src/gtkutil.c: Include dispextern.h, frame.h, systime.h.
4227         Don’t include syssignal.h, buffer.h, charset.h, font.h.
4228         * src/gtkutil.h: Don’t include frame.h.
4229         * src/image.c: Include fcntl.h and stdio.h instead of sysstdio.h.
4230         Don’t include character.h.
4231         * src/indent.c: Don’t include keyboard.h, termchar.h.
4232         * src/inotify.c: Don’t include character.h, frame.h.
4233         * src/insdel.c: Include composite.h.  Don’t include blockinput.h.
4234         * src/intervals.c: Don’t include character.h, keyboard.h.
4235         * src/intervals.h: Don’t include dispextern.h, composite.h.
4236         * src/keyboard.c: Don’t include sysstdio.h, disptab.h, puresize.h.
4237         Include coding.h.
4238         * src/keyboard.h: Don’t incldue systime.h.
4239         * src/keymap.c: Don’t include charset.h, frame.h.
4240         * src/lread.c: Include dispextern.h and systime.h.
4241         Don’t include frame.h.  Include systime.h.
4242         * src/macros.c: Don’t include commands.h, character.h, buffer.h.
4243         * src/menu.c: Include character.h, coding.h.  Don’t include
4244         dispextern.h.
4245         * src/menu.h: Don’t include systime.h.
4246         * src/minibuf.c: Don’t include commands.h, dispextern.h, syntax.h,
4247         intervals.h, termhooks.h.
4248         * src/print.c: Include coding.h.  Don’t include keyboard.h,
4249         window.h, dispextern.h, termchar.h, termhooks.h, font.h.
4250         Add forward decl of struct terminal.
4251         * src/process.c: Don’t include termhooks.h, commands.h,
4252         dispextern.h, composite.h.
4253         * src/region-cache.c: Don’t include character.h.
4254         * src/scroll.c: Don’t include keyboard.h, window.h.
4255         * src/search.c: Don’t include category.h, commands.h.
4256         * src/sound.c: Don’t include dispextern.h.
4257         * src/syntax.c: Don’t include command.h, keymap.h.
4258         * src/sysdep.c: Don’t include window.h, dispextern.h.
4259         * src/systime.h: Use ‘#ifdef emacs’, not ‘#ifdef EMACS_LISP_H’,
4260         * src/term.c: Don’t include systty.h, intervals.h, xterm.h.
4261         * src/terminal.c: Include character.h.
4262         Don’t include charset.h, coding.h.
4263         * src/textprop.c: Don’t include character.h.
4264         * src/undo.c: Don’t include character.h, commands.h, window.h.
4265         * src/unexsol.c: Don’t include character.h, charset.h.
4266         * src/widget.c: Include widget.h.  Don’t include keyboard.h,
4267         window.h, dispextern.h, blockinput.h, character.h, font.h.
4268         * src/widgetprv.h: Don’t include widget.h.
4269         * src/window.c: Don’t include character.h, menu.h, intervals.h.
4270         * src/xdisp.c: Include composite.h, systime.h.  Don’t include
4271         macros.h, process.h.
4272         * src/xfaces.c: Don’t include charset.h, keyboard.h, termhooks.h,
4273         intervals.h.
4274         * src/xfns.c: Don’t include menu.h, character.h, intervals.h,
4275         epaths.h, fontset.h, systime.h, atimer.h, termchar.h.
4276         * src/xfont.c: Don’t include dispextern.h, fontset.h, ccl.h.
4277         * src/xftfont.c: Don’t include dispextern.h, character.h, fontset.h.
4278         * src/xgselect.c: Don’t include timespec.h, frame.h.
4279         Include systime.h.
4280         * src/xgselect.h: Don’t include time.h.
4281         Use a forward decl to struct timespec instead.
4282         * src/xmenu.c: Don’t include keymap.h, character.h, charset.h,
4283         dispextern.h.  Include systime.h.
4284         * src/xml.c: Don’t include character.h.
4285         * src/xrdb.c [USE_MOTIF]: Don’t include keyboard.h.
4286         * src/xselect.c: Don’t include dispextern.h, character.h,
4287         buffer.h, process.h.
4288         * src/xsmfns.c: Don’t include systime.h, sysselect.h.
4289         * src/xterm.c: Don’t include syssignal.h, charset.h, disptab.h,
4290         intervals.h process.h, keymap.h, xgselect.h.  Include composite.h.
4292 2015-10-20  Paul Eggert  <eggert@cs.ucla.edu>
4294         (/ N) now returns the reciprocal of N
4296         This is more compatible with Common Lisp and XEmacs (Bug#21690).  See:
4297         http://lists.gnu.org/archive/html/emacs-devel/2015-10/msg01053.html
4298         * lisp/color.el (color-hue-to-rgb, color-hsl-to-rgb)
4299         (color-xyz-to-srgb, color-xyz-to-lab):
4300         * lisp/emacs-lisp/cl-extra.el (cl-float-limits):
4301         * lisp/net/shr-color.el (shr-color-hue-to-rgb)
4302         (shr-color-hsl-to-rgb-fractions):
4303         Exploit the change to simplify the code a bit.
4304         * lisp/emacs-lisp/bytecomp.el (byte-compile-quo):
4305         Don’t complain about single-argument calls to ‘/’.
4306         * src/data.c (arith_driver, float_arith_driver):
4307         Implement the change.
4309 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
4311         Call vc-dir-refresh after stash operations
4313         * lisp/vc/vc-git.el (vc-git-stash-apply-at-point)
4314         (vc-git-stash-pop-at-point): Call vc-dir-refresh (bug#13960).
4316         * lisp/vc/vc-dir.el (vc-dir-resynch-file): Expand FNAME as well,
4317         since it can be abbreviated (as returned by vc-find-root).
4319 2015-10-20  Dmitry Gutov  <dgutov@yandex.ru>
4321         * lisp/vc/vc-svn.el:
4322         * lisp/vc/vc-mtn.el:
4323         * lisp/vc/vc-hg.el:
4324         * lisp/vc/vc-cvs.el:
4325         * lisp/vc/vc-git.el:
4326         * lisp/vc/vc-bzr.el: Don't declare vc-exec-after anymore.
4327         Its usages have been replaced with vc-run-delayed.
4329 2015-10-20  Dima Kogan  <dima@secretsauce.net>
4331         Fix memory leak in fontset handling
4333         * src/font.c (copy_font_spec): Make a deep copy of the input
4334         argument FONT.  (Bug#21651)
4336 2015-10-20  Michael Sperber  <mike@xemacs.org>
4338         * lisp/gnus/mailcap.el (mailcap-mime-data):
4339         Conditonalize `doc-view-mode', which does not exist on XEmacs.
4341 2015-10-20  Oleh Krehel  <ohwoeowho@gmail.com>
4343         Update the way directories are compressed
4345         * lisp/dired-aux.el (dired-compress-file-suffixes): Update the recipe
4346         for *.tar.gz decompression to use a pipe.
4347         Add an entry for the default directory compression (to *.tar.g).
4348         (dired-compress-file): Update.
4350         See https://lists.gnu.org/archive/html/emacs-devel/2015-10/msg00949.html.
4352 2015-10-20  Michael Sperber  <mike@xemacs.org>
4354         Unbreak `group' option for `mail-sources'
4356         * nnml.el (nnml-retrieve-groups, nnml-request-scan):
4357         * nnmail.el (nnmail-get-new-mail-per-group)
4358         (nnmail-get-new-mail-1): Unbreak `group' option for `mail-sources'.
4360 2015-10-19  Nicolas Petton  <nicolas@petton.fr>
4362         New function seq-position
4364         * lisp/emacs-lisp/seq.el (seq-position): New function.
4365         * test/automated/seq-tests.el: New tests for seq-position.
4366         * doc/lispref/sequences.texi: Add documentation for `seq-position'.
4368 2015-10-19  Ken Brown  <kbrown@cornell.edu>
4370         Enable --with-wide-int build on 32-bit Cygwin
4372         * src/sheap.c (STATIC_HEAP_SIZE): Remove distinction between x86
4373         and x86_64 to enable --with-wide-int build on 32-bit Cygwin.
4375 2015-10-19  Glenn Morris  <rgm@gnu.org>
4377         * doc/emacs/ack.texi (Acknowledgments): Small, sad, update.
4379 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4381         Resurrect image loading under auto-image-file-mode
4383         * src/image.c (x_find_image_fd): Handle the case of -2 returned by
4384         'openp' specially.  This special case was lost in the changes on
4385         2015-08-18.  (Bug#21685)
4387 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4389         Fix return value of 'set-file-extended-attributes'
4391         * lisp/files.el (set-file-extended-attributes): Return non-nil
4392         when setting either ACLs or SELinux context succeeds.  Document
4393         the return value.  (Bug#21699)
4395         * doc/lispref/files.texi (Changing Files): Document the return
4396         value of set-file-extended-attributes.
4398 2015-10-19  Eli Zaretskii  <eliz@gnu.org>
4400         Improve documentation of functions that change files
4402         * doc/lispref/files.texi (Changing Files): Document that these
4403         functions signal an error on failure.
4405 2015-10-18  Eli Zaretskii  <eliz@gnu.org>
4407         Fix doc string of 'shell-quote-argument'
4409         * lisp/subr.el (shell-quote-argument): Doc fix.  (Bug#21702)
4411 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
4413         Some minor Tramp changes
4415         * doc/misc/tramp.texi (Obtaining Tramp): Add http git cloning.
4417         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
4418         Expand `tramp-auto-save-directory'.
4420 2015-10-18  Michael Albinus  <michael.albinus@gmx.de>
4422         Minor edits in Tramp
4424         * lisp/net/tramp-adb.el (directory-listing-before-filename-regexp):
4425         Declare it.
4427         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
4428         Remove declaration.
4430 2015-10-17  Mark Oteiza  <mvoteiza@udel.edu>
4432         * lisp/emacs-lisp/eldoc.el: Add back-to-indentation to the command list.
4434 2015-10-17  Eli Zaretskii  <eliz@gnu.org>
4436         Avoid crashes when redisplayng a window changes faces or fonts
4438         * src/xdisp.c (redisplay_internal): If redisplaying the selected
4439         window or one of the frames turns on the frame's 'redisplay' flag,
4440         redisplay again.  (Bug#21428)
4442         * src/frame.c (x_set_font): Set the frame's 'fonts_changed' flag.
4444 2015-10-17  Michael Albinus  <michael.albinus@gmx.de>
4446         Solve timimg issues in file-notify-tests.el
4448         * test/automated/file-notify-tests.el (file-notify-test02-events):
4449         Rectify `attribute-change' tests.  There are timing issues with
4450         gfilenotify.  (Bug#21669)
4452 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
4454         Fix quoting of data within htmlfontify doc
4456         * doc/misc/htmlfontify.texi (Data Structures, Customization):
4457         Fix quoting of data structures.  A Lisp quote is needed only
4458         when data appears within Lisp code.
4460 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
4462         * lisp/emacs-lisp/package.el: Reload archive-contents if
4463         priorities change.
4464         (package--old-archive-priorities): New variable.
4465         (package-read-all-archive-contents, package-menu--refresh): Use it
4466         to decide when the `package-archive-contents' needs to be read
4467         again.
4469 2015-10-16  Paul Eggert  <eggert@cs.ucla.edu>
4471         Make src headers idempotent and standalone
4473         Redo src/*.h so that each include file is idempotent (that is, can
4474         be included multiple times with the latter inclusions having no
4475         effect) and standalone (that is, can be included by itself,
4476         with no include file other than config.h needed as a prerequisite).
4477         This is standard practice in GNU programs nowadays.
4478         * lwlib/lwlib-widget.h, src/buffer.h, src/category.h, src/character.h:
4479         * src/charset.h, src/coding.h, src/commands.h, src/disptab.h:
4480         * src/fontset.h, src/gnutls.h, src/indent.h, src/keymap.h, src/macros.h:
4481         * src/regex.h [emacs]:
4482         * src/syntax.h, src/systty.h, src/termhooks.h:
4483         Include lisp.h, for Lisp_Object.
4484         * src/buffer.h, src/category.h, src/cm.h, src/commands.h, src/disptab.h:
4485         * src/indent.h, src/intervals.h, src/keyboard.h, src/macros.h:
4486         * src/process.h, src/puresize.h, src/region-cache.h, src/syntax.h:
4487         * src/syssignal.h, src/sysstdio.h, src/systty.h, src/termchar.h:
4488         * src/termopts.h, src/tparam.h, src/unexec.h:
4489         Protect against multiple inclusion.
4490         * src/buffer.h: Include character.h, for STRING_CHAR.
4491         * src/emacsgtkfixed.h (struct frame):
4492         * src/fontset.h (struct face):
4493         * src/region-cache.h (struct buffer):
4494         * src/termhooks.h (struct glyph):
4495         * src/xsettings.h (struct x_display_info):
4496         Add possibly-forward decl.
4497         * src/syntax.h: Include buffer.h, for BVAR.
4498         * src/sysselect.h: Include lisp.h, for eassume.
4499         * src/termchar.h: Include <stdio.h>, for FILE.
4500         * src/widget.h: Include <X11/IntrinsicP.h>, for Widget.
4501         * src/xsettings.h: Include <X11/Xlib.h>, for XEvent.
4503 2015-10-16  Jürgen Hötzel  <juergen@archlinux.org>
4505         Handle symlink targets containing spaces in tramp-gvfs.el
4507         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4508         Handle symlink targets containing spaces.
4510 2015-10-16  Artur Malabarba  <bruce.connor.am@gmail.com>
4512         * lisp/custom.el (custom-theme-load-path): Demote to defvar.
4514         `custom-theme-load-path' was a defcustom, but it shouldn't be for the
4515         same reason that `load-path' shouldn't.  Setting it via the customize
4516         interface is a trap for the user.
4518         Installed themes commonly add themselves to this variable, which means
4519         its value is not fit for being saved (it will permanently remember dirs
4520         that don't exist anymore).
4522         This is aggravated by the fact that Emacs always applies the `user'
4523         theme on top of any theme that's loaded, since this will apply the old
4524         variable value and remove any new directories that had been recently
4525         added by themes themselves.
4527         Not to mention, we already have `custom-theme-directory', which is safe
4528         to customize.
4530 2015-10-16  Stefan Monnier  <monnier@iro.umontreal.ca>
4532         * lisp/mpc.el: Rename the new toggling commands.
4533         (mpc-toggle-consume, mpc-toggle-repeat, mpc-toggle-single)
4534         (mpc-toggle-shuffle): Add "-toggle" in the name.
4536 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4538         Improve the doc string of 'completion-boundaries'
4540         * lisp/minibuffer.el (completion-boundaries): Rename the argument
4541         TABLE to COLLECTION, for consistency with other high-level
4542         completion functions.  Document how COLLECTION is called if it
4543         is a function.  (Bug#21644)
4545 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
4547         * lisp/dired-aux.el (dired-shell-command): Fix compile warning.
4549 2015-10-16  Oleh Krehel  <ohwoeowho@gmail.com>
4551         Make dired-do-compress work for *.zip files
4553         * lisp/dired-aux.el (dired-check-process): Transform the top-level
4554           comment into a docstring.
4555         (dired-shell-command): New command.  This mirrors
4556         `dired-check-process', but is more user-friendly for passing
4557         arguments.
4558         (dired-compress-file-suffixes): Allow to specify the command switches
4559         along with input (%i) and output (%o) inside the PROGRAM part.
4560         Add an entry for *.zip files, and update the entry for *.tar.gz files
4561         to the new style.  Update the docstring.
4562         (dired-compress-file): When PROGRAM matches %i or %o, use the new
4563         logic.
4564         (dired-update-file-line): Avoid an error when at end of buffer.
4566         Fixes bug#21637.
4568 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4570         Minor improvement in documentation of internals
4572         * doc/lispref/internals.texi (Writing Emacs Primitives): Document QUIT.
4574 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4576         Improve documentation of COLLECTION in completion functions
4578         * doc/lispref/minibuf.texi (Minibuffer Completion): Add a
4579         cross-reference to "Programmed Completion".
4581         * src/minibuf.c (Fcompleting_read): Improve the doc string.
4582         (Bug#21644)
4584 2015-10-16  Eli Zaretskii  <eliz@gnu.org>
4586         Add more release info to etc/HISTORY
4588         * etc/HISTORY: Add more release information about 19.x and 20.x
4589         versions.
4591 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
4593         New file etc/HISTORY
4595         * admin/FOR-RELEASE: Procedure for etc/HISTORY.
4596         * etc/HISTORY: New file.
4597         * etc/NEWS: Mention it.
4599 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
4601         js-mode: Don't misindent generator methods
4603         * lisp/progmodes/js.el (js--looking-at-operator-p): Distinguish
4604         generator methods from multiplication operator
4605         (https://github.com/mooz/js2-mode/issues/275).
4607 2015-10-15  Paul Eggert  <eggert@cs.ucla.edu>
4609         Fix animation timeout delay calculation
4611         * lisp/image.el (image-animate-timeout):
4612         Don’t assume speed is floating-point.
4614 2015-10-15  Mark Oteiza  <mvoteiza@udel.edu>
4616         Add commands for controlling MPD modes
4618         * lisp/mpc.el (mpc-cmd-consume, mpc-cmd-random, mpc-cmd-repeat)
4619         (mpc-cmd-single): New functions.
4620         (mpc-consume, mpc-repeat, mpc-single, mpc-shuffle): New commands.
4621         (mpc-mode-menu): Add new commands as menu items.
4623 2015-10-15  Dmitry Gutov  <dgutov@yandex.ru>
4625         Refer to `(elisp)Basic Completion' in completing-read docstring
4627         * src/minibuf.c (Fcompleting_read): Refer to `(elisp)Basic
4628         Completion' in the docstring (bug#21644).
4630 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4632         * lisp/mpc.el (mpc-format): Always push form to pred
4634 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
4636         Spelling fixes
4638         * configure.ac (bitmapdir): Fix misspelling of bmd_acc.
4639         * test/automated/coding-tests.el (ert-test-coding-bogus-coding-systems):
4640         Fix misspelling of nonexistent file name.
4642 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4644         * lisp/mpc.el (mpc-mode-menu, mpc-toggle-play): Fix docstrings
4646 2015-10-14  Michael Albinus  <michael.albinus@gmx.de>
4648         Some editing fixes in Tramp
4650         * lisp/net/tramp-gvfs.el:
4651         * doc/misc/tramp.texi: "customer option" -> "custom option".
4653         * lisp/net/tramp.el (tramp-completion-function-alist): Fix docstring.
4655 2015-10-14  Jürgen Hötzel  <juergen@archlinux.org>
4657         Use proper localization in tramp-gvfs.el
4659         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-attributes):
4660         Suppress localized settings in order to proper parse gfvs output.
4662 2015-10-14  Warren Lynn  <wrn.lynn@gmail.com>  (tiny change)
4664         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-out-of-band):
4665         Quote argument in proper order.  (Bug#21562)
4667 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
4669         Fix typos in docstrings
4671         * lisp/emacs-lisp/map.el:
4672         * lisp/emacs-lisp/seq.el: Fix typos in the docstrings of the pcase
4673           macros.
4675 2015-10-14  Mark Oteiza  <mvoteiza@udel.edu>
4677         * lisp/mpc.el (mpc-volume-refresh): Check if buffer is live.
4679 2015-10-14  Oleh Krehel  <ohwoeowho@gmail.com>
4681         Make dired-jump work with tar-subfile-mode
4683         * lisp/dired-x.el (dired-jump): When in `tar-subfile-mode', instead of
4684           emitting an error, switch to `tar-superior-buffer'.
4686 2015-10-14  Juanma Barranquero  <lekktu@gmail.com>
4688         * .gitignore: Add build-aux/ar-lib.
4690 2015-10-14  Nicolas Petton  <nicolas@petton.fr>
4692         Better docstrings in seq.el and map.el
4694         * lisp/emacs-lisp/map.el:
4695         * lisp/emacs-lisp/seq.el: Improve the docstring for the pcase patterns.
4697 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
4699         Merge from gnulib
4701         This incorporates:
4702         2015-10-13 binary-io, u64, unistd: port to strict C
4703         2015-09-26 c-ctype: do not worry about EBCDIC + char signed
4704         2015-09-25 c-ctype: port better to z/OS EBCDIC
4705         2015-09-25 gnulib-common.m4: fix gl_PROG_AR_RANLIB/AM_PROG_AR clash
4706         * doc/misc/texinfo.tex, lib/binary-io.c, lib/c-ctype.h, lib/u64.c:
4707         * lib/unistd.c, m4/gnulib-common.m4, m4/gnulib-comp.m4:
4708         Copy from gnulib.
4710 2015-10-14  Paul Eggert  <eggert@cs.ucla.edu>
4712         Take XPNTR private
4714         * src/alloc.c (PURE_POINTER_P): Remove.
4715         All uses replaced with PURE_P.
4716         (XPNTR_OR_SYMBOL_OFFSET): New function.
4717         (XPNTR): Move here from lisp.h.
4718         Reimplement in terms of XPNTR_OR_SYMBOL_OFFSET.
4719         (mark_maybe_object, valid_lisp_object_p, survives_gc_p):
4720         Remove unnecessary cast.
4721         (purecopy): Use XPNTR_OR_SYMBOL_OFFSET instead of XPNTR,
4722         to avoid an unnecessary runtime test for symbols.
4723         * src/lisp.h (lisp_h_XPNTR, XPNTR): Remove, moving XPNTR to alloc.c.
4724         Only alloc.c needs XPNTR now.
4726 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4728         Add MPC play/pause command
4730         * lisp/mpc.el (mpc-toggle-play): New command.
4731         (mpc-mode-map): Bind it to "s".
4732         (mpc-mode-menu): Add corresponding menu item.
4734 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4736         Add bindings and menu items for prev and next tracks
4738         * lisp/mpc.el (mpc-mode-map): Bind ">" to mpc-next,
4739         "<" to mpc-prev.
4740         (mpc-mode-menu): Add corresponding menu items
4742 2015-10-13  Ken Raeburn  <raeburn@raeburn.org>
4744         Reduce face-related consing during frame creation.
4746         * faces.el (face--attributes-unspecified): Compute the "unspecified"
4747         attribute list once.
4748         (face-spec-reset-face): Use it instead of building the list.
4750 2015-10-13  Ken Raeburn  <raeburn@permabit.com>
4752         Do process ConfigureNotify events indicating size changes.
4754         * src/xterm.c (handle_one_xevent): If consecutive ConfigureNotify
4755         events don't have the same size, process each one.
4757 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4759         Derive mpc-mode from special-mode
4761         lisp/mpc.el (mpc-mode-map): Make from sparse keymap.  Unbind g.
4762         (mpc-mode): Derive from special mode.
4763         (mpc-songs-mode-map): Don't set parent keymap.
4765 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4767         Fix error messages for when covers are not found.
4769         The last change to mpc-format let the binding to file call
4770         mpc-file-local-copy with nil argument.  Instead, employ if-let here
4771         so nil bindings don't result in needless computation and errors.
4772         * lisp/mpc.el: Require 'subr-x at compile time.
4773         * lisp/mpc.el (mpc-format): Use if-let.
4775 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
4777         Make dired-do-compress work for *.tar.gz files
4779         * lisp/dired-aux.el (dired-compress-file-suffixes): Associate
4780           "tar -zxvf" to *.tar.gz; update docstring.
4782         (dired-compress-file): Allow to specify switches after the command in
4783         `dired-compress-file-suffixes'.
4785 2015-10-13  Oleh Krehel  <ohwoeowho@gmail.com>
4787         Make dired-do-compress work for directories
4789         * lisp/dired-aux.el (dired-compress-file): When FILE is a directory,
4790           instead of emitting an error, call "tar -czf FILE.tar.gz FILE".
4791         Also convert the top comment into a docstring.
4793 2015-10-13  Stefan Monnier  <monnier@iro.umontreal.ca>
4795         * lisp/mpc.el (mpc-songs-refresh): Don't side-effect `active'
4797         ... since it might come straight from the memoizing table.
4799 2015-10-13  Juanma Barranquero  <lekktu@gmail.com>
4801         * src/w32fns.c (x_change_tool_bar_height): Remove unused variable frame.
4803 2015-10-13  Mark Oteiza  <mvoteiza@udel.edu>
4805         Use special-mode in eww list modes
4807         * lisp/net/eww.el (eww-bookmark-mode, eww-history-mode)
4808         (eww-buffers-mode): Derive from special-mode and remove redundant
4809         setting of buffer-read-only.
4810         (eww-mode-map): Remove redundant keymap parent setting.
4811         (eww-bookmark-mode-map, eww-history-mode-map, eww-buffers-mode-map):
4812         Remove redundant keymap suppressions and mappings.
4814 2015-10-13  Martin Rudalics  <rudalics@gmx.at>
4816         Allow setting frame pixel sizes from frame parameters (Bug#21415)
4818         Also fix some misfeatures in frame (re-)sizing code, add more
4819         debugging information and remove some dead code.
4821         * lisp/frame.el (frame-notice-user-settings, make-frame): Change
4822         parameter names when setting `frame-size-history'.
4823         (frame--size-history): New function.
4825         * src/frame.c (frame_inhibit_resize): If frame has not been made
4826         yet, return t if inhibit_horizontal_resize or
4827         inhibit_vertical_resize bit have been set.
4828         (adjust_frame_size): Simplify.
4829         (make_frame): Initialize inhibit_horizontal_resize,
4830         inhibit_vertical_resize, tool_bar_redisplayed, tool_bar_resized.
4831         (Fframe_after_make_frame): Reset inhibit_horizontal_resize and
4832         inhibit_vertical_resize slots.
4833         (x_set_frame_parameters): Handle `text-pixels' specification for
4834         width and height parameters.  Don't consider new_height or
4835         new_width changes.  Call adjust_frame_size instead of
4836         Fset_frame_size.
4837         (x_figure_window_size): Two new arguments x_width and y_width
4838         returning frame's figures width and height.  Calculate tool bar
4839         height before frame sizes so SET_FRAME_HEIGHT can pick it up.
4840         Handle `text-pixels' specification for width and height
4841         parameters.
4842         (Qtext_pixels, Qx_set_frame_parameters, Qset_frame_size)
4843         (Qx_set_window_size_1, Qx_set_window_size_2)
4844         (Qx_set_window_size_3, Qx_set_menu_bar_lines)
4845         (Qupdate_frame_menubar, Qfree_frame_menubar_1)
4846         (Qfree_frame_menubar_2): New symbols.
4847         * src/frame.h (structure frame): New booleans
4848         tool_bar_redisplayed, tool_bar_resized,
4849         inhibit_horizontal_resize, inhibit_vertical_resize.
4850         (x_figure_window_size): Update external declaration.
4851         * src/gtkutil.c (xg_frame_set_char_size): Set size hints before
4852         calling gtk_window_resize.
4853         (update_frame_tool_bar): Make inhibiting of frame resizing more
4854         discriminative.  Set tool_bar_resized bit.
4855         * src/nsfns.m (x_set_tool_bar_lines): Make inhibiting of frame
4856         resizing more discriminative.  Call adjust_frame_size instead of
4857         x_set_window_size.
4858         (Fx_create_frame): Handle x_width and x_height if
4859         set by x_figure_window_size.
4860         * src/nsterm.m (x_set_window_size): For GNUSTEP build don't
4861         subtract 3 from tool bar height.
4862         (x_set_window_size): Add frame_size_history_add call.
4863         (x_new_font): Call adjust_frame_size instead of
4864         x_set_window_size.
4865         * src/w32fns.c (x_change_tool_bar_height): Reset
4866         tool_bar_redisplayed and tool_bar_resized bits when adding tool
4867         bar.  Make inhibiting of frame resizing more discriminative.
4868         (w32_wnd_proc): Remove dead code in WM_WINDOWPOSCHANGING case.
4869         (Fx_create_frame): Handle x_width and x_height if set by
4870         x_figure_window_size.  Set size hints before adjusting frame size.
4871         (x_create_tip_frame): Adjust x_figure_window_size call.
4872         * src/w32term.c (x_set_window_size): Add frame_size_history_add
4873         call.
4874         * src/widget.c (set_frame_size): Remove dead code.  Add
4875         frame_size_history_add call.  When frame_resize_pixelwise is t
4876         use FRAME_PIXEL_WIDTH and FRAME_PIXEL_HEIGHT instead of
4877         pixel_width and pixel_height.
4878         (update_various_frame_slots): Remove dead code.
4879         (EmacsFrameResize): Add more information in
4880         frame_size_history_add call.
4881         (EmacsFrameQueryGeometry): Round only when frame_resize_pixelwise
4882         is not set.
4883         * src/xdisp.c (redisplay_tool_bar): Set tool_bar_redisplayed bits.
4884         * src/xfns.c (x_set_menu_bar_lines): Change argument name.
4885         (x_change_tool_bar_height): Reset tool_bar_redisplayed and
4886         tool_bar_resized bits when adding tool bar.  Make inhibiting of
4887         frame resizing more discriminative.
4888         (Fx_create_frame): Handle x_width and x_height if set by
4889         x_figure_window_size.  Set size hints before adjusting frame size.
4890         (x_create_tip_frame): Adjust x_figure_window_size call.
4891         * src/xmenu.c (update_frame_menubar): Don't handle Lucid specially.
4892         (set_frame_menubar): On Lucid never add core-border-width to
4893         avoid that adding XtNinternalBorderWidth adds it again.
4894         (free_frame_menubar): Handle frame_inhibit_resize true for Motif.
4895         * src/xterm.c (x_new_font): In non-toolkit case handle size
4896         change of menu bar.
4897         (x_set_window_size_1): Fix calls to frame_size_history_add.
4898         (x_wm_set_size_hint): Remove dead code.  Set
4899         size_hints.min_width and size_hints.min_height to base_width and
4900         base_height.
4902 2015-10-13  Michael Albinus  <michael.albinus@gmx.de>
4904         * test/automated/file-notify-tests.el (file-notify--test-timeout):
4905         Add docstring.  Increase to 10 seconds for remote
4906         directories.  (Bug#21669)
4908 2015-10-12  Paul Eggert  <eggert@cs.ucla.edu>
4910         Unmacroize ebrowse.c and etags.c a bit
4912         * lib-src/ebrowse.c (READ_CHUNK_SIZE): Now an enum constant.
4913         (streq, filename_eq, set_flag, has_flag): Now inline functions.
4914         (set_flag): First arg is now an address, not an lvalue.
4915         All callers changed.
4916         (filename_eq, set_flag, has_flag):
4917         Rename from FILENAME_EQ, SET_FLAG, HAS_FLAG.
4918         All callers changed.
4919         * lib-src/etags.c (streq, strcaseeq, strneq, strncaseeq):
4920         Now inline functions.  Remove asserts that are unnecessary these
4921         days (and in some cases were too-generous anyway).
4923 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
4925         Use highlight for current items
4927         * lisp/mpc.el (mpc-select-make-overlay, mpc-tagbrowser-all-select):
4928         Apply highlight face instead of region face.
4930 2015-10-12  Mark Oteiza  <mvoteiza@udel.edu>
4932         Search for more cover image names in MPC
4934         * lisp/mpc.el (mpc-format): Also look for .folder.jpg or folder.jpg
4935         case insensitively
4937 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4939         Remove or comment out unused variables
4941         * src/w32fns.c (x_set_mouse_color): Comment out variables cursor,
4942         nontext_cursor, mode_cursor, hand_cursor and count.
4943         (x_change_tool_bar_height): Remove variable old_text_height.
4944         (deliver_wm_chars): Remove variable strip_Alt.
4945         (Fw32_shell_execute): Remove variable document_a.
4946         (Fw32_frame_geometry): Remove variable fullboth.
4947         * src/w32term.c (w32_setup_relief_color): Comment out variable
4948         w32_display_info.
4949         (w32_horizontal_scroll_bar_handle_click): Remove variables start, end.
4950         (w32_read_socket): Comment out variables rows, columns.
4951         * src/w32uniscribe.c (uniscribe_check_otf_1): Remove variable rest.
4953 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4955         * src/w32proc.c (sys_select): Fix bitwise test.
4957 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4959         Minor typo corrections in doc strings
4961         * lisp/menu-bar.el (popup-menu, popup-menu-normalize-position):
4962         Doc fixes.
4964 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4966         * nt/INSTALL: Recommend MSYS Automake/Autoconf from ezwinports.
4968 2015-10-12  Eli Zaretskii  <eliz@gnu.org>
4970         Attempt to avoid crashes in plist-member
4972         * src/fns.c (Fplist_member): Don't call QUIT between a CONSP test
4973         and a call to XCDR.  (Bug#21655)
4975 2015-10-12  Mike FABIAN  <mfabian@redhat.com>
4977         * lisp/select.el (gui-get-primary-selection): In
4978         gui-get-primary-selection use gui--selection-value-internal (Bug#20906)
4980 2015-10-12  Tassilo Horn  <tsdh@gnu.org>
4982         Support RTF in doc-view
4984         * lisp/doc-view.el (doc-view-set-doc-type): Add entry for RTF extension.
4986 2015-10-12  Juanma Barranquero  <lekktu@gmail.com>
4988         * src/w32fns.c (get_wm_chars): Increment counter, not pointer.
4990 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
4992         Replace the usage of an obsolete function in auth-source.el
4994         * lisp/gnus/auth-source.el (auth-source-epa-make-gpg-token):
4995         Replace an usage of `epg-context-set-armor' with `setf'.
4997 2015-10-11  Nicolas Petton  <nicolas@petton.fr>
4999         * lisp/gnus/auth-source.el: Use sharp-quoting with functions.
5001 2015-10-11  Jay Belanger  <jay.p.belanger@gmail.com>
5003         Have calc-yank recognize numbers in different bases.
5005         * lisp/calc/calc-yank.el (math-number-regexp): New function.
5006         (calc-yank): Use `math-number-regexp' to recognize numbers.
5008 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5010         Handle an opaque-move X11 window manager operation more efficiently
5012         * src/xterm.c (handle_one_xevent): If a ConfigureNotify event is
5013         followed by more ConfigureNotify events for the same window, process
5014         only the last one.
5016 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5018         Fix cursor setting for tip frame; re-enable cursor generation
5020         * src/xfns.c (x_create_tip_frame): Include the cursor in the window
5021         attributes sent when creating the new X window.  Don't skip setting
5022         the pointerColor parameter.
5024 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5026         Rewrite x_set_mouse_color to sync less
5028         We can track serial numbers of X requests and correlate error events
5029         with the associated requests.  This way we can identify errors for
5030         specific calls without having to use XSync after every one.
5032         * src/xfns.c (enum mouse_cursor): New type.
5033         (struct mouse_cursor_types, struct mouse_cursor_data): New types.
5034         (mouse_cursor_types): New array listing the Lisp variables and default
5035         cursor appearances for each cursor type.
5036         (x_set_mouse_color_handler): New function; checks error event serial
5037         number against submitted requests.
5038         (x_set_mouse_color): Updated to use the new error handler callback,
5039         and to be more table-driven, to simplify repetitious code.
5041 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5043         Add x_catch_errors_with_handler
5045         * src/xterm.c (struct x_error_message_stack): Add new fields for a
5046         callback function and associated data pointer.
5047         (x_error_catcher): If the callback function is set, call it after
5048         saving the error message string.
5049         (x_catch_errors_with_handler): Renamed from x_catch_errors but now
5050         accepts a callback function and data pointer.
5051         (x_catch_errors): Now a wrapper function.
5052         * src/xterm.h (x_special_error_handler): New typedef.
5053         (x_catch_errors_with_handler): Declare.
5055 2015-10-11  Ken Raeburn  <raeburn@raeburn.org>
5057         Introduce x_uncatch_errors_after_check to reduce XSync calls
5059         Both x_had_errors_p and x_check_errors call XSync, so if they're
5060         immediately followed by x_uncatch_errors, its XSync call will be
5061         redundant, resulting in a wasted round trip to the X server.
5063         * src/xterm.c (x_uncatch_errors_after_check): New routine; a copy of
5064         x_uncatch_errors without the XSync call.
5065         (XTmouse_position, x_wm_supports):
5066         * src/xfns.c (x_set_mouse_color):
5067         * src/xmenu.c (Fx_menu_bar_open_internal):
5068         * src/xselect.c (x_own_selection, x_get_foreign_selection):
5069         (Fx_get_atom_name): Call it instead of x_uncatch_errors.
5070         * src/xterm.h (x_uncatch_errors_after_check): Declare.
5072 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
5074         Document the optional prefix to `calc-yank'
5076         * doc/misc/calc.texi (Yanking into the Stack): Document the optional
5077         prefix to `calc-yank'.
5078         * lisp/calc/calc-yank.el (calc-yank): Ensure that things killed from
5079         the Calc buffer are yanked back unchanged.
5081 2015-10-10  Mark Oteiza  <mvoteiza@udel.edu>
5083         * lisp/calendar/calendar.el: Display buffer before executing body.
5085         In each use of this macro, the modeline is derived from a window width
5086         calculation, which will be wrong if (display-buffer) splits the window
5087         horizontally.
5089 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5091         Use ‘echo’ safely with ‘\’ or leading ‘-’
5093         POSIX says that ‘echo FOO’ produces implementation-defined output
5094         if FOO contains leading ‘-’, or ‘\’ anywhere, so don’t assume GNU
5095         behavior in that case.
5096         * Makefile.in (removenullpaths): Remove.
5097         (epaths-force): Rewrite to avoid the need for ‘echo’.
5098         (install-etc): Be clearer about escaping the shell metacharacters
5099         ‘\’ and ‘$’.
5100         * Makefile.in (install-arch-indep, install-etcdoc):
5101         * admin/charsets/mapconv, admin/merge-gnulib, admin/merge-pkg-config:
5102         * admin/quick-install-emacs, build-aux/gitlog-to-emacslog:
5103         * configure.ac, lib-src/rcs2log, make-dist:
5104         * src/Makefile.in (lisp.mk):
5105         Don’t assume ‘echo’ outputs ‘\’ and leading ‘-’ unscathed.
5106         For example, use ‘printf '%s\n' "$foo"’ rather than ‘echo "$foo"’
5107         if $foo can contain arbitrary characters.
5108         * lisp/Makefile.in (TAGS): Use ‘ls’, not ‘echo’, to avoid ‘\’ issues.
5109         * doc/lispref/two-volume.make (vol1.pdf):
5110         * test/etags/make-src/Makefile (web ftp publish):
5111         Use ‘printf’ rather than ‘echo -e’.
5113 2015-10-10  Kaushal Modi  <kaushal.modi@gmail.com>
5115         Allow numbers with different radixes to be yanked.
5117         * lisp/calc/calc-yank.el (calc-yank): Allow radixes besides the
5118         default base 10.
5120 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5122         Improve CHECK_IMPURE and PURE_P speedup
5124         * src/data.c (Faset): Use XVECTOR and XSTRING rather than XPNTR.
5126 2015-10-10  Jay Belanger  <jay.p.belanger@gmail.com>
5128         Use events instead of chars to keep track of steps.
5130         * lisp/calc/calc-prog.el (calc-kbd-loop): Use events instead of chars
5131         to keep track of steps.
5133 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5135         Fix --enable-gcc-warnings problem with older GCC
5137         * src/puresize.h: Add INLINE_HEADER_BEGIN, INLINE_HEADER_END.
5138         This is for building with --enable-gcc-warnings with
5139         GCC 4.6 through 5.0.
5141 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
5143         Fix vertical-motion in truncated lines that end in a stretch
5145         * src/indent.c (Fvertical_motion): Expect overshoot when point is
5146         beyond window margin and lines are truncated, even if we have a
5147         stretch at point.  (Bug#21468)
5149 2015-10-10  Eli Zaretskii  <eliz@gnu.org>
5151         Avoid link-time errors due to inline functions
5153         * src/emacs.c: Include puresize.h, to avoid link-time errors in
5154         unoptimized builds due to PURE_P and CHECK_IMPURE, which are now
5155         inline functions.
5157 2015-10-10  Andreas Schwab  <schwab@linux-m68k.org>
5159         * src/data.c (Faset): Fix last change.
5161 2015-10-10  Paul Eggert  <eggert@cs.ucla.edu>
5163         CHECK_IMPURE and PURE_P speedup
5165         * src/intervals.c (create_root_interval):
5166         Do CHECK_IMPURE only for strings; not needed for buffers.
5167         Prefer ! STRINGP to BUFFERP, for a tad more speed.
5168         * src/puresize.h (CHECK_IMPURE, PURE_P):
5169         Now inline functions instead of macros.
5170         (PURE_P): Don’t use XPNTR; that is now the caller’s responsibility.
5171         All callers changed.
5172         (CHECK_IMPURE): New argument PTR, to save us the work of running XPNTR.
5173         All callers changed.
5175 2015-10-09  Noah Friedman  <friedman@splode.com>
5177         (tramp-open-connection-setup-interactive-shell): Send -onlcr as well.
5179 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5181         * lisp/progmodes/cc-mode.el (c-after-font-lock-init): Only *move*
5183         our after-change-function, rather than re-adding it if it was removed.
5185 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5187         * lisp/cedet/ede: Silence some compiler warnings
5189         * lisp/cedet/ede.el: Require cl-lib.  Silence some compiler warnings.
5190         (ede-menu-obj-of-class-p): Use cl-some rather than `eval'.
5191         (ede-apply-object-keymap, ede-reset-all-buffers)
5192         (ede-auto-add-to-target): Use dolist.
5193         (ede-new, ede-flush-deleted-projects, ede-global-list-sanity-check):
5194         Use field names rather than initarg names in `oref'.
5195         (ede-load-project-file): Remove unused var `file'.
5196         (ede-map-any-target-p): Use cl-some rather than ede-map-targets.
5197         (ede-set): Remove unused var `a'.
5199         * lisp/cedet/ede/emacs.el: Silence some compiler warnings.
5200         (ede-project-autoload): Avoid the old-style "name" argument.
5201         (ede-emacs-find-matching-target): Use field names rather than initarg
5202         names in `oref'.
5204         * lisp/cedet/ede/linux.el: Silence some compiler warnings.
5205         (ede-linux-load, ede-project-autoload): Avoid the old-style
5206         "name" argument.
5207         (ede-linux-find-matching-target): Use field names rather than initarg
5208         names in `oref'.
5210 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5212         * lisp/textmodes/reftex.el: Silence byte-compiler warnings.
5214 2015-10-09  Stefan Monnier  <monnier@iro.umontreal.ca>
5216         * lisp/progmodes/prolog.el (prolog-smie-rules): Try and avoid
5217         indenting too far after ":-".
5219 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
5221         Update case-table and categories of recently added characters
5223         * lisp/international/characters.el: Update information about Latin
5224         Extended-C, Latin Extended-D, Latin Extended-E, Cyrillic Extended,
5225         Georgian, Glagolitic, Deseret, Old Hungarian, and Warang Citi
5226         blocks.  (Byug#21654)
5228 2015-10-09  Martin Rudalics  <rudalics@gmx.at>
5230         * src/frame.c (adjust_frame_size): In minibuffer-only windows
5231         don't count minibuffer height twice.  (Bug#21643)
5233 2015-10-09  Eli Zaretskii  <eliz@gnu.org>
5235         Avoid inflooping in font-lock
5237         * lisp/font-lock.el (font-lock-extend-region-wholelines): Bind
5238         inhibit-field-text-motion around the call to
5239         line-beginning-position, to avoid inflooping.  (Bug#21615)
5241 2015-10-09  Tassilo Horn  <tsdh@gnu.org>
5243         Refactor duplicated code; ensure default is in completions
5245         * lisp/textmodes/reftex-cite.el (reftex--query-search-regexps):
5246         New function.
5247         (reftex-extract-bib-entries): Use it.
5248         (reftex-extract-bib-entries-from-thebibliography): Use it.
5250 2015-10-09  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5252         * doc/misc/autotype.texi (Skeletons as Abbrevs): "if" -> "ifst"
5253         in the example.
5255 2015-10-08  Stefan Monnier  <monnier@iro.umontreal.ca>
5257         * lisp/calc/calc.el: Silence byte-compiler warnings.
5258         (calc-scan-for-dels): Use ignore-errors.
5259         (calc-dispatch, calc-do-dispatch): Make unused arg optional.
5260         (calc-read-key-sequence): Remove unused var `prompt2'.
5261         (calc-kill-stack-buffer): Remove unused var `buflist'.
5262         (calc): Remove unused var `oldbuf'.
5263         (calc-refresh): Use inhibit-read-only.
5264         (calc-can-abbrev-vectors): Declare.
5265         (calc-record): Remove unused var `mainbuf'.
5266         (math-sub-bignum): Remove unused var `sum'.
5267         (math-svo-c, math-svo-wid, math-svo-off): Declare.
5269 2015-10-08  Daiki Ueno  <ueno@gnu.org>
5271         Use g_clear_error instead of g_error_free
5273         * src/image.c: Define g_clear_error instead of g_error_free.
5274         (init_svg_functions): Resolve symbol g_clear_error instead of
5275         g_error_free.
5276         (svg_load_image): Use g_clear_error instead of g_error_free, to
5277         suppress GLib warnings when ERR is not set.  See bug#21641.
5279 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
5281         * src/image.c (image_size_error): Simplify.
5283 2015-10-08  Paul Eggert  <eggert@cs.ucla.edu>
5285         Fix problems caught with --enable-gcc-warnings
5287         * src/image.c (lookup_rgb_color):
5288         * src/xfns.c (x_defined_color):
5289         * src/xterm.c (x_parse_color):
5290         Remove unused locals.
5292 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
5294         * lisp/calc/calc.el (calc-digit-start-entry): Fix typo.
5296 2015-10-08  Jay Belanger  <jay.p.belanger@gmail.com>
5298         Format initial input uniformly
5300         * lisp/calc/calc.el (calc-digit-start-entry): New function.
5301         * lisp/calc/calc.el (calcDigit-start):
5302         * lisp/calc/calc-aent.el (calc-alg-digit-entry):
5303         Use `calc-digit-start-entry' to format input.
5305 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5307         Disable non-working pointerColor setting for X tooltip frame
5309         It generates a bunch of server traffic, but there's some bug wherein
5310         the new mouse cursor settings don't seem to get used.  In most
5311         situations the cursor isn't likely to be seen anyway, so it's not
5312         urgent to fix.
5314         * src/xfns.c (x_create_tip_frame): Don't set pointerColor.
5316 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5318         Reduce some unnecessary X calls
5320         * src/xfns.c (x_real_pos_and_offsets): Remove a redundant XGetGeometry
5321         call.  If border width is wanted, get it from the XGetGeometry call
5322         instead of calling XGetWindowAttributes on the same window.  Skip some
5323         X calls if we've already detected an error from the X server.
5324         * src/xterm.c (x_wm_supports): Delete x_sync before x_had_errors_p.
5325         (handle_one_xevent): Delete XSync call before x_uncatch_errors.
5327 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5329         Reduce color allocation/query traffic in the TrueColor case
5331         When working with an X visual with TrueColor class, pixel values can
5332         be generated from the RGB values according to mask value provided by
5333         the server on connection.  Some of the image-handling code was already
5334         doing this.
5336         * src/xterm.h (x_make_truecolor_pixel): New function; code taken from
5337         lookup_rgb_color.
5338         (x_mutable_colormap): New function.
5339         * src/image.c (lookup_rgb_color): Move pixel composition code to
5340         x_make_truecolor_pixel.
5341         (x_kill_gs_process): Call x_mutable_colormap.
5342         * src/xfaces.c (x_free_colors, x_free_dpy_colors): Call
5343         x_mutable_colormap.
5344         * src/xftfont.c (xftfont_get_colors): Call x_query_colors.
5345         * src/xterm.c (x_query_colors): For a TrueColor display, decompose the
5346         pixel value into RGB values directly, and don't send a request to the
5347         server.
5348         (x_alloc_nearest_color): For a TrueColor display, construct the pixel
5349         value with x_make_truecolor_pixel.
5350         (x_copy_color): For an immutable color map, just return the provided
5351         pixel value.
5353 2015-10-08  Ken Raeburn  <raeburn@raeburn.org>
5355         Cache XParseColor results in the X display info structure
5357         With repeated lookups of foreground and background colors for multiple
5358         faces per frame, we issue a lot of redundant color name lookups to the
5359         X server, waiting every time for the response.  On a remote network
5360         with, say, 30ms round-trip time, this can add nearly a full second to
5361         creation of a new frame.
5363         * src/gtkutil.c (xg_check_special_colors): Call x_parse_color.
5364         * src/image.c (get_spec_bg_or_alpha_as_argb):
5365         (xpm_init_color_cache, xpm_lookup_color):
5366         * src/xfns.c (x_defined_color):
5367         * src/xterm.c (x_parse_color): New function; caches color names not
5368         starting with "#" in the display-info structure.
5369         (x_delete_display): Delete the cache content.
5370         * src/xterm.h (struct color_name_cache_entry): New type.
5371         (x_parse_color): Declare.
5372         (struct x_display_info): Add a new field for the cache.
5374 2015-10-07  Stefan Monnier  <monnier@iro.umontreal.ca>
5376         * src/syntax.c (syms_of_syntax): Make syntax-propertize--done local.
5378 2015-10-07  Eli Zaretskii  <eliz@gnu.org>
5380         Fix segfault in image_size_error
5382         * src/image.c (image_size_error): Pass a Lisp string to
5383         image_error, not a C string.  (Bug#21641)
5385 2015-10-07  Simen Heggestøyl  <simenheg@gmail.com>
5387         Highlight CSS variable definitions
5389         * lisp/textmodes/css-mode.el (css-nmstart-re): Tweak regexp to accept
5390         CSS variables.  (Bug#21638)
5392 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5394         * test/automated/tabulated-list-test.el: New file.
5395         Test bug#21639 and some basic functionality.
5397 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5399         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort):
5400         Check if column can be sorted before trying.  (Bug#21639)
5402 2015-10-07  Nicolas Richard  <youngfrog@members.fsf.org>
5404         Add test for `self-insert-command' (bug#21633)
5406         * test/automated/cmds-tests.el: New file.
5408 2015-10-07  Martin Rudalics  <rudalics@gmx.at>
5410         * src/window.c (resize_frame_windows): Don't set root window's
5411         top position when resizing horizontally.
5413 2015-10-07  Artur Malabarba  <bruce.connor.am@gmail.com>
5415         * lisp/progmodes/prog-mode.el (prettify-symbols-alist):
5416         Document more possible values.
5418 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
5420         * lisp/textmodes/tex-mode.el: Use lexical-binding.
5422 2015-10-06  Stefan Monnier  <monnier@iro.umontreal.ca>
5424         * lisp/indent.el (indent--default-inside-comment): New function.
5425         (indent-for-tab-command): Use it for `noindent' indentation.
5427 2015-10-06  Paul Eggert  <eggert@cs.ucla.edu>
5429         Fix bug in GC_CHECK_MARKED_OBJECTS check
5431         * src/alloc.c (mark_object): Fix bug in checking code.
5432         When GC_CHECK_MARKED_OBJECTS is defined, the bug caused
5433         CHECK_ALLOCATED_AND_LIVE_SYMBOL to repeatedly do the
5434         CHECK_ALLOCATED and CHECK_LIVE tests for the first symbol in each
5435         bucket.  The bug did not affect behavior either in the normal case
5436         where GC_CHECK_MARKED_OBJECTS is not defined, or where Emacs does
5437         not have an internal error that a properly-written
5438         CHECK_ALLOCATED_AND_LIVE_SYMBOL would detect.
5440 2015-10-06  Tassilo Horn  <tsdh@gnu.org>
5442         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
5443         Add prettified version for \\Bbb{Q}.
5445 2015-10-06  Artur Malabarba  <bruce.connor.am@gmail.com>
5447         * test/automated/package-test.el (package-test-install-single):
5448         Add a test for bug#21625.
5450 2015-10-06  Aaron Ecay  <aaronecay@gmail.com>
5452         * lisp/emacs-lisp/package.el (package-install): Fix error when pkg is
5453           not a package-desc object.  Also clarify documentation.  (Bug#21625)
5455 2015-10-06  Eli Zaretskii  <eliz@gnu.org>
5457         Fix display of characters adjacent to ZWJ and ZWNJ
5459         * src/bidi.c (bidi_resolve_neutral): Treat all Bn (a.k.a. "control")
5460         characters the same as directional formatting controls.
5461         (bidi_level_of_next_char): Include all Bn characters in rule L1,
5462         as mandated by the UBA.
5464 2015-10-06  Andreas Schwab  <schwab@suse.de>
5466         * src/cmds.c (Fself_insert_command): Don't use XFASTINT on a negative
5467         number.  (Bug#21633)
5469 2015-10-05  Xue Fuqiao  <xfq.free@gmail.com>
5471         * doc/lispref/objects.texi (Window Type): Add a cross reference.
5473         * src/buffer.c (syms_of_buffer): Typo fix.  (Bug#21622)
5475 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
5477         * lisp/language/misc-lang.el (composition-function-table):
5478         Fix entries for Arabic and Syriac.
5480 2015-10-05  Damien Cassou  <damien@cassou.me>
5482         Add first unit tests for auth-source.el
5484         * test/automated/auth-source-tests.el: New file.
5486 2015-10-05  Eli Zaretskii  <eliz@gnu.org>
5488         Remove redundant redisplay code
5490         * src/xdisp.c (redisplay_internal, try_cursor_movement)
5491         (try_window_reusing_current_matrix, try_window_id): Remove
5492         redundant restrictions on redisplay optimizations based on the
5493         frame's 'redisplay' flag.  See
5494         http://osdir.com/ml/general/2015-10/msg02110.html for the relevant
5495         discussions.
5497 2015-10-04  Stefan Monnier  <monnier@iro.umontreal.ca>
5499         * src/xdisp.c (windows_or_buffers_changed): Improve docstring.
5501 2015-10-04  Xue Fuqiao  <xfq.free@gmail.com>
5503         Update tutorials/TUTORIAL.cn
5505         * etc/tutorials/TUTORIAL.cn: Improve translation.
5507 2015-10-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5509         * src/macfont.m (macfont_encode_char, syms_of_macfont):
5510         Remove unused vars.
5512 2015-10-04  Stefan Merten  <stefan@merten-home.de>
5514         Pull in version numbers from rst.el upstream release.
5516         * lisp/textmodes/rst.el (rst-cvs-header, rst-svn-rev)
5517         (rst-svn-timestamp, rst-official-version)
5518         (rst-official-cvs-rev, rst-package-emacs-version-alist):
5519         Update version numbers.
5521 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
5523         * test/automated/coding-tests.el: New file.
5525 2015-10-04  Michael Albinus  <michael.albinus@gmx.de>
5527         Improve XEmacs compatibility of Tramp
5529         * lisp/net/tramp-compat.el (directory-listing-before-filename-regexp):
5530         Declare if it doesn't exist.
5531         (file-remote-p): Remove defalias, which was necessary for GNU Emacs 21.
5532         (redisplay): Make it an alias if it doesn't exist.
5534         * lisp/net/tramp.el (tramp-get-remote-tmpdir): Don't use
5535         `file-remote-p' (due to XEmacs compatibility).
5537         * lisp/net/trampver.el (locate-dominating-file)
5538         (tramp-compat-replace-regexp-in-string): Autoload.
5539         (tramp-repository-get-version): Do not dupe byte-compiler.
5541 2015-09-02  K. Handa  <handa@gnu.org>
5543         fix for the case that M17N_FLT_USE_NEW_FEATURE is not defined
5545         * src/ftfont.c (ftfont_drive_otf) [not M17N_FLT_USE_NEW_FEATURE]:
5546         Adjusted for the change of type of elements in the array
5547         MFLTGlyphString.glyphs.
5549 2015-10-04  Eli Zaretskii  <eliz@gnu.org>
5550             Michael Heerdegen  <michael_heerdegen@web.de>
5552         shr: fix too long lines in rendered buffers (Bug#21012)
5554         * lisp/net/shr.el (shr-insert-document, shr-fill-text):
5555         Correct calculation of available width.
5556         (shr-find-fill-point): Don't overflow window edge if shr-kinsoku-shorten
5557         is nil.
5559 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5561         Restore blank line before next section, erroneously erased
5562         in my previous commit
5564         * etc/compilation.txt (symbol ant): Add an additional trailing blank
5565         line to this section, so that there are two of them immediately before
5566         the next section.
5568 2015-10-04  Vincent Belaïche  <vincentb1@users.sourceforge.net>
5570         Support MSW filename style for ant compilation error regexp
5572         * etc/compilation.txt (symbol ant):
5573         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
5574         Support MSW filename style.
5576 2015-10-03  Paul Eggert  <eggert@cs.ucla.edu>
5578         * nt/INSTALL: Minor spelling and quote fixes.
5580         * lisp/ibuffer.el: Fix docstring length (Bug#21541).
5582 2015-10-03  Simen Heggestøyl  <simenheg@gmail.com>
5584         Maintain ordering of JSON object keys by default
5586         * lisp/json.el (json-object-type): Mention order handling in doc-string.
5587         (json--plist-reverse): New utility function.
5588         (json-read-object): Maintain ordering for alists and plists.
5589         (json-pretty-print): Ensure that ordering is maintained.
5591         * test/automated/json-tests.el (test-json-plist-reverse): New test for
5592         `json--plist-reverse'.
5593         (json-read-simple-alist): Update test to accommodate for changes in
5594         `json-read-object'.
5596         * etc/NEWS: Document the new behavior of the pretty printing functions.
5598 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
5600         * src/coding.c (complement_process_encoding_system): Revert last change.
5602 2015-10-03  Ulf Jasper  <ulf.jasper@web.de>
5604         * admin/MAINTAINERS: Add entry for Ulf Jasper.
5606 2015-10-03  Xue Fuqiao  <xfq.free@gmail.com>
5608         Doc fix for `defmacro'
5610         * doc/lispref/objects.texi (Macro Type): `defmacro' is a macro now.
5612 2015-10-03  Andreas Schwab  <schwab@linux-m68k.org>
5614         More validatation of coding systems
5616         * src/fileio.c (Finsert_file_contents): Remove redundant
5617         coding-system check.
5618         (choose_write_coding_system): Likewise.
5619         * src/coding.c (complement_process_encoding_system): Check argument
5620         for valid coding system.
5622 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5624         Avoid crashes in coding_inherit_eol_type
5626         * src/coding.c (coding_inherit_eol_type): Check the validity of
5627         the arguments.  Suggested by Andreas Schwab <schwab@linux-m68k.org>.
5628         (Bug#21602)
5630 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5632         More validatation of coding system in 'write-region'
5634         * src/coding.c (choose_write_coding_system): More validation of
5635         coding-system from various sources.  Suggested by Andreas Schwab
5636         <schwab@linux-m68k.org>.  (Bug#21602)
5638 2015-10-03  Eli Zaretskii  <eliz@gnu.org>
5640         Avoid crashes due to invalid coding-system
5642         * src/fileio.c (choose_write_coding_system)
5643         (Finsert_file_contents): Check validity of coding-system-for-write
5644         and coding-system-for-read bound by the caller.  (Bug#21602)
5646 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
5648         Adapt to new prettify-symbols-unprettify-at-point default
5650         * etc/NEWS: Mention that unprettication of symbol at point is off
5651         by default.
5653 2015-10-03  Tassilo Horn  <tsdh@gnu.org>
5655         Revert my two recent process.c changes
5657         Revert "Improve last commit to process.c" and "Remove callback-handled
5658         channels from Available set" because they did not fix bug#21313.
5660         This reverts commits bfa1aa8e2bdaf14adbbf1e9e824051d3f740694c and
5661         27f871907cc24f33a7d12ac3a4ab71a88f0bc554.
5663 2015-10-02  Markus Triska  <triska@metalevel.at>
5665         * lisp/progmodes/prolog.el: Update and extend operator table.
5666         (prolog-smie-grammar): Add multifile, public etc.
5668 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
5670         Allow autogen even when Git is not installed
5672         * autogen.sh: Test ‘git status’ before trying to use Git.
5674 2015-10-02  Stefan Monnier  <monnier@iro.umontreal.ca>
5676         * lisp/vc/vc-git.el (vc-git-region-history): Handle local changes.
5677         Adjust lto/lfrom when we have uncommitted changes.
5679 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
5681         Fix problems found by clang 3.5.0
5683         * src/cmds.c (Fdelete_char): Don’t assume XINT returns int.
5684         * src/font.c (font_parse_family_registry):
5685         Use &"str"[X] instead of "str"+X, to pacify clang -Wstring-plus-int.
5687 2015-10-02  Eli Zaretskii  <eliz@gnu.org>
5689         * nt/INSTALL: Update instructions for running autogen.sh.
5691         * nt/INSTALL: Point to ezwinports for libXpm binaries.
5693 2015-10-02  Daniel Colascione  <dancol@dancol.org>
5695         Fix winner in cl-lib not loaded case
5697         * lisp/winner.el (winner-change-fun): Don't use cl-lib functions
5698         without requiring CL
5700 2015-10-02  Paul Eggert  <eggert@cs.ucla.edu>
5702         Fix a few problems with directed quotes
5704         This is in response to a problem report by Kaushal Modi in:
5705         http://bugs.gnu.org/21588#25
5706         * lisp/cedet/mode-local.el (describe-mode-local-overload):
5707         * lisp/emacs-lisp/bytecomp.el (byte-compile-fix-header):
5708         * lisp/info-xref.el (info-xref-check-all-custom):
5709         * lisp/mail/emacsbug.el (report-emacs-bug-hook):
5710         Prefer directed to undirected single quotes in diagnostics.
5712 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5714         Revert "Attempt to fix slow redisplay caused by last changes"
5716         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
5717         (try_cursor_movement): Don't relax requirements for redisplay
5718         optimizations for the selected frame.  (Bug#21597)
5720         This reverts commit c4c1fb97727ff52bcfa83ad5ed94a64a93d12e59.
5722 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5724         Fix slow redisplay when daemon frame exists
5726         * src/xdisp.c (redisplay_internal): Don't consider daemon frames
5727         when looking for frames that need to be redisplayed.  (Bug#21597)
5729 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5731         Attempt to fix slow redisplay caused by last changes
5733         * src/xdisp.c (try_window_id, try_window_reusing_current_matrix)
5734         (try_cursor_movement): Relax requirements for redisplay
5735         optimizations for the selected frame.  (Bug#21597)
5737 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
5739         * src/dired.c (Ffile_name_completion, Ffile_name_all_completions):
5740         Improve doc string.
5742 2015-10-01  Stephen Leake  <stephen_leake@stephe-leake.org>
5744         * lisp/minibuffer.el (minibuffer-completion-help):
5745         Set default base-size, in case completion table does not set it.
5747 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5749         Fix GUD display of GDB output with non-ASCII text
5751         * lisp/progmodes/gdb-mi.el (gdb-mi-decode-strings): New defcustom.
5752         (gdb-mi-decode): New function.
5753         (gud-gdbmi-marker-filter): If gdb-mi-decode-strings is non-nil,
5754         decode octal escapes in GDB output.  (Bug#21572)
5756 2015-10-01  Eli Zaretskii  <eliz@gnu.org>
5758         * nt/INSTALL: Document where to find XPM support files.
5760 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
5762         Un- and re-prettification are not exclusive
5764         * lisp/progmodes/prog-mode.el (prettify-symbols--post-command-hook):
5765         Re-apply prettification to previous symbol also when unprettifying
5766         next one.
5768 2015-10-01  Tassilo Horn  <tsdh@gnu.org>
5770         Don't unprettify symbol at point by default
5772         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
5773         Default to disabled (nil).
5775 2015-09-30  Artur Malabarba  <bruce.connor.am@gmail.com>
5777         * lisp/progmodes/prog-mode.el (prettify-symbols-unprettify-at-point):
5778         Support unprettifying when point is after a symbol.
5780         * etc/NEWS: Document `prettify-symbols-unprettify-at-point'.
5782 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
5784         Avoid assertion violations in push_prefix_prop
5786         * src/xdisp.c (push_prefix_prop): Avoid assertion violations when
5787         a line that has a line-prefix defined starts with an image.  (Bug#21428)
5789 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
5791         Disable some display optimizations when frames need redisplay
5793         These optimizations were previously disabled by the
5794         windows_or_buffers_changed flag, which now is not set
5795         when only some frames need to be redrawn.
5796         * src/xdisp.c (redisplay_internal): Redisplay any frame whose
5797         'redisplay' flag is set.
5798         (try_window_reusing_current_matrix, try_window_id)
5799         (try_cursor_movement): Disable these optimizations when the
5800         frame's 'redisplay' flag is set.
5802 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
5804         Don't modify buffer by unprettification
5806         * lisp/progmodes/prog-mode.el (prettify-symbols--compose-symbol):
5807         (prettify-symbols--post-command-hook, prettify-symbols-mode): Don't
5808         modify buffer when setting/removing custom prettify-symbols-start/end
5809         text properties.  Add them to font-lock-extra-managed-props, too.
5811 2015-09-30  Stefan Monnier  <monnier@iro.umontreal.ca>
5813         Try to avoid redisplaying all frames when creating a new one
5815         * src/xfns.c (x_set_menu_bar_lines, x_change_tool_bar_height):
5816         * src/xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
5817         (Finternal_set_lisp_face_attribute, update_face_from_frame_parameter):
5818         * src/frame.c (x_set_screen_gamma): Set the specific frame's
5819         `redisplay' bit rather than windows_or_buffers_changed.
5821         * src/window.c (apply_window_adjustment): Remove redundant setting of
5822         windows_or_buffers_changed.
5824         * src/xdisp.c (redisplay_internal): Set the specific frame's
5825         `redisplay' bit rather than update_mode_lines in response to
5826         cursor_type_changed.
5827         (syms_of_xdisp): Use hash-tables for redisplay_*_cause tables.
5828         (AINC): Adjust accordingly.
5830 2015-09-30  Tassilo Horn  <tsdh@gnu.org>
5832         Implement unprettification of symbol at point
5834         * lisp/progmodes/prog-mode.el: Implement feature for unprettifying the
5835         symbol at point.
5836         (prettify-symbols--current-symbol-bounds): New variable.
5837         (prettify-symbols--post-command-hook): New function.
5838         (prettify-symbols-unprettify-at-point): New defcustom.
5839         (prettify-symbols-mode): Use it.
5840         (prettify-symbols--compose-symbol): Use them.
5842 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5844         * src/macfont.m (mac_font_descriptor_supports_languages):
5845         Regard "zh" as synonym of "zh-Hans".
5847 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5849         Work around crash when displaying etc/HELLO on OS X 10.11
5851         * src/macfont.m (mac_font_get_weight)
5852         (mac_font_descriptor_get_adjusted_weight): New functions.
5853         (macfont_store_descriptor_attributes): Adjust weight.
5855 2015-09-30  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
5857         * src/macfont.m: Fix compilation with USE_CT_GLYPH_INFO.
5859 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
5861         * lisp/arc-mode.el (archive-rar-summarize): Better alignment
5862         of the columns.
5864 2015-09-30  Nicolas Petton  <nicolas@petton.fr>
5866         Use unar and lsar to handle RAR archives in arc-mode
5868         * lisp/arc-mode.el (archive-rar-extract, archive-extract-by-file): Rely
5869         on unar and lsar instead of unrar-free for RAR archives (bug#17663).
5871 2015-09-30  Wieland Hoffmann  <themineo@gmail.com>  (tiny change)
5873         Clarify :create in auth-source's docs
5875         * lisp/gnus/auth-source.el (auth-source-search):
5876         Clarify :create's meaning.
5878 2015-09-30  Phil Sainty  <psainty@orcon.net.nz>
5880         Avoid empty -path arguments in rgrep
5882         * lisp/progmodes/grep.el (rgrep-default-command): Remove nil from
5883         the list produced according to grep-find-ignored-directories,
5884         before passing it to Find/Grep invocation.  (Bug#21548)
5886 2015-09-30  Eli Zaretskii  <eliz@gnu.org>
5888         Clarify documentation of pos-visible-in-window-p
5890         * src/window.c (Fpos_visible_in_window_p): Clarify the meaning of
5891         t for POS.  See
5892         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg01040.html
5893         for the original report.
5895         * doc/lispref/windows.texi (Window Start and End): Clarify the
5896         meaning of t for the POSITION argument of pos-visible-in-window-p.
5898 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5900         * lisp/progmodes/prolog.el: Fix various indentation cases.
5901         (prolog-operator-chars): New const (add \\).
5902         (prolog-smie-forward-token, prolog-smie-backward-token): Use it.
5903         (prolog-smie-rules): Add rules according to bug#21526.
5905 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5907         * lisp/progmodes/sh-script.el: Old "dumb" continued line indent.
5908         (sh-indent-after-continuation): Add new value `always' (bug#17620)
5909         (sh-smie-sh-rules): Remove old handling of continued lines.
5910         (sh-smie--indent-continuation): New function.
5911         (sh-set-shell): Use it.
5913 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5915         * lisp/progmodes/octave.el: Use grammar more; Handle enumeration fun.
5916         Remove redundant :group keyword args.
5917         (octave-begin-keywords, octave-else-keywords, octave-end-keywords):
5918         Remove variables.
5919         (octave-operator-table, octave-smie-bnf-table): Use let-when-compile to
5920         turn them into compile-time variables.
5921         Auto-generate the "foo ... end" rules from the "foo ... endfoo" rules.
5922         Add rules for break, continue, return, global, and persistent.
5923         Refine the rule for "until".
5924         (octave-smie--funcall-p, octave-smie--end-index-p)
5925         (octave-smie--in-parens-p): New functions.
5926         (octave-smie-backward-token, octave-smie-forward-token): Use them to
5927         distinguish the "enumeration" function and the "end" index from
5928         their corresponding keywords.
5929         (octave--block-offset-keywords): New constant.
5930         (octave-smie-rules): Use it.  Adjust rules for new global/persistent
5931         parsing.
5932         (octave-reserved-words): Redefine using octave-smie-grammar.
5933         (octave-font-lock-keywords): Use octave-smie--funcall-p and
5934         octave-smie--end-index-p.
5936 2015-09-29  Stefan Monnier  <monnier@iro.umontreal.ca>
5938         * lisp/emacs-lisp/lisp-mode.el (let-when-compile): Work like let*.
5940 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
5942         * nt/INSTALL: Remove references to GTK site.
5943         That site no longer offers Windows downloads.
5945 2015-09-29  Eli Zaretskii  <eliz@gnu.org>
5947         * nt/INSTALL: Add instructions for installing Git.
5949 2015-09-29  Katsumi Yamaoka  <yamaoka@jpl.org>
5951         * lisp/net/shr.el (shr-colorize-region): Allow 88-color tty to
5952         use colors.  Suggested by Eli Zaretskii.
5954 2015-09-28  Katsumi Yamaoka  <yamaoka@jpl.org>
5956         * lisp/net/shr.el (shr-colorize-region): Don't do it on a system
5957         not supporting 256 above colors (bug#21557).
5959 2015-09-28  Dmitry Gutov  <dgutov@yandex.ru>
5961         Revert "Don't rely on defaults in decoding UTF-8 encoded Lisp files"
5963         This reverts commit db828f62f6f17414fbbc3206dac123dc73dd6055.
5965 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5967         Add documentation for seq.el
5969         * doc/lispref/sequences.texi: Add documentation regarding extending
5970         seq.el, as well as missing documentation for seq-elt, seq-length, seq-p,
5971         seq-do and seq-map.
5973 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5975         Better documentation for seq-some
5977         * doc/lispref/sequences.texi:
5978         * lisp/emacs-lisp/seq.el: Update the documentation of seq-some to
5979         guarantee that the returned value is the first non-nil value that
5980         resulted from applying the predicate.
5982 2015-09-28  Nicolas Petton  <nicolas@petton.fr>
5984         * lisp/arc-mode.el: Sharp-quote function arguments.
5986 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
5988         Avoid redisplay error in ediff-regions-wordwise
5990         * lisp/vc/ediff-util.el
5991         (ediff-clone-buffer-for-region-comparison): Make sure the mark is
5992         set before activating it.  (Bug#21567)
5994 2015-09-28  Eli Zaretskii  <eliz@gnu.org>
5996         Another attempt to fix crashes due to prematurely freed faces
5998         * src/xdisp.c (redisplay_internal): Inhibit freeing of realized
5999         faces for as long as we might have desired matrices that reference
6000         those faces.  (Bug#21428)
6002 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
6004         Add auctex development list email address
6006 2015-09-28  Tassilo Horn  <tsdh@gnu.org>
6008         * admin/MAINTAINERS: Add entries for AUCTeX team and myself.
6010 2015-09-28  Arash Esbati  <esbati@gmx.de>  (tiny change)
6012         Improve wrapfig package support and caption parsing
6014         * lisp/textmodes/reftex-vars.el (reftex-label-alist-builtin):
6015         Correct description string and add wraptable environment.
6016         (reftex-default-context-regexps): Improve caption regexp.
6018 2015-09-28  Anders Lindgren  <andlind@gmail.com>
6020         Respect value of frame_resize_pixelwise when handling fullscreen state
6022         * src/nsterm.m (handleFS): Respect frame_resize_pixelwise when
6023         setting size increments.
6025 2015-09-27  Michael Albinus  <michael.albinus@gmx.de>
6027         * src/gfilenotify.c (Fgfile_add_watch): Cleanup temporary variable.
6029 2015-09-27  Simen Heggestøyl  <simenheg@gmail.com>
6031         Add prettify-symbols-alist for js-mode
6033         * lisp/progmodes/js.el (js--prettify-symbols-alist): New defconst.
6034         (js-mode): Use it.
6036 2015-09-27  Eli Zaretskii  <eliz@gnu.org>
6038         * nt/subdirs.el: File deleted (no longer used).
6040 2015-09-26  Alan Mackenzie  <acm@muc.de>
6042         Fix follow-scroll-up/down, making them replacements for scroll-up/down
6044         1. Allow point to move between follow windows in scroll operations.
6045         2. Fix bug where `right-char' just before EOB caused spurious scrolling,
6046         when EOB was isolated in the last follow window.
6048         * lisp/follow.el (follow-fixed-window): New variable.
6049         (follow-get-scrolled-point): New function.
6050         (follow-scrol-up, follow-scroll-down): Add autoload cookies.
6051         Reformulate the code.  Put `scroll-command' properties on the functions.
6052         Correct minor errors in ...-down's doc string and code.
6053         (follow-calc-win-end): Amend incomplete doc string.  Use
6054         `pos-visible-in-window-p' to check whether EOB is in the window.
6055         (follow-estimate-first-window-start): Correct an off-by-1 error.
6056         (follow-adjust-window): Add handling for explicit scrolling operations.
6058 2015-09-26  Paul Eggert  <eggert@cs.ucla.edu>
6060         * admin/MAINTAINERS: Add self, plus list some more files
6061         sans maintaners.
6063 2015-09-26  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
6065         New DWIM commands for changing letter-case
6067         * lisp/simple.el (upcase-dwim, downcase-dwim, capitalize-dwim):
6068         New functions.  (Bug#21501)
6070 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
6072         * etc/PROBLEMS: Document problems with pasting on MS-Windows.
6074 2015-09-26  Eli Zaretskii  <eliz@gnu.org>
6076         Make face realization be more frame-specific
6078         * src/frame.h (struct f): New flag face_change.
6079         * src/xfaces.c (Finternal_make_lisp_face)
6080         (Finternal_copy_lisp_face, Finternal_set_lisp_face_attribute)
6081         (update_face_from_frame_parameter): Set the face_change flag only
6082         for the frame whose faces are affected.
6083         * src/xdisp.c (init_iterator): If a frame's face_change flag is
6084         set, free faces only on that frame.
6085         (redisplay_internal): Disable "display optimization 1" if the
6086         frame's face_change flag is set.
6087         (redisplay_window): Don't allow skipping a window's redisplay if
6088         its frame's face_change flag is set.
6089         * src/frame.c (x_set_screen_gamma): Instead of calling
6090         Fclear_face_cache, call clear_face_cache and set
6091         windows_or_buffers_changed to a non-zero value.  This avoids
6092         setting the global face_change flag that triggers face realization
6093         on all frames and thorough redisplay of all of them.
6095         * lisp/term/tty-colors.el (tty-register-default-colors): Don't
6096         clear face cache if the selected frame is a GUI frame.
6098 2015-09-26  Tassilo Horn  <tsdh@gnu.org>
6100         Remove font-latex specific check
6102         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
6103         Use syntax-ppss data to identify verbatim contents.
6105 2015-09-25  Tassilo Horn  <tsdh@gnu.org>
6107         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
6108         Fix some false negatives.
6110 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6112         Reorder Windows version in Emacs manifests
6114         * nt/emacs-x64.manifest:
6115         * nt/emacs-x86.manifest: Reorder Windows version from lowest to
6116         highest.
6118 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6120         Update Emacs manifest files for Windows 10
6122         * nt/emacs-x86.manifest:
6123         * nt/emacs-x64.manifest: Declare compatibility with Windows 10.
6125 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6127         Avoid non-ASCII decoding errors in C src files
6129         * src/nsterm.m:
6130         * src/lisp.h:
6131         * src/editfns.c:
6132         * src/doprnt.c: Add 'coding' cookies -- these files include
6133         Unicode characters and should be decoded as UTF-8.
6135 2015-09-25  Alan Mackenzie  <acm@muc.de>
6137         Resurrect edebug-set-initial-mode, repurposing it to set the global mode
6139         * lisp/emacs-lisp/edebug.el (edebug-initial-mode-alist): Uncomment, and
6140         amend to match current modes and functions.
6141         (edebug-set-initial-mode): Uncomment and change from setting a defun's
6142         `edebug-initial-mode''s property to setting the variable
6143         `edebug-initial-mode'.
6144         (top level): Create new binding C-x C-a C-m for
6145         `edebug-set-initial-mode'.
6147         * doc/lispref/edebug.texi (Edebug Execution Modes): Document
6148         `edebug-set-initial-mode' and its new key binding.
6149         (Edebug Options): Mention the new command in the pertinent place.
6151         * etc/NEWS: Write entry for this change.
6153 2015-09-25  Eli Zaretskii  <eliz@gnu.org>
6155         Avoid non-ASCII decoding errors in Texinfo files
6157         * doc/misc/tramp.texi:
6158         * doc/lispref/strings.texi:
6159         * doc/lispref/positions.texi:
6160         * doc/lispref/help.texi:
6161         * doc/lispref/functions.texi:
6162         * doc/lispintro/emacs-lisp-intro.texi:
6163         * doc/emacs/text.texi:
6164         * doc/emacs/modes.texi:
6165         * doc/emacs/mini.texi:
6166         * doc/emacs/display.texi:
6167         * doc/emacs/custom.texi:
6168         * doc/emacs/basic.texi: Add 'coding' cookies -- these files use
6169         Unicode characters and should be decoded as UTF-8.
6170         * doc/lispref/frames.texi (Size Parameters): Don't use a non-ASCII
6171         apostrophe unnecessarily.
6173 2015-09-25  Paul Eggert  <eggert@cs.ucla.edu>
6175         Merge from gnulib
6177         This incorporates:
6178         2015-09-25 c-ctype: rewrite to use inline functions
6179         2015-09-24 maint: add coding cookies to non-ASCII sources
6180         2015-09-24 gitlog-to-changelog: trim only trailing whitespaces
6181         * build-aux/gitlog-to-changelog, doc/misc/texinfo.tex:
6182         * lib/acl-internal.c, lib/acl-internal.h, lib/c-ctype.c:
6183         * lib/c-ctype.h, lib/get-permissions.c, lib/qcopy-acl.c:
6184         * lib/set-permissions.c:
6185         Copy from gnulib.
6187 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
6189         Update publicsuffix.txt from upstream
6191         * etc/publicsuffix.txt: Update from
6192         https://publicsuffix.org/list/effective_tld_names.dat
6193         dated 2015-09-24 17:29:21 UTC.
6195 2015-09-24  Eli Zaretskii  <eliz@gnu.org>
6197         Prevent timers from messing up TTY menus
6199         * src/term.c (tty_menu_activate): Inhibit redisplay for as long as
6200         the TTY menu is open.  (Bug#21530)
6202 2015-09-24  Paul Eggert  <eggert@cs.ucla.edu>
6204         No need to mention K&R C in c-mode intro
6206 2015-09-24  Stefan Monnier  <monnier@iro.umontreal.ca>
6208         Fix recent bootstrap problems
6210         * src/syntax.c (parse_sexp_propertize): Fix last fix.
6211         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): Fix paren typo.
6212         * lisp/emacs-lisp/lisp-mode.el: Require cl-lib for cl-progv.
6214 2015-09-24  Michael Albinus  <michael.albinus@gmx.de>
6216         * src/gfilenotify.c (Fgfile_add_watch): Decrease polling rate.
6218 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
6220         Properly quote nested xml comments (Bug#6267) (Bug#20001)
6222         * lisp/nxml/nxml-mode.el (nxml-comment-quote-nested): New function.
6223         (nxml-mode): Set comment-quote-nested-function.
6225 2015-09-23  Ivan Andrus  <darthandrus@gmail.com>
6227         Allow major-modes full control over quoting nested comments
6229         * lisp/newcomment.el (comment-quote-nested-function): New variable.
6230         (comment-quote-nested-default): New function.
6231         (comment-quote-nested): Use `comment-quote-nested-function'.
6233 2015-09-23  Paul Eggert  <eggert@cs.ucla.edu>
6235         Prefer CALLN in a few more places
6237         * src/macfont.m (macfont_set_family_cache):
6238         * src/nsterm.m (append2):
6239         * src/xterm.c (x_cr_export_frames):
6240         Prefer CALLN to allocating the arg arrays by hand.
6242 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
6244         Adapt file-notify-test02-events test case
6246         * test/automated/file-notify-tests.el (file-notify-test02-events):
6247         Create a new watch for every test.
6249 2015-09-23  Michael Albinus  <michael.albinus@gmx.de>
6251         Continue gfilenotify.c implementation of missing parts
6253         * lisp/filenotify.el (file-notify-add-watch): Append `flags' to
6254         `gfile-add-watch' call.
6255         (file-notify-rm-watch): Modify `file-notify-descriptors' only
6256         after calling the low level functions.
6258         * src/gfilenotify.c (dir_monitor_callback): Check, whether
6259         event_type is expected.
6260         (Fgfile_add_watch): Allow also `change'and `attribute-change' for FLAGS.
6261         (Fgfile_rm_watch): Fix typo.
6262         (syms_of_gfilenotify): Declare Qchange and Qattribute_change.
6264 2015-09-23  Stefan Monnier  <monnier@iro.umontreal.ca>
6266         * src/syntax.c (parse_sexp_propertize): Handle spurious
6267         e_property_truncated flag.
6268         (update_syntax_table_forward): Remove invalid assertion.
6270 2015-09-23  Eli Zaretskii  <eliz@gnu.org>
6272         * src/xdisp.c (produce_stretch_glyph): Support ':relative-width'
6273         space display spec on text-mode terminals, by calling
6274         PRODUCE_GLYPHS instead of x_produce_glyphs.  Remove the
6275         HAVE_WINDOW_SYSTEM guards from the supporting code, as well as the
6276         test for a GUI frame.
6278 2015-09-23  Oleh Krehel  <ohwoeowho@gmail.com>
6280         Move let-when-compile to lisp-mode.el
6282         This fixes the bootstrapping problem of `let-when-compile' using
6283         `cl-progv' while being in subr.el (i.e. before cl stuff was loaded).
6285 2015-09-23  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
6287         * lisp/url/url-http.el (url-http-parse-headers): Do not
6288         automatically include Authorization header in redirect.
6289         (Bug#21350)
6291 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6293         Clarify documentation of ':relative-width'
6295         * doc/lispref/display.texi (Specified Space): Document that
6296         ':relative-width' is only supported on GUI frames.
6298 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6300         Fix 'current-column' in presence of :relative-width
6302         * src/indent.c (check_display_width): Support ':relative-width'
6303         in a display spec that specifies a stretch glyph.  (Bug#21533)
6305 2015-09-22  Ken Manheimer  <ken.manheimer@gmail.com>
6307         Reformat the pdbtrack remote-file fix ChangeLog.2 entry
6309         ... to conform better to CONTRIBUTE guidelines.
6311 2015-09-22  Stefan Monnier  <monnier@iro.umontreal.ca>
6313         * lisp/progmodes/prolog.el: Fix indentation of empty line
6315         * lisp/emacs-lisp/smie.el (smie-rules-function): Document new
6316         `empty-line-token' element.
6317         (smie-indent-empty-line): New function.
6318         (smie-indent-functions): Add it.
6320         * lisp/progmodes/prolog.el (prolog-smie-rules): Fix :list-intro
6321         behavior and use the new `empty-line-token' element (bug#21526).
6322         (prolog-mode-variables): Fix comment-start-skip setting to match
6323         comment-start.
6325         * test/indent/prolog.prolog: Add nested indentation tests.
6327         * lisp/newcomment.el (comment-normalize-vars): Fix default value of
6328         comment-start-skip not to misuse submatch 1.
6330 2015-09-22  Alan Mackenzie  <acm@muc.de>
6332         Make description of `edebug-initial-mode' user friendly
6334         Fixes bug#21365.
6336         * dec/lispref/edebug.texi (Edebug Execution Modes): Change the
6337         description of `edebug-initial-mode' from that of its implementation
6338         to that of its visual effect and use.  Move the paragraph higher up.
6340 2015-09-22  Eli Zaretskii  <eliz@gnu.org>
6342         lisp/progmodes/gud.el (gud-format-command): Fix last commit
6344         * lisp/progmodes/gud.el (gud-format-command): Don't use Tramp internal
6345         functions 'tramp-file-name-localname' and 'tramp-dissect-file-name'.
6347 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
6349         Improve last commit to process.c
6351 2015-09-22  Michael Albinus  <michael.albinus@gmx.de>
6353         Implement gfile-valid-p
6355         * lisp/filenotify.el (file-notify-callback): Fix typo.
6356         (gfile-valid-p): Remove defalias.
6358         * src/gfilenotify.c (dir_monitor_callback): Cancel the monitor if
6359         the file or directory to be watched is deleted.
6360         (Fgfile_add_watch): Make watch_object a triple.
6361         (Fgfile_rm_watch): Check, whether watch is cancelled already.
6362         (Fgfile_valid_p): New defun.
6363         (syms_of_gfilenotify): Declare Sgfile_valid_p.
6365 2015-09-22  Tassilo Horn  <tsdh@gnu.org>
6367         Remove callback-handled channels from Available set
6369         * src/process.c (wait_reading_process_output): Remove channel from
6370         Available set if it is handled by a callback, e.g., dbus or
6371         inotify (bug#21313).
6373 2015-09-21  Mark Oteiza  <mvoteiza@udel.edu>
6375         Use lunate epsilon for TeX \epsilon
6377         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
6378         Add \varepsilon using GREEK SMALL LETTER EPSILON, and change
6379         \epsilon to use GREEK LUNATE EPSILON SYMBOL
6381 2015-09-21  Stefan Monnier  <monnier@iro.umontreal.ca>
6383         * lisp/progmodes/prolog.el: Fix nested electric if-then-else
6385         * lisp/progmodes/prolog.el (prolog-find-unmatched-paren): Use innermost
6386         rather than outermost paren (bug#21526).
6388 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6390         Improve git diff hunk headers for .el, .texi
6392         Problem reported by Alan Mackenzie in:
6393         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00826.html
6394         * .gitattributes (*.el, *.texi): New patterns.
6395         * autogen.sh: Configure diff.elisp.xfuncname and
6396         diff.texinfo.xfuncname if using Git.
6398 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6400         Don't rely on defaults in decoding UTF-8 encoded Lisp files
6402         * lisp/replace.el:
6403         * lisp/textmodes/rst.el:
6404         * lisp/whitespace.el: Add an explicit UTF-8 encoding tag.
6406 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6408         Clarify or replace a few \u escapes
6410         * doc/lispref/nonascii.texi (Character Properties)
6411         More-detailed commentary for \u escapes.
6412         * lisp/progmodes/python.el (python--prettify-symbols-alist):
6413         * lisp/replace.el (query-replace-from-to-separator):
6414         * lisp/textmodes/rst.el (rst-bullets, rst-re-alist-def)
6415         (rst-mode-syntax-table):
6416         * lisp/whitespace.el (whitespace-display-mappings):
6417         Prefer actual character to \u escape when this makes the code
6418         easier to follow in the usual case where Unicode chars can be
6419         displayed.
6421 2015-09-21  Paul Eggert  <eggert@cs.ucla.edu>
6423         Pacify GCC -Wmaybe-uninitialized in xdisp.c
6425         * src/xdisp.c (face_before_or_after_it_pos): Use do-while rather
6426         than while loop to avoid GCC -Wmaybe-uninitialized diagnostic with
6427         charpos.  The loop should always execute at least once anyway.
6429 2015-09-21  Tassilo Horn  <tsdh@gnu.org>
6431         Signal error on invalid regexp
6433         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
6434         Signal an error when the user tries searching with a regexp
6435         matching the empty string.
6437 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6439         Another fix of file-notify-tests for w32notify
6441         * test/automated/file-notify-tests.el (file-notify-test02-events):
6442         Further adaptation for w32notify: reduce the number of expected
6443         'changed' events.  (Bug#21435)
6445 2015-09-21  Michael Albinus  <michael.albinus@gmx.de>
6447         Adapt tests and manual for w32notify
6449         * doc/lispref/os.texi (File Notifications): w32notify does not
6450         send `attribute-changed' events.
6452         * test/automated/file-notify-tests.el (file-notify--test-with-events):
6453         Simplify parameters.  Adapt all callees.
6454         (file-notify-test02-events): w32notify does not send
6455         `attribute-changed' events.
6456         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
6457         Do not skip in case of w32notify.  Simply ignore this part of the test.
6459 2015-09-21  Dima Kogan  <dima@secretsauce.net>
6461         Fix setting breakpoints when remote-debugging
6463         * lisp/progmodes/gud.el (gud-format-command): Send localized file
6464         names to the debugger running on the remote.  (Bug#13304)
6466 2015-09-21  Nicolas Petton  <nicolas@petton.fr>
6468         Better docstring and parameter name for seq-find
6470         * lisp/emacs-lisp/seq.el (seq-find): Improve the docstring and rename
6471         the parameter `sentinel' to `default'.
6473         * doc/lispref/sequences.texi (Sequence Functions): Update the
6474           documentation for `seq-find' accordingly.
6476 2015-09-21  Eli Zaretskii  <eliz@gnu.org>
6478         Avoid infinite recursion while displaying box face
6480         * src/xdisp.c (face_before_or_after_it_pos): Fix calculation of
6481         the previous string/buffer character position under bidi
6482         iteration.  (Bug#21428)
6484 2015-09-21  Anders Lindgren  <andlind@gmail.com>
6486         Keep upper edge unchanged when changing size of NS frame
6488         * src/nsterm.m (x_set_window_size): Keep upper frame edge unchanged
6489         (Bug#21415).
6491 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6493         * lisp/progmodes/prolog.el: Improve handling of if/then/else.
6494         (prolog-smie-rules): Accommodate standard if/then/else special
6495         indentation.
6496         (prolog-mode): Add . to electric-indent-chars.
6497         (prolog-electric--if-then-else): Re-indent the line before adding space
6498         after the new char (bug#21526).
6500 2015-09-20  Mark Oteiza  <mvoteiza@udel.edu>
6502         Add prettify symbols to python-mode
6504         * lisp/progmodes/python.el (python-prettify-symbols-alist):
6505         New variable.
6506         (python-mode): Use it
6508 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6510         * lisp/emacs-lisp/syntax.el (syntax-begin-function): Make obsolete.
6512 2015-09-20  Jostein Kjønigsen  <jostein@secure.kjonigsen.net>  (tiny change)
6514         (compilation-error-regexp-alist-alist): Tone down guile-file
6516         * lisp/progmodes/compile.el (compilation-error-regexp-alist-alist):
6517         Make guile-file a bit less enthusiastic (bug#21496).
6519 2015-09-20  Drew Csillag  <drew@thecsillags.com>
6521         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords):
6522         Fix m4_* highlighting.
6524         * lisp/progmodes/m4-mode.el (m4-font-lock-keywords): Fix recognition
6525         of commands when they have a "m4_" prefix.
6527 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
6529         '.' -> `.' in doc string
6531         * lisp/emacs-lisp/timer.el (run-at-time): In doc string, quote
6532         individual chars with grave quotes instead of straight quotes, as
6533         this works better when they are translated to curved quotes.
6535 2015-09-20  Michael Albinus  <michael.albinus@gmx.de>
6537         Improve file notifications, especially for Tramp
6539         * doc/lispref/files.texi (Magic File Names):
6540         Mention `file-notify-valid-p'.
6542         * doc/lispref/os.texi (File Notifications):
6543         Describe `file-notify-valid-p'.
6545         * etc/NEWS: Add `file-notify-valid-p'.
6547         * lisp/net/tramp-gvfs.el (tramp-gvfs-handle-file-notify-add-watch):
6548         Improve implementation.
6549         (tramp-gvfs-monitor-file-process-filter): Rename from
6550         `tramp-gvfs-file-gvfs-monitor-file-process-filter'.  Delete
6551         process if appropriate.
6553         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
6554         Improve implementation.
6555         (tramp-sh-gvfs-monitor-dir-process-filter): Rename from
6556         `tramp-sh-file-gvfs-monitor-dir-process-filter'.  Delete process
6557         if appropriate.
6558         (tramp-sh-inotifywait-process-filter): Rename from
6559         `tramp-sh-file-inotifywait-process-filter'.  Delete process if
6560         appropriate.
6562         * lisp/net/tramp.el (tramp-handle-file-notify-rm-watch):
6563         Use `delete-process'.
6564         (tramp-handle-file-notify-valid-p): Check also, that file or
6565         directory to be watched still exists.
6567         * test/automated/file-notify-tests.el (file-notify--test-timeout):
6568         New defun.  Use it at all places a timeout is needed.
6569         (file-notify--test-cleanup): Delete directories recursively.
6570         Cleanup also Tramp connections.
6571         (file-notify-test02-events): Add tests for `attribute-change'.
6572         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
6573         Add tests for `file-notify-rm-watch'.
6575 2015-09-20  Paul Eggert  <eggert@cs.ucla.edu>
6577         Use %s to format strings instead of splicing them
6579         If FOO might contain quotes that are part of a file or variable
6580         name, the quotes should not be translated when showing FOO’s name
6581         in a diagnostic.  So, for example, (message (concat (FOO ": bar")))
6582         is not quite right, as it would translate FOO’s quotes.
6583         Change it to (message "%s: bar" FOO) instead.
6584         * lisp/allout.el (allout-process-exposed):
6585         * lisp/calc/calc-ext.el (calc-do-prefix-help):
6586         * lisp/calc/calc-store.el (calc-store-into):
6587         * lisp/calendar/todo-mode.el (todo-category-completions):
6588         * lisp/cedet/semantic/complete.el (semantic-completion-message):
6589         * lisp/org/ob-latex.el (convert-pdf):
6590         * lisp/org/org-crypt.el (org-crypt-check-auto-save):
6591         * lisp/org/ox-latex.el (org-latex-compile):
6592         * lisp/org/ox-man.el (org-man-compile):
6593         * lisp/org/ox-odt.el (org-odt--export-wrap):
6594         * lisp/org/ox-texinfo.el (org-texinfo-compile):
6595         * lisp/progmodes/ruby-mode.el (ruby-in-ppss-context-p):
6596         * lisp/progmodes/verilog-mode.el (verilog-batch-execute-func)
6597         (verilog-signals-combine-bus, verilog-read-defines)
6598         (verilog-getopt-file, verilog-expand-dirnames)
6599         (verilog-modi-lookup, verilog-modi-modport-lookup-one):
6600         * lisp/term/ns-win.el (ns-spi-service-call):
6601         Use %s to avoid translating quotes of file names etc. in diagnostics.
6603 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6605         * lisp/progmodes/js.el (js--syntax-begin-function): Remove.
6606         (js-mode): Don't set syntax-begin-function.
6608 2015-09-20  Stefan Monnier  <monnier@iro.umontreal.ca>
6610         * lisp/font-lock.el (font-lock-compile-keywords): Don't assume
6611         syntax-begin-function is a symbol.
6613 2015-09-20  Eli Zaretskii  <eliz@gnu.org>
6615         Improve documentation of 'run-at-time'
6616         * lisp/emacs-lisp/timer.el (run-at-time): Improve the doc string.
6617         In particular, don't refer to 'diary-entry-time', because it is
6618         unavailable until diary-lib is loaded.  Also, refer to
6619         'timer-duration-words', not 'timer-duration', as the latter's doc
6620         string says nothing about the accepted strings.
6622 2015-09-19  Jay Belanger  <jay.p.belanger@gmail.com>
6624         * lisp/calc/calc-ext.el (calc-do-prefix-help): Tidy up error message.
6626 2015-09-19  Ken Manheimer  <ken.manheimer@gmail.com>
6628         Repair pdbtrack remote file tracking
6629         * lisp/progmodes/python.el (python-pdbtrack-set-tracked-buffer):
6630         Rectify pdbtrack so it follows transitions from one remote source
6631         file to the next.
6633 2015-09-19  Artur Malabarba  <bruce.connor.am@gmail.com>
6635         * lisp/emacs-lisp/timer.el (run-at-time): Docstring formatting.
6637 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
6639         Adapt vc-src to the old-new vc-checkin API
6640         * lisp/vc/vc-src.el (vc-src-checkin): Accept and ignore an
6641         additional optional parameter.
6643 2015-09-19  Simen Heggestøyl  <simenheg@gmail.com>
6645         Add overflow module to CSS property list
6646         * lisp/textmodes/css-mode.el (css-property-ids): Add properties
6647         from CSS Overflow Module Level 3.
6649 2015-09-19  Eli Zaretskii  <eliz@gnu.org>
6651         Fix documentation of "C-u C-x v v"
6652         * doc/emacs/maintaining.texi (Advanced C-x v v): Make the
6653         documentation of "C-u C-x v v" match what the code does.
6655         Resurrect the ability to specify a revision in vc-next-action
6656         * lisp/vc/vc-bzr.el (vc-bzr-checkin):
6657         * lisp/vc/vc-dav.el (vc-dav-checkin):
6658         * lisp/vc/vc-git.el (vc-git-checkin):
6659         * lisp/vc/vc-hg.el (vc-hg-checkin):
6660         * lisp/vc/vc-mtn.el (vc-mtn-checkin): Accept and silently ignore
6661         an additional optional argument, the revision to checkin.
6662         * lisp/vc/vc-sccs.el (vc-sccs-checkin):
6663         * lisp/vc/vc-cvs.el (vc-cvs-checkin):
6664         * lisp/vc/vc-rcs.el (vc-rcs-checkin): Allow to optionally specify
6665         a revision to checkin.
6666         * lisp/vc/vc.el (vc-next-action): Allow to optionally specify the
6667         revision when checking in files.
6668         See http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00688.html
6669         for the details.
6671 2015-09-18  Wilson Snyder  <wsnyder@wsnyder.org>
6673         * lisp/progmodes/verilog-mode.el (verilog-forward-sexp-function)
6674         (verilog-decls-princ, verilog-modport-princ)
6675         (verilog-modi-modport-lookup-one): Fix checkdoc warnings.
6677 2015-09-17  Jay Belanger  <jay.p.belanger@gmail.com>
6679         Fix the routine for help on Calc's prefixes
6680         * lisp/calc/calc-ext.el (calc-prefix-help-retry): New variable.
6681         (calc-do-prefix-help): Use `read-char' to determine the next Calc
6682         command.
6684 2015-09-17  Stefan Monnier  <monnier@iro.umontreal.ca>
6686         * lisp/font-lock.el (font-lock-beginning-of-syntax-function): Remove.
6687         (font-lock-fontify-block): Don't let-bind it.
6688         (font-lock-compile-keywords): Don't use it.
6689         (font-lock-set-defaults): Don't set it.  Allow the variable alist to
6690         start one slot earlier, instead.
6691         * lisp/emacs-lisp/syntax.el (font-lock-beginning-of-syntax-function):
6692         Don't declare.
6693         (syntax-ppss): Don't use it either.
6694         * lisp/font-core.el (font-lock-defaults): Remove SYNTAX-BEGIN
6695         from docstring.
6696         * doc/emacs/display.texi (Font Lock): Don't mention
6697         font-lock-beginning-of-syntax-function.
6698         * doc/lispref/modes.texi (Font Lock Basics): Update description of
6699         font-lock-defaults.
6700         (Syntactic Font Lock): Remove font-lock-beginning-of-syntax-function.
6701         * lisp/loadhist.el (unload-feature-special-hooks):
6702         Remove font-lock-beginning-of-syntax-function.
6703         * lisp/obsolete/lazy-lock.el (lazy-lock-fontify-region):
6704         * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't let-bind
6705         font-lock-beginning-of-syntax-function.
6707 2015-09-17  Paul Eggert  <eggert@cs.ucla.edu>
6709         Backslash cleanup in Elisp source files
6710         This patch should not change behavior.  It typically omits backslashes
6711         where they are redundant (e.g., in the string literal "^\$").
6712         In a few places, insert backslashes where they make regular
6713         expressions clearer: e.g., replace "^\*" (equivalent to "^*") with
6714         "^\\*", which has the same effect as a regular expression.
6715         Also, use ‘\ %’ instead of ‘\%’ when avoiding confusion with SCCS IDs,
6716         and similarly use ‘\ $’ instead of ‘\$’ when avoiding confusion with
6717         RCS IDs, as that makes it clearer that the backslash is intended.
6719         Some more minor backslash fixes
6720         * test/automated/compile-tests.el (compile-tests--test-regexps-data):
6721         * test/automated/info-xref.el (info-xref-test-write-file):
6722         Double backslashes in strings.
6724         Fix several backslash typos in Elisp strings
6725         * lisp/calendar/todo-mode.el (todo-files, todo-rename-file)
6726         (todo-find-filtered-items-file, todo-reset-nondiary-marker)
6727         (todo-reset-done-string, todo-reset-comment-string)
6728         (todo-reset-highlight-item):
6729         * lisp/erc/erc-networks.el (erc-networks-alist):
6730         * lisp/gnus/gnus-art.el (gnus-button-handle-library):
6731         * lisp/gnus/gnus-group.el (gnus-read-ephemeral-gmane-group-url):
6732         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
6733         (nntp-telnet-shell-prompt):
6734         * lisp/gnus/spam-report.el (spam-report-gmane-regex):
6735         * lisp/image-dired.el (image-dired-rotate-original):
6736         (image-dired-get-exif-file-name):
6737         * lisp/international/latin1-disp.el (latin1-display-ucs-per-lynx):
6738         * lisp/mail/undigest.el (rmail-digest-parse-rfc1153strict):
6739         * lisp/mh-e/mh-letter.el (mh-file-is-vcard-p):
6740         * lisp/mh-e/mh-mime.el (mh-file-mime-type-substitutions):
6741         * lisp/net/shr-color.el (shr-color->hexadecimal):
6742         * lisp/org/org-bibtex.el (org-bibtex-fields):
6743         * lisp/org/org-docview.el (org-docview-export):
6744         * lisp/org/org-entities.el (org-entities):
6745         * lisp/org/ox-icalendar.el (org-icalendar-cleanup-string):
6746         * lisp/progmodes/cperl-mode.el (cperl-indent-exp):
6747         * lisp/progmodes/ebnf2ps.el (ebnf-file-suffix-regexp)
6748         (ebnf-style-database):
6749         * lisp/progmodes/idlw-help.el (idlwave-do-context-help1):
6750         * lisp/progmodes/ruby-mode.el (ruby-imenu-create-index-in-block):
6751         * lisp/progmodes/sql.el (sql-product-alist):
6752         * lisp/progmodes/verilog-mode.el (verilog-error-regexp-emacs-alist)
6753         (verilog-error-font-lock-keywords)
6754         (verilog-assignment-operator-re):
6755         * lisp/progmodes/vhdl-mode.el (vhdl-compiler-alist):
6756         * lisp/textmodes/reftex-parse.el (reftex-parse-from-file):
6757         * lisp/vc/add-log.el (change-log-version-number-regexp-list):
6758         Fix typo by replacing ‘\’ with ‘\\’ in a string literal.
6759         For example, to get the regular expression ‘\.’ use the string
6760         literal "\\.", not "\." (which is equivalent to ".").
6761         * lisp/emulation/viper-util.el (viper-glob-unix-files):
6762         Remove stray ‘\j’ from string.
6763         * lisp/gnus/nntp.el (nntp-via-shell-prompt)
6764         (nntp-telnet-shell-prompt):
6765         Treat > like $ when matching a shell prompt.
6766         * lisp/progmodes/make-mode.el (makefile-browse):
6767         Properly quote a diagnostic.
6769         Fix minor quoting problems in diagnostics
6770         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
6771         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
6772         Follow text-quoting-style in diagnostic, and quote a file name.
6774 2015-09-17  Eli Zaretskii  <eliz@gnu.org>
6776         * doc/lispref/frames.texi (Cursor Parameters):
6777         Document 'x-stretch-cursor'.
6779 2015-09-16  Paul Eggert  <eggert@cs.ucla.edu>
6781         Omit unnecessary \ before paren in C docstrings
6782         Although \( is needed in docstrings in Elisp code, it is not needed in
6783         docstrings in C code, since C function definitiions do not start with
6784         a parenthesis.  The backslashes made the docstrings a bit harder to
6785         read and to format in columns.  Also, some C docstrings had ( in
6786         column 1 and this did not appear to be causing any problems.  So,
6787         simplify C docstrings by replacing \( with ( and \) with ).
6789         A few more minor quoting fixes in a script and a text file
6791         Minor quoting fixes in scripts and doc
6792         Prefer straight quotes in random script files, as they are not
6793         converted.  Prefer grave quotes in a couple of places in the manual
6794         that were missed earlier, as these quotes are converted.
6796         Minor backslash fixes in manuals and scripts
6797         * Makefile.in (install-arch-indep):
6798         * admin/charsets/compact.awk:
6799         * admin/charsets/gb180302.awk (gb_to_index):
6800         * admin/charsets/gb180304.awk (gb_to_index):
6801         Avoid undefined behavior in Awk regular expression backslashes.
6802         * doc/misc/efaq.texi (Matching parentheses):
6803         Omit unnecessary backslashes.
6804         * doc/misc/gnus-faq.texi (FAQ 5-8):
6805         Avoid undefined behavior in suggested sed backslash usage.
6807         Add -Wswitch to --enable-gcc-warnings
6808         Make --enable-gcc-warnings a bit pickier, by also using -Wswitch.
6809         * configure.ac (WERROR_CFLAGS): Don’t add -Wno-switch.
6810         * lib-src/etags.c (main, consider_token, C_entries):
6811         * src/coding.c (encode_invocation_designation):
6812         * src/data.c (Ftype_of):
6813         * src/eval.c (Fdefvaralias, default_toplevel_binding)
6814         (Fbacktrace__locals, mark_specpdl):
6815         * src/lisp.h (record_xmalloc):
6816         * src/syntax.c (scan_lists, scan_sexps_forward):
6817         * src/window.c (window_relative_x_coord):
6818         * src/xdisp.c (push_it, pop_it):
6819         * src/xterm.c (xg_scroll_callback, x_check_fullscreen):
6820         Error out or do nothing (as appropriate) if a switch statement
6821         with an enum value does not cover all of the enum.
6822         * src/dispextern.h (struct iterator_stack_entry.u.comp):
6823         Remove unused member discovered by using -Wswitch.
6824         * src/lisp.h (record_xmalloc): Add a ‘+ 0’ to pacify -Wswitch.
6825         * src/vm-limit.c (check_memory_limits):
6826         Simplify warning-diagnostic computation by using a table.
6828         etags ‘fatal’ function is now printf-like
6829         * lib-src/etags.c (fatal): Now printf-like.  All callers changed.
6830         Also, now static; not clear why it needed to be extern.
6831         (verror): New function, with most of the old contents of ‘error’.
6832         (fatal, error): Use it.
6834 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
6836         More adaptations in file-notify-tests.el
6837         * test/automated/file-notify-tests.el
6838         (file-notify-test05-dir-validity): Skip for w32notify in
6839         batch-mode.  (Bug#21432)
6841 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
6843         Adapt test in file-notify-tests.el
6844         * test/automated/file-notify-tests.el
6845         (file-notify-test04-file-validity): Skip for w32notify in
6846         batch-mode.  Add test lost last commit.
6848 2015-09-16  Dima Kogan  <dima@secretsauce.net>
6850         winner no longer holds on to dead frames
6851         * lisp/winner.el (winner-change-fun): Cull dead frames.
6852         This prevents a potentially massive memory leak.  See:
6853         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00619.html
6855 2015-09-16  Michael Albinus  <michael.albinus@gmx.de>
6857         Use common report_file_notify_error function
6858         * src/fileio.c (report_file_notify_error): New function.
6859         * src/inotify.c (report_inotify_error): Remove function.
6860         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
6861         (Finotify_rm_watch): Use report_file_notify_error.
6862         * src/lisp.h (report_file_notify_error): Declare external function.
6863         * src/w32notify.c (report_w32notify_error): Remove function.
6864         (Fw32notify_add_watch, Fw32notify_rm_watch):
6865         Use report_file_notify_error.
6867 2015-09-16  Jay Belanger  <jay.p.belanger@gmail.com>
6869         Fix documentation.
6870         * doc/misc/calc.texi (Single-Variable Statistics): Fix the wording of
6871         the documentation of the root mean square.
6873 2015-09-16  Martin Rudalics  <rudalics@gmx.at>
6875         Remove tool_bar_redisplayed_once and associated code.
6876         * src/frame.h (tool_bar_redisplayed_once): Remove slot.
6877         * src/frame.c (make_frame, x_set_font): Remove initialization of
6878         f->tool_bar_redisplayed_once.
6879         * src/w32fns.c (x_change_tool_bar_height):
6880         * src/xfns.c (x_change_tool_bar_height): Don't check for
6881         f->tool_bar_redisplayed_once.
6882         * src/xdisp.c (redisplay_internal): Remove handling of
6883         f->tool_bar_redisplayed_once.
6885 2015-09-16  Eli Zaretskii  <eliz@gnu.org>
6887         Restore some of the quoting in the manuals
6888         * doc/lispref/windows.texi (Coordinates and Windows)
6889         (Coordinates and Windows):
6890         * doc/lispref/variables.texi (Lexical Binding)
6891         (File Local Variables):
6892         * doc/lispref/text.texi (Format Properties):
6893         * doc/lispref/symbols.texi (Symbol Components):
6894         * doc/lispref/strings.texi (Creating Strings):
6895         * doc/lispref/sequences.texi (Sequence Functions):
6896         * doc/lispref/searching.texi (Regexp Special, Regexp Search)
6897         (Search and Replace):
6898         * doc/lispref/processes.texi (Bindat Spec):
6899         * doc/lispref/os.texi (Idle Timers):
6900         * doc/lispref/objects.texi (Basic Char Syntax):
6901         * doc/lispref/numbers.texi (Float Basics, Random Numbers):
6902         * doc/lispref/nonascii.texi (Character Properties):
6903         * doc/lispref/modes.texi (Major Mode Conventions, Mode Hooks)
6904         (Mode Line Variables):
6905         * doc/lispref/minibuf.texi (Text from Minibuffer):
6906         * doc/lispref/loading.texi (Autoload):
6907         * doc/lispref/keymaps.texi (Controlling Active Maps):
6908         * doc/lispref/frames.texi (Frame Layout, Size and Position)
6909         (Size Parameters, Implied Frame Resizing):
6910         * doc/lispref/files.texi (Changing Files, Magic File Names):
6911         * doc/lispref/eval.texi (Self-Evaluating Forms):
6912         * doc/lispref/display.texi (Progress, Abstract Display)
6913         (Abstract Display Example, Bidirectional Display):
6914         * doc/lispref/commands.texi (Event Mod):
6915         * doc/emacs/windows.texi (Displaying Buffers):
6916         * doc/emacs/trouble.texi (Bug Criteria, Checklist):
6917         * doc/emacs/text.texi (Enriched Text):
6918         * doc/emacs/programs.texi (MixedCase Words):
6919         * doc/emacs/picture-xtra.texi (Insert in Picture)
6920         (Tabs in Picture):
6921         * doc/emacs/misc.texi (Emacs Server, Printing):
6922         * doc/emacs/mini.texi (Minibuffer History):
6923         * doc/emacs/maintaining.texi (Old Revisions, VC Change Log)
6924         (Pulling / Pushing):
6925         * doc/emacs/killing.texi (Yanking, Cut and Paste, Clipboard):
6926         * doc/emacs/help.texi (Help, Help Echo):
6927         * doc/emacs/glossary.texi (Glossary):
6928         * doc/emacs/frames.texi (Mouse Commands, Creating Frames)
6929         (Frame Commands):
6930         * doc/emacs/files.texi (Reverting, Saving, Directories):
6931         * doc/emacs/entering.texi (Exiting):
6932         * doc/emacs/emacs.texi (Top):
6933         * doc/emacs/cmdargs.texi (Window Size X, Icons X):
6934         * doc/emacs/anti.texi (Antinews): Restore quoting of text where
6935         appropriate or replace quoting with @dfn.
6936         * doc/misc/ediff.texi (Window and Frame Configuration):
6937         * doc/lispref/processes.texi (Network Feature Testing):
6938         * doc/lispref/display.texi (Display Margins): Quote the phrase
6939         after "a.k.a." where appropriate.
6941 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
6943         Clarify reftex-extra-bindings docs
6944         * lisp/textmodes/reftex-vars.el (reftex-extra-bindings):
6945         * doc/misc/reftex.texi (Key Bindings): Document that the variable
6946         only has an effect at load-time.
6948 2015-09-16  Daniel McClanahan  <danieldmcclanahan@gmail.com>  (tiny change)
6950         * lisp/emacs-lisp/lisp-mode.el (lisp--el-match-keyword): Fix
6951         search argument.  (Bug#21492) (Bug#21493)
6953 2015-09-16  Tassilo Horn  <tsdh@gnu.org>
6955         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
6956         Add pretty symbols for \qquad and \varrho.
6958 2015-09-15  Jay Belanger  <jay.p.belanger@gmail.com>
6960         Add new functions for the root mean square of a (Calc) vector
6961         * lisp/calc/calc-stats.el (calcFunc-rms, calc-vector-rms):
6962         New functions.
6963         * lisp/calc/calc-ext.el (calc-init-extensions): Add keybinding for
6964         `calc-vector-rms', add autoloads for `calc-vector-rms' and
6965         `calcFunc-rms'.
6966         * lisp/calc/calc-map.el (calc-u-oper-keys): Add entry for
6967         `calcFunc-rms'.
6968         * lisp/calc/calc-menu.el (calc-vectors-menu): Add entry for
6969         `calc-vector-rms'.
6970         * doc/misc/calc.texi (Single-Variable Statistics): Document the rms
6971         command.
6973 2015-09-15  Stephen Leake  <stephen_leake@stephe-leake.org>
6975         Add monotone EDE generic project
6976         * lisp/cedet/ede/generic.el (ede-enable-generic-projects):
6977         Add monotone generic project.
6979         Revert premature commit
6980         * doc/lispref/files.texi: Revert premature commit of change to
6981         file-name-all-completions.
6983         Fix a bug in elisp--xref-find-definitions related to cl-generic defaults
6984         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions): Fix bug
6985         with cl-generic defaults.
6986         (elisp--xref-find-references): Add doc string.
6987         * test/automated/elisp-mode-tests.el (xref-elisp-generic-*): Improve
6988         tests to find bug.
6990         Fix bugs in eieio-oref-default related to class symbols
6991         * lisp/emacs-lisp/eieio-core.el (class-p): Handle symbol properly.
6992         (eieio-oref-default): Handle class properly.
6994 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
6996         Quote “fullboth” when defining it
6997         * doc/lispref/frames.texi (Size Parameters): Use @dfn for “fullboth”
6998         and rewrite the containing paragraph, which was awkward.  (Bug#21472).
7000 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
7002         Minor doc fix in emacs/ack.texi
7003         * doc/emacs/ack.texi (Acknowledgments): Fix an xref missing the
7004         first argument.
7006 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
7008         Adapt tests in auto-revert-tests.el
7009         * test/automated/auto-revert-tests.el (auto-revert--timeout):
7010         Make it a defconst.
7011         (auto-revert--wait-for-revert): New defun.
7012         (auto-revert-test00-auto-revert-mode)
7013         (auto-revert-test01-auto-revert-tail-mode)
7014         (auto-revert-test02-auto-revert-mode-dired): Use it.
7016 2015-09-15  Stefan Monnier  <monnier@iro.umontreal.ca>
7018         * lisp/emacs-lisp/lisp-mode.el (lisp-mode-symbol-regexp): New const.
7019         Use it everywhere "\\(\\sw\\|\\s_\\|\\\\.\\)+" was used.
7020         (cl-lib-fdefs): Add defgeneric.
7021         (cl-kw): Add all elements of eieio-kw and cl-lib-kw.
7022         (eieio-kw, cl-lib-kw, el-kw): Remove.
7024 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
7026         Quote less in manuals
7027         The manuals often used quotes ``...'' when it is better to use @dfn or
7028         @code or capitalized words or no quoting at all.  For example, there is
7029         no need for the `` and '' in “if a variable has one effect for
7030         @code{nil} values and another effect for ``non-@code{nil}'' values”.
7031         Reword the Emacs, Lisp intro, and Lisp reference manuals to eliminate
7032         unnecessary quoting like this, and to use @dfn etc. instead when called
7033         for (Bug#21472).
7035 2015-09-15  Mark Oteiza  <mvoteiza@udel.edu>
7037         * lisp/custom.el (load-theme): Only compute hash when needed.
7039 2015-09-15  Paul Eggert  <eggert@cs.ucla.edu>
7041         Pacify --enable-gcc-warnings
7042         * src/inotify.c (report_inotify_error): Declare it _Noreturn.
7044 2015-09-15  Michael Albinus  <michael.albinus@gmx.de>
7046         Improve error reports in inotify.c
7047         * src/inotify.c (report_inotify_error): New function.  Clone of
7048         report_w32notify_error.
7049         (inotify_callback, symbol_to_inotifymask, Finotify_add_watch)
7050         (Finotify_rm_watch): Use it.
7052 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
7054         Fix the file-notify tests for watch validation on w32
7055         * test/automated/file-notify-tests.el
7056         (file-notify-test04-file-validity): Move the directory deletion
7057         out of the file-notify--test-with-events macro.
7058         (file-notify-test04-file-validity)
7059         (file-notify-test05-dir-validity): Enlarge the timeout of
7060         read-event to 0.5, as 0.1 is borderline on w32.  (Bug#21432)
7062 2015-09-15  Tassilo Horn  <tsdh@gnu.org>
7064         Use OPEN BOX instead of space for \quad.
7065         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist): Use OPEN BOX
7066         character for \quad instead of a space.
7068 2015-09-15  Eli Zaretskii  <eliz@gnu.org>
7070         Add missing *.pbm images
7071         * etc/images/connect.pbm: New file.
7072         * etc/images/custom/down-pushed.pbm: New file.
7073         * etc/images/custom/down.pbm: New file.
7074         * etc/images/custom/right-pushed.pbm: New file.
7075         * etc/images/custom/right.pbm: New file.
7076         * etc/images/describe.pbm: New file.
7077         * etc/images/disconnect.pbm: New file.
7078         * etc/images/ezimage/bits.pbm: New file.
7079         * etc/images/ezimage/bitsbang.pbm: New file.
7080         * etc/images/ezimage/box-minus.pbm: New file.
7081         * etc/images/ezimage/box-plus.pbm: New file.
7082         * etc/images/ezimage/box.pbm: New file.
7083         * etc/images/ezimage/checkmark.pbm: New file.
7084         * etc/images/ezimage/dir-minus.pbm: New file.
7085         * etc/images/ezimage/dir-plus.pbm: New file.
7086         * etc/images/ezimage/dir.pbm: New file.
7087         * etc/images/ezimage/doc-minus.pbm: New file.
7088         * etc/images/ezimage/doc-plus.pbm: New file.
7089         * etc/images/ezimage/doc.pbm: New file.
7090         * etc/images/ezimage/info.pbm: New file.
7091         * etc/images/ezimage/key.pbm: New file.
7092         * etc/images/ezimage/label.pbm: New file.
7093         * etc/images/ezimage/lock.pbm: New file.
7094         * etc/images/ezimage/mail.pbm: New file.
7095         * etc/images/ezimage/page-minus.pbm: New file.
7096         * etc/images/ezimage/page-plus.pbm: New file.
7097         * etc/images/ezimage/page.pbm: New file.
7098         * etc/images/ezimage/tag-gt.pbm: New file.
7099         * etc/images/ezimage/tag-minus.pbm: New file.
7100         * etc/images/ezimage/tag-plus.pbm: New file.
7101         * etc/images/ezimage/tag-type.pbm: New file.
7102         * etc/images/ezimage/tag-v.pbm: New file.
7103         * etc/images/ezimage/tag.pbm: New file.
7104         * etc/images/ezimage/unlock.pbm: New file.
7105         * etc/images/gnus/important.pbm: New file.
7106         * etc/images/gnus/mail-send.pbm: New file.
7107         * etc/images/gnus/receipt.pbm: New file.
7108         * etc/images/gnus/toggle-subscription.pbm: New file.
7109         * etc/images/gnus/unimportant.pbm: New file.
7110         * etc/images/gud/all.pbm: New file.
7111         * etc/images/gud/rcont.pbm: New file.
7112         * etc/images/gud/recstart.pbm: New file.
7113         * etc/images/gud/recstop.pbm: New file.
7114         * etc/images/gud/rfinish.pbm: New file.
7115         * etc/images/gud/rnext.pbm: New file.
7116         * etc/images/gud/rnexti.pbm: New file.
7117         * etc/images/gud/rstep.pbm: New file.
7118         * etc/images/gud/rstepi.pbm: New file.
7119         * etc/images/gud/thread.pbm: New file.
7120         * etc/images/lock-broken.pbm: New file.
7121         * etc/images/lock-ok.pbm: New file.
7122         * etc/images/lock.pbm: New file.
7123         * etc/images/mail/copy.pbm: New file.
7124         * etc/images/mail/forward.pbm: New file.
7125         * etc/images/mail/not-spam.pbm: New file.
7126         * etc/images/mail/outbox.pbm: New file.
7127         * etc/images/mail/preview.pbm: New file.
7128         * etc/images/mail/save-draft.pbm: New file.
7129         * etc/images/mh-logo.pbm: New file.
7130         * etc/images/mpc/add.pbm: New file.
7131         * etc/images/mpc/ffwd.pbm: New file.
7132         * etc/images/mpc/next.pbm: New file.
7133         * etc/images/mpc/pause.pbm: New file.
7134         * etc/images/mpc/play.pbm: New file.
7135         * etc/images/mpc/prev.pbm: New file.
7136         * etc/images/mpc/rewind.pbm: New file.
7137         * etc/images/mpc/stop.pbm: New file.
7138         * etc/images/redo.pbm: New file.
7139         * etc/images/smilies/braindamaged.pbm: New file.
7140         * etc/images/smilies/cry.pbm: New file.
7141         * etc/images/smilies/dead.pbm: New file.
7142         * etc/images/smilies/evil.pbm: New file.
7143         * etc/images/smilies/forced.pbm: New file.
7144         * etc/images/smilies/grin.pbm: New file.
7145         * etc/images/smilies/indifferent.pbm: New file.
7146         * etc/images/sort-ascending.pbm: New file.
7147         * etc/images/sort-column-ascending.pbm: New file.
7148         * etc/images/sort-criteria.pbm: New file.
7149         * etc/images/sort-descending.pbm: New file.
7150         * etc/images/sort-row-ascending.pbm: New file.
7151         * etc/images/unchecked.pbm: New file.
7152         * etc/images/zoom-in.pbm: New file.
7153         * etc/images/README: Update instructions for PBM files.
7155         Add separator.pbm tool-bar image
7156         * etc/images/separator.pbm: New file.  Having it avoids the side
7157         effect of changing the tool-bar height when the default font's size
7158         changes and XPM image support is not available, due to the SPC
7159         characters that are left in the Lisp string used to display the tool
7160         bar, because there are no images to display instead of those SPC
7161         characters.
7163         Make show-paren-match face visible on mono-color displays
7164         * lisp/faces.el (show-paren-match): Use the underline face for
7165         mono-color displays.  (Bug#21481)
7167 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
7169         Don’t double-encode non-ASCII mail clipboard
7170         * lisp/mail/mailclient.el (mailclient-send-it):
7171         Also fix the case when mailclient-place-body-on-clipboard-flag
7172         is non-nil.  Problem reported by Eli Zaretskii (Bug#21471#37).
7174 2015-09-14  Michael Albinus  <michael.albinus@gmx.de>
7176         Adapt file-notify-tests.el test cases
7177         * lisp/filenotify.el (file-notify-rm-watch): Ignore `file-notify-error'.
7178         * src/inotify.c (Finotify_valid_p): Adapt docstring.
7179         * test/automated/file-notify-tests.el
7180         (file-notify-test03-autorevert)
7181         (file-notify-test04-file-validity)
7182         (file-notify-test04-file-validity-remote)
7183         (file-notify-test05-dir-validity)
7184         (file-notify-test05-dir-validity-remote): Adapt docstring.
7185         (file-notify-test04-file-validity): Let events arrive before
7186         calling final `file-notify-valid-p'.  Do not ignore errors.
7187         (file-notify-test05-dir-validity): Do not manipulate
7188         `temporary-file-directory', it isn't necessary.  Let events arrive
7189         before calling final `file-notify-valid-p'.  Do not ignore errors.
7191 2015-09-14  Paul Eggert  <eggert@cs.ucla.edu>
7193         Don’t double-encode non-ASCII for mail client
7194         * lisp/mail/mailclient.el (mailclient-encode-string-as-url):
7195         Use RFC 6068’s list of unreserved characters.
7196         (mailclient-send-it): When encoding the body as a URL,
7197         first decode it as per Content-Type: and Content-Transfer-Encoding:,
7198         as URLs must use percent-encoded UTF-8 (Bug#21471).
7199         * doc/misc/url.texi (mailto): Update RFC number.
7201 2015-09-14  Stefan Monnier  <monnier@iro.umontreal.ca>
7203         * lisp/progmodes/cc-langs.el (c-make-init-lang-vars-fun): Use dolist.
7205 2015-09-14  Alan Mackenzie  <acm@muc.de>
7207         Replace `cadar' with `cadr/car', since `cadar' is problematic on Emacs
7208         (c-make-init-lang-vars-fun): Replace two occurrences of `cadar' with
7209         `cadr/car'.
7211 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7213         Clarify documentation of char-table extra slots
7214         * doc/lispref/sequences.texi (Char-Tables): Clarify that extra
7215         slot numbers are zero-based.  (Bug#21467)
7217 2015-09-14  Alan Mackenzie  <acm@muc.de>
7219         Elisp mode: Make font-lock and imenu handle escaped characters in symbols
7220         Fixes bug#21449.
7221         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression)
7222         (lisp--el-match-keyword, lisp-el-font-lock-keywords-1)
7223         (lisp-cl-font-lock-keywords-1, lisp-el-font-lock-keywords-2)
7224         (lisp-cl-font-lock-keywords-2, lisp-string-in-doc-position-p):
7225         Insert "\\|\\\\." into regexps which match symbols.
7227 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7229         Improve the doc string of w32notify-valid-p
7230         * src/w32notify.c (Fw32notify_valid_p): Mention in the doc string
7231         that removing a watch makes its object invalid.
7233 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
7235         Fix tests for file-notify-valid-p
7236         * test/automated/file-notify-tests.el (file-notify--test-cleanup):
7237         Use delete-directory to delete file-notify--test-tmpfile if it is
7238         a directory.  Likewise for file-notify--test-tmpfile1.
7239         (file-notify-test04-file-validity)
7240         (file-notify-test05-dir-validity): Delete the parent directory of
7241         the test.  Ignore errors when cleaning up after the test.
7243 2015-09-14  Eli Zaretskii  <eliz@gnu.org>
7245         Report file-notify-error in w32notify.c
7246         * src/w32notify.c (report_w32notify_error): New function.
7247         (Fw32notify_add_watch, Fw32notify_rm_watch): Use it to report
7248         errors, instead of calling report_file_error.  (Bug#21432)
7250         Implement w32notify-valid-p
7251         * src/w32notify.c (Fw32notify_valid_p): New function.  (Bug#21432)
7252         * lisp/filenotify.el (w32notify-valid-p): No longer an alias for
7253         'identity'.
7255 2015-09-14  Tassilo Horn  <tsdh@gnu.org>
7257         Test file-notify-valid-p
7258         * test/automated/file-notify-tests.el
7259         (file-notify-test04-file-validity, file-notify-test05-dir-validity):
7260         New tests.
7262 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
7264         Fix markup in ELisp manual
7265         * doc/lispref/frames.texi (Font and Color Parameters): Fix markup
7266         of the 'alpha' parameter value.  (Bug#21470)
7268 2015-09-13  Michael Albinus  <michael.albinus@gmx.de>
7270         Introduce `file-notify-valid-p'
7271         * lisp/filenotify.el (file-notify-valid-p): New defun.
7272         (gfile-valid-p, w32notify-valid-p): Make them an alias to `identity'.
7273         * lisp/net/tramp-adb.el (tramp-adb-file-name-handler-alist)
7274         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler-alist)
7275         * lisp/net/tramp-sh.el (tramp-sh-file-name-handler-alist)
7276         * lisp/net/tramp-smb.el (tramp-smb-file-name-handler-alist)
7277         <file-notify-valid-p>: Add handler.
7278         * lisp/net/tramp.el (tramp-file-name-for-operation):
7279         Add `file-notify-valid-p'.
7280         (tramp-handle-file-notify-valid-p): New defun.
7281         * src/inotify.c (Finotify_valid_p): New defun.
7282         (syms_of_inotify): Declare Sinotify_valid_p.
7284 2015-09-13  Paul Eggert  <eggert@cs.ucla.edu>
7286         Port Unicode char detection to FreeBSD+svgalib
7287         Problem reported by Ashish SHUKLA in:
7288         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00531.html
7289         * configure.ac: Check for struct unipair.unicode instead of for
7290         <linux/kd.h>, since that’s more specific to what the code
7291         actually needs.
7292         * src/terminal.c: Use HAVE_STRUCT_UNIPAIR_UNICODE, not HAVE_LINUX_KD_H.
7294         * src/indent.c (Fvertical_motion): Simplify bugfix (Bug#21468).
7296 2015-09-13  Eli Zaretskii  <eliz@gnu.org>
7298         Fix vertical cursor motion across overlay strings with newlines
7299         * src/indent.c (Fvertical_motion): Don't leave point in the middle
7300         of an overlay string with newlines, as that will position the
7301         cursor after the string at whatever column is there.  (Bug#21468)
7303 2015-09-12  Michael Albinus  <michael.albinus@gmx.de>
7305         Fix tests in file-notify-tests.el
7306         * test/automated/file-notify-tests.el: Remove Tramp declarations.
7307         (file-notify-test00-availability): Print remote command w/o Tramp
7308         internal functions.
7309         (file-notify-test02-events, file-notify-test02-events-remote):
7310         Adapt docstring.
7311         (file-notify-test03-autorevert): Use `format-message' when
7312         inspecting *Messages* buffer.
7314 2015-09-12  Stefan Monnier  <monnier@iro.umontreal.ca>
7316         Bind inhibit-modification-hooks rather than a/b-c-f
7317         * lisp/wid-edit.el (widget-editable-list-insert-before)
7318         (widget-editable-list-delete-at):
7319         * lisp/progmodes/cperl-mode.el (cperl-find-pods-heres)
7320         (cperl-font-lock-unfontify-region-function):
7321         * lisp/progmodes/antlr-mode.el (save-buffer-state-x):
7322         * lisp/obsolete/longlines.el (longlines-mode):
7323         * lisp/obsolete/fast-lock.el (save-buffer-state):
7324         * lisp/mouse.el (mouse-save-then-kill-delete-region):
7325         * lisp/gnus/message.el (message-hide-headers):
7326         * lisp/eshell/esh-mode.el (eshell-send-input, eshell-output-filter):
7327         * lisp/ibuffer.el (ibuffer-update-title-and-summary)
7328         (ibuffer-redisplay-engine): Bind inhibit-modification-hooks to t rather
7329         than after/before-change-functions to nil.
7331 2015-09-11  Stefan Monnier  <monnier@iro.umontreal.ca>
7333         (jit-lock-deferred-fontify): Pay attention to skipped redisplays
7334         * lisp/jit-lock.el (jit-lock-deferred-fontify): Make sure we refresh
7335         the buffers, even if the forced redisplay is interrupted.
7337         * lisp/emacs-lisp/eieio-core.el (class-p): Accept class objects
7339         Merge syntax-propertize--done and parse-sexp-propertize-done
7340         * lisp/emacs-lisp/syntax.el (syntax-propertize--done): Remove.
7341         (syntax-propertize): Set syntax-propertize--done even if
7342         syntax-propertize-function is nil.  Avoid recursive invocations.
7343         (syntax-propertize-chunks): New var.
7344         (internal--syntax-propertize): Use it.  Rename from syntax--jit-propertize.
7345         Simplify.
7346         (parse-sexp-propertize-function): Don't set any more.
7347         * src/syntax.c (SETUP_SYNTAX_TABLE): Call parse_sexp_propertize as needed.
7348         (parse_sexp_propertize): Don't assume charpos is not yet propertized.
7349         Call Qinternal__syntax_propertize instead of
7350         Vparse_sexp_propertize_function.  Truncate e_property if needed.
7351         (update_syntax_table_forward): Streamline.
7352         (syms_of_syntax): Define Qinternal__syntax_propertize.
7353         (syntax_propertize__done): Rename from parse_sexp_propertize_done.
7355 2015-09-11  Paul Eggert  <eggert@cs.ucla.edu>
7357         Prefer straight quoting in some text files
7358         Mostly this just changes ` to ' in static text.  Some exceptions:
7359         * INSTALL.REPO: Use curved quotes, as the diagnostic in question
7360         typically does that now.
7361         * admin/quick-install-emacs (TRY, top level):
7362         Use straight quoting in diagnostics.
7363         * src/README: Fix working-directory confusion.
7365         * CONTRIBUTE: Move send-email here from git-workflow.
7367 2015-09-11  Michael Albinus  <michael.albinus@gmx.de>
7369         Improve file notifications in Tramp
7370         * lisp/net/tramp-sh.el (tramp-sh-handle-file-notify-add-watch):
7371         Set proper events to watch for.
7372         (tramp-sh-file-gvfs-monitor-dir-process-filter): Report only
7373         watched events.
7375 2015-09-11  Eli Zaretskii  <eliz@gnu.org>
7377         Fix NS build with --enable-checking='glyphs'
7378         * src/nsfns.m (unwind_create_frame): Make the preprocessor
7379         conditionals for referencing 'dpyinfo' consistent throughout the
7380         function.  (Bug#21426)
7382 2015-09-10  Nicolas Petton  <nicolas@petton.fr>
7384         Add seq-find
7385         This function is similar to `seq-some' but returns the found element.
7386         In the cases where nil can be the found element, a sentinel optional
7387         argument can be provided to avoid ambiguities.
7388         * lisp/emacs-lisp/seq.el (seq-find): New function.
7389         * test/automated/seq-tests.el (test-seq-find): Add tests for `seq-find'.
7390         * doc/lispref/sequences.texi (Sequence Functions): Add documentation for
7391         seq-find.
7393 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
7395         Document file-notify--test-with-events.
7396         * test/automated/file-notify-tests.el (file-notify--test-with-events):
7397         Add docstring.
7399 2015-09-10  Michael Albinus  <michael.albinus@gmx.de>
7401         Report used native library in file-notify-tests.el
7402         * test/automated/file-notify-tests.el
7403         (tramp-get-remote-gvfs-monitor-dir)
7404         (tramp-get-remote-inotifywait): Declare them.
7405         (file-notify-test00-availability): Print used native library.
7407 2015-09-10  Mark Oteiza  <mvoteiza@udel.edu>
7409         * lisp/mpc.el (mpc--proc-connect): Use file-name-absolute-p.
7410         (mpc-file-local-copy): Check for absolute path.  Check more config
7411         locations.
7413 2015-09-10  Eli Zaretskii  <eliz@gnu.org>
7415         Improve documentation of categories
7416         * doc/lispref/syntax.texi (Categories): Clarify the example of
7417         using define-category and modify-category-entry.  (Bug#21448)
7419 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
7421         Revert some stray curved quotes I missed earlier
7422         Problem reported by David Kastrup in:
7423         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00440.html
7424         * lisp/international/mule-cmds.el (leim-list-header):
7425         Use format-message with an ASCII-only format.
7427         Prefer NUMBERP to spelling it out
7428         * src/editfns.c (styled_format):
7429         * src/frame.h (NUMVAL):
7430         * src/image.c (parse_image_spec):
7431         * src/lisp.h (CHECK_NUMBER_OR_FLOAT)
7432         (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER):
7433         * src/process.c (Fsignal_process):
7434         * src/xdisp.c (calc_pixel_width_or_height, on_hot_spot_p):
7435         * src/xfaces.c (check_lface_attrs):
7436         * src/xselect.c (x_fill_property_data, x_send_client_event):
7437         Use NUMBERP rather than INTEGERP || FLOATP.
7439 2015-09-10  Tassilo Horn  <tsdh@gnu.org>
7441         Improve file-notify-tests
7442         * test/automated/file-notify-tests.el: Use lexical-binding.
7443         (file-notify--test-cleanup): New function.
7444         (file-notify-test00-availability, file-notify-test01-add-watch)
7445         (file-notify-test02-events, file-notify-test03-autorevert): Use it.
7446         (file-notify--test-with-events): New macro.
7447         (file-notify-test02-events): Use it.
7449 2015-09-10  Paul Eggert  <eggert@cs.ucla.edu>
7451         Add patch-sending instructions to git-workflow
7452         From a suggestion by Mitchel Humpherys in:
7453         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00421.html
7454         * admin/notes/git-workflow (Sending patches): New section.
7456         Port to GIFLIB 5.0.6 and later
7457         Problem reported by Mitchel Humpherys in:
7458         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00420.html
7459         * src/image.c (HAVE_GIFERRORSTRING) [HAVE_GIF]: New macro.
7460         (GifErrorString, init_gif_functions) [HAVE_GIF && WINDOWSNT]:
7461         (gif_load) [HAVE_GIF]: Use it.
7463 2015-09-10  Glenn Morris  <rgm@gnu.org>
7465         * lisp/cedet/ede/auto.el (ede-project-autoload): Doc fix.
7467 2015-09-09  Glenn Morris  <rgm@gnu.org>
7469         * test/automated/file-notify-tests.el (file-notify-test02-events):
7470         Fix recent change.
7472 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7474         Refix movemail GCC pacification
7475         Problem reported by Ken Brown in:
7476         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00406.html
7477         * lib-src/movemail.c (main): Fix previous change.
7479 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7481         * lisp/calendar/time-date.el (time-to-seconds, time-less-p):
7482         Mark unused vars with underscore.
7484         * src/syntax.c (SETUP_SYNTAX_TABLE): Move truncation...
7485         (parse_sexp_propertize): ...from here.
7487         * lisp/filenotify.el: Use lexical-binding
7488         (file-notify-add-watch): Avoid add-to-list.
7490 2015-09-09  Tassilo Horn  <tsdh@gnu.org>
7492         Start checking event types in file-notify tests
7493         * test/automated/file-notify-tests.el (file-notify--test-events):
7494         New variable.
7495         (file-notify--test-event-handler): Append received event to
7496         file-notify--test-events for later analysis.
7497         (file-notify-test02-events): Assert that the expected notifications have
7498         arrived in the expected order.
7500 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7502         Merge from gnulib and texinfo
7503         This incorporates:
7504         2015-08-03 Improve port of stdalign to C++11
7505         * lib/stdalign.in.h: Copy from gnulib.
7506         * doc/misc/texinfo.tex: Copy from texinfo.
7508 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7510         Make syntax.c call syntax-propertize on demand
7511         * lisp/emacs-lisp/syntax.el (syntax--jit-propertize): New function.
7512         (parse-sexp-propertize-function): Use it.
7513         (syntax-propertize): Disable parse-sexp-propertize-function.
7514         * src/syntax.c (parse_sexp_propertize, update_syntax_table_forward):
7515         New functions.
7516         (syms_of_syntax): New vars `parse-sexp-propertize-done' and
7517         `parse-sexp-propertize-function'.
7518         * src/syntax.h (struct gl_state_s): Add `e_property_truncated' field.
7519         (UPDATE_SYNTAX_TABLE_FORWARD): Use update_syntax_table_forward.
7520         (SETUP_BUFFER_SYNTAX_TABLE): Set e_property_truncated.
7521         * lisp/progmodes/elisp-mode.el (elisp-byte-code-syntax-propertize):
7522         Don't assume `point' is set.
7524 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
7526         Fix indentation of an @example in ELisp manual
7527         * doc/lispref/syntax.texi (Categories): Untabify the example.
7528         (Bug#21448)
7530 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7532         Define internal-char-font even if --without-x
7533         The function is used now even in non-graphical environments.
7534         Problem reported by Glenn Morris in:
7535         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00401.html
7536         * src/font.c (Finternal_char_font): Move here ...
7537         * src/fontset.c (Finternal_char_font): ... from here.
7539 2015-09-09  Stefan Monnier  <monnier@iro.umontreal.ca>
7541         * lisp/emacs-lisp/cl-generic.el (cl-generic-generalizers):
7542         Remove warning.
7544 2015-09-09  Eli Zaretskii  <eliz@gnu.org>
7546         Fix display of complex local data types in GDB-MI
7547         * lisp/progmodes/gdb-mi.el (gdb-locals-handler-custom): If a
7548         variable has no value, display "<complex data type>" as a
7549         placeholder, instead of a confusing "nil".  (Bug#21438)
7551 2015-09-09  Oleh Krehel  <ohwoeowho@gmail.com>
7553         Remove redundant redefinition of seq-drop-while from seq.el
7554         * lisp/emacs-lisp/seq.el (seq-drop-while): Define only once.
7556 2015-09-09  Phil Sainty  <psainty@orcon.net.nz>
7558         * lisp/emacs-lisp/package.el (package--ensure-init-file):
7559         More robust check for `package-initialize' calls in init file.
7560         This function accepts an optional argument, but calls passing
7561         an argument would not have been detected.
7563 2015-09-09  Paul Eggert  <eggert@cs.ucla.edu>
7565         Port movemail to RHEL 6 with --enable-gcc-warnings
7566         * lib-src/movemail.c (main): Declare local only if needed.
7568         Port recent Linux console changes to RHEL 6
7569         * src/terminal.c [HAVE_LINUX_KD_H]: Include <sys/ioctl.h>.
7571         Improvements for curved quotes on Linux consule
7572         This should help Emacs work better out-of-the-box on Linux consoles,
7573         which have only limited support for displaying Unicode characters.
7574         Also, undo the recent change that caused text-quoting-style to
7575         affect quote display on terminals, so that the two features are
7576         independent.  See Alan Mackenzie in:
7577         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00244.html
7578         Finally, add a style parameter to startup--setup-quote-display,
7579         so that this function can also be invoked after startup, with
7580         different styles depending on user preference at the time.
7581         * configure.ac: Check for linux/kd.h header.
7582         * doc/emacs/display.texi (Text Display): Document quote display.
7583         * doc/lispref/display.texi (Active Display Table):
7584         * etc/NEWS:
7585         * lisp/startup.el (startup--setup-quote-display, command-line):
7586         text-quoting-style no longer affects quote display.
7587         * doc/lispref/frames.texi (Terminal Parameters): Fix typo.
7588         * lisp/international/mule-util.el (char-displayable-p):
7589         * lisp/startup.el (startup--setup-quote-display):
7590         On a text terminal supporting glyph codes, use the reported
7591         glyph codes instead of the terminal coding system, as this
7592         is more accurate on the Linux console.
7593         * lisp/startup.el (startup--setup-quote-display):
7594         New optional arg STYLE.
7595         * src/fontset.c (Finternal_char_font):
7596         Report glyph codes for a text terminal, if they are available.
7597         Currently this is supported only for the Linux console.
7598         * src/termhooks.h (struct terminal): New member glyph-code-table.
7599         * src/terminal.c [HAVE_LINUX_KD_H]: Include <errno.h>, <linux/kd.h>.
7600         (calculate_glyph_code_table) [HAVE_LINUX_KD_H]: New function.
7601         (terminal_glyph_code): New function.
7603 2015-09-08  Juri Linkov  <juri@linkov.net>
7605         * lisp/info.el (Info-fontify-node): Don't stop at the non-title
7606         underline.  (Bug#21433)
7608 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
7610         * lisp/calendar/time-date.el (with-decoded-time-value): Fix debug spec.
7612 2015-09-08  Tassilo Horn  <tsdh@gnu.org>
7614         Fix double-reporting of rename events with inotify
7615         * lisp/filenotify.el (file-notify-callback): Fix double-reporting
7616         of rename events with inotify (bug#21435).
7618 2015-09-08  Vasilij Schneidermann  <v.schneidermann@gmail.com>  (tiny change)
7620         * lisp/play/tetris.el (tetris-move-down): New command (bug#21360).
7621         (tetris-mode-map): Use it.
7623 2015-09-08  Stefan Monnier  <monnier@iro.umontreal.ca>
7625         Remove a few simple cases of global redisplay
7626         * src/dispnew.c (redraw_frame): Don't redisplay all frames.
7627         * src/xdisp.c (echo_area_display): Set the frame's `redisplay' bit
7628         rather than returning a "resized_p" boolean.
7629         (redisplay_internal): Adjust call accordingly.
7630         * src/xfaces.c (free_realized_faces): Don't redisplay all frames.
7631         (free_all_realized_faces): Set windows_or_buffers_changed so as to ease
7632         tracking of this undesirable situation.
7634         * src/process.c (status_notify): Avoid global redisplay (bug#11822)
7635         * src/process.c (status_notify): Only set the update_mode_line on the
7636         relevant buffers rather than setting it globally.
7638 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
7640         * lisp/electric.el (electric-quote-post-self-insert-function):
7641         Don't use syntax-ppss if comment-use-syntax is nil (e.g. message-mode).
7642         (electric-quote-mode): Activate everywhere in message-mode.
7644 2015-09-07  Paul Eggert  <eggert@cs.ucla.edu>
7646         Go back to grave quoting in source-code docstrings etc.
7647         This reverts almost all my recent changes to use curved quotes
7648         in docstrings and/or strings used for error diagnostics.
7649         There are a few exceptions, e.g., Bahá’í proper names.
7650         * admin/unidata/unidata-gen.el (unidata-gen-table):
7651         * lisp/abbrev.el (expand-region-abbrevs):
7652         * lisp/align.el (align-region):
7653         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet)
7654         (outlineify-sticky):
7655         * lisp/apropos.el (apropos-library):
7656         * lisp/bookmark.el (bookmark-default-annotation-text):
7657         * lisp/button.el (button-category-symbol, button-put)
7658         (make-text-button):
7659         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
7660         * lisp/calc/calc-embed.el (calc-do-embedded):
7661         * lisp/calc/calc-ext.el (calc-user-function-list):
7662         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
7663         * lisp/calc/calc-help.el (calc-describe-key)
7664         (calc-describe-thing, calc-full-help):
7665         * lisp/calc/calc-lang.el (calc-c-language)
7666         (math-parse-fortran-vector-end, math-parse-tex-sum)
7667         (math-parse-eqn-matrix, math-parse-eqn-prime)
7668         (calc-yacas-language, calc-maxima-language, calc-giac-language)
7669         (math-read-giac-subscr, math-read-math-subscr)
7670         (math-read-big-rec, math-read-big-balance):
7671         * lisp/calc/calc-misc.el (calc-help, report-calc-bug):
7672         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
7673         (calc-auto-recompute):
7674         * lisp/calc/calc-prog.el (calc-fix-token-name)
7675         (calc-read-parse-table-part, calc-user-define-invocation)
7676         (math-do-arg-check):
7677         * lisp/calc/calc-store.el (calc-edit-variable):
7678         * lisp/calc/calc-units.el (math-build-units-table-buffer):
7679         * lisp/calc/calc-vec.el (math-read-brackets):
7680         * lisp/calc/calc-yank.el (calc-edit-mode):
7681         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
7682         * lisp/calendar/appt.el (appt-display-message):
7683         * lisp/calendar/diary-lib.el (diary-check-diary-file)
7684         (diary-mail-entries, diary-from-outlook):
7685         * lisp/calendar/icalendar.el (icalendar-export-region)
7686         (icalendar--convert-float-to-ical)
7687         (icalendar--convert-date-to-ical)
7688         (icalendar--convert-ical-to-diary)
7689         (icalendar--convert-recurring-to-diary)
7690         (icalendar--add-diary-entry):
7691         * lisp/calendar/time-date.el (format-seconds):
7692         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
7693         (timeclock-make-hours-explicit, timeclock-log-data):
7694         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
7695         (todo-item-mark, todo-check-format)
7696         (todo-insert-item--next-param, todo-edit-item--next-key)
7697         (todo-mode):
7698         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
7699         * lisp/cedet/mode-local.el (describe-mode-local-overload)
7700         (mode-local-print-binding, mode-local-describe-bindings-2):
7701         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
7702         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
7703         * lisp/cus-start.el (standard):
7704         * lisp/cus-theme.el (describe-theme-1):
7705         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
7706         (custom--sort-vars-1, load-theme):
7707         * lisp/descr-text.el (describe-text-properties-1, describe-char):
7708         * lisp/dired-x.el (dired-do-run-mail):
7709         * lisp/dired.el (dired-log):
7710         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
7711         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
7712         (ad-disable-advice, ad-remove-advice, ad-set-argument)
7713         (ad-set-arguments, ad--defalias-fset, ad-activate)
7714         (ad-deactivate):
7715         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
7716         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
7717         (byte-optimize-while, byte-optimize-apply):
7718         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
7719         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
7720         (byte-compile-log-file, byte-compile-format-warn)
7721         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
7722         (byte-compile-cl-warn)
7723         (byte-compile-warn-about-unresolved-functions)
7724         (byte-compile-file, byte-compile--declare-var)
7725         (byte-compile-file-form-defmumble, byte-compile-form)
7726         (byte-compile-normal-call, byte-compile-check-variable)
7727         (byte-compile-variable-ref, byte-compile-variable-set)
7728         (byte-compile-subr-wrong-args, byte-compile-setq-default)
7729         (byte-compile-negation-optimizer)
7730         (byte-compile-condition-case--old)
7731         (byte-compile-condition-case--new, byte-compile-save-excursion)
7732         (byte-compile-defvar, byte-compile-autoload)
7733         (byte-compile-lambda-form)
7734         (byte-compile-make-variable-buffer-local, display-call-tree)
7735         (batch-byte-compile):
7736         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use):
7737         * lisp/emacs-lisp/chart.el (chart-space-usage):
7738         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
7739         (check-declare-warn, check-declare-file)
7740         (check-declare-directory):
7741         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
7742         (checkdoc-message-text-engine):
7743         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer)
7744         (cl--describe-class):
7745         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
7746         (cl--generic-describe, cl-generic-generalizers):
7747         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
7748         (cl-symbol-macrolet):
7749         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
7750         * lisp/emacs-lisp/copyright.el (copyright)
7751         (copyright-update-directory):
7752         * lisp/emacs-lisp/edebug.el (edebug-read-list):
7753         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
7754         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
7755         (eieio-oref):
7756         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
7757         * lisp/emacs-lisp/eieio-speedbar.el:
7758         (eieio-speedbar-child-make-tag-lines)
7759         (eieio-speedbar-child-description):
7760         * lisp/emacs-lisp/eieio.el (defclass, change-class):
7761         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
7762         (elint-init-form, elint-check-defalias-form)
7763         (elint-check-let-form):
7764         * lisp/emacs-lisp/ert.el (ert-get-test, ert-results-mode-menu)
7765         (ert-results-pop-to-backtrace-for-test-at-point)
7766         (ert-results-pop-to-messages-for-test-at-point)
7767         (ert-results-pop-to-should-forms-for-test-at-point)
7768         (ert-describe-test):
7769         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
7770         (find-function-library):
7771         * lisp/emacs-lisp/generator.el (iter-yield):
7772         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
7773         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
7774         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
7775         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
7776         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
7777         (advice--make, define-advice):
7778         * lisp/emacs-lisp/package-x.el (package-upload-file):
7779         * lisp/emacs-lisp/package.el (package-version-join)
7780         (package-disabled-p, package-activate-1, package-activate)
7781         (package--download-one-archive)
7782         (package--download-and-read-archives)
7783         (package-compute-transaction, package-install-from-archive)
7784         (package-install, package-install-selected-packages)
7785         (package-delete, package-autoremove, describe-package-1)
7786         (package-install-button-action, package-delete-button-action)
7787         (package-menu-hide-package, package-menu--list-to-prompt)
7788         (package-menu--perform-transaction)
7789         (package-menu--find-and-notify-upgrades):
7790         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
7791         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
7792         * lisp/emacs-lisp/ring.el (ring-previous, ring-next):
7793         * lisp/emacs-lisp/rx.el (rx-check, rx-anything)
7794         (rx-check-any-string, rx-check-any, rx-check-not, rx-=)
7795         (rx-repeat, rx-check-backref, rx-syntax, rx-check-category)
7796         (rx-form):
7797         * lisp/emacs-lisp/smie.el (smie-config-save):
7798         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
7799         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
7800         * lisp/emacs-lisp/testcover.el (testcover-1value):
7801         * lisp/emacs-lisp/timer.el (timer-event-handler):
7802         * lisp/emulation/viper-cmd.el (viper-toggle-parse-sexp-ignore-comments)
7803         (viper-toggle-search-style, viper-kill-buffer)
7804         (viper-brac-function):
7805         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
7806         * lisp/env.el (setenv):
7807         * lisp/erc/erc-button.el (erc-nick-popup):
7808         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login, english):
7809         * lisp/eshell/em-dirs.el (eshell/cd):
7810         * lisp/eshell/em-glob.el (eshell-glob-regexp)
7811         (eshell-glob-entries):
7812         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
7813         * lisp/eshell/esh-opt.el (eshell-show-usage):
7814         * lisp/facemenu.el (facemenu-add-new-face)
7815         (facemenu-add-new-color):
7816         * lisp/faces.el (read-face-name, read-face-font, describe-face)
7817         (x-resolve-font-name):
7818         * lisp/files-x.el (modify-file-local-variable):
7819         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
7820         (set-auto-mode, hack-one-local-variable--obsolete)
7821         (dir-locals-set-directory-class, write-file, basic-save-buffer)
7822         (delete-directory, copy-directory, recover-session)
7823         (recover-session-finish, insert-directory)
7824         (file-modes-char-to-who, file-modes-symbolic-to-number)
7825         (move-file-to-trash):
7826         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer):
7827         * lisp/find-cmd.el (find-generic, find-to-string):
7828         * lisp/finder.el (finder-commentary):
7829         * lisp/font-lock.el (font-lock-fontify-buffer):
7830         * lisp/format.el (format-write-file, format-find-file)
7831         (format-insert-file):
7832         * lisp/frame.el (get-device-terminal, select-frame-by-name):
7833         * lisp/fringe.el (fringe--check-style):
7834         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
7835         * lisp/help-fns.el (help-fns--key-bindings)
7836         (help-fns--compiler-macro, help-fns--parent-mode)
7837         (help-fns--obsolete, help-fns--interactive-only)
7838         (describe-function-1, describe-variable):
7839         * lisp/help.el (describe-mode)
7840         (describe-minor-mode-from-indicator):
7841         * lisp/image.el (image-type):
7842         * lisp/international/ccl.el (ccl-dump):
7843         * lisp/international/fontset.el (x-must-resolve-font-name):
7844         * lisp/international/mule-cmds.el (prefer-coding-system)
7845         (select-safe-coding-system-interactively)
7846         (select-safe-coding-system, activate-input-method)
7847         (toggle-input-method, describe-current-input-method)
7848         (describe-language-environment):
7849         * lisp/international/mule-conf.el (code-offset):
7850         * lisp/international/mule-diag.el (describe-character-set)
7851         (list-input-methods-1):
7852         * lisp/mail/feedmail.el (feedmail-run-the-queue):
7853         * lisp/mouse.el (minor-mode-menu-from-indicator):
7854         * lisp/mpc.el (mpc-playlist-rename):
7855         * lisp/msb.el (msb--choose-menu):
7856         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
7857         * lisp/net/imap.el (imap-interactive-login):
7858         * lisp/net/mairix.el (mairix-widget-create-query):
7859         * lisp/net/newst-backend.el (newsticker--sentinel-work):
7860         * lisp/net/newst-treeview.el (newsticker--treeview-load):
7861         * lisp/net/rlogin.el (rlogin):
7862         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
7863         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
7864         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
7865         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
7866         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
7867         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
7868         (org-babel-goto-named-result):
7869         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
7870         * lisp/org/ob-ref.el (org-babel-ref-resolve):
7871         * lisp/org/org-agenda.el (org-agenda-prepare):
7872         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
7873         (org-clock-resolve):
7874         * lisp/org/org-ctags.el (org-ctags-ask-rebuild-tags-file-then-find-tag):
7875         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
7876         * lisp/org/org-habit.el (org-habit-parse-todo):
7877         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
7878         (org-mouse-context-menu):
7879         * lisp/org/org-table.el (org-table-edit-formulas):
7880         * lisp/org/ox.el (org-export-async-start):
7881         * lisp/proced.el (proced-log):
7882         * lisp/progmodes/ada-mode.el (ada-get-indent-case)
7883         (ada-check-matching-start, ada-goto-matching-start):
7884         * lisp/progmodes/ada-prj.el (ada-prj-display-page):
7885         * lisp/progmodes/ada-xref.el (ada-find-executable):
7886         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
7887         * lisp/progmodes/etags.el (etags-tags-apropos-additional):
7888         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
7889         (flymake-start-syntax-check-process):
7890         * lisp/progmodes/python.el (python-shell-get-process-or-error)
7891         (python-define-auxiliary-skeleton):
7892         * lisp/progmodes/sql.el (sql-comint):
7893         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
7894         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate):
7895         * lisp/recentf.el (recentf-open-files):
7896         * lisp/replace.el (query-replace-read-from)
7897         (occur-after-change-function, occur-1):
7898         * lisp/scroll-bar.el (scroll-bar-columns):
7899         * lisp/server.el (server-get-auth-key):
7900         * lisp/simple.el (execute-extended-command)
7901         (undo-outer-limit-truncate, list-processes--refresh)
7902         (compose-mail, set-variable, choose-completion-string)
7903         (define-alternatives):
7904         * lisp/startup.el (site-run-file, tty-handle-args, command-line)
7905         (command-line-1):
7906         * lisp/subr.el (noreturn, define-error, add-to-list)
7907         (read-char-choice, version-to-list):
7908         * lisp/term/common-win.el (x-handle-xrm-switch)
7909         (x-handle-name-switch, x-handle-args):
7910         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
7911         * lisp/textmodes/reftex-ref.el (reftex-label):
7912         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
7913         * lisp/textmodes/two-column.el (2C-split):
7914         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
7915         (tutorial--find-changed-keys):
7916         * lisp/type-break.el (type-break-noninteractive-query):
7917         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
7918         (wdired-do-perm-changes):
7919         * lisp/whitespace.el (whitespace-report-region):
7920         Prefer grave quoting in source-code strings used to generate help
7921         and diagnostics.
7922         * lisp/faces.el (face-documentation):
7923         No need to convert quotes, since the result is a docstring.
7924         * lisp/info.el (Info-virtual-index-find-node)
7925         (Info-virtual-index, info-apropos):
7926         Simplify by generating only curved quotes, since info files are
7927         typically that ways nowadays anyway.
7928         * lisp/international/mule-diag.el (list-input-methods):
7929         Don’t assume text quoting style is curved.
7930         * lisp/org/org-bibtex.el (org-bibtex-fields):
7931         Revert my recent changes, going back to the old quoting style.
7933 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7935         * lisp/emacs-lisp/package.el: Reduce autoloading before compiling.
7936         (package--autoloads-file-name)
7937         (package--activate-autoloads-and-load-path): New function.
7938         (package-activate-1): Delegate autoloading and load-path
7939         configuration to `package--activate-autoloads-and-load-path'.
7940         (package--compile): Before compilation, call
7941         `package--activate-autoloads-and-load-path' instead of
7942         `package-activate-1'.
7944 2015-09-07  Stefan Monnier  <monnier@iro.umontreal.ca>
7946         * src/keyboard.c (read_key_sequence): Complete last fix (bug#21403).
7948 2015-09-07  Eli Zaretskii  <eliz@gnu.org>
7950         Fix deletion of symlinks to directories on MS-Windows
7951         * src/w32.c (sys_unlink): If 'unlink' fails, and the argument is a
7952         symlink to a directory, try again with 'rmdir'.
7953         (is_symlink): If the argument is a symlink to a directory, set a
7954         bit in the return value to indicate that fact.
7956 2015-09-07  Artur Malabarba  <bruce.connor.am@gmail.com>
7958         * lisp/emacs-lisp/package.el (package-initialize): Set enable-at-startup
7959         When `package-initialize' is called as part of loading the init file,
7960         the user probably doesn't want it to be called again afterwards.
7961         In this situation, `package-initialize' now sets
7962         `package-enable-at-startup' to nil to prevent that.  The user can have
7963         the old behavior by setting this variable to t after the call to
7964         `package-initialize'.  (Bug#21423)
7965         * doc/emacs/package.texi (Package Installation): Document it.
7966         * doc/lispref/package.texi (Packaging Basics): Document it.
7967         * etc/NEWS: Document it.
7969 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7971         Bump version of ntlm.el to 2.00
7972         * lisp/net/ntlm.el: Bump version to 2.00.  New maintainer.
7973         Add comm keyword.
7975 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
7977         * doc/misc/gnus.texi (Mail Source Specifiers):
7978         Allow :mailbox to be a list.
7980 2015-09-06  Dmitry Gutov  <dgutov@yandex.ru>
7982         * lisp/progmodes/etags.el (etags-tags-completion-table):
7983         Allow even one non-regular character before the implicit tag name.
7984         Reported at http://emacs.stackexchange.com/questions/15269/.
7986 2015-09-06  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
7988         Add support for NTLMv2 authentication
7989         * lisp/net/ntlm.el (ntlm): New customization group.
7990         (ntlm-compatibility-level): New defcustom.
7991         (ntlm-compute-timestamp): New function.
7992         (ntlm-generate-nonce): Likewise.
7993         (ntlm-build-auth-response): Add support for NTLMv2 authentication.
7995 2015-09-06  Artur Malabarba  <bruce.connor.am@gmail.com>
7997         * lisp/emacs-lisp/package.el: Rename custom faces.
7998         All of the recently introduced faces, like `package-name-face', have
7999         been renamed to no end in `-face' to comply with the convention
8000         described in (info "(elisp) Defining Faces").
8001         (package-name, package-description)
8002         (package-status-built-in, package-status-external)
8003         (package-status-available, package-status-new)
8004         (package-status-held, package-status-disabled)
8005         (package-status-installed, package-status-dependency)
8006         (package-status-unsigned, package-status-incompat)
8007         (package-status-avail-obso): New faces.
8008         (package-menu--print-info-simple): Use them.
8010 2015-09-06  Adam Sjøgren  <asjo@koldfront.dk>
8012         mail-source.el: Make the imap mail-source's :mailbox handle a list
8013         * lisp/gnus/mail-source.el (mail-source-fetch-imap):
8014         Allow :mailbox to be  a list.
8016 2015-09-06  Eric Abrahamsen  <eric@ericabrahamsen.net>
8018         nnimap.el: Handle nil arg to nnimap-request-group
8019         * lisp/gnus/nnimap.el (nnimap-request-group): Handle nil "info" arg.
8020         This arg isn't always passed in, check it's not nil before making it
8021         into a list.  The active arg will also be nil if the group is new,
8022         check for that.
8024 2015-09-06  Michael Albinus  <michael.albinus@gmx.de>
8026         File notifications: Support renaming over directory boundaries
8027         * lisp/filenotify.el (file-notify-handle-event):
8028         (file-notify--pending-event): Adapt docstring.
8029         (file-notify--descriptor, file-notify-callback): Reimplement in
8030         order to support renaming over directory boundaries.
8031         (file-notify-add-watch): Adapt `file-notify--descriptor' call.
8032         * doc/lispref/os.texi (File Notifications): Remove limitation of
8033         file renaming to the same directory.
8035 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
8037         Spelling fix (Bug#21420)
8039 2015-09-05  Nicolas Petton  <nicolas@petton.fr>
8041         Improve the semantic of map-some
8042         Update map-some to return the returned by the predicate, similar to
8043         seq-some.
8044         * lisp/emacs-lisp/map.el (map-some): Update the function to return the
8045           return value of the predicate.
8046         * test/automated/map-tests.el (test-map-some): Update the test to check
8047           for non-nil values only.
8049         Rename map-contains-key-p and map-some-p
8050         Remove the "-p" suffix from both function names.
8051         * lisp/emacs-lisp/map.el (map-contains-key, map-some):
8052           Rename the functions.
8053         * test/automated/map-tests.el (test-map-contains-key, test-map-some):
8054           Update both test functions.
8056         Improve the semantic of seq-some
8057         Update seq-some to return non-nil if the predicate returns non-nil for
8058         any element of the seq, in which case the returned value is the one
8059         returned by the predicate.
8060         * lisp/emacs-lisp/seq.el (seq-some): Update the function and its
8061           docstring.
8062         * test/automated/seq-tests.el (test-seq-some): Add a regression test.
8063         * doc/lispref/sequences.texi (Sequence Functions): Update the
8064           documentation for seq-some.
8066         Rename seq-some-p to seq-some and seq-contains-p to seq-contains
8067         * lisp/emacs-lisp/seq.el (seq-some, seq-contains): Rename the functions
8068           without the "-p" prefix.
8069         * test/automated/seq-tests.el (test-seq-some, test-seq-contains): Update
8070           the tests accordingly.
8071         * doc/lispref/sequences.texi (Sequence Functions): Update the
8072           documentation for seq.el.
8074 2015-09-05  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
8076         text-quoting-style for usage of fn names with ‘’
8077         * lisp/help.el (help--docstring-quote): Don’t assume
8078         text-quoting-style is ‘curve’ when generating usage strings for
8079         functions whose names contain curved quotes.
8081 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
8083         Fix fix for describe-function keybinding confusion
8084         This fixes a bug introduced by the previous patch.
8085         * lisp/help-fns.el (help-fns--signature):
8086         Last arg of help-fns--signature is now a buffer, or nil if a
8087         raw signature is wanted.  All callers changed.
8088         (describe-function-1): Use this to do the right thing with signatures.
8090 2015-09-05  Johan Bockgård  <bojohan@gnu.org>
8092         * doc/lispref/frames.texi (Mouse Tracking): Fix typo.
8094         Use PAT rather than UPAT in pcase macros
8095         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
8096         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>: Use PAT rather
8097           than UPAT.
8099 2015-09-05  Paul Eggert  <eggert@cs.ucla.edu>
8101         Fix describe-function keybinding confusion
8102         * lisp/help-fns.el (describe-function-1): Compute signature
8103         in the original buffer, not in standard-output, so that
8104         substitute-command-keys uses the proper keybindings.
8105         This fixes Bug#21412, introduced in commit
8106         2015-06-11T10:23:46-0700!eggert@cs.ucla.edu.
8108 2015-09-05  Xue Fuqiao  <xfq.free@gmail.com>
8110         * doc/emacs/programs.texi (Program Modes): Remove an index entry.
8112 2015-09-05  Robert Pluim  <rpluim@gmail.com>  (tiny change)
8114         Avoid read error messages from 'inotify'
8115         * src/process.c (wait_reading_process_output): Add a
8116         'tls_available' set and manipulate it instead of 'Available' when
8117         checking TLS inputs.  Assign the value to 'Available' only if we
8118         find any TLS data waiting to be read.  This avoids error messages
8119         from 'inotify' that tries to read data it shouldn't.  (Bug#21337)
8121 2015-09-05  Eli Zaretskii  <eliz@gnu.org>
8123         Avoid errors in thing-at-point with 2nd argument non-nil
8124         * lisp/thingatpt.el (thing-at-point): Only call 'length' on
8125         sequences.  (Bug#21391)
8127 2015-09-05  Philip  <pipcet@gmail.com>  (tiny change)
8129         Fix segfaults due to using a stale face ID
8130         * src/xdisp.c (forget_escape_and_glyphless_faces): New function.
8131         (display_echo_area_1, redisplay_internal): Call it to avoid
8132         reusing stale face IDs for 'escape-glyph' and 'glyphless-char'
8133         faces, which could case a segfault if the frame's face cache was
8134         freed since the last redisplay.  (Bug#21394)
8135         * src/xfaces.c (free_realized_faces):
8136         Call forget_escape_and_glyphless_faces.
8137         * src/dispextern.h (forget_escape_and_glyphless_faces): Add prototype.
8139 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
8141         Fix minor problems with " in manual
8143 2015-09-04  Michael Albinus  <michael.albinus@gmx.de>
8145         * doc/misc/tramp.texi (Frequently Asked Questions): New item for ad-hoc
8146         multi-hop files.
8148 2015-09-04  Paul Eggert  <eggert@cs.ucla.edu>
8150         Support automated ‘make check’ in non-C locale
8151         This lets the builder optionally test Emacs behavior in other locales.
8152         The C locale is still the default for tests.
8153         * test/automated/Makefile.in (TEST_LOCALE): New macro.
8154         (emacs): Use it.
8155         * test/automated/flymake-tests.el (flymake-tests--current-face):
8156         Use C locale for subprocesses so that tests behave as expected.
8157         * test/automated/python-tests.el:
8158         (python-shell-prompt-validate-regexps-1)
8159         (python-shell-prompt-validate-regexps-2)
8160         (python-shell-prompt-validate-regexps-3)
8161         (python-shell-prompt-validate-regexps-4)
8162         (python-shell-prompt-validate-regexps-5)
8163         (python-shell-prompt-validate-regexps-6)
8164         (python-shell-prompt-set-calculated-regexps-1):
8165         Adjust expected output to match locale.
8166         * test/automated/tildify-tests.el (tildify-test--test)
8167         (tildify-space-test--test, tildify-space-undo-test--test):
8168         This test assumes UTF-8 encoding.
8170 2015-09-03  Paul Eggert  <eggert@cs.ucla.edu>
8172         Fix some more docstring etc. quoting problems
8173         Mostly these fixes prevent the transliteration of apostrophes
8174         that should stay apostrophes.  Also, prefer curved quotes in
8175         Bahá’í proper names, as that’s the preferred Bahá’í style and
8176         these names are chock-full of non-ASCII characters anyway.
8177         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-autoload)
8178         (eieio-defclass-internal):
8179         * lisp/emacs-lisp/eieio.el (defclass):
8180         * lisp/hi-lock.el (hi-lock-mode):
8181         Don’t transliterate Lisp apostrophes when generating a
8182         doc string or diagnostic.
8183         * lisp/international/mule-diag.el (list-coding-systems-1):
8184         * lisp/international/ogonek.el (ogonek-jak, ogonek-how):
8185         * lisp/mail/sendmail.el (sendmail-query-user-about-smtp):
8186         * lisp/vc/ediff-mult.el (ediff-redraw-registry-buffer):
8187         * lisp/vc/ediff-ptch.el (ediff-fixup-patch-map):
8188         Substitute quotes before putting them in the help buffer.
8190 2015-09-03  Stefan Monnier  <monnier@iro.umontreal.ca>
8192         Re-add the notion of echo_prompt lost in the translation
8193         * src/keyboard.h (struct kboard): Replace echo_after_prompt with new
8194         echo_prompt which contains the actual string.  Update all uses.
8195         * src/keyboard.c (kset_echo_prompt): New function.
8196         (echo_update): Add echo_prompt at the very beginning.
8197         (read_char): Remove workaround for bug#19875, not needed any more.
8198         (read_key_sequence): Set echo_prompt rather than echo_string
8199         (bug#21403).
8200         (mark_kboards): Mark echo_prompt.
8202         Fix disassembly of non-compiled lexical functions (bug#21377)
8203         * lisp/emacs-lisp/bytecomp.el (byte-compile): Handle `closure' arg.
8204         * lisp/emacs-lisp/disass.el: Use lexical-binding.
8205         (disassemble): Recognize `closure's as well.
8206         (disassemble-internal): Use indirect-function and
8207         help-function-arglist, and accept `closure's.
8208         (disassemble-internal): Use interactive-form.
8209         (disassemble-1): Use functionp.
8211         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-compose-p):
8212         Don't compose inside verbatim blocks!
8214 2015-09-03  Mark Oteiza  <mvoteiza@udel.edu>
8216         * lisp/thingatpt.el (thing-at-point-uri-schemes): Add "man:"
8217         (bug#19441).
8219         * lisp/mpc.el (mpc--proc-connect): Handle unix sockets (bug#19394).
8221 2015-09-03  Dmitry Gutov  <dgutov@yandex.ru>
8223         vc-git-mode-line-string: Explicitly re-apply the face
8224         * lisp/vc/vc-git.el (vc-git-mode-line-string): Explicitly re-apply
8225         the face (bug#21404).
8227 2015-09-02  Paul Eggert  <eggert@cs.ucla.edu>
8229         Treat initial-scratch-message as a doc string
8230         * doc/emacs/building.texi (Lisp Interaction):
8231         * doc/lispref/os.texi (Startup Summary):
8232         * etc/NEWS: Document this.
8233         * lisp/startup.el (initial-scratch-message):
8234         Look up find-file’s key rather than hardcoding it.
8235         (command-line-1): Substitute the doc string.
8236         This also substitutes the quotes, which will help test display
8237         quoting at startup.
8239         Fix describe-char bug with glyphs on terminals
8240         * lisp/descr-text.el (describe-char): Terminals can have glyphs in
8241         buffers too, so don’t treat them differently from graphic displays.
8242         Without this fix, describe-char would throw an error on a terminal
8243         if given a glyph with a non-default face.
8245         Follow text-quoting-style in display table init
8246         This attempts to fix a problem reported by Alan Mackenzie in:
8247         http://lists.gnu.org/archive/html/emacs-devel/2015-09/msg00112.html
8248         * doc/lispref/display.texi (Active Display Table):
8249         Mention how text-quoting-style affects it.
8250         * doc/lispref/help.texi (Keys in Documentation):
8251         Say how to set text-quoting-style in ~/.emacs.
8252         * etc/NEWS: Document the change.
8253         * lisp/startup.el (startup--setup-quote-display):
8254         Follow user preference if text-quoting-style is set.
8255         (command-line): Setup quote display again if user expresses
8256         a preference in .emacs.
8258 2015-09-02  K. Handa  <handa@gnu.org>
8260         Fix typo
8261         * src/ftfont.c (ftfont_drive_otf): otf_positioning_type_components_mask
8262         -> OTF_positioning_type_components_mask.
8264         Fix previous change
8265         * src/ftfont.c (ftfont_drive_otf): Remember some bits of
8266         OTF_Glyph->positioning_type in MFLTGlyphFT->libotf_positioning_type.
8268 2015-09-01  David Caldwell  <david@porkrind.org>  (tiny change)
8270         * lisp/vc/vc-hooks.el (vc-refresh-state): New command.
8271         Rename from vc-find-file-hook and make interactive.
8272         (vc-find-file-hook): Redefine as obsolete alias.
8274 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8276         Escape ` and ' in doc
8277         Escape apostrophes and grave accents in docstrings if they are
8278         are supposed to stand for themselves and are not quotes.  Remove
8279         apostrophes from docstring examples like ‘'(calendar-nth-named-day
8280         -1 0 10 year)’ that confuse source code with data.  Do some other
8281         minor docstring fixups as well, e.g., insert a missing close quote.
8283 2015-09-01  Stefan Monnier  <monnier@iro.umontreal.ca>
8285         Generalize the prefix-command machinery of C-u
8286         * lisp/simple.el (prefix-command-echo-keystrokes-functions)
8287         (prefix-command-preserve-state-hook): New hooks.
8288         (internal-echo-keystrokes-prefix): New function.
8289         (prefix-command--needs-update, prefix-command--last-echo): New vars.
8290         (prefix-command-update, prefix-command-preserve): New functions.
8291         (reset-this-command-lengths): New compatibility definition.
8292         (universal-argument--mode): Call prefix-command-update.
8293         (universal-argument, universal-argument-more, negative-argument)
8294         (digit-argument): Call prefix-command-preserve-state.
8295         * src/keyboard.c: Call internal-echo-keystrokes-prefix to build
8296         the "prefix argument" to echo.
8297         (this_command_key_count_reset, before_command_key_count)
8298         (before_command_echo_length): Delete variables.
8299         (echo_add_key): Always add a space.
8300         (echo_char): Remove.
8301         (echo_dash): Don't give up when this_command_key_count is 0, since that
8302         is now the case after a prefix command.
8303         (echo_update): New function, extracted from echo_now.
8304         (echo_now): Use it.
8305         (add_command_key, read_char, record_menu_key): Remove old disabled code.
8306         (command_loop_1): Don't refrain from pushing an undo boundary when
8307         prefix-arg is set.  Remove other prefix-arg special case, now handled
8308         directly in the prefix commands instead.  But call echo_now if there's
8309         a prefix state to echo.
8310         (read_char, record_menu_key): Use echo_update instead of echo_char.
8311         (read_key_sequence): Use echo_now rather than echo_dash/echo_char.
8312         (Freset_this_command_lengths): Delete function.
8313         (syms_of_keyboard): Define Qinternal_echo_keystrokes_prefix.
8314         (syms_of_keyboard): Don't defsubr Sreset_this_command_lengths.
8315         * lisp/simple.el: Use those new hooks for C-u.
8316         (universal-argument--description): New function.
8317         (prefix-command-echo-keystrokes-functions): Use it.
8318         (universal-argument--preserve): New function.
8319         (prefix-command-preserve-state-hook): Use it.
8320         (command-execute): Call prefix-command-update if needed.
8321         * lisp/kmacro.el (kmacro-step-edit-prefix-commands)
8322         (kmacro-step-edit-prefix-index): Delete variables.
8323         (kmacro-step-edit-query, kmacro-step-edit-insert): Remove ad-hoc
8324         support for prefix arg commands.
8325         (kmacro-step-edit-macro): Don't bind kmacro-step-edit-prefix-index.
8326         * lisp/emulation/cua-base.el (cua--prefix-override-replay)
8327         (cua--shift-control-prefix): Use prefix-command-preserve-state.
8328         Remove now unused arg `arg'.
8329         (cua--prefix-override-handler, cua--prefix-repeat-handler)
8330         (cua--shift-control-c-prefix, cua--shift-control-x-prefix):
8331         Update accordingly.
8332         (cua--prefix-override-timeout): Don't call reset-this-command-lengths
8333         any more.
8334         (cua--keep-active, cua-exchange-point-and-mark): Don't set mark-active
8335         if the mark is not set.
8337 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8339         Rework quoting in Emacs Lisp Introduction
8340         * doc/lispintro/emacs-lisp-intro.texi (Sample let Expression)
8341         (if in more detail, type-of-animal in detail, else): Rework the
8342         early example to use " rather than ' so that we don’t burden
8343         complete novices with the low-priority detail of text quoting style.
8344         (Complete zap-to-char, kill-region, Complete copy-region-as-kill)
8345         (kill-new function, kill-ring-yank-pointer)
8346         (Complete forward-sentence, Loading Files)
8347         (Code for current-kill, Code for current-kill, yank):
8348         Resurrect the Emacs 22 versions of the code, which uses grave
8349         quoting style in doc strings.
8350         (Complete zap-to-char): Mention how quoting works in doc strings.
8352         Setup quote display only if interactive
8353         * lisp/startup.el (command-line):
8354         Skip call to startup--setup-quote-display if noninteractive.
8355         Without this change, python-shell-prompt-validate-regexps-1
8356         fails in test/automated/python-tests.el when run in an
8357         en_US.utf8 locale on Fedora.
8359 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
8361         Use defalias at the top level
8362         * lisp/gnus/gnus-util.el (gnus-format-message):
8363         * lisp/net/tls.el (tls-format-message): Use defalias at the top level
8364         so as to make eval-and-compile unnecessary.  Thanks to Stefan Monnier.
8366 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8368         terminal-init-w32console mimicks command-line
8369         Problem reported by Eli Zaretskii.
8370         * lisp/startup.el (startup--setup-quote-display):
8371         New function, refactored from a part of ‘command-line’.
8372         (command-line): Use it.
8373         * lisp/term/w32console.el (terminal-init-w32console):
8374         Use it, so that this function stays consistent with ‘command-line’.
8376         Display replacement quotes with shadow glyphs
8377         * lisp/startup.el (command-line): When displaying ASCII
8378         replacements for curved quotes, use a shadow glyph instead of a
8379         regular one, to avoid ambiguity.
8381 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
8383         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Mask "Password:".
8385 2015-09-01  Paul Eggert  <eggert@cs.ucla.edu>
8387         Docstring fixes re quotes in C code
8388         Fix some docstring quoting problems, mostly by escaping apostrophe.
8390 2015-09-01  Michael Albinus  <michael.albinus@gmx.de>
8392         Some Tramp password fixes
8393         * lisp/net/tramp.el (tramp-clear-passwd): Clear also the passwords
8394         of the hops.
8395         * lisp/net/tramp-sh.el (tramp-methods) <sudo>: Move "-p" "Password:"
8396         at the beginning of the command.  Otherwise, it could be
8397         interpreted as password prompt if the remote host echoes the
8398         command.
8399         (tramp-remote-coding-commands): Add "openssl enc -base64".
8401 2015-09-01  Dmitry Gutov  <dgutov@yandex.ru>
8403         Make vc-git-working-revision always return the commit hash
8404         * lisp/vc/vc-git.el (vc-git-working-revision):
8405         Return the commit hash (bug#21383).
8406         (vc-git--symbolic-ref): New function, extracted from above.
8407         (vc-git-mode-line-string): Use it.
8409 2015-09-01  K. Handa  <handa@gnu.org>
8411         Use the new type MFLTGlyphFT for MFLTGlyphString.glyphs
8412         * src/ftfont.c (MFLTGlyphFT): New type.
8413         (ftfont_get_glyph_id, ftfont_get_metrics, ftfont_drive_otf)
8414         (ftfont_shape_by_flt): Make MFLTGlyphFT the actual type of
8415         elements in the array MFLTGlyphString.glyphs.
8417 2015-09-01  Stephen Leake  <stephen_leake@stephe-leake.org>
8419         Improve comments in elisp-mode.el, elisp-mode-tests.el
8420         * lisp/progmodes/elisp-mode.el: Clean up FIXMEs, comments.
8422         Delete Emacs 25 test in mode-local.el
8423         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8424         Fix missed an edit in previous commit.
8426         Show all known mode-local overrides in *Help*
8427         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8428         Assume Emacs 25. Add all known mode-local overrides.
8430 2015-09-01  Katsumi Yamaoka  <yamaoka@jpl.org>
8432         * lisp/gnus/gnus-sum.el (gnus-summary-search-article):
8433         Ensure that the article where the search word is found is displayed
8434         and pointed to in the summary buffer.
8436 2015-08-31  Zachary Kanfer  <zkanfer@gmail.com>  (tiny change)
8438         * lisp/newcomment.el (comment-dwim): Use `use-region-p'.
8439         When the region is active, but is empty (length 0), act as though
8440         the region was not active; that is, put a comment at the end of
8441         the line.  (Bug#21119)
8443 2015-08-31  Katsumi Yamaoka  <yamaoka@jpl.org>
8445         Port tls.el to older Emacs
8446         * lisp/net/tls.el (tls-format-message):
8447         Alias to format-message, or format if not available.
8448         (open-tls-stream): Use it.
8450 2015-08-31  Rüdiger Sonderfeld  <ruediger@c-plusplus.net>
8452         hideif.el: Recognize .h++ as C++ header
8453         * lisp/progmodes/hideif.el (hide-ifdef-header-regexp): Add .h++.
8455         isearch: Document character folding mode
8456         * lisp/isearch.el (isearch-forward):
8457         Mention `isearch-toggle-character-fold' in doc string.
8459 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8461         Quoting fixes in ERC and Eshell
8462         * lisp/erc/erc-autoaway.el (erc-autoaway-set-away):
8463         * lisp/erc/erc-backend.el (define-erc-response-handler):
8464         * lisp/erc/erc-fill.el (erc-fill-static-center):
8465         * lisp/eshell/em-dirs.el (eshell-save-some-last-dir):
8466         * lisp/eshell/em-glob.el (eshell-glob-entries):
8467         * lisp/eshell/em-hist.el (eshell-save-some-history):
8468         * lisp/eshell/em-unix.el (eshell-remove-entries, eshell/rm)
8469         (eshell-shuffle-files):
8470         * lisp/eshell/esh-cmd.el (eshell-do-eval):
8471         * lisp/eshell/esh-proc.el (eshell-process-interact)
8472         (eshell-query-kill-processes):
8473         Respect ‘text-quoting-style’ in diagnostics and doc strings.
8475         Quoting fixes in Gnus
8476         * lisp/gnus/gnus-agent.el:
8477         (gnus-agent-possibly-synchronize-flags-server):
8478         * lisp/gnus/gnus-art.el (gnus-article-browse-delete-temp-files):
8479         * lisp/gnus/gnus-eform.el (gnus-edit-form):
8480         * lisp/gnus/gnus-group.el (gnus-group-edit-group)
8481         (gnus-group-nnimap-edit-acl):
8482         * lisp/gnus/gnus-topic.el (gnus-topic-edit-parameters):
8483         * lisp/gnus/mail-source.el (mail-source-delete-old-incoming):
8484         * lisp/gnus/message.el (message-strip-subject-encoded-words)
8485         (message-check-recipients, message-send-form-letter):
8486         * lisp/gnus/mm-decode.el (mm-display-part):
8487         * lisp/gnus/mm-uu.el (mm-uu-pgp-signed-extract-1):
8488         * lisp/gnus/mml-smime.el (mml-smime-get-dns-cert)
8489         (mml-smime-get-ldap-cert):
8490         * lisp/gnus/spam-report.el (spam-report-process-queue):
8491         Respect ‘text-quoting-style’ in diagnostics.
8492         * lisp/gnus/gnus-art.el (article-display-face)
8493         * lisp/gnus/gnus-fun.el (gnus-display-x-face-in-from):
8494         Use straight quoting in email.
8495         * lisp/gnus/rfc2231.el (rfc2231-decode-encoded-string):
8496         Escape apostrophes in doc strings.
8498         Quoting fixes in lisp mail, mh-e, net, url
8499         * lisp/mail/emacsbug.el (report-emacs-bug)
8500         (report-emacs-bug-hook): Use straight quotes in outgoing email,
8501         * lisp/mail/feedmail.el (feedmail-message-action-help-blat):
8502         * lisp/mail/rmail.el (rmail-unknown-mail-followup-to):
8503         * lisp/mail/rmailout.el (rmail-output-read-file-name):
8504         * lisp/net/imap.el (imap-interactive-login):
8505         * lisp/net/tls.el (open-tls-stream):
8506         * lisp/url/url-auth.el (url-register-auth-scheme):
8507         Respect ‘text-quoting-style’ in diagnostics.
8508         * lisp/mh-e/mh-e.el (mh-sortm-args):
8509         Quote docstring example using text quotes, not as a Lisp quote.
8511 2015-08-31  Stephen Leake  <stephen_leake@stephe-leake.org>
8513         Fix some byte-compiler warnings in EDE
8514         This fixes a bug that caused ede-generic-new-autoloader to overwrite the
8515         existing autoloader list, rather than add to it.
8516         * lisp/cedet/ede/auto.el (ede-project-class-files): Delete obsolete name
8517         argument to eieio class constructor.
8518         (ede-show-supported-projects): New.
8519         (ede-add-project-autoload): Replace obsolete `eieio-object-name-string'
8520         with (oref ... name).
8521         (ede-auto-load-project): Use slot name, not initarg key.
8522         * lisp/cedet/ede/generic.el (ede-generic-load)
8523         (ede-generic-find-matching-target): Use slot name, not initarg key.
8524         (ede-find-target): Use oref-default on class name.
8525         (ede-generic-new-autoloader): Delete obsolete name argument to eieio
8526         class constructor.
8527         (ede-enable-generic-projects): Make project type names unique.
8529 2015-08-31  Eli Zaretskii  <eliz@gnu.org>
8531         Fix directory accessibility tests for w32 network volumes
8532         * src/w32.c (faccessat): Don't fail with network volumes without a
8533         share.
8534         (w32_accessible_directory_p): Handle network volumes without a
8535         share.
8537         Fix handling long file names in readdir on MS-Windows
8538         * src/w32.c (sys_readdir): Append "\*" to the directory after
8539         converting it to UTF-16/ANSI, not before, to avoid overflowing the
8540         260-character limit on file names in filename_to_utf16/ansi.
8542         Make file-accessible-directory-p reliable on MS-Windows
8543         * src/w32.c (w32_accessible_directory_p): New function.
8544         * src/w32.h (w32_accessible_directory_p): Add prototype.
8545         * src/fileio.c (file_accessible_directory_p) [WINDOWSNT]: Call
8546         w32_accessible_directory_p to test a directory for accessibility
8547         by the current user.  (Bug#21346)
8548         (Ffile_accessible_directory_p): Remove the w32 specific caveat
8549         from the doc string.
8551 2015-08-31  Martin Rudalics  <rudalics@gmx.at>
8553         Don't call do_pending_window_change in signal handlers (Bug#21380)
8554         * src/gtkutil.c (xg_frame_resized):
8555         * src/xterm.c (x_set_window_size):
8556         * src/w32term.c (x_set_window_size): Don't call
8557         do_pending_window_change.
8559 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8561         Quoting fixes in lisp/org
8562         * lisp/org/org-agenda.el (org-search-view, org-todo-list)
8563         (org-tags-view):
8564         * lisp/org/org-capture.el (org-capture-mode)
8565         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
8566         (org-ctags-ask-append-topic):
8567         * lisp/org/org.el (org-time-string-to-time)
8568         (org-time-string-to-absolute):
8569         * lisp/org/org-ctags.el (org-ctags-visit-buffer-or-file)
8570         (org-ctags-ask-append-topic):
8571         * lisp/org/org.el (org-time-string-to-time)
8572         (org-time-string-to-absolute):
8573         Respect ‘text-quoting-style’ in diagnostics.
8574         * lisp/org/org-agenda.el (org-agenda-custom-commands)
8575         (org-agenda-dim-blocked-tasks): Plural of TODO is TODOs, not TODO’s.
8576         * lisp/org/org-capture.el (org-capture-fill-template):
8577         Avoid contraction in output file that might be ASCII.
8578         * lisp/org/org-compat.el (format-message):
8579         Define if not already defined, for backward compatibility.
8580         * lisp/org/org-src.el (org-edit-src-save):
8581         * lisp/org/org.el (org-cycle, org-ctrl-c-ctrl-c):
8582         Escape apostrophes in diagnostics.
8584         Treat “instead” strings as docstrings
8585         * lisp/emacs-lisp/bytecomp.el (byte-compile-form):
8586         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
8587         Substitute quotes in instead strings.
8589 2015-08-31  Nicolas Petton  <nicolas@petton.fr>
8591         Better documentation of seq-let
8592         * doc/lispref/sequences.texi (Sequence Functions): Rephrase the
8593         documentation of seq-let.
8595 2015-08-31  Paul Eggert  <eggert@cs.ucla.edu>
8597         * lisp/international/ccl.el: Fix quoting.
8599         Quoting fixes in lisp/international and lisp/leim
8600         * lisp/international/ccl.el (ccl-dump, ccl-dump-call):
8601         * lisp/international/ja-dic-utl.el (skkdic-lookup-key):
8602         * lisp/international/mule-cmds.el:
8603         (select-safe-coding-system-interactively, leim-list-file-name):
8604         * lisp/international/quail.el (quail-use-package, quail-help):
8605         * lisp/international/titdic-cnv.el (tit-process-header)
8606         (miscdic-convert):
8607         Respect text quoting style in doc strings and diagnostics.
8608         * lisp/international/quail.el (lisp/international/quail.el):
8609         * lisp/leim/quail/ethiopic.el ("ethiopic"):
8610         Escape apostrophes in doc strings.
8612         Make ‘text-quoting-style’ a plain defvar
8613         It doesn’t need customization, as it’s likely useful only by experts.
8614         Suggested by Stefan Monnier in:
8615         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg01020.html
8616         * lisp/cus-start.el: Remove doc.c section for builtin customized vars.
8618         Quoting fixes in lisp/textmodes
8619         * lisp/textmodes/bibtex.el (bibtex-validate)
8620         (bibtex-validate-globally, bibtex-search-entries):
8621         * lisp/textmodes/ispell.el (ispell-command-loop):
8622         * lisp/textmodes/page-ext.el (search-pages, pages-directory):
8623         * lisp/textmodes/texinfmt.el (texinfmt-version)
8624         (texinfo-format-region, texinfo-format-buffer-1):
8625         * lisp/textmodes/two-column.el (2C-split):
8626         Respect text quoting style in doc strings and diagnostics.
8627         * lisp/textmodes/conf-mode.el (conf-mode-map, conf-quote-normal):
8628         * lisp/textmodes/sgml-mode.el (sgml-specials, sgml-mode):
8629         Escape apostrophes in doc strings.
8631         Documentation fixes re quotes
8632         Prefer curved quotes in examples if users will typically see
8633         curved quotes when the examples run.
8634         Mention format-message when appropriate.
8635         Don’t use @code in examples.
8636         Quote an apostrophe with @kbd.
8638         Quoting fixes in lisp/progmodes
8639         * lisp/progmodes/cc-engine.el (c-bos-report-error):
8640         * lisp/progmodes/cpp.el (cpp-edit-reset):
8641         * lisp/progmodes/ebrowse.el (ebrowse-tags-apropos):
8642         * lisp/progmodes/etags.el (etags-tags-apropos-additional)
8643         (etags-tags-apropos, list-tags, tags-apropos):
8644         * lisp/progmodes/executable.el (executable-set-magic):
8645         * lisp/progmodes/octave.el (octave-sync-function-file-names)
8646         (octave-help, octave-find-definition-default-filename)
8647         (octave-find-definition):
8648         Respect text quoting style in doc strings and diagnostics.
8649         * lisp/progmodes/cc-langs.el (c-populate-syntax-table):
8650         * lisp/progmodes/verilog-mode.el (verilog-auto-reset-widths):
8651         * lisp/progmodes/vhdl-mode.el (vhdl-electric-quote):
8652         Escape apostrophes in doc strings.
8653         * lisp/progmodes/cmacexp.el (c-macro-expansion):
8654         Use straight quoting in ASCII comment.
8655         * lisp/progmodes/idlwave.el (idlwave-auto-fill-split-string)
8656         (idlwave-pad-keyword):
8657         * lisp/progmodes/vhdl-mode.el (vhdl-widget-directory-validate)
8658         (vhdl-electric-open-bracket, vhdl-electric-close-bracket):
8659         (vhdl-electric-semicolon, vhdl-electric-comma)
8660         (vhdl-electric-period, vhdl-electric-equal):
8661         Use directed quotes in diagnostics and doc strings.
8663 2015-08-30  Xue Fuqiao  <xfq.free@gmail.com>
8665         Minor documentation and NEWS tweak
8666         * doc/lispintro/emacs-lisp-intro.texi (fwd-para let):
8667         Add an index entry.
8668         * etc/NEWS: Fix a typo in character-fold-to-regexp.
8670 2015-08-30  Michael Albinus  <michael.albinus@gmx.de>
8672         * lisp/net/tramp-sh.el (tramp-convert-file-attributes):
8673         Revert patch from 2015-08-24.  Tramp shall behave like for local files.
8674         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
8675         Adapt test.
8677 2015-08-30  Paul Eggert  <eggert@cs.ucla.edu>
8679         Text quoting fixes in cedet, emulation, emacs-lisp
8680         * lisp/cedet/ede.el (ede-check-project-directory):
8681         * lisp/cedet/semantic/analyze/debug.el
8682         (semantic-analyzer-debug-insert-include-summary):
8683         * lisp/cedet/semantic/bovine/c.el (semantic-c-describe-environment):
8684         * lisp/cedet/semantic/decorate/include.el
8685         (semantic-decoration-unknown-include-describe)
8686         (semantic-decoration-all-include-summary):
8687         * lisp/cedet/semantic/ia.el (semantic-ia-fast-jump):
8688         * lisp/emulation/edt.el (edt-load-keys):
8689         * lisp/emulation/viper-cmd.el
8690         (viper-display-current-destructive-command)
8691         (viper-query-replace, viper-brac-function):
8692         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-compile):
8693         * lisp/emulation/viper-macs.el (viper-unrecord-kbd-macro):
8694         Respect text quoting style in doc string or diagnostic.
8695         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8696         Use format-message to avoid overtranslating quotes.
8697         * lisp/emacs-lisp/checkdoc.el (checkdoc-in-sample-code-p):
8698         Escape an apostrophe in a docstring.
8699         * lisp/emacs-lisp/warnings.el (lwarn): Fix doc string.
8701 2015-08-29  Daniel Colascione  <dancol@dancol.org>
8703         Fix which-func for curly quotes: look for symbol, not message
8704         * lisp/progmodes/which-func.el (which-func-ff-hook): Look for new
8705         imenu-unavailable error symbol instead of trying to match message
8706         exactly.
8707         * lisp/imenu.el (imenu-unavailable): New error.
8708         (imenu-unavailable-error): New function.
8710 2015-08-29  Eli Zaretskii  <eliz@gnu.org>
8712         Fix Python tests on MS-Windows
8713         * test/automated/python-tests.el
8714         (python-shell-calculate-command-1): Run python-shell-interpreter
8715         through shell-quote-argument before comparing with what
8716         python-shell-calculate-command returns.
8717         (python-shell-calculate-pythonpath-1)
8718         (python-shell-calculate-pythonpath-2)
8719         (python-shell-calculate-process-environment-2): Use path-separator
8720         instead of a literal ':'.
8721         (python-shell-calculate-exec-path-2)
8722         (python-shell-calculate-exec-path-3)
8723         (python-shell-calculate-exec-path-4)
8724         (python-shell-with-environment-1)
8725         (python-shell-with-environment-2): Run "/env/bin" through
8726         expand-file-name before comparing with exec-path.  (Bug#21375)
8728 2015-08-29  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
8730         Use Core Text types/functions/variables/enumerators directly
8731         * src/macfont.h (FontDescriptorRef, FontRef, FontSymbolicTraits)
8732         (CharacterCollection): Remove typedefs.  All uses replaced with
8733         definitions.
8734         (MAC_FONT_NAME_ATTRIBUTE, MAC_FONT_FAMILY_NAME_ATTRIBUTE)
8735         (MAC_FONT_TRAITS_ATTRIBUTE, MAC_FONT_SIZE_ATTRIBUTE)
8736         (MAC_FONT_CASCADE_LIST_ATTRIBUTE)
8737         (MAC_FONT_CHARACTER_SET_ATTRIBUTE, MAC_FONT_LANGUAGES_ATTRIBUTE)
8738         (MAC_FONT_FORMAT_ATTRIBUTE, MAC_FONT_SYMBOLIC_TRAIT)
8739         (MAC_FONT_WEIGHT_TRAIT, MAC_FONT_WIDTH_TRAIT)
8740         (MAC_FONT_SLANT_TRAIT): Remove macros.  All uses replaced with
8741         definitions.
8742         (MAC_FONT_TRAIT_ITALIC, MAC_FONT_TRAIT_BOLD)
8743         (MAC_FONT_TRAIT_MONO_SPACE, MAC_FONT_TRAIT_COLOR_GLYPHS)
8744         (MAC_FONT_FORMAT_BITMAP)
8745         (MAC_CHARACTER_COLLECTION_IDENTITY_MAPPING)
8746         (MAC_CHARACTER_COLLECTION_ADOBE_JAPAN1): Remove enumerators.
8747         All uses replaced with definitions.
8748         (kCTFontTraitItalic, kCTFontTraitBold, kCTFontTraitMonoSpace)
8749         (kCTFontTraitColorGlyphs, kCTCharacterCollectionIdentityMapping)
8750         (kCTCharacterCollectionAdobeJapan1 kCTFontOrientationDefault):
8751         Add compatibility enumerators for older versions.
8752         (mac_font_descriptor_create_with_attributes)
8753         (mac_font_descriptor_create_matching_font_descriptors)
8754         (mac_font_descriptor_create_matching_font_descriptor)
8755         (mac_font_descriptor_copy_attribute)
8756         (mac_font_descriptor_supports_languages)
8757         (mac_font_create_with_name, mac_font_get_size)
8758         (mac_font_copy_family_name, mac_font_copy_character_set)
8759         (mac_font_get_glyphs_for_characters, mac_font_get_ascent)
8760         (mac_font_get_descent, mac_font_get_leading)
8761         (mac_font_get_underline_position)
8762         (mac_font_get_underline_thickness, mac_font_copy_graphics_font)
8763         (mac_font_copy_non_synthetic_table): Remove macros.  All uses
8764         replaced with definitions.
8765         (mac_font_create_preferred_family_for_attributes)
8766         (mac_font_get_advance_width_for_glyph)
8767         (mac_font_get_bounding_rect_for_glyph)
8768         (mac_font_create_available_families, mac_font_shape):
8769         Remove macros for renamed functions.
8770         (mac_nsctfont_copy_font_descriptor): Remove unused macro.
8771         * src/macterm.m (mac_font_descriptor_supports_languages):
8772         Rename from mac_ctfont_descriptor_supports_languages.
8773         (mac_font_create_preferred_family_for_attributes): Rename from
8774         mac_ctfont_create_preferred_family_for_attributes.
8775         (mac_font_get_advance_width_for_glyph): Rename from
8776         mac_ctfont_get_advance_width_for_glyph.
8777         Use kCTFontOrientationDefault also for older versions.
8778         (mac_font_get_bounding_rect_for_glyph): Rename from
8779         mac_ctfont_get_bounding_rect_for_glyph.
8780         Use kCTFontOrientationDefault also for older versions.
8781         (mac_font_create_available_families): Rename from
8782         mac_ctfont_create_available_families.
8783         (mac_font_equal_in_postscript_name): Rename from
8784         mac_ctfont_equal_in_postscript_name.  All uses changed.
8785         (mac_font_create_line_with_string_and_font): Rename from
8786         mac_ctfont_create_line_with_string_and_font.  All uses changed.
8787         (mac_font_shape): Rename from mac_ctfont_shape.
8788         (mac_font_family_compare): Remove unused declaration.
8790 2015-08-29  Paul Eggert  <eggert@cs.ucla.edu>
8792         Fix minor text quoting in calc, calendar, vc
8793         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
8794         * lisp/calc/calc-help.el (calc-j-prefix-help):
8795         * lisp/calc/calc-misc.el (calc-help):
8796         * lisp/calc/calc.el (calc-algebraic-mode, calc-mode):
8797         Escape an apostrophe in a docstring.
8798         * lisp/calc/calc-forms.el (calc-hms-notation):
8799         * lisp/calc/calc-mode.el (calc-display-raw, calc-algebraic-mode):
8800         Escape an apostrophe in a diagnostic.
8801         * lisp/calc/calc-misc.el (calc-help):
8802         * lisp/calendar/diary-lib.el (diary-include-files):
8803         * lisp/calendar/todo-mode.el (todo-prefix, todo-item-mark):
8804         * lisp/vc/diff-mode.el (diff-delete-trailing-whitespace):
8805         * lisp/vc/ediff-diff.el (ediff-same-contents):
8806         * lisp/vc/ediff-merg.el (ediff-re-merge):
8807         * lisp/vc/ediff-ptch.el (ediff-patch-file-internal):
8808         * lisp/vc/ediff-util.el (ediff-test-save-region)
8809         (ediff-status-info):
8810         * lisp/vc/ediff.el (ediff-merge-revisions)
8811         (ediff-merge-revisions-with-ancestor):
8812         * lisp/vc/pcvs.el (cvs-mode-checkout, cvs-vc-command-advice):
8813         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
8814         Respect text quoting style in doc string or diagnostic.
8815         * lisp/calc/calc-prog.el (calc-kbd-push, calc-kbd-pop):
8816         * lisp/vc/add-log.el (change-log-goto-source):
8817         Avoid double-formatting.
8818         * lisp/vc/ediff-init.el (format-message):
8819         New backward-compatibility alias.
8821 2015-08-28  Paul Eggert  <eggert@cs.ucla.edu>
8823         Fix minor text quoting problems in lisp top level
8824         * lisp/apropos.el (apropos-describe-plist):
8825         * lisp/cus-theme.el (customize-themes):
8826         * lisp/dired.el (dired-log):
8827         * lisp/help-fns.el (describe-variable):
8828         * lisp/hexl.el (hexl-insert-multibyte-char):
8829         * lisp/info.el (Info-finder-find-node):
8830         * lisp/json.el (json-read-string):
8831         * lisp/novice.el (disabled-command-function)
8832         (disabled-command-function):
8833         * lisp/startup.el (normal-mouse-startup-screen):
8834         * lisp/woman.el (WoMan-log, WoMan-warn):
8835         Respect text quoting style in doc string or diagnostic.
8836         * lisp/replace.el (replace-character-fold):
8837         * src/syntax.c (Fmodify_syntax_entry):
8838         Escape an apostrophe in a docstring.
8839         * lisp/tempo.el (tempo-define-template):
8840         Remove confusing apostrophe from docstring.
8841         * lisp/whitespace.el (whitespace-mark-x):
8842         Use directed quotes in docstring.
8844 2015-08-28  Simen Heggestøyl  <simenheg@gmail.com>
8846         Fix indentation rule in css-mode
8847         * lisp/textmodes/css-mode.el (css-smie-rules): Fix indentation of
8848         brackets in presence of pseudo-selectors.  (Bug#21328)
8850 2015-08-28  Eli Zaretskii  <eliz@gnu.org>
8852         Fix a bug in recording a macro while flyspell-mode is active
8853         * lisp/subr.el (sit-for): Don't call read-event when recording a
8854         macro.  (Bug#21329)
8856 2015-08-27  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
8858         Tweak startup screen quoting
8859         * lisp/startup.el (normal-splash-screen): Use standard
8860         "M-" abbrevation rather than a confusingly-different one.
8861         (normal-no-mouse-startup-screen): Follow ‘text-quoting-style’.
8863 2015-08-27  Paul Eggert  <eggert@cs.ucla.edu>
8865         Add test case for ‘format’ bug and refactor
8866         * src/editfns.c (styled_format): Refactor internally, mostly by
8867         moving declarations closer to uses.  This should not affect behavior.
8868         * test/automated/textprop-tests.el (textprop-tests-format): New test.
8870         Fix ‘format’ bug with property offsets
8871         * src/editfns.c (styled_format): Fix recently-introduced ‘format’
8872         bug in calculating string property offsets (Bug#21351).
8874         Use straight quotes in lib-src diagnostics
8875         These auxiliary programs can’t use Emacs’s text-quoting-style,
8876         and it’s too much trouble to redo that mechanism by hand.
8877         So just use straight quotes for now.
8878         * lib-src/ebrowse.c (main):
8879         * lib-src/emacsclient.c (decode_options, main):
8880         * lib-src/etags.c (Ada_help, default_C_help, Cplusplus_help)
8881         (Forth_help, HTML_help, Lisp_help, Makefile_help, Objc_help)
8882         (Perl_help, PHP_help, Python_help, Scheme_help, TeX_help, auto_help)
8883         (none_help, print_language_names, print_help, add_regex)
8884         (suggest_asking_for_help):
8885         * lib-src/make-docfile.c (write_c_args, scan_c_stream):
8886         Use straight quotes in diagnostics.
8888         ‘text-quoting-style’ fixes for admin
8889         * admin/admin.el (cusver-scan, cusver-check):
8890         * admin/authors.el (authors-canonical-file-name):
8891         * admin/bzrmerge.el (bzrmerge-missing):
8892         Respect ‘text-quoting-style’ in diagnostics.
8894 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8896         Assume GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS
8897         This removes the need for GCPRO1 etc.  Suggested by Stefan Monnier in:
8898         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00918.html
8899         * doc/lispref/internals.texi (Writing Emacs Primitives):
8900         * etc/NEWS:
8901         Document the change.
8902         * src/alloc.c (gcprolist, dump_zombies, MAX_ZOMBIES, zombies)
8903         (nzombies, ngcs, avg_zombies, max_live, max_zombies, avg_live)
8904         (Fgc_status, check_gcpros, relocatable_string_data_p, gc-precise):
8905         * src/bytecode.c (mark_byte_stack) [BYTE_MARK_STACK]:
8906         * src/eval.c (gcpro_level) [DEBUG_GCPRO]:
8907         * src/lisp.h (struct handler.gcpro, struct gcpro, GC_MARK_STACK)
8908         (GC_USE_GCPROS_AS_BEFORE, GC_MAKE_GCPROS_NOOPS)
8909         (GC_MARK_STACK_CHECK_GCPROS, GC_USE_GCPROS_CHECK_ZOMBIES)
8910         (BYTE_MARK_STACK, GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5, GCPRO6)
8911         (GCPRO7, UNGCPRO, RETURN_UNGCPRO):
8912         Remove.  All uses removed.  The code now assumes
8913         GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS.
8914         * src/bytecode.c (relocate_byte_stack):
8915         Rename from unmark_byte_stack, since it now only relocates.
8916         All callers changed.
8917         * src/frame.c (make_frame): Add an IF_LINT to pacify GCC 5.2
8918         with GCPROs removed.
8919         * src/systime.h: Use EMACS_LISP_H as the canary instead of GCPRO1.
8920         * test/automated/finalizer-tests.el (finalizer-basic)
8921         (finalizer-circular-reference, finalizer-cross-reference)
8922         (finalizer-error):
8923         * test/automated/generator-tests.el (cps-test-iter-close-finalizer):
8924         Remove tests, as they depend on gc-precise.
8926 2015-08-26  Nicolas Petton  <nicolas@petton.fr>
8928         Improve seq-concatenate for new sequence types
8929         Use the new `seq-into-sequence' in seqs passed to `seq-concatenate' to
8930         ensure that concatenation happens on sequences only.  This makes it
8931         possible to use `seq-concatenate' for new types of seqs.
8932         * lisp/emacs-lisp/seq.el (seq-into-sequence, seq-concatenate):
8933         New function used in `seq-concatenate'.
8934         * test/automated/seq-tests.el (test-seq-into-sequence): New unit test
8935         for seq-into-sequence.
8937 2015-08-26  Stephen Leake  <stephen_leake@stephe-leake.org>
8939         Add mode local overrides to xref-find-definitions
8940         * lisp/cedet/mode-local.el (xref-mode-local--override-present)
8941         (xref-mode-local-overload): New; add mode local overrides to
8942         xref-find-definitions.
8943         * test/automated/elisp-mode-tests.el: Add mode local override tests.
8944         (xref-elisp-test-run): Handle indented defuns.
8945         (xref-elisp-generic-*): Improve doc strings.
8946         * lisp/progmodes/elisp-mode.el (elisp-xref-find-def-functions): New.
8947         (elisp--xref-find-definitions): Use it.
8949         Add mode local overrides to describe-function
8950         * lisp/cedet/mode-local.el (describe-mode-local-overload):
8951         New; add mode local overrides to describe-function.
8952         * etc/NEWS: Document change.
8954 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8956         Prefer straight quoting in some etc text files
8957         These files are plain text and might be used by non-Emacs apps.
8958         They’re mostly ASCII, so just use straight quotes.
8960         Fix quoting in ‘message_with_string’
8961         * src/nsfont.m (nsfont_open): Use directed quotes in format; they
8962         should work now.
8963         * src/xdisp.c (message_to_stderr): New function, refactored from
8964         part of ‘message3_nolog’.
8965         (message3_nolog): Use it.
8966         (message_with_string): Use it.  Don’t mishandle NUL bytes when
8967         noninteractive.  Prefer AUTO_STRING when it’s most likely faster.
8968         Use ‘format-message’, not ‘format’, so that quotes are translated.
8970 2015-08-26  Eli Zaretskii  <eliz@gnu.org>
8972         Mention false positives of file-accessible-directory on w32
8973         * src/fileio.c (Ffile_accessible_directory_p): Doc fix.
8974         (Bug#21346)
8976 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8978         Treat error strings as help
8979         * src/print.c (print_error_message): Translate quotes and command
8980         keys in errmsg so that users see, e.g., "Symbol’s value as
8981         variable is void: foo" when text-quoting-style is curved.
8983 2015-08-26  Michael Albinus  <michael.albinus@gmx.de>
8985         * lisp/net/tramp-cache.el (top): Use `message', not `format-message'.
8987 2015-08-26  Paul Eggert  <eggert@cs.ucla.edu>
8989         Top-level elisp files respect ‘text-quoting-style’
8990         In top-level elisp files, use format-message in diagnostic formats,
8991         so that they follow user preference as per ‘text-quoting-style’
8992         rather than being hard-coded to quote `like this'.
8993         * lisp/allout.el (allout-get-configvar-values):
8994         * lisp/apropos.el (apropos-symbols-internal):
8995         * lisp/dired-aux.el (dired-do-shell-command, dired-create-files)
8996         (dired-do-create-files-regexp, dired-create-files-non-directory):
8997         * lisp/dired-x.el (dired-do-run-mail):
8998         * lisp/dired.el (dired-log, dired-dnd-handle-local-file):
8999         * lisp/disp-table.el (standard-display-european):
9000         * lisp/find-dired.el (find-dired):
9001         * lisp/forms.el (forms-mode):
9002         * lisp/ido.el (ido-buffer-internal):
9003         * lisp/info.el (Info-index-next):
9004         * lisp/outline.el (outline-invent-heading):
9005         * lisp/printing.el (pr-ps-outfile-preprint, pr-i-ps-send):
9006         * lisp/proced.el (proced-log):
9007         * lisp/ps-print.el (ps-print-preprint, ps-get-size):
9008         * lisp/recentf.el (recentf-open-files, recentf-save-list):
9009         * lisp/savehist.el (savehist-save):
9010         * lisp/server.el (server-ensure-safe-dir):
9011         * lisp/ses.el (ses-rename-cell):
9012         * lisp/simple.el (list-processes--refresh):
9013         * lisp/startup.el (command-line):
9014         * lisp/strokes.el (strokes-unset-last-stroke)
9015         (strokes-execute-stroke):
9016         Use format-message so that quotes are restyled.
9017         * lisp/cus-edit.el (custom-raised-buttons, customize-browse):
9018         Don’t quote ‘raised’.
9019         * lisp/descr-text.el (describe-char):
9020         * lisp/dirtrack.el (dirtrack-debug-message):
9021         * lisp/hexl.el (hexl-insert-multibyte-char):
9022         Apply substitute-command-keys to help string.
9023         * lisp/wdired.el (wdired-do-renames, wdired-do-symlink-changes)
9024         (wdired-do-perm-changes):
9025         Let dired-log do the formatting.
9027 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9029         Go back to grave quoting in Tramp
9030         * lisp/net/tramp-adb.el:
9031         * lisp/net/tramp-cache.el:
9032         * lisp/net/tramp-compat.el:
9033         * lisp/net/tramp-gvfs.el:
9034         * lisp/net/tramp-gw.el:
9035         * lisp/net/tramp-sh.el:
9036         * lisp/net/tramp-smb.el:
9037         * lisp/net/tramp.el:
9038         Stick with grave quoting in diagnostics strings.  This is more
9039         portable to older Emacs, desirable for Tramp.
9040         * lisp/net/tramp-cache.el: Use ‘format-message’, not ‘format’,
9041         for diagnostic that needs requoting.
9042         * lisp/net/tramp-compat.el (format-message):
9043         Fall back on simple ‘format’, since that’s good enough now.
9045         Go back to grave quoting in Gnus
9046         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
9047         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
9048         (gnus-agent-fetch-headers):
9049         * lisp/gnus/gnus-int.el (gnus-start-news-server):
9050         * lisp/gnus/gnus-registry.el:
9051         (gnus-registry--split-fancy-with-parent-internal)
9052         (gnus-registry-post-process-groups):
9053         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
9054         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
9055         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
9056         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
9057         * lisp/gnus/spam.el (spam-check-blackholes):
9058         Stick with grave quoting in diagnostics strings.  This is more
9059         portable to older Emacs, desirable for Gnus.
9061         Fix customization of text-quoting-style
9062         * lisp/cus-edit.el (custom-guess-type, custom-variable-documentation):
9063         * lisp/wid-edit.el (widget-docstring):
9064         Get raw docstring here since it’s cooked later and should not be
9065         cooked twice.
9066         * lisp/cus-edit.el (custom-group-value-create):
9067         Cook the docstring before inserting it.
9068         * lisp/cus-start.el (text-quoting-style): Quote the customization
9069         docstrings according to the new rules.  Give curved examples.
9071         format-message now curves ` and '
9072         That way, the caller doesn’t have to use curved quotes to
9073         get diagnostics that match the text-quoting-style preferences.
9074         Suggested by Dmitry Gutov in:
9075         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00893.html
9076         This means we no longer need %qs, so remove that format.
9077         While we’re at it, fix an unlikely bug and lessen the pressure
9078         on the garbage collector by processing the string once rather
9079         than twice in the usual case.
9080         * doc/lispref/strings.texi (Formatting Strings):
9081         * etc/NEWS: Document this.
9082         * lisp/subr.el (format-message): Remove; now done in C.
9083         * src/callint.c (Fcall_interactively):
9084         * src/editfns.c (Fmessage, Fmessage_box):
9085         Use Fformat_message instead of Finternal__text_restyle
9086         followed by Fformat.
9087         * src/doc.c (LSQM, RSQM): Remove; all uses changed to use
9088         uLSQM and uRSQM.
9089         (Fsubstitute_command_keys): Prefer AUTO_STRING to build_string
9090         when pure ASCII now suffices.  Fix unlikely bug when parsing
9091         unibyte string containing non-ASCII bytes.  Use inline code
9092         rather than memcpy, as it’s a tiny number of bytes.
9093         (Finternal__text_restyle): Remove; no longer used.
9094         (syms_of_doc): Don’t declare it.
9095         * src/editfns.c (Fformat): Rewrite in terms of new function
9096         ‘styled_format’.
9097         (Fformat_message): New function, moved here from subr.el.
9098         (styled_format): New function, with the old guts of Fformat,
9099         except it now optionally transliterates quotes, and it transliterates
9100         traditional grave accent and apostrophe quoting as well.
9101         Remove recently-added q flag; no longer needed or used.
9102         (syms_of_editfns): Define format-message.
9103         * src/lisp.h (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
9104         Remove; no longer need to be global symbols.
9105         * src/xdisp.c (vadd_to_log): Use Fformat_message, not Fformat,
9106         so that callers can use `%s'.
9107         * src/image.c (image_size_error, xbm_load_image, xbm_load)
9108         (xpm_load, pbm_load, png_load_body, jpeg_load_body, tiff_load)
9109         (gif_load, imagemagick_load_image, imagemagick_load, svg_load)
9110         (svg_load_image, gs_load, x_kill_gs_process):
9111         * src/lread.c (load_warn_old_style_backquotes):
9112         * src/xfaces.c (load_pixmap):
9113         * src/xselect.c (x_clipboard_manager_error_1):
9114         Use `%s' instead of %qs in formats.
9116 2015-08-25  Eli Zaretskii  <eliz@gnu.org>
9118         Minor fixes in doc/emacs/search.texi
9119         * doc/emacs/search.texi (Basic Isearch): Fix a typo.
9120         (Special Isearch): Use @w{} to generate several consecutive spaces
9121         with Texinfo 6.  (Bug#21345)
9123 2015-08-25  Michael Albinus  <michael.albinus@gmx.de>
9125         * lisp/net/tramp-sh.el (tramp-awk-encode, tramp-awk-decode)
9126         (tramp-awk-coding-test): New defconsts.
9127         (tramp-remote-coding-commands): Use them.
9128         (tramp-find-inline-encoding): Check for Perl only if necessary.
9130 2015-08-25  Xue Fuqiao  <xfq.free@gmail.com>
9132         * doc/lispintro/emacs-lisp-intro.texi (Run a Program): Add some
9133         index entries for the special form `quote'.
9135 2015-08-25  Paul Eggert  <eggert@cs.ucla.edu>
9137         Spelling fixes
9139         Gnus format-message typo fix
9140         * lisp/gnus/gnus-util.el (gnus-format-message):
9141         Fix typo when running in older Emacs.
9143         Prefer directed to neutral quotes in docstings and diagnostics.
9144         In docstrings, escape apostrophes that would otherwise be translated
9145         to curved quotes using the newer, simpler rules.
9146         * admin/unidata/unidata-gen.el (unidata-gen-table):
9147         * lisp/align.el (align-region):
9148         * lisp/allout.el (allout-mode, allout-solicit-alternate-bullet):
9149         * lisp/bookmark.el (bookmark-default-annotation-text):
9150         * lisp/calc/calc-aent.el (math-read-if, math-read-factor):
9151         * lisp/calc/calc-lang.el (math-read-giac-subscr)
9152         (math-read-math-subscr):
9153         * lisp/calc/calc-misc.el (report-calc-bug):
9154         * lisp/calc/calc-prog.el (calc-fix-token-name)
9155         (calc-read-parse-table-part):
9156         * lisp/cedet/ede/pmake.el (ede-proj-makefile-insert-dist-rules):
9157         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
9158         * lisp/dabbrev.el (dabbrev-expand):
9159         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
9160         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
9161         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
9162         * lisp/emulation/viper-cmd.el (viper-toggle-search-style):
9163         * lisp/erc/erc-button.el (erc-nick-popup):
9164         * lisp/erc/erc.el (erc-cmd-LOAD, erc-handle-login):
9165         * lisp/eshell/em-dirs.el (eshell/cd):
9166         * lisp/eshell/em-glob.el (eshell-glob-regexp):
9167         * lisp/eshell/em-pred.el (eshell-parse-modifiers):
9168         * lisp/eshell/esh-arg.el (eshell-parse-arguments):
9169         * lisp/eshell/esh-opt.el (eshell-show-usage):
9170         * lisp/files-x.el (modify-file-local-variable):
9171         * lisp/filesets.el (filesets-add-buffer, filesets-remove-buffer)
9172         (filesets-update-pre010505):
9173         * lisp/find-cmd.el (find-generic, find-to-string):
9174         * lisp/gnus/auth-source.el (auth-source-netrc-parse-entries):
9175         * lisp/gnus/gnus-agent.el (gnus-agent-check-overview-buffer)
9176         (gnus-agent-fetch-headers):
9177         * lisp/gnus/gnus-int.el (gnus-start-news-server):
9178         * lisp/gnus/gnus-registry.el:
9179         (gnus-registry--split-fancy-with-parent-internal):
9180         * lisp/gnus/gnus-score.el (gnus-summary-increase-score):
9181         * lisp/gnus/gnus-start.el (gnus-convert-old-newsrc):
9182         * lisp/gnus/gnus-topic.el (gnus-topic-rename):
9183         * lisp/gnus/legacy-gnus-agent.el (gnus-agent-unlist-expire-days):
9184         * lisp/gnus/nnmairix.el (nnmairix-widget-create-query):
9185         * lisp/gnus/spam.el (spam-check-blackholes):
9186         * lisp/mail/feedmail.el (feedmail-run-the-queue):
9187         * lisp/mpc.el (mpc-playlist-rename):
9188         * lisp/net/ange-ftp.el (ange-ftp-shell-command):
9189         * lisp/net/mairix.el (mairix-widget-create-query):
9190         * lisp/net/tramp-cache.el:
9191         * lisp/obsolete/otodo-mode.el (todo-more-important-p):
9192         * lisp/obsolete/pgg-gpg.el (pgg-gpg-process-region):
9193         * lisp/obsolete/pgg-pgp.el (pgg-pgp-process-region):
9194         * lisp/obsolete/pgg-pgp5.el (pgg-pgp5-process-region):
9195         * lisp/org/ob-core.el (org-babel-goto-named-src-block)
9196         (org-babel-goto-named-result):
9197         * lisp/org/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
9198         * lisp/org/ob-ref.el (org-babel-ref-resolve):
9199         * lisp/org/org-agenda.el (org-agenda-prepare):
9200         * lisp/org/org-bibtex.el (org-bibtex-fields):
9201         * lisp/org/org-clock.el (org-clock-notify-once-if-expired)
9202         (org-clock-resolve):
9203         * lisp/org/org-feed.el (org-feed-parse-atom-entry):
9204         * lisp/org/org-habit.el (org-habit-parse-todo):
9205         * lisp/org/org-mouse.el (org-mouse-popup-global-menu)
9206         (org-mouse-context-menu):
9207         * lisp/org/org-table.el (org-table-edit-formulas):
9208         * lisp/org/ox.el (org-export-async-start):
9209         * lisp/play/dunnet.el (dun-score, dun-help, dun-endgame-question)
9210         (dun-rooms, dun-endgame-questions):
9211         * lisp/progmodes/ada-mode.el (ada-goto-matching-start):
9212         * lisp/progmodes/ada-xref.el (ada-find-executable):
9213         * lisp/progmodes/antlr-mode.el (antlr-options-alists):
9214         * lisp/progmodes/flymake.el (flymake-parse-err-lines)
9215         (flymake-start-syntax-check-process):
9216         * lisp/progmodes/python.el (python-define-auxiliary-skeleton):
9217         * lisp/progmodes/sql.el (sql-comint):
9218         * lisp/progmodes/verilog-mode.el (verilog-load-file-at-point):
9219         * lisp/server.el (server-get-auth-key):
9220         * lisp/subr.el (version-to-list):
9221         * lisp/textmodes/reftex-ref.el (reftex-label):
9222         * lisp/textmodes/reftex-toc.el (reftex-toc-rename-label):
9223         * lisp/vc/ediff-diff.el (ediff-same-contents):
9224         * lisp/vc/vc-cvs.el (vc-cvs-mode-line-string):
9225         * test/automated/tramp-tests.el (tramp-test33-asynchronous-requests):
9226         Use directed rather than neutral quotes in diagnostics.
9228         Treat ' like ’ even when not matching `
9229         This is simpler and easier to explain, and should encourage better
9230         typography.  Do this in Electric Quote mode and when translating
9231         quotes in docstrings.  Inspired by a suggestion by Dmitry Gutov in:
9232         https://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00806.html
9233         * doc/emacs/text.texi (Quotation Marks):
9234         * doc/lispref/help.texi (Keys in Documentation):
9235         * etc/NEWS:
9236         Document this.
9237         * lisp/electric.el (electric-quote-post-self-insert-function):
9238         * src/doc.c (Fsubstitute_command_keys):
9239         Always treat ' like ’ even when not matched by an open quote.
9241 2015-08-25  Glenn Morris  <rgm@gnu.org>
9243         * doc/emacs/cal-xtra.texi (Holiday Customizing): Fix typo in example.
9244         * lisp/calendar/holidays.el (calendar-holidays): Fix doc typo.
9246 2015-08-24  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
9248         * src/macfont.m (macfont_create_family_with_symbol):
9249         Accept localized names.
9251 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9253         Tramp diagnostics as per ‘text-quoting-style’
9254         * lisp/net/tramp-adb.el (tramp-adb-handle-file-truename)
9255         (tramp-adb-get-ls-command, tramp-adb-handle-make-directory)
9256         (tramp-adb-handle-delete-directory)
9257         (tramp-adb-handle-delete-file)
9258         (tramp-adb-handle-file-local-copy)
9259         (tramp-adb-handle-write-region, tramp-adb-handle-copy-file)
9260         (tramp-adb-send-command-and-check, tramp-adb-wait-for-output)
9261         (tramp-adb-maybe-open-connection):
9262         * lisp/net/tramp-cache.el:
9263         * lisp/net/tramp-compat.el (tramp-compat-temporary-file-directory)
9264         (tramp-compat-octal-to-decimal)
9265         (tramp-compat-coding-system-change-eol-conversion):
9266         * lisp/net/tramp-gvfs.el (tramp-gvfs-file-name-handler)
9267         (tramp-gvfs-do-copy-or-rename-file)
9268         (tramp-gvfs-handle-delete-directory)
9269         (tramp-gvfs-handle-delete-file)
9270         (tramp-gvfs-handle-expand-file-name)
9271         (tramp-gvfs-handle-file-local-copy)
9272         (tramp-gvfs-handle-file-notify-add-watch)
9273         (tramp-gvfs-handle-make-directory)
9274         (tramp-gvfs-handle-write-region, tramp-gvfs-url-file-name):
9275         * lisp/net/tramp-gw.el (tramp-gw-gw-proc-sentinel)
9276         (tramp-gw-aux-proc-sentinel, tramp-gw-open-connection):
9277         * lisp/net/tramp-sh.el (tramp-sh-handle-file-truename)
9278         (tramp-sh-handle-set-visited-file-modtime)
9279         (tramp-sh-handle-set-file-modes)
9280         (tramp-sh-handle-file-name-all-completions)
9281         (tramp-sh-handle-add-name-to-file, tramp-do-copy-or-rename-file)
9282         (tramp-do-copy-or-rename-file-directly)
9283         (tramp-do-copy-or-rename-file-out-of-band)
9284         (tramp-sh-handle-make-directory)
9285         (tramp-sh-handle-delete-directory, tramp-sh-handle-delete-file)
9286         (tramp-sh-handle-insert-directory, tramp-process-sentinel)
9287         (tramp-sh-handle-start-file-process)
9288         (tramp-sh-handle-file-local-copy)
9289         (tramp-sh-handle-write-region, tramp-sh-handle-vc-registered)
9290         (tramp-sh-handle-file-notify-add-watch, tramp-maybe-send-script)
9291         (tramp-find-file-exists-command, tramp-open-shell)
9292         (tramp-find-shell)
9293         (tramp-open-connection-setup-interactive-shell)
9294         (tramp-find-inline-encoding, tramp-find-inline-compress)
9295         (tramp-compute-multi-hops, tramp-maybe-open-connection)
9296         (tramp-wait-for-output, tramp-send-command-and-check)
9297         (tramp-send-command-and-read, tramp-get-remote-path)
9298         (tramp-get-ls-command, tramp-get-ls-command-with-dired)
9299         (tramp-get-ls-command-with-quoting-style)
9300         (tramp-get-test-command, tramp-get-remote-ln)
9301         (tramp-get-remote-perl, tramp-get-remote-stat)
9302         (tramp-get-remote-readlink, tramp-get-remote-trash)
9303         (tramp-get-remote-touch, tramp-get-remote-gvfs-monitor-dir)
9304         (tramp-get-remote-inotifywait, tramp-get-remote-id)
9305         (tramp-get-remote-python):
9306         * lisp/net/tramp-smb.el (tramp-smb-errors)
9307         (tramp-smb-handle-add-name-to-file, tramp-smb-handle-copy-file)
9308         (tramp-smb-handle-delete-directory)
9309         (tramp-smb-handle-delete-file)
9310         (tramp-smb-handle-file-local-copy)
9311         (tramp-smb-handle-make-directory)
9312         (tramp-smb-handle-make-directory-internal)
9313         (tramp-smb-handle-make-symbolic-link)
9314         (tramp-smb-handle-rename-file, tramp-smb-handle-set-file-acl)
9315         (tramp-smb-handle-set-file-modes)
9316         (tramp-smb-handle-write-region, tramp-smb-get-file-entries):
9317         * lisp/net/tramp.el (tramp-debug-message, tramp-error)
9318         (tramp-process-actions):
9319         Generate diagnostics according to ‘text-quoting-style’, by
9320         using curved quotes in format strings and ‘format-message’
9321         when appropriate.
9322         * lisp/net/tramp-compat.el (format-message):
9323         Define a replacement, if it’s an older version of Emacs
9324         that doesn’t have it already.
9326         * etc/NEWS: Clarify text-quoting-style and electric-quote-mode.
9328 2015-08-24  Xue Fuqiao  <xfq.free@gmail.com>
9330         Fix documentation for `save-excursion'
9331         * doc/lispref/positions.texi (Excursions):
9332         * doc/lispintro/emacs-lisp-intro.texi (save-excursion)
9333         (Template for save-excursion, Point and mark): `save-excursion'
9334         does not save&restore the mark any more.
9336 2015-08-24  Michael Albinus  <michael.albinus@gmx.de>
9338         * lisp/net/tramp-sh.el (tramp-stat-marker, tramp-stat-quoted-marker):
9339         New defconsts.
9340         (tramp-do-file-attributes-with-stat)
9341         (tramp-do-directory-files-and-attributes-with-stat): Use them.
9342         (tramp-convert-file-attributes): Remove double slashes in symlinks.
9343         * test/automated/tramp-tests.el (tramp-test18-file-attributes):
9344         Handle symlinks with "//" in the file name.
9346         Revert fbb5531fa11d13854b274d28ccd329c9b6652cfc for tramp.el.
9348 2015-08-24  Nicolas Petton  <nicolas@petton.fr>
9350         Fix cl-subseq and cl-concatenate
9351         * lisp/emacs-lisp/cl-extra.el (cl-subseq, cl-concatenate): Do not use
9352         seq functions.
9353         * lisp/emacs-lisp/seq.el (seq-concatenate): Call cl-concatenate in
9354         seq-concatenate.
9356 2015-08-24  Pip Cet  <pipcet@gmail.com>  (tiny change)
9358         Fix full-screen code when there is no window manager (Bug#21317)
9359         * src/xterm.h (x_wm_supports): Declare external.
9360         * src/xterm.c (wm_suppports): Rename to `x_wm_supports', export.
9361         (do_ewmh_fullscreen, x_ewmh_activate_frame): Adjust for rename.
9362         (x_check_fullscreen): Call `x_wm_set_size_hint', restore
9363         `fullscreen' frame parameter.
9364         * src/gtkutil.c (x_wm_set_size_hint): Set size hints when running
9365         without a window manager.
9367 2015-08-24  Glenn Morris  <rgm@gnu.org>
9369         * lisp/version.el (emacs-version): No longer include build host.
9370         * doc/lispref/intro.texi (Version Info): Update example.
9372 2015-08-24  Paul Eggert  <eggert@cs.ucla.edu>
9374         * doc/lispref/elisp.texi: Fix typo in previous change.
9376         More-conservative ‘format’ quote restyling
9377         Instead of restyling curved quotes for every call to ‘format’,
9378         create a new function ‘format-message’ that does the restyling,
9379         and using the new function instead of ‘format’ only in contexts
9380         where this seems appropriate.
9381         Problem reported by Dmitry Gutov and Andreas Schwab in:
9382         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00826.html
9383         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00827.html
9384         * doc/lispref/commands.texi (Using Interactive):
9385         * doc/lispref/control.texi (Signaling Errors, Signaling Errors):
9386         * doc/lispref/display.texi (Displaying Messages, Progress):
9387         * doc/lispref/elisp.texi:
9388         * doc/lispref/help.texi (Keys in Documentation):
9389         * doc/lispref/minibuf.texi (Minibuffer Misc):
9390         * doc/lispref/strings.texi (Formatting Strings):
9391         * etc/NEWS:
9392         Document the changes.
9393         * lisp/abbrev.el (expand-region-abbrevs):
9394         * lisp/apropos.el (apropos-library):
9395         * lisp/calc/calc-ext.el (calc-record-message)
9396         (calc-user-function-list):
9397         * lisp/calc/calc-help.el (calc-describe-key, calc-full-help):
9398         * lisp/calc/calc-lang.el (math-read-big-balance):
9399         * lisp/calc/calc-store.el (calc-edit-variable):
9400         * lisp/calc/calc-units.el (math-build-units-table-buffer):
9401         * lisp/calc/calc-yank.el (calc-edit-mode):
9402         * lisp/calendar/icalendar.el (icalendar-export-region)
9403         (icalendar--add-diary-entry):
9404         * lisp/cedet/mode-local.el (mode-local-print-binding)
9405         (mode-local-describe-bindings-2):
9406         * lisp/cedet/semantic/complete.el (semantic-completion-message):
9407         * lisp/cedet/semantic/edit.el (semantic-parse-changes-failed):
9408         * lisp/cedet/semantic/wisent/comp.el (wisent-log):
9409         * lisp/cedet/srecode/insert.el (srecode-insert-show-error-report):
9410         * lisp/descr-text.el (describe-text-properties-1, describe-char):
9411         * lisp/dframe.el (dframe-message):
9412         * lisp/dired-aux.el (dired-query):
9413         * lisp/emacs-lisp/byte-opt.el (byte-compile-log-lap-1):
9414         * lisp/emacs-lisp/bytecomp.el (byte-compile-log)
9415         (byte-compile-log-file, byte-compile-warn, byte-compile-form):
9416         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
9417         (cconv-analyze-form):
9418         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
9419         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
9420         * lisp/emacs-lisp/cl-macs.el (cl-symbol-macrolet):
9421         * lisp/emacs-lisp/edebug.el (edebug-format):
9422         * lisp/emacs-lisp/eieio-core.el (eieio-oref):
9423         * lisp/emacs-lisp/eldoc.el (eldoc-minibuffer-message)
9424         (eldoc-message):
9425         * lisp/emacs-lisp/elint.el (elint-file, elint-log):
9426         * lisp/emacs-lisp/find-func.el (find-function-library):
9427         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
9428         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
9429         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
9430         * lisp/emacs-lisp/package.el (package-compute-transaction)
9431         (package-install-button-action, package-delete-button-action)
9432         (package-menu--list-to-prompt):
9433         * lisp/emacs-lisp/timer.el (timer-event-handler):
9434         * lisp/emacs-lisp/warnings.el (lwarn, warn):
9435         * lisp/emulation/viper-cmd.el:
9436         (viper-toggle-parse-sexp-ignore-comments)
9437         (viper-kill-buffer, viper-brac-function):
9438         * lisp/emulation/viper-macs.el (viper-record-kbd-macro):
9439         * lisp/facemenu.el (facemenu-add-new-face):
9440         * lisp/faces.el (face-documentation, read-face-name)
9441         (face-read-string, read-face-font, describe-face):
9442         * lisp/files.el (find-alternate-file, hack-local-variables)
9443         (hack-one-local-variable--obsolete, write-file)
9444         (basic-save-buffer, delete-directory):
9445         * lisp/format.el (format-write-file, format-find-file)
9446         (format-insert-file):
9447         * lisp/help-fns.el (help-fns--key-bindings)
9448         (help-fns--compiler-macro, help-fns--obsolete)
9449         (help-fns--interactive-only, describe-function-1)
9450         (describe-variable):
9451         * lisp/help.el (describe-mode):
9452         * lisp/info-xref.el (info-xref-output):
9453         * lisp/info.el (Info-virtual-index-find-node)
9454         (Info-virtual-index, info-apropos):
9455         * lisp/international/kkc.el (kkc-error):
9456         * lisp/international/mule-cmds.el:
9457         (select-safe-coding-system-interactively)
9458         (select-safe-coding-system, describe-input-method):
9459         * lisp/international/mule-conf.el (code-offset):
9460         * lisp/international/mule-diag.el (describe-character-set)
9461         (list-input-methods-1):
9462         * lisp/international/quail.el (quail-error):
9463         * lisp/minibuffer.el (minibuffer-message):
9464         * lisp/mpc.el (mpc--debug):
9465         * lisp/msb.el (msb--choose-menu):
9466         * lisp/net/ange-ftp.el (ange-ftp-message):
9467         * lisp/net/gnutls.el (gnutls-message-maybe):
9468         * lisp/net/newst-backend.el (newsticker--sentinel-work):
9469         * lisp/net/newst-treeview.el (newsticker--treeview-load):
9470         * lisp/net/nsm.el (nsm-query-user):
9471         * lisp/net/rlogin.el (rlogin):
9472         * lisp/net/soap-client.el (soap-warning):
9473         * lisp/net/tramp.el (tramp-debug-message):
9474         * lisp/nxml/nxml-outln.el (nxml-report-outline-error):
9475         * lisp/nxml/nxml-parse.el (nxml-parse-error):
9476         * lisp/nxml/rng-cmpct.el (rng-c-error):
9477         * lisp/nxml/rng-match.el (rng-compile-error):
9478         * lisp/nxml/rng-uri.el (rng-uri-error):
9479         * lisp/obsolete/iswitchb.el (iswitchb-possible-new-buffer):
9480         * lisp/org/org-ctags.el:
9481         (org-ctags-ask-rebuild-tags-file-then-find-tag):
9482         * lisp/proced.el (proced-log):
9483         * lisp/progmodes/ebnf2ps.el (ebnf-log):
9484         * lisp/progmodes/flymake.el (flymake-log):
9485         * lisp/progmodes/vhdl-mode.el (vhdl-warning-when-idle):
9486         * lisp/replace.el (occur-1):
9487         * lisp/simple.el (execute-extended-command)
9488         (undo-outer-limit-truncate, define-alternatives):
9489         * lisp/startup.el (command-line):
9490         * lisp/subr.el (error, user-error, add-to-list):
9491         * lisp/tutorial.el (tutorial--describe-nonstandard-key)
9492         (tutorial--find-changed-keys):
9493         * src/callint.c (Fcall_interactively):
9494         * src/editfns.c (Fmessage, Fmessage_box):
9495         Restyle the quotes of format strings intended for use as a
9496         diagnostic, when restyling seems appropriate.
9497         * lisp/subr.el (format-message): New function.
9498         * src/doc.c (Finternal__text_restyle): New function.
9499         (syms_of_doc): Define it.
9501 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9503         * etc/NEWS: The new ‘q’ flag is not an incompatible change.
9505 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9507         python.el: Fix python-shell-buffer-substring on indented code
9508         (Bug#21086)
9509         * lisp/progmodes/python.el (python-shell-buffer-substring):
9510         Respect current line indentation when calculating string.
9511         * test/automated/python-tests.el
9512         (python-shell-buffer-substring-10)
9513         (python-shell-buffer-substring-11)
9514         (python-shell-buffer-substring-12): New tests.
9516 2015-08-23  Paul Eggert  <eggert@cs.ucla.edu>
9518         Fix minor glitches from ‘format’ reversion
9519         * doc/lispref/strings.texi (Formatting Strings):
9520         After reversion, ‘text-quoting-style’ is documented in ‘Keys in
9521         Documentation’, not below.
9522         * src/syntax.c (Finternal_describe_syntax_value):
9523         Prefer AUTO_STRING to build_string where either will do, as
9524         AUTO_STRING is a bit faster.
9526 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9528         python.el: Defer shell setup code until first interactive prompt
9529         * lisp/progmodes/python.el
9530         (python-shell-comint-watch-for-first-prompt-output-filter):
9531         New function.
9532         (inferior-python-mode): Use it.
9533         (python-shell-first-prompt-hook): New hook.
9534         (python-shell-send-setup-code)
9535         (python-shell-completion-native-turn-on-maybe-with-msg): Attach to
9536         this hook instead of inferior-python-hook.
9538 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
9540         Remove the calls to `seq-into` from `seq-concatenate`
9541         Since most new types of seq would have to be defined as sequences (cons
9542         cells or CL structs, mostly), there is no need to convert the seqs to
9543         sequences (which can be a fairly expensive operation).
9544         * lisp/emacs-lisp/seq.el (seq-concatenate): Do not ensure that seqs are
9545         sequences.
9547 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9549         python.el: Fix completion for pdb interactions
9550         * lisp/progmodes/python.el (python-shell-completion-setup-code):
9551         Simplify.  Toggle print_mode for native wrapped completer.
9552         (python-shell-completion-native-setup): Ensure process buffer.
9553         Add print_mode attribute to completer wrapper to toggle returning
9554         or printing candidates.
9555         (python-shell-completion-native-get-completions): Cleanup.
9556         (python-shell-completion-get-completions): Cleanup.
9557         (python-shell-completion-at-point): Perform prompt checks.
9558         Force fallback completion in pdb interactions.
9560 2015-08-23  Nicolas Petton  <nicolas@petton.fr>
9562         Make seq.el more extensible by using cl-defmethod
9563         * lisp/emacs-lisp/seq.el: Define seq.el functions using cl-defmethod to
9564         make it easier to extend seq.el with new "seq types".
9565         * test/automated/seq-tests.el (test-setf-seq-elt): New test.
9566         * lisp/emacs-lisp/cl-extra.el (cl-subseq): Move back the definition of
9567         subseq in cl-extra.el, and use it in seq.el.
9569 2015-08-23  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9571         python.el: Fix prompt detection with user overridden interpreter
9572         * lisp/progmodes/python.el (python-shell-prompt-detect):
9573         Honor buffer local python-shell-interpreter and
9574         python-shell-interpreter-interactive-arg.
9576 2015-08-23  Eli Zaretskii  <eliz@gnu.org>
9578         Support exec-directory with non-ASCII characters on Windows
9579         * src/w32proc.c (sys_spawnve): Make sure exec-directory is encoded
9580         in the system's ANSI codepage, when it is used for invoking
9581         cmdproxy.
9583 2015-08-23  Andreas Schwab  <schwab@linux-m68k.org>
9585         Revert "Extend ‘format’ to translate curved quotes"
9586         This reverts commit 244c801689d2f7a80480d83cd7d092d4762ebe08.
9588         Revert "Prefer ‘format’ to ‘substitute-command-keys’"
9589         This reverts commit 6af5aad26411ffe21c3fe4bc5438347110910111.
9591 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
9593         * doc/lispintro/emacs-lisp-intro.texi (Switching Buffers):
9594         Clarify "invisible window".
9596 2015-08-23  Xue Fuqiao  <xfq.free@gmail.com>
9598         * doc/emacs/modes.texi (Choosing Modes): Minor doc fix for
9599         magic-fallback-mode-alist.
9601 2015-08-22  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9603         python.el: fallback completion, ffap and eldoc setup enhancements
9604         Setup codes are now sent continuously so that the current frame is
9605         always taken into account.  This allows working within debuggers
9606         and always keeping a fresh version of setup codes that will return
9607         proper results.
9608         * lisp/progmodes/python.el (python-shell-setup-codes): Cleanup.
9609         (python-shell-send-setup-code): Send code only when
9610         python-shell-setup-codes is non-nil.
9611         (python-shell-completion-string-code): Cleanup trailing newline.
9612         (python-shell-completion-get-completions): Always use
9613         python-shell-completion-setup-code.
9614         (python-ffap-setup-code): Work with any object, not only modules.
9615         (python-ffap-string-code): Cleanup trailing newline.
9616         (python-ffap-module-path): Always use python-ffap-setup-code.
9617         (python-eldoc-string-code): Cleanup trailing newline.
9618         (python-eldoc--get-doc-at-point): Always use
9619         python-eldoc-setup-code.  Return non-nil only if docstring is
9620         found.
9622         python.el: Increase native completion robustness
9623         * lisp/progmodes/python.el (python-shell-completion-native-setup):
9624         Make completer print real candidates and just return dummy ones to
9625         avoid input modification.
9626         (python-shell-completion-native-get-completions): Set
9627         comint-redirect-insert-matching-regexp to non-nil and make
9628         comint-redirect-finished-regexp match the last dummy candidate.
9629         Use python-shell-accept-process-output to wait for the full list
9630         of candidates.
9632 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9634         Fix invocation of programs via cmdproxy.exe
9635         * src/w32proc.c (sys_spawnve): Use exec-directory, not
9636         invocation-directory, for finding cmdproxy.exe.  When Emacs is
9637         run from the source tree, look for cmdproxy.exe in the same source
9638         tree.  (Bug#21323)
9640 2015-08-22  Simen Heggestøyl  <simenheg@gmail.com>
9642         Handle comments inside unquoted URIs in css-mode
9643         * lisp/textmodes/css-mode.el (css--uri-re): New defconst.
9644         (css-syntax-propertize-function): New defconst.
9645         (css--font-lock-keywords): Handle parens around unquoted URIs.
9646         (css-mode): Set `syntax-propertize-function'.
9648 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9650         Support invocation of Hunspell with multiple dictionaries
9651         * lisp/textmodes/ispell.el (ispell-parse-hunspell-affix-file):
9652         Support lists of dictionaries of the form "DICT1,DICT2,...".
9653         (ispell-hunspell-add-multi-dic): New command.  (Bug#20495)
9655         Minor formatting changes in ispell.el
9656         * lisp/textmodes/ispell.el (ispell-create-debug-buffer)
9657         (ispell-print-if-debug, ispell-aspell-find-dictionary)
9658         (ispell-aspell-add-aliases, ispell-hunspell-dict-paths-alist)
9659         (ispell-hunspell-dictionary-alist)
9660         (ispell-hunspell-fill-dictionary-entry)
9661         (ispell-find-hunspell-dictionaries, ispell-send-replacement)
9662         (ispell-buffer-with-debug, ispell-complete-word)
9663         (ispell-current-dictionary, ispell-current-personal-dictionary)
9664         (ispell-accept-output, ispell-minor-mode)
9665         (ispell-personal-dictionary, ispell-dictionary-alist)
9666         (ispell-really-aspell, ispell-really-hunspell)
9667         (ispell-encoding8-command, ispell-aspell-supports-utf8)
9668         (ispell-aspell-dictionary-alist, ispell-set-spellchecker-params):
9669         Fix whitespace, inconsistent capitalization, and arguments in doc
9670         strings.
9672 2015-08-22  Martin Rudalics  <rudalics@gmx.at>
9674         * lisp/window.el (adjust-window-trailing-edge): Fix bug where this
9675         function refused to resize a size-preserved window.
9677 2015-08-22  Eli Zaretskii  <eliz@gnu.org>
9679         * doc/lispref/windows.texi (Selecting Windows): Improve
9680         documentation and indexing of 'window-use-time'.
9682 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9684         * lisp/progmodes/cc-vars.el, lisp/progmodes/cc-styles.el:
9685         * lisp/progmodes/cc-mode.el, lisp/progmodes/cc-menus.el:
9686         * lisp/progmodes/cc-langs.el, lisp/progmodes/cc-guess.el:
9687         * lisp/progmodes/cc-fonts.el, lisp/progmodes/cc-engine.el:
9688         * lisp/progmodes/cc-defs.el, lisp/progmodes/cc-cmds.el:
9689         * lisp/progmodes/cc-bytecomp.el, lisp/progmodes/cc-awk.el:
9690         * lisp/progmodes/cc-align.el, lisp/net/soap-client.el:
9691         Fix up commenting style.
9693 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9695         text-quoting-style in emacs-lisp diagnostics
9696         * lisp/emacs-lisp/advice.el (ad-read-advised-function)
9697         (ad-read-advice-class, ad-read-advice-name, ad-enable-advice)
9698         (ad-disable-advice, ad-remove-advice, ad-set-argument)
9699         (ad-set-arguments):
9700         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand)
9701         (byte-compile-unfold-lambda, byte-optimize-form-code-walker)
9702         (byte-optimize-while, byte-optimize-apply):
9703         * lisp/emacs-lisp/bytecomp.el (byte-compile-lapcode)
9704         (byte-compile-log-file, byte-compile-format-warn)
9705         (byte-compile-nogroup-warn, byte-compile-arglist-warn)
9706         (byte-compile-cl-warn)
9707         (byte-compile-warn-about-unresolved-functions)
9708         (byte-compile-file, byte-compile-fix-header)
9709         (byte-compile--declare-var, byte-compile-file-form-defmumble)
9710         (byte-compile-form, byte-compile-normal-call)
9711         (byte-compile-variable-ref, byte-compile-variable-set)
9712         (byte-compile-subr-wrong-args, byte-compile-setq-default)
9713         (byte-compile-negation-optimizer)
9714         (byte-compile-condition-case--old)
9715         (byte-compile-condition-case--new, byte-compile-save-excursion)
9716         (byte-compile-defvar, byte-compile-autoload)
9717         (byte-compile-lambda-form)
9718         (byte-compile-make-variable-buffer-local, display-call-tree)
9719         (batch-byte-compile):
9720         * lisp/emacs-lisp/cconv.el (cconv-convert, cconv--analyze-use)
9721         (cconv-analyze-form):
9722         * lisp/emacs-lisp/chart.el (chart-space-usage):
9723         * lisp/emacs-lisp/check-declare.el (check-declare-scan)
9724         (check-declare-warn, check-declare-file)
9725         (check-declare-directory):
9726         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
9727         (checkdoc-message-text-engine):
9728         * lisp/emacs-lisp/cl-extra.el (cl-parse-integer):
9729         * lisp/emacs-lisp/cl-macs.el (cl--parse-loop-clause, cl-tagbody)
9730         (cl-symbol-macrolet):
9731         * lisp/emacs-lisp/cl.el (cl-unload-function, flet):
9732         * lisp/emacs-lisp/copyright.el (copyright)
9733         (copyright-update-directory):
9734         * lisp/emacs-lisp/edebug.el (edebug-read-list):
9735         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-read):
9736         * lisp/emacs-lisp/eieio-core.el (eieio--slot-override)
9737         (eieio-oref, eieio-oset-default):
9738         * lisp/emacs-lisp/eieio-speedbar.el:
9739         (eieio-speedbar-child-make-tag-lines)
9740         (eieio-speedbar-child-description):
9741         * lisp/emacs-lisp/eieio.el (defclass, change-class):
9742         * lisp/emacs-lisp/elint.el (elint-file, elint-get-top-forms)
9743         (elint-init-form, elint-check-defalias-form)
9744         (elint-check-let-form):
9745         * lisp/emacs-lisp/ert.el (ert-get-test):
9746         * lisp/emacs-lisp/find-func.el (find-function-search-for-symbol)
9747         (find-function-library):
9748         * lisp/emacs-lisp/generator.el (iter-yield):
9749         * lisp/emacs-lisp/gv.el (gv-define-simple-setter):
9750         * lisp/emacs-lisp/lisp-mnt.el (lm-verify):
9751         * lisp/emacs-lisp/package-x.el (package-upload-file):
9752         * lisp/emacs-lisp/package.el (package-version-join)
9753         (package-disabled-p, package-activate-1, package-activate)
9754         (package--download-one-archive)
9755         (package--download-and-read-archives)
9756         (package-compute-transaction, package-install-from-archive)
9757         (package-install, package-install-selected-packages)
9758         (package-delete, package-autoremove)
9759         (package-install-button-action, package-delete-button-action)
9760         (package-menu-hide-package, package-menu--list-to-prompt)
9761         (package-menu--perform-transaction)
9762         (package-menu--find-and-notify-upgrades):
9763         * lisp/emacs-lisp/pcase.el (pcase-exhaustive, pcase--u1):
9764         * lisp/emacs-lisp/re-builder.el (reb-enter-subexp-mode):
9765         * lisp/emacs-lisp/ring.el (ring-next, ring-previous):
9766         * lisp/emacs-lisp/rx.el (rx-check, rx-anything):
9767         * lisp/emacs-lisp/smie.el (smie-config-save):
9768         * lisp/emacs-lisp/subr-x.el (internal--check-binding):
9769         * lisp/emacs-lisp/testcover.el (testcover-1value):
9770         Use curved quotes in diagnostic format strings.
9772 2015-08-21  Fabián Ezequiel Gallina  <fgallina@gnu.org>
9774         python.el: Ensure remote process-environment on non-interactive processes
9775         * lisp/progmodes/python.el
9776         (python-shell-tramp-refresh-process-environment): New function.
9777         (python-shell-with-environment): Use it.
9778         * test/automated/python-tests.el (python-shell-with-environment-2):
9779         Update.
9781         python.el: Enhancements to process environment setup.
9782         * lisp/progmodes/python.el (python-shell-process-environment)
9783         (python-shell-extra-pythonpaths, python-shell-exec-path)
9784         (python-shell-virtualenv-root): Update docstring.  Remove :safe.
9785         (python-shell-setup-codes): Remove :safe.
9786         (python-shell-remote-exec-path): New defcustom.
9787         (python-shell--add-to-path-with-priority): New macro.
9788         (python-shell-calculate-pythonpath): Give priority to
9789         python-shell-extra-pythonpaths.  Update docstring.
9790         (python-shell-calculate-process-environment): Give priority to
9791         python-shell-process-environment.  Update docstring.
9792         (python-shell-calculate-exec-path): Give priority to
9793         python-shell-exec-path and calculated virtualenv bin directory.
9794         Update docstring.
9795         (python-shell-tramp-refresh-remote-path): New function.
9796         (python-shell-with-environment): Use it when working remotely and
9797         do not modify tramp-remote-path.  Allow nesting.
9798         (python-shell-calculate-command): Remove useless
9799         python-shell-with-environment call.
9800         * test/automated/python-tests.el (python-shell-calculate-pythonpath-1)
9801         (python-shell-calculate-pythonpath-2)
9802         (python-shell-calculate-process-environment-6)
9803         (python-shell-calculate-process-environment-7)
9804         (python-shell-calculate-process-environment-8)
9805         (python-shell-calculate-exec-path-3)
9806         (python-shell-calculate-exec-path-4)
9807         (python-shell-calculate-exec-path-5)
9808         (python-shell-calculate-exec-path-6)
9809         (python-shell-with-environment-3): New tests.
9810         (python-shell-calculate-process-environment-2)
9811         (python-shell-calculate-process-environment-3)
9812         (python-shell-calculate-process-environment-4)
9813         (python-shell-calculate-process-environment-5)
9814         (python-shell-calculate-exec-path-1)
9815         (python-shell-calculate-exec-path-2)
9816         (python-shell-with-environment-1)
9817         (python-shell-with-environment-2): Update and simplify.
9819 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9821         Avoid hard-coding "M-x command" in docstrings
9822         * lisp/calendar/todo-mode.el (todo-mode):
9823         * lisp/desktop.el (desktop-save-mode):
9824         * lisp/edmacro.el (edit-kbd-macro):
9825         * lisp/emacs-lisp/package.el (package-menu-execute):
9826         * lisp/emulation/viper-cmd.el (viper-ask-level):
9827         * lisp/emulation/viper-init.el (viper-expert-level):
9828         * lisp/filesets.el (filesets-add-buffer):
9829         * lisp/follow.el (follow-mode):
9830         * lisp/gnus/auth-source.el (auth-sources):
9831         * lisp/international/ogonek.el (ogonek-informacja)
9832         (ogonek-information):
9833         * lisp/net/tramp.el (tramp-process-actions):
9834         * lisp/org/org-gnus.el (org-gnus-no-new-news):
9835         * lisp/org/org.el (org-ellipsis):
9836         * lisp/progmodes/python.el (python-shell-get-process-or-error):
9837         * lisp/progmodes/vhdl-mode.el (vhdl-mode):
9838         * lisp/server.el (server-start):
9839         * lisp/type-break.el (type-break-noninteractive-query):
9840         * lisp/userlock.el (ask-user-about-supersession-help):
9841         * lisp/whitespace.el (whitespace-report-region):
9842         Prefer (substitute-command-keys "`\\[foo-command]'")
9843         to "`M-x foo-command'" in docstrings and the like.
9845 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
9847         Use add-function for prettify-symbols-compose-predicate
9848         * lisp/textmodes/tex-mode.el (tex-common-initialization): Set
9849         prettify-symbols-compose-predicate in terms of add-function.
9850         * etc/NEWS: Mention prettify-symbols-compose-predicate and
9851         prettify-symbols-mode support in tex-mode.
9853 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9855         * lisp/emacs-lisp/smie.el (smie-indent-current-column): New fun.
9856         (smie-indent-exps, smie-indent-keyword): Use it.
9857         * test/indent/css-mode.css: Test alignment with leading comment.
9859 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9861         Respect text-quoting-style in (*Finder*) menus
9862         * lisp/info.el (info--prettify-description):
9863         Treat description as a docstring, so that it's requoted as
9864         per text-quoting-style.
9866 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
9868         Document `window-use-time' in Elisp manual
9869         * doc/lispref/windows.texi (Selecting Windows): Document
9870         `window-use-time'.
9872 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9874         * src/w32uniscribe.c (_WIN32_WINNT): Define to 0x0600.
9875         This is a cleaner fix for Bug#21260 than the previous change.
9877 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9879         Respect text-quoting-style in calc
9880         In calc, tespect text-quoting-style preference in diagnostic
9881         formats and fix a few similar problems in docstrings.
9882         * lisp/calc/calc-aent.el (math-read-factor):
9883         * lisp/calc/calc-embed.el (calc-do-embedded):
9884         * lisp/calc/calc-ext.el (calc-user-function-list)
9885         * lisp/calc/calc-graph.el (calc-graph-show-dumb):
9886         * lisp/calc/calc-help.el (calc-describe-key)
9887         (calc-describe-thing):
9888         * lisp/calc/calc-lang.el (calc-c-language)
9889         (math-parse-fortran-vector-end, math-parse-tex-sum)
9890         (math-parse-eqn-matrix, math-parse-eqn-prime)
9891         (calc-yacas-language, calc-maxima-language, calc-giac-language)
9892         (math-read-big-rec, math-read-big-balance):
9893         * lisp/calc/calc-mode.el (calc-auto-why, calc-save-modes)
9894         (calc-auto-recompute):
9895         * lisp/calc/calc-prog.el (calc-user-define-invocation)
9896         (math-do-arg-check):
9897         * lisp/calc/calc-store.el (calc-edit-variable):
9898         * lisp/calc/calc-units.el (math-build-units-table-buffer):
9899         * lisp/calc/calc-vec.el (math-read-brackets):
9900         * lisp/calc/calc-yank.el (calc-edit-mode):
9901         * lisp/calc/calc.el (calc, calc-do, calc-user-invocation):
9902         Use curved quotes in diagnostic format strings.
9903         * lisp/calc/calc-help.el (calc-describe-thing):
9904         Format docstrings with substitute-command-keys.
9905         * lisp/calc/calc-help.el (calc-j-prefix-help):
9906         * lisp/calc/calc-misc.el (calc-help):
9907         * lisp/calc/calc-ext.el (calc-shift-Z-prefix-help):
9908         Escape a docstring "`".
9910 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9912         Fix documentation of 'menu-set-font' and 'set-frame-font'
9913         * lisp/menu-bar.el (menu-set-font): Doc fix.  (Bug#21303)
9914         * doc/lispref/frames.texi (Frame Font): Document that
9915         set-frame-font with the last argument 't' will also make the font
9916         the default for the future GUI frames.
9918         Document '--create-frame' option to emacsclient
9919         * doc/emacs/misc.texi (emacsclient Options): Document the
9920         '--create-frame' option.  (Bug#21308)
9922 2015-08-21  Stefan Monnier  <monnier@iro.umontreal.ca>
9924         * lisp/progmodes/js.el (js-mode): Don't eagerly syntax propertize.
9926 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
9928         Document 'get-mru-window' in the ELisp manual
9929         * doc/lispref/windows.texi (Cyclic Window Ordering): Document
9930         'get-mru-window'.  (Bug#21306)
9932         Clarify documentation of 'get-buffer-window-list'
9933         * doc/lispref/windows.texi (Buffers and Windows): Mention that the
9934         current window, if relevant, will be the first in the list
9935         returned by 'get-buffer-window-list'.
9936         * lisp/window.el (get-buffer-window-list): Doc fix.  (Bug#21305)
9938 2015-08-21  Vasilij Schneidermann  <v.schneidermann@gmail.com>
9940         In `ielm' use `pop-to-buffer-same-window' (Bug#20848)
9941         * lisp/ielm.el (ielm): Use `pop-to-buffer-same-window' instead of
9942         `switch-to-buffer'.
9944 2015-08-21  Kaushal Modi  <kaushal.modi@gmail.com>  (tiny change)
9946         In woman.el use `display-buffer' instead of `switch-to-buffer' (Bug#21047)
9947         * lisp/woman.el (woman-really-find-file, WoMan-find-buffer): Use
9948         `display-buffer' instead of `switch-to-buffer'.
9950 2015-08-21  Paul Eggert  <eggert@cs.ucla.edu>
9952         Follow user preference in calendar diagnostics
9953         Respect text-quoting-style preference in diagnostic formats by
9954         using curved quotes (which are translated as per text-quoting-style)
9955         instead of grave accent and apostrophe (which are not).
9956         * lisp/calendar/appt.el (appt-display-message):
9957         * lisp/calendar/diary-lib.el (diary-check-diary-file)
9958         (diary-mail-entries, diary-from-outlook):
9959         * lisp/calendar/icalendar.el (icalendar-export-region)
9960         (icalendar--convert-float-to-ical)
9961         (icalendar--convert-date-to-ical)
9962         (icalendar--convert-ical-to-diary)
9963         (icalendar--convert-recurring-to-diary)
9964         (icalendar--add-diary-entry):
9965         * lisp/calendar/time-date.el (format-seconds):
9966         * lisp/calendar/timeclock.el (timeclock-mode-line-display)
9967         (timeclock-make-hours-explicit):
9968         * lisp/calendar/todo-mode.el (todo-prefix, todo-delete-category)
9969         (todo-item-mark, todo-check-format)
9970         (todo-insert-item--next-param, todo-edit-item--next-key)
9971         (todo-mode):
9972         Use curved quotes in diagnostic format strings.
9973         * lisp/calendar/icalendar.el (icalendar-import-format-sample):
9974         * test/automated/icalendar-tests.el (icalendar--import-format-sample):
9975         Just use straight quoting for simple test case.
9977 2015-08-21  Michael Albinus  <michael.albinus@gmx.de>
9979         * src/gfilenotify.c (Fgfile_add_watch):
9980         Handle errors from g_file_monitor.
9982 2015-08-21  Martin Rudalics  <rudalics@gmx.at>
9984         In frames.texi use "minibuffer-less frame" instead of "non-minibuffer frame"
9985         * doc/lispref/frames.texi (Frame Layout): Use "minibuffer-less
9986         frame" instead of "non-minibuffer frame".
9988         Fix frame geometry related text
9989         * doc/lispref/frames.texi (Frame Layout):
9990         Rename `x-frame-geometry' to `frame-geometry'.
9991         * doc/lispref/frames.texi (Mouse Position):
9992         * doc/lispref/windows.texi (Coordinates and Windows):
9993         Use `set-mouse-absolute-pixel-position' instead of
9994         `x-set-mouse-absolute-pixel-position'.
9996         Sanitize frame geometry related functions
9997         * src/nsfns.m (Fx_frame_geometry): Rename to Fns_frame_geometry.
9998         (Fx_frame_edges): Rename to Fns_frame_edges.
9999         * src/w32fns.c (Fx_frame_geometry): Rename to Fw32_frame_geometry.
10000         (Fx_frame_edges): Rename to Fw32_frame_edges.
10001         (Fx_mouse_absolute_pixel_position): Rename to
10002         Fw32_mouse_absolute_pixel_position.
10003         (Fx_set_mouse_absolute_pixel_position): Rename to
10004         Fw32_set_mouse_absolute_pixel_position.
10005         * lisp/frame.el (x-frame-geometry, w32-frame-geometry)
10006         (ns-frame-geometry, x-frame-edges, w32-frame-edges)
10007         (ns-frame-edges, w32-mouse-absolute-pixel-position)
10008         (x-mouse-absolute-pixel-position)
10009         (w32-set-mouse-absolute-pixel-position)
10010         (x-set-mouse-absolute-pixel-position): Declare.
10011         (frame-geometry, mouse-absolute-pixel-position)
10012         (set-mouse-absolute-pixel-position): New functions.
10013         (frame-edges): Rewrite in terms of x-/w32-/ns-frame-edges.
10015 2015-08-21  Eli Zaretskii  <eliz@gnu.org>
10017         Fix MinGW64 build broken by latest w32uniscribe.c changes
10018         * src/w32uniscribe.c (UNISCRIBE_OPENTYPE): Define to 0x0100, for
10019         MinGW64.  Reported by Andy Moreton <andrewjmoreton@gmail.com>.
10020         (Bug#21260)
10022 2015-08-21  Tassilo Horn  <tsdh@gnu.org>
10024         Add TeX defaults for prettify-symbol-mode
10025         * lisp/textmodes/tex-mode.el (tex--prettify-symbols-alist):
10026         Rename from tex-prettify-symbols-alist.
10027         (tex--prettify-symbols-compose-p): New function.
10028         (tex-common-initialization): Use them as prettify-symbols-alist
10029         and prettify-symbols-compose-predicate.
10031         Generalize prettify-symbols to arbitrary modes
10032         * lisp/progmodes/prog-mode.el
10033         (prettify-symbols-default-compose-p): New function.
10034         (prettify-symbols-compose-predicate): New variable.
10035         (prettify-symbols--compose-symbol): Use it.
10037 2015-08-20  Paul Eggert  <eggert@cs.ucla.edu>
10039         Don't quote symbols 'like-this' in docstrings etc.
10040         * admin/unidata/uvs.el (uvs-insert-fields-as-bytes):
10041         * lisp/allout-widgets.el (allout-widgets-count-buttons-in-region):
10042         * lisp/allout.el (allout-add-resumptions, allout-mode):
10043         * lisp/calculator.el (calculator-operators):
10044         * lisp/cedet/data-debug.el (dd-propertize):
10045         * lisp/cedet/ede/proj-prog.el (ede-proj-target-makefile-program):
10046         * lisp/cedet/semantic/analyze/debug.el:
10047         (semantic-analyzer-debug-global-miss-text):
10048         * lisp/cedet/semantic/lex-spp.el:
10049         (semantic-lex-spp-replace-or-symbol-or-keyword):
10050         * lisp/cedet/semantic/symref.el:
10051         (semantic-symref-cleanup-recent-buffers-fcn):
10052         * lisp/cedet/semantic/tag.el (semantic-tag-class):
10053         * lisp/cedet/srecode/el.el (srecode-semantic-handle-:el-custom):
10054         * lisp/gnus/nnmairix.el (nnmairix-propagate-marks-upon-close):
10055         * lisp/gnus/pop3.el (pop3-authentication-scheme):
10056         * lisp/help-fns.el (describe-function-orig-buffer):
10057         * lisp/imenu.el (imenu--history-list):
10058         * lisp/mail/feedmail.el (feedmail-confirm-outgoing)
10059         (feedmail-display-full-frame, feedmail-deduce-bcc-where)
10060         (feedmail-queue-default-file-slug)
10061         (feedmail-queue-buffer-file-name):
10062         * lisp/net/mairix.el (mairix-searches-mode-map):
10063         * lisp/net/newst-backend.el (newsticker-retrieval-method)
10064         (newsticker-auto-mark-filter-list):
10065         * lisp/obsolete/vi.el (vi-mode):
10066         * lisp/progmodes/cc-engine.el (c-literal-type):
10067         * lisp/progmodes/cpp.el (cpp-face):
10068         * lisp/progmodes/ebrowse.el (ebrowse-electric-list-looper):
10069         * lisp/progmodes/elisp-mode.el (elisp--xref-make-xref):
10070         * lisp/progmodes/pascal.el (pascal-auto-lineup):
10071         * lisp/progmodes/prog-mode.el (prog-widen):
10072         * lisp/progmodes/verilog-mode.el (verilog-regexp-words)
10073         (verilog-auto-lineup, verilog-auto-reset-widths)
10074         (verilog-auto-arg-format, verilog-auto-inst-template-numbers):
10075         * lisp/textmodes/flyspell.el (flyspell-maybe-correct-transposition)
10076         (flyspell-maybe-correct-doubling):
10077         * lisp/textmodes/table.el (table-justify, table-justify-cell)
10078         (table-justify-row, table-justify-column, table-insert-sequence)
10079         (table--justify-cell-contents):
10080         * lisp/url/url-auth.el (url-get-authentication):
10081         * lisp/window.el (display-buffer-record-window):
10082         * lisp/xml.el (xml-parse-file, xml-parse-region):
10083         * src/gfilenotify.c (Fgfile_add_watch):
10084         Don't quote symbols with apostrophes in doc strings.
10085         Use asymmetric quotes instead.
10086         * lisp/cedet/semantic/complete.el (semantic-displayor-show-request):
10087         Likewise for symbol in diagnostic.
10088         * lisp/image.el (image-extension-data):
10089         * lisp/register.el (frame-configuration-to-register):
10090         * src/buffer.c (syms_of_buffer):
10091         Remove bogus apostrophes after symbols.
10092         * lisp/thumbs.el (thumbs-conversion-program):
10093         Quote Lisp string values using double-quotes, not apostrophes.
10095 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
10097         Describe frame geometry and related functions in Elisp manual
10098         * doc/lispref/display.texi (Size of Displayed Text, Line Height)
10099         (Showing Images): Update references.
10100         * doc/lispref/elisp.texi (Top): Update node listing.
10101         * doc/lispref/frames.texi (Frame Geometry): New node.
10102         Move `Size and Position' section here.
10103         (Size Parameters): Update references.
10104         (Mouse Position): Update references and nomenclature.
10105         Describe new functions `x-mouse-absolute-pixel-position' and
10106         `x-set-mouse-absolute-pixel-position'.
10107         * doc/lispref/windows.texi (Window Sizes): Update references.
10108         (Resizing Windows): Update references.  Move description of
10109         `fit-frame-to-buffer' here.
10110         (Coordinates and Windows): Update nomenclature and references.
10111         Describe new arguments of `window-edges'.  Comment out
10112         descriptions of `window-left-column', `window-top-line',
10113         `window-pixel-left' and `window-pixel-top'.  Describe
10114         `window-absolute-pixel-position'.
10116 2015-08-20  Alan Mackenzie  <acm@muc.de>
10118         Handling of `c-parse-state'.  Fix low level bug.
10119         * lisp/progmodes/cc-engine.el (c-remove-stale-state-cache-backwards):
10120         Add "CASE 3.5" to handle `cache-pos' being only slightly before `here'.
10122 2015-08-20  Andreas Politz  <politza@hochschule-trier.de>
10124         * lisp/wid-edit.el (widget-color--choose-action): Quit *Color*
10125         window instead of deleting it.
10127 2015-08-20  Martin Rudalics  <rudalics@gmx.at>
10129         In w32fns.c's Fx_frame_geometry rewrite check whether frame has a titlebar
10130         * src/w32fns.c (Fx_frame_geometry): Use title_bar.rgstate[0] to
10131         determine whether frame has a titlebar.
10132         Suggested by Eli Zaretskii <eliz@gnu.org>
10134 2015-08-20  Tassilo Horn  <tsdh@gnu.org>
10136         Add a prettify-symbols-alist for (La)TeX
10137         * lisp/textmodes/tex-mode.el (tex-prettify-symbols-alist):
10138         New variable holding an alist suitable as prettify-symbols-alist in
10139         (La)TeX modes.
10141 2015-08-19  Alan Mackenzie  <acm@muc.de>
10143         Make electric-pair-mode, delete-selection-mode and CC Mode cooperate.
10144         Fixes debbugs#21275.
10145         In Emacs >= 25, let electric-pair-mode take precedence over
10146         delete-selection-mode.
10147         * lisp/delsel.el (delete-selection-uses-region-p): New function,
10148         previously a lambda expression in a property value for
10149         `self-insert-command'.
10150         (top-level): Set the `delete-selection' property of
10151         `self-insert-command' to `delete-selection-uses-region-p'.
10152         * lisp/progmodes/cc-cmds.el (top-level): Give the `delete-selection'
10153         property for c-electric-\(brace\|paren\) the value
10154         `delete-selection-uses-region-p' when the latter function exists.
10156 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
10158         Fix key binding quoting in tutorial *Help*
10159         * lisp/tutorial.el (tutorial--describe-nonstandard-key):
10160         When generating help for custom key bindings, use the user-preferred
10161         quoting style rather than hardcoding the grave style.
10163 2015-08-19  Eli Zaretskii  <eliz@gnu.org>
10165         Improve and future-proof OTF fonts support in w32uniscribe.c
10166         * src/w32uniscribe.c (uniscribe_otf_capability): Add commentary
10167         about the expected results and why the new Uniscribe APIs are not
10168         used in this function.
10169         (ScriptGetFontScriptTags_Proc, ScriptGetFontLanguageTags_Proc)
10170         (ScriptGetFontFeatureTags_Proc): New function typedefs.
10171         (uniscribe_new_apis): New static variable.
10172         (uniscribe_check_features): New function, implements OTF features
10173         verification while correctly accounting for features in the list
10174         after the nil member, if any.
10175         (uniscribe_check_otf_1): New function, retrieves the features
10176         supported by the font for the requested script and language using
10177         the Uniscribe APIs available from Windows Vista onwards.
10178         (uniscribe_check_otf): If the new Uniscribe APIs are available,
10179         use them in preference to reading the font data directly.  Call
10180         uniscribe_check_features to verify that the requested features are
10181         supported, replacing the original incomplete code.
10182         (syms_of_w32uniscribe): Initialize function pointers for the new
10183         Uniscribe APIs.  (Bug#21260)
10184         (otf_features): Scan the script, langsys, and feature arrays back
10185         to front, so that the result we return has them in alphabetical
10186         order, like ftfont.c does.
10187         * src/w32fns.c (syms_of_w32fns) <w32-disable-new-uniscribe-apis>:
10188         New variable for debugging w32uniscribe.c code.
10190 2015-08-19  Artur Malabarba  <bruce.connor.am@gmail.com>
10192         * lisp/isearch.el (isearch-search-fun-default): Revert a5bdb87
10193         Remove usage of `isearch-lax-whitespace' inside the `iearch-word'
10194         clause of `isearch-search-fun-default'.  That lax variable does not
10195         refer to lax-whitespacing.  Related to (bug#21777).
10196         This reverts commit a5bdb872edb9f031fe041faf9a8c0be432e5f64c.
10197         * lisp/character-fold.el (character-fold-search): Set to nil.
10198         Default to nil for now, until someone implements proper
10199         lax-whitespacing with char-fold searching.
10201 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
10203         Fix doc-string of `help-mode-finish'.
10204         * lisp/help-mode.el (help-mode-finish): Fix doc-string.
10206         In nsimage.m include coding.h (Bug#21292)
10207         * src/nsimage.m (top-level): Include coding.h (Bug#21292).
10209         Move window edge functions to Elisp.
10210         * src/window.c (Fwindow_edges, Fwindow_pixel_edges)
10211         (Fwindow_absolute_pixel_edges, Fwindow_inside_edges)
10212         (Fwindow_inside_pixel_edges, Fwindow_inside_absolute_pixel_edges):
10213         Move to window.el.
10214         (calc_absolute_offset): Remove.
10215         * lisp/frame.el (frame-edges): New function.
10216         * lisp/window.el (window-edges, window-pixel-edges)
10217         (window-absolute-pixel-edges): Move here from window.c.
10218         (window-body-edges, window-body-pixel-edges)
10219         (window-absolute-body-pixel-edges): Move here from window.c and
10220         rename "inside" to "body".  Keep old names as aliases.
10221         (window-absolute-pixel-position): New function.
10223 2015-08-19  Katsumi Yamaoka  <yamaoka@jpl.org>
10225         [Gnus]: Use overlay functions directly
10226         * lisp/gnus/gnus-art.el (gnus-mime-inline-part, gnus-mm-display-part)
10227         (gnus-insert-mime-button, gnus-mime-buttonize-attachments-in-header)
10228         (gnus-article-highlight-signature, gnus-article-extend-url-button)
10229         (gnus-article-add-button, gnus-insert-prev-page-button)
10230         (gnus-insert-next-page-button, gnus-insert-mime-security-button):
10231         * lisp/gnus/gnus-cite.el (gnus-cite-delete-overlays)
10232         (gnus-cite-add-face):
10233         * lisp/gnus/gnus-html.el (gnus-html-wash-tags):
10234         * lisp/gnus/gnus-salt.el (gnus-tree-read-summary-keys)
10235         (gnus-tree-recenter, gnus-highlight-selected-tree):
10236         * lisp/gnus/gnus-sum.el (gnus-summary-show-all-threads)
10237         (gnus-summary-show-thread, gnus-summary-hide-thread)
10238         (gnus-highlight-selected-summary):
10239         * lisp/gnus/gnus-util.el (gnus-put-overlay-excluding-newlines):
10240         * lisp/gnus/message.el (message-fix-before-sending)
10241         (message-toggle-image-thumbnails):
10242         * lisp/gnus/mm-decode.el (mm-convert-shr-links):
10243         * lisp/gnus/sieve.el (sieve-highlight, sieve-insert-scripts):
10244         Use overlay functions directly instead of using gnus-overlay-*,
10245         message-overlay-*, and sieve-overlay-*.
10246         * lisp/gnus/gnus-sum.el (gnus-remove-overlays):
10247         * lisp/gnus/gnus.el (gnus-make-overlay, gnus-copy-overlay)
10248         (gnus-delete-overlay, gnus-overlay-get, gnus-overlay-put)
10249         (gnus-move-overlay, gnus-overlay-buffer, gnus-overlay-start)
10250         (gnus-overlay-end, gnus-overlays-at, gnus-overlays-in):
10251         * lisp/gnus/message.el (message-delete-overlay, message-make-overlay)
10252         (message-overlay-get, message-overlay-put, message-overlays-in):
10253         * lisp/gnus/sieve.el (sieve-make-overlay, sieve-overlay-put)
10254         (sieve-overlays-at): Remove.
10256 2015-08-19  Martin Rudalics  <rudalics@gmx.at>
10258         In w32fns.c condition TITLEBAR_INFO declaration on WINDOWS version
10259         * src/w32fns.c (TITLEBAR_INFO): Make it a typedef so MinGW64
10260         builds can use the declaration from the system headers.
10261         (GetTitleBarInfo_Proc, Fx_frame_geometry): Adapt to new
10262         definition of TITLEBAR_INFO.
10263         Suggested by Eli Zaretskii  <eliz@gnu.org>
10265 2015-08-19  Glenn Morris  <rgm@gnu.org>
10267         * lisp/gnus/nnmaildir.el (nnmaildir-flag-mark-mapping): Add "P".
10269 2015-08-19  Paul Eggert  <eggert@cs.ucla.edu>
10271         Use new q ‘format’ flag when fixing quotes in C
10272         * src/image.c (image_size_error): New function.  All uses of
10273         image_error with "Invalid image size ..."  changed to use it.
10274         * src/image.c (image_size_error, xbm_load_image, xbm_load)
10275         (xpm_load, xpm_load_image, xpm_load, pbm_load, png_load_body)
10276         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
10277         (imagemagick_load, svg_load, svg_load_image, gs_load)
10278         (x_kill_gs_process):
10279         * src/lread.c (load_warn_old_style_backquotes):
10280         * src/xfaces.c (load_pixmap):
10281         * src/xselect.c (x_clipboard_manager_error_1):
10282         Use %qs, not uLSQM and uRSQM.
10283         * src/syntax.c (Finternal_describe_syntax_value):
10284         Prefer Fsubstitute_command_keys to Fformat, as this lets
10285         us use AUTO_STRING.
10286         * src/xdisp.c (vadd_to_log): Use AUTO_STRING on the format argument,
10287         as it's now guaranteed to be ASCII.
10288         * src/xselect.c (x_clipboard_manager_error_2):
10289         Avoid grave accent in low-level stderr diagnostic.
10291 2015-08-19  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
10293         New q flag for ‘format’
10294         * doc/lispref/processes.texi (Sentinels):
10295         Don't hardwire grave quoting style in example.
10296         * doc/lispref/strings.texi (Formatting Strings):
10297         * etc/NEWS:
10298         Document new q flag.
10299         * src/editfns.c (Fformat): Implement it.
10301 2015-08-18  Daiki Ueno  <ueno@gnu.org>
10303         pinentry.el: Add debugging support
10304         * lisp/net/pinentry.el (pinentry-debug): New variable.
10305         (pinentry-debug-buffer): New variable.
10306         (pinentry--process-filter): Send input to the debug buffer, if
10307         `pinentry-debug' is set.
10309         pinentry.el: Improve multiline prompt
10310         * lisp/net/pinentry.el (pinentry--prompt): Simplify the interface.
10311         (pinentry--process-filter): Use `pinentry--prompt' for CONFIRM
10312         command.
10314 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
10316         Fix multibyte confusion in diagnostics
10317         * src/print.c (print_error_message):
10318         Don't assume that the caller's name is unibyte.
10319         * src/xdisp.c (vadd_to_log):
10320         Don't assume that the formatted diagnostic is unibyte.
10322         Fix file name encodings in diagnostics
10323         Also, close some minor races when opening image files, by opening
10324         them once instead of multiple times.
10325         * src/gtkutil.c (xg_get_image_for_pixmap):
10326         * src/image.c (xpm_load, tiff_load, gif_load, imagemagick_load)
10327         (svg_load):
10328         * src/nsimage.m (allocInitFromFile:):
10329         * src/xfns.c (xg_set_icon):
10330         Encode file name, since x_find_image_file no longer does that.
10331         * src/image.c (x_find_image_fd): New function.
10332         (x_find_image_file): Use it.  Do not encode resulting file name,
10333         since callers sometimes need it decoded.
10334         (slurp_file): File arg is now a fd, not a file name.
10335         All callers changed.  This saves us having to open the file twice.
10336         (xbm_load, xpm_load, pbm_load, png_load_body, jpeg_load_body)
10337         (svg_load):
10338         Use x_find_image_fd and fdopen to save a file-open.
10339         Report file name that failed.
10340         * src/lread.c (openp): If PREDICATE is t, open the file in binary mode.
10342 2015-08-18  Dmitry Gutov  <dgutov@yandex.ru>
10344         Allow blink-matching-paren to jump off screen
10345         * doc/emacs/programs.texi (Matching): Mention the
10346         `blink-matching-paren' value `jump-offscreen'.
10347         * lisp/simple.el (blink-matching-paren): New possible value.
10348         (blink-matching-paren-on-screen): Clarify the docstring.
10349         (blink-matching-open): Handle `jump-offscreen' (bug#21286).
10351         Refine the previous change
10352         * lisp/simple.el (blink-matching-open): Use minibuffer-message
10353         outside of save-excursion (bug#21286).
10355 2015-08-18  Martin Rudalics  <rudalics@gmx.at>
10357         Rewrite and add frame geometry related functions.
10358         * src/frame.c (Fframe_position): New function.
10359         (Fset_frame_position): Rename parameters and rewrite doc-string.
10360         (syms_of_frame): Remove Qframe_position, Qframe_outer_size,
10361         Qtitle_height and Qframe_inner_size.  Add Qouter_edges,
10362         Qouter_position, Qouter_size, Qnative_edges, Qinner_edges,
10363         Qtitle_bar_size.
10364         * src/nsfns.m (frame_geometry): New function.
10365         (Fx_frame_geometry): Call frame_geometry.
10366         (Fx_frame_edges): New function.
10367         * src/w32fns.c (C_CHILDREN_TITLEBAR, TITLEBAR_INFO)
10368         (GetTitleBarInfo_Proc): Define these so we can use the
10369         GetTitleBarInfo API.
10370         (Fw32_frame_menu_bar_size, Fw32_frame_rect): Remove.
10371         (Fx_frame_geometry): Rewrite.
10372         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
10373         (Fx_set_mouse_absolute_pixel_position): New functions.
10374         * src/xfns.c (frame_geometry): New function.
10375         (Fx_frame_geometry): Call frame_geometry.
10376         (Fx_frame_edges, Fx_mouse_absolute_pixel_position)
10377         (Fx_set_mouse_absolute_pixel_position): New functions.
10379 2015-08-18  Michael Albinus  <michael.albinus@gmx.de>
10381         Improve Tramp's compatibility
10382         * lisp/net/tramp.el (tramp-get-method-parameter):
10383         * lisp/net/tramp-adb.el (tramp-adb-parse-device-names)
10384         (tramp-adb-get-device):
10385         * lisp/net/trampver.el (tramp-repository-get-version):
10386         Use `tramp-compat-replace-regexp-in-string'.
10388 2015-08-18  Pierre Téchoueyres  <pierre.techoueyres@free.fr>  (tiny change)
10390         * lisp/net/tramp-cmds.el (tramp-reporter-dump-variable):
10391         Encode/decode string.
10393 2015-08-18  Paul Eggert  <eggert@cs.ucla.edu>
10395         Clarify what happens to match data on failure
10396         Problem reported by Ernesto Alfonso (Bug#21279).
10397         * doc/lispref/searching.texi (Regexp Search, Simple Match Data):
10398         Document more carefully what happens to match data after a failed
10399         search.
10400         * src/search.c (Fmatch_beginning, Fmatch_end): Document that
10401         the return value is undefined if the last search failed.
10402         (Fmatch_data): Simplify doc string line 1.
10404 2015-08-18  Daiki Ueno  <ueno@gnu.org>
10406         Revert "pinentry.el: Support external passphrase cache"
10407         This reverts commit e086e55a664ec27fbca7b3231c4b32cb78a89337.
10408         pinentry.el shouldn't directly interact with the secrets service,
10409         but ask the caller to cache the passphrase.
10411 2015-08-17  Xue Fuqiao  <xfq.free@gmail.com>
10413         * doc/emacs/sending.texi (Mail Misc): Fix two index entries for
10414         Message mode hooks.
10416 2015-08-17  Daiki Ueno  <ueno@gnu.org>
10418         epg.el: Make gpgconf output parsing future proof
10419         * lisp/epg.el (epg--start): Count the number of fields in "gpgconf
10420         --list-options" output.
10422         pinentry.el: Support external passphrase cache
10423         * lisp/net/pinentry.el (pinentry-use-secrets): New user option.
10424         (pinentry--allow-external-password-cache): New local variable.
10425         (pinentry--key-info): New local variable.
10426         (secrets-enabled, secrets-search-items, secrets-get-secret):
10427         Declare.
10428         (pinentry--send-passphrase): New function, split from
10429         `pinentry--process-filter'.
10430         (pinentry--process-filter): Use secrets.el to retrieve passphrase
10431         from login keyring.
10433         pinentry.el: Popup window for multiline prompt
10434         * lisp/net/pinentry.el (pinentry): New custom group.
10435         (pinentry-popup-prompt-window): New user option.
10436         (pinentry-prompt-window-height): New user option.
10437         (pinentry--prompt-buffer): New variable.
10438         (pinentry-prompt-mode-map): New variable.
10439         (pinentry-prompt-mode): New function.
10440         (pinentry--prompt): New function.
10441         (pinentry--process-filter): Use `pinentry--prompt' instead of
10442         `read-passwd' and `y-or-n-p'.
10444 2015-08-17  Katsumi Yamaoka  <yamaoka@jpl.org>
10446         message.el: Silent the byte compiler
10447         * lisp/gnus/message.el (message-overlay-put, message-make-overlay)
10448         (message-kill-all-overlays, message-overlays-in, message-overlay-get)
10449         (message-delete-overlay, message-window-inside-pixel-edges):
10450         Declare before using.
10452         * lisp/gnus/message.el (message-overlay-get, message-overlays-in)
10453         (message-window-inside-pixel-edges): XEmacs compatible functions.
10455 2015-08-17  Lars Magne Ingebrigtsen  <larsi@gnus.org>
10457         * lisp/gnus/message.el (message-toggle-image-thumbnails): New command.
10459 2015-08-17  Noah Friedman  <friedman@splode.com>
10461         * lisp/simple.el (blink-matching-open): Restore point before
10462         calling minibuffer-message.
10464 2015-08-17  Ronnie Schnell  <ronnie@driver-aces.com>
10466         * lisp/play/dunnet.el: Update version number in header (now
10467         matches help).
10469 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
10471         Curved quotes in --batch diagnostics in non-UTF-8
10472         When run with --batch, check that curved quotes are compatible with
10473         the system locale before outputting them in diagnostics.
10474         Problem reported by Eli Zaretskii in:
10475         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00594.html
10476         * lisp/startup.el (command-line): Set internal--text-quoting-flag
10477         after the standard display table is initialized.
10478         * src/doc.c (default_to_grave_quoting_style): New function.
10479         (text_quoting_style): Use it.
10480         (text_quoting_flag): New static var, visible to Lisp as
10481         internal--text-quoting-flag.
10482         * src/emacs.c: Include <wchar.h> if available.
10483         (using_utf8): New function.
10484         (main): Use it to initialize text_quoting_flag.
10485         * src/regex.h (btowc) [WIDE_CHAR_SUPPORT && emacs]:
10486         Don't define, as it's not needed and it clashes with wchar.h.
10488 2015-08-17  Glenn Morris  <rgm@gnu.org>
10490         * doc/misc/tramp.texi (Configuration): Reword to avoid warning
10491         from makeinfo about spurious "Note:" cross-reference, and for grammar.
10493 2015-08-17  Ilya Zakharevich  <ilya@math.berkeley.edu>
10495         Minor change in variable initialization on MS-Windows
10496         * src/w32fns.c <after_dead_key>: Initialize to -1.
10497         (deliver_wm_chars): If after_deadkey is zero, don't set after_dead
10498         non-zero.
10500         Fix a bug with LWindow key remapping on MS-Windows
10501         * src/w32fns.c (deliver_wm_chars): Fix a typo.  (Bug#21276)
10503 2015-08-17  Eli Zaretskii  <eliz@gnu.org>
10505         Improve fontset support for latest OTF script tags
10506         * lisp/international/fontset.el (otf-script-alist): Add some
10507         missing script tags.
10508         (setup-default-fontset): Include settings for v2 versions of the
10509         script tags used by some modern OTF/TTF fonts.
10511 2015-08-17  Paul Eggert  <eggert@cs.ucla.edu>
10513         Spelling fixes
10515 2015-08-16  Paul Eggert  <eggert@cs.ucla.edu>
10517         Use curved quotes in core elisp diagnostics
10518         In the core elisp files, use curved quotes in diagnostic formats,
10519         so that they follow user preference as per ‘text-quoting-style’
10520         rather than being hard-coded to quote `like this'.
10521         * lisp/abbrev.el (expand-region-abbrevs):
10522         * lisp/button.el (button-category-symbol, button-put)
10523         (make-text-button):
10524         * lisp/cus-start.el:
10525         * lisp/custom.el (custom-add-dependencies, custom-check-theme)
10526         (custom--sort-vars-1, load-theme):
10527         * lisp/emacs-lisp/byte-run.el (defun, defsubst):
10528         * lisp/emacs-lisp/cl-generic.el (cl-defgeneric)
10529         (cl-generic-generalizers):
10530         * lisp/emacs-lisp/macroexp.el (macroexp--obsolete-warning):
10531         * lisp/emacs-lisp/map-ynp.el (map-y-or-n-p):
10532         * lisp/emacs-lisp/nadvice.el (advice--make-docstring)
10533         (advice--make, define-advice):
10534         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-put-tag):
10535         * lisp/emacs-lisp/timer.el (timer-event-handler):
10536         * lisp/env.el (setenv):
10537         * lisp/facemenu.el (facemenu-add-new-face)
10538         (facemenu-add-new-color):
10539         * lisp/faces.el (face-documentation, read-face-name)
10540         (face-read-string, read-face-font, face-spec-set-match-display)
10541         (read-color, x-resolve-font-name):
10542         * lisp/files.el (locate-user-emacs-file, find-alternate-file)
10543         (set-auto-mode, hack-local-variables)
10544         (hack-one-local-variable--obsolete)
10545         (dir-locals-set-directory-class, write-file)
10546         (basic-save-buffer, delete-directory, copy-directory)
10547         (recover-session, recover-session-finish, insert-directory)
10548         (file-modes-char-to-who, file-modes-symbolic-to-number)
10549         (move-file-to-trash):
10550         * lisp/font-lock.el (font-lock-fontify-buffer):
10551         * lisp/format.el (format-write-file, format-find-file)
10552         (format-insert-file):
10553         * lisp/frame.el (get-device-terminal, select-frame-by-name):
10554         * lisp/fringe.el (fringe--check-style):
10555         * lisp/help.el (describe-minor-mode-from-indicator):
10556         * lisp/image.el (image-type):
10557         * lisp/international/fontset.el (x-must-resolve-font-name):
10558         * lisp/international/mule-cmds.el (prefer-coding-system)
10559         (select-safe-coding-system-interactively)
10560         (select-safe-coding-system, activate-input-method)
10561         (toggle-input-method, describe-current-input-method):
10562         * lisp/international/mule-conf.el (code-offset):
10563         * lisp/mouse.el (minor-mode-menu-from-indicator):
10564         * lisp/replace.el (query-replace-read-from)
10565         (occur-after-change-function, occur-1):
10566         * lisp/scroll-bar.el (scroll-bar-columns):
10567         * lisp/simple.el (execute-extended-command)
10568         (undo-outer-limit-truncate, compose-mail, set-variable)
10569         (choose-completion-string, define-alternatives):
10570         * lisp/startup.el (site-run-file, tty-handle-args)
10571         (command-line, command-line-1):
10572         * lisp/subr.el (noreturn, define-error, add-to-list)
10573         (read-char-choice):
10574         * lisp/term/common-win.el (x-handle-xrm-switch)
10575         (x-handle-name-switch, x-handle-args):
10576         * lisp/term/x-win.el (x-handle-parent-id, x-handle-smid):
10577         Use curved quotes in diagnostics.
10578         * lisp/international/mule.el (find-auto-coding):
10579         Use " to quote in a diagnostic, to be consistent with the rest of
10580         this file.
10582         Convert lisp/term/x-win.el to UTF-8
10583         * lisp/term/x-win.el: Convert to UTF-8.  This doesn't affect
10584         runtime behavior, and the file is multilingual so compile-time
10585         appearance shouldn't be an issue.
10586         * admin/notes/unicode: Document this.
10588 2015-08-16  Wilson Snyder  <wsnyder@wsnyder.org>
10590         Update verilog-mode.el to 2015-05-14-6232468-vpo-GNU.
10591         * lisp/progmodes/verilog-mode.el: Fix some non-automated indent
10592         issues and comments, bug#943.
10593         (verilog-type-font-keywords): Cycle delay operators like ##1 and
10594         ##[0:$] are now highlighted in their entirety similarly to the #
10595         delay-control operator.  Likewise, the followed-by operators #-#
10596         and #=# are no longer partially highlighed.
10597         (verilog-backward-syntactic-ws-quick)
10598         (verilog-skip-backward-comments): Minor performance improvements
10599         to buffer traversal functions for reduced latency.
10600         (verilog-calc-1, verilog-in-deferred-immediate-final-p): When the
10601         keyword 'final' follows 'assert/assume/cover', then it is part of
10602         a deferred immediate assertion item and should not be treated as a
10603         final construct for indentation.  Reported by Yuri Sugihara.
10604         (verilog-do-indent): Virtual task/function/class definition lines
10605         should not be considered as declarations.  Reported by Enzo Chi.
10606         (verilog-do-indent): Do not falsely indent to '=' of
10607         property/sequence operators on subsequent lines of a multi-line
10608         statement.
10609         (verilog-assignment-operator-re): Fix '!==' operator and add
10610         support for '<->', ':/', '#-#', and '#=#' operators.
10611         (verilog-calculate-indent, verilog-label-be): Enable
10612         case-sensitive regular expression parsing when looking for
10613         keywords.
10614         (verilog-calc-1): Detect 'pure virtual method' declarations which
10615         exist in abstract classes.  Reported by Enzo Chi and Kaushal Modi.
10616         (verilog-backward-ws&directives): When moving back to the start of
10617         a line and the preceeding line ended with an escaped-newline, then
10618         jump up one line.  This properly consumes a multi-line
10619         pre-processor directive.  Reported by Kaushal Modi.
10620         (verilog-dpi-import-export-re, verilog-extended-complete-re)
10621         (verilog-calc-1): Teach verilog-mode to properly indent after a
10622         DPI import/export statement that resides outside of a module.
10623         Reported by Kaushal Modi.
10624         (verilog-extended-complete-re): Update regexp to match both
10625         "DPI-C" and "DPI".  Reported by Kaushal Modi.
10627 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10629         substitute-command-keys a few more doc strings
10630         * lisp/allout.el (outlineify-sticky):
10631         * lisp/files.el (hack-one-local-variable--obsolete):
10632         * lisp/help-fns.el (help-fns--obsolete, describe-variable):
10633         Use substitute-command-keys on some doc strings so that
10634         they don't use hard-coded key bindings or quoting styles.
10636         Fix quoting in Fformat calls
10637         * src/image.c (xbm_read_bitmap_data, xbm_load_image, xbm_load)
10638         (xpm_load, xpm_load_image, pbm_load, png_load_body)
10639         (jpeg_load_body, tiff_load, gif_load, imagemagick_load_image)
10640         (imagemagick_load, svg_load, svg_load_image, gs_load)
10641         (x_kill_gs_process):
10642         * src/lread.c (load_warn_old_style_backquotes):
10643         * src/xfaces.c (load_pixmap):
10644         * src/xselect.c (x_clipboard_manager_error_1):
10645         Quote diagnostics according to user preference when calling
10646         Fformat or its derivatives.
10648 2015-08-15  Glenn Morris  <rgm@gnu.org>
10650         * admin/admin.el (set-version, set-copyright): Remove deleted files.
10652 2015-08-15  Stephen Leake  <stephen_leake@stephe-leake.org>
10654         Allow describe-function helpers to access buffer-local values
10655         This will be used by cedet/mode-local.el `describe-mode-local-override'
10656         on `help-fns-describe-function-functions' in upstream CEDET.
10657         * lisp/help-fns.el (describe-function-orig-buffer): New, let-bound in
10658         `describe-function'.
10659         (describe-function): Bind it, save it on the help xref stack.
10661         Handle pulse-background being nil
10662         * lisp/cedet/pulse.el (pulse-lighten-highlight): Inherit
10663         pulse-background, handle it being nil.
10665 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10667         Fix "\`" confusion in Lisp strings
10668         * admin/authors.el (authors-canonical-author-name):
10669         Fix typo by using "\\`" not "\`" in string RE.
10670         * lisp/obsolete/complete.el (PC-complete-as-file-name):
10671         * lisp/obsolete/vi.el (vi-backward-blank-delimited-word):
10672         * lisp/progmodes/verilog-mode.el (verilog-mode-map):
10673         Use plain "`", not the equivalent-but-confusing "\`", in strings.
10674         * lisp/textmodes/texinfmt.el: Fix comment likewise.
10676 2015-08-15  Dani Moncayo  <dmoncayo@gmail.com>
10678         * nt/zipdist.bat: Remove -- no longer used.
10680 2015-08-15  Jürgen Hötzel  <juergen@archlinux.org>
10682         * lisp/net/tramp-sh.el (tramp-remote-selinux-p): Use "selinuxenabled"
10683         rather than "getenforce".
10684         (tramp-sh-handle-set-file-selinux-context): Do not
10685         cache SELinux context if not all context components are given.
10687 2015-08-15  Eli Zaretskii  <eliz@gnu.org>
10689         Add doc strings to 2 help-mode.el functions
10690         * lisp/help-mode.el (help-mode-setup, help-mode-finish): Add doc
10691         strings.  (Bug#21263)
10693         Remove files used by the old MS-Windows specific build procedure
10694         * admin/unidata/makefile.w32-in:
10695         * doc/emacs/makefile.w32-in:
10696         * doc/lispintro/makefile.w32-in:
10697         * doc/lispref/makefile.w32-in:
10698         * doc/misc/makefile.w32-in:
10699         * leim/makefile.w32-in:
10700         * lib-src/makefile.w32-in:
10701         * lib/makefile.w32-in:
10702         * lisp/makefile.w32-in:
10703         * nt/INSTALL.OLD:
10704         * nt/config.nt:
10705         * nt/emacs-src.tags:
10706         * nt/envadd.bat:
10707         * nt/gmake.defs:
10708         * nt/makefile.w32-in:
10709         * nt/multi-install-info.bat:
10710         * nt/nmake.defs:
10711         * nt/paths.h:
10712         * src/makefile.w32-in: Files deleted.
10713         * nt/configure.bat: Remove everything except the blurb about the
10714         new build procedure.
10715         * make-dist: Remove references to makefile.w32-in in various
10716         directories, and to files in nt/ that were deleted.
10717         * etc/NEWS: Mention the fact that the files were dropped.
10719 2015-08-15  Paul Eggert  <eggert@cs.ucla.edu>
10721         * doc/emacs/mule.texi (Charsets): Give fuller title for ISO-IR.
10722         (Bug#21248)
10724 2015-08-14  Paul Eggert  <eggert@cs.ucla.edu>
10726         Default to inotify instead of gfile
10727         * configure.ac (with_file_notification): Fix typo that
10728         prevented suppression of file notification if HAVE_NS.
10729         (NOTIFY_OBJ): Prefer inotify to gfile if both exist and
10730         with_file_notification is 'yes' (Bug#21241).
10731         * etc/NEWS: Mention this.
10733         Fix broken URLs for ISO-IR
10734         * doc/emacs/mule.texi (Charsets):
10735         * lisp/international/mule-conf.el:
10736         Fix broken URL (Bug#21248).
10738         Low-level diagnostics now use ‘text-quoting-style’
10739         * src/doprnt.c (doprnt):
10740         Format ` and ' as per ‘text-quoting-style’.
10741         * src/xdisp.c (vmessage, message): Mention that the format should
10742         not contain ` or '.
10744         Prefer ‘format’ to ‘substitute-command-keys’
10745         * src/character.h (uLSQM, uRSQM): Move here ...
10746         * src/doc.c (uLSQM, uRSQM): ... from here.
10747         * src/doc.c (Fsubstitute_command_keys):
10748         * src/syntax.c (Finternal_describe_syntax_value):
10749         * lisp/cedet/mode-local.el (mode-local-print-binding)
10750         (mode-local-describe-bindings-2):
10751         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
10752         * lisp/cus-theme.el (describe-theme-1):
10753         * lisp/descr-text.el (describe-text-properties-1, describe-char):
10754         * lisp/emacs-lisp/cl-extra.el (cl--describe-class):
10755         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
10756         * lisp/emacs-lisp/eieio-opt.el (eieio-help-constructor):
10757         * lisp/emacs-lisp/package.el (describe-package-1):
10758         * lisp/faces.el (describe-face):
10759         * lisp/help-fns.el (help-fns--key-bindings)
10760         (help-fns--compiler-macro, help-fns--parent-mode)
10761         (help-fns--obsolete, help-fns--interactive-only)
10762         (describe-function-1, describe-variable):
10763         * lisp/help.el (describe-mode):
10764         Prefer ‘format’ to ‘substitute-command-keys’ when either will do
10765         to implement quoting style.  This generally makes the code simpler.
10767         Extend ‘format’ to translate curved quotes
10768         This is a followup to the recent doc string change, and deals with
10769         diagnostics and the like.  This patch is more conservative than
10770         the doc string change, in that the behavior of ‘format’ changes
10771         only if its first arg contains curved quotes and the user prefers
10772         straight or grave quotes.  (Come to think of it, perhaps we should
10773         be similarly conservative with doc strings too, but that can wait.)
10774         The upside of this conservatism is that existing usage is almost
10775         surely unaffected.  The downside is that we'll eventually have to
10776         change Emacs's format strings to use curved quotes in places where
10777         the user might want curved quotes, but that's a simple and
10778         mechanical translation that I'm willing to do later.  (Bug#21222)
10779         * doc/lispref/help.texi (Keys in Documentation):
10780         Move description of text-quoting-style from here ...
10781         * doc/lispref/strings.texi (Formatting Strings):
10782         ... to here, and describe new behavior of ‘format’.
10783         * etc/NEWS: Describe new behavior.
10784         * lisp/calc/calc-help.el (calc-describe-thing):
10785         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
10786         * lisp/info.el (Info-find-index-name):
10787         Use ‘concat’ rather than ‘format’ to avoid misinterpretation
10788         of recently-added curved quotes.
10789         * src/doc.c (uLSQM0, uLSQM1, uLSQM2, uRSQM0, uRSQM1, uRSQM2):
10790         Move from here ...
10791         * src/lisp.h: ... to here.
10792         * src/doc.c (text_quoting_style): New function.
10793         (Fsubstitute_command_keys): Use it.
10794         * src/editfns.c (Fformat): Implement new behavior.
10795         * src/lisp.h (enum text_quoting_style): New enum.
10797 2015-08-14  Stefan Monnier  <monnier@iro.umontreal.ca>
10799         * src/keyboard.c: Use false/true instead of 0/1 for booleans.
10800         * src/keyboard.h (struct kboard): Mark kbd_queue_has_data as boolean.
10802 2015-08-14  Michael Albinus  <michael.albinus@gmx.de>
10804         * lisp/net/tramp-sh.el (tramp-sh-handle-file-acl): Do not redirect
10805         stderr to /dev/null, this is done in `tramp-send-command-and-check'.
10807 2015-08-14  Jürgen Hötzel  <juergen@archlinux.org>
10809         Flush file properties in Tramp
10810         * lisp/net/tramp-sh.el (tramp-sh-handle-set-file-modes)
10811         (tramp-sh-handle-set-file-times):
10812         * lisp/net/tramp-adb.el (tramp-adb-handle-set-file-modes)
10813         (tramp-adb-handle-set-file-times): Flush the file properties of
10814         the directory.
10816 2015-08-14  Ronnie Schnell  <ronnie@driver-aces.com>
10818         * doc/emacs/misc.text (Amusements): Fixed typo.
10820 2015-08-14  Eli Zaretskii  <eliz@gnu.org>
10822         Don't miss warnings about removing string text properties while dumping
10823         * src/alloc.c (purecopy): Warn about removing a string's text
10824         properties even when the same string was already pure-copied
10825         earlier.
10826         * lisp/progmodes/elisp-mode.el (elisp--xref-format)
10827         (elisp--xref-format-extra): Fix the commentary.
10829 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
10831         * lisp/progmodes/sh-script.el (sh-mode): Handle .cshrc (bug#21049).
10833 2015-08-13  Magnus Henoch  <magnus.henoch@gmail.com>
10835         * lisp/progmodes/compile.el: Use lexical-binding.
10836         (compilation-move-to-column): Assume 8-wide TABs (bug#21038).
10838 2015-08-13  Stefan Monnier  <monnier@iro.umontreal.ca>
10840         (uniquify-ask-about-buffer-names-p): Remove, unused (bug#21037)
10841         * lisp/uniquify.el: Remove redundant `:group's.
10843 2015-08-13  Jürgen Hötzel  <juergen@archlinux.org>
10845         * lisp/net/tramp-adb.el
10846         (tramp-adb-handle-directory-files-and-attributes): Make a copy of
10847         result to prevent modification of the tramp-cache by side effects.
10848         Use the correct cache key.
10850 2015-08-13  Paul Eggert  <eggert@cs.ucla.edu>
10852         Make add_to_log varargs
10853         * src/alloc.c (run_finalizer_handler):
10854         * src/charset.c (load_charset_map_from_vector):
10855         * src/nsimage.m (ns_load_image):
10856         * src/xfaces.c (load_pixmap, load_color2):
10857         Simplify, now that add_to_log has a variable number of args.
10858         * src/image.c (image_error): Take a variable number of args.
10859         Callers simplified.
10860         * src/lisp.h (add_to_log, vadd_to_log): Adjust to new APIs.
10861         * src/xdisp.c (format_nargs, vadd_to_log): New functions.
10862         (add_to_log): Make varargs, and reimplement in terms of vadd_to_log.
10863         * src/xfaces.c (merge_face_ref): Fix typo that omitted color name.
10865         Optional args for holiday-greek-orthodox-easter
10866         * etc/NEWS: Document this.
10867         * lisp/calendar/holidays.el (holiday-greek-orthodox-easter):
10868         Add optional args N and STRING, mimicking the API and code of
10869         ‘holiday-easter-etc’.  From suggestion by Foivos S. Zakkak (Bug#21256).
10871 2015-08-13  Stephen Leake  <stephen_leake@stephe-leake.org>
10873         xref-find-definitions: Exclude more generic function items.
10874         * lisp/emacs-lisp/cl-generic.el (cl--generic-search-method):
10875         Add doc string.
10876         (cl--generic-find-defgeneric-regexp): New.
10877         (find-function-regexp-alist): Add it.
10878         * lisp/emacs-lisp/find-func.el (find-feature-regexp): Move here from
10879         elisp-mode.el, change to search for ";;; Code:"
10880         (find-alias-regexp): Move here from elisp-mode.el, cleaned up.
10881         (find-function-regexp-alist): Add them.
10882         * lisp/progmodes/elisp-mode.el:
10883         (elisp--xref-format, elisp--xref-format-extra): Change back to
10884         defvar due to bug#21237.
10885         (elisp--xref-find-definitions): Exclude co-located default methods for
10886         generic functions.  Also exclude implicitly declared defgeneric.
10887         (elisp--xref-find-definitions): Handle C source properly.  Exclude minor
10888         mode variables defined by 'define-minor-mode'.
10889         * test/automated/elisp-mode-tests.el: Declare generic functions, add
10890         tests for them.
10891         (xref-elisp-test-run): Fix bug.
10892         (emacs-test-dir): Improve initial value.
10893         (find-defs-defun-defvar-el): Don't expect defvar.
10894         (find-defs-feature-el): Match change to find-feature-regexp.
10896 2015-08-13  Eli Zaretskii  <eliz@gnu.org>
10898         Improve warning about purecopy of strings with properties
10899         * src/alloc.c (purecopy): Show the offending string with the
10900         warning about removing its text properties.
10902 2015-08-12  Alan Mackenzie  <acm@muc.de>
10904         Introduce new macros to cover Emacs's new names in cl-lib.el
10905         This also eliminates `mapcan' warnings in XEmacs.
10906         * lisp/progmodes/cc-defs.el (c--mapcan-status): New variable to
10907         characterise [X]Emacs versions.
10908         (top-level): Require either 'cl or 'cl-lib, depending on
10909         c--mapcan-status.
10910         Change this back to cc-external-require from an eval-when-compile
10911         require.
10912         (c--mapcan, c--set-difference, c--intersection, c--macroexpand-all)
10913         (c--delete-duplicates): New macros which expand into either old or new
10914         names.
10915         (c-make-keywords-re, c-lang-defconst, c-lang-const): Use the new macros
10916         rather than the old names.
10917         * lisp/progmodes/cc-engine.el (c-declare-lang-variables): Use c--mapcan
10918         rather than mapcan.
10919         * lisp/progmodes/cc-fonts.el (c-compose-keywords-list): Use c--mapcan.
10920         * lisp/progmodes/cc-langs.el (top-level): Require either 'cl or 'cl-lib,
10921         depending on c--mapcan-status.
10922         (c-filter-ops, c-all-op-syntax-tokens, c-assignment-op-regexp)
10923         (c-type-start-kwds, c-prefix-spec-kwds, c-specifier-key)
10924         (c-not-decl-init-keywords, c-not-primitive-type-keywords)
10925         (c-paren-any-kwds, c-<>-sexp-kwds, c-block-stmt-kwds, c-expr-kwds)
10926         (c-decl-block-key, c-keywords, c-keywords-obarray)
10927         (c-regular-keywords-regexp, c-primary-expr-regexp)
10928         (c-primary-expr-regexp, c-block-prefix-disallowed-chars)
10929         (c-known-type-key, c-nonlabel-token-key)
10930         (c-make-init-lang-vars-fun): Use the new macros rather than the old
10931         names.
10933 2015-08-12  Oleh Krehel  <ohwoeowho@gmail.com>
10935         loadhist.el (read-feature): Conform to completing-read
10936         * lisp/loadhist.el (read-feature): According to `completing-read'
10937         documentation, if collection is a list, then it must be a list of
10938         strings, not a list of symbols like before.
10940 2015-08-12  David Kastrup  <dak@gnu.org>
10942         Deal gracefully with up-events (Bug#19746)
10943         * src/keyboard.c (apply_modifiers_uncached, parse_solitary_modifier)
10944         (parse_modifiers_uncached): React gracefully to "up-" modifiers:
10945         those may easily be injected by user-level Lisp code.
10946         (read_key_sequence): Discard unbound up-events like unbound
10947         down-events: they are even more likely only relevant for special
10948         purposes.
10949         While Emacs will not produce up-events on its own currently (those are
10950         converted to drag or click events before being converted to
10951         Lisp-readable structures), the input queue can be made to contain them
10952         by synthesizing events to `unread-command-events'.  Emacs should deal
10953         consistently with such events.
10955 2015-08-12  Eli Zaretskii  <eliz@gnu.org>
10957         Fix display of thin lines whose newline has line-height property of t
10958         * src/xdisp.c (append_space_for_newline): Don't try to fix ascent
10959         and descent values of non-empty glyph rows, since they could have
10960         forced low values deliberately.  (Bug#21243)
10962 2015-08-12  Richard Stallman  <rms@gnu.org>
10964         Offer to combine multiple To or CC fields.
10965         * lisp/mail/sendmail.el (mail-combine-fields): New function.
10966         (mail-send): Call 'mail-combine-fields'.
10968         Don't decrypt encrypted files.
10969         * lisp/mail/mail-utils.el (mail-file-babyl-p): Bind epa-inhibit to t.
10971         Handle encrypted mbox files.
10972         * lisp/mail/rmailout.el (rmail-output-as-mbox): Decrypt and reencrypt
10973         the mbox file if necessary.
10975         Re-enable mime processing after decryption.  Add 'decrypt' keyword.
10976         * lisp/mail/rmail.el (rmail-epa-decrypt-1): New subroutine.
10977         (rmail-epa-decrypt): rmail-epa-decrypt-1 broken out.
10978         In a mime message, reenable Mime and show the parts that
10979         were shown before.
10980         Add keyword "decrypt" if anything decrypted.
10982         epa-inhibit inhibits auto-recognition of .gpg files
10983         * lisp/epa-file.el (epa-inhibit): New variable.
10984         (epa-file-handler): Check epa-inhibit.
10986 2015-08-12  Artur Malabarba  <bruce.connor.am@gmail.com>
10988         * lisp/emacs-lisp/lisp-mnt.el (lm-header): Add save-excursion.
10990 2015-08-11  Fabián Ezequiel Gallina  <fgallina@gnu.org>
10992         Respect python.el imenu when semantic-mode is off
10993         Fixes bug#21220
10994         * lisp/cedet/semantic/wisent/python.el: Do not force
10995         wisent-python-default-setup on python-mode-hook.
10997 2015-08-11  Paul Eggert  <eggert@cs.ucla.edu>
10999         Give names to Unicode code points in C code
11000         * src/character.h (NO_BREAK_SPACE, SOFT_HYPHEN)
11001         (ZERO_WIDTH_NON_JOINER, ZERO_WIDTH_JOINER, HYPHEN)
11002         (NON_BREAKING_HYPHEN, LEFT_SINGLE_QUOTATION_MARK)
11003         (RIGHT_SINGLE_QUOTATION_MARK, PARAGRAPH_SEPARATOR)
11004         (LEFT_POINTING_ANGLE_BRACKET, RIGHT_POINTING_ANGLE_BRACKET)
11005         (LEFT_ANGLE_BRACKET, RIGHT_ANGLE_BRACKET)
11006         (OBJECT_REPLACEMENT_CHARACTER):
11007         New named constants for Unicode code points.
11008         * src/bidi.c (bidi_fetch_char, CANONICAL_EQU):
11009         * src/composite.c (char_composable_p):
11010         * src/lread.c (readevalloop, read1):
11011         * src/xdisp.c (get_next_display_element):
11012         Use them.
11013         * src/doc.c (LEFT_SINGLE_QUOTATION_POINT):
11014         Remove; now in character.h.
11016 2015-08-11  Stephen Leake  <stephen_leake@stephe-leake.org>
11018         elisp--xref-find-definitions handle cl-defstuct default constructor
11019         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Add FIXME.
11020         (elisp--xref-format-extra): Rename from elisp--xref-format-cl-defmethod.
11021         (elisp--xref-find-definitions): Handle cl-defstuct default constructor.
11022         * test/automated/elisp-mode-tests.el (xref-elisp-test-run): Split out
11023         from xref-elisp-test for ease of debugging.
11024         (xref-elisp-deftest): Rename from xref-elisp-test.
11025         (find-defs-constructor): New test.
11026         (find-defs-defgeneric-el): Match batch test config.
11027         (compile): Required for find-defs compilation-minor-mode test.
11028         (find-defs-defvar-el): Match code change.
11029         (find-defs-face-el): Match code change.
11030         * lisp/progmodes/xref.el (xref-find-function, xref-find-definitions):
11031         Improve doc string.
11033 2015-08-11  Stefan Monnier  <monnier@iro.umontreal.ca>
11035         * lisp/replace.el (perform-replace): Document `replacements'.
11036         (perform-replace): Move the description of the format of `replacements'
11037         from the body's comment to the doc string.
11039 2015-08-11  Jürgen Hötzel  <juergen@archlinux.org>
11041         * lisp/net/tramp-adb.el (tramp-adb-prompt): Match leading escape
11042         sequence.  Recent adb version send initial escape sequences, even
11043         when terminal type is set to TERM=dumb.
11045 2015-08-10  Stephen Leake  <stephen_leake@stephe-leake.org>
11047         Rewrite elisp--xref-find-definitions to handle many more cases; add tests
11048         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
11049         Function deleted.
11050         (elisp--xref-format-cl-defmethod): New defconst.
11051         (find-feature-regexp, find-alias-regexp): New defcustoms.
11052         (elisp--xref-make-xref): New function.
11053         (elisp--xref-find-definitions): Rewrite using the above, handle many
11054         more cases.  Always output all available definitions.
11055         (xref-location-marker): No need for special cases.
11056         * test/automated/elisp-mode-tests.el: Add more tests of
11057         elisp--xref-find-definitions, improve current tests.
11059 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
11061         Fix recording of events pushed onto unread-command-events
11062         * src/keyboard.c (read_char): Make sure events read from
11063         unread-command-events and unread-post-input-method-events are
11064         always recorded by record_char.  Reported by David Kastrup
11065         <dak@gnu.org>, see
11066         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00193.html.
11068 2015-08-10  Samer Masterson  <samer@samertm.com>
11070         Set file buffer as current for "--file"
11071         * lisp/startup.el (command-line-1): Set file buffer as current before
11072         it is displayed so it can be used with options like "--eval".
11073         (Bug#21095)
11075 2015-08-10  Eli Zaretskii  <eliz@gnu.org>
11077         Avoid setting LC_NUMERIC on MS-Windows to anything but "C"
11078         * src/emacs.c (synchronize_locale) [WINDOWSNT]: Call fixup_locale
11079         after setting LC_ALL to the desired locale, to avoid affecting how
11080         numbers are read and printed.  (Bug#21223)
11082 2015-08-10  Alan Mackenzie  <acm@muc.de>
11084         Fix "Invalid search bound (wrong side of point)" in fontification
11085         * lisp/progmodes/cc-fonts.el (c-font-lock-declarators): After skipping
11086         an initialization expression, check point is not beyond the
11087         fontification limit.
11089 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
11091         Fix DPI calculation when Xft/DPI is default
11092         * src/xsettings.c (parse_settings): Don't use Xft/DPI default
11093         value of -1, which evaluates to 2**32 - 1 (Bug#21152).
11094         Remove unnecessary cast while we're in the neighborhood.
11096 2015-08-09  Dmitry Gutov  <dgutov@yandex.ru>
11098         Add project-vc-search-path and project-vc-ignores
11099         * lisp/progmodes/project.el (project-vc): New group.
11100         (project-vc-search-path, project-vc-ignores): New variables.
11101         (project--value-in-dir): Utility function.
11102         (project-search-path, project-ignores): Use them.
11103         * lisp/progmodes/xref.el (xref--rgrep-command): Only replace `./'
11104         at bos.  Don't add extra `/'.  Don't prepend with `*' if replaced.
11106 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
11108         Fix some minor quoting issues with grave accent
11109         * src/dispnew.c (add_window_display_history) [GLYPH_DEBUG]:
11110         Remove redundant quotes.
11111         * src/doc.c (uLSQM, uRSQM): New macros.
11112         * src/doc.c (Fsubstitute_command_keys):
11113         * src/syntax.c (Finternal_describe_syntax_value): Follow the user
11114         preference for quotes rather than hardcoding the ‘grave’ style.
11115         * src/regex.c (PUSH_FAILURE_POINT, POP_FAILURE_POINT)
11116         (re_match_2_internal) [DEBUG]: In debugging output, quote C
11117         strings with "...", not `...'.
11119         ChangeLog.2 ignores remote-tracking merges
11120         * build-aux/gitlog-to-emacslog: Ignore commit logs matching
11121         "Merge remote-tracking branch '.*'" too.  See Eli Zaretskii in:
11122         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00384.html
11124 2015-08-09  Nicolas Richard  <youngfrog@members.fsf.org>
11126         Use kpsewhich in ffap-latex-mode, if available
11127         * lisp/ffap.el (ffap-latex-guess-rules): New variable.
11128         (ffap-latex-mode): Use kpsewhich if available.
11130         ffap: disallow braces in filenames for tex modes
11131         * lisp/ffap.el (ffap-string-at-point-mode-alist): Don't allow
11132         braces in tex-related modes.
11134         Remove useless backslashes from ffap-string-at-point-mode-alist
11135         * lisp/ffap.el (ffap-string-at-point-mode-alist): Remove useless and
11136         misleading backslashes from default value.
11138         Augment docstring of ffap-string-at-point-mode-alist
11139         * lisp/ffap.el (ffap-string-at-point-mode-alist): Describe how BEG
11140         and END are handled.
11142 2015-08-09  Paul Eggert  <eggert@cs.ucla.edu>
11144         * lisp/org/org-src.el (org-edit-src-code)
11145         (org-edit-fixed-width-region):
11146         * lisp/simple.el (completion-setup-function):
11147         Remove calls to substitute-command-keys that always just return
11148         their argument.
11150 2015-08-09  Daiki Ueno  <ueno@gnu.org>
11152         * lisp/epa.el (epa-exit-buffer-function): Set to `quit-window'.
11153         (Bug#21210)
11155 2015-08-09  Ivan Kanis  <ivan@kanis.fr>
11157         Fix link to source code in help window
11158         * lisp/help-fns.el (find-lisp-object-file-name): Remove code that
11159         will never work due to Glenn Morris change a6d63d9 on Apr 20 2013
11160         'No longer include timestamp in header of .elc files'.  Add code
11161         that will return .el source file in load-path.
11163 2015-08-09  Artur Malabarba  <bruce.connor.am@gmail.com>
11165         * lisp/isearch.el (isearch-search-fun-default): (Bug#21164)
11166         Respect `isearch-lax-whitespace' when searching through
11167         `isearch-word'.
11169 2015-08-08  Stefan Monnier  <monnier@iro.umontreal.ca>
11171         * test/automated/ert-tests.el (ert-test-deftest): Add FIXME.
11173         * org.el: Fix up some lexical scoping warnings, and use dolist
11174         * lisp/org/org.el (org-set-regexps-and-options-for-tags, org-goto-map)
11175         (org-set-regexps-and-options, org-assign-fast-keys)
11176         (org-contextualize-keys, org-contextualize-validate-key)
11177         (org-notes-order-reversed-p, org-local-logging, org-map-entries)
11178         (org-find-olp, org-find-exact-heading-in-directory)
11179         (org-cycle-agenda-files, org-release-buffers, org-fill-template)
11180         (org-agenda-prepare-buffers, org-occur-in-agenda-files)
11181         (org-replace-escapes): Use dolist.
11182         (org-mode): Optimize away XEmacs-only code.
11183         (org-refile-get-targets): Remove unused var `f'.
11184         (org-fast-todo-selection): Remove unused var `e'.
11185         (org-make-tags-matcher): Use dolist.  Remove unused var `term'.
11186         (org-fast-tag-selection): Use dolist.  Remove unused var `e'.
11187         (org-format-latex): Use dolist.  Remove unused var `e'.
11188         (org-toggle-heading): Access vars lexically rather than dynamically.
11189         (org-backward-sentence, org-forward-sentence, org-meta-return)
11190         (org-kill-line): Mark arg as unused.
11191         (org-submit-bug-report): Silence compiler warning.
11192         (org-occur-in-agenda-files): Don't use add-to-list on local vars.
11193         (org-get-cursor-date): Remove unused var `tm'.
11194         (org-comment-or-uncomment-region): Use standard name `_'.
11195         (reftex-docstruct-symbol, reftex-cite-format): Declare to
11196         silence byte-compiler.
11197         (org-reftex-citation): Add `org--' prefix to dynamically scoped
11198         `rds' var.
11200 2015-08-08  Paul Eggert  <eggert@cs.ucla.edu>
11202         Electric quote if coding is undecided or no conv
11203         * lisp/electric.el (electric--insertable-p): Also say that a
11204         string is insertable if the buffer file coding system is undecided
11205         or uses no conversion, as curved quotes will work in either case.
11207         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Simplify configuration.
11209 2015-08-08  Eli Zaretskii  <eliz@gnu.org>
11211         Fix overlay string display regressions introduced in Emacs 24.5
11212         * src/xdisp.c (pop_it): Reset the flag to ignore overlays at this
11213         buffer position, if we move the iterator to a new position as
11214         result of jumping over text covered by a "replacing" display
11215         property.
11216         * test/redisplay-testsuite.el (test-redisplay-4): Add 2 new tests.
11218         Support recovery from C stack overflow on MS-Windows
11219         * src/w32fns.c (w32_reset_stack_overflow_guard)
11220         (stack_overflow_handler): New functions for handling C stack
11221         overflow exceptions.
11222         (my_exception_handler): Handle EXCEPTION_STACK_OVERFLOW exceptions
11223         specially, and zero out except_addr if we do.
11224         (globals_of_w32fns): Initialize dwMainThreadId in non-interactive
11225         mode.
11226         * src/sysdep.c [HAVE_STACK_OVERFLOW_HANDLING]: Add !WINDOWSNT to
11227         the condition, as HAVE_STACK_OVERFLOW_HANDLING is now defined for
11228         the MinGW build, but the code guarded by that is for Posix hosts.
11229         * src/keyboard.c (command_loop) [WINDOWSNT]:
11230         Call w32_reset_stack_overflow_guard.
11231         * nt/inc/ms-w32.h (sigjmp_buf): New typedef.
11232         (sigsetjmp): New macro.
11233         (w32_reset_stack_overflow_guard): Declare the prototype.
11234         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING): Set to 1 for MinGW.
11236 2015-08-07  Phillip Lord  <phillip.lord@newcastle.ac.uk>
11238         Improve error signalling for seq-subseq
11239         * lisp/seq.el (seq-subseq): The existing behavior is to error
11240         when indexes are too large, but to silently ignore numbers which
11241         are too negative for lists.  String and vector handling errors in
11242         both cases.  This has been regularized.  Error signaling behavior
11243         has been explicitly added to the doc string.
11245         * lisp/cl-extra.el (cl-subseq): Defers to (seq-subseq) and is
11246         therefore also impacted by this change.  Update the doc string
11247         to reflect this.
11249         * test/automated/seq-tests.el (test-seq-subseq): Tests have been
11250         added for these exceptional cases, as well as one non exceptional
11251         base case.
11253 2015-08-07  Jürgen Hötzel  <juergen@archlinux.org>
11255         Improve error checking in tramp-adb.el
11256         * lisp/net/tramp-adb.el (tramp-adb-ls-output-name-less-p):
11257         Improve error checking.  "ls -l" on Android in Enforcing mode can
11258         print "lstat './FILENAME failed: Permission denied".
11260 2015-08-07  Stefan Monnier  <monnier@iro.umontreal.ca>
11262         * lisp/emacs-lisp/cl-generic.el (cl--generic-struct-tag): Don't burp on
11263         non-struct vectors.
11265 2015-08-07  Stephen Leake  <stephen_leake@stephe-leake.org>
11267         Fix typo in lisp/window.el, more `display-buffer-use-some-frame'
11268         * lisp/window.el: Fix typo that broke build.
11269         (display-buffer--action-function-custom-type):
11270         Add `display-buffer-use-some-frame'.
11271         (display-buffer): Add `display-buffer-use-some-frame' to doc string.
11273         Add support for 'inhibit-same-window in 'display-buffer-use-some-frame'
11274         * lisp/window.el (display-buffer-use-some-frame): Add support for
11275         'inhibit-same-window in alist.
11276         * doc/windows.texi (display-buffer-use-some-frame): Doc support for
11277         'inhibit-same-window in alist.
11279 2015-08-07  Eli Zaretskii  <eliz@gnu.org>
11281         Avoid infinite loop in display of invisible text in strings
11282         * src/xdisp.c (handle_invisible_prop): If the next change of
11283         invisibility spec does not mean the beginning of a visible text,
11284         update the string position from which to start the search for the
11285         next invisibility change.  This avoids an infinite loop when we
11286         have more than one invisibility spec that are made inactive by
11287         buffer-invisibility-spec.  Simplify code.  (Bug#21200)
11288         * test/redisplay-testsuite.el (test-redisplay-4): Add a test case
11289         for the situation that caused bug #21200.
11291 2015-08-06  Artur Malabarba  <bruce.connor.am@gmail.com>
11293         * lisp/emacs-lisp/package.el: Simplify describe-package-1
11294         (package-help-section-name-face): New face.
11295         (package--print-help-section): New function.
11296         (describe-package-1): Refactor section printing.
11297         (package-make-button): Use face instead of font-lock-face, which
11298         doesn't work on buttons.
11300         * lisp/emacs-lisp/package.el: Define custom faces
11301         (package-name-face, package-description-face)
11302         (package-status-built-in-face, package-status-external-face)
11303         (package-status-available-face, package-status-new-face)
11304         (package-status-held-face, package-status-disabled-face)
11305         (package-status-installed-face, package-status-dependency-face)
11306         (package-status-unsigned-face, package-status-incompat-face)
11307         (package-status-avail-obso-face): New faces.
11308         (package-menu--print-info-simple): Use them.
11310 2015-08-05  Paul Eggert  <eggert@cs.ucla.edu>
11312         Fix some confusion with ‘format’
11313         * lisp/allout-widgets.el (allout-widgets-before-change-handler)
11314         (allout-graphics-modification-handler):
11315         Protect arbitrary string in a format context with "%s" format.
11316         * lisp/avoid.el:
11317         * lisp/cedet/semantic/bovine/scm.el: Fix comment.
11318         * lisp/calendar/icalendar.el (icalendar--convert-sexp-to-ical):
11319         * lisp/erc/erc-button.el (erc-button-beats-to-time):
11320         * lisp/gnus/message.el (message-send-form-letter):
11321         * lisp/org/ob-core.el (org-babel-check-evaluate)
11322         (org-babel-confirm-evaluate):
11323         * lisp/org/ob-fortran.el (org-babel-fortran-var-to-fortran):
11324         * lisp/org/ox-latex.el (org-latex-compile):
11325         * lisp/org/ox-man.el (org-man-compile):
11326         * lisp/org/ox-odt.el (org-odt-template):
11327         * lisp/org/ox-texinfo.el (org-texinfo-compile):
11328         * lisp/progmodes/prolog.el (prolog-help-info)
11329         (prolog-view-predspec):
11330         * lisp/progmodes/ruby-mode.el (ruby-parse-partial):
11331         * lisp/progmodes/verilog-mode.el (verilog-showscopes):
11332         * lisp/textmodes/rst.el (rst-replace-lines):
11333         Change (message (format ...)) to (message ...), and likewise
11334         for ‘error’.  This lessens the probability of confusion when the
11335         output of ‘format’ contains ‘%’.
11337 2015-08-05  Artur Malabarba  <bruce.connor.am@gmail.com>
11339         * lisp/replace.el (replace-character-fold): Default to nil.
11341         * lisp/character-fold.el: Fix lax whitespace.
11342         (character-fold-table): Don't make space match other whitespace chars.
11343         (character-fold-to-regexp): Simplify lax behavior.
11345 2015-08-05  Dmitry Gutov  <dgutov@yandex.ru>
11347         Preserve window point in xref-find-definitions-other-window
11348         Fix the problem reported by Ingo Logmar in
11349         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00152.html
11350         * lisp/progmodes/xref.el (xref--goto-char): Extract from
11351         xref--goto-location.
11352         (xref--pop-to-location): Use it.  Replace xref--goto-location with
11353         a direct xref-location-marker call.
11354         (xref--show-location): Likewise.
11355         (xref--display-position): Use xref--goto-char.
11357         * lisp/progmodes/project.el: Add a paragraph to the front matter.
11359 2015-08-04  David Kastrup  <dak@gnu.org>
11361         * lisp/vc/emerge.el (emerge-show-file-name):
11362         * lisp/progmodes/vhdl-mode.el (vhdl-electric-dash)
11363         (vhdl-comment-insert, vhdl-hooked-abbrev):
11364         * lisp/progmodes/octave.el (inferior-octave-dynamic-list-input-ring):
11365         * lisp/progmodes/fortran.el (fortran-window-create-momentarily):
11366         * lisp/progmodes/ebrowse.el (ebrowse-hack-electric-buffer-menu):
11367         * lisp/progmodes/cperl-mode.el (cperl-putback-char):
11368         * lisp/obsolete/vip.el (vip-escape-to-emacs)
11369         (vip-prefix-arg-value, vip-prefix-arg-com):
11370         * lisp/obsolete/terminal.el (te-escape-extended-command-unread):
11371         * lisp/leim/quail/tibetan.el (quail-tibetan-update-translation)
11372         (quail-tibkey-update-translation):
11373         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
11374         * lisp/leim/quail/lao.el (quail-lao-update-translation):
11375         * lisp/leim/quail/japanese.el (quail-japanese-update-translation)
11376         (quail-japanese-self-insert-and-switch-to-alpha):
11377         * lisp/leim/quail/hangul.el (hangul2-input-method)
11378         (hangul3-input-method, hangul390-input-method):
11379         * lisp/language/hanja-util.el (hangul-to-hanja-char):
11380         * lisp/international/robin.el (robin-input-method):
11381         * lisp/international/quail.el (quail-start-translation)
11382         (quail-start-conversion):
11383         * lisp/gnus/gnus-art.el (gnus-article-describe-key)
11384         (gnus-article-describe-key-briefly):
11385         * lisp/eshell/em-hist.el (eshell-list-history):
11386         * lisp/term.el (term-dynamic-list-input-ring)
11387         (term-dynamic-list-completions):
11388         * lisp/subr.el (momentary-string-display):
11389         * lisp/simple.el (read-quoted-char):
11390         * lisp/pcomplete.el (pcomplete-show-completions):
11391         * lisp/kmacro.el (kmacro-repeat-on-last-key):
11392         * lisp/info.el (Info-summary):
11393         * lisp/ehelp.el (electric-help-command-loop):
11394         * lisp/ebuff-menu.el (electric-buffer-list)
11395         (Electric-buffer-menu-exit):
11396         * lisp/double.el (double-translate-key):
11397         * lisp/comint.el (comint-dynamic-list-input-ring)
11398         (comint-dynamic-list-completions): Do not overwrite preexisting
11399         contents of `unread-command-events' when putting new events into it.
11401 2015-08-04  Daniel Colascione  <dancol@dancol.org>
11403         Improve ansi-color filtering of unrecognized escape sequences
11404         * lisp/ansi-color.el (ansi-color-drop-regexp): Recognize mode-setting
11405         escape sequences.
11406         (ansi-color-filter-apply, ansi-color-apply): Filter out
11407         unrecognized escape sequences.
11409 2015-08-04  Artur Malabarba  <bruce.connor.am@gmail.com>
11411         * lisp/emacs-lisp/package.el (package-menu-mode-map): Convert menu
11412         definitions to `easy-menu-define', improve a couple to account for
11413         async, and add a couple of new commands.
11415 2015-08-03  Jürgen Hötzel  <juergen@archlinux.org>
11417         * lisp/net/tramp-cache.el (tramp-set-file-property): Fix code typo.
11419 2015-08-03  Ingo Lohmar  <i.lohmar@gmail.com>
11421         Add new 'calendar-weekend-days' option
11422         Make the days receiving the 'calendar-weekend-header' face freely
11423         customizable, as they differ by region/culture.
11424         * doc/emacs/calendar.texi (Move to Beginning or End): Document the
11425         new variable.
11426         * lisp/calendar/calendar.el (calendar-generate-month): New variable
11427         calendar-weekend-days to customize day header fontification.
11429 2015-08-03  Paul Eggert  <eggert@cs.ucla.edu>
11431         Redo text-quoting-style variable
11432         Rename help-quote-translation to text-quoting-style,
11433         and use symbols rather than characters as values.
11434         This follows suggestions along these lines by Alan Mackenzie in:
11435         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00343.html
11436         and by Drew Adams in:
11437         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00048.html
11438         * doc/lispref/help.texi (Keys in Documentation)
11439         * etc/NEWS:
11440         * lisp/cus-start.el (standard):
11441         * src/doc.c (Fsubstitute_command_keys, syms_of_doc):
11442         Document and/or implement the new behavior instead of the old.
11443         (syms_of_doc): New symbols 'grave' and 'straight'.
11445 2015-08-03  Nikolaus Rath  <Nikolaus@rath.org>
11447         nnimap.el: Use IMAP MOVE extension if available
11448         * lisp/gnus/nnimap.el (nnimap-request-move-article)
11449         (nnimap-process-expiry-targets, nnimap-split-incoming-mail):
11450         Use MOVE extension if available.
11452         nnimap.el: Explicitly ask for server capabilities
11453         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Don't assume full
11454         capabilities will be returned in the login-result.
11456 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
11458         Treat help strings like other doc strings
11459         * doc/lispref/text.texi (Special Properties), etc/NEWS: Document this.
11460         * lisp/epa.el (epa--select-keys): Remove no-longer-needed calls to
11461         substitute-command-keys.
11462         * src/keyboard.c (show_help_echo, parse_menu_item): Call
11463         substitute-command-keys on the help string before displaying it.
11465         Also mention "curly quotes"
11466         See Drew Adams's email in:
11467         http://lists.gnu.org/archive/html/emacs-devel/2015-08/msg00040.html
11468         * doc/lispref/help.texi (Keys in Documentation):
11469         Add index entry "curly quotes".
11470         * etc/NEWS: Use the phrase "curly quotes" too.
11472         ede-proj-target-makefile docstring tweaks
11473         * lisp/cedet/ede/proj.el (ede-proj-target-makefile):
11474         Consistently use "all:" to describe the all: target,
11475         replacing three different and confusingly-quoted usages.
11477 2015-08-02  Evgeny Fraimovitch  <johnlen7@gmail.com>  (tiny change)
11479         Don't abort emacsclientw when -a was specified
11480         * lib-src/emacsclient.c (set_tcp_socket) [WINDOWSNT]: Don't error
11481         out if we are in emacsclientw and -a was specified.
11483 2015-08-02  Eli Zaretskii  <eliz@gnu.org>
11485         Fix handling of 1st keystroke on MS-Windows
11486         * src/w32fns.c (globals_of_w32fns): Initialize after_deadkey to -1.
11487         This is needed to correctly handle the session's first keystroke,
11488         if it has any modifiers.  (Bug#19994)
11490 2015-08-02  Paul Eggert  <eggert@cs.ucla.edu>
11492         Substitute some customization etc. doc strings
11493         These changes apply substitute-command-keys to some
11494         doc strings that were going through untranslated
11495         when creating customization or other widgets.
11496         * lisp/cus-edit.el (custom-group-value-create):
11497         * lisp/wid-edit.el (widget-default-create):
11498         (widget-push-button-value-create):
11499         Treat the widget tag as a doc string.
11500         * lisp/emacs-lisp/cl-extra.el (cl--describe-class-slot):
11501         Treat the :documentation value as a doc string.
11502         * lisp/wid-edit.el (widget-choose):
11503         Treat the choice names as doc strings.
11504         (widget-default-create): Treat the :doc value as a doc string.
11505         (widget-toggle-value-create): Treat the :on and :off values
11506         as doc strings.
11507         (widget-documentation-string-value-create):
11508         Substitute the doc string.
11510 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
11512         Add a second argument to project-ignores
11513         * lisp/progmodes/project.el (project-ignores): Add a second
11514         argument DIR.
11515         * lisp/progmodes/project.el (project-ignores): Only include the VC
11516         ignores if DIR is the VC root.
11517         * lisp/progmodes/xref.el (xref-find-regexp): Update accordingly.
11519 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
11521         Prevent incorrect display when 'line-spacing' variable is set
11522         * src/xdisp.c (try_window_id): Give up this optimization if the
11523         buffer has its 'line-spacing' variable set non-nil.
11525 2015-08-01  Dmitry Gutov  <dgutov@yandex.ru>
11527         Don't pass NOVISIT to find-file
11528         * lisp/progmodes/etags.el (next-file):
11529         Don't pass NOVISIT to find-file (bug#21175).
11531         Ignore buffer restriction for tags-loop-eval
11532         * lisp/progmodes/etags.el (tags-loop-continue): Ignore buffer
11533         restriction (bug#21167).
11535 2015-08-01  Eli Zaretskii  <eliz@gnu.org>
11537         Fix a thinko in 'ffap-gopher-at-point'
11538         * lisp/ffap.el (ffap-gopher-at-point): Fix last change.  (Bug#21168)
11540         Honor 'line-spacing' for empty lines
11541         * src/xdisp.c (append_space_for_newline): Honor 'line-height'
11542         property and 'line-spacing' frame parameter or variable or
11543         property for empty lines, by doing the same processing as in
11544         x_produce_glyph for newline characters.  (Bug#21165)
11546 2015-08-01  Paul Eggert  <eggert@cs.ucla.edu>
11548         Simplify by assuming C99 integer division
11549         * src/floatfns.c (ceiling2, floor2, truncate2):
11550         Assume C99 (i.e., Fortran) semantics for integer division.
11551         This simplifies the code.
11553 2015-07-31  Paul Eggert  <eggert@cs.ucla.edu>
11555         Don't overflow if computing approximate percentage
11556         * lisp/align.el (align-region):
11557         * lisp/cedet/semantic.el (semantic-repeat-parse-whole-stream):
11558         * lisp/cedet/semantic/wisent.el (wisent-parse-region):
11559         * lisp/cus-edit.el (custom-buffer-create-internal):
11560         * lisp/emacs-lisp/checkdoc.el (checkdoc-interactive-ispell-loop)
11561         (checkdoc-message-interactive-ispell-loop, checkdoc-next-error)
11562         (checkdoc-next-message-error):
11563         * lisp/emacs-lisp/eieio-opt.el (eieio-display-method-list):
11564         * lisp/epa.el (epa-progress-callback-function):
11565         * lisp/erc/erc-dcc.el (erc-dcc-do-LIST-command):
11566         * lisp/ffap.el (ffap-menu-rescan):
11567         * lisp/gnus/nnbabyl.el (nnbabyl-retrieve-headers):
11568         * lisp/gnus/nndiary.el (nndiary-retrieve-headers):
11569         * lisp/gnus/nneething.el (nneething-retrieve-headers):
11570         * lisp/gnus/nnmbox.el (nnmbox-retrieve-headers):
11571         * lisp/gnus/nnmh.el (nnmh-retrieve-headers):
11572         * lisp/gnus/nnml.el (nnml-retrieve-headers):
11573         * lisp/gnus/nnspool.el (nnspool-retrieve-headers):
11574         * lisp/gnus/nntp.el (nntp-retrieve-headers)
11575         (nntp-retrieve-articles):
11576         * lisp/imenu.el (imenu--relative-position):
11577         * lisp/international/ja-dic-cnv.el (skkdic-collect-okuri-nasi)
11578         (skkdic-convert-okuri-nasi):
11579         * lisp/net/ange-ftp.el (ange-ftp-process-handle-hash):
11580         * lisp/nxml/rng-valid.el (rng-compute-mode-line-string):
11581         * lisp/org/org-list.el (org-update-checkbox-count):
11582         * lisp/org/org.el (org-table-map-tables)
11583         (org-update-parent-todo-statistics):
11584         * lisp/play/decipher.el (decipher-insert-frequency-counts)
11585         (decipher-analyze-buffer):
11586         * lisp/profiler.el (profiler-format-percent):
11587         * lisp/progmodes/cc-cmds.el (c-progress-update):
11588         * lisp/progmodes/cpp.el (cpp-highlight-buffer):
11589         * lisp/progmodes/idlwave.el (idlwave-convert-xml-system-routine-info)
11590         (idlwave-list-load-path-shadows):
11591         * lisp/progmodes/opascal.el (opascal-step-progress):
11592         * lisp/progmodes/vhdl-mode.el (vhdl-update-progress-info)
11593         (vhdl-scan-directory-contents):
11594         * lisp/textmodes/bibtex.el (bibtex-progress-message):
11595         * lisp/textmodes/flyspell.el (flyspell-small-region)
11596         (flyspell-external-point-words):
11597         * lisp/textmodes/table.el (table-recognize):
11598         Prefer (floor (* 100.0 NUMERATOR) DENOMINATOR) when calculating
11599         progress-report percentages and the like.  This avoids problems
11600         if (* 100 NUMERATOR) would overflow.
11601         * lisp/gnus/gnus-registry.el (gnus-registry-import-eld):
11602         * lisp/gnus/registry.el (registry-reindex):
11603         Use (* 100.0 ...) rather than (* 100 ...) to avoid int overflow issues.
11604         * lisp/descr-text.el (describe-char):
11605         * lisp/org/org-colview.el (org-nofm-to-completion):
11606         * lisp/ps-print.el (ps-plot):
11607         * lisp/simple.el (what-cursor-position):
11608         Prefer (round (* 100.0 NUMERATOR) DENOMINATOR) to a
11609         more-complicated and less-accurate approximation.
11611         Fix some int overflows in profiler.c
11612         * src/profiler.c (make_log): Make args EMACS_INT, not int,
11613         to avoid unwanted behavior on 'int' overflow.
11614         (make_log, evict_lower_half, record_backtrace):
11615         Use ptrdiff_t, not int, for object indexes.
11617         Port to pedantic memcpy
11618         * src/keyboard.c (menu_bar_items, tool_bar_items):
11619         * src/xrdb.c (magic_db):
11620         Port to pedantic memcpy implementations that reject memcpy (0, 0, 0).
11622         Merge from gnulib
11623         This incorporates:
11624         2015-07-29 time_rz: port to pedantic memcpy
11625         * lib/time_rz.c: Copy from gnulib.
11627 2015-07-31  Artur Malabarba  <bruce.connor.am@gmail.com>
11629         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
11630         When updating the very last entry, tabulated-list-print would
11631         erase it and then try to look at the next one (which obviously
11632         isn't there).
11634 2015-07-31  Eli Zaretskii  <eliz@gnu.org>
11636         Allow to use the old key processing code on MS-Windows
11637         * src/w32fns.c (syms_of_w32fns) <w32-use-fallback-wm-chars-method>:
11638         New variable.
11639         (w32_wnd_proc): Use it to invoke the old code that processed
11640         character keys, as fallback, when this variable is non-nil.
11641         Fix typos in comments.  (Bug#19994)
11643 2015-07-31  Ilya Zakharevich  <ilya@math.berkeley.edu>
11645         Improve handling of Unicode keyboard input on MS-Windows
11646         * src/w32fns.c (get_wm_chars, deliver_wm_chars): New functions.
11647         (FPRINTF_WM_CHARS) [DEBUG_WM_CHARS]: New macro for debugging.
11648         (w32_wnd_proc): Call deliver_wm_chars to process non-special keys
11649         upon receiving WM_KEYDOWN or WM_SYSKEYDOWN messages.  If that is
11650         successful, don't call TranslateMessage.  (Bug#19994)
11652 2015-07-30  Dmitry Gutov  <dgutov@yandex.ru>
11654         Fix default-directory in changeset diffs after vc-print-log
11655         * lisp/vc/log-view.el (log-view-diff-common): Move the
11656         revision-granularity check back into log-view-diff-changeset.
11657         (log-view-diff-changeset): Bind default-directory to the current
11658         VC root.
11660         Rename project-directories to project-roots
11661         * lisp/progmodes/project.el (project-search-path-function)
11662         (project-search-path): Update the docstring.
11663         (project-directories): Rename to `project-roots', update all
11664         callers and implementations accordingly.
11665         (project-root): Remove.
11666         * lisp/progmodes/xref.el (xref-find-regexp): Use * instead of *.*
11667         as the default file mask.
11669 2015-07-30  Eli Zaretskii  <eliz@gnu.org>
11671         Support long URLs in w32-shell-execute
11672         * src/w32fns.c (Fw32_shell_execute): Don't use filename_to_utf16
11673         and filename_to_ansi to convert the DOCUMENT argument, as it could
11674         be a URL that is not limited to MAX_PATH characters.  Instead, use
11675         MultiByteToWideChar directly, and allocate heap storage as
11676         required to accommodate the converted string.  Likewise with
11677         non-Unicode operation.  Ensure OPERATION is null-terminated, even
11678         if it is longer than 32K bytes.  (Bug#21158)
11680 2015-07-30  Stephen Leake  <stephen_leake@stephe-leake.org>
11682         * lisp/vc/vc-mtn.el (vc-mtn-find-revision): Handle null rev.
11684 2015-07-29  Stephen Leake  <stephen_leake@stephe-leake.org>
11686         Add docs for display-buffer action display-buffer-use-some-frame
11687         * lisp/window.el (display-buffer-use-some-frame): Improve doc string.
11688         * doc/lispref/windows.texi (Display Action Functions):
11689         Add display-buffer-use-some-frame.
11690         * etc/NEWS: Mention display-buffer-use-some-frame.
11692         Add display-buffer action display-buffer-use-some-frame
11693         * lisp/window.el (display-buffer-use-some-frame): New.
11695         Handle vc-mtn error more gently
11696         * lisp/vc/vc-mtn.el (vc-mtn-mode-line-string): Return "" when
11697         branch is nil.
11699 2015-07-29  Michael Albinus  <michael.albinus@gmx.de>
11701         Fix Tramp problems with multihops, and nc
11702         * lisp/net/tramp-cache.el (tramp-get-file-property)
11703         (tramp-set-file-property, tramp-flush-file-property)
11704         (tramp-get-connection-property, tramp-set-connection-property)
11705         (tramp-flush-connection-property): Remove hop from vector.
11706         * lisp/net/tramp-gw.el (tramp-gw-process-filter): Ignore errors.
11707         * lisp/net/tramp-sh.el (tramp-methods) <nc>: Separate STDERR.
11708         (tramp-do-copy-or-rename-file-out-of-band): Increase timeout of
11709         netstat to 60".
11710         (tramp-sh-handle-start-file-process): Do not show hops in prompt.
11711         * lisp/net/tramp.el (tramp-handle-file-name-as-directory)
11712         (tramp-handle-file-name-directory, tramp-handle-file-remote-p):
11713         Keep hop in result.
11714         * test/automated/tramp-tests.el (tramp-test02-file-name-dissect):
11715         Add hop tests.
11717 2015-07-29  Eli Zaretskii  <eliz@gnu.org>
11719         Resurrect highlighting of repeated words by Flyspell Mode
11720         * lisp/textmodes/flyspell.el (flyspell-word): Leave some non-word
11721         characters between point and the doublon candidate, so that
11722         flyspell-word-search-backward finds it.  (Bug#21157)
11724         Fix redisplay of large images on expose events
11725         * src/xdisp.c (expose_window, expose_area): Avoid comparisons
11726         between signed negative values and unsigned values.  This
11727         prevented redisplay on expose events when the window showed a very
11728         large image.
11730 2015-07-29  Paul Eggert  <eggert@cs.ucla.edu>
11732         Remove unnecessary stack overflow dependency
11733         * configure.ac (HAVE_STACK_OVERFLOW_HANDLING):
11734         Don't worry about $ac_cv_header_sys_resource_h and
11735         $ac_cv_func_getrlimit, as they're no longer needed for this.
11736         Problem reported by Eli Zaretskii in:
11737         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00443.html
11739 2015-07-28  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
11741         Pacify compilation -Wincompatible-pointer-types warnings
11742         * src/w32proc.c (Fw32_get_codepage_charset): Avoid compilation
11743         warning.
11744         (CompareStringW_Proc): New typedef.
11745         (w32_compare_strings): Use it, to pacify compiler warnings under
11746         "-Wincompatible-pointer-types".
11747         * src/w32fns.c (GetDiskFreeSpaceExW_Proc)
11748         (GetDiskFreeSpaceExA_Proc): New typedefs.
11749         (Ffile_system_info): Use them, to pacify compiler warnings under
11750         "-Wincompatible-pointer-types".
11752 2015-07-28  Paul Eggert  <eggert@cs.ucla.edu>
11754         Fix subscript error in calculate_direct_scrolling
11755         Use slightly-longer cost vectors.  Without this change,
11756         calculate_direct_scrolling can have a subscript violation when
11757         FRAME_LINES (frame) <= delta.
11758         * src/scroll.c (calculate_scrolling, calculate_direct_scrolling)
11759         (line_ins_del, do_line_insertion_deletion_costs):
11760         Allocate and use slightly-larger cost vectors, ones based on
11761         FRAME_TOTAL_LINES instead of FRAME_LINES.
11763         Fix uninitalized value in encode_coding_object
11764         * src/coding.c (encode_coding_object): Also initialize
11765         coding->src_pos and coding->src_pos_byte when NILP (src_object).
11766         This avoids later use of uninitialized storage.
11768 2015-07-27  Xue Fuqiao  <xfq.free@gmail.com>
11770         * doc/lispref/variables.texi (Variable Aliases): Typo fix.
11771         (Bug#21141)
11773 2015-07-27  Paul Eggert  <eggert@cs.ucla.edu>
11775         Merge from gnulib
11776         This incorporates:
11777         2015-07-27 time_rz: port better to MinGW
11778         2015-07-27 time: port __need_time_t to MinGW
11779         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11780         * lib/strftime.c, lib/time.in.h, lib/time_rz.c: Copy from gnulib.
11781         * lib/time-internal.h: New file, from gnulib.
11783 2015-07-27  Eli Zaretskii  <eliz@gnu.org>
11785         Handle NULL pointers in w32heap.c allocation routines
11786         * src/w32heap.c (FREEABLE_P): Consider a NULL pointer "not
11787         freeable".
11788         (realloc_after_dump, realloc_before_dump, free_before_dump):
11789         Handle NULL pointers gracefully, as Emacs now seems to expect that.
11791         Fix Cairo build without PNG
11792         * src/image.c: Define PNG function when USE_CAIRO is defined, even
11793         if HAVE_PNG is not.  (Bug#21133)
11795         MS-Windows follow-up for recent TZ-related changes
11796         * nt/mingw-cfg.site (ac_cv_header_pthread_h)
11797         (gl_cv_sys_struct_timespec_in_pthread_h): Force to "no", to avoid
11798         picking up 'struct timespec' from pthread.h, if it is installed on
11799         the user's system.  We want either the definitions from MinGW
11800         system headers, if available, or the Gnulib replacements if not.
11801         * nt/inc/ms-w32.h <struct timespec>: Don't define, as we now use
11802         lib/time.h.
11803         * lib/time.in.h: Don't let __need_* symbols affect what happens on
11804         MinGW.  These symbols are defined by MinGW system headers, but we
11805         don't want that to affect whether Gnulib portions of the header
11806         are or aren't used.
11808 2015-07-26  Paul Eggert  <eggert@cs.ucla.edu>
11810         * src/ftfont.c (ftfont_close): Add comment re Bug#20890.
11812         New optional ZONE arg for format-time-string etc.
11813         This simplifies time conversions in other time zones.
11814         It also prevents display-time-world tampering with TZ (Bug#21020).
11815         * admin/admin.el (add-release-logs):
11816         Use improved add-log-time-format API.
11817         * admin/merge-gnulib (GNULIB_MODULES): Add time_rz, timegm.
11818         (GNULIB_TOOL_FLAGS): Avoid flexmember, setenv, unsetenv.
11819         * configure.ac (tzalloc): Remove test for this, since
11820         Emacs no longer uses HAVE_TZALLOC directly.
11821         * doc/lispref/os.texi (Time of Day, Time Conversion)
11822         (Time Parsing):
11823         * etc/NEWS: Document the new behavior.
11824         Merge from gnulib, incorporating:
11825         2015-07-25 strftime: fix newly-introduced bug on Solaris
11826         2015-07-23 fprintftime, strftime: use timezone_t args
11827         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
11828         * lib/strftime.c, lib/strftime.h, lib/time.in.h, m4/sys_time_h.m4:
11829         * m4/time_h.m4:
11830         Update from gnulib.
11831         * lib/time_rz.c, lib/timegm.c, m4/time_rz.m4, m4/timegm.m4:
11832         New files from gnulib.
11833         * lisp/time-stamp.el (time-stamp-string):
11834         * lisp/time.el (display-time-world-list)
11835         (display-time-world-display):
11836         Use new API, with time zone arg.
11837         * lisp/time.el (display-time-world-display):
11838         Fix race when current-time advances while we're running.
11839         * lisp/vc/add-log.el (add-log-iso8601-time-zone)
11840         (add-log-iso8601-time-string): Accept optional time zone arg.
11841         * lisp/vc/add-log.el (add-change-log-entry):
11842         * lisp/vc/log-edit.el (log-edit-changelog-ours-p): Use new arg.
11843         * nt/gnulib.mk: Propagate lib/gnulib.mk changes here.
11844         Add rules for the time module, since they're now needed
11845         for tzalloc etc.
11846         * src/conf_post.h (getenv_TZ, setenv_TZ): New macros.
11847         (emacs_getenv_TZ, emacs_setenv_TZ): New decls.
11848         * src/editfns.c: Include errno.h.
11849         (set_time_zone_rule): Omit unnecessary forward decl.
11850         (initial_tz): Remove, replacing with ...
11851         (local_tz, wall_clock_tz, utc_tz): New static vars and constants.
11852         (tzeqlen): New constant; prefer it to (sizeof "TZ=" - 1).
11853         (emacs_localtime_rz, emacs_mktime_z, xtzalloc, xtzfree)
11854         (tzlookup): New static functions.
11855         (init_editfns): New arg DUMPING.  All uses changed.
11856         (init_editfns): Omit most initialization if dumping, not if
11857         !initialized.  Initialize wall_clock_tz and local_tz.
11858         (emacs_nmemftime, format_time_string): Time zone argument can now
11859         be any time zone, not just a boolean for UTC or local time.  All
11860         callers changed.
11861         (Fformat_time_string, Fencode_time, Fcurrent_time_string)
11862         (Fcurrent_time_zone): New optional arg ZONE.
11863         (Fdecode_time, Fset_time_zone_rule): ZONE arg can now also take
11864         the same form as with the other new additions.
11865         (decode_time_zone): Remove; no longer needed.
11866         (tzvalbuf): Now file-scope.
11867         (emacs_getenv_TZ, emacs_setenv_TZ): New functions.
11868         (syms_of_editfns): Define Qwall.
11869         * src/editfns.c (mktime_z) [!HAVE_TZALLOC]:
11870         * src/systime.h (mktime_z, timezone_t, tzalloc, tzfree)
11871         [!HAVE_TZALLOC]:
11872         Remove; now supplied by gnulib.
11873         * src/emacs.c (main):
11874         * src/lisp.h (init_editfns): Adjust to init_editfns API change.
11876 2015-07-26  Shigeru Fukaya  <shigeru.fukaya@gmail.com>
11878         Fix infinite loop in delete-consecutive-dups
11879         * lisp/subr.el (delete-consecutive-dups): Work even if the last
11880         element is nil (Bug#20588).  Avoid rescan of a circular list in
11881         deletion of last element.
11883 2015-07-26  Martin Rudalics  <rudalics@gmx.at>
11885         Have `x-frame-geometry' return nil for terminal and initial
11886         frames (Bug#21132)
11887         * src/nsfns.m (Fx_frame_geometry):
11888         * src/xfns.c (Fx_frame_geometry): Return nil for initial and
11889         terminal frames.
11890         * src/w32fns.c (Fw32_frame_menu_bar_size, Fw32_frame_rect)
11891         (Fx_frame_geometry): Return nil for terminal frames
11893 2015-07-26  HOSOYA Kei  <hosoyakei.free@gmail.com>  (tiny change)
11895         * etc/tutorials/TUTORIAL.ja: Improve translation.
11897 2015-07-25  Eli Zaretskii  <eliz@gnu.org>
11899         Avoid crashes when w32 GUI functions are called in -batch
11900         * src/w32fns.c (Fx_frame_geometry, Fw32_frame_rect)
11901         (Fw32_frame_menu_bar_size, Fw32_send_sys_command): Don't call
11902         FRAME_W32_WINDOW for initial frame.  (Bug#21132)
11904         Fix flyspell-check-previous-highlighted-word
11905         * lisp/textmodes/flyspell.el
11906         (flyspell-check-previous-highlighted-word): Really accept a
11907         numeric argument, as the doc string describes.  Fix an off-by-one
11908         error in looking up overlays, so invocation with point immediately
11909         after a word would check that word.  Clarify the doc string as
11910         Suggested by N. Jackson <nljlistbox2@gmail.com>.  (Bug#21129)
11912 2015-07-24  Michael Albinus  <michael.albinus@gmx.de>
11914         Minor cleanup in tramp-tests.el
11915         * test/automated/tramp-tests.el (tramp-test31-*, tramp-test32-*):
11916         Implement using the documented interface
11917         `tramp-connection-properties', rather than with internal functions.
11919 2015-07-24  Harald Hanche-Olsen  <hanche@math.ntnu.no>  (tiny change)
11921         Pass lambdas to `skeleton-read'
11922         * lisp/skeleton.el (skeleton-read): Allow PROMPT to be a function.
11923         * lisp/textmodes/sgml-mode.el (sgml-attributes, sgml-value): Pass
11924         lambdas to `skeleton-read' (bug#20386).
11926 2015-07-24  Eli Zaretskii  <eliz@gnu.org>
11928         * INSTALL (DETAILED BUILDING AND INSTALLATION):
11929         Mention --without-imagemagick.
11931         Don't require GUI frames and mouse for Flyspell menus
11932         * lisp/textmodes/flyspell.el (flyspell-correct-word-before-point)
11933         (flyspell-emacs-popup): Require neither a GUI frame nor mouse
11934         support, since pop-up menus work with text terminals and can be
11935         controlled via the keyboard.
11937         Improve documentation of Flyspell commands
11938         * doc/emacs/fixit.texi (Spelling): Mention Flyspell commands that
11939         can be invoked via the keyboard.  Mention those commands by name
11940         and add them to the fn index.  (Bug#21125)
11942 2015-07-23  Michael Albinus  <michael.albinus@gmx.de>
11944         Fix some Tramp problems with HP-UX
11945         * lisp/net/tramp-sh.el (tramp-open-connection-setup-interactive-shell):
11946         Add "tab0" to stty call.
11947         * test/automated/tramp-tests.el (tramp-persistency-file-name):
11948         Set to nil.
11949         (tramp--test-hpux-p): New defun.
11950         (tramp--test-utf8): Use it.
11952 2015-07-22  Glenn Morris  <rgm@gnu.org>
11954         * build-aux/update-subdirs: Put "no-update-autoloads: t" in output.
11956 2015-07-22  Eli Zaretskii  <eliz@gnu.org>
11958         Fix point positioning in ffap-next-guess
11959         * lisp/ffap.el (ffap-url-at-point): Set ffap-string-at-point-region,
11960         as our callers expect.  This was clobbered as part of fixing
11961         bug#5673.  (Bug#21107)
11962         (ffap-gopher-at-point): Set ffap-string-at-point-region.
11964 2015-07-22  Martin Rudalics  <rudalics@gmx.at>
11966         * lisp/window.el (even-window-sizes): Fix customization type.
11968         Optionally even widths of `display-buffer' windows.  (Bug#21100)
11969         * lisp/window.el (quit-restore-window): Restore width if
11970         requested.
11971         (display-buffer-record-window): Record width when window is
11972         reused and horizontally combined.
11973         (even-window-sizes): New option to allow evening window widths.
11974         (even-window-heights): Defalias to `even-window-sizes'.
11975         (window--even-window-heights): Rename to
11976         `window--even-window-sizes'.  Handle side-by-side windows.
11977         (display-buffer-use-some-window): Call `window--even-window-sizes'
11978         instead of `window--even-window-heights'.
11979         * lisp/help.el (resize-temp-buffer-window): Fix indentation.
11980         * doc/lispref/windows.texi (Choosing Window Options): Describe
11981         `even-window-sizes'.
11982         (Coordinates and Windows): Fix typo.
11984 2015-07-22  Stephen Leake  <stephen_leake@stephe-leake.org>
11986         Add file name to autoload error messages
11987         * lisp/emacs-lisp/autoload.el (autoload-save-buffers):
11988         Add condition-case to add file name to error message.
11990 2015-07-22  Michael Albinus  <michael.albinus@gmx.de>
11992         * lisp/net/tramp-sh.el (tramp-ssh-controlmaster-options):
11993         Use 0.0.0.1 as test host.
11995 2015-07-21  Stefan Monnier  <monnier@iro.umontreal.ca>
11997         (advice--called-interactively-skip): Fix inf-loop (bug#21083)
11998         * lisp/emacs-lisp/nadvice.el (advice--called-interactively-skip):
11999         Fix inf-loop (bug#21083).
12001 2015-07-21  Glenn Morris  <rgm@gnu.org>
12003         * test/automated/package-test.el (package-test-signed):
12004         Update for recent changes.
12006         * test/automated/elisp-mode-tests.el
12007         (elisp-xref-finds-both-function-and-variable)
12008         (elisp-xref-finds-only-function-for-minor-mode):
12009         Update for recent xref name changes.
12011 2015-07-21  Dmitry Gutov  <dgutov@yandex.ru>
12013         Make eldoc timer non-repeatable
12014         * lisp/emacs-lisp/eldoc.el (eldoc-schedule-timer): Make the timer
12015         non-repeatable.  Since it's on post-command hook, that just wasted
12016         CPU cycles.
12018 2015-07-21  Michael Albinus  <michael.albinus@gmx.de>
12020         Mention `tramp-connection-properties' in NEWS
12022         Sync with Tramp repository
12023         * doc/misc/tramp.texi (Configuration): Note, that Tramp must be
12024         required prior changing its configuration.
12025         (Connection caching, Predefined connection information)
12026         (Remote shell setup): Fix typos.
12027         (Predefined connection information): Describe, how to overwrite
12028         parameters of `tramp-methods'.
12029         (Remote programs, Remote processes, Traces and Profiles):
12030         Simplify example.
12031         (Remote programs): Remove superfluous comment.
12032         * doc/misc/trampver.texi: Update release number.
12033         * lisp/net/tramp-cache.el (tramp-connection-properties):
12034         Adapt docstring.
12035         * lisp/net/tramp-gvfs.el (tramp-gvfs-do-copy-or-rename-file): New defun.
12036         (tramp-gvfs-handle-copy-file, tramp-gvfs-handle-rename-file): Use it.
12037         (tramp-gvfs-handle-make-directory): Reimplement PARENTS handling,
12038         "gvfs-mkdir -p ..." does not work robust.
12039         (tramp-gvfs-maybe-open-connection):
12040         Adapt `tramp-get-method-parameter' call.
12041         * lisp/net/tramp-sh.el (tramp-methods):
12042         Add `tramp-remote-shell-login' parameter where it fits.
12043         (tramp-get-remote-path): Use it.
12044         (tramp-make-copy-program-file-name): Fix quoting for "psftp" method.
12045         (all): Adapt `tramp-get-method-parameter' calls.
12046         * lisp/net/tramp.el (tramp-methods): Adapt docstring.
12047         (tramp-get-method-parameter): Replace argument METHOD by VEC.
12048         Check also for hits in `tramp-connection-properties'.  Adapt docstring.
12049         (tramp-get-remote-tmpdir): Cache only the local name of tmpdir.
12050         (all): Adapt `tramp-get-method-parameter' calls.
12051         * lisp/net/trampver.el Update release number.
12052         * test/automated/tramp-tests.el (tramp--instrument-test-case):
12053         Add "^make-symbolic-link not supported$" to `debug-ignored-errors'.
12054         (tramp-test13-make-directory, tramp--test-adb-p)
12055         (tramp--test-smb-or-windows-nt-p): Simplify.
12056         (tramp--test-ftp-p, tramp--test-gvfs-p): New defuns.
12057         (tramp--test-special-characters): Fix docstring.  Add gvfs and
12058         ftp tests.
12059         (tramp--test-utf8): Fix docstring.
12061 2015-07-20  Dmitry Gutov  <dgutov@yandex.ru>
12063         Add new xref-query-replace command
12064         * lisp/progmodes/xref.el (xref--match-buffer-bounds):
12065         New function, extracted from xref-pulse-momentarily.
12066         (xref-query-replace): New command.
12067         (xref--query-replace-1): New helper function.
12068         (xref--xref-buffer-mode-map): Add `r' binding.
12070 2015-07-20  Paul Eggert  <eggert@cs.ucla.edu>
12072         Simplify icalendar decoding of Z dates
12073         * lisp/calendar/icalendar.el (icalendar--decode-isodatetime):
12074         Simplify calculation of time strings with trailing "Z".
12076 2015-07-19  Dmitry Gutov  <dgutov@yandex.ru>
12078         Do not corrupt grep-find-ignored-files
12079         * lisp/progmodes/project.el (project-ignores): Change the order of
12080         the arguments to nconc, in order not to corrupt grep-find-ignored-files.
12082         Add xref-match-item, and use it
12083         * lisp/progmodes/xref.el (xref-match-bounds): New generic function.
12084         (xref-file-location): Add reader for the column slot.
12085         (xref-match-item): New class.
12086         (xref-match-bounds): A method implementation for it.
12087         (xref-make-match): New constructor function.
12088         (xref--current-item): New private variable.
12089         (xref-pulse-momentarily): Use it.
12090         (xref--pop-to-location): Change the first argument to an xref
12091         item, instead of location, bind xref--current-item.
12092         Update all callers.
12093         (xref-next-line, xref-prev-line, xref--next-error-function)
12094         (xref--mouse-2): Look for the property `xref-item',
12095         instead of `xref-location'.
12096         (xref--item-at-point): Likewise.  This function replaces
12097         `xref-location-at-point'.  Update all callers.
12098         (xref--insert-xrefs): Add the `xref-item' text property, instead
12099         of `xref-location'.
12100         (xref--collect-match): Use xref-make-match.
12102         * lisp/progmodes/xref.el (xref-item): Rename from `xref--xref'.
12103         Update all references.
12105         * lisp/progmodes/xref.el (xref--xref): Rename the `description'
12106         slot to `summary'.
12108         vc-hg: Perform the print-log call asynchronously
12109         * lisp/vc/vc-hg.el (vc-hg-print-log): Perform the call
12110         asynchronously (bug#21067).
12112         Add xref-after-jump-hook and xref-after-return-hook
12113         * lisp/progmodes/xref.el (xref-after-jump-hook)
12114         (xref-after-return-hook): New hooks.
12115         (xref-pulse-on-jump): Remove, in favor of the above.
12116         (xref-pulse-momentarily): Rename from xref--maybe-pulse.
12117         (xref--pop-to-location, xref--display-position)
12118         (xref-pop-marker-stack): Use the new hooks, as requested in
12119         http://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00213.html
12121 2015-07-19  Bozhidar Batsov  <bozhidar@batsov.com>
12123         * lisp/progmodes/js.el (js-mode): Correct the lighter.
12125 2015-07-19  Leo Liu  <sdl.web@gmail.com>
12127         Fix a bug in cfengine3-mode
12128         * lisp/progmodes/cfengine.el (cfengine3-mode): Handle nil
12129         eldoc-documentation-function.
12131 2015-07-18  Julien Danjou  <julien@danjou.info>
12133         sieve-mode: support "body" test command
12134         * lisp/gnus/sieve-mode.el (sieve-font-lock-keywords):
12135         Add missing "body" test command.
12137 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
12139         Fix info-apropos when the default encoding is Latin-N
12140         * lisp/info.el (Info-find-node-2): Reset the buffer's encoding to
12141         'undecided', so that it is set to the encoding of the Info file we
12142         are about to insert.  Otherwise, 'info-apropos' will fail to find
12143         some index nodes in some UTF-8 encoded files, if the buffer's
12144         previous encoding is Latin-N or some such.
12146 2015-07-18  Ivan Andrus  <darthandrus@gmail.com>
12148         * lisp/epg.el (epg--start): Check that gpgconf can be found
12149         before calling it.
12151         Expose more file types to OS X that Emacs understands
12152         * nextstep/Cocoa/Emacs.base/Contents/Info.plist: Add editor role for
12153         sty, dtx, json, and org files.  Export UTIs for el, elc, and org files.
12155 2015-07-18  Eli Zaretskii  <eliz@gnu.org>
12157         Fix visual-order cursor movement when lines are truncated
12158         * src/xdisp.c (Fmove_point_visually): When lines are truncated,
12159         simulate display in a window of infinite width, to allow move_it_*
12160         functions reach positions outside of normal window dimensions.
12161         Remove code that tried to handle a subset of these situations by
12162         manual iteration of buffer text.  (Bug#17777)
12164         Fix following Info cross-references to anchors
12165         * lisp/info.el (Info-read-subfile): Add to the returned value the
12166         length of subfile preamble, after converting it to file's byte
12167         offset, as expected by the caller.  Use bufferpos-to-filepos.
12168         (Info-find-node-2): If searching for a node with a
12169         1000-character slop fails, try again with a 10000-character slop,
12170         to account for known bugs in Texinfo 5.0 and 5.1.  (Bug#21055)
12171         * lisp/international/mule-util.el (bufferpos-to-filepos): New
12172         function.
12173         * etc/NEWS: Mention bufferpos-to-filepos.
12175         Fix scrolling backwards on TTY frames under scroll-conservatively
12176         * src/xdisp.c (move_it_vertically_backward): Fix off-by-one error
12177         in moving backwards on TTY frames.  (Bug#21080)
12179 2015-07-17  Dmitry Gutov  <dgutov@yandex.ru>
12181         Consider a jsdoc tag to be a beginning of a paragraph as well
12182         * lisp/progmodes/js.el (js-mode): Change c-paragraph-start to
12183         consider a jsdoc tag to be a beginning of a paragraph as well.
12185 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12187         * lisp/emacs-lisp/package.el: Fix warnings.
12189         * lisp/emacs-lisp/package.el (package-buffer-info):
12190         Add author and maintainers to `package-buffer-info'.
12192         * lisp/emacs-lisp/package.el: Many small changes.
12193         Replace all instances of 'face with 'font-lock-face.
12194         (describe-package-1): Improve some strings and move the summary
12195         up the list.
12196         (package-install-file): Update docstring.
12197         (package-menu-hide-package): Bind to `H'.
12199         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
12200         Fix error handling.
12202 2015-07-17  Paul Eggert  <eggert@cs.ucla.edu>
12204         Fix hang with large yanks This should fix the bug fixed by Mike
12205         Crowe's patch in:
12206         https://lists.gnu.org/archive/html/emacs-devel/2015-07/msg00106.html
12207         A problem in this area has been reported by several users; see
12208         Bug#16737, Bug#17101, Bug#17026, Bug#17172, Bug#19320, Bug#20283.
12209         This fix differs from Mike Crowe's patch in that it should avoid a
12210         race condition that could lose SIGIO signals.  ignore_sigio dates
12211         back to the 1980s when some platforms couldn't block signals, and
12212         could only ignore them, which led to races when signals arrived
12213         while being ignored.  We shouldn't have to worry about those old
12214         platforms now.
12215         * src/dispextern.h, src/sysdep.c (ignore_sigio): Remove.
12216         * src/emacs.c (shut_down_emacs):
12217         Don't call ignore_sigio; unrequest_sigio should suffice.
12218         * src/keyboard.c (kbd_buffer_store_buffered_event):
12219         Use unrequest_sigio, not ignore_sigio.
12220         (kbd_buffer_get_event):
12221         Call request_sigio when getting the ball rolling again.
12223 2015-07-17  Artur Malabarba  <bruce.connor.am@gmail.com>
12225         * lisp/obsolete/longlines.el (longlines-search-function):
12226         Fallback on `isearch-search-fun-default'.
12228 2015-07-17  Tassilo Horn  <tsdh@gnu.org>
12230         Support @-mentions
12231         * lisp/net/rcirc.el (rcirc-completion-at-point): Support completion
12232         of mentions/messages with @nick instead of just nick.
12234 2015-07-16  Michael Albinus  <michael.albinus@gmx.de>
12236         Fix bug#20943
12237         * lisp/autorevert.el (auto-revert-handler): Do not check for
12238         `buffer-modified-p'.
12239         * lisp/files.el (buffer-stale--default-function): Check for
12240         `buffer-modified-p'.
12241         * test/automated/auto-revert-tests.el
12242         (auto-revert-test02-auto-revert-mode-dired): Adapt test.
12244 2015-07-16  Ari Roponen  <ari.roponen@gmail.com>
12246         Fix delete-dups bug on long lists
12247         * lisp/subr.el (delete-dups):
12248         Don't mistakenly keep some dups when applied to long lists.
12250 2015-07-16  Paul Eggert  <eggert@cs.ucla.edu>
12252         Better heuristic for C stack overflow
12253         Improve the heuristic for distinguishing stack overflows from
12254         other SIGSEGV causes (Bug#21004).  Corinna Vinschen explained that
12255         the getrlimit method wasn't portable to Cygwin; see:
12256         https://www.cygwin.com/ml/cygwin/2015-07/msg00092.html
12257         Corinna suggested pthread_getattr_np but this also has problems.
12258         Instead, replace the low-level system stuff with a simple
12259         heuristic based on known good stack addresses.
12260         * src/eval.c, src/lisp.h (near_C_stack_top): New function.
12261         * src/sysdep.c: Don't include <sys/resource.h>.
12262         (stack_direction): Remove.  All uses removed.
12263         (stack_overflow): New function.
12264         (handle_sigsegv): Use it instead of incorrect getrlimit heuristic.
12265         Make SEGV fatal in non-main threads.
12267 2015-07-16  Daiki Ueno  <ueno@gnu.org>
12269         epg: Automatically start pinentry server
12270         * lisp/epg-config.el (epg-gpgconf-program): New variable.
12271         * lisp/epg.el (epg--start): Call `pinentry-start' if
12272         allow-emacs-pinentry is set in ~/.gnupg/gpg-agent.conf.
12274 2015-07-15  Katsumi Yamaoka  <yamaoka@jpl.org>
12276         * lisp/gnus/nnimap.el: Fix my last bogus change.
12277         Reinstall Stefan Monnier's change that was made in
12278         <83d824bc4041332f338ad7e5e830f443535aa300>.
12280 2015-07-15  Paul Eggert  <eggert@cs.ucla.edu>
12282         Merge from gnulib
12283         This incorporates:
12284         2015-07-05 acl-permissions: Document FreeBSD ACL_TYPE_NFS4 acls
12285         2015-07-05 acl-permissions: Fix on FreeBSD
12286         2015-07-05 file-has-acl, acl-permissions: fix some more HP-UX typos
12287         * lib/acl-internal.c, lib/acl-internal.h, lib/get-permissions.c:
12288         * lib/set-permissions.c: Copy from gnulib.
12290         Port to stricter C99
12291         * src/keyboard.h (kbd_buffer_store_event_hold):
12292         Don't return a void expression.
12294 2015-07-15  Xue Fuqiao  <xfq.free@gmail.com>
12296         * doc/emacs/frames.texi (Creating Frames):
12297         Fix the command `C-x 5 m' runs.
12299 2015-07-14  Michael Albinus  <michael.albinus@gmx.de>
12301         New autorevert tests
12302         * test/automated/auto-revert-tests.el: New file.
12304 2015-07-14  Paul Eggert  <eggert@cs.ucla.edu>
12306         Clear gcprolist etc. after stack overflow
12307         After stack overflow, command_loop calls init_eval, and this needs to
12308         clear gcprolist and byte_stack_list (Bug#20996).
12309         * src/alloc.c (init_alloc):
12310         Move gcprolist and byte_stack_list initialization from here ...
12311         * src/eval.c (init_eval): ... to here.
12313 2015-07-13  Xue Fuqiao  <xfq.free@gmail.com>
12315         * doc/emacs/windows.texi (Pop Up Window): Fix the description
12316         of `C-x 4 m'.
12318 2015-07-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12320         Avoid deprecated enums in mac-ct font backend driver
12321         * src/macfont.m (mac_font_copy_default_descriptors_for_language)
12322         (mac_ctfont_get_advance_width_for_glyph)
12323         (mac_ctfont_get_bounding_rect_for_glyph): Avoid deprecated enums.
12325         Cache font family in mac-ct font backend driver
12326         * src/macfont.m (macfont_family_cache): New variable.
12327         (syms_of_macfont): Initialize it.
12328         (macfont_available_families_cache): New variable.
12329         (macfont_invalidate_family_cache, macfont_get_family_cache_if_present)
12330         (macfont_set_family_cache, macfont_invalidate_available_families_cache)
12331         (macfont_handle_font_change_notification)
12332         (macfont_init_font_change_handler)
12333         (macfont_copy_available_families_cache): New functions.
12334         (macfont_create_family_with_symbol): Use font family caches.
12335         (macfont_list, macfont_list_family):
12336         Use macfont_copy_available_families_cache instead of
12337         mac_font_create_available_families.
12339 2015-07-12  Dmitry Gutov  <dgutov@yandex.ru>
12341         Show the default value in the prompt
12342         * lisp/progmodes/xref.el: Add `M-?' binding for
12343         xref-find-references.  Declare functions `grep-read-files' and
12344         `grep-expand-template'.
12345         (xref--read-identifier): Show the default value in the prompt.
12347         * lisp/progmodes/xref.el (xref-find-regexp): When called with
12348         prefix argument, ask for file patterns to search as well.  When
12349         prompting for the directory, require an existing one.
12350         (xref-collect-matches): Add a new argument, FILES.  Use it in the
12351         above function.
12353         Add `project-ignores'
12354         * lisp/progmodes/project.el (project-ignores): New generic
12355         function, and an implementation for the VC project type.
12356         * lisp/progmodes/xref.el (xref--rgrep-command): Split, as a
12357         variant of rgrep-default-command that handles a generic list of
12358         ignores.
12359         (xref-collect-matches): Use it, and pass through to it the value
12360         of the newly added argument.
12361         (xref-find-regexp): Handle ignored paths within the project.
12362         Remove outdated comment.
12363         * lisp/vc/vc.el (vc-default-ignore-completion-table):
12364         Skip the comments and the empty lines.
12366 2015-07-12  Xue Fuqiao  <xfq.free@gmail.com>
12368         * doc/emacs/buffers.texi (Misc Buffer): Add a cross reference.
12370 2015-07-11  Eric Abrahamsen  <eric@ericabrahamsen.net>
12372         gnus-registry.el: Correct function argument order
12373         * lisp/gnus/gnus-registry.el (gnus-registry--set/remove-mark):
12374         Reverse the order of function arguments.
12376 2015-07-11  Dmitry Gutov  <dgutov@yandex.ru>
12378         Bind grep-highlight-matches to nil
12379         * lisp/progmodes/xref.el (xref-collect-matches):
12380         Bind grep-highlight-matches to nil (bug#20728).
12382 2015-07-11  Nikolaus Rath  <Nikolaus@rath.org>
12384         nnimap.el: Fix IMAP message size parsing
12385         * lisp/gnus/nnimap.el (nnimap-transform-headers):
12386         Don't assume that UID comes before RFC822.SIZE.
12388 2015-07-10  Stefan Monnier  <monnier@iro.umontreal.ca>
12390         * lisp/gnus/nnimap.el: Clean up "unused var" warnings
12391         (auth-source-creation-prompts): Declare.
12392         (nnimap-retrieve-headers, nnimap-status-message)
12393         (nnimap-request-create-group, nnimap-request-delete-group)
12394         (nnimap-close-group, nnimap-request-move-article)
12395         (nnimap-request-accept-article, nnimap-request-newgroups)
12396         (nnimap-request-post, nnimap-dummy-active-number)
12397         (nnimap-save-mail-spec, nnimap-get-groups): Add _ to unused vars.
12398         (nnimap-parse-flags): Remove unused var `p'.
12399         (nnimap-retrieve-group-data-early): Remove unused var `groups'.
12400         (nnimap-flags-to-marks): Remove unused var `totalp'.
12402 2015-07-10  Andy Moreton  <andrewjmoreton@gmail.com>  (tiny change)
12404         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 20MB.
12406 2015-07-10  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
12408         * src/macfont.m (macfont_list): Ignore font families lacking
12409         font descriptors.
12411 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
12413         Don't check the exit status, it can be misleading
12414         * lisp/progmodes/xref.el (xref-collect-matches): Don't check the
12415         exit status, it can be misleading.
12417         Introduce a Project API
12418         * lisp/progmodes/project.el: New file.
12419         * lisp/cedet/ede.el (project-try-ede): New function.
12420         (project-root): New implementation.
12421         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
12422         Set project-search-path-function.
12423         (elisp--xref-find-references): Delegate some logic to
12424         project-search-path.
12425         (elisp-search-path): New function.
12426         (elisp-xref-find): Don't implement `matches' anymore.
12427         * lisp/progmodes/etags.el: Don't implement `matches'.
12428         Delegate some logic to project-search-path.
12429         (etags-search-path): New function.
12430         * lisp/progmodes/xref.el (xref-find-function):
12431         Remove `matches' from the API.
12432         (xref-find-regexp): Move whatever common logic was in elisp and
12433         etags implementations, and search the directories returned by
12434         project-directories and project-search-path.
12436 2015-07-09  Nicolas Petton  <nicolas@petton.fr>
12438         * test/automated/map-tests.el (test-map-delete-return-value):
12439         Uncomment test.
12441         Add support for gv.el in map.el
12442         * lisp/emacs-lisp/map.el (map-elt, map-delete): Declare a gv-expander.
12443         * lisp/emacs-lisp/map.el (map-put): Refactor using `setf' and `map-elt'.
12444         * test/automated/map-tests.el: Update tests to work with the new
12445         implementations of map-elt and map-put.
12447 2015-07-09  Glenn Morris  <rgm@gnu.org>
12449         * lisp/emacs-lisp/debug.el (debug-help-follow): Use describe-symbol.
12451 2015-07-09  Dmitry Gutov  <dgutov@yandex.ru>
12453         Syntax-propertize until the end of the line first
12454         * lisp/progmodes/xref.el (xref--collect-match): Syntax-propertize
12455         until the end of the line first.
12457 2015-07-09  Xue Fuqiao  <xfq.free@gmail.com>
12459         * doc/emacs/files.texi (File Archives): Add a cross reference.
12461 2015-07-08  Nikolaus Rath  <Nikolaus@rath.org>
12463         nnimap.el: Handle plain value for nnimap-stream
12464         * lisp/gnus/nnimap.el (nnimap-open-connection-1): Always query
12465         capabilities, so that a 'plain value for the `nnimap-stream' server
12466         variable is handled correctly.
12467         * doc/misc/gnus.texi (Customizing the IMAP Connection):
12468         Document the 'plain option.
12470 2015-07-08  Leo Liu  <sdl.web@gmail.com>
12472         Fix bug in thing-at-point--bounds-of-well-formed-url
12473         * lisp/thingatpt.el (thing-at-point--bounds-of-well-formed-url): Make
12474         sure boundary contains current point.
12476 2015-07-08  Dmitry Gutov  <dgutov@yandex.ru>
12478         * lisp/progmodes/xref.el (xref-collect-matches): Use `nreverse'
12479         in the end.
12481         Declare whitespace-line-column a safe file-local
12482         * lisp/whitespace.el (whitespace-line-column): Declare to be a
12483         safe file-local when the value is an integer.
12485 2015-07-08  Eric Abrahamsen  <eric@ericabrahamsen.net>
12487         gnus-group.el: Check if group names are already strings
12488         * lisp/gnus/gnus-group.el (gnus-group-group-name):
12489         The group name may already be a string.
12490         Specifically, in the group list reached from the *Server* buffer,
12491         the 'gnus-group text property returns a string.  Everywhere else
12492         it returns a symbol.
12494         nnimap.el: Remove unused let variables
12495         * lisp/gnus/nnimap.el (nnimap-request-group): Variables are not used.
12497 2015-07-08  Eli Zaretskii  <eliz@gnu.org>
12499         Support "maximized" property of runemacs's shortcut
12500         * nt/runemacs.c (WinMain): If runemacs is invoked "maximized", pass
12501         the '--maximized' switch to Emacs.
12503         Support "minimized" property of runemacs's shortcut
12504         * nt/runemacs.c (WinMain): If runemacs is invoked "minimized",
12505         pass the '--iconic' switch to Emacs.  (Bug#20991)
12507 2015-07-08  Xue Fuqiao  <xfq.free@gmail.com>
12509         Doc fixes
12510         * doc/emacs/files.texi (Diff Mode): Fix the description of `C-c
12511         C-w' in Diff mode.
12512         * doc/emacs/arevert-xtra.texi (Auto Reverting the Buffer Menu):
12513         Add a cross reference.
12515 2015-07-08  Nicolas Richard  <youngfrog@members.fsf.org>
12517         * lisp/obsolete/landmark.el: Add Obsolete-since header.
12519 2015-07-07  Glenn Morris  <rgm@gnu.org>
12521         * test/automated/ert-tests.el (ert-test-deftest):
12522         Update for recent changes.
12524 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12526         (gv-setter, gv-synthetic-place, gv-delay-error): New funs/macros
12527         * lisp/emacs-lisp/gv.el (gv-setter): New function.
12528         (gv-invalid-place): New error.
12529         (gv-get): Use them.
12530         (gv-synthetic-place, gv-delay-error): New places.
12531         * lisp/emacs-lisp/cl-generic.el (cl--generic-setf-rewrite): Remove.
12532         (cl-defgeneric, cl-defmethod): Use gv-setter.
12534 2015-07-07  Fabrice Popineau  <fabrice.popineau@gmail.com>
12536         Make vc-tests work with MSYS svn program
12537         * lisp/vc/vc-svn.el (vc-svn-create-repo): Fix the file:// URL when
12538         svn is an MSYS program.
12540 2015-07-07  Ken Brown  <kbrown@cornell.edu>
12542         Improve recent change to emacsclient on Cygwin
12543         * lisp/server.el (server-process-filter): Remove redundant check
12544         that 'cygwin-convert-file-name-from-windows' is defined as a
12545         function on Cygwin.  Don't call that function unless its argument
12546         starts with a drive letter.
12548 2015-07-07  Artur Malabarba  <bruce.connor.am@gmail.com>
12550         * lisp/emacs-lisp/package.el (package-compute-transaction):
12551         Fix void variable due to `found-something' being in the wrong `let'.
12553 2015-07-07  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
12555         * lisp/play/landmark.el: Move to lisp/obsolete/.
12557 2015-07-07  Martin Rudalics  <rudalics@gmx.at>
12559         Have `x-show-tip' handle `right' and `bottom' frame parameters
12560         * src/nsfns.m (compute_tip_xy, Fx_show_tip)
12561         * src/w32fns.c (compute_tip_xy, Fx_show_tip)
12562         * src/xfns.c (compute_tip_xy, Fx_show_tip): Allow aligning
12563         tooltips also via `right' and `bottom' frame parameters.
12565 2015-07-07  Stefan Monnier  <monnier@iro.umontreal.ca>
12567         Add online-help support to describe types
12568         * lisp/help-fns.el (describe-symbol-backends): Move to help-mode.el.
12569         (describe-symbol): Improve the selection of default.
12570         * lisp/help-mode.el: Require cl-lib.
12571         (describe-symbol-backends): Move from help-fns.el.
12572         (help-make-xrefs): Use it.
12573         * lisp/emacs-lisp/cl-extra.el (describe-symbol-backends): Add entry
12574         for types.
12575         (cl--typedef-regexp): New const.
12576         (find-function-regexp-alist): Add entry for types.
12577         (cl-help-type, cl-type-definition): New buttons.
12578         (cl-find-class): New function.
12579         (cl-describe-type): New command.
12580         (cl--describe-class, cl--describe-class-slot)
12581         (cl--describe-class-slots): New functions, moved from eieio-opt.el.
12582         * lisp/emacs-lisp/cl-generic.el (cl--generic-method-documentation)
12583         (cl--generic-all-functions, cl--generic-specializers-apply-to-type-p):
12584         New functions.  Moved from eieio-opt.el.
12585         (cl--generic-class-parents): New function, extracted from
12586         cl--generic-struct-specializers.
12587         (cl--generic-struct-specializers): Use it.
12588         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Use pcase-dolist.
12589         Improve constructor's docstrings.
12590         (cl-struct-unknown-slot): New error.
12591         (cl-struct-slot-offset): Use it.
12592         * lisp/emacs-lisp/cl-preloaded.el (cl-struct-define): Record the type
12593         definition in current-load-list.
12594         * lisp/emacs-lisp/eieio-core.el (eieio--known-slot-names): New var.
12595         (eieio--add-new-slot): Set it.
12596         (eieio-defclass-internal): Use new name for current-load-list.
12597         (eieio-oref): Add compiler-macro to warn about unknown slots.
12598         * lisp/emacs-lisp/eieio.el (defclass): Update eieio--known-slot-names
12599         as compile-time as well.  Improve constructor docstrings.
12600         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
12601         (eieio--help-print-slot, eieio-help-class-slots): Move to cl-extra.el.
12602         (eieio-class-def): Remove button.
12603         (eieio-help-constructor): Use new name for load-history element.
12604         (eieio--specializers-apply-to-class-p, eieio-all-generic-functions)
12605         (eieio-method-documentation): Move to cl-generic.el.
12606         (eieio-display-method-list): Use new names.
12607         * lisp/emacs-lisp/lisp-mode.el (lisp-imenu-generic-expression):
12608         Add "define-linline".
12609         (lisp-fdefs): Remove "defsubst".
12610         (el-fdefs): Add "defsubst", "cl-defsubst", and "define-linline".
12611         * lisp/emacs-lisp/macroexp.el (macroexp--warned): New var.
12612         (macroexp--warn-and-return): Use it to avoid inf-loops.
12613         Add `compile-only' argument.
12615 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12617         python.el: Fix local/remote shell environment setup
12618         * lisp/progmodes/python.el (python-shell-with-environment):
12619         Fix remote/local environment setup.
12620         * test/automated/python-tests.el (python-shell-with-environment-1)
12621         (python-shell-with-environment-2): New tests.
12623 2015-07-06  Glenn Morris  <rgm@gnu.org>
12625         * lisp/simple.el (set-variable): Tweak recent doc fix.
12627 2015-07-06  Ken Brown  <kbrown@cornell.edu>
12629         * src/sysdep.c (handle_sigsegv) [CYGWIN]: Increase STACK_DANGER_ZONE.
12631 2015-07-06  Glenn Morris  <rgm@gnu.org>
12633         * lisp/simple.el (set-variable): Use user-error for type mismatch.
12635 2015-07-06  Ken Brown  <kbrown@cornell.edu>
12637         * src/emacs.c (main): Don't increase the stack size on Cygwin.
12639 2015-07-06  Stefan Monnier  <monnier@iro.umontreal.ca>
12641         (describe-symbol): Rewrite describe-function-or-variable
12642         * lisp/help-fns.el (describe-symbol-backends): New var.
12643         (help-xref-stack-item): Declare.
12644         (describe-symbol): Rename from describe-function-or-variable.
12645         Rewrite using describe-symbol-backends instead of help-xref-interned.
12646         * lisp/help.el (help-map): Use it.
12647         * lisp/help-mode.el (help-symbol, help-follow-symbol): Use it.
12648         (help-xref-interned): Make it into an obsolete alias.
12650         * lisp/emacs-lisp/eieio-base.el (eieio-persistent-save): Don't ignore
12651         `file' arg (bug#20972).  Always use utf-8-emacs.  Use with-temp-buffer
12652         and cl-letf.
12654 2015-07-06  Wolfgang Jenkner  <wjenkner@inode.at>
12656         Fix parsing glitches in dired-mark-sexp (bug#13575)
12657         * lisp/dired-x.el (dired-x--string-to-number): New function.
12658         (dired-mark-sexp): Use it.  Tweak dired-re-inode-size.  Fix usage
12659         of directory-listing-before-filename-regexp.  Consider
12660         forward-word harmful and replace it.  Add more verbiage in
12661         comments and doc string.
12663 2015-07-06  Fabián Ezequiel Gallina  <fgallina@gnu.org>
12665         python.el: Respect process environment for remote shells
12666         * lisp/progmodes/python.el
12667         (python-shell-calculate-process-environment): Calculate
12668         process-environment or tramp-remote-process-environment depending
12669         whether current file is remote.
12670         (python-shell-calculate-exec-path): Calculate exec-path or
12671         tramp-remote-path depending whether current file is remote.
12672         (python-shell-with-environment): New macro.
12673         (python-shell-prompt-detect, python-shell-calculate-command)
12674         (python-shell-make-comint, python-check): Use it.
12676         python.el: Avoid making let-bound defvars buffer local  (Bug#18244)
12677         * lisp/progmodes/python.el (python-shell--interpreter)
12678         (python-shell--interpreter-args): New vars.
12679         (inferior-python-mode, python-shell-make-comint): Use them.
12681         python.el: Fixes for IPython 3.x  (Bug#20580)
12682         * lisp/progmodes/python.el:
12683         (python-shell-completion-native-setup): Fix IPython 3.x setup.
12684         (python-shell-completion-native-get-completions): Fix timeout
12685         logic.
12687         python.el: Fix mark-defun behavior  (Bug#19665)
12688         * lisp/progmodes/python.el (python-mark-defun): New function.
12689         * test/automated/python-tests.el (python-mark-defun-1)
12690         (python-mark-defun-2, python-mark-defun-3): New tests.
12692 2015-07-05  Glenn Morris  <rgm@gnu.org>
12694         * lisp/progmodes/f90.el (f90-type-def-re): Handle attribute lists
12695         such as "extends(parent), private".  (Bug#20969)
12696         * test/automated/f90.el (f90-test-bug20969, f90-test-bug20969b):
12697         New tests.
12699 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
12701         Avoid duplicate calls to current_timespec
12702         * src/process.c (wait_reading_process_output):
12703         Cache current_timespec results as long as we're not waiting.
12705 2015-07-05  Ian Kelling  <ian@iankelling.org>
12707         Avoid returning early reading process output due to SIGIO
12708         * src/process.c (wait_reading_process_output): Extend the behavior of
12709         not breaking due to not finding output when a timer has lowered the
12710         timeout to include when SIGIO lowers the timeout.
12712         Don't return as fast reading any process output
12713         * src/process.c (wait_reading_process_output):
12714         The patch for Bug#17647 returns too fast sometimes when reading
12715         from any processes.  Revert part of it, and limit the timeout more
12716         sensibly (Bug#20978).
12718         Refactor timeouts in wait_reading_process_output
12719         * src/process.c (wait_reading_process_output):
12720         Simplify timeouts with an enum.  Remove a redundant condition.
12721         (Bug#20978)
12723         Remove ADAPTIVE_READ_BUFFERING ifdef
12724         * src/process.c (make-process, make-pipe-process, deactivate_process)
12725         (wait_reading_process_output, read_process_output, send_process)
12726         (init_process_emacs): ifdef ADAPTIVE_READ_BUFFERING was originally
12727         added in case there was an operating system in which it was not
12728         useful.  That was 11 years ago and it hasn't happened.  Make
12729         development easier by not considering the effect of changes on a
12730         theoretical OS where this is disabled (Bug#20978).
12732 2015-07-05  Glenn Morris  <rgm@gnu.org>
12734         * lisp/simple.el (set-variable): Doc fix.
12736         * lisp/progmodes/fortran.el (fortran-line-length): Doc fix.
12738 2015-07-05  Ian Kelling  <ian@iankelling.org>
12740         accept-process-output fix
12741         This is a followon to the fix for bug#17647 (Bug#20976).
12742         * src/process.c (status_notify): Fix too high return in some cases.
12744 2015-07-05  Artur Malabarba  <bruce.connor.am@gmail.com>
12746         * lisp/character-fold.el (character-fold-table):
12747         Only fold decompositions if at least one character is non-spacing.
12748         (Bug#20975)
12750 2015-07-05  Paul Eggert  <eggert@cs.ucla.edu>
12752         Merge from gnulib
12753         This incorporates:
12754         2015-07-04 file-has-acl, acl-permissions: fix HP-UX typos
12755         2015-07-03 set-permissions.c: adjust acl_from_mode's cpp guard
12756         2015-07-02 update-copyright: fix test failure with perl >= 5.22
12757         2015-07-01 gnulib-common.m4: change the ARFLAGS default to 'cr'
12758         2015-07-01 acl: fix definition of acl_from_mode on FreeBSD
12759         * build-aux/update-copyright, doc/misc/texinfo.tex, lib/acl-internal.h:
12760         * lib/set-permissions.c, m4/gnulib-common.m4: Copy from gnulib.
12762 2015-07-05  Christoph Wedler  <christoph.wedler@sap.com>
12764         Respect `prog-indentation-context' in python.el
12765         * lisp/progmodes/python.el (python-indent-guess-indent-offset)
12766         (python-indent-context, python-indent--calculate-indentation)
12767         (python-info-current-defun)
12768         (python-info-dedenter-opening-block-message)
12769         (python-info-line-ends-backslash-p)
12770         (python-info-beginning-of-backslash)
12771         (python-info-continuation-line-p): Use `prog-widen'.
12772         (python-indent--calculate-indentation)
12773         (python-indent--calculate-levels)
12774         (python-indent-calculate-indentation): Use `prog-first-column'.
12775         (python-indent--calculate-levels): Simplify.
12776         Ignore also initial empty lines for syntax calculation.
12777         * lisp/progmodes/python.el (python-indent-context): Return
12778         :no-indent for first non-empty line, not just in line 1.
12779         * test/automated/python-tests.el (python-indent-base-case)
12780         (python-indent-inside-paren-1, python-indent-inside-paren-2)
12781         (python-indent-inside-paren-3, python-indent-inside-paren-4)
12782         (python-indent-inside-paren-5, python-indent-inside-paren-6)
12783         (python-indent-after-backslash-1)
12784         (python-indent-after-backslash-2)
12785         (python-indent-after-backslash-3)
12786         (python-indent-after-backslash-4, python-indent-inside-string-1):
12787         Expect :no-indent for first non-empty line.
12789 2015-07-04  Daniel Colascione  <dancol@dancol.org>
12791         Factor isearch word description into new function
12792         * lisp/isearch.el (isearch--describe-word-mode): New function.
12793         (isearch-message-prefix, isearch-query-replace): Use it.
12795 2015-07-04  Eli Zaretskii  <eliz@gnu.org>
12797         Fix mouse pointer on w32 when a menu is active
12798         * src/w32fns.c (w32_wnd_proc): Don't change the mouse pointer
12799         shape while a menu is in use.  This started happening since we now
12800         send WM_EMACS_SHOWCURSOR messages when the mouse moves.
12802 2015-07-04  Martin Rudalics  <rudalics@gmx.at>
12804         Fix processing of alpha parameter for Windows tip frames  (Bug#17344)
12805         * src/w32fns.c (x_create_tip_frame): Fix processing alpha
12806         parameter.  (Bug#17344)
12808         Have `compilation-set-window' use right window for getting fringes
12809         (Bug#20829)
12810         * lisp/progmodes/compile.el (compilation-set-window):
12811         Take `window-fringes' from argument window.
12813 2015-07-03  Glenn Morris  <rgm@gnu.org>
12815         Update eieio tests for recent eieio-core change.
12816         * test/automated/eieio-test-persist.el (persist-test-save-and-compare):
12817         * test/automated/eieio-tests.el
12818         (eieio-test-32-slot-attribute-override-2):
12819         Replace the deleted eieio--class-v with cl--find-class.
12821 2015-07-03  Martin Rudalics  <rudalics@gmx.at>
12823         Fix some issues with `window-divider-mode'
12824         * lisp/frame.el (window-divider-default-places): New option.
12825         (window-divider-mode): Remove option.
12826         (window-divider-mode): Make it a "regular" minor mode.
12827         (window-divider-width-valid-p): Drop frame- prefix.
12828         (window-divider-mode-apply): New argument ENABLE.  Drop frame-
12829         prefix.  Handle `window-divider-default-places'.
12830         (frame--window-divider-mode-set-and-apply): Remove.
12831         (window-divider-default-bottom-width)
12832         (window-divider-default-right-width): Drop :group entries.
12833         * lisp/menu-bar.el (menu-bar-bottom-and-right-window-divider)
12834         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
12835         (menu-bar-no-window-divider): Set `window-divider-default-places'
12836         and call `window-divider-mode'.
12837         * doc/emacs/frames.texi (Window Dividers): Document
12838         `window-divider-default-places'.
12840 2015-07-02  Xue Fuqiao  <xfq.free@gmail.com>
12842         * doc/emacs/display.texi (Displaying Boundaries):
12843         * doc/emacs/search.texi (Word Search): Add cross references.
12845 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
12847         -batch should not affect ‘’ -> `' display
12848         * lisp/startup.el (command-line): Do the ‘’ -> `' check even if
12849         -batch (Bug#20926).
12851 2015-07-02  Stefan Monnier  <monnier@iro.umontreal.ca>
12853         * lisp/emacs-lisp/eieio-core.el (eieio--class-v): Remove
12854         * lisp/emacs-lisp/eieio-core.el, lisp/emacs-lisp/eieio.el:
12855         * lisp/emacs-lisp/eieio-opt.el, lisp/emacs-lisp/eieio-compat.el:
12856         Use cl--find-class instead.
12858         * lisp/term/xterm.el (xterm--query): Fix paren typo (bug#20951).
12860 2015-07-02  Martin Rudalics  <rudalics@gmx.at>
12862         Some further fixes in Change Window node (Bug#20183)
12863         * doc/emacs/windows.texi (Change Window): Replace "rearranging"
12864         by "resizing" in section title.  Add some concept indices.
12865         Suggested by N. Jackson (Bug#20183).
12867         * doc/emacs/windows.texi (Change Window): Reference window
12868         dividers.
12870         Document new `window-divider-mode'.
12871         * lisp/frame.el (window-divider-mode): Fix doc-string.
12872         * doc/emacs/frames.texi (Window Dividers): New section.
12874         Improve accessibility of window dividers (Bug#20183)
12875         * lisp/faces.el (window-divider)
12876         (window-divider-first-pixel, window-divider-last-pixel): Change
12877         membership from `frames' to `window-divider' customization group.
12878         * lisp/frame.el (window-divider): New customization group.
12879         (window-divider-mode): New minor mode.
12880         (window-divider-default-bottom-width)
12881         (window-divider-default-right-width): New options.
12882         (frame--window-divider-previous-mode): New variable.
12883         (frame-window-divider-width-valid-p)
12884         (frame--window-divider-mode-apply)
12885         (frame--window-divider-mode-set-and-apply): New functions.
12886         * lisp/menu-bar.el (menu-bar-options-save): Save
12887         window-divider-mode settings.
12888         (menu-bar-window-divider-customize)
12889         (menu-bar-bottom-and-right-window-divider)
12890         (menu-bar-right-window-divider, menu-bar-bottom-window-divider)
12891         (menu-bar-no-window-divider): New functions.
12892         (menu-bar-showhide-window-divider-menu): New variable.
12893         (menu-bar-showhide-menu): Show/hide window divider menu.
12894         * lisp/mouse.el (mouse-split-window-vertically)
12895         (mouse-split-window-horizontally): Replace `error' by
12896         `user-error'.  Bind `window-combination-resize' to nil.
12897         (top-level): Add/reorder mouse key bindings on mode- and
12898         vertical-line.
12900 2015-07-02  Paul Eggert  <eggert@cs.ucla.edu>
12902         Don't display ‘’ as `' under X in en_GB
12903         The curved quote setup code invokes (char-displayable-p ?‘),
12904         but this isn’t reliable until after the X frame replaces the
12905         terminal frame (Bug#20926).
12906         * lisp/international/mule-cmds.el (set-locale-environment):
12907         Move curved quote setup code from here ...
12908         * lisp/startup.el (command-line): ... to here, after creating
12909         the X frame.
12911 2015-07-01  Nicolas Richard  <youngfrog@members.fsf.org>
12913         * lisp/emacs-lisp/seq.el (seq-difference): Fix typo in docstring.
12915         * lisp/ido.el (ido-restrict-to-matches): Add an optional argument
12916         to reverse the meaning (Bug#15631).
12918 2015-07-01  Eli Zaretskii  <eliz@gnu.org>
12920         Be more tolerant to fonts named "Foobar-12"
12921         * src/frame.c (x_set_font): If font_spec_from_name returns nil,
12922         don't barf; instead, request a new fontset to be generated.  This
12923         avoids unnecessarily rejecting fonts named against XLFD rules.  See
12924         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html,
12925         for the description of the original problem.
12926         * lisp/faces.el (set-face-attribute): Don't be fooled too easily
12927         by a hyphen in a font's name.
12929         Fix value of posn-at-pont in R2L lines
12930         * src/keyboard.c (Fposn_at_x_y, Fposn_at_point): Allow X pixel
12931         coordinate of -1, for a newline in a right-to-left line that
12932         overflowed into the left fringe.
12934 2015-07-01  Stefan Monnier  <monnier@iro.umontreal.ca>
12936         (cl--copy-slot-descriptor): Copy the `props' alist as well
12937         * lisp/emacs-lisp/cl-preloaded.el (cl--copy-slot-descriptor-1):
12938         Rename from cl--copy-slot-descriptor.
12939         (cl--copy-slot-descriptor): New function.  Copy the alist (bug#20914).
12941 2015-06-30  Stefan Monnier  <monnier@iro.umontreal.ca>
12943         * lisp/term/xterm.el (xterm--query): Avoid generating garbage
12944         (xterm-query-timeout): New var.
12945         (xterm--query): Use it.  Fallback on async method if we timeout before
12946         getting the first byte of the reply (bug#12354).
12948 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
12950         Spelling fixes
12951         * lisp/character-fold.el (character-fold-search):
12952         * lisp/emacs-lisp/package.el (package-hidden-regexps):
12953         Fix typos.
12955 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
12957         * doc/emacs/frames.texi (Frame Commands): Typo fix.  (Bug#20946)
12959 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
12961         In strings, prefer plain ` and ' to \` and \'
12962         * lisp/allout.el (allout-insert-listified):
12963         * lisp/emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
12964         * lisp/ls-lisp.el (ls-lisp-UCA-like-collation)
12965         (ls-lisp-string-lessp):
12966         * lisp/menu-bar.el (menu-bar-open):
12967         * lisp/obsolete/otodo-mode.el (todo-top-priorities):
12968         * lisp/progmodes/compile.el (compile):
12969         * lisp/progmodes/etags.el (tags-loop-scan):
12970         * lisp/progmodes/make-mode.el (makefile-browser-insert-continuation):
12971         * lisp/subr.el (posn-actual-col-row):
12972         * lisp/term/pc-win.el (x-list-fonts):
12973         * lisp/textmodes/texinfmt.el (texinfmt-version):
12974         * lisp/textmodes/texnfo-upd.el (texinfo-master-menu):
12975         * lisp/time.el (display-time-world-list):
12976         * lisp/tmm.el (tmm-menubar):
12977         * src/buffer.c (syms_of_buffer):
12978         * src/fileio.c (syms_of_fileio):
12979         Omit unnecessary and confusing backslash before quote.
12980         * lisp/erc/erc.el (erc-cmd-LASTLOG):
12981         * lisp/progmodes/flymake.el (flymake-fix-file-name):
12982         * lisp/progmodes/vhdl-mode.el (vhdl-in-extended-identifier-p):
12983         Fix string that was intended to escape a backslash and not a quote.
12985 2015-06-30  Glenn Morris  <rgm@gnu.org>
12987         * leim/Makefile.in, lisp/Makefile.in: Add missing EXEEXT definition.
12989         * lisp/Makefile.in (MH_E_SRC, TRAMP_SRC, CAL_SRC):
12990         Replace hard-coded lists with wildcard + filter-out.
12992         * configure.ac (system-configuration-features): Add X11, NS.
12994         Improve reproducibility of generated loaddefs file
12995         * lisp/emacs-lisp/autoload.el (autoload-generate-file-autoloads):
12996         Make the return value the modtime of the input file (if no autoloads).
12997         (update-directory-autoloads): In the "no autoloads" section,
12998         use "most recent modtime" rather than "current time".
13000 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
13002         * lisp/emacs-lisp/package.el (package--remove-hidden): Fix logic.
13003         (Bug#20930)
13005 2015-06-30  Nicolas Petton  <nicolas@petton.fr>
13007         * doc/lispref/sequences.texi: Add documentation for seq-min and seq-max.
13009         Add seq-min and seq-max
13010         Bump version number.
13011         * lisp/emacs-lisp/seq.el (seq-min, seq-max): New functions.
13012         * test/automated/seq-tests.el: Add tests for seq-min and seq-max.
13014 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
13016         Make sure sleep-for always delays for as long as it's told
13017         * src/dispnew.c (Fsleep_for): Call wait_reading_process_output in
13018         a loop, to ensure we always wait exactly the required amount of
13019         time.  (Bug#15990)
13021 2015-06-30  Paul Eggert  <eggert@cs.ucla.edu>
13023         Fix pointer signedness glitch
13024         * src/font.c (font_load_for_lface): Use SSDATA, not SDATA.
13026 2015-06-30  Eli Zaretskii  <eliz@gnu.org>
13028         Don't block changes in mouse pointer inside 'track-mouse'
13029         * etc/NEWS:
13030         * doc/lispref/frames.texi (Mouse Tracking): Document the special
13031         effect of setting 'track-mouse' to 'dragging'.
13032         * lisp/textmodes/artist.el (artist-mouse-draw-continously):
13033         * lisp/ruler-mode.el (ruler-mode-mouse-drag-any-column-iteration):
13034         * lisp/mouse-drag.el (mouse-drag-throw):
13035         * lisp/mouse.el (mouse-drag-line): Set 'track-mouse' to 'dragging'
13036         to avoid changes in the shape of the mouse pointer.
13037         * src/xdisp.c (define_frame_cursor1): Don't change the mouse
13038         pointer shape when do_mouse_tracking has the value of 'dragging',
13039         not just any non-nil value.  (Bug#20934)
13040         (syms_of_xdisp): DEFSYM 'dragging'.
13042 2015-06-30  Artur Malabarba  <bruce.connor.am@gmail.com>
13044         * lisp/isearch.el (isearch-toggle-word): Fix toggle.
13046         * lisp/emacs-lisp/package.el (package-compute-transaction):
13047         Don't assume version sorting.
13049         * lisp/emacs-lisp/package.el (package--save-selected-packages):
13050         Don't save before init time, to avoid overwriting configurations.
13051         (Bug#20855)
13053 2015-06-30  Xue Fuqiao  <xfq.free@gmail.com>
13055         * doc/emacs/display.texi (Standard Faces, Fringes): Add cross
13056         references.
13058 2015-06-29  Ted Zlatanov  <tzz@lifelogs.com>
13060         Update for the upcoming CFEngine 3.7 release: support macros and
13061         quoted context strings; reformat JSON; indent promise attributes 2
13062         units by default; give function parameter descriptions in the eldoc
13063         glue.
13064         * lisp/progmodes/cfengine.el: Update version and docs and fix name.
13065         Autoload `json-pretty-print'.  Support new features in 3.7.
13066         (cfengine-parameters-indent): Set default promise attribute indent to
13067         2 more than the promise itself.
13068         (cfengine3-macro-regex): New variable to match the new macro syntax.
13069         (cfengine3-font-lock-keywords): Use it to highlight macros.
13070         (cfengine3-indent-line): Use it to indent macros to column 0.
13071         (cfengine3-class-selector-regex): Update for the new quoted strings
13072         format.
13073         (cfengine3-reformat-json-string): New function to reformat a JSON
13074         string using `json-pretty-print'.
13075         (cfengine3-format-function-docstring): Use function parameter
13076         description if it's provided by the cf-promises syntax dump.
13078 2015-06-29  Michael R. Mauger  <michael@mauger.com>
13080         Cygwin emacsclient handles w32 file names
13081         * lisp/server.el (server-process-filter): Allow Cygwin's
13082         emacsclient to be used as a file handler on MS-Windows.
13084 2015-06-29  Katsumi Yamaoka  <yamaoka@jpl.org>
13086         * lisp/isearch.el (isearch-exit): Don't call isearch-done twice
13087         (bug#20925).
13089 2015-06-29  Eli Zaretskii  <eliz@gnu.org>
13091         * doc/lispref/text.texi (Sticky Properties): Improve wording.
13092         (Bug#20924)
13094         Allow font names that end in "-NN", where NN is a number
13095         * src/font.c (font_load_for_lface): If the font-spec didn't match
13096         any available fonts, try again without interpreting trailing "-NN"
13097         as the font size.  For the description of the original problem, see
13098         http://lists.gnu.org/archive/html/help-emacs-windows/2015-06/msg00001.html
13100         .gdbinit followup to changes in !USE_LSB_TAG
13101         * src/.gdbinit (xgetsym): Don't left-shift $ptr even under
13102         !USE_LSB_TAG, as Emacs no longer does.
13104 2015-06-29  Wolfgang Jenkner  <wjenkner@inode.at>
13106         * lisp/calc-store.el (calc-insert-permanent-variable): Heed case.
13107         Otherwise `s p' of f and F will stomp on each other's value.
13108         (Bug#20916)
13110 2015-06-29  Artur Malabarba  <bruce.connor.am@gmail.com>
13112         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
13113         Don't block remember-pos if buffer isn't displayed.  (Bug#20921)
13115 2015-06-29  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
13117         * lisp/emacs-lisp/package.el (describe-package): Use symbol-at-point
13118         as additional guess.
13120         * lisp/emacs-lisp/package.el (describe-package): Convert the guess
13121         to a string.
13123 2015-06-28  Paul Eggert  <eggert@cs.ucla.edu>
13125         apropos-library quoting fix
13126         * lisp/apropos.el (apropos-library): Quote library consistently
13127         with the rest of the quoting used by apropos.
13129         Clarify interpreter-mode-alist doc
13130         * lisp/files.el (interpreter-mode-alist):
13131         Reword to avoid confusing quoting that wasn't working anyway.
13133 2015-06-28  Michael Albinus  <michael.albinus@gmx.de>
13135         Sync with Tramp 2.2.12
13136         * doc/misc/trampver.texi:
13137         * lisp/net/trampver.el: Update release number.
13138         * test/automated/tramp-tests.el (tramp-test13-make-directory):
13139         Fix cleanup.
13141 2015-06-28  Artur Malabarba  <bruce.connor.am@gmail.com>
13143         * lisp/isearch.el (isearch-mode): Don't char-fold regexps (bug#20913).
13145 2015-06-27  Dmitry Gutov  <dgutov@yandex.ru>
13147         Bind grep-highlight-matches around the rgrep call
13148         * lisp/progmodes/grep.el (zrgrep): Bind grep-highlight-matches
13149         around the rgrep call (bug#20728).
13151         Put "--color" before the other options in grep-command
13152         * lisp/progmodes/grep.el (grep-compute-defaults): Put "--color"
13153         before the other options in grep-command (bug#20912).
13155         Add --color Grep option to the command dynamically
13156         * lisp/progmodes/grep.el (grep-template, grep-find-template):
13157         Update the description for <C>.  (Bug#20728)
13158         (grep-compute-defaults): Don't add the --color option to
13159         grep-options.  Only add it to grep-command.
13160         (grep-expand-keywords): Expand the env value opts into <C>.
13161         (grep-expand-template): Replace cf in the env with the opts list,
13162         that can include -i and --color.
13163         * lisp/progmodes/xref.el (xref-collect-matches): Do not remove
13164         "--color=always" from the template, because we don't have to.
13166 2015-06-27  Paul Eggert  <eggert@cs.ucla.edu>
13168         cl-extra fixes for most-negative-fixnum
13169         * lisp/emacs-lisp/cl-extra.el (cl-gcd, cl-lcm, cl-random):
13170         Don't mishandle an argument equal to most-negative-fixnum,
13171         whose absolute value equals itself.
13172         (cl-gcd, cl-lcm): Use dolist rather than doing it by hand.
13174         Initialize cl--gensym-counter to 0
13175         Previously it was initialized to a random value, which made it
13176         harder to reproduce earlier Emacs runs.  The need for a random
13177         value went away when Emacs introduced and used the #: syntax for
13178         uninterned symbols (Bug#20862).
13179         * doc/misc/cl.texi (Creating Symbols, Common Lisp Compatibility):
13180         Document that cl--gensym-counter now starts with 0.
13181         * lisp/emacs-lisp/cl-lib.el (cl--gensym-counter): Remove.
13182         (cl--random-time): Move to near only remaining use.
13183         * lisp/emacs-lisp/cl-macs.el (cl--gensym-counter): Initialize to 0.
13185         Improve docstring for macroexp-let2
13186         * lisp/emacs-lisp/macroexp.el (macroexp-let2):
13187         Improve as per suggestion by RMS in:
13188         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00621.html
13189         Also, rename args to match new doc string.
13191 2015-06-27  Eli Zaretskii  <eliz@gnu.org>
13193         Fix VC test suite on MS-Windows
13194         * lisp/vc/vc-svn.el (vc-svn-create-repo): Make sure the file: URL
13195         always starts with 3 slashes after the colon.
13196         * test/automated/vc-tests.el (vc-test--create-repo-function): Use
13197         'w32-application-type' to invoke CVS on MS-Windows with properly
13198         formatted CVSROOT directory name.
13200         Add a new function w32-application-type
13201         * src/w32proc.c (Fw32_application_type): New function.
13203         Avoid error in TLS connections due to incorrect format
13204         * src/gnutls.c (Fgnutls_boot): Use the %x conversion specifier in
13205         the call to 'error', instead of the unsupported %u.  Reported by
13206         lo2net <fangtao0901@gmail.com>.  (Bug#20908)
13208 2015-06-26  Artur Malabarba  <bruce.connor.am@gmail.com>
13210         * lisp/replace.el (replace-search): Fix regexp case (bug#20901).
13212 2015-06-26  Leo Liu  <sdl.web@gmail.com>
13214         * lisp/emacs-lisp/cl-indent.el: Fix indentation for
13215         `with-output-to-string' in elisp.
13217         Revert "lisp/emacs-lisp/cl-indent.el: Fix indent of
13218         with-output-to-string".
13219         This reverts commit 659199f2ca5f283fb246faa78a244e5ca25f53dd.
13221 2015-06-26  Eli Zaretskii  <eliz@gnu.org>
13223         Minor corrections in ELisp manual
13224         * doc/lispref/nonascii.texi (Character Properties): Correct
13225         inaccuracies in description of values of the Unicode properties.
13227         Fix invisible mouse pointers on Windows.
13228         * src/w32fns.c: Include windowsx.h.
13229         (w32_wnd_proc): If the mouse moved and the mouse pointer is
13230         invisible, make it visible again even when the main (Lisp)
13231         thread is busy.
13232         * src/w32term.c (w32_toggle_invisible_pointer): Rather then
13233         garbaging the frame have the input thread call SetCursor.
13235 2015-06-26  Martin Rudalics  <rudalics@gmx.at>
13237         Provide invisible mouse pointers on Windows (Bug#6105) (Bug#12922)
13238         * src/w32fns.c (w32_wnd_proc): Handle f->pointer_invisible
13239         for WM_SETCURSOR and WM_EMACS_SETCURSOR cases.
13240         * src/w32term.c (w32_hide_hourglass): Handle f->pointer_invisible.
13241         (w32_toggle_invisible_pointer): New function.
13242         (w32_create_terminal): Add w32_toggle_invisible_pointer as
13243         toggle_invisible_pointer_hook for this terminal.
13245 2015-06-25  Xue Fuqiao  <xfq.free@gmail.com>
13247         Doc fix for deletion commands
13248         'delete-char' does not respect the value of 'delete-active-region'.
13249         * doc/emacs/killing.texi (Deletion):
13250         Fix documentation for some single-char deletion commands.
13252         * doc/emacs/help.texi (Apropos):
13253         Improve documentation of 'apropos-do-all'.
13255         * doc/emacs/help.texi (Help Summary):
13256         Improve documentation of 'describe-mode'.
13258 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13260         Fix submake dependency bug with .h files
13261         * src/Makefile.in ($(libsrc)/make-docfile$(EXEEXT)):
13262         Depend on $(lib)/libgnu.a, so that we build $(lib)/*/*.h
13263         before the submake in $(libsrc) would spin off a subsubmake
13264         for $(lib) in parallel with our submake for $(lib) (Bug#20894).
13266 2015-06-25  Artur Malabarba  <bruce.connor.am@gmail.com>
13268         * lisp/character-fold.el (character-fold-table): Reuse `table'.
13270 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13272         Translate undisplayable ‘ to `
13273         * doc/lispref/help.texi (Keys in Documentation):
13274         * lisp/international/mule-cmds.el (set-locale-environment):
13275         * lisp/term/w32console.el (terminal-init-w32console):
13276         * src/doc.c (Fsubstitute_command_keys, Vhelp_quote_translation):
13277         If ‘ is not displayable, transliterate it to `, not to '.  See:
13278         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00542.html
13280         Fix C99 incompatibilities in Cairo code
13281         * src/image.c (xpm_load) [USE_CAIRO]:
13282         * src/xterm.c (x_cr_accumulate_data) [USE_CAIRO]:
13283         Fix pointer signedness problem.
13285 2015-06-25  Oleh Krehel  <ohwoeowho@gmail.com>
13287         lisp/emacs-lisp/cl-indent.el: Fix indent of with-output-to-string
13288         * lisp/emacs-lisp/cl-indent.el (common-lisp-indent-function):
13289         `with-output-to-string' should have the same indent as `progn'.
13290         This is in line with the declaration of `with-output-to-string'.
13292 2015-06-25  Paul Eggert  <eggert@cs.ucla.edu>
13294         Get ‘./configure; make -C src emacs’ to work
13295         Without this fix, lib/fcntl.h isn't built in time (Bug#20894).
13296         * lib-src/Makefile.in (../lib/libgnu.a):
13297         * src/Makefile.in ($(lib)/libgnu.a): Build all, not libgnu.a.
13299 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
13301         Fix GC bugs --with-wide-int and Qnil == 0
13302         Use the same alignment for the !USE_LSB_TAG case as for the
13303         more-typical USE_LSB_TAG case.  The attempt to support arbitrary
13304         alignments with !USE_LSB_TAG had subtle bugs in garbage collection
13305         once we changed the representation of symbols so that Qnil == 0.
13306         Problem reported by Eli Zaretskii (Bug#20862).
13307         * src/alloc.c (XMALLOC_HEADER_ALIGNMENT) [XMALLOC_OVERRUN_CHECK]:
13308         * src/alloc.c (vector_alignment, union aligned_Lisp_Symbol)
13309         (union aligned_Lisp_Misc, maybe_lisp_pointer, pure_alloc):
13310         Use same alignment for !USE_LSB_TAG as for USE_LSB_TAG.
13311         * src/alloc.c (POINTERS_MIGHT_HIDE_IN_OBJECTS): Remove.
13312         This optimization in the !USE_LSB_TAG case is no longer valid when
13313         symbols are represented via offsets.  Change the only use to
13314         assume that pointers might hide in objects.
13315         * src/lisp.h (alignas) [!USE_LSB_TAG]:
13316         Require support in this case, too.
13317         (TAG_SYMOFFSET, XSYMBOL) [!USE_LSB_TAG]: Do not shift the offset.
13318         This is OK, because the !USE_LSB_TAG case now applies only when
13319         Lisp_Object is wider than void *, so there's no longer any need
13320         to shift the offset.  Not shifting the offset means that
13321         symbol representations have the same alignment as pointers,
13322         which the GC assumes.
13324 2015-06-24  Xue Fuqiao  <xfq.free@gmail.com>
13326         * doc/lispintro/emacs-lisp-intro.texi (Data types):
13327         Improve documentation of 'substring'.
13329 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13331         * lisp/character-fold.el (character-fold-table): Fix table generation.
13333 2015-06-24  Glenn Morris  <rgm@gnu.org>
13335         * nextstep/Makefile.in (all): Make it the first target.
13336         (../src/emacs${EXEEXT}): Add rule for making it.
13338 2015-06-24  Artur Malabarba  <bruce.connor.am@gmail.com>
13340         * etc/NEWS: Fix mention to old function name.
13342         * lisp/character-fold.el: New file (Bug#20887)
13343         (character-fold-to-regexp): New function.
13344         * lisp/replace.el (replace-search): Check value of
13345         `character-fold-search'.
13346         * lisp/isearch.el: Move character-folding code to
13347         character-fold.el
13348         (isearch-toggle-character-fold): New command.
13349         (isearch-mode-map): Bind it to "\M-sf".
13350         (isearch-mode): Check value of `character-fold-search'.
13352 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13354         lisp/subr.el (remove-from-invisibility-spec): Handle the t case
13355         * lisp/subr.el (remove-from-invisibility-spec): Make sure `element'
13356         is visible even if it's not yet in buffer-invisibility-spec (bug#20468).
13358         * lisp/progmodes/xref.el (xref-location-group, xref-location-marker)
13359         (xref--insert-xrefs, xref-collect-references): Avoid init-args in oref.
13361 2015-06-24  Glenn Morris  <rgm@gnu.org>
13363         * Makefile.in (install-arch-dep): Don't set sticky bit on the binary.
13365 2015-06-24  Stefan Monnier  <monnier@iro.umontreal.ca>
13367         lisp/gnus/nnmaildir.el: Silence lexical warnings
13368         * lisp/gnus/nnmaildir.el (nnmaildir--prepare): Use a more
13369         functional style.
13370         (nnmaildir--update-nov): Remove unused var `numdir'.
13371         (nnmaildir-request-type, nnmaildir--scan, nnmaildir-request-newgroups)
13372         (nnmaildir-request-group, nnmaildir-request-create-group)
13373         (nnmaildir-request-post, nnmaildir-request-move-article)
13374         (nnmaildir-request-accept-article, nnmaildir-active-number):
13375         Mark unused args.
13376         (nnmaildir-get-new-mail, nnmaildir-group-alist)
13377         (nnmaildir-active-file): Declare.
13378         (nnmaildir-request-scan): Remove unused vars `group' and `grp-dir'.
13379         (nnmaildir-request-update-info): Remove unused vars `dotfile', `num',
13380         `mark', `end', `new-mark', and `mark-sym'.
13381         (nnmaildir-retrieve-headers): Remove unused args `srv-dir', `dir',
13382         `nlist2'.
13383         (nnmaildir-request-expire-articles):
13384         Remove unused vars `article', `stop' and `nlist2'.
13385         (nnmaildir-request-set-mark): Remove unused vars `begin', `article' and
13386         `end'.  Use nnmaildir--article when dyn-binding is needed.
13387         Give the value directly in the `let' for `del-mark', `del-action',
13388         `add-action', and `set-action'.  Don't use `add-to-list' on a local var.
13389         (nnmaildir-close-server): Declare those local vars that need to be
13390         dyn-bound.
13392 2015-06-24  Paul Eggert  <eggert@cs.ucla.edu>
13394         * src/keyboard.h (kbd_buffer_store_event_hold): Remove unused local.
13396         Port selection info fix to clang
13397         * src/keyboard.h (kbd_buffer_store_event_hold):
13398         Don't assume C11 semantics for alignof (Bug#20756).
13400         Fix bug that munged selection info
13401         On some optimizing C compilers, copying a structure did not
13402         copy the padding bytes between elements, and the type punning
13403         between struct input_data and struct selection_input_data did
13404         not work.  Change the C code to use a proper union type instead.
13405         Problem reported by YAMAMOTO Mitsuharu (Bug#20756).
13406         * src/keyboard.c (kbd_buffer, kbd_fetch_ptr, kbd_store_ptr)
13407         (readable_events, discard_mouse_events, kbd_buffer_events_waiting)
13408         (kbd_buffer_get_event, process_special_events, stuff_buffered_input)
13409         (mark_kboards):
13410         Use union buffered_input_event, not struct input_event.
13411         (clear_event, deliver_input_available_signal, process_special_events):
13412         Remove unnecessary forward decls.
13413         (kbd_buffer_store_buffered_event): New function, mostly just the
13414         old kbd_buffer_store_event_hold, except its argument is of type
13415         union buffered_input_event, not struct input_event.
13416         (kbd_buffer_unget_event): Define only if HAVE_X11, since it's
13417         not needed otherwise.  Argument is now of type
13418         struct selection_input_event *, not struct input_event *.
13419         All callers changed.
13420         (clear_event): Arg is now of type union buffered_input_event *,
13421         not struct input_event *.  All callers changed.
13422         * src/keyboard.h [HAVE_X11]: Include "xterm.h".
13423         (union buffered_input_event): New type.
13424         (kbd_buffer_store_event_hold): Now an inline function,
13425         defined here.
13426         * src/termhooks.h (EVENT_KIND_WIDTH): New constant.
13427         (struct input_event): Use it.
13428         * src/xselect.c (struct selection_event_queue):
13429         Make elements be of type struct selection_input_event,
13430         not struct input_event.
13431         (selection_input_event_equal): New static function.
13432         (x_queue_event): Use it.
13433         (x_queue_event, x_decline_selection_request)
13434         (x_selection_current_request, x_reply_selection_request)
13435         (x_handle_selection_request, x_handle_selection_clear)
13436         (x_handle_selection_event): Use struct selection_input_event,
13437         not struct input_event.  All callers changed.
13438         (x_convert_selection): Omit unused first arg.  All callers changed.
13439         (Fx_disown_selection_internal): Omit unnecessary union.
13440         * src/xterm.c (handle_one_xevent): Use new union buffered_input_event
13441         rather than rolling our own equivalent.  Prefer sie.kind when
13442         setting up that kind of structure.
13443         Call kbd_buffer_store_buffered_event, not kbd_buffer_store_event_hold.
13444         * src/xterm.h (struct selection_input_event: Use EVENT_KIND_WIDTH.
13445         (SELECTION_EVENT_DISPLAY, SELECTION_EVENT_DPYINFO)
13446         (SELECTION_EVENT_REQUESTOR, SELECTION_EVENT_SELECTION)
13447         (SELECTION_EVENT_TARGET, SELECTION_EVENT_PROPERTY)
13448         (SELECTION_EVENT_TIME, x_handle_selection_event):
13449         Arg is now of type struct selection_input_event *)
13450         not struct input_event *.  All callers changed.
13452 2015-06-23  Glenn Morris  <rgm@gnu.org>
13454         * Makefile.in (install-arch-dep): Simplify with Make conditionals.
13456 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
13458         * lisp/isearch.el: Fold many unicode characters to ASCII.
13459         (isearch-character-fold-search, isearch--character-fold-extras)
13460         (isearch--character-fold-table): New variable.
13461         (isearch--character-folded-regexp): New function.
13462         (isearch-search-fun-default): Use them.
13463         * lisp/replace.el (replace-character-fold): New variable.
13464         (replace-search): Use it.
13465         * etc/NEWS: Document it.
13467 2015-06-23  Glenn Morris  <rgm@gnu.org>
13469         Check for an input event before showing a dialog box.  (Bug#20813)
13470         * lisp/subr.el (y-or-n-p):
13471         * src/fns.c (Fyes_or_no_p): Check last-input-event as well
13472         as last-nonmenu-event.
13474 2015-06-23  Jürgen Hartmann  <juergen_hartman_@hotmail.com>  (tiny change)
13476         Respect ‘switch-to-visible-buffer’ more rigidly.  (Bug#20861)
13477         * lisp/window.el (switch-to-visible-buffer): Doc adjustment.
13478         (switch-to-prev-buffer, switch-to-next-buffer): Respect
13479         switch-to-visible-buffer independent of the windows history.
13481 2015-06-23  Paul Eggert  <eggert@cs.ucla.edu>
13483         * src/keyboard.c (last_timer_event): Remove unused var.
13485 2015-06-23  Artur Malabarba  <bruce.connor.am@gmail.com>
13487         * test/automated/package-test.el (package-test-update-listing):
13488         Fix test.
13490 2015-06-23  Glenn Morris  <rgm@gnu.org>
13492         Revert 2014-06-25 nextstep/Makefile change.
13493         * nextstep/Makefile.in (${ns_appbindir}): Remove rule.
13494         (${ns_appbindir}/Emacs, links): Create ns_appbindir in the rule,
13495         not as an order-only prerequisite.
13497         * configure.ac (--with-ns): Enable by default on OS X.
13499 2015-06-23  Leo Liu  <sdl.web@gmail.com>
13501         Fix shell-for/backward-command to exclude spaces
13502         * lisp/shell.el (shell-forward-command, shell-backward-command):
13503           Handle the 'move case from re-search-forward/backward.
13504           fixes debbugs:20873
13506 2015-06-22  Juri Linkov  <juri@linkov.net>
13508         * lisp/replace.el (query-replace-read-from): Add separator to
13509         the local binding of text-property-default-nonsticky.  (Bug#20690)
13511         * lisp/simple.el (shell-command-on-region): Replace 'error' with 'user-error'.
13512         (Bug#20785)
13514 2015-06-22  Ken Brown  <kbrown@cornell.edu>
13516         Enable CPU profiling on Cygwin
13517         * src/syssignal.h [CYGWIN] (PROFILER_CPU_SUPPORT): Revert previous
13518         change that undefined this.
13519         (SIGEV_SIGNAL): Ensure that this is defined as a macro.
13520         * src/profiler.c [CYGWIN] (timer_getoverrun): Define as a macro on
13521           Cygwin.
13523         Improve diagnostics of profiler-cpu-start
13524         * src/profiler.c (setup_cpu_timer): Change return type to 'int';
13525         return -1 if the sampling interval is invalid.
13526         (Fprofiler_cpu_start): Improve error message if 'setup_cpu_timer'
13527         fails.  (Bug#20843)
13529 2015-06-22  Artur Malabarba  <bruce.connor.am@gmail.com>
13531         * lisp/emacs-lisp/package.el: Exclude packages by name.
13532         (package-hidden-regexps): New variable.
13533         (package-menu--refresh): Use it.
13534         (package-menu-hide-package): New command.
13536         * lisp/emacs-lisp/package.el: Rename hide-obsolete to toggle-hiding.
13538 2015-06-22  Eli Zaretskii  <eliz@gnu.org>
13540         Fix debug-timer-check on systems without HAVE_TIMERFD
13541         * src/atimer.c (Fdebug_timer_check) [!HAVE_TIMERFD]: Actively run
13542         the expired timers, since wait_reading_process_output doesn't.
13543         (debug_timer_callback): Enlarge the tolerance to 20 msec.
13545         Fix RCS crashes in vc-test
13546         * lisp/vc/vc-rcs.el (vc-rcs-register): Avoid crashes with some old
13547         ports of 'ci' on MS-Windows by always passing the -t- switch.
13549 2015-06-22  Glenn Morris  <rgm@gnu.org>
13551         * doc/emacs/package.texi (Packages):
13552         * doc/emacs/trouble.texi (Known Problems): Remove faq cross-references.
13554         * doc/misc/efaq-w32.texi (Downloading): Copyedits.  (Bug#20851)
13556 2015-06-22  Paul Eggert  <eggert@cs.ucla.edu>
13558         Port tests to help-quote-translation
13559         * test/automated/ert-x-tests.el (ert-test-describe-test):
13560         * test/automated/package-test.el (package-test-describe-package)
13561         (package-test-signed): Allow straight quotes, too.
13563 2015-06-22  Dmitry Gutov  <dgutov@yandex.ru>
13565         Make find-function-on-key use the current window
13566         * lisp/emacs-lisp/find-func.el (find-function-on-key-do-it):
13567         Extract from `find-function-on-key', add a second argument.
13568         (find-function-on-key): Use it (bug#19679).
13569         (find-function-on-key-other-window)
13570         (find-function-on-key-other-frame): New commands.
13572 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13574         Revert "Define `map-elt' as a generalized variable"
13575         This reverts commit 8b6d82d3ca86f76ed964063b3941a7c6ab0bf1c6.
13577 2015-06-21  Ken Brown  <kbrown@cornell.edu>
13579         Drop support for CPU profiling on Cygwin
13580         * src/syssignal.h (PROFILER_CPU_SUPPORT): Don't define on Cygwin.
13581         (Bug#20843)
13583 2015-06-21  Paul Eggert  <eggert@cs.ucla.edu>
13585         Fix some “nested” quoting confusion in doc strings
13586         * lisp/emacs-lisp/advice.el (ad-map-arglists):
13587         * lisp/kermit.el (kermit-clean-on):
13588         * lisp/mh-e/mh-comp.el (mh-repl-group-formfile):
13589         * src/keyboard.c (Frecursive_edit):
13590         Use curved quotes when quoting text containing apostrophe,
13591         so that the apostrophe isn't curved in the output.
13593 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13595         Define `map-elt' as a generalized variable
13596         * lisp/emacs-lisp/map.el (map-elt): Define a gv-expander.
13597         * lisp/emacs-lisp/map.el (map--dispatch): Tighten the code.
13598         * lisp/emacs-lisp/map.el (map-put): Redefine it as a function using a
13599         `setf' with `map-elt'.
13600         * test/automated/map-tests.el: Comment out `test-map-put-literal'.
13602 2015-06-21  Michael Albinus  <michael.albinus@gmx.de>
13604         Improve error handling in tramp-adb.el
13605         * lisp/net/tramp-adb.el (tramp-adb-handle-file-local-copy):
13606         Improve error handling.
13608 2015-06-21  Nicolas Petton  <nicolas@petton.fr>
13610         Reuse `alist-get' in map.el
13611         * lisp/emacs-lisp/map.el (map-elt): Use `alist-get' to retrieve alist
13612         elements.
13614 2015-06-21  Eli Zaretskii  <eliz@gnu.org>
13616         Fix bytecomp-tests--warnings when $TMPDIR has a long name
13617         * test/automated/bytecomp-tests.el (bytecomp-tests--warnings):
13618         Allow the warning to begin on the 3rd, not only 2nd line, which
13619         happens if temporary-file-directory has a very long name.
13621         Expect 2 icalendar tests to fail on MS-Windows
13622         * test/automated/icalendar-tests.el (icalendar-import-with-timezone)
13623         (icalendar-real-world): Make them expected failures on MS-Windows.
13625 2015-06-20  Paul Eggert  <eggert@cs.ucla.edu>
13627         Improve port of settings UI to older displays
13628         * lisp/cus-start.el (standard): Don't assume curved quotes are
13629         easily distinguishable when users are tinkering with a setting
13630         that affects how curved quotes are generated.
13632         Fix quoting in electric-quote-mode doc string
13633         * lisp/electric.el (electric-quote-mode): Fix quoting.
13634         This is a fallout from the recent change introducing
13635         ‘help-quote-translation’.
13637         Spelling fix
13639         * doc/misc/texinfo.tex, lib/set-permissions.c: Merge from gnulib.
13641         * src/doc.c (syms_of_doc): Remove unused symbols.
13643 2015-06-20  Martin Rudalics  <rudalics@gmx.at>
13645         * lisp/window.el (window-state-put): Undedicate target window
13646         before putting STATE into it.  (Bug#20848)
13648 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
13650         Merge from origin/emacs-24
13651         a5e6f33 Fixes: debbugs:20832
13652         b9f02cf Fixes: debbugs:20832
13654 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
13656         Fix file-in-directory-p when the directory is UNC
13657         * lisp/files.el (file-in-directory-p): Support files and
13658         directories that begin with "//".  (Bug#20844)
13660 2015-06-19  Stephen Berman  <stephen.berman@gmx.net>
13662         * lisp/calendar/todo-mode.el (todo-show): Don't visit todo file
13663         in the minibuffer.  (Bug#20832)
13665 2015-06-19  Nicolas Richard  <youngfrog@members.fsf.org>
13667         * lisp/calendar/todo-mode.el (todo-show): Signal an error if buffer
13668         for adding new todo file is empty but modified.  (Bug#20832)
13670 2015-06-19  Stefan Monnier  <monnier@iro.umontreal.ca>
13672         (filepos-to-bufferpos): Further tweaks to the utf-16 code
13673         * lisp/international/mule-util.el (filepos-to-bufferpos):
13674         Fix typo.  Move non-exact check to the utf-16 branch (the only one
13675         affected).  Don't use byte-to-position for the utf-16 case.
13677 2015-06-19  Eli Zaretskii  <eliz@gnu.org>
13679         Minor fixes in filepos-to-bufferpos
13680         * lisp/international/mule-util.el (filepos-to-bufferpos): Remove
13681         test for utf-8-emacs.  Exempt single-byte encodings from the
13682         'use-exact' path when QUALITY is 'exact'.  Test UTF-16 encodings
13683         for BOM before subtracting 2 bytes.  Use 'identity' when adjusting
13684         UTF-16 encoded files for CR-LF EOLs.
13686 2015-06-19  Paul Eggert  <eggert@cs.ucla.edu>
13688         Improve the optional translation of quotes
13689         Fix several problems with the recently-added custom variable
13690         help-quote-translation where the code would quote inconsistently
13691         in help buffers.  Add support for quoting 'like this', which
13692         is common in other GNU programs in ASCII environments.  Change
13693         help-quote-translation to use more mnemonic values: values are now the
13694         initial quoting char, e.g., (setq help-quote-translation ?`) gets the
13695         traditional Emacs help-buffer quoting style `like this'.  Change the
13696         default behavior of substitute-command-keys to match what's done in
13697         set-locale-environment, i.e., quote ‘like this’ if displayable,
13698         'like this' otherwise.
13699         * doc/lispref/help.texi (Keys in Documentation): Document
13700         new behavior of substitute-command-keys, and document
13701         help-quote-translation.
13702         * doc/lispref/tips.texi (Documentation Tips):
13703         Mention the effect of help-quote-translation.
13704         * etc/NEWS: Mention new behavior of substitute-command-keys,
13705         and merge help-quote-translation news into it.
13706         When talking about doc strings, mention new ways to type quotes.
13707         * lisp/cedet/mode-local.el (overload-docstring-extension):
13708         Revert my recent change to this function, which shouldn't be
13709         needed as the result is a doc string.
13710         * lisp/cedet/mode-local.el (mode-local-print-binding)
13711         (mode-local-describe-bindings-2):
13712         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
13713         * lisp/cus-theme.el (describe-theme-1):
13714         * lisp/descr-text.el (describe-text-properties-1, describe-char):
13715         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
13716         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
13717         (eieio-help-constructor):
13718         * lisp/emacs-lisp/package.el (describe-package-1):
13719         * lisp/faces.el (describe-face):
13720         * lisp/help-fns.el (help-fns--key-bindings)
13721         (help-fns--compiler-macro, help-fns--parent-mode)
13722         (help-fns--obsolete, help-fns--interactive-only)
13723         (describe-function-1, describe-variable):
13724         * lisp/help.el (describe-mode):
13725         Use substitute-command-keys to ensure a more-consistent quoting
13726         style in help buffers.
13727         * lisp/cus-start.el (standard):
13728         Document new help-quote-translation behavior.
13729         * lisp/emacs-lisp/lisp-mode.el (lisp-fdefs):
13730         * lisp/help-mode.el (help-xref-symbol-regexp, help-xref-info-regexp)
13731         (help-xref-url-regexp):
13732         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
13733         * lisp/wid-edit.el (widget-documentation-link-regexp):
13734         Also match 'foo', in case we're in a help buffer generated when
13735         help-quote-translation is ?'.
13736         * src/doc.c: Include disptab.h, for DISP_CHAR_VECTOR.
13737         (LEFT_SINGLE_QUOTATION_MARK, uLSQM0, uLSQM1, uLSQM2, uRSQM0)
13738         (uRSQM1, uRSQM2, LSQM, RSQM): New constants.
13739         (Fsubstitute_command_keys): Document and implement new behavior.
13740         (Vhelp_quote_translation): Document new behavior.
13742 2015-06-18  Glenn Morris  <rgm@gnu.org>
13744         * lisp/cus-start.el (help-quote-translation): Add :version.
13746         * src/doc.c (Fsubstitute_command_keys): Make previous change compile.
13748 2015-06-18  Alan Mackenzie  <acm@muc.de>
13750         Make translation of quotes to curly in doc strings optional.
13751         * src/doc.c (traditional, prefer-unicode): New symbols.
13752         (help-quote-translation): New variable.
13753         (Fsubstitute_command_keys): Make translation of quotes dependent on
13754         `help-quote-translation'; also translate curly quotes back to ASCII
13755         ones.
13756         * lisp/cus-start.el (top-level): Add a customization entry for
13757         `help-quote-translation'.
13759 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
13761         * lisp/emacs-lisp/package.el: Don't always propagate async errors
13762         (package--with-work-buffer-async): Only propagate the error if the
13763         callback returns non-nil.
13764         (package--download-one-archive): Return nil on the signature
13765         checking callback if we accept unsigned.
13766         (package--download-and-read-archives): Return non-nil on the
13767         archive download callback.
13769 2015-06-18  Martin Rudalics  <rudalics@gmx.at>
13771         Set image_cache_refcount before x_default_parameter calls.  (Bug#20802)
13772         * src/nsfns.m (Fx_create_frame):
13773         * src/xfns.c (Fx_create_frame, x_create_tip_frame): Move setting
13774         image_cache_refcount before first x_default_parameter call.
13776 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
13778         Improve and extend filepos-to-bufferpos
13779         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
13780         Don't barf if F returns nil for some argument.
13781         (filepos-to-bufferpos): Expand to support UTF-16 and not assume
13782         that every encoding of type 'charset' is single-byte.
13784 2015-06-18  Artur Malabarba  <bruce.connor.am@gmail.com>
13786         * lisp/emacs-lisp/package.el (package-menu--perform-transaction):
13787         Properly delete packages.  (Bug#20836)
13789 2015-06-18  Eli Zaretskii  <eliz@gnu.org>
13791         Update data files from just-released Unicode 8.0
13792         * etc/NEWS: Update wording since Unicode 8.0 is no longer in draft
13793         status.
13794         * test/BidiCharacterTest.txt: Update from Unicode 8.0.
13795         * admin/unidata/BidiMirroring.txt:
13796         * admin/unidata/BidiBrackets.txt:
13797         * admin/unidata/UnicodeData.txt: Update from Unicode 8.0.
13799 2015-06-18  Paul Eggert  <eggert@cs.ucla.edu>
13801         Document curved quotes a bit better
13802         * doc/emacs/basic.texi (Inserting Text):
13803         Mention C-x 8.  Change example to use curved quote rather
13804         than infinity, as this lets us give more ways to do it.
13805         * doc/emacs/mule.texi (International Chars): Mention C-x 8 shortcuts
13806         and quotation marks.
13807         * doc/emacs/text.texi (Quotation Marks):
13808         * doc/lispref/tips.texi (Documentation Tips):
13809         Add "curly quotes" and "curved quotes" to the index.
13810         * doc/emacs/text.texi (Quotation Marks):
13811         Give the C-x 8 shorthands for curved quotes.
13812         Cross-reference to "Quotation Marks".
13814 2015-06-17  Daiki Ueno  <ueno@gnu.org>
13816         Add pinentry.el for better GnuPG integration
13817         * lisp/pinentry.el: New file.
13818         * etc/NEWS: Add entry about pinentry.el.
13819         * lisp/epg.el (epg--start): Set INSIDE_EMACS envvar.
13820         (Bug#20550)
13822 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
13824         * lisp/emacs-lisp/package.el: Slightly better error reporting.
13826 2015-06-17  Stefan Monnier  <monnier@iro.umontreal.ca>
13828         (define-minor-mode): Use setq-default for :global minor modes
13829         * lisp/emacs-lisp/easy-mmode.el (define-minor-mode):
13830         Use setq-default for :global minor modes (bug#20712).
13832 2015-06-17  Eli Zaretskii  <eliz@gnu.org>
13834         Avoid infloop in redisplay with tall images
13835         * src/xdisp.c (try_scrolling): Prevent an infloop when scrolling
13836         down near ZV.  (Bug#20808)
13837         Call bidi_unshelve_cache to avoid memory leaks.  Use IT_CHARPOS
13838         instead of CHARPOS.
13840 2015-06-17  Artur Malabarba  <bruce.connor.am@gmail.com>
13842         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
13843         Fix error reporting.
13845         * lisp/let-alist.el: Move to lisp/emacs-lisp/let-alist.el
13847         * lisp/emacs-lisp/package.el: Revert buffer after any operation
13848         Call `package-menu--post-refresh' after any operation that changes
13849         the package database (`package-install' and `package-delete').  To
13850         avoid performance issues in large transactions, these functions
13851         add `post-refresh' to `post-command-hook' instead of calling it
13852         immediately.
13853         (package-menu--mark-or-notify-upgrades): New function.
13854         (list-packages): Add it to `package--post-download-archives-hook'.
13855         (package-menu--post-refresh): Lose the upgrade-checking code, add
13856         code to remove itself from `post-command-hook'.
13857         (package-install, package-delete): Add it to `post-command-hook'.
13858         (package-menu-execute): Don't call `package-menu--post-refresh'.
13860 2015-06-17  Stephen Leake  <stephen_leake@stephe-leake.org>
13862         Add missing function xref-location-group for elisp-mode.
13863         * lisp/progmodes/elisp-mode.el: Add missing function xref-location-group.
13865 2015-06-17  Wolfgang Jenkner  <wjenkner@inode.at>
13867         * src/editfns.c (Fbyte_to_position): Fix bytepos not at char boundary.
13868         The behavior now matches the description in the manual.  (Bug#20783)
13870 2015-06-17  Xue Fuqiao  <xfq.free@gmail.com>
13872         * etc/tutorials/TUTORIAL.cn: Update; synchronize with TUTORIAL.
13874 2015-06-17  Glenn Morris  <rgm@gnu.org>
13876         Generate char-script-table from Unicode source.  (Bug#20789)
13877         * admin/unidata/Makefile.in (AWK): New, set by configure.
13878         (all): Add charscript.el.
13879         (blocks): New variable.
13880         (charscript.el, ${unidir}/charscript.el): New targets.
13881         (extraclean): Also remove generated charscript.el.
13882         * admin/unidata/blocks.awk: New script.
13883         * admin/unidata/Blocks.txt: New data file, from unicode.org.
13884         * lisp/international/characters.el: Load charscript.
13885         * src/Makefile.in (charscript): New variable.
13886         (${charscript}): New target.
13887         (${lispintdir}/characters.elc): Depend on charscript.elc.
13888         (temacs$(EXEEXT)): Depend on charscript.
13890         * lisp/international/characters.el (char-script-table): Tweak
13891         some ranges to better match the source.  (Bug#20789#17)
13893         Remove "no-byte-compile: t" from a few files.
13894         * lisp/obsolete/bruce.el, lisp/obsolete/keyswap.el:
13895         * lisp/obsolete/patcomp.el: No reason not to compile these.
13897 2015-06-16  Glenn Morris  <rgm@gnu.org>
13899         Fix some typos in copied Unicode data.  (Bug#20789)
13900         * lisp/international/characters.el (char-script-table):
13901         * lisp/international/fontset.el (script-representative-chars)
13902         (setup-default-fontset): Fix typos.
13904         * lisp/emacs-lisp/check-declare.el (check-declare-warn):
13905         Don't print filename twice (it's in the prefix now).
13907         * lisp/emacs-lisp/pcase.el (pcase--u1): Revert earlier workaround.
13908         No longer needed.
13910         Address a compilation warning.
13911         * lisp/emacs-lisp/bytecomp.el (byte-compile-file-form-defalias):
13912         Replace 't' with '_' in pcase.
13914         Address some check-declare warnings.
13915         * lisp/simple.el (tabulated-list-print):
13916         * lisp/progmodes/elisp-mode.el (xref-collect-matches):
13917         * lisp/term/ns-win.el (ns-selection-owner-p, ns-selection-exists-p)
13918         (ns-get-selection): Update declarations.
13920         Address some compilation warnings.
13921         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
13922         * lisp/vc/vc-git.el (vc-git-file-type-as-string):
13923         Replace 't' with '_' in pcase.
13925         Address some compilation warnings.
13926         * lisp/face-remap.el (text-scale-adjust):
13927         * lisp/menu-bar.el (popup-menu-normalize-position):
13928         * lisp/emacs-lisp/byte-opt.el (byte-compile-inline-expand):
13929         * lisp/emacs-lisp/bytecomp.el (byte-compile-arglist-warn):
13930         * lisp/emacs-lisp/generator.el (cps--transform-1):
13931         * lisp/emacs-lisp/macroexp.el (macroexp--expand-all):
13932         * lisp/obsolete/vc-arch.el (vc-arch-mode-line-string):
13933         * lisp/progmodes/octave.el (octave-goto-function-definition)
13934         (octave-find-definition-default-filename):
13935         Replace 't' with '_' in pcase.
13937         * lisp/emacs-lisp/pcase.el (pcase--u1):
13938         Paper-over today's bootstrap failure.
13940 2015-06-16  Nicolas Petton  <nicolas@petton.fr>
13942         * lisp/emacs-lisp/seq.el: Fix a byte-compiler warnings related to pcase.
13944         * lisp/emacs-lisp/map.el (map-into): Fix a byte-compiler warning.
13946         Better confirmation message in `find-alternate-file' (Bug#20830)
13947         * lisp/files.el (find-alternate-file'): Improve the confirmation
13948         message to show the buffer name.
13950         Better docstring for null.  (Bug#20815)
13951         * src/data.c (null): Improves the docstring, saying what null returns
13952         when OBJECT is non-nil.
13954 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13956         * lisp/net/newst-treeview.el: Use lexical-binding.
13958         (filepos-to-bufferpos): Add missing cases.  Make sure it terminates.
13959         * lisp/international/mule-util.el (filepos-to-bufferpos--dos):
13960         New auxiliary function, extracted from filepos-to-bufferpos.
13961         Make sure it terminates.
13962         (filepos-to-bufferpos): Use it to fix the latin-1-dos case.
13963         Add support for the `exact' quality.
13965 2015-06-16  Cédric Chépied  <cedric.chepied@gmail.com>
13967         Identify feeds in newsticker treeview with :nt-feed property
13968         * lisp/net/newst-treeview.el:
13969         (newsticker--treeview-nodes-eq): Use property :nt-feed instead of :tag.
13971 2015-06-16  Stefan Monnier  <monnier@iro.umontreal.ca>
13973         * lisp/emacs-lisp/pcase.el: Improve docs and error handling.
13974         (pcase--self-quoting-p): Floats aren't self-quoting.
13975         (pcase): Tweak docstring.
13976         (pcase--u1): Deprecate the t pattern.  Improve error detection for
13977         the nil pattern.
13978         (\`): Tweak docstring.  Signal an error for unrecognized cases.
13979         (bug#20784)
13981 2015-06-16  Eli Zaretskii  <eliz@gnu.org>
13983         Fix infloop in filepos-to-bufferpos
13984         * lisp/international/mule-util.el (filepos-to-bufferpos): Fix EOL
13985         offset calculation, and make it conditional on the eol-type of the
13986         file's encoding.  (Bug#20825)
13988 2015-06-16  Martin Rudalics  <rudalics@gmx.at>
13990         Fix handling of image cache refcounts.  (Bug#20802)
13991         This backports Eli Zaretskii's solution of this problem for W32
13992         to X and NS.
13993         * src/nsfns.m (image_cache_refcount): Define unconditionally.
13994         (unwind_create_frame): If the image cache's reference count
13995         hasn't been updated yet, do that now.
13996         (Fx_create_frame): Set image_cache_refcount unconditionally.
13997         * src/xfns.c (image_cache_refcount): Define unconditionally.
13998         (unwind_create_frame): If the image cache's reference count
13999         hasn't been updated yet, do that now.
14000         (Fx_create_frame, x_create_tip_frame): Set image_cache_refcount
14001         unconditionally.
14002         * src/w32fns.c (image_cache_refcount): Make it a ptrdiff_t as on
14003         X and NS.
14005 2015-06-16  Nils Ackermann  <nils@ackermath.info>
14007         Improve reftex-label-regexps default value
14008         * lisp/textmodes/reftex-vars.el (reftex-label-regexps): Make
14009         keyvals label regexp more strict to better cope with unbalanced
14010         brackets common in math documents.
14012 2015-06-16  Glenn Morris  <rgm@gnu.org>
14014         * doc/emacs/calendar.texi (Format of Diary File):
14015         Move "nonmarking" from here...
14016         (Displaying the Diary): ... to here.
14018         * doc/emacs/calendar.texi (Format of Diary File, Displaying the Diary):
14019         Swap the order of these nodes.
14020         * doc/emacs/emacs.texi: Update detailed menu for the above change.
14022         * doc/emacs/calendar.texi (Specified Dates, Special Diary Entries):
14023         Update date of examples.
14024         (Diary, Format of Diary File): Move example from former to latter.
14025         Reduce duplication.
14027         No need for cp51932.el, eucjp-ms.el to not be compiled any more.
14028         * admin/charsets/cp51932.awk, admin/charsets/eucjp-ms.awk:
14029         Don't set no-byte-compile in the outputs.
14030         * lisp/loadup.el: Don't specify uncompiled cp51932, eucjp-ms.
14032 2015-06-15  Glenn Morris  <rgm@gnu.org>
14034         * lisp/calendar/calendar.el (diary-file): Use locate-user-emacs-file.
14035         * doc/emacs/calendar.texi (Diary, Format of Diary File):
14036         Update for above diary-file change.
14038         * lisp/macros.el (name-last-kbd-macro, kbd-macro-query)
14039         (apply-macro-to-region-lines): Use user-error.
14041         * lisp/textmodes/page-ext.el (add-new-page, pages-directory)
14042         (pages-directory-for-addresses): Doc fixes.
14044 2015-06-15  Stefan Monnier  <monnier@iro.umontreal.ca>
14046         * lisp/info.el: Cleanup bytepos/charpos issues
14047         * lisp/international/mule-util.el: Use lexical-binding.
14048         (filepos-to-bufferpos): New function.
14049         * lisp/info.el (Info-find-in-tag-table-1): Use 0-based file positions.
14050         (Info-find-node-2): Use filepos-to-bufferpos (bug#20704).
14051         (Info-read-subfile, Info-search): Use 0-based file positions.
14053         * lisp/progmodes/perl-mode.el: Refine handling of /re/ and y/abc/def/
14054         (perl--syntax-exp-intro-keywords): New var.
14055         (perl--syntax-exp-intro-regexp, perl-syntax-propertize-function): Use it.
14056         (bug#20800).
14058 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
14060         Fix quoting when making derived mode docstring
14061         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
14062         Nest regexp-quote inside format, not the reverse.
14063         Problem reported by Artur Malabarba in:
14064         http://lists.gnu.org/archive/html/emacs-devel/2015-06/msg00206.html
14066 2015-06-15  Eli Zaretskii  <eliz@gnu.org>
14068         Fix current-iso639-language on MS-Windows
14069         * lisp/international/mule-cmds.el (set-locale-environment):
14070         Downcase the locale name before interning it.  This is so the
14071         'current-iso639-language' on MS-Windows matches the ':lang'
14072         property of font-spec objects.
14074         Limit Symbola usage some more
14075         * lisp/international/fontset.el (setup-default-fontset): Limit
14076         Symbol coverage of Currency Symbols to u+20B6..u+20CF.
14077         (Bug#20727)
14079 2015-06-15  Nicolas Petton  <nicolas@petton.fr>
14081         * lisp/emacs-lisp/map.el (map-let): Better docstring.
14083 2015-06-15  Paul Eggert  <eggert@cs.ucla.edu>
14085         * test/automated/help-fns.el (abc\\\[universal-argument\]b\`c\'d\\e\"f):
14086         (help-fns-test-funny-names): Spelling fixes.
14088 2015-06-14  Glenn Morris  <rgm@gnu.org>
14090         * lisp/version.el (emacs-repository-version-git): Demote errors.
14091         Check result is a hash.
14093 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14095         * lisp/emacs-lisp/package.el (package--with-work-buffer-async):
14096         Catch errors that happen before going async.  (Bug#20809)
14098 2015-06-14  Eli Zaretskii  <eliz@gnu.org>
14100         Another improvement of documentation of set-fontset-font
14101         * doc/lispref/display.texi (Fontsets): Say explicitly that
14102         CHARACTER can be a single codepoint.
14103         * src/fontset.c (Fset_fontset_font): Doc fix.
14105         Another improvement for symbol and punctuation characters
14106         * lisp/international/fontset.el (setup-default-fontset): Exclude
14107         from Symbola character ranges for symbols and punctuation covered
14108         well by popular Unicode fonts.  Prefer fixed-misc Unicode font, if
14109         installed and where its coverage of symbols and punctuation is
14110         known to be good.  (Bug#20727)
14112 2015-06-14  Christoph Wedler  <christoph.wedler@sap.com>
14114         Some generic support for multi-mode indentation.
14115         * lisp/progmodes/prog-mode.el (prog-indentation-context):
14116         New variable.
14117         (prog-first-column, prog-widen): New convenience functions.
14119 2015-06-14  Artur Malabarba  <bruce.connor.am@gmail.com>
14121         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
14122         Don't assume that `tabulated-list-printer' will leave point at the
14123         end of the buffer.  (Bug#20810)
14125 2015-06-13  Glenn Morris  <rgm@gnu.org>
14127         Tweaks for getting repository version; a bit more like it was for bzr
14128         * lisp/version.el (emacs-repository-version-git)
14129         (emacs-repository--version-git-1): New functions,
14130         split from emacs-repository-get-version.
14131         (emacs-repository-get-version): Make the second argument meaningful.
14133         * lisp/startup.el (command-line-1): Inform if skipping relative
14134         file names due to deleted PWD.
14136         * src/xsmfns.c (x_session_initialize): Avoid libSM crash
14137         when starup directory is missing.  (Bug#18851)
14138         (errno.h): Include it.
14140 2015-06-13  Paul Eggert  <eggert@cs.ucla.edu>
14142         Better fix for documenting `X as "`X"
14143         Fix suggested by Stefan Monnier.
14144         * lisp/help-fns.el (help-fns--signature):
14145         Insert "`X", not "(\` X)", when documenting `X (Bug#20759).
14146         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
14147         Don't treat `X specially, as help-fns--signature now handles this.
14149 2015-06-13  Eli Zaretskii  <eliz@gnu.org>
14151         Improve the default fontset when Symbola is not installed
14152         * lisp/international/fontset.el (setup-default-fontset): Only
14153         prepend Symbola and FreeMono font specs for symbols and
14154         punctuation; do not replace the default spec for them.  This
14155         should have better results when Symbola/FreeMono are not
14156         installed.  (Bug#20727)
14158         Improve documentation of ':lang' in font specs
14159         * src/font.c (Ffont_spec): Doc fix: elaborate on the values and
14160         use of the ':lang' property of the font spec.
14161         * doc/emacs/frames.texi (Fonts): Document the language names that
14162         can be in the STYLE part of XLFD.
14163         * doc/lispref/display.texi (Low-Level Font): Document the ':lang'
14164         property.
14166         * nt/README: Don't advertise the (obsolescent) w32 FAQ.
14168         * nt/README.W32: Don't advertise the (obsolescent) w32 FAQ.
14170         Revert last change in fontset.el
14171         * lisp/international/fontset.el (setup-default-fontset): Revert
14172         the change "Configure Symbola font only if installed", since font
14173         search is evidently not yet set up when this function is called.
14174         (Bug#20727)
14176 2015-06-12  Glenn Morris  <rgm@gnu.org>
14178         Ensure early startup warnings are visible at the end.  (Bug#20792)
14179         * lisp/emacs-lisp/warnings.el (display-warning):
14180         If startup isn't complete, delay the warning.
14181         * lisp/startup.el (normal-top-level, command-line):
14182         Let display-warning automatically handle the needed delays.
14183         Run delayed-warnings-hook.
14185         * lisp/version.el (emacs-repository-get-version):
14186         Avoid calling external executable if possible.  (Bug#20799)
14188 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14190         Document `X as "`X", not as "(` X)"
14191         * lisp/help.el (help-split-fundoc, help--make-usage-docstring):
14192         Document (backquote FOO) as "`FOO", not as "(` FOO)" (Bug#20759).
14194         * src/print.c (print_object): Minor simplification.
14196 2015-06-12  Glenn Morris  <rgm@gnu.org>
14198         * src/buffer.c (init_buffer): Add final newline to message.
14200 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14202         Configure Symbola font only if installed
14203         * lisp/international/fontset.el (setup-default-fontset):
14204         Don't specify the Symbola font if it's not installed.
14205         Likewise for FreeMono.  (Bug#20727)
14207 2015-06-12  Eli Zaretskii  <eliz@gnu.org>
14209         Configure Symbola font only for symbols and punctuation
14210         * lisp/international/fontset.el (setup-default-fontset): Leave
14211         only symbols and punctuation in the fontset setup for Symbola
14212         font; remove "Greek and Coptic" and "Cyrillic Supplement".
14213         (Bug#20798)
14215 2015-06-12  Andreas Schwab  <schwab@linux-m68k.org>
14217         Fix crash in fontset-info
14218         * src/fontset.c (Ffontset_info): Check that the RFONT-DEF elt is
14219         non-nil.
14221 2015-06-12  Paul Eggert  <eggert@cs.ucla.edu>
14223         Port to Solaris 10 sparc + Sun C 5.13
14224         * configure.ac (SETUP_SLAVE_PTY) [sol2* | unixware]:
14225         Adjust to process.c change.
14226         * src/process.c (create_process): Declare volatile variables at
14227         top level of this function, so that they're less likely to be
14228         reused later in the function in the code executed by the vforked
14229         child.  Do not declare locals used only in the vforked child, as
14230         they might share memory with locals still live in the parent.
14231         Instead, use the same variables in the child as in the parent.
14232         This works around a subtle bug that causes a garbage collector
14233         crash when Emacs is built with Sun C 5.13 sparc on Solaris 10.
14235 2015-06-12  Glenn Morris  <rgm@gnu.org>
14237         * lisp/startup.el (normal-top-level): Don't let *Messages* get
14238         a nil default-directory.
14240 2015-06-11  Glenn Morris  <rgm@gnu.org>
14242         * lisp/startup.el (normal-top-level): Use delay-warning.  (Bug#20792)
14244         Some progress towards starting with PWD deleted.  (Bug#18851)
14245         * src/buffer.c (init_buffer): Handle get_current_dir_name failures.
14246         * lisp/startup.el (normal-top-level, command-line-1):
14247         * lisp/minibuffer.el (read-file-name-default):
14248         Handle default-directory being nil.
14250 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
14252         Fix "not a tty" bug on Solaris 10
14253         * configure.ac (PTY_OPEN): Define to plain 'open'
14254         on SVR4-derived hosts, so that the O_CLOEXEC flag isn't set.
14255         * src/process.c (allocate_pty): Set the O_CLOEXEC flag after
14256         calling PTY_TTY_NAME_SPRINTF, for the benefit of SVR4-derived
14257         hosts that call grantpt which does its work via a setuid subcommand
14258         (Bug#19191, Bug#19927, Bug#20555, Bug#20686).
14259         Also, set O_CLOEXEC even if PTY_OPEN is not defined, since it
14260         seems relevant in that case too.
14262 2015-06-11  Juri Linkov  <juri@linkov.net>
14264         * lisp/bindings.el (debug-ignored-errors): Add mark-inactive.
14265         * lisp/simple.el (kill-region): Replace 'error' with 'user-error'.
14266         (Bug#20785)
14268 2015-06-11  Glenn Morris  <rgm@gnu.org>
14270         * lisp/international/characters.el (char-script-table): Fix typo.
14272 2015-06-11  Paul Eggert  <eggert@cs.ucla.edu>
14274         Fix quoting of help for functions with odd names
14275         While investigating Bug#20759, I discovered other quoting problems:
14276         C-h f mishandled characters like backslash and quote in function names.
14277         This fix changes the behavior so that 'C-h f pcase RET' now
14278         generates "... (\` QPAT) ..." instead of "... (` QPAT) ...",
14279         because '(format "%S" '(` FOO))' returns "(\\` FOO)".  A comment
14280         in src/lread.c's read1 function says that the backslash will be
14281         needed starting in Emacs 25, which implies that 'format' is
14282         correct and the old pcase documention was wrong to omit the backslash.
14283         * lisp/emacs-lisp/nadvice.el (advice--make-docstring):
14284         * lisp/help-fns.el (help-fns--signature):
14285         * lisp/help.el (help-add-fundoc-usage):
14286         * lisp/progmodes/elisp-mode.el (elisp-function-argstring):
14287         Use help--make-usage-docstring rather than formatting
14288         help-make-usage.
14289         * lisp/emacs-lisp/pcase.el (pcase--make-docstring):
14290         Return raw docstring.
14291         * lisp/help-fns.el (help-fns--signature): New arg RAW, to return
14292         raw docstring.  Take more care to distinguish raw from cooked dstrings.
14293         (describe-function-1): Let help-fns--signature substitute
14294         command keys.
14295         * lisp/help.el (help--docstring-quote): New function.
14296         (help-split-fundoc): Use it, to quote funny characters more
14297         systematically.
14298         (help--make-usage): Rename from help-make-usage, since this
14299         should be private.  Leave an obsolete alias for the old name.
14300         (help--make-usage-docstring): New function.
14301         * test/automated/help-fns.el (help-fns-test-funny-names): New test.
14303 2015-06-11  Stefan Monnier  <monnier@iro.umontreal.ca>
14305         * lisp/thingatpt.el (in-string-p): Revert last change,
14306         since in-string-p is not used in thingatpt.el but only from outside.
14307         Also, use lexical binding.
14309 2015-06-11  Artur Malabarba  <bruce.connor.am@gmail.com>
14311         * lisp/let-alist.el (let-alist--deep-dot-search): Fix cons.
14312         * test/automated/let-alist.el (let-alist-cons): Test it.
14314 2015-06-11  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
14316         * src/syntax.c (Fbackward_prefix_chars): Reword docstring.
14318 2015-06-10  Glenn Morris  <rgm@gnu.org>
14320         * build-aux/gitlog-to-emacslog: Also ignore pointless merge commits.
14322         Improve generated ChangeLog for gitmerge.el commits.  (Bug#20717)
14323         * build-aux/gitlog-to-changelog: Handle gitmerge.el skipped commits.
14324         * admin/gitmerge.el (gitmerge-commit-message):
14325         Exclude "skipped" messages from ChangeLog once again.
14327         Slight namespace cleanup for thingatpt.el.
14328         * lisp/thingatpt.el (thing-at-point--in-string-p)
14329         (thing-at-point--end-of-sexp, thing-at-point--beginning-of-sexp)
14330         (thing-at-point--read-from-whole-string): Rename from
14331         old versions without "thing-at-point--" prefix.
14332         Keep old versions as obsolete aliases.  Update all uses.
14334         * lisp/emacs-lisp/checkdoc.el (checkdoc-get-keywords):
14335         Move requiring of finder from here...
14336         (checkdoc-package-keywords): ... to here.
14338         Use 'user-error' in a few calendar files.
14339         * lisp/calendar/appt.el (appt-add):
14340         * lisp/calendar/calendar.el (calendar-absolute-from-gregorian)
14341         (calendar-generate):
14342         * lisp/calendar/diary-lib.el (diary-mail-entries, diary-cyclic):
14343         Replace 'error' with 'user-error'.
14345         * lisp/progmodes/f90.el (f90-backslash-not-special): Use user-error.
14347         * lisp/files-x.el (add-file-local-variable):
14348         Special-case 'lexical-binding'.  (Bug#20641)
14350         * lisp/progmodes/executable.el (executable-self-display): Obsolete.
14351         No longer autoload.
14352         * doc/misc/autotype.texi (Executables):
14353         Undocument executable-self-display.
14355         * lisp/progmodes/executable.el (executable-self-display):
14356         Use non-obsolete tail syntax.  (Bug#20779)
14357         (executable-self-display): Doc update.
14359 2015-06-10  Stefan Monnier  <monnier@iro.umontreal.ca>
14361         * lisp/emacs-lisp/checkdoc.el: Use lexical-binding
14362         (finder-known-keywords): Silence byte-compiler.
14364 2015-06-09  Stefan Monnier  <monnier@iro.umontreal.ca>
14366         * lisp/simple.el (eval-expression): Macroexpand before evaluating
14367         (bug#20730).
14369         * lisp/progmodes/sh-script.el: Better handle nested quotes.
14370         (sh-here-doc-open-re): Don't mis-match the <<< operator (bug#20683).
14371         (sh-font-lock-quoted-subshell): Make sure double quotes within single
14372         quotes don't mistakenly end prematurely the surrounding string.
14374         * lisp/progmodes/elisp-mode.el: Require cl-lib for cl-defstruct.
14376 2015-06-09  Glenn Morris  <rgm@gnu.org>
14378         * test/automated/Makefile.in (ELFILES): Sort.
14380         * Makefile.in (SUBDIR_MAKEFILES):
14381         * lwlib/Makefile.in (WARN_CFLAGS):
14382         Use built-in Make functions rather than echo+sed.
14384 2015-06-09  Eli Zaretskii  <eliz@gnu.org>
14386         Update char-script-table
14387         * lisp/international/characters.el (char-script-table): Update
14388         from Unicode 8.0 Draft.
14390         Improve font selection for punctuation and other symbols
14391         * src/fontset.c (face_for_char): If the character's script is
14392         'symbol', and the font used for ASCII face has a glyph for it, use
14393         the font for the ASCII face instead of searching the fontsets.
14394         This comes instead of NS-specific code that used the current
14395         face's font instead, which is now disabled due to undesirable
14396         consequences.  (Bug#20727)
14398 2015-06-08  Dmitry Gutov  <dgutov@yandex.ru>
14400         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
14401         Skip past `#' to find BEG (bug#20771).
14402         * test/automated/elisp-mode-tests.el
14403         (elisp-completes-functions-after-hash-quote): New test.
14405 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
14407         Fix compilation warning/error in --without-x builds
14408         * src/xdisp.c (append_space_for_newline): Condition GUI-specific
14409         code on HAVE_WINDOW_SYSTEM.
14411         Improve the default fontset wrt symbols
14412         * lisp/international/fontset.el (setup-default-fontset): Better
14413         setup of fontset-default for symbols: use Symbola and FreeMono.
14414         (Bug#20727)
14416 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
14418         Add new command checkdoc-package-keywords
14419         * lisp/emacs-lisp/checkdoc.el (checkdoc-package-keywords-flag):
14420         New defcustom.
14421         (checkdoc-list-of-strings-p): Add doc.
14422         (checkdoc-current-buffer): When `checkdoc-package-keywords-flag' is
14423         non-nil, call `checkdoc-package-keywords'.
14424         (checkdoc-get-keywords): New defun.
14425         (checkdoc-package-keywords): New command.  Warns if the current file
14426         has package.el-style keywords that aren't in `finder-known-keywords'.
14427         * etc/NEWS: Add entry.
14429 2015-06-08  Eli Zaretskii  <eliz@gnu.org>
14431         Avoid crashes when key-binding is called from a timer
14432         * src/keymap.c (Fkey_binding): Don't segfault if called with an
14433         empty vector as KEY.  (Bug#20705)
14435         Fix a thinko in arc-mode.el
14436         * lisp/arc-mode.el (archive-zip-summarize): Fix last change in the
14437         non-Zip64 case.  (Bug#20769)
14439 2015-06-08  Artur Malabarba  <bruce.connor.am@gmail.com>
14441         * lisp/emacs-lisp/package.el (package-delete): Make interactive.
14443 2015-06-08  Oleh Krehel  <ohwoeowho@gmail.com>
14445         * lisp/emacs-lisp/checkdoc.el (checkdoc-file): New function.
14446         (checkdoc-error): When `checkdoc-diagnostic-buffer' is set to
14447         "*warn*", print the warning to the standard output.  (bug#20754)
14449 2015-06-07  Glenn Morris  <rgm@gnu.org>
14451         * admin/update_autogen (changelog_files): Remove gitlog-to-emacslog.
14453         * src/font.c (syms_of_font) <font-log>: Doc fix.
14455         Remove the obsolete leading "*" from some C doc strings.
14456         * src/coding.c (syms_of_coding):
14457         * src/font.c (syms_of_font): Remove leading "*" from docs.
14458         * lisp/cus-start.el (enable-character-translation): Add it.
14460 2015-06-07  Paul Eggert  <eggert@cs.ucla.edu>
14462         Move gen_origin from program to data
14463         That way, 'make change-history' needs to change only ChangeLog.2,
14464         instead of having to change two files.
14465         * ChangeLog.2: Add commit info for range that this file covers.
14466         * Makefile.in (new_commit_regexp): New macro.
14467         (change-history-nocommit): Simplify, by putting what used to be
14468         the gen_origin value into the data (ChangeLog.2) rather than
14469         into the program (gitlog-to-emacslog).
14470         * build-aux/gitlog-to-emacslog (gen_origin): Calculate from
14471         the input file (e.g., ChangeLog.2) rather than by having a
14472         constant in the program.  Substitute it into the output.
14474 2015-06-07  Dmitry Gutov  <dgutov@yandex.ru>
14476         * lisp/help-fns.el (help-fns--signature): Quote any quotes in the
14477         function name (bug#20759).
14479 2015-06-07  Eli Zaretskii  <eliz@gnu.org>
14481         Adapt 'struct timespec' to next release of MinGW runtime
14482         * nt/inc/ms-w32.h (struct timespec): Don't declare if
14483         __struct_timespec_defined is defined.
14485 2015-06-06  Paul Eggert  <eggert@cs.ucla.edu>
14487         Merge from gnulib
14488         This incorporates:
14489         2015-06-06 acl-permissions: pacify -Wsuggest-attribute=const
14490         2015-06-05 stdio: Don't redefine gets when using C++
14491         2015-06-05 acl-permissions: port to AIX, C89 HP-UX
14492         2015-06-02 file-has-acl: fix build on Mac OS X 10
14493         2015-06-01 gnulib-tool: concatenate lib_SOURCES to a single line
14494         2015-06-01 pthread_sigmask: discount system version if a simple macro
14495         2015-05-31 readlinkat: avoid OS X 10.10 trailing slash bug
14496         * doc/misc/texinfo.tex, lib/acl-internal.h, lib/get-permissions.c:
14497         * lib/readlinkat.c, lib/set-permissions.c, lib/stdio.in.h:
14498         * m4/acl.m4, m4/pthread_sigmask.m4, m4/readlinkat.m4: Copy from gnulib.
14499         * lib/gnulib.mk: Regenerate.
14501 2015-06-06  Juri Linkov  <juri@linkov.net>
14503         * lisp/progmodes/grep.el (zrgrep): Let-bind grep-highlight-matches
14504         before calling grep-compute-defaults because now it affects the
14505         command lines computed in grep-compute-defaults.  (Bug#20728)
14507 2015-06-06  Glenn Morris  <rgm@gnu.org>
14509         Address some compilation warnings.
14510         * lisp/international/mule-cmds.el (w32-get-console-codepage)
14511         (w32-get-console-output-codepage):
14512         * lisp/progmodes/elisp-mode.el (xref-collect-references):
14513         * lisp/version.el (cairo-version-string): Declare.
14514         * lisp/erc/erc.el (erc-nickname-in-use): Fix typo.
14516 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
14518         Fix display when a font claims large values of ascent and descent
14519         This fixes bug#20628.
14520         * src/xdisp.c (get_phys_cursor_geometry): Correct the Y
14521         coordinate of a hollow cursor glyph when the original glyph's
14522         ascent is too small.
14523         (get_font_ascent_descent, normal_char_ascent_descent)
14524         (normal_char_height): New functions.
14525         (handle_single_display_spec, append_space_for_newline)
14526         (calc_pixel_width_or_height, produce_stretch_glyph)
14527         (calc_line_height_property): Use normal_char_ascent_descent and
14528         normal_char_height.
14529         (x_produce_glyphs): When font-global values of ascent and descent
14530         are too large, use per-character glyph metrics instead, if
14531         possible.  But don't allow the glyph row's ascent and descent
14532         values become smaller than the values from the metrics of the
14533         font's "normal" character.
14534         * src/xftfont.c (xftfont_draw):
14535         * src/w32font.c (w32font_draw): Correct the values of ascent and
14536         descent used to draw glyphless characters' hex code in a box.
14537         * src/xterm.c (x_draw_glyph_string_background):
14538         * src/xdisp.c (x_produce_glyphs):
14539         * src/w32term.c (x_draw_glyph_string_background):
14540         * src/nsterm.m (ns_maybe_dumpglyphs_background): Use FONT_TOO_HIGH
14541         to detect fonts whose global ascent and descent values are too
14542         large to be used in layout decision, and redraw the background
14543         when that happens.
14544         * src/dispextern.h (FONT_TOO_HIGH): New macro.
14545         (get_font_ascent_descent): Add prototype.
14546         * src/xterm.c (x_new_font):
14547         * src/w32term.c (x_new_font):
14548         * src/nsterm.m (x_new_font):
14549         * src/font.c (font_open_entity):
14550         * src/composite.c (composition_gstring_width):
14551         Use get_font_ascent_descent to obtain reasonable values for ascent
14552         and descent of a font.
14554 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
14556         Add assertion in adjust_point_for_property
14557         * src/keyboard.c (adjust_point_for_property): Add eassert for
14558         current buffer being shown in selected window.
14560 2015-06-06  Dmitry Gutov  <dgutov@yandex.ru>
14562         Replace uses of in-string-p; make it obsolete
14563         * lisp/thingatpt.el (in-string-p): Declare obsolete (bug#20732).
14564         (end-of-sexp, beginning-of-sexp): Use syntax-ppss instead.
14566 2015-06-06  Eli Zaretskii  <eliz@gnu.org>
14568         Fix Dired display of an explicit list of files by ls-lisp.el
14569         * lisp/ls-lisp.el (ls-lisp-uid-d-fmt, ls-lisp-uid-s-fmt)
14570         (ls-lisp-gid-d-fmt, ls-lisp-gid-s-fmt): Make the initial values be
14571         correct for when displaying individual files separately, not as
14572         part of listing a directory, in which case these values are not
14573         recomputed by 'ls-lisp-insert-directory', but used verbatim.
14575         * lisp/dired.el (dired): Doc fix.  (Bug#20739)
14577 2015-06-06  Nicolas Richard  <youngfrog@members.fsf.org>
14579         Do not adjust point in a non-selected window
14580         * src/keyboard.c (command_loop_1): Do not adjust point when
14581         current buffer is not shown in selected window (Bug#20590).
14583         * etc/DEBUG: Mention 'maybe_call_debugger'
14585 2015-06-05  Nicolas Petton  <nicolas@petton.fr>
14587         Fix a unit test for map.el
14588         * test/automated/map-tests.el (test-map-let): Fix the test to work
14589         with the new syntax of `map-let'.
14591         * lisp/emacs-lisp/map.el (map-let): Better docstring.
14593         Better syntax for the map pcase pattern
14594         * lisp/emacs-lisp/map.el: Improves the map pcase pattern to take
14595         bindings of the form (KEY PAT) or SYMBOL.  KEY is not quoted.
14597         * lisp/emacs-lisp/map.el (map--dispatch): Better docstring.
14599         Fix a byte-compiler error in map-put and map-delete
14600         * lisp/emacs-lisp/map.el (map-put, map-delete): Ensure that `setq' is
14601         called with a symbol.
14603 2015-06-05  Glenn Morris  <rgm@gnu.org>
14605         * admin/gitmerge.el (gitmerge-commit-message):
14606         Revert to including "skipped" messages in ChangeLog once again.
14608 2015-06-05  Tassilo Horn  <tsdh@gnu.org>
14610         Use string> instead of equiv lambda with string<
14611         * lisp/help.el (view-emacs-news): Use string> instead of equivalent
14612         lambda with string<.
14614 2015-06-05  Glenn Morris  <rgm@gnu.org>
14616         * lisp/emacs-lisp/map.el (map--dispatch): Move before use.
14617         (map--delete-array): Fix typo.
14619         * test/automated/map-tests.el: Replace "assert" with "should".
14621         * lisp/Makefile.in (SUBDIRS): Rename from SUBDIRS_ABS.
14622         (SUBDIRS_REL): Derive from SUBDIRS.
14624         Tweak some build messages.
14625         * lisp/Makefile.in ($(lisp)/loaddefs.el):
14626         * lisp/cus-dep.el (custom-make-dependencies):
14627         * lisp/finder.el (finder-compile-keywords): Say what we are doing.
14628         * lisp/international/titdic-cnv.el (batch-titdic-convert):
14629         Don't say how to compile.
14631 2015-06-05  Paul Eggert  <eggert@cs.ucla.edu>
14633         Omit U+0332 COMBINING LOW LINE in previous change
14634         It turns out that it does not work on Ubuntu 15.04.
14636         Fix transliteration of Bahá'í months
14637         * lisp/calendar/cal-bahai.el (calendar-bahai-month-name-array):
14638         Improve quality of Latin transliteration of Bahá'í month names.
14640         Fix curved quotes in a few places
14641         * lisp/calc/calc-misc.el (calc-help): Fix quoting.
14642         The strings in question are not doc strings, so this partially
14643         undoes the recent change that assumed they were doc strings.
14644         * lisp/cedet/srecode/srt-mode.el (srecode-macro-help):
14645         * lisp/info.el (Info-finder-find-node):
14646         Use curved quotes.
14647         * lisp/emacs-lisp/derived.el (derived-mode-make-docstring):
14648         Also allow curved quotes in doc strings.
14650 2015-06-04  Glenn Morris  <rgm@gnu.org>
14652         * lisp/Makefile.in (AM_V_at): Add missing definition.
14654         * lisp/Makefile.in: Quieten output a bit.
14655         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el):
14656         Don't echo directories, since the commands we invoke print them.
14658         * lisp/Makefile.in: Replace shell fragments in variables with $(shell).
14659         (SUBDIRS_REL, SUBDIRS_ABS, SUBDIRS_ALMOST, SUBDIRS_FINDER)
14660         (SUBDIRS_SUBDIRS): New variables.
14661         (setwins, setwins_almost, setwins_finder, setwins_for_subdirs):
14662         Remove.
14663         ($(lisp)/cus-load.el, $(lisp)/finder-inf.el, $(lisp)/loaddefs.el)
14664         (update-subdirs, compile-main, compile-clean):
14665         Replace "setwins" usage with new "SUBDIRS" variables.
14667         * lisp/vc/compare-w.el (compare-windows-get-window-function):
14668         Fix :version tag.
14670 2015-06-04  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14672         * src/ftfont.c (ftfont_open2): Round divisions by upEM.
14674         Undo removal of x_clear_area call on expose for GTK3 or cairo
14675         * src/xterm.c (handle_one_xevent) [HAVE_GTK3 || USE_CAIRO]:
14676         Clear exposed area.  (Bug#20677)
14678 2015-06-04  Glenn Morris  <rgm@gnu.org>
14680         * doc/lispref/hash.texi (Creating Hash): Remove obsolete makehash.
14682         * lisp/Makefile.in (check-defun-dups): Also skip ldefs-boot.
14684         * lisp/leim/quail/lrt.el (quail-lrt-update-translation):
14685         Rename from quail-lao-update-translation, since lao.el defines that.
14687 2015-06-04  Dmitry Gutov  <dgutov@yandex.ru>
14689         Handle new-style advice in find-funct
14690         * lisp/emacs-lisp/find-func.el (find-function-advised-original):
14691         Handle new-style advice.  Return the symbol's function definition.
14692         (Bug#20718)
14693         (find-function-library): Update accordingly.
14695 2015-06-04  Nicolas Petton  <nicolas@petton.fr>
14697         Merge branch 'map'
14699         * lisp/emacs-lisp/map.el: Better docstring for the map pcase macro.
14701         Add new function string-greaterp
14702         * lisp/subr.el (string-greaterp): New function.  Also aliased to
14703         `string>'.
14704         * test/automated/subr-tests.el (string-comparison-test): Add unit
14705         tests for `string>'and `string<'.
14706         * src/fns.c (string-lessp): Better docstring.
14708 2015-06-04  Eli Zaretskii  <eliz@gnu.org>
14710         Fix timezone-related functions on MS-Windows
14711         * src/editfns.c (set_time_zone_rule) [WINDOWSNT]: Always call
14712         'xputenv', even if no reallocation of tzvalbuf was necessary.
14713         This fixes a bug in timezone-related functions on MS-Windows.
14714         Reported by Fabrice Popineau <fabrice.popineau@gmail.com>.
14716 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
14718         Don't pass raw directory name to 'error'
14719         * lisp/files.el (basic-save-buffer-2): Avoid format error if
14720         a directory name contains a string like "%s".
14722 2015-06-03  Dmitry Gutov  <dgutov@yandex.ru>
14724         Override 'grep --color=always'
14725         * lisp/progmodes/xref.el (xref-collect-matches):
14726         Override --color=always in grep-find-template.
14728 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
14730         Fix error introduced recently in file-notify-tests.el
14731         * test/automated/file-notify-tests.el
14732         (file-notify--test-remote-enabled): Do not use `file-notify--test-desc'.
14733         (file-notify--deftest-remote): Revert previous patch, not
14734         necessary anymore.
14736 2015-06-03  Wolfgang Jenkner  <wjenkner@inode.at>
14738         * src/indent.c (Fvertical_motion): Amend motion by 0 lines.
14739         Starting from a display string after a newline, point went to the
14740         previous line.  Also, fix an inadvertent use of a buffer position
14741         with FETCH_BYTE.  (Bug#20701)
14743 2015-06-03  Michael Albinus  <michael.albinus@gmx.de>
14745         Instrument file-notify-test.el in order to catch hydra error
14746         * test/automated/file-notify-tests.el (file-notify--deftest-remote):
14747         Wrap body by `ignore-case', in order to trap non-local errors.
14749 2015-06-03  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
14751         Undo previous changes in non-toolkit scroll bar drawing
14752         * src/xterm.c (x_scroll_bar_set_handle, x_scroll_bar_expose)
14753         [!USE_TOOLKIT_SCROLL_BARS]: Draw into scroll bar window.  (Bug#20668)
14755 2015-06-03  Paul Eggert  <eggert@cs.ucla.edu>
14757         * .gitignore: Also ignore doc/*/*/*.html and .ps.
14759         Support quotes 'like this' in info files
14760         This is possible when 'makeinfo --disable-encoding' is used
14761         in Texinfo 5.
14762         * lisp/calc/calc-help.el (calc-describe-thing):
14763         * lisp/gnus/gnus-art.el (gnus-button-alist):
14764         * lisp/info.el (Info-find-index-name):
14765         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
14766         Also support quotes 'like this'.
14767         * lisp/calc/calc-help.el (calc-describe-thing): Simplify.
14768         * lisp/finder.el (finder-font-lock-keywords): Remove var that
14769         hasn't been used in years, instead of bothering to fix its quoting.
14771 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
14773         * .gitignore: Remove !test/etags/html-src/*.html.
14774         It's no longer needed, since *.html was removed.  Sort.
14776 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
14778         Restore <D> instead of '.' in grep-find-template
14779         * lisp/cedet/semantic/symref/grep.el
14780         (semantic-symref-grep-use-template): Update a comment.
14781         * lisp/progmodes/grep.el (grep-compute-defaults): Restore <D>
14782         instead of '.' in grep-find-template (bug#20719).
14783         (rgrep): Pass nil as the directory to rgrep-default-command.
14784         * lisp/progmodes/grep.el (grep-expand-keywords): Use '.' as the
14785         default value for DIR.
14786         * lisp/progmodes/xref.el (xref-collect-matches): Drop the
14787         workaround.
14789 2015-06-02  Glenn Morris  <rgm@gnu.org>
14791         * configure.ac (emacs_config_features): Add X toolkit and scroll-bars.
14793         * configure.ac (emacs_config_features): Add Cairo.
14795         * configure.ac [HAVE_GTK3]: Remove USE_CAIRO that gets reset later.
14797 2015-06-02  Michael Albinus  <michael.albinus@gmx.de>
14799         Ensure that autorevert works for remote files in file-notify-tests.el
14800         * test/automated/file-notify-tests.el (file-notify--test-desc):
14801         New defvar.
14802         (file-notify--test-remote-enabled)
14803         (file-notify-test00-availability, file-notify-test01-add-watch)
14804         (file-notify-test02-events): Use it.
14805         (file-notify--test-event-test): Check proper descriptor.
14806         (file-notify-test03-autorevert): Ensure that
14807         `visited-file-modtime' has changed.  (Bug#20392)
14809 2015-06-02  Nicolas Petton  <nicolas@petton.fr>
14811         Add a pcase pattern for maps and `map-let' based on it
14812         * lisp/emacs-lisp/map.el (map-let): New macro.
14813         (map--make-pcase-bindings, map--make-pcase-patterns): New functions.
14814         * test/automated/map-tests.el: New test for `map-let'.
14816 2015-06-02  Dmitry Gutov  <dgutov@yandex.ru>
14818         Reuse rgrep mechanics in xref-find-regexp
14819         * lisp/progmodes/grep.el (rgrep-default-command):
14820         Extract from `rgrep'.
14821         * lisp/progmodes/xref.el (xref-collect-references): Split from
14822         `xref-collect-matches'.  Only handle the case of symbol search.
14823         (xref-collect-matches): Instead of Semantic Symref, use
14824         `rgrep-default-command', to take advantage of its directory and
14825         file ignore settings.
14826         (xref--collect-match): Remove the last argument, leaving the
14827         regexp construction up to the caller.
14828         * lisp/progmodes/elisp-mode.el (elisp--xref-find-matches):
14829         Change to take the xref-collect- function to use as an argument.
14830         (elisp-xref-find): Update accordingly.
14831         * lisp/progmodes/etags.el (etags--xref-find-matches)
14832         (etags-xref-find): Same.
14834         Move xref-elisp-location to elisp-mode.el
14835         * lisp/progmodes/xref.el (xref-elisp-location)
14836         (xref-make-elisp-location, xref-location-marker): Remove here.
14837         (xref--xref): Don't limit the type of the location slot.
14838         * lisp/progmodes/elisp-mode.el (xref-elisp-location):
14839         Define as a cl-struct here.
14840         (xref-location-marker): Move here.
14842 2015-06-02  Eli Zaretskii  <eliz@gnu.org>
14844         Minor tweaks for .gitignore
14845         * .gitignore: Don't ignore versioned *.html and *.ps files.
14846         Don't ignore admin/notes/tags that might be ignored as TAGS
14847         on case-insensitive filesystems.  (Bug#20710)
14849 2015-06-02  Paul Eggert  <eggert@cs.ucla.edu>
14851         Generate curved quotes in ert doc
14852         * lisp/emacs-lisp/ert.el (ert--print-test-for-ewoc)
14853         (ert-results-mode-menu)
14854         (ert-results-pop-to-backtrace-for-test-at-point)
14855         (ert-results-pop-to-messages-for-test-at-point)
14856         (ert-results-pop-to-should-forms-for-test-at-point)
14857         (ert-describe-test):
14858         Quote ‘like this’, not `like this', when generating doc strings
14859         and the like.
14860         * test/automated/ert-x-tests.el (ert-test-describe-test):
14861         Allow quoting ‘like this’.
14863 2015-06-02  Nicolas Richard  <youngfrog@members.fsf.org>
14865         Add test for previous commit
14866         * test/automated/replace-tests.el: New file.
14867         (query-replace--split-string-tests): Add test for previous commit.
14869         Avoid confusion in query-replace history when replacing NUL chars
14870         * lisp/replace.el (query-replace--split-string): New function.
14871         (query-replace-read-from): Rely on the 'separator' property
14872         instead of searching for the NUL character (Bug#20690).
14874 2015-06-02  Glenn Morris  <rgm@gnu.org>
14876         Merge from origin/emacs-24
14877         8b5f2f4 * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
14879         * admin/gitmerge.el (gitmerge-commit-message):
14880         Exclude "skipped" messages from ChangeLog.
14882 2015-06-01  Michael Albinus  <michael.albinus@gmx.de>
14884         Sync with Tramp repository
14885         * lisp/net/tramp.el (tramp-message): Dump connection buffer error
14886         messages.
14887         (tramp-handle-make-auto-save-file-name): When calling
14888         `make-auto-save-file-name' internally, make sure it uses Unix-like
14889         behavior, not Windows-like behavior.
14890         * lisp/net/tramp-sh.el (tramp-set-file-uid-gid): Add a timeout for
14891         the local case, because "chown" might fail on w32.
14892         * lisp/net/trampver.el (tramp-repository-get-version): Don't run
14893         for XEmacs.
14895 2015-06-01  Eli Zaretskii  <eliz@gnu.org>
14897         MS-Windows followup for batch stdout/stderr output changes
14898         * lisp/international/mule-cmds.el (set-locale-environment):
14899         In batch mode, use console codepages for keyboard and terminal
14900         encoding.  (Bug#20545)
14902         Update .gitattributes for DOS EOL files
14903         * .gitattributes: Use "whitespace=cr-at-eol" for files with DOS
14904         CRLF end-of-line format.
14906         NS equivalents of xterm.c and w32term.c changes
14907         * src/nsterm.m (ns_maybe_dumpglyphs_background): Force redraw of
14908         glyph string background also when the font in use claims
14909         preposterously large global height value.  Helps to remove
14910         artifacts left from previous displays when glyphless characters
14911         are displayed as hex code in a box.
14912         (x_new_font): Call get_font_ascent_descent to obtain a reasonable
14913         value for FRAME_LINE_HEIGHT, even when a font claims very large
14914         value for its height.
14916 2015-06-01  Paul Eggert  <eggert@cs.ucla.edu>
14918         Avoid grave accent quoting in stderr diagnostics
14919         A few Emacs diagnostics go directly to stderr, and so can't easily
14920         contain curved quotes (as non-UTF-8 locales might mishandle them).
14921         Instead of bothering to add support for this rarity, reword the
14922         diagnostics so that they don't use grave accent to quote.
14923         * src/alloc.c (mark_memory): Fix comment.
14924         * src/buffer.c (init_buffer):
14925         * src/dispnew.c (init_display):
14926         * src/emacs.c (main, sort_args):
14927         * src/lread.c (dir_warning):
14928         * src/term.c (init_tty):
14929         * src/unexmacosx.c (unexec):
14930         * src/xfns.c (select_visual):
14931         * src/xterm.c (cvt_string_to_pixel, x_io_error_quitter):
14932         Reword stderr diagnostics to avoid quoting `like this'.
14933         * src/unexmacosx.c: Include errno.h.
14934         * src/xfns.c (select_visual): Encode value for locale.
14936 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
14938         Treat batch stdout/stderr like standard display
14939         Calls like (print FOO) could generate improperly encoded or
14940         hard-to-read output if FOO contains characters outside the system
14941         locale.  Fix this by treating batch stdout and stderr like
14942         interactive standard display, when it comes to transliterating and
14943         encoding characters (Bug#20545).
14944         * doc/emacs/mule.texi (Communication Coding):
14945         * doc/lispref/display.texi (Active Display Table):
14946         * doc/lispref/nonascii.texi (Locales):
14947         * etc/NEWS:
14948         * src/coding.c (syms_of_coding):
14949         * src/dispnew.c (syms_of_display):
14950         Document this.
14951         * src/print.c: Include disptab.h.
14952         (printchar_to_stream): New function, with much of the guts of the
14953         old Fexternal_debugging_output, except this one also uses the
14954         standard display table.
14955         (printchar, strout, Fexternal_debugging_output): Use it.
14957 2015-05-31  Glenn Morris  <rgm@gnu.org>
14959         * src/emacs.c (syms_of_emacs) <system-configuration-features>: Doc fix.
14961 2015-05-31  Paul Eggert  <eggert@cs.ucla.edu>
14963         Remove DEFSYMs that aren't used at the C level.  Also:
14964         * src/decompress.c (Qzlib_dll):
14965         * src/font.c (Qunicode_sip):
14966         * src/frame.c (Qtip_frame):
14967         * src/ftfont.c (Qserif):
14968         * src/gnutls.c (Qgnutls_dll):
14969         * src/xml.c (Qlibxml2_dll):
14970         Move from here ...
14971         * src/w32fns.c (syms_of_w32fns): ... to here,
14972         as these are used only on MS-Windows.
14974 2015-05-31  Michael Albinus  <michael.albinus@gmx.de>
14976         Use another default value for tramp-histfile-override
14977         * lisp/net/tramp-sh.el (tramp-histfile-override):
14978         Use ".tramp_history" as default.
14979         Fixes bug#20446
14981 2015-05-29  Nicolas Petton  <nicolas@petton.fr>
14983         * doc/emacs/emacs.texi: Update the ISBN of the Emacs manual.
14985 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
14987         * etc/NEWS: Add an entry about map.el.
14989         Improve the docstring of functions in map.el
14990         Since a map is not a data structure but a concept, adding information
14991         about the possible types of maps can be useful information.
14992         * lisp/emacs-lisp/map.el: Add documentation about the type of MAP to
14993         each public function.
14995 2015-04-29  Nicolas Petton  <nicolas@petton.fr>
14997         * lisp/emacs-lisp/map.el (map-empty-p): Faster implementation using
14998         specific tests depending on the type of the map.
15000         * lisp/emacs-lisp/map.el: Better docstrings.
15002 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
15004         * lisp/emacs-lisp/map.el (map-pairs): Dump redundant lambda.
15006 2015-04-25  Nicolas Petton  <nicolas@petton.fr>
15008         * lisp/emacs-lisp/map.el (map--elt-list): Better docstring.
15010         * lisp/emacs-lisp/map.el (map--elt-list): Minor refactoring.
15012         Fix a false negative in `map-elt' with alists and values being nil
15013         * lisp/emacs-lisp/map.el (map-elt): If map is an alist and key is
15014         found but its associated value is nil, do not return the default
15015         value.
15016         * test/automated/map-tests.el: Add a regression test.
15018 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
15020         * lisp/emacs-lisp/map.el (map--dispatch): Improve the docstring.
15022         Do not signal an error when trying to delete a key from an array
15023         * lisp/emacs-lisp/map.el (map-delete): When map is an array, check if
15024         the key is present to avoid signaling an error.
15025         * test/automated/map-tests.el: Add a test for deleting non-existing
15026         keys from maps.
15028         * lisp/emacs-lisp/map.el: Better docstring.
15030         Minor improvement in map-elt
15031         * lisp/emacs-lisp/map.el (map-elt): Do not use `ignore-errors' when
15032         doing a lookup in arrays, but check the boundaries of the array
15033         instead.
15034         * test/automated/map-tests.el: Adds a test for `map-elt' with arrays
15035         and a negative integer as key.
15037 2015-04-21  Nicolas Petton  <nicolas@petton.fr>
15039         * test/automated/map-tests.el: Refactoring of test methods.
15041         * test/automated/map-tests.el: Renamed from map-test.el.
15043 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
15045         * lisp/emacs-lisp/map.el (map-into): Better error message.
15047         * lisp/emacs-lisp/map.el: Remove byte-compilation warnings.
15049         Throw an error when converting a map into an unknown map type
15050         * lisp/emacs-lisp/map.el (map-into): Throw an error if type is
15051         not valid.
15052         * test/automated/map-test.el: Add a regression test.
15054         New library map.el similar to seq.el but for mapping data structures.
15055         * test/automated/map-test.el: New file.
15056         * lisp/emacs-lisp/map.el: New file.
15058 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
15060         * lisp/progmodes/etags.el (tag-implicit-name-match-p): Make sure
15061         there's no explicit tag name (bug#20629).
15063 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
15065         Remove format2
15066         * src/editfns.c, src/lisp.h (format2): Remove.
15067         It is more trouble than it's worth, now that we have CALLN.
15068         This is just a minor refactoring.
15069         * src/buffer.c (Fkill_buffer):
15070         * src/dbusbind.c (XD_OBJECT_TO_STRING):
15071         * src/fileio.c (barf_or_query_if_file_exists):
15072         Adjust to format2 going away.
15074         Don't misencode C-generated messages
15075         Also, be more consistent about calls to 'Fmessage' vs 'message'.
15076         * src/alloc.c (Fgc_status):
15077         Prefer AUTO_STRING to build_string for Fmessage call.
15078         * src/data.c (Fmake_variable_buffer_local)
15079         (Fmake_local_variable, Fmake_variable_frame_local):
15080         * src/doc.c (store_function_docstring):
15081         Use Fmessage, not message, since the argument can contain
15082         non-ASCII characters, and this can cause the resulting message
15083         to be incorrectly encoded for the current environment.
15084         * src/fns.c (maybe_resize_hash_table):
15085         * src/xselect.c (x_clipboard_manager_save_all):
15086         Use message, not Fmessage, since Fmessage's power isn't needed here.
15087         * src/process.c (Fmake_network_process): Reword message to avoid %s.
15088         * src/xdisp.c (vmessage): Document restrictions on message contents.
15089         (message_nolog) [false]: Remove unused code.
15091         Use \r rather than ^M in string literals
15092         This is less likely to cause problems on platforms that
15093         use CRLF (or CR!) termination for lines.
15095         Update .gitattributes to match current sources
15096         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00879.html
15097         * .gitattributes: Accommodate tests that insist on DOS format.
15098         Remove test/automated/data/decompress/foo-gzipped.
15099         Add etc/e/eterm-color.
15101 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
15103         * doc/emacs/mule.texi (Modifying Fontsets):
15104         Document face-ignored-fonts.  (Bug#20628)
15106         Add etags test for the new -Q option
15107         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
15108         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
15109         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
15110         test-case changes below.
15111         * test/etags/ETAGS.good_6: New file.
15112         * test/etags/cp-src/x.cc: New file.
15113         * test/etags/Makefile (CPSRC): Add x.cc.
15114         (check): Add one more test, for -Q.
15116 2015-05-30  Dmitry Gutov  <dgutov@yandex.ru>
15118         Use list for the tags completion table, not obarray
15119         * lisp/progmodes/etags.el (etags-tags-completion-table): Return a
15120         list instead of an obarray
15121         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00876.html).
15122         (tags-completion-table): Combine those lists.
15123         (tags-completion-table): Update the docstring.
15125 2015-05-30  Eli Zaretskii  <eliz@gnu.org>
15127         Restore EOL format testing in etags
15128         * test/etags/ETAGS.good_1, test/etags/ETAGS.good_2:
15129         * test/etags/ETAGS.good_3, test/etags/ETAGS.good_4:
15130         * test/etags/ETAGS.good_5, test/etags/CTAGS.good: Adjust to
15131         test-case changes below.
15132         * test/etags/html-src/algrthms.html: Convert back to DOS EOL format.
15133         * test/etags/cp-src/c.C (B): Add back stray CR character.
15134         * test/etags/c-src/dostorture.c: Add back.
15135         * test/etags/Makefile (CSRC): Add back c-src/dostorture.c.
15137 2015-05-30  Vitaly Takmazov  <vitalyster@gmail.com>  (tiny change)
15139         Declare Emacs on MS-Windows to be DPI-aware
15140         * nt/emacs-x86.manifest (asmv3:windowsSettings): Add dpiAware.
15141         * nt/emacs-x64.manifest (asmv3:windowsSettings): Add dpiAware.
15142         This avoids Windows entering compatibility mode for Emacs,
15143         which causes fonts to look less nice.
15145 2015-05-30  Michael Albinus  <michael.albinus@gmx.de>
15147         Improve Tramp traces
15148         * lisp/net/trampver.el (tramp-repository-get-version): New defun.
15149         * lisp/net/tramp.el (tramp-debug-message): Use it.
15151 2015-05-30  Paul Eggert  <eggert@cs.ucla.edu>
15153         backup-buffer minor reworking of internals
15154         * lisp/files.el (backup-buffer): Rework to avoid a couple of
15155         unused locals inadvertently introduced in the previous change.
15157         backup-buffer now reports .emacs.d/%backup% ills
15158         * lisp/files.el (backup-buffer): If the write to .emacs.d/%backup%
15159         fails due to disk space exhaustion or whatever, do not pretend
15160         that it succeeded.  More generally, do a better job of checking
15161         for I/O failures, and limit the scope of the condition-case to
15162         just the operations where file errors should be caught and ignored
15163         (Bug#20595).  Also, don't bother trying to delete later backups if
15164         an earlier deletion fails, as this is a sign of trouble and it's
15165         better to stop when there's trouble.
15167         copy-file now truncates output after writing
15168         * src/fileio.c (Fcopy_file): Truncate output after writing rather
15169         than before.  This is more likely to work than truncation before
15170         writing, if the file system is out of space or the user is over
15171         disk quota (Bug#20595).  Also, check for read errors.
15173 2015-05-29  Artur Malabarba  <bruce.connor.am@gmail.com>
15175         * lisp/emacs-lisp/package.el (package-load-all-descriptors):
15176         Don't load descriptors from directories above the package directories.
15178 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
15180         Merge from gnulib
15181         This incorporates the following (Bug#20681):
15182         2015-05-29 acl-permissions: Fix build on Mac OS X and older AIX
15183         2015-05-29 acl-permissions: Fix build on Solaris and Cygwin
15184         * lib/set-permissions.c: Copy from gnulib.
15186 2015-05-29  Michael Albinus  <michael.albinus@gmx.de>
15188         Improve Tramp traces
15189         * lisp/net/tramp.el (tramp-call-process-region): New defun.
15190         * lisp/net/tramp-sh.el (tramp-get-inline-coding): Use it.
15192 2015-05-29  Glenn Morris  <rgm@gnu.org>
15194         * test/automated/vc-tests.el: Try enabling tests on hydra.nixos.org.
15196 2015-05-29  Wolfgang Jenkner  <wjenkner@inode.at>
15198         * src/xfns.c (x_set_menu_bar_lines): Fix calls to x_clear_area.
15199         The signature was changed in the cairo branch, merged on 2015-05-23.
15200         This oversight broke compiling only the non-toolkit X version.
15202 2015-05-29  Samer Masterson  <samer@samertm.com>
15204         * doc/lispref/os.texi: Update initial-buffer-choice docs.
15206 2015-05-29  Glenn Morris  <rgm@gnu.org>
15208         * test/automated/vc-tests.el (vc-test-rcs04-checkout-model):
15209         Mark as an expected failure.
15211 2015-05-29  Paul Eggert  <eggert@cs.ucla.edu>
15213         Change package test to look for curved quotes
15214         * test/automated/package-test.el (package-test-describe-package)
15215         (package-test-signed): Search for curved single quotes as well as
15216         for grave accent and apostrophe.
15218 2015-05-28  Katsumi Yamaoka  <yamaoka@jpl.org>
15220         * lisp/gnus/gnus-art.el (gnus-button-alist): Re-revert last change.
15221         cf. <http://news.gmane.org/group/gmane.emacs.devel/thread=186896>
15223 2015-05-28  Samer Masterson  <samer@samertm.com>
15225         Show files when `initial-buffer-choice' is non-nil
15226         * lisp/startup.el (command-line-1): When Emacs is given a file as an
15227         argument and `initial-buffer-choice' is non-nil, display both the file
15228         and `initial-buffer-choice'.  For more than one file, show
15229         `initial-buffer-choice' and *Buffer List*.  Refactor display-changing
15230         commands out of the command line arg parser.
15231         (initial-buffer-choice): Clarify docstring.
15233 2015-05-28  Eli Zaretskii  <eliz@gnu.org>
15235         Fix last commit
15236         * nt/gnulib.mk (libgnu_a_SOURCES): Add get-permissions.c back.
15237         (gnulib module qcopy-acl): Add back, as it is harmless.  This
15238         minimizes differences wrt lib/gnulib.mk.
15240         Fix the MS-Windows build as followup to gnulib update
15241         * nt/gnulib.mk (libgnu_a_SOURCES): Remove get-permissions.c and
15242         set-permissions.c, as they don't compile on MinGW.
15243         (gnulib module qcopy-acl): Remove, as it needs set-permissions.c.
15245 2015-05-28  Paul Eggert  <eggert@cs.ucla.edu>
15247         Revert my change to gnus-art.el
15248         * lisp/gnus/gnus-art.el (gnus-button-alist): Revert last change.
15249         It wasn't that important, and it caused a Gnus build to fail.  See:
15250         http://www.randomsample.de:4456/builders/emacs-devel/builds/734
15252         New minor mode Electric Quote
15253         This lets you easily insert quotes ‘like this’ by typing
15254         quotes `like this', and similarly you can easily insert
15255         quotes “like this” by typing quotes ``like this'' (Bug#20545).
15256         * doc/emacs/basic.texi (Inserting Text):
15257         * doc/emacs/modes.texi (Minor Modes):
15258         * etc/NEWS: Document it.
15259         * doc/emacs/text.texi (Quotation Marks): New section.
15260         * lisp/electric.el (electric-quote-comment)
15261         (electric-quote-string, electric-quote-paragraph):
15262         New custom vars.
15263         (electric--insertable-p)
15264         (electric-quote-post-self-insert-function): New functions.
15265         (electric-quote-mode, electric-quote-local-mode): New minor modes.
15266         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15267         Add curved single quotes to electric-pair-text-pairs.
15268         Set electric-quote-string in this buffer.
15270         A few more doc string fixes (Bug#20385)
15272         Accept curved quotes in doc strings
15273         * lisp/info-look.el (info-lookup-guess-custom-symbol):
15274         (info-lookup-alist): Treat ‘’ like `' when parsing help buffers etc.
15276         Generate curved quotes in pseudo-info nodes
15277         * lisp/info.el (Info-virtual-index-find-node)
15278         (Info-virtual-index, Info-apropos-find-node, info-apropos):
15279         Quote ‘like this’, not `like this', when generating pseudo-info nodes.
15281         Fix minor quoting problems in doc strings
15282         Most of these fixes involve escaping grave accents that are
15283         actually intended to be grave accents, not left quotes.
15284         (Bug#20385)
15286         Support curved quotes in doc strings
15287         Emacs's traditional doc string style has been to quote symbols
15288         `like this'.  This worked well on now-obsolete terminals where
15289         ` and ' were symmetric quotes, but nowadays curved quotes
15290         ‘like this’ look better.  Support quoting the new way too.
15291         (Bug#20385)
15292         * doc/lispref/tips.texi (Documentation Tips): Symbols can be quoted
15293         ‘like-this’ as well as `like-this'.
15294         * etc/NEWS: Mention this.
15295         * lisp/cedet/mode-local.el (overload-docstring-extension)
15296         (mode-local-print-binding, mode-local-describe-bindings-2):
15297         * lisp/cus-theme.el (describe-theme-1):
15298         * lisp/descr-text.el (describe-text-properties-1, describe-char):
15299         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
15300         * lisp/emacs-lisp/cl-generic.el (cl--generic-describe):
15301         * lisp/emacs-lisp/eieio-opt.el (eieio-help-class)
15302         (eieio-help-constructor):
15303         * lisp/emacs-lisp/package.el (describe-package-1):
15304         * lisp/faces.el (describe-face):
15305         * lisp/help-fns.el (help-fns--key-bindings)
15306         (help-fns--compiler-macro, help-fns--parent-mode, help-fns--obsolete):
15307         (help-fns--interactive-only, describe-function-1):
15308         (describe-variable):
15309         * lisp/help.el (describe-mode):
15310         * lisp/international/mule-cmds.el (describe-input-method)
15311         (describe-language-environment):
15312         * lisp/international/mule-diag.el (describe-character-set)
15313         (print-coding-system-briefly, list-input-methods)
15314         (list-input-methods-1):
15315         Insert curved quotes rather than grave accent and apostrophe.
15316         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
15317         * lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine)
15318         (checkdoc-proper-noun-region-engine):
15319         * lisp/emacs-lisp/lisp-mode.el (lisp-el-font-lock-keywords-2)
15320         (lisp-cl-font-lock-keywords-2):
15321         * lisp/finder.el (finder-font-lock-keywords):
15322         * lisp/gnus/gnus-art.el (gnus-button-alist):
15323         * lisp/help-fns.el (help-do-arg-highlight)
15324         (describe-function-1, describe-variable):
15325         * lisp/help-mode.el (help-xref-symbol-regexp)
15326         (help-xref-info-regexp, help-xref-url-regexp):
15327         * lisp/help.el (describe-mode):
15328         * lisp/international/mule-cmds.el (help-xref-mule-regexp-template):
15329         * lisp/wid-edit.el (widget-documentation-link-regexp):
15330         Parse symbols quoted ‘like-this’ as well as `like-this'.
15331         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode):
15332         Add "‘" and "’" to electric-pair-text-pairs.
15333         (elisp--form-quoted-p): Also allow "‘" as a quoting char.
15334         (elisp-completion-at-point, elisp--preceding-sexp):
15335         Also treat "‘" and "’" as quoting chars.
15337         substitute-command-keys now curves quotes
15338         So, for example, it turns "`abc'" into "‘abc’" (Bug#20385).
15339         * doc/lispref/help.texi (Keys in Documentation):
15340         * etc/NEWS: Document this.
15341         * src/doc.c (Fsubstitute_command_keys): Implement it.
15343 2015-05-28  Glenn Morris  <rgm@gnu.org>
15345         * lisp/mail/rmailsum.el (rmail-summary-by-recipients)
15346         (rmail-summary-by-topic, rmail-summary-by-senders):
15347         No longer strip leading/trailing whitespace.
15349         * lisp/progmodes/f90.el (f90-type-def-re): Add "type, extends".
15350         (f90-no-block-limit): Add "enum".  (Bug#20680)
15351         * test/automated/f90.el (f90-test-bug20680, f90-test-bug20680b):
15352         New tests.
15354 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15356         * lisp/isearch.el (isearch--current-buffer): Give a default value.
15357         Un-revert changes mistakenly dropped by f9fabb2b.
15359 2015-05-27  Paul Eggert  <eggert@cs.ucla.edu>
15361         Merge from gnulib
15362         This incorporates:
15363         2015-05-27 qacl: Reimplement qset_acl and qcopy_acl (Bug#20666)
15364         2015-05-27 file-has-acl: Split feature tests again (Bug#20667)
15365         2015-05-27 string: fix build failure on BSD/OSX with FORTIFY_SOURCE
15366         2015-05-26 stdio: limit __gnu_printf__ witness to gcc 4.4+
15367         2015-05-26 inttypes: force correct mingw PRIdMAX even without <stdio.h>
15368         2015-05-26 stdio: fix probe on mingw under gcc 5.1
15369         * admin/merge-gnulib (GNULIB_MODULES):
15370         Replace qacl with qcopy-acl, since we don't need the rest of qacl.
15371         * doc/misc/texinfo.tex, lib/acl-internal.c, lib/acl-internal.h:
15372         * lib/inttypes.in.h, lib/qcopy-acl.c, lib/qset-acl.c:
15373         * lib/string.in.h, m4/acl.m4, m4/stdio_h.m4:
15374         Get latest versions from gnulib.
15375         * lib/get-permissions.c, lib/set-permissions.c: New files.
15376         * lib/gnulib.mk, m4/gnulib-comp.m4:
15377         Regenerate.
15378         * nt/gnulib.mk: Merge lib/gnulib.mk changes by hand.
15380 2015-05-27  Dmitry Gutov  <dgutov@yandex.ru>
15382         * lisp/vc/vc-dispatcher.el (vc-setup-buffer): Delete the old
15383         process here.
15384         (vc-do-command): Rather than here (bug#20608).
15386 2015-05-27  Ivan Shmakov  <ivan@siamics.net>
15388         Avoid gratuitous delete-dups in face-at-point
15389         * lisp/faces.el (face-at-point): Do not compute the properly
15390         ordered, duplicate-free list if only a single value is
15391         requested anyway.  (Bug#20519)
15393         Show the exact C-x 8 RET invocation in describe-char
15394         * lisp/descr-text.el (describe-char): Show the exact C-x 8 RET
15395         invocation instead of a template.  (Bug#20522)
15397 2015-05-27  Artur Malabarba  <bruce.connor.am@gmail.com>
15399         * lisp/emacs-lisp/package.el: Don't erase tags on refresh.
15400         (package-menu--post-refresh): Call `tabulated-list-print' with the
15401         UPDATE argument.  This only affects the refresh action, the revert
15402         action still erases tags.
15403         (package-menu-get-status): Change `assq' to `assoc'.
15404         (package-menu--mark-upgrades-1): New function.
15405         (package-menu--mark-upgrades-pending): New variable.
15406         (package-menu-mark-upgrades): Use them to delay marking until
15407         after refresh is done.
15408         (package-menu--post-refresh): Call mark-upgrades-1 if
15409         mark-upgrades-pending is non-nil.
15411 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
15413         * lisp/net/tramp.el (tramp-handle-make-auto-save-file-name):
15414         Fix typo in "Improve tramp-handle-make-auto-save-file-name"
15415         (commit 3953c4be2816537be95520605d45b866dc731f4b).
15417 2015-05-27  Stefan Monnier  <monnier@iro.umontreal.ca>
15419         * lisp/isearch.el (isearch--current-buffer): New var.
15420         (isearch-update): Set cursor-sensor-inhibit here.
15421         (isearch-done): Unset cursor-sensor-inhibit in the right buffer
15422         (bug#20532).
15424         Change inhibit-point-motion-hooks to t
15425         * src/textprop.c (syms_of_textprop): Default Vinhibit_point_motion_hooks
15426         to t and document it as obsolete.
15428 2015-05-27  Eli Zaretskii  <eliz@gnu.org>
15430         Support ZIP files that use Zip64 extensions
15431         * lisp/arc-mode.el (archive-zip-summarize): Handle the new ZIP
15432         format of central directory offsets used by Zip64 extensions.
15433         (Bug#20665)
15435 2015-05-27  Michael Albinus  <michael.albinus@gmx.de>
15437         New test tramp-test30-make-auto-save-file-name
15438         * test/automated/tramp-tests.el
15439         (tramp-test30-make-auto-save-file-name): New test.
15440         (tramp-test31-special-characters)
15441         (tramp-test31-special-characters-with-stat)
15442         (tramp-test31-special-characters-with-perl)
15443         (tramp-test31-special-characters-with-ls, tramp-test32-utf8)
15444         (tramp-test32-utf8-with-stat, tramp-test32-utf8-with-perl)
15445         (tramp-test32-utf8-with-ls, tramp-test33-asynchronous-requests)
15446         (tramp-test34-recursive-load, tramp-test35-unload): Rename.
15448         Improve tramp-handle-make-auto-save-file-name
15449         * lisp/net/tramp.el (tramp-auto-save-directory): Add :tags.
15450         (tramp-handle-make-auto-save-file-name): Let native
15451         `make-auto-save-file-name' use `auto-save-file-name-transforms',
15452         if `tramp-auto-save-directory' is not set.
15454 2015-05-27  Glenn Morris  <rgm@gnu.org>
15456         No longer set dired-directory in eshell.  (Bug#16477)
15457         * lisp/eshell/esh-mode.el (eshell-mode):
15458         * lisp/eshell/em-dirs.el (eshell/cd): No longer set dired-directory.
15460         * lisp/mail/sendmail.el (mail-position-on-field): Doc fix.
15462         Make c-submit-bug-report file reports at debbugs.gnu.org.  (Bug#15784)
15463         * lisp/progmodes/cc-mode.el (c-mode-help-address):
15464         Change to submit@debbugs.
15465         (c-mode-bug-package): New constant.
15466         (mail-position-on-field): Declare.
15467         (c-submit-bug-report): Insert X-Debbugs-Package header.
15468         * doc/misc/cc-mode.texi (Mailing Lists and Bug Reports):
15469         Mention debbugs.gnu.org.
15471 2015-05-26  Glenn Morris  <rgm@gnu.org>
15473         * lisp/mail/rmailsum.el: Commas no longer separate regexps.  (Bug#19026)
15474         (rmail-summary-by-recipients, rmail-summary-by-topic)
15475         (rmail-summary-by-senders): No longer use mail-comma-list-regexp.
15476         * doc/emacs/rmail.texi (Rmail Make Summary): Update for this change.
15478 2015-05-26  Paul Eggert  <eggert@cs.ucla.edu>
15480         Handle curved quotes in info files
15481         * lisp/calc/calc-help.el (calc-describe-thing):
15482         * lisp/info.el (Info-find-index-name)
15483         (Info-try-follow-nearest-node, Info-fontify-node):
15484         * lisp/vc/ediff-help.el (ediff-help-for-quick-help):
15485         In info files, process quotes ‘like this’ the same way we process
15486         quotes `like this'.  This catches a few places we missed earlier.
15488 2015-05-26  Dmitry Gutov  <dgutov@yandex.ru>
15490         xref-prompt-for-identifier: Use a list value
15491         * lisp/progmodes/xref.el (xref-prompt-for-identifier): Allow list
15492         value, to be interpreted as a list of commands.
15493         (xref--prompt-p): New function.
15494         (xref--read-identifier): Use it.
15496 2015-05-26  Eli Zaretskii  <eliz@gnu.org>
15498         Teach MS-Windows font back-end return per-glyph ascent/descent
15499         * src/w32font.h (struct w32_metric_cache): Add ascent and descent
15500         values.
15501         * src/w32font.c (w32font_text_extents): Compute, cache, and
15502         accumulate per-glyph ascent and descent values, instead of copying
15503         global values from the font.  If the values are not available from
15504         the font data, i.e., non-TTF fonts, fall back on font-global values.
15505         (compute_metrics): Compute and return per-glyph ascent and descent
15506         values, if returned by GetGlyphOutlineW, falling back on
15507         font-global values.  (Bug#20628)
15508         * src/w32term.c (w32_draw_rectangle): Add 1 pixel to width and
15509         height of rectangle to be drawn, to be compatible with
15510         XDrawRectangle.  Fixes glyphless-char display as hex codes in a
15511         box, when per-glyph ascent/descent values are used.
15513 2015-05-26  Artur Malabarba  <bruce.connor.am@gmail.com>
15515         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print):
15516         Don't sort if sorter is nil.
15518 2015-05-26  Michael Albinus  <michael.albinus@gmx.de>
15520         Fix Bug#20621
15521         * lisp/net/tramp-sh.el (tramp-set-auto-save): Remove it.  There
15522         are major modes which set `auto-save-mode' on their own rules;
15523         Tramp shall not overwrite such settings.
15525 2015-05-26  Glenn Morris  <rgm@gnu.org>
15527         * lisp/desktop.el: If modes aren't autoloaded, try simple guesswork.
15528         (desktop-load-file): Guess that "foobar" defines "foobar-mode".
15529         (desktop-buffer-mode-handlers, desktop-minor-mode-handlers):
15530         Doc updates.
15531         (vc-dir-mode): Remove unnecessary autoload.
15533 2015-05-25  Philipp Stephani  <phst@google.com>
15535         * lisp/term/xterm.el: Add gui-get-selection support via OSC-52.
15536         (xterm--extra-capabilities-type): Add `getSelection'.
15537         (xterm--query): Add `no-async' argument.
15538         (xterm--init-activate-get-selection): New function.
15539         (terminal-init-xterm): Use it.
15540         (xterm--init-modify-other-keys): Rename from
15541         terminal-init-xterm-modify-other-keys.
15542         (xterm--init-bracketed-paste-mode): Rename from
15543         terminal-init-xterm-bracketed-paste-mode.
15544         (xterm--init-activate-set-selection): Rename from
15545         terminal-init-xterm-activate-set-selection.
15546         (xterm--selection-char): New function.
15547         (gui-backend-set-selection): Use it.  Use the &context to only apply
15548         this method in terminals where we enabled the feature.
15549         (gui-backend-get-selection): New method.
15551 2015-05-25  Daniel Colascione  <dancol@dancol.org>
15553         * lisp/progmodes/cc-langs.el (c-constant-kwds): Add C-language
15554         keyword constants to C++.
15556 2015-05-25  Paul Eggert  <eggert@cs.ucla.edu>
15558         Make TAGS files more portable to MS-Windows
15559         * etc/NEWS: Document this.
15560         * lib-src/etags.c (readline_internal) [DOS_NT]:
15561         Don't treat CRs differently from GNUish hosts.
15562         * lisp/progmodes/etags.el (etags-goto-tag-location):
15563         Adjust STARTPOS to account for the skipped CRs in dos-style files.
15565 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15567         Improve fix of bug#20634 in tramp-sh.el
15569 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
15571         Fix a typo in last commit
15572         * lib-src/etags.c (C_entries): Fix a typo.
15573         * test/etags/ETAGS.good_1:
15574         * test/etags/ETAGS.good_2:
15575         * test/etags/ETAGS.good_3:
15576         * test/etags/ETAGS.good_4:
15577         * test/etags/ETAGS.good_5:
15578         * test/etags/CTAGS.good: Update due to the change in etags.c.
15580         Fix tagging of class members in C-like OO languages
15581         * lib-src/etags.c (longopts): Add new option --class-qualify and
15582         its shorthand -Q.
15583         (print_help): Add help text for --class-qualify.
15584         (main): Add handling of -Q.
15585         (consider_token, C_entries) <omethodparm>: Append argument types
15586         to Objective C methods only if --class-qualify was specified.
15587         Qualify C++, Objective C, and Java class members with their class
15588         names only if --class-qualify was specified.
15589         (C_entries): If --class-qualify was not specified, remove the
15590         namespace and class qualifiers from tag names of C++ methods.
15591         This allows to use etags.el as xref back-end without the
15592         tag-symbol-match-p method, which greatly increases the number of
15593         potentially false positives.  (Bug#20629)
15594         * doc/man/etags.1: Update to document the new --class-qualify
15595         option.
15596         * test/etags/ETAGS.good_1:
15597         * test/etags/ETAGS.good_2:
15598         * test/etags/ETAGS.good_3:
15599         * test/etags/ETAGS.good_4:
15600         * test/etags/ETAGS.good_5:
15601         * test/etags/CTAGS.good: Update due to changes in etags.c.
15603 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
15605         (cl-generic-define-method): Side effects are evil (bug#20644)
15606         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method): Don't reuse
15607         cons-cells that might be used as keys in an `equal' hash-table.
15609 2015-05-25  Lars Magne Ingebrigtsen  <larsi@gnus.org>
15611         Make erc timestamps visible again
15612         * lisp/erc/erc-stamp.el (erc-munge-invisibility-spec):
15613         Make timestamps visible again (if requested).
15615 2015-05-25  Eli Zaretskii  <eliz@gnu.org>
15617         Fix last change in etags.c that broke tagging compresed files
15618         * lib-src/etags.c (process_file_name) [MSDOS || DOS_NT]: Fix
15619         quoting of decompression shell command for MS-Windows/MS-DOS.
15621 2015-05-25  Stefan Monnier  <monnier@iro.umontreal.ca>
15623         * lisp/emacs-lisp/cl-macs.el (cl-tagbody): Scope cl--tagbody-alist.
15624         (Bug#20639)
15626 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15628         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer):
15629         Fix typo in "Inhibit `epa-file-handler' in Tramp"
15630         (commit 89035e247591c8d688fce922b7079881aa110f33).
15632 2015-05-25  Orivej Desh  <orivej@gmx.fr>  (tiny change)
15634         Fix IPv6 addresses in Tramp
15635         * lisp/net/tramp-sh.el (tramp-make-copy-program-file-name):
15636         Add square brackets around host name.
15638 2015-05-25  Michael Albinus  <michael.albinus@gmx.de>
15640         Inhibit `epa-file-handler' in Tramp (Bug#20634)
15641         * lisp/net/tramp-sh.el (tramp-do-copy-or-rename-file-via-buffer)
15642         (tramp-sh-handle-insert-file-contents-literally): Inhibit also
15643         `epa-file-handler'.
15645 2015-05-24  Stefan Monnier  <monnier@iro.umontreal.ca>
15647         * lisp/emacs-lisp/pcase.el: Use PAT rather than UPAT in docstring.
15648         (pcase-let): Document the behavior in case the pattern doesn't match.
15650 2015-05-24  Artur Malabarba  <bruce.connor.am@gmail.com>
15652         * lisp/emacs-lisp/tabulated-list.el: New optional print method.
15653         (tabulated-list-print): New optional argument, UPDATE.  If
15654         non-nil, the list is printed by only adding and deleting the
15655         changed entries, instead of erasing the whole buffer.  This method
15656         is much faster when few or no entries have changed.
15657         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
15658         * etc/NEWS: Document it.
15660         * lisp/emacs-lisp/tabulated-list.el: Improve printing.
15661         (tabulated-list--get-sorter): New function.
15662         (tabulated-list-print): Restore window-line when remember-pos is
15663         passed and optimize away the `nreverse'.
15665 2015-05-24  Paul Eggert  <eggert@cs.ucla.edu>
15667         Simpilify etags TEX mode scanning
15668         * lib-src/etags.c (TEX_mode, TEX_esc, TEX_opgrp, TEX_clgrp):
15669         Remove static vars.
15670         (TeX_commands): Deduce escapes here instead.
15671         (TEX_LESC, TEX_SESC, TEX_mode): Remove; all uses removed.
15672         This removes the need for a reset_input call.
15674         Improve etags I/O error reporting
15675         * lib-src/etags.c:
15676         Don't include sys/types.h and sys/stat.h; no longer needed.
15677         (infilename): New static var.
15678         (process_file_name): Don't call 'stat'.  Instead, just open the
15679         file for reading and report any errors.  Don't bother making
15680         a copy of the file argument; it's not needed.  Be more careful to
15681         use the failing errno when reporting an error.
15682         Quote the real name better (though no perfectly)
15683         when passing it to the shell.
15684         (reset_input): New function, which reports I/O errors.
15685         All uses of 'rewind' changed to use this function.
15686         (perhaps_more_input): New function, which also checks for
15687         I/O errors.  All uses of 'feof' changed to use this function.
15688         (analyze_regex): Report an error if fclose fails.
15689         (readline_internal): Report an error if getc fails.
15690         (etags_mktmp): Return an error if close fails.
15692         etags.c: avoid side effects in 'if'
15693         * lib-src/etags.c (process_file_name, Perl_functions)
15694         (TEX_decode_env): Hoist side effects into previous statement.
15696         .gitignore tweaks
15697         * .gitignore: Ignore all *.stamp files.  Sort.
15698         Ignore [0-9]*.txt (commonly used name for git patches)
15699         and /vc-dwim-log-* (vc-dwim temporary).
15701 2015-05-24  Eli Zaretskii  <eliz@gnu.org>
15703         Fix last change in etags.c, which failed the test suite
15704         * lib-src/etags.c (intoken): Add '$' to the set, as it was there
15705         before the last change.
15707 2015-05-23  Glenn Morris  <rgm@gnu.org>
15709         Remove charset map files from repository, generate in first bootstrap
15710         * admin/charsets/Makefile.in (${srcdir}/charsets.stamp): New.
15711         (all): Create the stamp file.
15712         (extraclean): Delete the stamp file.
15713         * src/Makefile.in (lispintdir, charsets): New variables.
15714         (${lispintdir}/cp51932.el, ${lispintdir}/eucjp-ms.el, ${charsets}):
15715         New rules.
15716         (emacs$(EXEEXT), temacs$(EXEEXT)): Depend on $charsets.
15717         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
15718         * etc/charsets/*.map: Remove from repository.
15720 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
15722         Cleanup etags.c to use locale-independent code
15723         Although this doesn't alter behavior (as etags doesn't use
15724         setlocale), the new version is more clearly locale-independent and
15725         the executable is a bit smaller on my platform.
15726         * lib-src/etags.c: Include <limits.h>, for UCHAR_MAX.
15727         Include <c-ctype.h> instead of <ctype.h>.
15728         (CHARS, CHAR, init, _wht, _nin, _itk, _btk, _etk, white, nonam, endtk)
15729         (begtk, midtk):
15730         Remove; no longer needed.
15731         (iswhite, ISALNUM, ISALPHA, ISDIGIT, ISLOWER, lowcase): Remove.
15732         All callers changed to use c_isspace, c_isalnum, c_isalpha, c_isdigit,
15733         c_islower, c_tolower, respectively.
15734         (notinname, begtoken, intoken, endtoken): Rewrite as functions
15735         instead of macros, and initialize the tables at compile-time
15736         rather than at run-time.
15738         Put default action first in src/Makefile
15739         * src/Makefile.in (all): Put this rule before lisp.mk.
15740         That way, plain 'make' works in the src directory again.
15742 2015-05-23  Glenn Morris  <rgm@gnu.org>
15744         * Makefile.in: Fix extraclean rule.
15745         (extraclean_dirs): New.
15746         (extraclean): Use it.
15748 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
15750         Avoid compiler warning in image.c on MS-Windows
15751         * src/w32term.h (x_query_color): Add prototype, to avoid compiler
15752         warning in image.c.
15754 2015-05-23  Glenn Morris  <rgm@gnu.org>
15756         Fix --without-toolkit-scroll-bars builds.
15757         * src/xterm.c (x_scroll_bar_set_handle) [!USE_TOOLKIT_SCROLL_BARS]:
15758         Add new argument to x_clear_area1.
15759         (XTset_horizontal_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15760         Update x_clear_area arguments.
15762         * admin/charsets/glibc/: New directory, imported from glibc 2.21.
15763         * admin/charsets/Makefile.in (GLIBC_CHARMAPS):
15764         Change to included version.
15765         (LOCAL, local, totalclean): Remove.
15766         (extraclean): Delete all generated files.
15768 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15770         * lisp/pcmpl-cvs.el (pcmpl-cvs-entries): Don't assume
15771         CVS/Entries exists.
15773         * lisp/progmodes/xref.el (xref-find-apropos): Use read-string.
15775         * lisp/progmodes/etags.el (tags-completion-at-point-function):
15776         Don't trust the find-tag function.
15778 2015-05-23  Paul Eggert  <eggert@cs.ucla.edu>
15780         Pacify --enable-gcc-warnings
15781         * src/frame.h (x_query_color): Remove redundant extern decl.
15782         * src/ftcrfont.c (ftcrfont_glyph_extents, ftcrfont_list)
15783         (ftcrfont_match, ftcrfont_open, ftcrfont_close)
15784         (ftcrfont_text_extents, ftcrfont_draw):
15785         * src/xterm.c (x_set_window_size_1, *x_color_cells, x_update_end)
15786         (XTframe_up_to_date, x_clear_area1, x_clear_frame)
15787         (x_ins_del_lines, frame_highlight, frame_unhighlight)
15788         (x_new_focus_frame, x_focus_changed, XTframe_rehighlight)
15789         (x_draw_hollow_cursor, x_draw_bar_cursor, x_flush, x_update_begin)
15790         (x_update_window_begin, x_connection_closed)
15791         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
15792         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
15793         (*x_gc_get_ext_data, x_extension_initialize)
15794         (x_cr_accumulate_data):
15795         Remove redundant static decl.  Many of these GCC doesn't complain
15796         about, but we might as well clean out the duplication while we're
15797         in the neighborhood.
15798         * src/xterm.c (x_fill_trapezoid_for_relief):
15799         Remove decl of nonexistent function.
15801 2015-05-23  Stefan Monnier  <monnier@iro.umontreal.ca>
15803         Replace gui-method macros with cl-generic with &context
15804         * lisp/frame.el (gui-method--name, gui-method, gui-method-define)
15805         (gui-method-declare, gui-call): Remove.
15806         (frame-creation-function): Use cl-defgeneric.
15807         (make-frame): Adjust callers.
15808         * lisp/menu-bar.el (menu-bar-edit-menu):
15809         Use gui-backend-selection-exists-p.
15810         * lisp/select.el (x-get-clipboard): Use gui-backend-get-selection.
15811         (gui-backend-get-selection): New cl-generic to replace
15812         gui-get-selection method.
15813         (gui-backend-set-selection): New cl-generic to replace
15814         gui-set-selection method.
15815         (gui-selection-owner-p): New cl-generic to replace
15816         gui-selection-owner-p method.
15817         (gui-backend-selection-exists-p): New cl-generic to replace
15818         gui-selection-exists-p method.  Adjust all callers.
15819         * lisp/server.el (server-create-window-system-frame): Don't ignore
15820         window-system spec even when unsupported.
15821         * lisp/simple.el (deactivate-mark): Use new gui-backend-* functions.
15822         * lisp/startup.el (handle-args-function, window-system-initialization):
15823         Use cl-defgeneric.
15824         (command-line): Adjust calls accordingly.
15825         * lisp/term/ns-win.el (ns-window-system-initialization): Turn into
15826         a window-system-initialization method.
15827         (handle-args-function, frame-creation-function): Use cl-defmethod.
15828         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
15829         (gui-get-selection): Use cl-defmethod on the new functions instead.
15830         * lisp/term/pc-win.el (w16-get-selection-value): Turn into
15831         a gui-backend-get-selection method.
15832         (gui-selection-exists-p, gui-selection-owner-p, gui-set-selection):
15833         Use cl-defmethod on the new functions instead.
15834         (msdos-window-system-initialization): Turn into
15835         a window-system-initialization method.
15836         (frame-creation-function, handle-args-function): Use cl-defmethod.
15837         * lisp/term/w32-win.el (w32-window-system-initialization): Turn into
15838         a window-system-initialization method.
15839         (handle-args-function, frame-creation-function): Use cl-defmethod.
15840         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
15841         (gui-get-selection): Use cl-defmethod on the new functions instead.
15842         * lisp/term/x-win.el (x-window-system-initialization): Turn into
15843         a window-system-initialization method.
15844         (handle-args-function, frame-creation-function): Use cl-defmethod.
15845         (gui-set-selection, gui-selection-owner-p, gui-selection-exists-p)
15846         (gui-get-selection): Use cl-defmethod on the new functions instead.
15847         * lisp/term/xterm.el (xterm--set-selection): Turn into
15848         a gui-backend-set-selection method.
15849         * src/nsselect.m (Fns_selection_exists_p): Remove unused arg `terminal'.
15850         (Fns_selection_owner_p): Remove unused arg `terminal'.
15851         (Fns_get_selection): Remove unused args `time_stamp' and `terminal'.
15853 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
15855         Revert "Fix etags Bug#20629 that broke C++ support"
15856         This reverts commit 13dd9d4f7e75d2c78aa5537cef09de03663e9748.
15858 2015-05-23  Jan D  <jan.h.d@swipnet.se>
15860         Fix etags Bug#20629 that broke C++ support
15861         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
15862         Revert commit from Sun May 10 (Bug#20629).
15864         Merge branch 'cairo'.
15865         Main work done by YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>.
15866         Small fixes and image work by Jan D. <jan.h.d@swipnet.se>.
15868         Merge branch 'master' into cairo
15870         Fixes to compile cairo branch without cairo
15871         * src/gtkutil.c (xg_update_scrollbar_pos): x_clear_area takes frame as
15872         first argument.
15873         * src/xterm.c (handle_one_xevent): Surround x_cr_destroy_surface with
15874         USE_CAIRO.
15876 2015-05-23  Artur Malabarba  <bruce.connor.am@gmail.com>
15878         * lisp/emacs-lisp/package.el: Always update selected-packages.
15879         (package--update-selected-packages): New function.
15880         (package-menu-execute): Use it before starting the transaction,
15881         this way the list of selected packages is updated even when the
15882         transaction fails.
15883         (package-menu--perform-transaction): Don't edit selected-packages.
15885 2015-05-23  Eli Zaretskii  <eliz@gnu.org>
15887         Fix etags reading of compressed files
15888         * lib-src/etags.c (O_CLOEXEC) [WINDOWSNT]: Define.
15889         Include fcntl.h, for O_CLOEXEC.
15890         (process_file_name): Don't use 'popen', whose streams cannot be
15891         rewound.  Instead, uncompress the file to a temporary file,
15892         created by 'etags_mktmp', and read from that as usual.
15893         (etags_mktmp): New function.
15894         * test/etags/ETAGS.good_1:
15895         * test/etags/ETAGS.good_2:
15896         * test/etags/ETAGS.good_3:
15897         * test/etags/ETAGS.good_4:
15898         * test/etags/ETAGS.good_5: Update to be consistent with latest
15899         changes in etags.c regarding reading compressed files.
15901         Improve documentation of 'set-fontset-font'
15902         * doc/lispref/display.texi (Fontsets): Document the value of nil
15903         for the 3rd argument of 'set-fontset-font'.
15905         Fix documentation of forward-line
15906         * src/cmds.c (Fforward_line): Clarify the return value if the line
15907         at end of accessible portion of the buffer has no newline.
15908         * doc/lispref/positions.texi (Text Lines): Document what happens
15909         if the line at end of accessible portion of buffer has no newline.
15910         (Bug#20587)
15912 2015-05-22  Glenn Morris  <rgm@gnu.org>
15914         * admin/charsets/Makefile.in (TRANS_TABLE): Add short aliases.
15916         * admin/charsets/mapconv (LC_ALL): Set to C.
15918         * Makefile.in: Add admin/charsets into top-level clean rules.
15919         (clean): Add admin/charsets.
15920         (maybeclean_dirs): New variable.
15921         (distclean, bootstrap-clean, maintainer-clean): Use $maybeclean_dirs.
15923         * admin/charsets/Makefile.in (LOCAL, local): Fix members.
15925 2015-05-22  Artur Malabarba  <bruce.connor.am@gmail.com>
15927         * lisp/emacs-lisp/package.el (package-selected-packages): Fix doc.
15929 2015-05-22  Glenn Morris  <rgm@gnu.org>
15931         Generate admin/charsets Makefile via configure, and make more portable
15932         * configure.ac (SUBDIR_MAKEFILES): Add admin/charsets/Makefile.
15933         (admin/charsets/Makefile): Generate it.
15934         * admin/charsets/Makefile.in: Rename from Makefile.
15935         (AWK, srcdir, top_srcdir, AM_DEFAULT_VERBOSITY):
15936         New variables, set by configure.
15937         (charsetdir, lispintdir, mapfiledir, AM_V_GEN, am__v_GEN_)
15938         (am__v_GEN_0, am__v_GEN_1, AM_V_at, am__v_at_, am__v_at_0)
15939         (am__v_at_1, LOCAL, mapconv, run_mapconv, big5, compact, cp51932)
15940         (cp932, eucjp_ms, gb180302, gb180304, kuten): New variables.
15941         (TRANS_TABLE, CHARSETS): Add directory prefix to value.
15942         (all): Declare PHONY.
15943         (local): New PHONY target.
15944         (map_template): New template.  Use to define short PHONY aliases.
15945         (*.map): Add directory prefixes to targets and prerequisites.
15946         Respect make verbosity.
15947         (JISC6226.map): Replace non-portable sed append without newline.
15948         (install): Remove rule.
15949         (clean): Only delete temporary sedscript.
15950         (bootstrap-clean, distclean, maintainer-clean, extraclean)
15951         (totalclean): New PHONY rules.
15952         * admin/charsets/mapconv (BASE): Replace basename with expr.
15953         (FILE): Add "mapfiles" subdirectory.
15954         (AWK): New variable.  Use throughout in place of "awk".
15955         (main): Use "gunzip -c" in place of "zcat".
15956         Don't leave whitespace before "p", for older sed.
15957         * admin/charsets/mapfiles/PTCP154: Add final newline,
15958         to make older sed versions happy.
15960 2015-05-22  Stefan Monnier  <monnier@iro.umontreal.ca>
15962         * lisp/autorevert.el: Use lexical-binding.  Fix hook usage.
15963         (global-auto-revert-ignore-buffer, auto-revert-notify-modified-p)
15964         (auto-revert-notify-watch-descriptor): Use defvar-local.
15965         (find-file-hook, auto-revert-tail-mode)
15966         (auto-revert-notify-add-watch): Use setq-local.
15967         (auto-revert-notify-add-watch): Don't call make-local-variable on
15968         kill-buffer-hook (bug#20601).
15970 2015-05-21  Stefan Monnier  <monnier@iro.umontreal.ca>
15972         Change defgeneric so it doesn't completely redefine the function
15973         * lisp/emacs-lisp/cl-generic.el (cl-generic-define): Don't throw away
15974         previously defined methods.
15975         (cl-generic-define-method): Let-bind purify-flag instead of
15976         using `fset'.
15977         (cl--generic-prefill-dispatchers): Only define during compilation.
15978         (cl-method-qualifiers): Remove redundant alias.
15979         (help-fns-short-filename): Silence byte-compiler.
15980         * test/automated/cl-generic-tests.el:
15981         Adjust to new defgeneric semantics.
15983 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
15985         * lisp/emacs-lisp/package.el (package-menu-execute):
15986         Remove reference to remove-dups.
15988 2015-05-21  kwhite  <kwhite@gnu.org>
15990         * lisp/erc/erc.el: Hide network/channel messages.
15991         (erc-network-hide-list, etc-channel-hide-list): New lists to define
15992         message types per network/channel.
15993         (erc-add-targets): New function to parse list of targets.
15994         (erc-hide-current-message-p): Modified to check for new targets.
15996 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
15998         Don't quote nil and t in doc strings
15999         This is as per "Tips for Documentation Strings" in the elisp manual.
16000         For consistency, do the same in diagnostics and comments.
16002 2015-05-21  Eli Zaretskii  <eliz@gnu.org>
16004         Fix a minor problem with mouse-face on mode line
16005         * src/xdisp.c (note_mode_line_or_margin_highlight): Reset the
16006         mouse face also if the mouse pointer hovers above mode-line glyphs
16007         that don't come from any Lisp string.  (Bug#20620)
16009 2015-05-21  Artur Malabarba  <bruce.connor.am@gmail.com>
16011         * lisp/emacs-lisp/package.el: Fix selected-package logic.
16012         (package-menu-execute): Mark as selected all non-upgrade packages
16013         being installed.
16014         (package-menu--perform-transaction): Don't mark anything.
16016         * lisp/emacs-lisp/package.el: Mode-line progress report.
16017         (package-menu--transaction-status): New variable.
16018         (package-menu-mode, package-menu--perform-transaction): Use it.
16020         * lisp/emacs-lisp/package.el: Better transaction messages.
16021         (package-menu--partition-transaction): New function.
16022         (package-menu--prompt-transaction-p, package-menu-execute):
16023         Use it.
16024         (package-menu--perform-transaction): Don't do any messaging.
16026         * lisp/emacs-lisp/package.el: Revert async package transactions.
16027         (package-menu-async): Update doc.
16028         (package-install-from-archive, package-download-transaction)
16029         (package-install, package-menu--perform-transaction)
16030         (package-menu-execute): Remove asynchronous functionality.
16032 2015-05-21  Paul Eggert  <eggert@cs.ucla.edu>
16034         Revert doc string changes to f90.el
16035         Problem reported by Glenn Morris in:
16036         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00596.html
16037         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
16038         Revert recent changes to doc strings, as it's intended that they
16039         use grave accent, not quote.
16041 2015-05-20  Bozhidar Batsov  <bozhidar@batsov.com>
16043         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p):
16044         Improve parameter name.
16046         * lisp/emacs-lisp/subr-x.el (hash-table-empty-p): New inline function.
16048 2015-05-20  Paul Eggert  <eggert@cs.ucla.edu>
16050         Don't require help-fns when not needed
16051         * lisp/emacs-lisp/autoload.el, lisp/emacs-lisp/advice.el:
16052         * lisp/emacs-lisp/elint.el:
16053         Don't require help-fns at the top level
16054         * lisp/emacs-lisp/advice.el (ad-arglist):
16055         * lisp/emacs-lisp/cl-macs.el (cl--transform-lambda):
16056         Don't require help-fns.  (Bug#17001)
16058 2015-05-20  Eli Zaretskii  <eliz@gnu.org>
16060         Fix slash collapsing in etags on MS-Windows
16061         * lib-src/etags.c (canonicalize_filename) [DOS_NT]: Separate the
16062         MS-Windows code from the Posix code, and support collapsing both
16063         forward- and back-slashes on MS-Windows.  Fixes a regression found
16064         by the test suite.
16066         Improve documentation of glyphless-char-display
16067         * doc/lispref/display.texi (Glyphless Chars): Improve
16068         documentation of glyphless character display.
16070         Fix "acronym" display of glyphless characters on w32
16071         * src/w32term.c (x_draw_glyphless_glyph_string_foreground): Don't
16072         ignore "acronym" substitutes of 1 character for glyphless characters.
16074 2015-05-20  Oleh Krehel  <ohwoeowho@gmail.com>
16076         Add an automated test for let-when-compile
16077         * test/automated/subr-tests.el (let-when-compile): New test.
16079         Add let-when-compile macro instead of using pcase-let
16080         * lisp/subr.el (let-when-compile): New let-like macro that makes its
16081         bindings known to macros like `eval-when-compile' in the body.
16082         * lisp/emacs-lisp/lisp-mode.el: Change the top-level `pcase-let' to
16083         a `let-when-compile'.  Also comment out the unused lexical var
16084         `el-kws-re'.
16085         The change greatly improves readability, while providing almost the
16086         same (even shorter) byte code: instead of pre-evaluating 10 variables,
16087         tossing them into a list, and destructuring that list a full screen
16088         page later, the variables are simply bound as they are evaluated,
16089         wrapped individually in `eval-when-compile'.
16091 2015-05-20  Artur Malabarba  <bruce.connor.am@gmail.com>
16093         * lisp/emacs-lisp/package.el: "Delete" button in Help buffer.
16094         (package-delete-button-action): New function.
16095         (describe-package-1): Add Delete button.
16097         * lisp/emacs-lisp/package.el: Better dependency description.
16098         (package--used-elsewhere-p): New optional arg, ALL, and return
16099         package-desc objects instead of names.
16100         (package-delete): Update accordingly.
16101         (describe-package-1): Describe which packages require the package.
16103 2015-05-20  Martin Rudalics  <rudalics@gmx.at>
16105         Fix handling and doc-string of FRAME arg of `other-buffer' (Bug#20533)
16106         * src/buffer.c (Fother_buffer): Argument FRAME must denote a live frame.
16107         Fix doc-string.
16109         Improve `switch-to-buffer' in strongly dedicated windows (Bug#20472)
16110         * lisp/window.el (switch-to-buffer-in-dedicated-window): New option.
16111         (switch-to-buffer): If the selected window is strongly dedicated
16112         to its buffer, signal error before prompting for buffer name.
16113         Handle `switch-to-buffer-in-dedicated-window'.
16114         * doc/lispref/windows.texi (Switching Buffers):
16115         Document `switch-to-buffer-in-dedicated-window'.
16117 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16119         Prefer "this" to “this” in doc strings
16120         This mostly just straightens quotes introduced in my previous patch.
16121         Suggested by Dmitry Gutov in:
16122         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00565.html
16123         * lisp/faces.el, lisp/gnus/gnus-group.el, lisp/ldefs-boot.el:
16124         * lisp/mail/supercite.el, lisp/net/tramp.el, lisp/recentf.el:
16125         * lisp/textmodes/artist.el, lisp/textmodes/rst.el:
16126         * lisp/textmodes/tildify.el, lisp/vc/ediff-util.el:
16127         * lisp/vc/log-edit.el, lisp/xt-mouse.el:
16128         Prefer straight double quotes to curved double quotes in doc strings.
16130         Fix minor quoting problems in doc strings
16131         These were glitches regardless of how or whether we tackle the
16132         problem of grave accent in doc strings.
16133         * lisp/calc/calc-aent.el (math-restore-placeholders):
16134         * lisp/ido.el (ido-ignore-buffers, ido-ignore-files):
16135         * lisp/leim/quail/cyrillic.el ("bulgarian-alt-phonetic"):
16136         * lisp/leim/quail/hebrew.el ("hebrew-new")
16137         ("hebrew-biblical-sil"):
16138         * lisp/leim/quail/thai.el ("thai-kesmanee"):
16139         * lisp/progmodes/idlw-shell.el (idlwave-shell-file-name-chars):
16140         Used curved quotes to avoid ambiguities like ‘`''’ in doc strings.
16141         * lisp/calendar/calendar.el (calendar-month-abbrev-array):
16142         * lisp/cedet/semantic/mru-bookmark.el (semantic-mrub-cache-flush-fcn):
16143         * lisp/cedet/semantic/symref.el (semantic-symref-tool-baseclass):
16144         * lisp/cedet/semantic/tag.el (semantic-tag-copy)
16145         (semantic-tag-components):
16146         * lisp/cedet/srecode/cpp.el (srecode-semantic-handle-:cpp):
16147         * lisp/cedet/srecode/texi.el (srecode-texi-texify-docstring):
16148         * lisp/emacs-lisp/byte-opt.el (byte-optimize-all-constp):
16149         * lisp/emacs-lisp/checkdoc.el (checkdoc-message-text-engine):
16150         * lisp/emacs-lisp/generator.el (iter-next):
16151         * lisp/gnus/gnus-art.el (gnus-treat-strip-list-identifiers)
16152         (gnus-article-mode-syntax-table):
16153         * lisp/net/rlogin.el (rlogin-directory-tracking-mode):
16154         * lisp/net/soap-client.el (soap-wsdl-get):
16155         * lisp/net/telnet.el (telnet-mode):
16156         * lisp/org/org-compat.el (org-number-sequence):
16157         * lisp/org/org.el (org-remove-highlights-with-change)
16158         (org-structure-template-alist):
16159         * lisp/org/ox-html.el (org-html-link-org-files-as-html):
16160         * lisp/play/handwrite.el (handwrite-10pt, handwrite-11pt)
16161         (handwrite-12pt, handwrite-13pt):
16162         * lisp/progmodes/f90.el (f90-mode, f90-abbrev-start):
16163         * lisp/progmodes/idlwave.el (idlwave-mode, idlwave-check-abbrev):
16164         * lisp/progmodes/verilog-mode.el (verilog-tool)
16165         (verilog-string-replace-matches, verilog-preprocess)
16166         (verilog-auto-insert-lisp, verilog-auto-insert-last):
16167         * lisp/textmodes/makeinfo.el (makeinfo-options):
16168         * src/font.c (Ffont_spec):
16169         Fix minor quoting problems in doc strings, e.g., missing quote,
16170         ``x'' where `x' was meant, etc.
16171         * lisp/erc/erc-backend.el (erc-process-sentinel-2):
16172         Fix minor quoting problem in other string.
16173         * lisp/leim/quail/ethiopic.el ("ethiopic"):
16174         * lisp/term/tvi970.el (tvi970-set-keypad-mode):
16175         Omit unnecessary quotes.
16176         * lisp/faces.el (set-face-attribute, set-face-underline)
16177         (set-face-inverse-video, x-create-frame-with-faces):
16178         * lisp/gnus/gnus-group.el (gnus-group-nnimap-edit-acl):
16179         * lisp/mail/supercite.el (sc-attribs-%@-addresses)
16180         (sc-attribs-!-addresses, sc-attribs-<>-addresses):
16181         * lisp/net/tramp.el (tramp-methods):
16182         * lisp/recentf.el (recentf-show-file-shortcuts-flag):
16183         * lisp/textmodes/artist.el (artist-ellipse-right-char)
16184         (artist-ellipse-left-char, artist-vaporize-fuzziness)
16185         (artist-spray-chars, artist-mode, artist-replace-string)
16186         (artist-put-pixel, artist-text-see-thru):
16187         * lisp/vc/ediff-util.el (ediff-submit-report):
16188         * lisp/vc/log-edit.el (log-edit-changelog-full-paragraphs):
16189         Use double-quotes rather than TeX markup in doc strings.
16190         * lisp/skeleton.el (skeleton-pair-insert-maybe):
16191         Reword to avoid the need for grave accent and apostrophe.
16192         * lisp/xt-mouse.el (xterm-mouse-tracking-enable-sequence):
16193         Don't use grave and acute accents to quote.
16195 2015-05-19  Stefan Monnier  <monnier@iro.umontreal.ca>
16197         * lisp/emacs-lisp/generator.el (cps--gensym, cps--transform-1):
16198         Silence compiler.
16200 2015-05-19  Paul Eggert  <eggert@cs.ucla.edu>
16202         Try to port new etags tests to MS-Windows
16203         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
16204         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
16205         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
16206         Adjust to test-case changes below.
16207         * test/etags/Makefile (CSRC): Remove dostorture.c.
16208         Whatever it was trying to test, wasn't working portably.
16209         (LC_ALL): Remove.  Apparently there wasn't an encoding problem,
16210         just a line-ending problem.
16211         * test/etags/c-src/dostorture.c: Remove.
16212         * test/etags/cp-src/c.C: Remove stray CR.
16213         * test/etags/html-src/algrthms.html: Remove trailing CRs.
16214         State UTF-8 as the encoding.  The file is ASCII so it doesn't matter,
16215         but if someone edits it later it should stay UTF-8-compatible.
16217 2015-05-19  Eli Zaretskii  <eliz@gnu.org>
16219         Fix display of overlapping window-specific overlays
16220         * src/keyboard.c (adjust_point_for_property): When adjusting point
16221         due to display strings, ignore overlays that are specific to
16222         windows other than the currently selected one.
16223         * src/xdisp.c (handle_single_display_spec): If the display
16224         property comes from an overlay, arrange for buffer iteration to
16225         resume only after the end of that overlay.  (Bug#20607)
16227 2015-05-19  Dmitry Gutov  <dgutov@yandex.ru>
16229         New command icomplete-force-complete-and-exit
16230         * lisp/icomplete.el (icomplete-force-complete-and-exit):
16231         New command
16232         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00461.html)
16233         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00516.html).
16234         (icomplete-minibuffer-map): Bind C-j to it.
16235         (icomplete-forward-completions, icomplete-backward-completions):
16236         Mention the new command in the docstring.
16237         * lisp/minibuffer.el (minibuffer-force-complete-and-exit):
16238         Revert the previous fix for bug#17545.
16240 2015-05-19  Martin Rudalics  <rudalics@gmx.at>
16242         Fix last commit
16244         In Elisp manual explain how to override window manager positioning
16245         (Bug#20552)
16246         * doc/lispref/frames.texi (Position Parameters): Give example of
16247         how to override a window manager positioning decision.
16249         Clarify concept of "surrogate minibuffer frames" (Bug#20538)
16250         * src/frame.c (Fdelete_frame): In doc-string mention that frame
16251         can't be deleted if it has a surrogate minibuffer.
16252         * doc/lispref/frames.texi (Minibuffers and Frames)
16253         (Deleting Frames): Explain "surrogate minibuffer frames".
16255         * src/w32heap.c (DUMPED_HEAP_SIZE): Bump to 19/12 MB.
16257 2015-05-18  Glenn Morris  <rgm@gnu.org>
16259         Add option to ignore commit lines matching a pattern in ChangeLog
16260         * build-aux/gitlog-to-changelog: Add --ignore-line option.
16261         * build-aux/gitlog-to-emacslog: Ignore lines matching '^; '.
16263 2015-05-18  Paul Eggert  <eggert@cs.ucla.edu>
16265         Don't skip new etags tests on non-UTF-8 hosts
16266         Problem reported by Eli Zaretskii for MS-Windows.
16267         * test/etags/Makefile (UTF8_LOCALE, UTF8_ENCODING): Remove.
16268         (LC_ALL): Set to C if the current locale isn't UTF-8.
16269         (.PHONY): Remove ediff_1 thru ediff_5.
16270         (check): Always run.
16272 2015-05-18  Glenn Morris  <rgm@gnu.org>
16274         * lisp/calculator.el (calculator-funcall):
16275         * lisp/textmodes/artist.el (artist-spray-random-points):
16276         Use standard degree/radian conversion utilities.
16278         Further lisp-complete-symbol related cleanup.
16279         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol):
16280         Unadvertise non-functional argument.  Replace obsolete alias.
16282 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
16284         Add a test case for Maven warning ouput
16285         * test/automated/compile-tests.el
16286         (compile-tests--test-regexps-data): Add a case for Maven warning
16287         ouput.
16288         (compile--test-error-line): Check the compilation message type, if
16289         it's specified in the test data.
16291 2015-05-18  Paul Pogonyshev  <pogonyshev@gmail.com>
16293         Update Maven compilation-mode entry to distinguish warnings
16294         * lisp/progmodes/compile.el
16295         (compilation-error-regexp-alist-alist): Update Maven entry to
16296         distinguish warnings (bug#20556).
16298 2015-05-18  Przemysław Wojnowski  <esperanto@cumego.com>
16300         * test/automated/sgml-mode-tests.el: New file.
16302 2015-05-18  Dmitry Gutov  <dgutov@yandex.ru>
16304         Improve handling of the first Git revision
16305         * lisp/vc/log-view.el (log-view-toggle-entry-display): When
16306         there's no next entry, delete until the end of the buffer.
16307         (log-view-end-of-defun-1): Stop at eob.
16308         * lisp/vc/vc-annotate.el
16309         (vc-annotate-show-diff-revision-at-line-internal): Don't give up
16310         when previous-revision is nil.
16311         * lisp/vc/vc-git.el (vc-git-expanded-log-entry): End the arguments
16312         with `--' to avoid ambiguity.
16313         (vc-git-annotate-extract-revision-at-line): Exclude `^' from the
16314         returned revision string.
16315         (vc-git-annotate-time): Expect `^' before the first revision.
16316         * lisp/vc/vc-git.el (vc-git-diff): Diff against an empty tree if
16317         REV1 is nil, and REV2 is not.
16318         * lisp/vc/vc.el: Update the description of the `diff' function.
16320 2015-05-18  Oleh Krehel  <ohwoeowho@gmail.com>
16322         Allow checkdoc to be called in batch
16323         * lisp/emacs-lisp/checkdoc.el (checkdoc-error): When `noninteractive'
16324         is non-nil, echo the error with `warn'.
16325         How it can be used in -batch:
16326         (with-current-buffer (find-file "checkdoc.el")
16327           (checkdoc-current-buffer t))
16329 2015-05-18  Glenn Morris  <rgm@gnu.org>
16331         * lisp/calendar/solar.el (solar-ecliptic-coordinates): Use float-pi.
16333 2015-05-17  Paul Eggert  <eggert@cs.ucla.edu>
16335         * admin/notes/unicode: New section "binary files".
16337         Change new etags test to use UTF-8 encoding
16338         * test/etags/CTAGS.good, test/etags/ETAGS.good_1:
16339         * test/etags/ETAGS.good_2, test/etags/ETAGS.good_3:
16340         * test/etags/ETAGS.good_4, test/etags/ETAGS.good_5:
16341         * test/etags/html-src/index.shtml, test/etags/html-src/software.html:
16342         * test/etags/html-src/softwarelibero.html:
16343         Switch to UTF-8 encoding.
16344         * test/etags/Makefile (SRCS): Adjust to switch to UTF-8.
16345         Remove Makefile, as it's too incestuous to have the test input
16346         include the build procedure.
16347         (UTF8_LOCALE, UTF_ENCODING): New macros.
16348         (LC_ALL): If possible, set to a UTF-8 encoding if not already UTF-8.
16349         (check): Skip if not UTF-8.
16350         (.PHONY): New rule.
16351         (FRC): Remove, as superseded by .PHONY.  All uses removed.
16352         (regexfile): Prefer printf to echo when outputting oddball chars.
16353         (.PRECIOUS): Remove, as these files are not built.
16355         Rename 'foo-gzipped' to 'foo.gz'
16356         * test/automated/data/decompress/foo.gz:
16357         Rename from test/automated/data/decompress/foo-gzipped,
16358         to make it easier for other tools to tell that it's compressed.
16359         * test/automated/zlib-tests.el (zlib--decompress):
16360         Adjust to renamed file.
16362 2015-05-17  Dmitry Gutov  <dgutov@yandex.ru>
16364         Set up default-directory
16365         * lisp/vc/vc-annotate.el (vc-annotate-mode-map): Remove duplicate
16366         binding for `v'.
16367         (vc-annotate-show-changeset-diff-revision-at-line): Set up an
16368         appropriate value for default-directory.
16370 2015-05-17  Samer Masterson  <samer@samertm.com>
16372         * lisp/eshell/em-term.el (eshell-term-sentinel):
16373         No-op by default, only kills term buffer if
16374         `eshell-destroy-buffer-when-process-dies' is non-nil.  (Bug#18108)
16375         (eshell-destroy-buffer-when-process-dies): New custom to preserve
16376         previous behavior.
16378         eshell: Introduce new buffer syntax
16379         The new buffer syntax '#<buffer-name>' is equivalent to '#<buffer
16380         buffer-name>'.  Remove `eshell-buffer-shorthand', as it is no longer
16381         needed (Bug#19319).
16382         * lisp/eshell/esh-io.el (eshell-buffer-shorthand): Remove.
16383         (eshell-get-target): Remove shorthand-specific code.
16384         * lisp/eshell/esh-arg.el (eshell-parse-special-reference): Parse
16385         '#<buffer-name>'.
16387 2015-05-17  Jan D  <jan.h.d@swipnet.se>
16389         Merge branch 'master' into cairo
16391 2015-04-26  Jan D  <jan.h.d@swipnet.se>
16393         Merge branch 'master' into cairo
16395         Add PBM support for cairo
16396         * src/image.c (xcolor_to_argb32): New function.
16397         (get_spec_bg_or_alpha_as_argb): Call xcolor_to_argb32.
16398         (pbm_load, png_load_body, jpeg_load_body, gif_load): Only use
16399         XImagePtr if ! USE_CAIRO.
16400         (pbm_load): Add cairo support.
16402 2015-04-12  Jan D  <jan.h.d@swipnet.se>
16404         * src/xterm.c (x_free_cr_resources): Rename from x_prepare_for_xlibdraw.
16405         (x_cr_draw_frame, x_cr_export_frames, x_shift_glyphs_for_insert)
16406         (x_free_frame_resources): Rename x_prepare_for_xlibdraw to
16407         x_free_cr_resources.
16409         Handle specified bg in images.  Use generic libpng code for PNGs.
16410         * src/image.c (get_spec_bg_or_alpha_as_argb)
16411         (create_cairo_image_surface): New functions when USE_CAIRO.
16412         (xpm_load): Call the above functions.  Handle XPM without mask
16413         when USE_CAIRO.
16414         (png_load_body): Handle USE_CAIRO case.
16415         (png_load): Remove USE_CAIRO specific fuction, modify png_load_body
16416         instead.
16417         (jpeg_load_body): Call create_cairo_image_surface.
16418         (gif_load, svg_load_image): Handle specified background, call
16419         create_cairo_image_surface.
16420         * src/xterm.c (x_draw_image_glyph_string): Add missing USE_CAIRO.
16422 2015-04-11  Jan D  <jan.h.d@swipnet.se>
16424         Support GIF and TIFF with cairo
16425         * configure.ac: Allow jpeg with cairo.
16426         Allow tiff and gif with cairo.
16427         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
16428         (tiff_load): Create cairo image surface if USE_CAIRO.
16429         (gif_load): Ditto.
16431         Support JPEG with USE_CAIRO
16432         * configure.ac: Allow jpeg with cairo.
16433         * src/image.c (jpeg_load_body): Create cairo image surface if USE_CAIRO.
16435 2015-04-05  Jan D  <jan.h.d@swipnet.se>
16437         Support RSVG and cairo
16438         * configure.ac: Allow rsvg with cairo.  Move back HAVE_RSVG.
16439         * src/dispextern.h (struct image): Add cr_data2 if cairo.
16440         * src/image.c: #undef COLOR_TABLE_SUPPORT when USE_CAIRO.
16441         (x_clear_image): Free cr_data and cr_data2 if set.
16442         (xpm_load): Assign data to cr_data2.
16443         (svg_load_image): Convert from GdkPixbuf to CAIRO_FORMAT_ARGB32.
16445 2015-04-03  Jan D  <jan.h.d@swipnet.se>
16447         Introduce limited Xpm support (32 bit ZPixmap) for Cairo
16448         * configure.ac (HAVE_RSVG): Move after cairo.
16449         (USE_CAIRO): Disable rsvg, don't disable Xpm.
16450         * src/image.c (prepare_image_for_display): Don't load if USE_CAIRO.
16451         (x_clear_image): If USE_CAIRO, also free possible img->ximg->obdata and
16452         don't return early.
16453         (ALLOC_XPM_COLORS): Don't define when USE_CAIRO.
16454         (xpm_load): Convert simple Xpms (32 bit ZPixmap) to CAIRO_FORMAT_ARGB32
16455         and create a surface.
16457         Tool tips for menus did not show any text.
16458         * src/xterm.c (x_update_begin): Don't create any surface for non-visible
16459         tip frames, the geometry may be wrong.
16461         Merge branch 'master' into cairo, fixes tooltips not shown.
16463         Merge branch 'master' into cairo
16465         Add CAIRO_CFLAGS to lwlib/Makefile.in
16466         * Makefile.in (CAIRO_CFLAGS): Add.
16468 2015-02-19  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16470         * src/ftcrfont.c (ftcrfont_draw): Don't flush when drawing to screen.
16472 2015-02-16  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16474         Draw outermost line using black relief and erase corners also for cairo.
16475         * src/xterm.c [USE_CAIRO]: Include math.h.
16476         (enum corners) [USE_CAIRO]: New enum.
16477         (x_erase_corners_for_relief) [USE_CAIRO]: New function.
16478         (x_draw_relief_rect) [USE_CAIRO]: Use it.  If box width is larger
16479         than 1, draw the outermost line using the black relief.
16481         * src/xterm.c (x_fill_trapezoid_for_relief):
16482         Remove unnecessary cairo_close_path.
16484 2015-02-15  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16486         * src/xterm.c (x_draw_relief_rect) [USE_CAIRO]: Reset clipping.
16488         * src/xterm.c (x_draw_stretch_glyph_string):
16489         Call x_reset_clip_rectangles instead of XSetClipMask.
16491         Use int instead of unsigned int for width and height args.
16492         * src/xterm.c (x_cr_draw_image, x_fill_rectangle, x_draw_rectangle)
16493         (x_fill_trapezoid_for_relief): Use int instead of unsigned int for
16494         width and height args.
16496         Modernize k&r cairo-related function declarations.
16497         * src/gtkutil.c (xg_page_setup_dialog, xg_get_page_setup, draw_page)
16498         (xg_print_frames_dialog): Modernize k&r declarations.
16499         * src/xfns.c (Fx_export_frames, Fx_page_setup_dialog, Fx_get_page_setup)
16500         (Fx_print_frames_dialog): Modernize k&r declarations.
16501         * src/xterm.c (x_gc_get_ext_data, x_extension_initialize)
16502         (x_begin_cr_clip, x_end_cr_clip, x_set_cr_source_with_gc_foreground)
16503         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
16504         (x_cr_destroy_fringe_bitmap, x_cr_draw_frame, x_cr_accumulate_data)
16505         (x_cr_destroy, x_cr_export_frames, x_prepare_for_xlibdraw)
16506         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
16507         (x_draw_rectangle, x_clear_window, x_fill_trapezoid_for_relief)
16508         (x_clear_area): Modernize k&r declarations.
16510         Implement wave-style variant of underlining for cairo.
16511         * src/xterm.c (x_draw_horizontal_wave) [USE_CAIRO]: New function.
16512         (x_draw_underwave) [USE_CAIRO]: Use it.
16514         * src/xterm.c (x_draw_window_divider): Use x_fill_rectangle
16515         instead of XFillRectangle.
16517 2015-02-13  YAMAMOTO Mitsuharu  <mituharu@math.s.chiba-u.ac.jp>
16519         Fix fringe bitmap initialization for cairo
16520         * src/fringe.c (init_fringe_bitmap) [USE_CAIRO]: Adjust bitmap
16521         data for cairo image surface.
16522         * src/xterm.c (x_cr_define_fringe_bitmap):
16523         Call cairo_surface_mark_dirty.
16525 2015-02-11  Jan D  <jan.h.d@swipnet.se>
16527         Add cairo drawing
16528         * configure.ac (with-cairo): New option.
16529         (USE_CAIRO): Default to yes for Gtk+ 3.  Add code to test for cairo,
16530         set CAIRO_CFLAGS, CAIRO_LIBS.  Add ftcrfonto to FONT_OBJ if cairo.
16531         Output "Does Emacs use cairo?".
16532         * lisp/version.el (emacs-version): Add cairo version.
16533         * src/Makefile.in (CAIRO_CFLAGS, CAIRO_LIBS): New variables.
16534         (FONT_OBJ): Add comment about ftcrfont.
16535         (ALL_CFLAGS): Add CAIRO_CFLAGS.
16536         (LIBES): Add CAIRO_LIBS.
16537         * src/dispextern.h (struct image): Add cr_data for cairo.
16538         (x_cr_init_fringe): Declare.
16539         * src/font.c (syms_of_font): Call syms_of_ftcrfont for cairo.
16540         * src/font.h (ftcrfont_driver, syms_of_ftcrfont): Declare
16541         * src/fringe.c (x_cr_init_fringe): New function name that shares code
16542         with w32_init_fringe.
16543         * src/ftcrfont.c: New font driver for cairo, based on the ftfont driver.
16544         * src/ftfont.c (ftfont_info_size); New global variable.
16545         (ftfont_open2): New extern function almost the same as old ftfont_open,
16546         but takes the font_object as argument.
16547         (ftfont_open): Build font object and call ftfont_open2.
16548         * src/ftfont.h (ftfont_open2, ftfont_info_size): Declare.
16549         * src/gtkutil.c (xg_clear_under_internal_border)
16550         (xg_update_scrollbar_pos, xg_update_horizontal_scrollbar_pos):
16551         Only queue_draw if not cairo.  Change args to x_clear_area.
16552         (xg_get_font): Use Qftcr when using cairo, Qxft otherwise.
16553         (xg_page_setup_dialog, xg_get_page_setup, draw_page)
16554         (xg_print_frames_dialog): New functions for printing.
16555         * src/gtkutil.h (xg_page_setup_dialog, xg_get_page_setup)
16556         (xg_print_frames_dialog): Declare.
16557         * src/image.c: Add defined (USE_CAIRO) for PNG.
16558         Add !defined USE_CAIRO for W32 PNG code.
16559         (x_clear_image): If cairo, destroy the surface in cr_data.
16560         (png_load): Add new cairo compatible implementation.
16561         (lookup_image_type): Add defined (USE_CAIRO) for define png_type.
16562         * src/xfns.c: New section Printing.
16563         (x-export-frames, x-page-setup-dialog, x-get-page-setup)
16564         (x-print-frames-dialog): New printing functions.
16565         (Fx_create_frame, x_create_tip_frame): Register ftcrfont if cairo.
16566         (syms_of_xfns): Defsym Qorientation, Qtop_margin, Qbottom_margin,
16567         Qportrait, Qlandscape, Qreverse_portrait, Qreverse_landscape).
16568         (syms_of_xfns): Provide cairo and defvar cairo-version-string.
16569         defsubr Sx_page_setup_dialog, Sx_get_page_setup, Sx_print_frames_dialog.
16570         * src/xterm.c (x_clear_area1, x_prepare_for_xlibdraw)
16571         (x_set_clip_rectangles, x_reset_clip_rectangles, x_fill_rectangle)
16572         (x_draw_rectangle, x_fill_trapezoid_for_relief, x_clear_window)
16573         (x_gc_get_ext_data, x_extension_initialize, x_cr_accumulate_data):
16574         Declare.
16575         (FRAME_CR_CONTEXT, FRAME_CR_SURFACE): New macros.
16576         (max_fringe_bmp, fringe_bmp): New variables.
16577         (x_gc_get_ext_data, x_extension_initialize)
16578         (x_cr_destroy_surface, x_begin_cr_clip, x_end_cr_clip)
16579         (x_set_cr_source_with_gc_foreground)
16580         (x_set_cr_source_with_gc_background, x_cr_define_fringe_bitmap)
16581         (x_cr_destroy_fringe_bitmap, x_cr_draw_image, x_cr_draw_frame)
16582         (x_cr_accumulate_data, x_cr_destroy, x_cr_export_frames)
16583         (x_prepare_for_xlibdraw, x_set_clip_rectangles)
16584         (x_reset_clip_rectangles, x_fill_rectangle, x_draw_rectangle)
16585         (x_clear_window, x_fill_trapezoid_for_relief): New functions.
16586         (x_update_begin): Create cairo surface if needed.
16587         (x_draw_vertical_window_border): Call x_fill_rectangle for cairo.
16588         (x_update_end): Paint cairo drawing surface to xlib surface.
16589         (x_clear_under_internal_border, x_after_update_window_line): Adjust
16590         arguments to x_clear_area.
16591         (x_draw_fringe_bitmap): Call x_fill_rectangle.  Get GC values and
16592         call x_cr_draw_image for cairo.  Call x_reset_clip_rectangles instead
16593         of XSetClipMask.
16594         (x_set_glyph_string_clipping)
16595         (x_set_glyph_string_clipping_exactly): Use x_set_clip_rectangles
16596         instead of XSetClipRectangles.
16597         (x_clear_glyph_string_rect, x_draw_glyph_string_background):
16598         Use x_fill_rectangle instead of XFillRectangle.
16599         (x_draw_glyph_string_foreground)
16600         (x_draw_composite_glyph_string_foreground)
16601         (x_draw_glyphless_glyph_string_foreground): Use x_draw_rectangle
16602         instead of XDrawRectangle.
16603         (x_draw_relief_rect): Add code for USE_CAIRO.
16604         Call x_reset_clip_rectangles instead of XSetClipMask.
16605         (x_draw_box_rect): x_set_clip_rectangles instead of XSetClipRectangles,
16606         x_fill_rectangle instead of XFillRectangle, x_reset_clip_rectangles
16607         instead of XSetClipMask.
16608         (x_draw_image_foreground, x_draw_image_foreground_1):
16609         x_draw_rectangle instead of XDrawRectangle.
16610         (x_draw_glyph_string_bg_rect): x_fill_rectangle instead of
16611         XFillRectangle.
16612         (x_draw_image_glyph_string): If img has cr_data, use it as
16613         a cairo surface.
16614         (x_draw_stretch_glyph_string): x_set_clip_rectangles instead of
16615         XSetClipRectangles, x_fill_rectangle instead of XFillRectangle.
16616         (x_draw_glyph_string): x_fill_rectangle instead of XFillRectangle.,
16617         x_reset_clip_rectangles instead of XSetClipMask.
16618         (x_shift_glyphs_for_insert): Call x_prepare_for_xlibdraw.
16619         (x_clear_area1): New function that calls XClearArea.
16620         (x_clear_area): Takes frame as parameter, calls x_clear_area1 for
16621         non-cairo.
16622         (x_clear_frame): x_clear_window instead of XClearWindow.
16623         (x_scroll_run): Set frame garbaged if cairo.
16624         (XTmouse_position): Initialize *part to 0.
16625         (x_scroll_bar_create): Adjust arguments to x_clear_area.
16626         (x_scroll_bar_set_handle): x_clear_area1 instead of x_clear_area,
16627         x_fill_rectangle instead of XFillRectangle.
16628         (XTset_vertical_scroll_bar, XTset_horizontal_scroll_bar): Adjust
16629         arguments to x_clear_area.
16630         (x_scroll_bar_expose): x_draw_rectangle instead of XDrawRectangle.
16631         (handle_one_xevent): Adjust arguments to x_clear_area.
16632         Destroy cairo surface for frame if ConfigureNotify.
16633         (x_clip_to_row): x_set_clip_rectangles instead of XSetClipRectangles.
16634         (x_draw_hollow_cursor): x_draw_rectangle instead of XDrawRectangle,
16635         x_reset_clip_rectangles instead of XSetClipMask.
16636         (x_draw_bar_cursor): x_fill_rectangle instead of XFillRectangle,
16637         x_reset_clip_rectangles instead of XSetClipMask.
16638         (x_clear_frame_area): Adjust arguments to x_clear_area.
16639         (x_free_frame_resources): Call x_prepare_for_xlibdraw.
16640         (x_term_init): Call x_extension_initialize if cairo.
16641         (x_redisplay_interface): Add x_cr_define_fringe_bitmap,
16642         x_cr_destroy_fringe_bitmap for cairo.
16643         (x_initialize): Call x_cr_init_fringe for cairo.
16644         * src/xterm.h: Add include of cairo header files.
16645         (x_bitmap_record): Add img if cairo.
16646         (x_gc_ext_data): New struct for cairo.
16647         (x_display_info): Add ext_codes for cairo.
16648         (x_output): Add cr_context and cr_surface for cairo.
16649         (x_clear_area): Change arguments from Display*/Window to frame pointer.
16650         (x_query_color, x_begin_cr_clip, x_end_cr_clip)
16651         (x_set_cr_source_with_gc_foreground, x_set_cr_source_with_gc_background)
16652         (x_cr_draw_frame, x_cr_export_frames): Declare.
16654 2015-05-17  Johan Bockgård  <bojohan@gnu.org>
16656         Fix integer-valued `mouse-highlight' (Bug#20590)
16657         * src/xterm.c (handle_one_xevent) [USE_GTK]: Fix ifdef scope.
16659 2015-05-17  Eli Zaretskii  <eliz@gnu.org>
16661         MS-Windows followup for ASCIIfication of curved quotes
16662         * lisp/term/w32console.el (terminal-init-w32console): Repeat the
16663         test for curved quotes being displayable, after switching the
16664         terminal encoding.  (Bug#20545)
16666 2015-05-17  Jan D  <jan.h.d@swipnet.se>
16668         Add comment that x_shift_glyphs_for_insert is never called
16669         * src/xterm.c (x_shift_glyphs_for_insert, x_redisplay_interface):
16670         Add comment that this function is never called.
16672 2015-05-16  Glenn Morris  <rgm@gnu.org>
16674         * src/lisp.mk: Remove from repository and generate at build-time.
16675         * src/Makefile.in (lisp.mk): New rule to generate from loadup.el.
16676         (shortlisp_filter): New variable.
16677         (emacs$(EXEEXT), $(etc)/DOC): Depend on lisp.mk.
16678         (distclean): Remove lisp.mk.
16679         * Makefile.in ($(MAKEFILE_NAME)): No longer depend on src/lisp.mk.
16680         * lisp/loadup.el: Tweak layout to make it easier to parse.
16681         * make-dist: Do not distribute src/lisp.mk.
16683 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
16685         Display shorter dates in Git annotate output
16686         * lisp/vc/vc-git.el (vc-git-annotate-command): Use the short date
16687         format (when not overridden with vc-git-annotate-switches).
16688         (vc-git-annotate-time): Support the short format, as well as ISO
16689         8601 that has been used until now (bug#5428).
16691 2015-05-16  Paul Eggert  <eggert@cs.ucla.edu>
16693         ASCIIfy curved quotes on displays lacking them
16694         * lisp/international/mule-cmds.el (set-locale-environment):
16695         If curved quotes don't work, display straight ASCII approximations
16696         (Bug#20545).
16698 2015-05-16  Glenn Morris  <rgm@gnu.org>
16700         Small src/Makefile simplification
16701         * src/lisp.mk (shortlisp): Rename from lisp, remove $lispsource prefix.
16702         * src/Makefile.in (lisp): Derive from shortlisp.
16703         ($(etc)/DOC): Use $shortlisp rather than parsing lisp.mk.
16705 2015-05-16  Eli Zaretskii  <eliz@gnu.org>
16707         * lisp/help-mode.el (help-go-forward): Doc fix.
16708         (Bug#20577)
16710         * doc/lispref/debugging.texi (Profiling): Improve indexing.
16711         (Bug#20576)
16713 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
16715         * lisp/vc/vc-git.el (vc-git-resolve-when-done): Use `unless' to
16716         have one fewer `not'.
16718         * lisp/vc/vc-git.el (vc-git-diff-switches)
16719         (vc-git-annotate-switches, vc-git-resolve-conflicts)
16720         (vc-git-program, vc-git-root-log-format): Remove the redundant
16721         :group declarations.
16723 2015-05-16  Nicolas Petton  <nicolas@petton.fr>
16725         Removes the predicate from lisp-complete-symbol (Bug#20456)
16726         * lisp/emacs-lisp/lisp.el (lisp-complete-symbol): Do not use predicate
16727         and remove it from the docstring.
16729 2015-05-16  Dmitry Gutov  <dgutov@yandex.ru>
16731         Add new option vc-git-resolve-conflicts
16732         * lisp/vc/vc-git.el (vc-git-resolve-conflicts): New variable.
16733         (vc-git-find-file-hook): Add to after-save-hook only when the
16734         above is non-nil.
16735         (vc-git-resolve-when-done): Update to honor the new variable.
16736         (Bug#20292)
16738 2015-05-16  Artur Malabarba  <bruce.connor.am@gmail.com>
16740         * lisp/emacs-lisp/tabulated-list.el: Don't error on null header-string.
16741         (tabulated-list-init-header): Document new behavior.
16742         (tabulated-list-print-fake-header): Do nothing if
16743         `tabulated-list--header-string' is nil.
16744         (tabulated-list--header-string): Add a docstring.
16745         * doc/lispref/modes.texi (Tabulated List Mode): Document it.
16746         * etc/NEWS: Document it.
16748 2015-05-15  Leo Liu  <sdl.web@gmail.com>
16750         Revert "Fix cps--gensym"
16751         * lisp/emacs-lisp/generator.el (cps--gensym): Revert commit
16752         fbda511ab8069d0115eafca411a43353b85431b1 on 2015-05-14.
16754 2015-05-15  Glenn Morris  <rgm@gnu.org>
16756         Replace AC_SUBST_FILE in configure with include in Makefiles
16757         * configure.ac (DEPDIR, MKDEPDIR, deps_frag, lwlib_deps_frag)
16758         (oldxmenu_deps_frag, lisp_frag): Remove output variables/files.
16759         (AUTO_DEPEND): New output variable.
16760         * lwlib/Makefile.in (AUTO_DEPEND): New, set by configure.
16761         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
16762         (lwlib_deps_frag): Replace by conditional include.
16763         * lwlib/autodeps.mk: Remove file.
16764         * oldXMenu/Makefile.in (AUTO_DEPEND): New, set by configure.
16765         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
16766         (oldxmenu_deps_frag): Replace by conditional include.
16767         * oldXMenu/autodeps.mk: Remove file.
16768         * src/Makefile.in (AUTO_DEPEND): New, set by configure.
16769         (DEPFLAGS, MKDEPDIR): Set directly via conditional.
16770         (lisp_frag): Replace by an include.
16771         (deps_frag): Replace by conditional include.
16772         * src/autodeps.mk: Remove file.
16774         Tweak japanese.el's loading of dependencies
16775         * lisp/loadup.el: Explicitly load cp51932 and eucjp-ms.
16776         * lisp/language/japanese.el: Use require rather than load.
16777         * lisp/international/cp51932.el, lisp/international/eucjp-ms.el:
16778         Provide a feature.
16779         * admin/charsets/eucjp-ms.awk, admin/charsets/cp51932.awk:
16780         Provide a feature in the generated file.
16782 2015-05-15  Jan D  <jan.h.d@swipnet.se>
16784         Fix NS warnings
16785         * src/nsmenu.m (ns_popup_dialog)
16786         * src/nsimage.m (initFromXBM:width:height:fg:bg:)
16787         * src/nsfns.m (Fx_create_frame): Remove unused variables.
16788         (Fns_read_file_name): Initialize fname, remove ret.
16789         * src/nsterm.m (ns_draw_window_cursor): Handle DEFAULT_CURSOR in switch.
16790         (ns_get_color, ns_set_horizontal_scroll_bar, keyDown):
16791         Remove unused variable.
16792         (init): Add parantesis in if.
16793         (ns_create_terminal): Assign set_horizontal_scroll_bar_hook.
16795 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
16797         Fix a enum conversion warning in macfont.m
16798         * src/macfont.h (CharacterCollection): Typedef to NSCharacterCollection.
16799         (MAC_CHARACTER_COLLECTION_*): Use the NS variants.
16801 2015-05-15  Eli Zaretskii  <eliz@gnu.org>
16803         * lisp/textmodes/ispell.el (ispell-aspell-find-dictionary):
16804         Support Aspell dictionaries with names like "de-alt".  (Bug#20581)
16806 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
16808         * lisp/cus-start.el: Add ns-confirm-quit.
16810         Fix warnings on OSX 10.10
16811         * src/nsfns.m (MODAL_OK_RESPONSE): New define for different
16812         OSX versions.
16813         (Fns_read_file_name): Check against MODAL_OK_RESPONSE.
16814         (compute_tip_xy): Use convertRectToScreen for OSX >= 10.7
16815         * src/nsmenu.m (initWithContentRect:styleMask:backing:defer:)
16816         * src/nsimage.m (allocInitFromFile, setPixmapData): Only call
16817         setScalesWhenResized for OSX < 10.6.
16818         * src/nsterm.h (EmacsScroller): Declare scrollerWidth.
16819         * src/nsterm.m (ns_copy_bits): New function that does not use
16820         deprecated NSCopyBits.
16821         (ns_scroll_run, ns_shift_glyphs_for_insert): Call ns_copy_bits.
16822         (runAlertPanel): New function.
16823         (applicationShouldTerminate:): Call runAlertPanel.
16824         (initFrameFromEmacs, toggleFullScreen:): Only call
16825         useOptimizedDrawing for OSX < 10.10.
16826         (initFrameFromEmacs:): Only call allocateGState for OSX < 10.10.
16827         (windowWillUseStandardFrame:defaultFrame:): Cast arg to abs to int.
16828         (draggingEntered:): Returns NSDragOperation.
16829         (scrollerWidth): Use scrollerWidthForControlSize for OSX >= 10.7.
16831 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16833         * lisp/emacs-lisp/package.el: Don't ensure-init during startup.
16834         (package--init-file-ensured): New variable.
16835         (package-initialize, package--ensure-init-file): Use it.
16837 2015-05-15  Jan Djärv  <jan.h.d@swipnet.se>
16839         Honor :fore/background for XBM on NS (Bug#14969)
16840         * src/nsterm.h (EmacsImage): Add xbm_fg, remove initFromSkipXBM,
16841         initFromXBM takes bg, fg args, remove flip arg.
16842         (ns_image_from_XBM): Add bg, fg args.
16843         * src/image.c (x_create_bitmap_from_data)
16844         (Create_Pixmap_From_Bitmap_Data): ns_image_from_XBM takes bg, fg args.
16845         * src/nsimage.m (ns_image_from_XBM): Add fg, bg args, pass to
16846         initFromXBM.  Remove flip arg.
16847         (initFromSkipXBM): Move code to initFromXBM.
16848         (initFromXBM): Actually set fg and bg, instead of playing alpha games.
16849         Use fg, bg from args (Bug#14969).  Remove if (length) section, was
16850         always false.
16851         Remove bit flipping (bitPat, swt), generated incorrect images when
16852         width/height wasn't a multiple of 8.
16853         (setXBMColor:): Modify planes by comparing to saved xbm_fg.
16854         * src/nsterm.m (ns_draw_fringe_bitmap): initFromXBM takes fg, bg args,
16855         remove flip arg.
16857 2015-05-15  Artur Malabarba  <bruce.connor.am@gmail.com>
16859         * lisp/emacs-lisp/package.el: Be more careful with the init file.
16860         (package--ensure-init-file): Check that user-init-file is set,
16861         exists, is readable, and is writable.  (Bug#20584)
16862         Also expand the docstring.
16864 2015-05-14  Wilson Snyder  <wsnyder@wsnyder.org>
16866         Sync with upstream verilog-mode revision 6232468
16867         * lisp/progmodes/verilog-mode.el
16868         (verilog-font-lock-grouping-keywords-face)
16869         (verilog-highlight-grouping-keywords): Fix use of face when
16870         `verilog-highlight-grouping-keywords' set.  Reported by Jeff Pompa.
16871         (verilog-auto-reset): Fix AUTORESET to ignore member resets if
16872         parent is reset, bug906.  Reported by Ken Schmidt.
16873         (verilog-auto-inout-module): Add fourth regexp argument to
16874         AUTOINOUTMODULE and AUTOINOUTCOMP for signals to not match, bug856.
16875         Reported by John Tillema.
16876         (verilog-auto-inst-port): Fix AUTOINST interfaces to not show
16877         modport if signal attachment is itself a modport.  Reported by
16878         Matthew Lovell.
16879         (verilog-auto-reset, verilog-auto-sense-sigs): Fix AUTORESET with
16880         always_comb and always_latch, bug844.  Reported by Greg Hilton.
16881         (verilog-at-constraint-p, verilog-beg-of-statement-1): Fix hanging
16882         with many curly-bracket pairs, bug663.
16883         (verilog-set-auto-endcomments): Fix end comments for functions of
16884         type void, etc.  Reported by Alex Reed.
16885         (verilog-do-indent): Fix electric tab deleting form-feeds.  Note
16886         caused by indent-line-to deleting tabls pre 24.5.
16887         (verilog-nameable-item-re): Fix nameable items that can have an
16888         end-identifier to include endchecker, endgroup, endprogram,
16889         endproperty, and endsequence.  Reported by Alex Reed.
16890         (verilog-label-be): When auto-commenting a buffer, consider
16891         auto-comments on all known keywords (not just a subset thereof).
16892         Reported by Alex Reed.
16893         (verilog-auto-end-comment-lines-re)
16894         (verilog-end-block-ordered-re, verilog-set-auto-endcomments):
16895         Automatically comment property/endproperty blocks to match other
16896         similar blocks like sequence/endsequence, function/endfunction, etc.
16897         Reported by Alex Reed.
16898         (verilog-set-auto-endcomments): Detect the function- or task-name
16899         when auto-commenting blocks that lack an explicit portlist.
16900         Reported by Alex Reed.
16901         (verilog-auto, verilog-auto-insert-last): Add AUTOINSERTLAST to
16902         allow post-AUTO user fixups, bug826.  Reported by Dennis Muhlestein.
16903         (verilog-no-indent-begin-re): When `verilog-indent-begin-after-if'
16904         is nil, fix indenting initial/final to match always statements,
16905         bug825.  Reported by Tim Clapp.
16906         (verilog-extended-complete-re): Fix indentation of DPI-C imports
16907         with c_identifiers, and DPI-C imports, bug557.  Reported by ZeDong
16908         Mao and Jason Forkey.
16909         (verilog-read-decls): Fix parsing typed interfaces.  Fix
16910         AUTOINOUTMODPORT missing types.  Reported by Stephan Bourduas.
16911         Fix localparam not being ignored in AUTOINSTPARAM,
16912         bug889.  Reported by Shannon Hill.
16913         (verilog-auto-output-every): Add regexp to AUTOOUTPUTEVERY,
16914         bug793.  Reported by Pierre-David Pfister.
16915         (verilog-auto-arg-format, verilog-auto-arg-ports):
16916         Add verilog-auto-arg-format to support newlines in AUTOARG.
16917         Reported by Jie Xiao.
16918         (verilog-batch-execute-func): Do not batch re-auto files loaded by
16919         Local Variables.  Fix printing "no changes to be saved" with
16920         verilog-batch.  Reported by Dan Dever.
16921         (verilog-auto-inout-module): Fix AUTOINOUTMODULE not inserting
16922         interface-only modules, bug721.  Reported by Dean Hoyt.
16923         Author: Alex Reed <acreed4@gmail.com>
16924         * lisp/progmodes/verilog-mode.el (verilog-beg-of-statement):
16925         Don't treat '<keyword>:<identifier>' as the start of a labeled
16926         statement, bug905.  Reported by Enzo Chi.
16927         (verilog-directive-re, verilog-compiler-directives)
16928         (verilog-keywords): Match full set of IEEE 2012-1800 compiler
16929         directives (plus some extras) when determining indentation, bug
16930         901.  Reported by Bernd Beuster.
16931         (verilog-at-constraint-p): Fix indentation of coverpoint bins if
16932         iff expression doesn't start with word-character, bug900.
16933         (verilog-optional-signed-range-re, verilog-optional-signed-re):
16934         Fix incorrect indentation/alignment of unsigned declarations,
16935         bug897.
16936         (verilog-looking-back, verilog-in-attribute-p): Fix labeling of
16937         always constructs, bug895.
16938         (verilog-calc-1): Fix verilog-mode constraint indentation, bug324.
16939         Reported by Eric Mastromarchi.
16940         (verilog-beg-of-statement): Fix indenting for some forms of
16941         constraintsm bug433.  Reported by Brad Parker.  Fix indentation of
16942         continued assignment incorrect if first line ends with ']', bug437.
16943         Reported by Dan Dever.  Fix indention of cover inside an
16944         ifdef, bug 862.  Reported by Bernd Beuster.  Fix labeling do-while
16945         blocks, bug842.
16946         (verilog-preprocessor-re): Fix fork/end UNMATCHED warning, bug859.
16947         Reported by Kaushal Modi.
16948         (verilog-set-auto-endcomments): Fix endlabel end comments, bug888.
16949         (verilog-backward-token): Fix indenting sensitivity lists with
16950         named events, bug840.  Reed.
16951         (verilog-no-indent-begin-re): Fix `verilog-indent-begin-after-if'
16952         nil not honoring 'forever', 'foreach', and 'do' keywords.
16954 2015-05-14  Paul Eggert  <eggert@cs.ucla.edu>
16956         Check for invalid GTK+ monitor scales
16957         * src/gtkutil.c (xg_get_gdk_scale): Return 1 for invalid scales,
16958         INT_MAX for too-large scales.  All callers changed to assume the
16959         result is valid (Bug#20432).
16960         (xg_frame_set_char_size, xg_update_scrollbar_pos):
16961         Calculate scale only if needed.
16962         Show ASCII approximations instead.
16964 2015-05-14  Eli Zaretskii  <eliz@gnu.org>
16966         Fix daemon crashes when linum-mode is turned on early on
16967         * src/window.c (Fwindow_end): Don't try calling display engine
16968         functions on initial-frame frame.  (Bug#20565)
16970         Fix selective diff browsing in Ediff
16971         * lisp/vc/ediff-util.el (ediff-focus-on-regexp-matches):
16972         Go to the beginning of the region before searching for the
16973         ediff-regexp-focus-* regexps.  (Bug#20568)
16975 2015-05-14  Jan D  <jan.h.d@swipnet.se>
16977         Fixes bug#20142
16978         * src/gtkutil.c (delete_cb): Don't send delete event here, it does
16979         arrive in the main loop, even for Gtk 3 (Bug#20142).
16981         Don't access display after i/o error (Bug#19147).
16982         * src/xterm.c (x_connection_closed): Add third arg ioerror.
16983         If ioerror, set display to 0 (Bug#19147).
16984         (x_error_quitter): Call x_connection_closed with third arg false.
16985         (x_io_error_quitter): Call x_connection_closed with third arg true.
16987         Handle GTK_SCALE, fixes Bug#20432.
16988         * src/gtkutil.c (xg_get_gdk_scale): New function.
16989         (xg_frame_set_char_size)
16990         (x_wm_set_size_hint, xg_get_default_scrollbar_width)
16991         (xg_get_default_scrollbar_height)
16992         (xg_update_horizontal_scrollbar_pos): Take GTK_SCALE in to account
16993         when setting sizes (Bug#20432).
16995 2015-05-13  Leo Liu  <sdl.web@gmail.com>
16997         * lisp/emacs-lisp/generator.el (cps--gensym): Fix.
16999 2015-05-13  Glenn Morris  <rgm@gnu.org>
17001         Fix bootstrap (void function cl-member).
17002         * lisp/emacs-lisp/cl-lib.el: Load cl-seq if no cl-loaddefs file.
17003         * lisp/emacs-lisp/cl-seq.el: Provide a feature.
17005 2015-05-13  Stefan Monnier  <monnier@iro.umontreal.ca>
17007         * lisp/loadup.el ("emacs-lisp/cl-generic"): Preload
17008         * src/lisp.mk (lisp): Add emacs-lisp/cl-generic.elc.
17009         * lisp/emacs-lisp/cl-generic.el (cl-generic-define-method):
17010         Avoid defalias for closures which are not immutable.
17011         (cl--generic-prefill-dispatchers): New macro.  Use it to prefill
17012         the dispatchers table with various entries.
17013         * lisp/emacs-lisp/ert.el (emacs-lisp-mode-hook):
17014         * lisp/emacs-lisp/seq.el (emacs-lisp-mode-hook): Use add-hook.
17016 2015-05-13  Eli Zaretskii  <eliz@gnu.org>
17018         Improve tagging of C bindings in DEFVAR_*
17019         * src/Makefile.in (TAGS): Add --regex options to tag the C binding
17020         from DEFVAR_*.
17022 2015-05-13  Paul Eggert  <eggert@cs.ucla.edu>
17024         * src/editfns.c (Fformat): Fix use-after-free bug (Bug#20548).
17026 2015-05-12  Glenn Morris  <rgm@gnu.org>
17028         * lisp/progmodes/tcl.el (tcl-filter):
17029         Handle comint-prompt-read-only like gud.el does.  (Bug#20549)
17031         Add basic VC push support
17032         * lisp/vc/vc.el (vc-push): New autoloaded command.
17033         * lisp/vc/vc-hooks.el (vc-prefix-map, vc-menu-map): Add vc-push.
17034         * lisp/vc/vc-bzr.el (vc-bzr--pushpull): New, factored from vc-bzr-pull.
17035         (vc-bzr-pull): Reimplement using vc-bzr--pushpull.
17036         (vc-bzr-push): New.
17037         * lisp/vc/vc-git.el (vc-git--pushpull): New, factored from vc-git-pull.
17038         (vc-git-pull): Reimplement using vc-git--pushpull.
17039         (vc-git-push): New.
17040         * lisp/vc/vc-hg.el (vc-hg--pushpull): New, factored from vc-hg-pull.
17041         (vc-hg-pull, vc-hg-push): Reimplement using vc-hg--pushpull.
17042         * doc/emacs/maintaining.texi (Pulling / Pushing):
17043         Rename from "VC Pull".  Mention pushing.
17044         (VC With A Merging VCS, VC Change Log): Update xrefs.
17045         (Branches): Update menu.
17046         * doc/emacs/emacs.texi: Update menu.
17047         * etc/NEWS: Mention this.
17049 2015-05-12  Nicolas Petton  <nicolas@petton.fr>
17051         Improve the seq pcase pattern and the `seq-let' macro
17052         * lisp/emacs-lisp/seq.el: The pcase pattern now matches only if the
17053         object is a sequence, and binds each element of ARGS to the
17054         corresponding element of the sequence.
17056 2015-05-12  Eli Zaretskii  <eliz@gnu.org>
17058         Fix tags created from DEFVAR_* declarations in C
17059         * src/Makefile.in (TAGS): Improve the --regex argument to etags,
17060         to make tags extracted from DEFVAR_* declarations more accurate.
17062         Add a test suite for etags
17063         * test/etags/: New test suite, adapted from
17064         http://fly.isti.cnr.it/pub/software/unix/etags-regression-test.tar.bz2,
17065         whose original author is Francesco Potortì <pot@gnu.org>.
17067         Fix tagging of symbols in C enumerations
17068         * lib-src/etags.c (consider_token): Don't tag symbols in
17069         expressions that assign values to enum constants.  See
17070         http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00291.html
17071         for details.
17072         (C_entries): Reset fvdef to fvnone after processing a preprocessor
17073         conditional and after a comma outside of parentheses.
17075 2015-05-12  Glenn Morris  <rgm@gnu.org>
17077         * lisp/url/url-handlers.el (url-file-name-completion)
17078         (url-file-name-all-completions): Silence compiler.
17080         * lisp/emacs-lisp/chart.el (chart-axis-draw): Replace obsolete alias.
17082         * lisp/play/dunnet.el (dun-dos-boot-msg): Fix time.  (Bug#20554)
17084 2015-05-12  Stefan Monnier  <monnier@iro.umontreal.ca>
17086         * lisp/emacs-lisp/cl-generic.el: Add dispatch on &context arguments
17087         (cl--generic-mandatory-args): Remove.
17088         (cl--generic-split-args): New function.
17089         (cl-generic-define, cl--generic-lambda): Use it.
17090         (cl-generic-define-method): Use it as well, and add support for
17091         context args.
17092         (cl--generic-get-dispatcher): Handle &context dispatch.
17093         (cl--generic-cache-miss): `dispatch-arg' can now be a
17094         context expression.
17095         (cl--generic-dispatchers): Pre-fill.
17096         * test/automated/cl-generic-tests.el (sm-generic-test-12-context):
17097         New test.
17099 2015-05-11  Glenn Morris  <rgm@gnu.org>
17101         * make-dist: Abort if "make ChangeLog" fails.  Add "--no-changelog".
17103 2015-05-11  Stefan Monnier  <monnier@iro.umontreal.ca>
17105         * lisp/term/xterm.el: Fix xterm-paste handling for rxvt
17106         * lisp/term/rxvt.el: Require term/xterm.
17107         (rxvt-function-map): Use xterm-rxvt-function-map.
17108         (rxvt-standard-colors): Move before first use.
17109         (terminal-init-rxvt): Use xterm--push-map and
17110         xterm-register-default-colors.
17111         (rxvt-rgb-convert-to-16bit, rxvt-register-default-colors): Remove.
17112         * lisp/term/xterm.el (xterm-rxvt-function-map): New var.
17113         Move shared bindings between rxvt and xterm to it.
17114         (xterm-function-map): Use it.  Move the xterm-paste binding to
17115         xterm-rxvt-function-map (bug#20444).
17116         (xterm-standard-colors): Move before first use.
17117         (xterm--push-map): New function.
17118         (xterm-register-default-colors): Take standard colors as argument.
17119         (terminal-init-xterm): Use it.  Adjust call to
17120         xterm-register-default-colors.
17122 2015-05-11  Glenn Morris  <rgm@gnu.org>
17124         * lisp/term/x-win.el: Quieten --without-x compilation.
17125         (x-own-selection-internal, x-disown-selection-internal)
17126         (x-selection-owner-p, x-selection-exists-p, x-get-selection-internal):
17127         Declare.
17129         * Makefile.in (emacslog): Remove srcdir.
17130         (ChangeLog): Update for the above.
17132 2015-05-10  Fabián Ezequiel Gallina  <fgallina@gnu.org>
17134         python.el: better limit for looking-back calls
17135         * lisp/progmodes/python.el (python-shell-accept-process-output):
17136         Use last comint prompt start as limit for looking-back.
17138 2015-05-10  Stefan Monnier  <monnier@iro.umontreal.ca>
17140         CEDET (srecode-insert-fcn): Fix use of oref on a class
17141         * lisp/cedet/srecode/insert.el (srecode-insert-fcn): Fix use of oref
17142         on a class.  Reported by Pierre Lorenzon.
17143         (srecode-template-inserter-point): Remove declaration.
17145         CEDET (srecode-create-dictionary): Avoid obsolete object name
17146         * lisp/cedet/srecode/dictionary.el (srecode-create-dictionary):
17147         Don't use a symbol as an object name.  Reported by Pierre Lorenzon.
17149 2015-05-10  Paul Eggert  <eggert@cs.ucla.edu>
17151         C-x 8 shorthands for curved quotes, Euro, etc.
17152         Although C-x 8 lets you insert arbitrary Unicode characters,
17153         it's awkward to use this to insert commonly used symbols such as curved
17154         quotes, the Euro symbol, etc.  This patch adds simpler sequences for
17155         characters commonly found in English text and in basic math.
17156         For example, assuming the Alt key works on your keyboard and iso-transl
17157         is loaded, one can now type "A-[" instead of "A-RET LEFT SIN TAB RET"
17158         to get the character "‘" (U+2018 LEFT SINGLE QUOTATION MARK).
17159         (Bug#20499)
17160         * doc/emacs/mule.texi (Unibyte Mode):
17161         A few other printing characters now work too.
17162         * etc/NEWS: Document this.
17163         * lisp/international/iso-transl.el (iso-transl-char-map):
17164         Also support the following characters:
17165         ‐ ‑ ‒ – — ― ‘ ’ “ ” † ‡ • ′ ″ € № ← → ↔ − ≈ ≠ ≤ ≥
17167 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
17169         Add xref-find-regexp
17170         * lisp/progmodes/xref.el (xref-find-function): Describe the
17171         `matches' action.
17172         (xref-find-regexp): New command, using it.
17173         (xref-collect-references): Rename to xref-collect-matches.
17174         (xref--collect-reference): Rename to xref--collect-match.
17175         (xref-collect-matches, xref--collect-match): Accept new argument,
17176         KIND.  Update accordingly.
17177         (xref--regexp-to-extended): New function.
17178         * lisp/progmodes/elisp-mode.el (elisp-xref-find): Support the
17179         `matches' action.
17180         (elisp--xref-find-matches): Accept new argument.  Resolve a FIXME.
17181         * lisp/progmodes/etags.el (etags-xref-find):
17182         Support the `matches' action.
17183         (etags--xref-find-matches): New function.
17185 2015-05-10  Glenn Morris  <rgm@gnu.org>
17187         * Makefile.in: Fixes for recent change-history changes.
17188         (change-history-nocommit): Update footer regexp.
17189         Ensure output script stays executable.
17191 2015-05-10  Nicolas Petton  <nicolas@petton.fr>
17193         New version of `seq-let' based on a pcase pattern
17194         * lisp/emacs-lisp/seq.el (seq-let): Define the macro in terms of a
17195         pcase pattern if `pcase-defmacro' is defined (Emacs>=25.1).
17197 2015-05-10  Przemysław Wojnowski  <esperanto@cumego.com>
17199         Add basic HTML5 tags and a template
17200         * lisp/textmodes/sgml-mode.el: Basic HTML5 support.
17201         (html-tag-alist): Add HTML5 tags.
17202         (html-tag-help): Add new tags descriptions.
17203         (html-navigational-links): Template for nav links.
17204         (html-html5-template): Template for a HTML5 page.
17206 2015-05-10  Dmitry Gutov  <dgutov@yandex.ru>
17208         semantic/symref/grep: Don't use word boundaries
17209         * lisp/cedet/semantic/symref/grep.el
17210         (semantic-symref-perform-search): Instead of wrapping input in
17211         word boundaries, check that the characters before and after are
17212         not word constituents.
17214         semantic/symref/grep: Support regexp search
17215         * lisp/cedet/semantic/symref.el
17216         (semantic-symref-hit-to-tag-via-buffer): Don't regexp-quote when
17217         the search type is regexp.
17218         * lisp/cedet/semantic/symref/grep.el
17219         (semantic-symref-perform-search): Support the regexp search type.
17220         Pass -E to Grep when it's used.
17222         semantic-symref-regexp: Allow to input an arbitrary string
17223         * lisp/cedet/semantic/symref/list.el (semantic-symref-regexp):
17224         Allow to input an arbitrary string interactively.
17226         Remove tag-symbol-match-p from etags-xref-find-definitions-tag-order
17227         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
17228         Remove tag-symbol-match-p from the default value
17229         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00292.html).
17231         Declare find-tag obsolete
17232         * lisp/progmodes/etags.el (find-tag): Declare obsolete in favor of
17233         xref-find-definitions.
17235 2015-05-10  Jan D  <jan.h.d@swipnet.se>
17237         Draw composite string correctly (Bug#20537)
17238         * src/nsterm.m (ns_draw_composite_glyph_string_foreground):
17239         New function.
17240         (ns_draw_glyph_string): Call it.
17242 2015-05-09  Eli Zaretskii  <eliz@gnu.org>
17244         Avoid infloop in ERC
17245         * lisp/simple.el (line-move-to-column): Ignore field boundaries
17246         while computing line beginning position.  (Bug#20498)
17248 2015-05-08  Glenn Morris  <rgm@gnu.org>
17250         * Makefile.in (ChangeLog): No longer pass "srcprefix"; cd instead.
17251         * build-aux/gitlog-to-emacslog: Check called from right directory.
17252         (srcprefix): Remove.
17254         * build-aux/gitlog-to-emacslog: Get rid of "distprefix".
17255         * Makefile.in (ChangeLog): No longer pass "distprefix".
17256         * make-dist: Update "make ChangeLog" syntax for the above change.
17258         * build-aux/gitlog-to-emacslog: Don't hard-code "ChangeLog.2".
17259         * Makefile.in (ChangeLog): Pass -n to gitlog-to-emacslog.
17261         * build-aux/gitlog-to-emacslog: Add "for earlier changes" to footer.
17263         Add command-line option-parsing to gitlog-to-emacslog
17264         * build-aux/gitlog-to-emacslog: Add command-line options.
17265         By default, refuse to remove an existing output file.
17266         * Makefile.in (CHANGELOG): Update default.
17267         (ChangeLog): Do not test for existing file.
17268         (change-history-nocommit): Ensure temp file does not exist.
17270         Quieten --without-x compilation
17271         * lisp/term/common-win.el: Provide a feature.
17272         * lisp/term/x-win.el (term/common-win): Require it.
17274         * lisp/dired-aux.el (dired-do-print): Require lpr.
17276         Quieten compilation, eg in --without-x builds
17277         * lisp/dired-aux.el (lpr-printer-switch):
17278         * lisp/frame.el (tool-bar-height):
17279         * lisp/linum.el (font-info):
17280         * lisp/window.el (font-info, overflow-newline-into-fringe)
17281         (tool-bar-height):
17282         * lisp/emacs-lisp/package-x.el (tar-data-buffer):
17283         * lisp/gnus/gnus-util.el (iswitchb-mode):
17284         * lisp/mail/rmailmm.el (libxml-parse-html-region):
17285         * lisp/net/nsm.el (gnutls-peer-status)
17286         (gnutls-peer-status-warning-describe):
17287         * lisp/net/shr.el (libxml-parse-xml-region):
17288         * lisp/url/url-http.el (gnutls-peer-status): Declare.
17290 2015-05-08  Stefan Monnier  <monnier@iro.umontreal.ca>
17292         CEDET (srecode-pop, srecode-peek): Don't use `subclass'
17293         * lisp/cedet/srecode/insert.el (srecode-pop, srecode-peek): Don't use
17294         `subclass' since they're never called with a class.
17295         (srecode-insert-method, srecode-insert-subtemplate): Avoid obsolete
17296         srecode-dictionary-child-p.
17298 2015-05-08  Nicolas Richard  <theonewiththeevillook@yahoo.fr>
17300         * lisp/help.el (help--binding-locus): Document argument POSITION.
17301         (Bug#20530)
17303 2015-05-08  Paul Eggert  <eggert@cs.ucla.edu>
17305         Merge from gnulib
17306         * doc/misc/texinfo.tex: Get latest version.
17308 2015-05-08  Oleh Krehel  <ohwoeowho@gmail.com>
17310         ffap.el (ffap-read-file-or-url): Fix completing-read call
17311         * lisp/ffap.el (ffap-read-file-or-url): The HIST argument of
17312         `completing-read' should be a symbol.
17314 2015-05-08  Eli Zaretskii  <eliz@gnu.org>
17316         Verify file modifications by other programs
17317         * src/filelock.c (lock_file): Check whether the file was modified
17318         since it was visited even if 'create-lockfiles' is nil.  (Bug#18828)
17320         Fix keyboard macros that include function keys
17321         * src/keyboard.c (read_char_minibuf_menu_prompt): Record function
17322         keys in the macro before returning.  (Bug#20454)
17324 2015-05-08  Glenn Morris  <rgm@gnu.org>
17326         * build-aux/gitlog-to-changelog: Treat "Tiny-change" like
17327         "Copyright-paperwork-exempt".  (Bug#20324)
17329         * lisp/vc/log-edit.el: Handle "(tiny change)".  (Bug#20324)
17330         (log-edit-rewrite-tiny-change): New variable.
17331         (log-edit-insert-changelog): Maybe add "Copyright-paperwork-exempt".
17332         (log-edit-changelog-ours-p): Set log-edit-author to a cons.
17333         * etc/NEWS: Mention this.
17335         * lisp/calc/calc.el (math-zerop): Declare.
17337         * lisp/emacs-lisp/eieio-opt.el (help-fns-short-filename): Declare.
17339 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17341         * lisp/emacs-lisp/subr-x.el (if-let): Fix debug spec.
17342         Support the case when BINDINGS is a single tuple.  (Bug#20525)
17344         * etc/NEWS: Fix typo in previous commit
17345         (14bb519f1034ddb38ce375cbad7095d9b07f8b26).
17347 2015-05-07  Jan D  <jan.h.d@swipnet.se>
17349         * configure.ac: Warn for multiple display crash for all Gtk+ versions.
17350         Output URL to Gtk+ bug (Bug#20452).
17352         * lisp/term/ns-win.el (ns-paste-secondary): Use gui-get-selection.
17354 2015-05-07  Artur Malabarba  <bruce.connor.am@gmail.com>
17356         * lisp/emacs-lisp/package.el: New "external" package status.
17357         An external package is any installed package that's not built-in
17358         and not from `package-user-dir', which usually means it's from an
17359         entry in `package-directory-list'.  They are treated much like
17360         built-in packages, in that they cannot be through the Package Menu
17361         deleted and are not considered for upgrades.
17362         (package-desc-status): Identify if a package is installed outside
17363         `package-user-dir'.
17364         (package-menu--print-info-simple)
17365         (package-menu--status-predicate): Add support for it.
17366         * etc/NEWS: Document it.
17368 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17370         * lisp/mail/rmail.el: Use lexical-binding.
17371         (rmail-bury): Remove unused var `buffer-to-bury'.
17372         (rmail-get-new-mail): Remove unused vars `opoint' and `success'.
17373         (rmail-parse-url): Remove unused var `proto', `user', and `host'.
17374         (rmail-unrmail-new-mail-maybe): Remove unused var `new-file'.
17375         (rmail-insert-inbox-text): Remove unused var `movemail'.
17376         (rmail-add-mbox-headers): Remove unused var `limit'.
17377         (rmail-undelete-previous-message): Remove unused var `value'.
17378         (rmail-reply): Remove unused vars `resent-to', `resent-cc',
17379         `resent-reply-to'.
17380         (rmail-mime-mbox-buffer, rmail-mime-view-buffer): Declare.
17381         (rmail-restore-desktop-buffer): Rename arguments.
17383 2015-05-06  Glenn Morris  <rgm@gnu.org>
17385         * Makefile.in (change-history-commit): Add missing piece of previous.
17387         Avoid unnecessary bumping of Makefile.in's timestamp
17388         * Makefile.in (gen_origin): Move to gitlog-to-emacslog.
17389         (emacslog): New variable.
17390         (ChangeLog): Use $emacslog.  Don't pass $gen_origin.
17391         (unchanged-history-files): Use $emacslog rather than Makefile.in.
17392         (change-history-nocommit): Store hash in $emacslog.
17393         * build-aux/gitlog-to-emacslog (gen_origin): Move default here.
17394         * admin/update_autogen (changelog_files): Update for the above.
17396         * Makefile.in: Don't always insist on removing existing "ChangeLog".
17397         (CHANGELOG): New variable.
17398         (no-ChangeLog): Remove.
17399         (ChangeLog): Replace "no-ChangeLog"; pass output file to script.
17400         (change-history-nocommit): Use a temp file rather than insisting
17401         on deletion of any existing "ChangeLog".
17403         * build-aux/gitlog-to-emacslog: Allow specification of output.
17405         * admin/update_autogen: Add option to update ChangeLog.
17406         (usage): Mention -H.
17407         (changelog_flag, changelog_n, changelog_files): New variables.
17408         (main): Check for -H, and maybe run change-history-nocommit.
17410 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17412         * lisp/subr.el (delete-dups): Pre-size the hashtable.
17414         * lisp/emacs-lisp/cl.el (define-modify-macro): Make sure
17415         cl--arglist-args is defined (bug#20517).
17417 2015-05-06  Glenn Morris  <rgm@gnu.org>
17419         * Makefile.in (change-history-nocommit): New.
17421 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
17423         * lisp/cedet/pulse.el (pulse-momentary-unhighlight): Only cancel
17424         timer when it is non-nil
17425         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00223.html).
17427 2015-05-06  Glenn Morris  <rgm@gnu.org>
17429         Quieten CEDET compilation
17430         * lisp/cedet/semantic/db-el.el (semanticdb-elisp-sym->tag):
17431         Invert fboundp test to quieten on current Emacs.
17432         * lisp/cedet/ede/config.el (ede-shell-run-something)
17433         (semanticdb-file-table-object, semanticdb-needs-refresh-p)
17434         (semanticdb-refresh-table): Declare.
17435         (ede-preprocessor-map): Require semantic/db.
17437         Quieten cc-mode compilation
17438         * lisp/progmodes/cc-awk.el (c-forward-sws):
17439         * lisp/progmodes/cc-cmds.el (c-forward-subword, c-backward-subword):
17440         Declare.
17442 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
17444         * lisp/subr.el (delete-dups): Avoid nreverse.
17446 2015-05-06  Artur Malabarba  <bruce.connor.am@gmail.com>
17448         * lisp/subr.el (delete-dups): Make it destructive again.
17450 2015-05-06  Paul Eggert  <eggert@cs.ucla.edu>
17452         * doc/lispref/sequences.texi (Sequence Functions): Fix quoting.
17454 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17456         * lisp/emacs-lisp/testcover.el: Don't use edebug--read (bug#20487).
17457         * lisp/emacs-lisp/testcover.el: Use lexical-binding.
17458         (testcover--read): Rename from testcover-read.  Change calling
17459         convention.  Use edebug-read-and-maybe-wrap-form now that edebug-read
17460         is gone.
17461         (testcover-start): Use add-function.  Move edebug-all-defs binding to
17462         testcover--read.
17463         (testcover-this-defun): Tighten scope of edebug-all-defs binding.
17464         (testcover-mark): Remove unused var `item'.
17465         * src/lread.c (syms_of_lread): Default load-read-function to `read'.
17467 2015-05-06  Oleh Krehel  <ohwoeowho@gmail.com>
17469         * lisp/subr.el (delete-dups): When there are more than 100 candidates,
17470           use a hash table.  This can result in ~500 times speed-up for typical
17471           collections of size 5000, like that of `load-library'.
17473 2015-05-06  Stefan Monnier  <monnier@iro.umontreal.ca>
17475         CEDET: Avoid `oref' on classes in a few more cases
17476         * lisp/cedet/ede/generic.el (ede-find-target):
17477         * lisp/cedet/ede.el (ede-project-forms-menu): Avoid `oref' on classes.
17478         * lisp/cedet/semantic/bovine/gcc.el (semantic-gcc-setup): Remove unused
17479         var `prefix'.
17481         * lisp/cedet/semantic/symref/grep.el: Fix unused var warnings.
17482         (grepflags, greppattern): Declare.
17483         (semantic-symref-perform-search): Remove unused var `pat'.
17485         CEDET (srecode-compile-inserter): Avoid `oref' on classes
17486         * lisp/cedet/srecode/compile.el (srecode-compile-inserter):
17487         Avoid `oref' on classes (bug#20491).
17488         (srecode-compile-split-code): Remove unused var `key'.
17490 2015-05-06  Dmitry Gutov  <dgutov@yandex.ru>
17492         Clean up pulse.el a little
17493         * lisp/cedet/pulse.el (pulse): Remove.
17494         (pulse-momentary-timer): Save instead of the stop time.
17495         (pulse-momentary-highlight-overlay):
17496         Call pulse-momentary-unhighlight first thing.
17497         Treat pulse-momentary-overlay as a single value, not a list.
17498         Save the created timer.  Only pass the stop time to the timer.
17499         (pulse-tick): Update accordingly.
17500         (pulse-momentary-unhighlight): Treat pulse-momentary-overlay as a
17501         single value.  Cancel the timer.
17503 2015-05-06  Tassilo Horn  <tsdh@gnu.org>
17505         * lisp/textmodes/reftex-cite.el (reftex-format-bib-entry):
17506         Support the biblatex journaltitle field.
17508 2015-05-05  Glenn Morris  <rgm@gnu.org>
17510         Minor declare-function improvement
17511         * lisp/emacs-lisp/bytecomp.el
17512         (byte-compile-macroexpand-declare-function):
17513         Handle declarations after calls.  (Bug#20509)
17515         * lisp/progmodes/js.el (js--optimize-arglist): Remove declaration.
17517         * lisp/w32-fns.el (w32-shell-name): Silence compiler.
17519 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
17521         Pulse using a timer
17522         * lisp/cedet/pulse.el (pulse-momentary-stop-time): New variable.
17523         (pulse-momentary-highlight-overlay): Set up the timer instead of
17524         calling `pulse'
17525         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/).
17526         (pulse-tick): New function.
17527         (pulse-momentary-unhighlight): Cut off the stop time.
17528         (pulse-delay): Update the docstring WRT to not using sit-for.
17530         Add semantic/symref/grep file patterns for ruby-mode
17531         * lisp/cedet/semantic/symref/grep.el
17532         (semantic-symref-filepattern-alist): Add patterns for ruby-mode.
17533         Clarify the docstring.
17535         Don't require match
17536         * lisp/progmodes/xref.el (xref--read-identifier): Don't require
17537         match.  That doesn't work for every command, and some identifier
17538         completion tables are bound to be imperfect anyway.
17540 2015-05-05  Stefan Monnier  <monnier@iro.umontreal.ca>
17542         * lisp/cedet/semantic/grammar.el: Fix compiler warnings (bug#20505).
17543         (semantic-grammar--template-expand): New function.
17544         (semantic-grammar-header, semantic-grammar-footer): Use it.
17545         (semantic-grammar--lex-block-specs): Remove unused var `block-spec'.
17546         (semantic-grammar-file-regexp): Refine regexp.
17547         (semantic-grammar-eldoc-get-macro-docstring):
17548         Use elisp-get-fnsym-args-string when available.
17549         (semantic-idle-summary-current-symbol-info): Use new elisp-* names
17550         instead of the old eldoc-* names.
17551         * lisp/emacs-lisp/eldoc.el (eldoc-docstring-format-sym-doc): Move back
17552         from elisp-mode.el.  Tweak calling convention.
17553         * lisp/progmodes/elisp-mode.el (package-user-dir): Declare.
17554         (elisp-get-fnsym-args-string): Add `prefix' argument.  Rename from
17555         elisp--get-fnsym-args-string.
17556         (elisp--highlight-function-argument): Add `prefix' arg.
17557         (elisp-get-var-docstring): Rename from elisp--get-var-docstring.
17558         (elisp--docstring-format-sym-doc): Move back to eldoc.el.
17560 2015-05-05  Glenn Morris  <rgm@gnu.org>
17562         * lisp/help-fns.el (describe-function-1):
17563         Handle builtins with advertised calling conventions.  (Bug#20479)
17565 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
17567         Merge branch 'seq-let'
17569         Update `seq-let' documentation
17570         * doc/lispref/sequences.texi: Update the documentation of `seq-let'
17571         with the support of  `&rest'.
17573         Add support for &rest in `seq-let'
17574         * lisp/emacs-lisp/seq.el (seq--make-bindings): Add support for `&rest'
17575         in the argument list.
17576         * test/automated/seq-tests.el: Add a test for parsing and binding
17577         `&rest' in `seq-let'.
17579 2015-05-05  Pierre Lorenzon  <devel@pollock-nageoire.net>  (tiny change)
17581         * lisp/emacs-lisp/eieio-custom.el (eieio-object-value-get):
17582         Add missing increment (Bug#20467).
17583         (eieio-object-value-create): Adjust to new slots representation
17584         (Bug#20467).
17585         (eieio-object-value-create): Fix missed adjustment to new
17586         representation of slots metadata.
17588 2015-05-05  Nicolas Petton  <nicolas@petton.fr>
17590         * lisp/emacs-lisp/seq.el (seq--make-bindings): Improve the docstring.
17592 2015-05-05  Dmitry Gutov  <dgutov@yandex.ru>
17594         Work around "Attempt to modify read-only object"
17595         * lisp/progmodes/elisp-mode.el (elisp--xref-format): Extract from
17596         elisp--xref-find-definitions, to work around "Attempt to modify
17597         read-only object" error.
17599         Only skip some variables that have function counterparts
17600         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
17601         Only skip minor-mode-named variable if it's defined in a Lisp
17602         file, and it's in minor-mode-list (bug#20506).
17603         * test/automated/elisp-mode-tests.el
17604         (elisp-xref-finds-both-function-and-variable)
17605         (elisp-xref-finds-only-function-for-minor-mode): New tests.
17607 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17609         * lisp/progmodes/xref.el (xref--location-at-point): Revert the
17610         previous change.
17611         (xref--insert-xrefs): Buttonize the whole line, including the
17612         number at the beginning.
17614         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
17615         Make sure we're inside the let bindings.
17616         * test/automated/elisp-mode-tests.el
17617         (elisp-completes-functions-after-let-bindings): New test.
17619 2015-05-04  Glenn Morris  <rgm@gnu.org>
17621         * lisp/cedet/semantic/grammar.el (eldoc-function-argstring)
17622         (eldoc-docstring-format-sym-doc, eldoc-last-data-store)
17623         (eldoc-get-fnsym-args-string, eldoc-get-var-docstring):
17624         Remove outdated declarations.
17626         Replace instances of "(eval-when-compile (autoload ...))"
17627         * lisp/gnus/gnus-art.el (nneething-get-file-name):
17628         Declare rather than autoload.
17629         * lisp/gnus/gnus-async.el (gnus-html-prefetch-images):
17630         Remove pointless autoload.
17631         * lisp/gnus/gnus-sync.el (gnus-group-topic): Autoload at run-time.
17632         (gnus-topic-create-topic, gnus-topic-enter-dribble):
17633         Declare rather than autoload.
17634         * lisp/gnus/mm-archive.el (gnus-recursive-directory-files)
17635         (mailcap-extension-to-mime): Autoload at run-time.
17636         * lisp/gnus/mm-util.el (latin-unity-massage-name)
17637         (latin-unity-maybe-remap, latin-unity-representations-feasible-region)
17638         (latin-unity-representations-present-region):
17639         Declare rather than autoload.
17640         * lisp/gnus/mml-smime.el (epg-make-context)
17641         (epg-passphrase-callback-function): Autoload at run-time.
17642         (epg-context-set-signers, epg-context-result-for)
17643         (epg-new-signature-digest-algorithm)
17644         (epg-verify-result-to-string, epg-list-keys, epg-verify-string)
17645         (epg-sign-string, epg-encrypt-string)
17646         (epg-context-set-passphrase-callback, epg-sub-key-fingerprint)
17647         (epg-configuration, epg-expand-group, epa-select-keys):
17648         Declare rather than autoload.
17649         * lisp/gnus/nnir.el (nnimap-change-group, nnimap-make-thread-query):
17650         Autoload at run-time.
17651         (gnus-group-topic-name, nnimap-buffer, nnimap-command)
17652         (gnus-registry-get-id-key, gnus-registry-action):
17653         Declare rather than autoload.
17654         * lisp/gnus/nnmail.el (mail-send-and-exit): Autoload at run-time.
17655         * lisp/gnus/spam.el (spam-stat-buffer-change-to-non-spam)
17656         (spam-stat-buffer-change-to-spam, spam-stat-buffer-is-non-spam)
17657         (spam-stat-buffer-is-spam, spam-stat-load, spam-stat-save)
17658         (spam-stat-split-fancy): Remove pointless autoloads.
17659         * lisp/net/mairix.el: Load gnus-util when compiling.
17660         (gnus-group-read-ephemeral-group, gnus-summary-toggle-header)
17661         (message-field-value): Declare rather than autoload.
17662         (mairix-gnus-ephemeral-nndoc, mairix-gnus-fetch-field):
17663         Check gnus-alive-p is fbound.
17664         (vm-quit, vm-visit-folder, vm-select-folder-buffer)
17665         (vm-check-for-killed-summary, vm-error-if-folder-empty)
17666         (vm-get-header-contents, vm-select-marked-or-prefixed-messages):
17667         Declare rather than autoload.
17669         * lisp/gnus/mm-view.el (epg-decrypt-string): Autoload.
17671         * lisp/gnus/mml-smime.el (epg-key-sub-key-list)
17672         (epg-sub-key-capability, epg-sub-key-validity): Fix declarations.
17674         * lisp/progmodes/elisp-mode.el (xref-collect-references): Declare.
17676         * lisp/emacs-lisp/debug.el (help-xref-interned): Update declaration.
17678         * lisp/allout.el (epg-user-id-string, epg-key-user-id-list):
17679         * lisp/emacs-lisp/package.el (epg-signature-status):
17680         Fix declarations.
17682         * lisp/play/gametree.el (gametree-show-children-and-entry)
17683         (gametree-apply-layout, gametree-mouse-show-subtree)
17684         (gametree-mouse-hide-subtree): Replace obsolete outline aliases.
17686         * lisp/emacs-lisp/check-declare.el (check-declare-verify):
17687         Handle cl-defgeneric, cl-defmethod.
17689 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17691         * lisp/progmodes/elisp-mode.el (elisp--xref-find-definitions):
17692         Highlight both type and symbol name.
17694         Insert, highlight and align line numbers in xref output
17695         * lisp/progmodes/etags.el (xref-location-line): Specialize for
17696         xref-etags-location.
17697         * lisp/progmodes/xref.el (xref-location-line): New generic method.
17698         (xref-file-location): Add reader for the line slot.
17699         (xref--location-at-point): Skip to the `xref-location' property.
17700         (xref--collect-reference): Drop the line number from description.
17701         (xref--insert-xrefs): Insert, highlight and align line numbers.
17703 2015-05-04  Daniel Colascione  <dancol@dancol.org>
17705         * lisp/simple.el (save-mark-and-excursion--save)
17706         (save-mark-and-excursion--restore): Fix previous commit
17707         (255a011f0ecf004b31c59945b10154b10fac3af1).
17709 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17711         Don't pulse the indentation, or the newline
17712         * lisp/cedet/pulse.el (pulse-lighten-highlight)
17713         (pulse-reset-face): Fall back to the inherited background
17714         attribute in FACE.
17715         (pulse-momentary-highlight-region): Add autoload cookie.
17716         * lisp/progmodes/xref.el (xref--maybe-pulse): Don't highlight the
17717         indentation, or the newline, if the line's non-empty
17718         (http://lists.gnu.org/archive/html/emacs-devel/2015-05/msg00118.html).
17720 2015-05-04  Daniel Colascione  <dancol@dancol.org>
17722         Add `save-mark-and-excursion', which has the old
17723         `save-excursion' behavior
17724         * doc/lispref/positions.texi (Excursions):
17725         Document `save-mark-and-excursion'.
17726         * lisp/font-lock.el (font-lock-fontify-block):
17727         Use `save-mark-and-excursion' instead of `save-excursion',
17728         restoring Emacs 24 behavior.
17729         * lisp/simple.el (save-mark-and-excursion--save)
17730         (save-mark-and-excursion--restore): New functions.
17731         (save-mark-and-excursion): New user macro.
17732         * src/editfns.c (Fsave_excursion): Mention `save-mark-and-excursion'
17733         in `save-excursion' documentation.
17735 2015-05-04  Dmitry Gutov  <dgutov@yandex.ru>
17737         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
17738         Classify lone symbol inside let varlist as variable.
17739         * test/automated/elisp-mode-tests.el
17740         (completest-variables-in-let-bindings): New test.
17742         Add xref-pulse-on-jump
17743         * lisp/cedet/pulse.el (pulse-momentary-highlight-one-line):
17744         Add autoload cookie.
17745         * lisp/progmodes/xref.el (xref-pulse-on-jump): New option.
17746         (xref--maybe-pulse): New function.
17747         (xref-pop-marker-stack, xref--pop-to-location)
17748         (xref--display-position): Use it.
17749         (xref--location-at-point): Use back-to-indentation.
17751 2015-05-04  Stefan Monnier  <monnier@iro.umontreal.ca>
17753         lisp/org/org-{macs,list}.el: Fix lexical warnings
17754         * lisp/org/org-list.el (org-list-struct): Remove unused var `ind'.
17755         (org-list-get-next-item, org-list-get-prev-item)
17756         (org-list-get-children): Mark unused arg `struct'.
17757         (org-list-use-alpha-bul-p): Remove unused var `bul'.
17758         (org-toggle-checkbox): Mark unused var.
17759         (org-update-checkbox-count): Remove unused var `box-num'.
17760         (org-adapt-indentation): Declare.
17761         (org-list-parse-list): Declare var instead of adding a dummy duplicate.
17762         (org-list-send-list): Remove unused var `txt'.
17763         (org-list-to-latex, org-list-to-texinfo): Mark unused arg `params'.
17764         (org-list-to-subtree): Add prefix to dyn-bind var, and declare them.
17765         * lisp/org/org-macs.el: Use `declare'.
17766         (org-with-limited-levels): Declare dyn-bound vars.
17768 2015-05-04  Eli Zaretskii  <eliz@gnu.org>
17770         Fix minor issues with CEDET on MS-Windows
17771         * lisp/cedet/semantic/symref/idutils.el
17772         (semantic-symref-parse-tool-output-one-line): Fix the search
17773         regexp to match MS-Windows file names with drive letters.
17774         (Bug#19468)
17775         * lisp/cedet/semantic/symref/grep.el
17776         (semantic-symref-grep-use-template): Remove "--color=always" from
17777         Grep switches on MS-Windows.
17778         (semantic-symref-grep-shell): Use shell-file-name as the default
17779         value, so this works not only on Posix platforms.
17780         (semantic-symref-perform-search): Use shell-quote-argument instead
17781         of literal '..' for portable quoting of Grep command-line
17782         argument.  Use shell-command-switch instead of a literal "-c".
17783         * lisp/cedet/semantic/bovine/gcc.el
17784         (semantic-gcc-get-include-paths): Use file-name-absolute-p to test
17785         for an absolute file name in a portable way.
17787 2015-05-04  Artur Malabarba  <bruce.connor.am@gmail.com>
17789         * lisp/emacs-lisp/package.el: Remove `package--silence' variable.
17790         (package-import-keyring, package-refresh-contents)
17791         (package-compute-transaction, package--save-selected-packages)
17792         (package-install-from-archive, package-delete)
17793         (package-menu--perform-transaction): Use `inhibit-message' instead.
17794         (package--compile): Set `warning-minimum-level' to :error.
17796 2015-05-03  Stefan Monnier  <monnier@iro.umontreal.ca>
17798         * lisp/term/screen.el (xterm-screen-extra-capabilities): New custom.
17799         (terminal-init-screen): Use it (bug#20356).
17800         * lisp/term/xterm.el: Provide `term/xterm' instead of `xterm'.
17801         (xterm--extra-capabilities-type): New const.
17802         (xterm-extra-capabilities): Use it.
17803         (xterm--version-handler): Lower the pseudo-version for `screen'.
17805 2015-05-03  Dmitry Gutov  <dgutov@yandex.ru>
17807         * lisp/progmodes/xref.el (xref--insert-xrefs): Tweak the faces.
17808         Always insert a newline at the end (to avoid mouse-face background
17809         tail at the last line).
17811         elisp-completion-at-point: Prioritize being quoted over funpos
17812         * lisp/progmodes/elisp-mode.el (elisp-completion-at-point):
17813         Only consider function position when not inside quoted form
17814         (bug#20425).
17815         * test/automated/elisp-mode-tests.el: New file.
17817         Stop vc-print-log from jumping to the top
17818         * lisp/vc/vc.el (vc-print-log-internal): Pass nil
17819         GOTO-LOCATION-FUNC to vc-log-internal-common when WORKING-REVISION
17820         is not specified.
17821         (vc-incoming-outgoing-internal): Always pass nil.
17822         (vc-log-internal-common): When GOTO-LOCATION-FUNC is nil, don't
17823         call it, and don't set vc-sentinel-movepoint (bug#15322).
17824         (vc-print-root-log): Don't fetch the root working revision, nor
17825         pass it to vc-print-log-internal.
17827 2015-05-02  Michael Vehrs  <Michael.Burschik@gmx.de>
17829         Fix display of keyboard layouts for right-to-left scripts
17830         * lisp/international/quail.el (quail-insert-kbd-layout):
17831         Force left-to-right paragraph direction.
17833 2015-05-02  K. Handa  <handa@gnu.org>
17835         * src/cmds.c (internal_self_insert): When we insert spaces for
17836         padding, set point before the padding spaces, not after them.
17838 2015-05-02  Nicolas Petton  <nicolas@petton.fr>
17840         * lisp/emacs-lisp/seq.el (seq-p): New alias to `sequencep'.
17842 2015-05-02  Dmitry Gutov  <dgutov@yandex.ru>
17844         Fix etags-xref-find for references
17845         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references):
17846         Use `cl-mapcan'.
17847         * lisp/progmodes/etags.el (etags-xref-find): Ditto.  Prompt for
17848         directory if no tags tables are loaded (bug#19468).
17850 2015-05-02  Philipp Stephani  <phst@google.com>
17852         Update the options in whitespace-style defcustom
17853         * lisp/whitespace.el (whitespace-style): Use `set' instead of a
17854         `repeat' because the option is really set-like.  Add missing
17855         options.  Reorder options to match the order in the
17856         documentation.  (Bug#20346)
17858 2015-05-02  Eli Zaretskii  <eliz@gnu.org>
17860         Fix error diagnostics of c-macro-expand
17861         * lisp/progmodes/cmacexp.el (c-macro-expansion): Don't bail out
17862         too early if no start-marker string was found -- that generally
17863         means cpp exited abnormally, and we still want to show its error
17864         messages to the user.
17866         Don't require Texinfo 5.0 for Emacs documentation
17867         * doc/emacs/docstyle.texi: Use "@set txicodequoteundirected" and
17868         "@set txicodequotebacktick" instead of "@codequotebacktick on" and
17869         "@codequoteundirected on", respectively, to avoid requiring
17870         Texinfo 5.x for Emacs documentation.
17872 2015-05-01  Simen Heggestøyl  <simenheg@gmail.com>
17874         * lisp/files.el (pwd):
17875         When called with a prefix argument, insert the current default
17876         directory at point.
17878 2015-05-01  Stefan Monnier  <monnier@iro.umontreal.ca>
17880         * lisp/isearch.el (isearch-mode-map): Allow backspace remapping
17881         * lisp/isearch.el (isearch-mode-map): Don't inhibit
17882         function-key-map remapping for backspace (bug#20466).
17884 2015-05-01  Dmitry Gutov  <dgutov@yandex.ru>
17886         Implement xref-find-references in etags and elisp-mode
17887         * lisp/progmodes/elisp-mode.el (elisp--xref-find-references): New function.
17888         (elisp-xref-find): Use it.
17889         * lisp/progmodes/etags.el (etags-xref-find): Use `xref-collect-references'.
17890         * lisp/progmodes/xref.el (xref-collect-references):
17891         (xref--collect-reference): New functions.
17893 2015-05-01  Paul Eggert  <eggert@cs.ucla.edu>
17895         Prefer plain characters to Texinfo circumlocutions
17896         For example, prefer 'François' to 'Fran\c{c}ois', 'Fran\c cois',
17897         'Fran@,{c}ois' or 'Francois' (all of which were used!) in Texinfo sources.
17899         Fix single-quoting style in PDF manuals
17900         The PDF versions of the GNU manuals used curved single quotes to
17901         represent grave accent and apostrophe, which made it a pain to cut
17902         and paste code examples from them.  Fix the PDF versions to use
17903         grave accent and apostrophe for Lisp source code, keystrokes, etc.
17904         This change does not affect the info files, nor does it affect
17905         ordinary uses of curved single quotes in PDF.
17906         * doc/emacs/docstyle.texi: New file, which specifies treatment for
17907         grave accent and apostrophe, as well as the document encoding.
17908         * doc/emacs/emacs-xtra.texi, doc/emacs/emacs.texi:
17909         * doc/lispintro/emacs-lisp-intro.texi:
17910         * doc/lispref/back.texi, doc/lispref/book-spine.texi:
17911         * doc/lispref/elisp.texi, doc/lispref/lay-flat.texi:
17912         * doc/misc/ada-mode.texi, doc/misc/auth.texi:
17913         * doc/misc/autotype.texi, doc/misc/bovine.texi, doc/misc/calc.texi:
17914         * doc/misc/cc-mode.texi, doc/misc/cl.texi, doc/misc/dbus.texi:
17915         * doc/misc/dired-x.texi, doc/misc/ebrowse.texi, doc/misc/ede.texi:
17916         * doc/misc/ediff.texi, doc/misc/edt.texi, doc/misc/efaq-w32.texi:
17917         * doc/misc/efaq.texi, doc/misc/eieio.texi, doc/misc/emacs-gnutls.texi:
17918         * doc/misc/emacs-mime.texi, doc/misc/epa.texi, doc/misc/erc.texi:
17919         * doc/misc/ert.texi, doc/misc/eshell.texi, doc/misc/eudc.texi:
17920         * doc/misc/eww.texi, doc/misc/flymake.texi, doc/misc/forms.texi:
17921         * doc/misc/gnus-coding.texi, doc/misc/gnus-faq.texi:
17922         * doc/misc/gnus.texi, doc/misc/htmlfontify.texi:
17923         * doc/misc/idlwave.texi, doc/misc/ido.texi, doc/misc/info.texi:
17924         * doc/misc/mairix-el.texi, doc/misc/message.texi, doc/misc/mh-e.texi:
17925         * doc/misc/newsticker.texi, doc/misc/nxml-mode.texi:
17926         * doc/misc/octave-mode.texi, doc/misc/org.texi, doc/misc/pcl-cvs.texi:
17927         * doc/misc/pgg.texi, doc/misc/rcirc.texi, doc/misc/reftex.texi:
17928         * doc/misc/remember.texi, doc/misc/sasl.texi, doc/misc/sc.texi:
17929         * doc/misc/semantic.texi, doc/misc/ses.texi, doc/misc/sieve.texi:
17930         * doc/misc/smtpmail.texi, doc/misc/speedbar.texi:
17931         * doc/misc/srecode.texi, doc/misc/todo-mode.texi, doc/misc/tramp.texi:
17932         * doc/misc/url.texi, doc/misc/vhdl-mode.texi, doc/misc/vip.texi:
17933         * doc/misc/viper.texi, doc/misc/widget.texi, doc/misc/wisent.texi:
17934         * doc/misc/woman.texi:
17935         Use it instead of '@documentencoding UTF-8', to lessen the need for
17936         global changes like this in the future.
17937         * doc/emacs/Makefile.in (EMACS_XTRA):
17938         * doc/lispintro/Makefile.in (srcs):
17939         * doc/lispref/Makefile.in (srcs):
17940         Add dependency on docstyle.texi.
17941         * doc/misc/Makefile.in (style): New macro.
17942         (${buildinfodir}/%.info, %.dvi, %.pdf, %.html)
17943         (${buildinfodir}/ccmode.info, ${buildinfodir}/efaq%.info, gnus_deps):
17944         Use it.
17946 2015-05-01  Glenn Morris  <rgm@gnu.org>
17948         * test/automated/cl-lib-tests.el (cl-lib-adjoin-test): Fix it.
17950         * lisp/emacs-lisp/pcase.el (get-edebug-spec, edebug-match)
17951         (help-fns--signature): Declare.
17953         * lisp/emacs-lisp/pcase.el (pcase--make-docstring): Require help-fns.
17955 2015-05-01  Nicolas Petton  <nicolas@petton.fr>
17957         New macro seq-let, providing destructuring support to seq.el
17958         * lisp/emacs-lisp/seq.el (seq-let): New macro.  `seq-let' is similar
17959         to `cl-destructuring-bind' but works on all sequence types supported
17960         by `seq.el'.  Bump version number to 1.6.
17961         * test/automated/seq-tests.el: Add tests for seq-let.
17962         * doc/lispref/sequences.texi: Add documentation for seq-let.
17964 2015-05-01  Pontus Michael  <m.pontus@gmail.com>
17966         * lisp/simple.el (blink-matching-open): Better behavior in minibuffer.
17968 2015-05-01  Glenn Morris  <rgm@gnu.org>
17970         * lisp/emacs-lisp/ert.el (ert--special-operator-p): Fix previous.
17972 2015-05-01  Artur Malabarba  <bruce.connor.am@gmail.com>
17974         * lisp/emacs-lisp/bytecomp.el: Revert "Silence noninteractive compilations"
17975         This reverts commit 9a7ddde977378cb5276a81476ae458889c403267.
17976         This reverts commit 3c0ea587daf8b17960b90603a70e3ac4057d883d.
17977         With message: "* lisp/emacs-lisp/bytecomp.el: Use `inhibit-message'".
17978         (Bug#20445).
17980 2015-05-01  K. Handa  <handa@gnu.org>
17982         * lisp/international/mule-cmds.el (input-method-use-echo-area):
17983         Change :type to 'boolean.
17985 2015-05-01  Lars Magne Ingebrigtsen  <larsi@gnus.org>
17987         Start using proportional fonts in eww by default
17988         * lisp/net/shr.el (shr-use-fonts): Switch the default to t, since
17989         it seems to work well.
17991         Fix links in tables in shr
17992         * lisp/net/shr.el: Remove `shr-inhibit-decoration', because that
17993         makes (some) links in tables not work.
17995 2015-05-01  Jan D  <jan.h.d@swipnet.se>
17997         * lisp/term/ns-win.el (ns-get-cut-buffer-internal): Remove this alias.
17999 2015-04-30  Glenn Morris  <rgm@gnu.org>
18001         * lisp/emacs-lisp/ert.el (ert--special-operator-p):
18002         Update for 2015-02-08 change to indirect-function.
18004         * lisp/term/ns-win.el (ns-get-selection-internal):
18005         Remove declaration for function deleted 2014-10-21.
18007         * lisp/dom.el: Load subr-x when compiling, for when-let.
18009         Silence some compilation warnings
18010         * lisp/emacs-lisp/check-declare.el (compilation-forget-errors):
18011         * lisp/emulation/cua-base.el (delete-active-region):
18012         * lisp/net/net-utils.el (w32-get-console-output-codepage):
18013         * lisp/term/ns-win.el (ns-own-selection-internal)
18014         (ns-disown-selection-internal, ns-selection-owner-p)
18015         (ns-selection-exists-p, ns-get-selection):
18016         Declare for compiler.
18018         Function declaration updates prompted by 'make check-declare'
18019         * lisp/emacs-lisp/package.el (lm-homepage):
18020         * lisp/gnus/gnus-util.el (iswitchb-read-buffer):
18021         * lisp/gnus/mm-decode.el (libxml-parse-html-region):
18022         * lisp/gnus/mml.el (libxml-parse-html-region):
18023         * lisp/gnus/nnrss.el (libxml-parse-html-region):
18024         * lisp/net/eww.el (libxml-parse-html-region):
18025         * lisp/net/shr.el (libxml-parse-html-region):
18026         * lisp/vc/vc-bzr.el (vc-annotate-convert-time):
18027         * lisp/vc/vc-cvs.el (vc-annotate-convert-time):
18028         * lisp/vc/vc-git.el (vc-annotate-convert-time):
18029         * lisp/vc/vc-hg.el (vc-annotate-convert-time):
18030         * lisp/vc/vc-mtn.el (vc-annotate-convert-time):
18031         * lisp/vc/vc-rcs.el (vc-annotate-convert-time):
18032         Update declaration.
18034         Remove compatibility code for 20-year old function renaming
18035         * lisp/progmodes/idlw-shell.el (idlwave-shell-comint-filter):
18036         Make it an obsolete alias.
18037         (idlwave-shell-filter): Change all uses to comint-output-filter.
18039 2015-04-30  Tassilo Horn  <tsdh@gnu.org>
18041         Add ace-window face config
18042         * etc/themes/tsdh-light-theme.el (tsdh-light): Add ace-window face
18043         configuration.
18045 2015-04-30  Paul Eggert  <eggert@cs.ucla.edu>
18047         Unclutter 'make doc' output a bit
18048         * Makefile.in ($(DOCS), $(INSTALL_DOC), $(UNINSTALL_DOC)):
18049         Use make subst rather than sh IFS to split target string apart.
18050         This makes 'make' output easier to follow.
18052         Merge from gnulib
18053         * doc/misc/texinfo.tex: Update from gnulib.
18055 2015-04-30  Artur Malabarba  <bruce.connor.am@gmail.com>
18057         * lisp/emacs-lisp/package.el: Some speed optimizations on menu refresh.
18058         (package-menu--print-info): Obsolete.
18059         (package-menu--print-info-simple): New function.
18060         (package-menu--refresh): Use it, simplify code, and improve
18061         performance.
18062         * lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry):
18063         Tiny performance improvement.
18065         * lisp/emacs-lisp/package.el (package--message): inhibit-message.
18067 2015-04-29  Paul Eggert  <eggert@cs.ucla.edu>
18069         Omit -Wstrict-overflow workaround in GCC 5
18070         * src/process.c: Remove workaround for GCC -Wstrict-overflow bug
18071         if it's GCC 5 or later, as the bug appears to be fixed in GCC 5.1.
18073         Merge from gnulib
18074         This incorporates:
18075         2015-04-29 extern-inline: no need for workaround in GCC 5.1
18076         2015-04-26 file-has-acl: port to CentOS 6
18077         * m4/acl.m4, m4/extern-inline.m4: Update from gnulib.
18079 2015-04-29  Helmut Eller  <eller.helmut@gmail.com>
18081         Set next-error-* in xref--xref-buffer-mode
18082         * lisp/progmodes/xref.el (xref--xref-buffer-mode):
18083         Set `next-error-function' and `next-error-last-buffer'.
18084         (xref--next-error-function): New function.
18085         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01311.html)
18087 2015-04-29  Fabián Ezequiel Gallina  <fgallina@gnu.org>
18089         python.el: Fix warnings on looking-back calls missing LIMIT
18090         * lisp/progmodes/python.el (python-shell-accept-process-output):
18091         Pass LIMIT arg to looking-back.
18093 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
18095         * lisp/emacs-lisp/package.el: Use pushnew for downloads in progress.
18096         (package--download-and-read-archives): Use pushnew instead of
18097         append.  If something terrible happened during a previous
18098         download, simply refreshing should now make things work again.
18100 2015-04-29  Dmitry Gutov  <dgutov@yandex.ru>
18102         Introduce etags-xref-find-definitions-tag-order
18103         * lisp/progmodes/etags.el (etags-xref-find-definitions-tag-order):
18104         New variable.
18105         (etags--xref-find-definitions): Use it (bug#19468).
18107 2015-04-29  Eli Zaretskii  <eliz@gnu.org>
18109         PATH- and completion-related fixes in Eshell on MS-Windows
18110         * lisp/eshell/esh-ext.el (eshell-search-path): When running on
18111         MS-Windows, prepend "." to list of directories produced from PATH,
18112         as Windows always implicitly searches the current directory first.
18113         (eshell-force-execution): Make it have a non-nil default value on
18114         MS-Windows and MS-DOS.
18115         * lisp/eshell/em-cmpl.el (eshell-complete-commands-list): If
18116         eshell-force-execution is non-nil, complete on readable files and
18117         directories, not only executables.  When running on MS-Windows,
18118         prepend "." to list of directories produced from PATH, as Windows
18119         always implicitly searches the current directory first.
18121 2015-04-29  Sam Steingold  <sds@gnu.org>
18123         Bury RCIRC buffers when there is no activity
18124         * lisp/net/rcirc.el (rcirc-non-irc-buffer): Remove.
18125         (rcirc-bury-buffers): New function.
18126         (rcirc-next-active-buffer): When there is no new activity, use
18127         `rcirc-bury-buffers' to hide all RCIRC buffers.
18129 2015-04-29  Krzysztof Jurewicz  <krzysztof.jurewicz@gmail.com>  (tiny change)
18131         Fix DBUS query result parsing for secrets-search-items
18132         * lisp/net/secrets.el (secrets-search-items): Fix DBUS query result
18133         parsing.  The function assumed that return value of the
18134         SearchItems method called on a collection is a list of two lists,
18135         however this is true only when no collection is specified.  GNOME
18136         had used to incorrectly return a list of two lists in both cases,
18137         but this was already fixed:
18138         https://bugzilla.gnome.org/show_bug.cgi?id=695115 .  Also fix an
18139         incorrect information in the secrets-search-items’ docstring.
18140         (Bug#20449)
18142 2015-04-29  Artur Malabarba  <bruce.connor.am@gmail.com>
18144         * lisp/emacs-lisp/bytecomp.el (byte-compile--message):
18145         Use `inhibit-message' instead of hiding the previous message
18146         with (message nil).
18148 2015-04-29  Oleh Krehel  <ohwoeowho@gmail.com>
18150         Remove the deprecated INTERNAL_FIELD macro by expanding it
18151         * src/lisp.h (INTERNAL_FIELD): Remove.
18152         (DEFVAR_KBOARD): Modify accordingly.
18153         * src/alloc.c, src/buffer.c, src/buffer.h, src/category.c:
18154         * src/keyboard.c, src/keyboard.h, src/syntax.c: Adjust users.
18155         * src/buffer.c (compact_buffer): Use BVAR.
18157 2015-04-29  Glenn Morris  <rgm@gnu.org>
18159         Replace an obsolete function alias
18160         * lisp/isearch.el (isearch-yank-x-selection):
18161         * lisp/mouse-copy.el (mouse-drag-secondary-pasting)
18162         (mouse-drag-secondary-moving):
18163         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
18164         Replace obsolete alias x-get-selection with gui-get-selection.
18166 2015-04-29  Stefan Monnier  <monnier@iro.umontreal.ca>
18168         * lisp/mail/rmailsum.el: Use lexical-binding.
18170 2015-04-29  Glenn Morris  <rgm@gnu.org>
18172         * test/automated/package-test.el (package-test-update-archives-async):
18173         Skip test on hydra.nixos.org.
18175 2015-04-28  Glenn Morris  <rgm@gnu.org>
18177         * lisp/foldout.el: Update for 2015-01-30 outline.el changes.
18178         (foldout-zoom-subtree, foldout-exit-fold, foldout-mouse-show)
18179         (foldout-mouse-hide-or-exit): Use new names for outline functions.
18181         * lisp/cedet/semantic/bovine/c.el (semantic-c-do-lex-if):
18182         Update for 2014-06-26 hideif.el change.
18184         * lisp/mail/rmailsum.el: Fix search for encoded subjects.  (Bug#19088)
18185         (rmail--decode-and-apply): New function.
18186         (rmail-message-regexp-p-1, rmail-message-subject-p): Use it.
18188         * lisp/mail/rmail.el (rmail-highlighted-headers): Fix :type.
18190 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18192         * lisp/emacs-lisp/package.el: Fix priority-hiding corner case
18193         (package-menu--refresh): Delegate obsolete-hiding to
18194         `package--remove-hidden'.
18195         (package--remove-hidden): Disregard high-priority package if it is
18196         older than the installed one.
18198 2015-04-28  Paul Eggert  <eggert@cs.ucla.edu>
18200         Update source file encoding list
18201         Update admin/notes/unicode, along with coding system cookies in
18202         other files, so that the two match each other better.
18203         * admin/notes/unicode: lisp/language/ethio-util.el and
18204         lisp/language/ethiopic.el also use utf-8-emacs.
18205         * admin/notes/hydra, doc/misc/dbus.texi, doc/misc/org.texi:
18206         * doc/misc/remember.texi, etc/refcards/cs-dired-ref.tex:
18207         * etc/refcards/cs-refcard.tex, etc/refcards/cs-survival.tex:
18208         * etc/refcards/sk-dired-ref.tex, etc/refcards/sk-refcard.tex:
18209         * etc/refcards/sk-survival.tex:
18210         Add "coding: utf-8" so that this file is not mishandled in a
18211         Latin-1 or Big-5 locale.
18212         * lisp/international/robin.el, lisp/org/ox-ascii.el:
18213         Specify utf-8, not utf-8-emacs, as these are plain UTF-8 files.
18214         * lisp/language/ethio-util.el: Fix trailer.
18216 2015-04-28  Eli Zaretskii  <eliz@gnu.org>
18218         Fix synchronous invocation of Ispell
18219         * lisp/textmodes/ispell.el (ispell-init-process): Assign a non-nil
18220         value to ispell-process-directory before calling ispell-init-process.
18221         Don't call set-process-coding-system if ispell-async-processp is nil.
18222         (Bug#20448)
18224 2015-04-28  Artur Malabarba  <bruce.connor.am@gmail.com>
18226         * lisp/emacs-lisp/package.el: Skip space and comments in init file
18227         (package--ensure-init-file): Insert snippet at first
18228         non-whitespace non-comments line.  Respects local-vars at the top
18229         of the file.
18231 2015-04-28  Glenn Morris  <rgm@gnu.org>
18233         * lisp/mail/rmail.el (rmail-copy-headers):
18234         Handle rmail-nonignored-headers being nil.  (Bug#18878)
18236         * lisp/subr.el (delay-mode-hooks): Fix doc typo.
18238         * lisp/vc/vc-bzr.el (vc-bzr-after-dir-status):
18239         Don't get confused by a bzrlib version mismatch warning.
18241 2015-04-27  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18243         Change default location of EUDC options file
18244         * etc/NEWS: Document change to EUDC options file's default location.
18245         * lisp/net/eudc-vars.el (eudc-options-file): Use
18246         `locate-user-emacs-file' to change default options file location.
18248 2015-04-27  Glenn Morris  <rgm@gnu.org>
18250         * test/automated/package-test.el (package-test-update-archives-async):
18251         Try to handle the test server script dying.
18253 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18255         * lisp/saveplace.el (save-place-mode): New minor mode.
18256         (save-place): Redefine as an obsolete alias.
18258         * lisp/midnight.el: Make it a minor mode.  Allow predicates.
18259         * lisp/midnight.el: Use lexical-binding.
18260         (midnight-mode): Make it a proper minor mode.
18261         (midnight-buffer-display-time): Make arg non-optional.
18262         (midnight-find): Remove.
18263         (clean-buffer-list-kill-never-regexps)
18264         (clean-buffer-list-kill-regexps): Tweak type for new function choice.
18265         (clean-buffer-list-delay): Allow clean-buffer-list-kill-regexps to
18266         contain functions.
18267         (clean-buffer-list): Use cl-find.
18268         Allow clean-buffer-list-kill-never-regexps to contain functions.
18270 2015-04-27  Nicolas Petton  <nicolas@petton.fr>
18272         Bump version of seq.el to 1.5
18273         * lisp/emacs-lisp/seq.el (seq-doseq): Remove undocumented return value
18274         from seq-doseq.  Bump version number of seq.el.
18276 2015-04-27  Glenn Morris  <rgm@gnu.org>
18278         * lisp/mail/rmail.el (rmail-reply):
18279         Decode subject before matching "Re:" prefix.  (Bug#20396)
18281 2015-04-27  Artur Malabarba  <bruce.connor.am@gmail.com>
18283         * lisp/emacs-lisp/package.el: Small improvements
18284         (package--with-work-buffer-async): More informative error.
18285         (package-install-user-selected-packages): Rename to
18286         `package-install-selected-packages'.
18288 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18290         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last
18291         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Fix last change.
18292         (eieio--class-make): Remove leftover `tag'.
18294 2015-04-27  Glenn Morris  <rgm@gnu.org>
18296         * lisp/gnus/message.el (gnus-extract-address-components):
18297         Remove bogus declaration that was masking previous problem.
18299 2015-04-27  Nicolas Graner  <nicolas.graner@u-psud.fr>  (tiny change)
18301         * lisp/gnus/message.el (message-insert-formatted-citation-line):
18302         Fix typo.  (Bug#20318)
18304 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18306         * lisp/emacs-lisp/eieio-core.el (eieio-defclass-internal): Reuse oldc.
18308         * lisp/textmodes/reftex-toc.el: Improve multi-frame behavior
18309         * lisp/textmodes/reftex-toc.el (reftex-toc-revert): Avoid displaying
18310         the buffer in yet another frame.
18311         (reftex-toc-visit-location): Make sure toc-window has focus at the end
18312         when `final' is nil.
18313         (reftex--rebuilding-toc): Defvar to avoid `boundp' and
18314         silence warnings.  Use `--' to clarify that it's internal.
18315         (reftex-toc-next, reftex-toc-previous, reftex-toc-demote)
18316         (reftex-toc-promote): Clarify unused argument.
18317         (reftex--pro-or-de, reftex--start-line, reftex--mark-line):
18318         Add `reftex--' prefix.  Fix all users.
18319         (reftex-toc-promote-prepare): Use _ for dummy variable.
18320         (reftex-toc-restore-region): Rename `m.
18322 2015-04-27  Eli Zaretskii  <eliz@gnu.org>
18324         Fix a typo in bibtex.el
18325         * lisp/textmodes/bibtex.el (bibtex-insert-kill): Fix a typo from
18326         last change.  (Bug#20429)
18328         Fix redisplay of frame after loading new fonts
18329         * src/xdisp.c (redisplay_internal): When retrying redisplay of
18330         a frame because new fonts were loaded, disable all redisplay
18331         optimizations on that frame by calling SET_FRAME_GARBAGED.
18332         (Bug#20410)
18334 2015-04-27  Stefan Monnier  <monnier@iro.umontreal.ca>
18336         * lisp/info.el (Info-menu): Properly provide the `default'
18337         (Bug#20391)
18339         * lisp/progmodes/elisp-mode.el (elisp--get-fnsym-args-string):
18340         Catch errors from documentation (bug#20418).
18341         (emacs-lisp-mode-abbrev-table): Remove redundant defvar.
18343 2015-04-26  Stefan Monnier  <monnier@iro.umontreal.ca>
18345         * lisp/emacs-lisp/package.el: Move variables to silence byte-compiler.
18346         Remove redundant ":group 'package".
18348 2015-04-26  Eli Zaretskii  <eliz@gnu.org>
18350         Fix a typo in rmail.el
18351         * lisp/mail/rmail.el (rmail-ensure-blank-line): Fix a typo in the
18352         last commit.  (Bug#20429)
18354 2015-04-26  Dmitry Gutov  <dgutov@yandex.ru>
18356         Introduce xref-prompt-for-identifier
18357         * lisp/progmodes/xref.el (xref-prompt-for-identifier): New option.
18358         (xref--read-identifier): Use it
18359         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01205.html).
18361 2015-04-26  João Távora  <joaotavora@gmail.com>
18363         `tex-insert-quote' after single `'' opens quotes instead of closing
18364         Without this, it's very hard to precede double quotes with the
18365         apostrophe character, i.e. insert the sequence '``
18366         (quote-backquote-backquote), commonly useful in portuguese, for
18367         instance.
18368         * lisp/textmodes/tex-mode.el (tex-insert-quote): Add ?' to the list of
18369         preceding chars making `tex-insert-quote' be in the "opening" context.
18371 2015-04-25  Dmitry Gutov  <dgutov@yandex.ru>
18373         Pass `id' to `completing-read' as def instead of initial input
18374         * lisp/progmodes/xref.el (xref--read-identifier): Pass `id' to
18375         `completing-read' as the default value instead of initial input
18376         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg01182.html).
18378 2015-04-25  Paul Eggert  <eggert@cs.ucla.edu>
18380         Don't freeze with unreadable processes
18381         Don't freeze if an exiting process can't be read from.  (Bug#19860).
18382         This fixes a bug I introduced in
18383         2014-07-08T07:24:07Z@eggert@cs.ucla.edu
18384         "* process.c: Add sanity checks for file descriptors."
18385         Dmitry Gutov did most of the legwork in finding the problem.
18386         * src/process.c (wait_reading_process_output):
18387         Treat non-running processes that can't be read from
18388         the same as other non-running processes.
18390 2015-04-25  Alan Mackenzie  <acm@muc.de>
18392         Fix change from 2015-04-22 "On C-y, stop some text property entries ..."
18393         * lisp/subr.el (remove-yank-excluded-properties): Put
18394         `with-silent-modifications' around only the last three lines of code.
18396 2015-04-25  Artur Malabarba  <bruce.connor.am@gmail.com>
18398         * lisp/emacs-lisp/package.el (package-all-keywords): Don't cache
18399         (package--all-keywords): Deleted variable.
18401         * etc/NEWS: Document package-hiding functionality.
18403 2015-04-25  Eli Zaretskii  <eliz@gnu.org>
18405         * lisp/window.el (recenter-last-op): Doc fix.  (Bug#20419)
18407         Clarify the doc string of 'replace-regexp-in-string'
18408         * lisp/subr.el (replace-regexp-in-string): Doc fix.  (Bug#20395)
18410         Improve doc string of 'insert-buffer-substring'
18411         * src/editfns.c (Finsert_buffer_substring): Doc fix.  (Bug#20421)
18413         MS-Windows followup for the recent gnulib update
18414         * nt/gnulib.mk (libgnu_a_SOURCES): Replace file-has-acl.c with
18415         acl-internal.c.
18417 2015-04-24  Paul Eggert  <eggert@cs.ucla.edu>
18419         Spelling fixes
18421         Merge from gnulib
18422         This incorporates:
18423         2015-04-24 file-has-acl: new module, split from acl
18424         2015-04-24 manywarnings: add GCC 5.1 warnings
18425         2015-04-21 lstat: fix cross-compilation 'ln -s' problem
18426         2015-04-15 qacl: Simplify HP-UX acl_nontrivial check
18427         2015-04-15 acl: On Linux, check for acls without libacl
18428         2015-04-14 tempname: avoid unused parameter warnings (trivial)
18429         * lib/acl-internal.c: New file, from gnulib.
18430         * lib/file-has-acl.c: Remove; no longer imported from gnulib.
18431         * lib/acl-internal.h, lib/gnulib.mk, lib/qcopy-acl.c, lib/tempname.c:
18432         * m4/acl.m4, m4/gnulib-comp.m4, m4/lstat.m4, m4/manywarnings.m4:
18433         Update from gnulib.
18435         Port --enable-gcc-warnings to GCC 5.1 x86-64
18436         * lib-src/ebrowse.c (dump_sym):
18437         * lib-src/hexl.c (main):
18438         * src/ccl.c (ccl_driver):
18439         * src/character.c (string_escape_byte8):
18440         * src/dbusbind.c (xd_retrieve_arg, xd_add_watch):
18441         * src/gnutls.c (Fgnutls_boot):
18442         * src/gtkutil.c (xg_check_special_colors):
18443         * src/image.c (x_build_heuristic_mask):
18444         * src/print.c (safe_debug_print, print_object):
18445         * src/term.c (produce_glyphless_glyph):
18446         * src/xdisp.c (get_next_display_element)
18447         (produce_glyphless_glyph):
18448         * src/xterm.c (x_draw_glyphless_glyph_string_foreground):
18449         Don't use a signed format to print an unsigned integer, or vice
18450         versa.  GCC 5.1's new -Wformat-signedness option warns about this.
18451         * src/image.c (png_load_body, jpeg_load_body):
18452         Silence a bogus setjump diagnostic from GCC 5.1 (GCC bug 54561).
18454 2015-04-24  Tassilo Horn  <tsdh@gnu.org>
18456         Add new faces to tsdh-light-theme
18457         * etc/themes/tsdh-light-theme.el (tsdh-light): New face
18458         definitions for Info-quoted, ace-jump-face-foreground,
18459         hl-paren-face, show-paren-match, and show-paren-mismatch.
18461 2015-04-24  Nicolas Petton  <nicolas@petton.fr>
18463         * lisp/emacs-lisp/seq.el (seq-doseq): Fix the macro.
18465 2015-04-24  Glenn Morris  <rgm@gnu.org>
18467         * build-aux/gitlog-to-emacslog:
18468         Use raw log format rather than wrapped one.
18470 2015-04-24  Stefan Monnier  <monnier@iro.umontreal.ca>
18472         * lisp/emacs-lisp/seq.el (seq-doseq): Tighten the code.
18473         (seq-doseq): Fix out-of-scope binding.
18474         Don't call `seq-length at every iteration.
18475         Reduce `if's from 3 to 2 per iteration.
18476         (emacs-lisp-mode-hook): Don't tweak in Emacs≥25.
18478 2015-04-24  Glenn Morris  <rgm@gnu.org>
18480         * lisp/textmodes/text-mode.el (text-mode-hook):
18481         Move text-mode-hook-identify to default.
18483         * lisp/mouse.el (minor-mode-menu-from-indicator):
18484         Handle non-function members of minor-mode-map-alist.  (Bug#20201)
18486         * lisp/help-fns.el (describe-function): More type checking.
18487         (describe-function-1): Handle changed symbol-function.  (Bug#20201)
18489         * build-aux/gitlog-to-emacslog: Convert "Fixes:" to "(Bug#)".
18490         (Bug#20325)
18492 2015-04-24  Andreas Schwab  <schwab@linux-m68k.org>
18494         shr: strip leading whitespace when expanding URLs
18495         * lisp/net/shr.el (shr-expand-url): Strip leading whitespace from URL.
18497 2015-04-24  Eli Zaretskii  <eliz@gnu.org>
18499         Clarify "co-authored" some more
18501         * CONTRIBUTE: Clarify "co-authored-by".  (Bug#20400)
18503         Clarify doc strings of functions that search for properties
18504         * src/textprop.c (Fnext_char_property_change)
18505         (Fprevious_char_property_change)
18506         (Fnext_single_char_property_change)
18507         (Fprevious_single_char_property_change, Fnext_property_change)
18508         (Fnext_single_property_change, Fprevious_property_change)
18509         (Fprevious_single_property_change): Clarify doc strings wrt return
18510         value and the optional LIMIT argument.  (Bug#20411)
18512 2015-04-24  Glenn Morris  <rgm@gnu.org>
18514         * test/automated/message-mode-tests.el (message-mode-propertize):
18515         Handle non-writable HOME; eg on hydra.nixos.org.
18517 2015-04-23  Eli Zaretskii  <eliz@gnu.org>
18519         Avoid starting threads by w32-shell-execute
18520         * src/w32fns.c (Fw32_shell_execute): Convert "file:///" URLs into
18521         local file names, before invoking ShellExecute.  (Bug#20220)
18523 2015-04-23  Martin Rudalics  <rudalics@gmx.at>
18525         Fix following doc-links in `widget-documentation-link-action'
18526         * lisp/wid-edit.el (widget-documentation-link-action): Make
18527         following doc-links less simplistic (Bug#20398).
18529 2015-04-22  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18531         Improve EUDC manual
18532         * doc/misc/eudc.texi (Troubleshooting):
18533         New LDAP troubleshooting subsection.
18535 2015-04-22  Paul Eggert  <eggert@cs.ucla.edu>
18537         Omit needless "\ " after multibyte then newline
18538         * src/print.c: Include <c-ctype.h>, for c_isxdigit.
18539         (print_object): When print-escape-multibyte is non-nil and a
18540         multibyte character is followed by a newline or formfeed, followed
18541         by a hex digit, don't output a needless "\ " before the hex digit.
18542         * test/automated/print-tests.el (print-hex-backslash): New test.
18544 2015-04-22  Oleh Krehel  <ohwoeowho@gmail.com>
18546         Add a new `inhibit-message' variable
18547         * src/xdisp.c (syms_of_xdisp): Define a boolean `inhibit_message'.
18548         (message3): Don't call `message3_nolog' (i.e. use the Echo Area) when
18549         `inhibit_message' is non-zero.
18550         * etc/NEWS: Add an entry.
18551         * doc/lispref/display.texi: Add an entry for `inhibit-message',
18552         mention it in `message'.
18554 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
18556         Fix last fix in `display-buffer-record-window'.
18557         * lisp/window.el (display-buffer-record-window): Fix last fix.
18559 2015-04-22  Eli Zaretskii  <eliz@gnu.org>
18561         Minor edits in CONTRIBUTE
18562         * CONTRIBUTE: Rearrange instructions about log messages.
18563         Use "Git" capitalized all over.
18564         Use 2 spaces between sentences.
18566 2015-04-22  Artur Malabarba  <bruce.connor.am@gmail.com>
18568         * lisp/files.el (basic-save-buffer): Fix argument.
18570         * lisp/cus-edit.el (custom-file): Consider init-file-had-error.
18571         In case `(and (null custom-file) init-file-had-error)' do the same
18572         thing we'd do if `(null user-init-file)', which is to either error out
18573         or return nil.  This is in line with `custom-save-all' which would
18574         throw an error in that situation.  (Bug#20355)
18576         * lisp/emacs-lisp/package.el: Hide lower-priority packages in menu.
18577         (package-menu-hide-low-priority): New variable, see its doc.
18578         (package-archive-priorities): Update doc.
18579         (package-desc-priority): New function.
18580         (package-desc-priority-version): Use it.
18581         (package--remove-hidden): New function.
18582         (package-menu--refresh): Use it.
18584         * lisp/emacs-lisp/package.el: Implement displaying obsolete packages.
18585         (package-menu--hide-obsolete): New variable.
18586         (package--remove-hidden): Use it.
18587         (package-menu-hide-obsolete): New interactive function to toggle
18588         the variable.
18589         (package--quick-help-keys): Document it.
18590         (package-menu-async): Add :version tag.
18591         (package-menu-mode-map): Bind package-menu-hide-obsolete.
18592         (package-desc-status): Indicate non-installed obsolete packages as
18593         avail-obso.
18594         (package-menu-mark-install): Allow installation of avail-obso.
18595         (package-menu--status-predicate): Sort avail-obso with available.
18597 2015-04-22  Alan Mackenzie  <acm@muc.de>
18599         On C-y, stop some text property entries being written into buffer-undo-list
18600         * lisp/subr.el (remove-yank-excluded-properties): Enclose the code in
18601         `with-silent-modifications'.
18603 2015-04-22  Martin Rudalics  <rudalics@gmx.at>
18605         In display-buffer-record-window record selected window if necessary
18606         * lisp/window.el (display-buffer-record-window): Store selected window
18607         if it differs from 3rd element of 'quit-restore' parameter (Bug#20353).
18609 2015-04-22  Tassilo Horn  <tsdh@gnu.org>
18611         Fix reftex-citation bug
18612         * lisp/textmodes/reftex-cite.el (reftex-extract-bib-entries):
18613         Fix `wrong-type-argument stringp nil' error that occurs when AUCTeX
18614         integration is enabled and there are no citations in the document
18615         so far.
18617 2015-04-21  Dmitry Gutov  <dgutov@yandex.ru>
18619         Add or reset based on the presence of MERGE_HEAD
18620         * lisp/vc/vc-git.el (vc-git-find-file-hook): Add
18621         `vc-git-resolve-when-done' to `after-save-hook' in either case.
18622         (vc-git-conflicted-files): Add a TODO.
18623         (vc-git-resolve-when-done): Depending on the presence of
18624         MERGE_HEAD, either update the resolved file in the index, or
18625         remove it from there.  (Bug#20292)
18627 2015-04-21  Glenn Morris  <rgm@gnu.org>
18629         * lisp/custom.el (custom-declare-group): No need to purecopy
18630         custom-current-group-alist members following recent change to set
18631         it to nil before dumping.
18633         * build-aux/gitlog-to-emacslog: Get footer from ChangeLog.2.
18634         (Bug#20399)
18636 2015-04-21  Daniel Colascione  <dancol@dancol.org>
18638         Unbreak no-op buffer save message
18639         * lisp/files.el (basic-save-buffer): Accept called-interactively as
18640         an argument instead of directly invoking called-interactively-p,
18641         which will always yield nil in that context.
18643 2015-04-21  Alan Mackenzie  <acm@muc.de>
18645         CC Mode: Do nothing in before/after-change-functions for text
18646         property changes
18647         Fixes bug#20266.
18648         * lisp/progmodes/cc-mode.el (c-basic-common-init): Make
18649         yank-handled-properties buffer local, and remove 'category from it.
18650         (c-called-from-text-property-change-p): New function.
18651         (c-before-change): Don't do anything if a call of the new function
18652         returns non-nil.
18653         (c-after-change): Don't do much if a call of the new function returns
18654         non-nil.
18655         (c-extend-after-change-region): Put changes to text property 'fontified
18656         inside c-save-buffer-state.
18658 2015-04-20  Stefan Monnier  <monnier@iro.umontreal.ca>
18660         Fix byte-compiler warnings about looking-back
18661         * lisp/vc/log-view.el (log-view-end-of-defun-1):
18662         * lisp/textmodes/tex-mode.el (latex-forward-sexp-1):
18663         * lisp/textmodes/reftex-ref.el (reftex-goto-label):
18664         * lisp/textmodes/bibtex.el (bibtex-insert-kill):
18665         * lisp/progmodes/sh-script.el (sh--maybe-here-document):
18666         * lisp/progmodes/ruby-mode.el (ruby-end-of-defun):
18667         * lisp/progmodes/ada-mode.el (ada-in-numeric-literal-p):
18668         * lisp/org/org.el (org-insert-heading, org-sort-entries):
18669         * lisp/org/org-mouse.el (org-mouse-end-headline)
18670         (org-mouse-context-menu):
18671         * lisp/org/org-clock.el (org-clock-cancel):
18672         * lisp/man.el (Man-default-man-entry):
18673         * lisp/mail/rmail.el (rmail-get-new-mail, rmail-insert-inbox-text)
18674         (rmail-ensure-blank-line):
18675         * lisp/mail/footnote.el (Footnote-delete-footnote):
18676         * lisp/mail/emacsbug.el (report-emacs-bug):
18677         * lisp/info.el (Info-follow-reference, Info-fontify-node):
18678         * lisp/info-look.el (info-lookup-guess-custom-symbol):
18679         * lisp/help-fns.el (help-fns--key-bindings):
18680         * lisp/files.el (hack-local-variables):
18681         * lisp/emulation/viper-ex.el (viper-get-ex-token, ex-cmd-complete)
18682         (viper-get-ex-pat, ex-expand-filsyms, viper-get-ex-file)
18683         (viper-complete-filename-or-exit):
18684         * lisp/emulation/viper-cmd.el (viper-backward-indent):
18685         * lisp/emacs-lisp/lisp-mode.el (calculate-lisp-indent):
18686         * lisp/emacs-lisp/elint.el (elint-get-top-forms):
18687         * lisp/cus-edit.el (custom-face-edit-value-create):
18688         * lisp/calendar/todo-mode.el (todo-set-item-priority)
18689         (todo-filter-items-1, todo-convert-legacy-files)
18690         (todo-prefix-overlays): Add explicit second arg to looking-back.
18692 2015-04-20  Glenn Morris  <rgm@gnu.org>
18694         Avoid non-nil current-load-list at startup
18695         * src/process.c (init_process_emacs): Move Fprovide statement...
18696         (syms_of_process): ... to here.
18698         * lisp/loadup.el (custom-current-group-alist): Reset before dumping.
18700         * lisp/startup.el (command-line) <site-run-file>: Avoid rogue value
18701         in emacs -Q.
18703 2015-04-20  Ludovic Courtès  <ludo@gnu.org>
18705         * lisp/loadup.el (exec-path): Avoid storing build-time PATH in binary.
18706         (Bug#20330)
18708 2015-04-20  Glenn Morris  <rgm@gnu.org>
18710         * lisp/cus-start.el (exec-path): Set standard value, to avoid rogue.
18712         Tweak exec-path in uninstalled case
18713         * src/callproc.c (init_callproc): If running uninstalled, do not
18714         include eventual installation libexec directory in exec-path.
18716 2015-04-20  Artur Malabarba  <bruce.connor.am@gmail.com>
18718         * lisp/emacs-lisp/package.el: Filter by multiple keywords and
18719         cache keywords.
18720         (package-menu-filter): Accept a list of keywords.
18721         (package--all-keywords): New variable to cache known keywords.
18722         (package-all-keywords): Populate it if necessary.
18723         (package-refresh-contents): Reset it.
18725         * lisp/emacs-lisp/package.el: Make archive and status pseudo-keywords
18726         (package--has-keyword-p): Understand "arc:xxxx" and "status:xxxx"
18727         as special keywords which match agains package archive and status
18728         respectively.
18729         * etc/NEWS: Document it.
18731 2015-04-20  Eli Zaretskii  <eliz@gnu.org>
18733         Describe and index "empty overlays".
18734         * doc/lispref/display.texi (Overlays): Improve indexing.
18735         (Managing Overlays): Describe "empty" overlays.
18736         (Overlay Properties, Finding Overlays): Add cross-reference to
18737         where empty overlays are described.
18739 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
18741         Spelling fixes
18743         Quote 'like this' in top-level files
18744         * CONTRIBUTE, INSTALL, Makefile.in, README, configure.ac, make-dist:
18745         Prefer to single-quote 'like this' (instead of the older style
18746         `like this').
18747         * configure.ac: Fix some space-before-tab problems that 'git commit'
18748         complained about.
18750         Use bool for boolean in textprop.c, undo.c
18751         * src/textprop.c (soft, hard): Now constants instead of macros.
18752         (validate_plist): Rewrite to avoid need for boolean local.
18753         (interval_has_all_properties, interval_has_some_properties)
18754         (interval_has_some_properties_list, add_properties)
18755         (remove_properties, get_char_property_and_overlay)
18756         (Fnext_single_char_property_change)
18757         (Fprevious_single_char_property_change, add_text_properties_1)
18758         (Fremove_text_properties, Fremove_list_of_text_properties)
18759         (copy_text_properties):
18760         * src/tparam.c (tparam1):
18761         * src/undo.c (record_change, record_property_change)
18762         (syms_of_undo):
18763         Use 'true' and 'false' for booleans.
18765 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
18767         * lisp/vc/vc-git.el (vc-git-find-file-hook):
18768         Call `smerge-start-session' even when dealing with a stash
18769         conflict (bug#20292).
18771 2015-04-19  Vibhav Pant  <vibhavp@gmail.com>
18773         Add option to eshell/clear to clear scrollback.
18774         * lisp/eshell/esh-mode.el (eshell/clear-scrollback): New function.
18775         (eshell/clear): Add an optional SCROLLBACK argument.  If non-nil,
18776         scrollback contents are cleared.
18777         * etc/NEWS: Describe change.
18778         * doc/misc/eshell.texi: Add entry for `clear'.
18780 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
18782         * src/widget.c (set_frame_size): Prefer 'int' to 'unsigned'
18783         where either will do.
18785 2015-04-19  Steve Purcell  <steve@sanityinc.com>
18787         Assume package archive-contents are UTF8-encoded
18788         * lisp/emacs-lisp/package.el (package--read-archive-file):
18789         Set `coding-system-for-read' explicitly to 'utf-8 when reading the
18790         downloaded and cached archive-contents files, so that non-ASCII
18791         characters in package descriptions are displayed correctly in the
18792         `list-packages' menu.  (Bug#20231)
18794 2015-04-19  Dmitry Gutov  <dgutov@yandex.ru>
18796         Abort when looking at stashed changes
18797         * lisp/vc/vc-git.el (vc-git-find-file-hook): Abort when looking at
18798         stashed changes (bug#20292).
18800 2015-04-19  Paul Eggert  <eggert@cs.ucla.edu>
18802         Refactor low-level printing for simplicity
18803         * src/print.c (PRINTDECLARE): Remove.  Move its contents into
18804         PRINTPREPARE; doable now that we assume C99.  All callers changed.
18805         (PRINTCHAR): Remove, as it adds more mystery than clarity.
18806         All callers changed.
18807         (strout): Assume that caller computes length.  All callers changed.
18808         (print_c_string): New function.
18809         (write_string, write_string_1): Compute length instead of asking
18810         the caller to compute it.  All callers changed.
18811         (write_string): Simplify by using write_string_1.
18812         (write_string_1): Simplify by using print_c_string.
18813         (Fterpri): Compute default val more clearly.
18814         (Fprin1_to_string, print_object):
18815         Assume C99 to avoid unnecessary nesting.
18816         (print_object): Prefer print_c_string to multiple printchar, or
18817         to calling strout with -1 length.  Coalesce into sprintf when
18818         this is easy.
18820 2015-04-18  Paul Eggert  <eggert@cs.ucla.edu>
18822         Prefer "Bug#1234" in commit messages (Bug#20325)
18823         * .dir-locals.el (log-edit-mode): Don't rewrite Bug#,
18824         as this isn't useful for Git.
18825         * CONTRIBUTE: Suggest "Bug#1234" instead of "Fixes: debbugs:1234".
18827 2015-04-18  Glenn Morris  <rgm@gnu.org>
18829         * lisp/files.el (auto-mode-alist): Use conf mode for gitconfig, hgrc.
18830         (Bug#19506)
18832 2015-04-18  Tom Willemse  <tom@ryuslash.org>  (tiny change)
18834         * lisp/elec-pair.el (electric-pair-post-self-insert-function):
18835         Do not use `chomp' as a function.  (Bug#19505)
18837 2015-04-18  Glenn Morris  <rgm@gnu.org>
18839         * lisp/net/browse-url.el (browse-url, browse-url-at-point): Doc fixes.
18841         * doc/emacs/misc.texi (Sorting): Small edit.
18842         (Bug#19896)
18844         * admin/admin.el (make-manuals): Add emacs-xtra in pdf and ps.
18846 2015-04-18  Simen Heggestøyl  <simenheg@gmail.com>
18848         css-mode.el: Support multi-line comment filling
18849         (Bug#20256)
18850         * lisp/textmodes/css-mode.el (css-fill-paragraph): Support multi-line
18851         comment filling.
18852         (css-adaptive-fill): New function.
18853         (css-mode): Set `adaptive-fill-function'.
18854         (scss-mode): Set `comment-continue'.
18856 2015-04-18  Nicolas Petton  <nicolas@petton.fr>
18858         * lisp/emacs-lisp/seq.el (seq-concatenate, seq-into):
18859         Better error messages.
18861 2015-04-18  Ivan Radanov Ivanov  <ivanradanov@yahoo.co.uk>  (tiny change)
18863         Minor improvements in Bulgarian input methods
18864         * lisp/leim/quail/cyrillic.el (bulgarian-phonetic, bulgarian-bds):
18865         Replace U+042C with U+045D, as the former character is not used in
18866         the modern Bulgarian language.
18867         (Bug#20350)
18869 2015-04-17  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
18871         Improve EUDC manual
18872         * doc/misc/eudc.texi (LDAP Configuration): Mention simple and SASL
18873         authentication schemes.  Add index items.  Shorten example server
18874         name.
18876 2015-04-17  Dmitry Gutov  <dgutov@yandex.ru>
18878         Don't show both feature and function with the same name
18879         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
18880         Don't show both feature and function with the same name.
18882         (elisp--xref-identifier-location): Skip variable, if it's also
18883         a function
18884         * lisp/progmodes/elisp-mode.el (elisp--xref-identifier-location):
18885         Avoid returning both the variable and the function for the same
18886         minor mode.
18888 2015-04-17  Wolfgang Jenkner  <wjenkner@inode.at>
18890         Fix fontification of keywords clobbered by the prompt
18891         * lisp/comint.el (comint-output-filter): Remove the uses of
18892         with-silent-modifications I introduced as part of the last change.
18893         This fixes, e.g., erratically missing highlighting when running
18894         ./configure --help; ./configure in a shell-mode buffer with
18895         compilation-shell-minor-mode turned on.
18897 2015-04-17  Glenn Morris  <rgm@gnu.org>
18899         * admin/authors.el (authors-valid-file-names)
18900         (authors-renamed-files-alist): Additions.
18902 2015-04-17  Stefan Monnier  <monnier@iro.umontreal.ca>
18904         * lisp/indent.el (indent-region): Don't deactivate the mark.
18905         (Bug#20357)
18907 2015-04-17  Sam Steingold  <sds@gnu.org>
18909         * lisp/net/rcirc.el (defun-rcirc-command): Mark `target' as ignorable.
18911 2015-04-16  Leo Liu  <sdl.web@gmail.com>
18913         * lisp/progmodes/xref.el (xref-push-marker-stack): Add optional arg.
18915 2015-04-16  Stefan Monnier  <monnier@iro.umontreal.ca>
18917         * lisp/erc/erc-pcomplete.el (erc-pcomplete):
18918         Don't use `pcomplete' any more.
18920 2015-04-16  Glenn Morris  <rgm@gnu.org>
18922         * admin/authors.el (authors-lax-changelogs): Update for erc changes.
18924 2015-04-16  Eli Zaretskii  <eliz@gnu.org>
18926         Don't link with -ljpeg on MS-Windows, to avoid dependency on DLL
18927         * configure.ac (LIBJPEG): Leave it empty for MinGW.
18929 2015-04-16  Glenn Morris  <rgm@gnu.org>
18931         * lisp/replace.el (query-replace-from-to-separator):
18932         Delay initialization to avoid rogue setting after startup.
18934 2015-04-16  Paul Eggert  <eggert@cs.ucla.edu>
18936         Pre-4.6 GCC succeeds with unknown option
18937         * configure.ac (emacs_cv_prog_cc_nopie): Port to pre-4.6 GCC.
18938         (Bug#20338)
18940 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18942         '[:graph:]' now excludes whitespace, not just ' '
18943         * doc/lispref/searching.texi (Char Classes):
18944         * lisp/emacs-lisp/rx.el (rx): Document [:graph:] to be [:print:]
18945         sans whitespace (not sans space).
18946         * src/character.c (graphicp): Exclude all Unicode whitespace chars,
18947         not just space.
18948         * src/regex.c (ISGRAPH): Exclude U+00A0 (NO-BREAK SPACE).
18950 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18952         * lisp/subr.el (substitute-key-definition-key, special-form-p)
18953         (macrop): Drop deprecated second arg to indirect-function.
18954         (looking-back): Make the second arg non-optional.
18956         * lisp/org/org-clock.el (org-x11idle-exists-p): Be honest about which
18957         command is actually sent to the shell.
18959 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18961         Port jpeg configuration to Solaris 10 with Sun C
18962         * configure.ac: Check for jpeglib 6b by trying to link it, instead
18963         of relying on cpp magic that has problems in practice.  Check for
18964         both jpeglib.h and jerror.h features.  Remove special case for
18965         mingw32, which should no longer be needed (and if it were needed,
18966         should now be addressable by hotwiring emacs_cv_jpeglib).
18967         (Bug#20332)
18969 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
18971         Move some Elisp-specific code from lisp-mode.el to elisp-mode.el
18972         * lisp/emacs-lisp/lisp-mode.el (lisp--el-font-lock-flush-elisp-buffers):
18973         Move to elisp-mode.el.
18974         (lisp-mode-variables): (Re)move elisp-specific settings.
18975         * lisp/progmodes/elisp-mode.el (emacs-lisp-mode): Add settings removed
18976         from lisp-mode-variables.
18977         (elisp--font-lock-flush-elisp-buffers): New function, moved from
18978         lisp-mode.el.
18980         * lisp/emacs-lisp/lisp-mode.el (lisp--el-non-funcall-position-p):
18981         Avoid pathological slowdown at top-level in large file.
18983 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
18985         Standardize names of ChangeLog history files
18986         Suggested by Glenn Morris in:
18987         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
18988         * Makefile.in (install-man): Don't treat ChangeLog.1 as a man page.
18989         * doc/man/ChangeLog.1: Rename back from doc/man/ChangeLog.01.
18990         * lisp/erc/ChangeLog.1: New file, containing the old contents of ...
18991         * lisp/erc/ChangeLog.01, lisp/erc/ChangeLog.02, lisp/erc/ChangeLog.03:
18992         * lisp/erc/ChangeLog.04, lisp/erc/ChangeLog.05, lisp/erc/ChangeLog.06:
18993         * lisp/erc/ChangeLog.07, lisp/erc/ChangeLog.08, lisp/erc/ChangeLog.09:
18994         Remove.
18996         Split top-level entries into pre- and post-April 7
18997         This more clearly distingiushes pre-April-7 ChangeLog entries (which
18998         are for top-level files only) from post-April-7 entries (which are
18999         about files at all levels.  Problem reported by Glenn Morris in:
19000         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00678.html
19001         * ChangeLog.1: Move post-April-7 entries from here ...
19002         * ChangeLog.2: ... to this new file.
19003         * Makefile.in (CHANGELOG_HISTORY_INDEX_MAX): Bump to 2.
19005 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
19007         Fix recent cus-start changes that added customize-rogues
19008         * lisp/cus-start.el (custom-delayed-init-variables): Initialize the
19009         vars early.
19010         * lisp/loadup.el ("cus-start"): Move to the end to reduce
19011         customize-rogue.
19013 2015-04-15  Nicolas Petton  <nicolas@petton.fr>
19015         Define cl-concatenate as an alias to seq-concatenate
19016         * lisp/emacs-lisp/cl-extra.el (cl-concatenate): Removes duplicated
19017           code by making cl-concatenate an alias to seq-concatenate.
19019 2015-04-15  Stefan Monnier  <monnier@iro.umontreal.ca>
19021         * src/lread.c (intern_1): Make sure we'd find the symbol we add
19022         (Bug#20334)
19023         * src/xfaces.c (resolve_face_name): Don't use `intern' with
19024         Lisp_Strings.
19026 2015-04-15  Glenn Morris  <rgm@gnu.org>
19028         * doc/lispref/sequences.texi (Sequence Functions): Fix typo in previous.
19030 2015-04-15  Lars Magne Ingebrigtsen  <larsi@gnus.org>
19032         Clean up gnus-uu saving code slightly
19033         * lisp/gnus/gnus-uu.el (gnus-uu-save-article): Make the
19034         save-restriction/widen calls make more sense.
19036 2015-04-15  Paul Eggert  <eggert@cs.ucla.edu>
19038         Make [:graph:] act like [:print:] sans space
19039         In POSIX [[:print:]] is equivalent to [ [:graph:]], so change
19040         [:graph:] so that it matches everything that [:print:] does,
19041         except for space.
19042         * doc/lispref/searching.texi (Char Classes):
19043         * etc/NEWS:
19044         * lisp/emacs-lisp/rx.el (rx):
19045         Document [:graph:] to be [:print:] sans ' '.
19046         * src/character.c, src/character.h (graphicp): New function.
19047         * src/regex.c (ISGRAPH) [emacs]: Use it.
19048         (BIT_GRAPH): New macro.
19049         (BIT_PRINT): Increase to 0x200, to make room for BIT_GRAPH.
19050         (re_wctype_to_bit) [! WIDE_CHAR_SUPPORT]:
19051         Return BIT_GRAPH for RECC_GRAPH.
19052         (re_match_2_internal) [emacs]: Use ISGRAPH if BIT_GRAPH,
19053         and ISPRINT if BIT_PRINT.
19055 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
19057         automated/eieio-test-methodinvoke.el (make-instance) <(subclass C)>:
19058         Don't use call-next-method in a cl-defmethod.
19060         * lisp/emacs-lisp/eieio-core.el (eieio--class): Derive from cl--class
19061         (eieio--class-p): Remove, provided by cl-defstruct.
19063 2015-04-14  Nicolas Petton  <nicolas@petton.fr>
19065         Add seq-intersection and seq-difference to the seq library
19066         * lisp/emacs-lisp/seq.el (seq-intersection, seq-difference):
19067         New functions.
19068         * test/automated/seq-tests.el: Add tests for seq-intersection and
19069         seq-difference.
19070         * doc/lispref/sequences.texi: Add documentation for seq-intersection
19071         and seq-difference.
19073 2015-04-14  Stefan Monnier  <monnier@iro.umontreal.ca>
19075         * lisp/emacs-lisp/eieio-core.el (class-abstract-p): Don't inline,
19076         to avoid leaking internals.
19078 2015-04-14  Sam Steingold  <sds@gnu.org>
19080         package--ensure-init-file: widen requires save-restriction
19082 2015-04-14  Eli Zaretskii  <eliz@gnu.org>
19084         Improve the commit-msg Git hook for unibyte environments
19085         * build-aux/git-hooks/commit-msg: Set LC_ALL=C, before running Awk
19086         in unibyte environments.  (Suggested by Paul Eggert
19087         <eggert@cs.ucla.edu>.)  Use a more accurate approximation to
19088         [:print:], based on UTF-8 sequences of the unprintable characters.
19090         Describe problems with cursor caused by Windows Magnifier
19091         * etc/PROBLEMS: Describe the problem with cursor shape on
19092         MS-Windows due to Windows Magnifier.
19093         (Bug#20271)
19095         Make [:print:] support non-ASCII characters correctly
19096         * src/regex.c (ISPRINT): Call 'printablep' for multibyte characters.
19097         (BIT_PRINT): New bit mask.
19098         (re_wctype_to_bit): Return BIT_PRINT for RECC_PRINT.
19099         * src/character.c (printablep): New function.
19100         * src/character.h (printablep): Add prototype.
19101         * lisp/emacs-lisp/rx.el (rx): Doc fix: document the new behavior
19102         of 'print', 'alnum', and 'alphabetic'.
19103         * doc/lispref/searching.texi (Char Classes): Document the new
19104         behavior of [:print:].
19105         * etc/NEWS: Mention the new behavior of [:print:].
19107         Assign correct general-category and names to surrogates
19108         * admin/unidata/unidata-gen.el (unidata-setup-list): Don't ignore
19109         surrogates.  This avoids assigning them the default
19110         general-category of 'Cn', i.e. unassigned codepoints.
19111         (unidata-get-name): Give surrogates synthetic names.
19113 2015-04-14  Paul Eggert  <eggert@cs.ucla.edu>
19115         Assume C89 offsetof in xterm.c, xlwmenu.c
19116         * lwlib/xlwmenu.c (offset):
19117         * src/xterm.c (cvt_string_to_pixel_args):
19118         Use offsetof, not XtOffset.
19120 2015-04-14  Paul Eggert  <eggert@Penguin.CS.UCLA.EDU>
19122         Assume C89 offsetof in widget.c
19123         * src/widget.c (XtOffset): Remove; no longer needed.
19124         (offset): Implement via offsetof instead of via pre-C89 XtOffset hack.
19126         Fix think-o in previous patch
19127         * src/window.c (count_windows, get_leaf_windows):
19128         Don't optimize count_windows incorrectly.
19130 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19132         Avoid some int overflows in window.c
19133         * src/print.c (print_object):
19134         * src/window.c (sequence_number):
19135         * src/window.h (struct window.sequence_number):
19136         Don't assume window sequence number fits in int.
19137         * src/window.c (window_select_count):
19138         * src/window.h (struct window.use_time, window_select_count):
19139         Don't assume window use time fits in int.
19140         * src/window.c (Fsplit_window_internal):
19141         Don't assume user-supplied integer, or sum, fits in int.
19142         (Fset_window_configuration, count_windows, get_leaf_windows)
19143         (save_window_save, Fcurrent_window_configuration):
19144         Use ptrdiff_t for object counts.
19145         (Fset_window_configuration): Omit unused local 'n'.
19146         (count_windows): Simplify by writing in terms of get_leaf_windows.
19147         (get_leaf_windows): Don't store through FLAT if it's null.
19148         (extract_dimension): New static function.
19149         (set_window_margins, set_window_fringes, set_window_scroll_bars):
19150         Use it to avoid undefined behavior when converting user-supplied
19151         integer to 'int'.
19153 2015-04-13  Glenn Morris  <rgm@gnu.org>
19155         Minor doc copyedits
19156         * doc/emacs/custom.texi (Init Examples): Tweak example, replace typo.
19157         * doc/lispintro/emacs-lisp-intro.texi (condition-case): Typo fix.
19159 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
19161         [Gnus] Catch the invalid-operation that idna.el will issue
19162         * lisp/gnus/gnus-art.el (gnus-use-idna):
19163         * lisp/gnus/gnus-sum.el (gnus-summary-idna-message):
19164         * lisp/gnus/message.el (message-use-idna):
19165         Catch the invalid-operation that idna.el will issue.
19167 2015-04-13  Paul Eggert  <eggert@cs.ucla.edu>
19169         * doc/lispref/processes.texi (Shell Arguments): Prefer diff -u.
19171 2015-04-13  Sam Steingold  <sds@gnu.org>
19173         package--ensure-init-file: widen before looking for
19174         "(package-initialize)"
19176 2015-04-13  Dmitry Gutov  <dgutov@yandex.ru>
19178         Change diff-switches default to `-u' (Bug#20290)
19179         * doc/emacs/files.texi (Comparing Files): Document the new default
19180         value of `diff-switches'.
19181         * doc/emacs/trouble.texi (Sending Patches): Document the preference
19182         for unified diff format.  Escape the plus in the suggested `-F' regexp
19183         value.
19184         * lisp/vc/diff.el (diff-switches): Change the default to `-u'.
19186 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19188         (gnus-group--setup-tool-bar-update): Fix last change
19189         * lisp/gnus/gnus-group.el (gnus-group--setup-tool-bar-update):
19190         cursor-sensor-functions should be a list of functions.
19192 2015-04-13  Katsumi Yamaoka  <yamaoka@jpl.org>
19194         * lisp/gnus/gnus-topic.el (gnus-topic-mode):
19195         Use gmm-called-interactively-p.
19197 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19199         * lisp/loadup.el ("cus-start"): Load it after loaddefs.el
19200         (Bug#20321)
19201         * lisp/cus-start.el (read-buffer-function): Don't advertise
19202         iswitchb-read-buffer any more.
19203         (iswitchb): Don't tweak this obsolete group any more.
19205 2015-04-13  Artur Malabarba  <bruce.connor.am@gmail.com>
19207         * lisp/emacs-lisp/package.el: Fix package--ensure-init-file.
19209         * lisp/emacs-lisp/cl-macs.el (cl-defstruct): Implement docstrings.
19210         Adding a string after a constructor's argument list will use
19211         that string as the constructor function docstring.  If this string
19212         is absent but the struct itself was given a docstring, use that as
19213         the constructor's docstring.
19214         Fixes bug#17284.
19216 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19218         Deprecate `intangible' and `point-entered' properties
19219         * lisp/emacs-lisp/cursor-sensor.el: New file.
19220         * lisp/simple.el (pre-redisplay-functions): New hook.
19221         (redisplay--pre-redisplay-functions): New function.
19222         (pre-redisplay-function): Use it.
19223         (minibuffer-avoid-prompt): Mark obsolete.
19224         (redisplay--update-region-highlight): Adapt it to work as a function on
19225         pre-redisplay-functions.
19226         * lisp/cus-start.el (minibuffer-prompt-properties--setter): New fun.
19227         (minibuffer-prompt-properties): Use it.  Use cursor-intangible rather
19228         than point-entered to make the prompt intangible.
19229         * lisp/forms.el: Move `provide' calls to the end.
19230         (forms-mode): Don't use `run-hooks' on a local var.
19231         (forms--make-format, forms--make-format-elt-using-text-properties):
19232         Use cursor-intangible rather than `intangible'.
19233         (forms-mode): Enable cursor-intangible-mode.
19234         * lisp/isearch.el (isearch-mode): Use defvar-local.
19235         (cursor-sensor-inhibit): Declare.
19236         (isearch-mode): Set cursor-sensor-inhibit.
19237         (isearch-done): Set it back.
19238         (isearch-open-overlay-temporary, isearch-open-necessary-overlays)
19239         (isearch-close-unnecessary-overlays): Don't bother with `intangible'
19240         any more.
19241         * lisp/ses.el (ses-localvars): Remove `mode-line-process'.
19242         (ses-sym-rowcol, ses-cell-value, ses-col-width, ses-col-printer):
19243         Add Edebug spec.
19244         (ses-goto-print, ses-print-cell, ses-adjust-print-width)
19245         (ses-goto-data, ses-setup, ses-copy-region): Don't let-bind
19246         inhibit-point-motion-hooks any more.
19247         (ses--cell-at-pos, ses--curcell): New functions, extracted from
19248         ses-set-curcell.
19249         (ses-set-curcell): Use them.
19250         (ses-print-cell, ses-setup): Use cursor-intangible instead of
19251         `intangible'.  Make sure cursor-intangible isn't sticky at BOB.
19252         (ses-print-cell-new-width, ses-reprint-all, ses-recalculate-all):
19253         Use ses--cell-at-pos.
19254         (ses--mode-line-process, ses--cursor-sensor-highlight): New functions,
19255         extracted from ses-command-hook.  Make them work with multiple windows
19256         displaying the same buffer.
19257         (ses-mode): Use them via mode-line-process and pre-redisplay-functions.
19258         Enable cursor-intangible-mode.
19259         (ses-command-hook): Remove cell highlight and mode-line update code.
19260         (ses-forward-or-insert, ses-copy-region-helper, ses-sort-column):
19261         Update for new name of text-property holding the cell name.
19262         (ses-rename-cell): Don't mess with mode-line-process.
19263         * lisp/erc/erc-stamp.el (erc-add-timestamp): Use the new
19264         cursor-sensor-functions property instead of point-entered.
19265         (erc-insert-timestamp-right, erc-format-timestamp):
19266         Use cursor-intangible rather than `intangible'.
19267         (erc-munge-invisibility-spec): Use add-to-invisibility-spec and
19268         remove-from-invisibility-spec.  Enable cursor-intangible-mode and
19269         cursor-sensor-mode if needed.
19270         (erc-echo-timestamp): Adapt to calling convention of
19271         cursor-sensor-functions.
19272         (erc-insert-timestamp-right): Remove unused vars `current-window' and
19273         `indent'.
19274         * lisp/gnus/gnus-group.el (gnus-tmp-*): Declare.
19275         (gnus-update-group-mark-positions): Remove unused `topic' var.
19276         (gnus-group-insert-group-line): Remove unused var `header'.
19277         (gnus-group--setup-tool-bar-update): New function.
19278         (gnus-group-insert-group-line): Use it.
19279         (gnus-group-update-eval-form): Declare local
19280         dynamically-bound variables.
19281         (gnus-group-unsubscribe-group): Use \` and \' to match string bounds.
19282         * lisp/gnus/gnus-topic.el (gnus-topic-jump-to-topic)
19283         (gnus-group-prepare-topics, gnus-topic-update-topic)
19284         (gnus-topic-change-level, gnus-topic-catchup-articles)
19285         (gnus-topic-remove-group, gnus-topic-delete, gnus-topic-indent):
19286         Use inhibit-read-only.
19287         (gnus-topic-prepare-topic): Use gnus-group--setup-tool-bar-update.
19288         (gnus-topic-mode): Use define-minor-mode and derived-mode-p.
19289         * lisp/textmodes/reftex-index.el (reftex-display-index):
19290         Use cursor-intangible-mode if available.
19291         (reftex-index-post-command-hook): Check cursor-intangible.
19292         * lisp/textmodes/reftex-toc.el (reftex-toc):
19293         Use cursor-intangible-mode if available.
19294         (reftex-toc-recenter, reftex-toc-post-command-hook):
19295         Check cursor-intangible.
19296         * lisp/textmodes/sgml-mode.el: Use lexical-binding.
19297         (sgml-tag): Use cursor-sensor-functions instead of point-entered.
19298         (sgml-tags-invisible): Use with-silent-modifications and
19299         inhibit-read-only.  Enable cursor-sensor-mode.
19300         (sgml-cursor-sensor): Rename from sgml-point-entered and adjust to
19301         calling convention of cursor-sensor-functions.
19302         * lisp/textmodes/table.el (table-cell-map-hook, table-load-hook)
19303         (table-point-entered-cell-hook, table-point-left-cell-hook):
19304         Don't autoload.
19305         (table-cell-entered-state): Remove var.
19306         (table--put-cell-point-entered/left-property)
19307         (table--remove-cell-properties):
19308         Use cursor-sensor-functions rather than point-entered/left.
19309         (table--point-entered/left-cell-function): Merge
19310         table--point-entered-cell-function and table--point-left-cell-function
19311         and adjust to calling convention of cursor-sensor-functions.
19313         Update ldef-boots.el
19315         * lisp/emacs-lisp/pcase.el (pcase-dolist): Autoload as well.
19317         * doc/misc/eieio.texi: Don't advertise now obsolete constructs
19319         Collapse successive char deletions in the undo log
19320         * src/cmds.c (remove_excessive_undo_boundaries): New function,
19321         extracted from Fself_insert_command.
19322         (Fdelete_char, Fself_insert_command): Use it.
19323         * src/fileio.c (Fmake_symbolic_link): Rename arg to `target'.
19324         * src/keyboard.c (syms_of_keyboard): `top-level' shouldn't be special.
19326         xterm and OSC 52: Add NEWS entry, and tweak the code
19327         * lisp/term/xterm.el (gui-set-selection) <nil>: Move method definition
19328         to top-level.
19329         (terminal-init-xterm-activate-set-selection): Set a terminal property.
19330         (xterm--set-selection): Use it instead of checking the value of
19331         `terminal-initted'.  Don't use string-bytes.
19333 2015-04-13  Philipp Stephani  <p.stephani2@gmail.com>
19335         xterm.el: Implement OSC-52 functionality for setting the X selection
19336         * lisp/term/xterm.el (xterm-max-cut-length): New var.
19337         (xterm--set-selection, terminal-init-xterm-activate-set-selection):
19338         New funs.
19339         (terminal-init-xterm, xterm--version-handler): Use them.
19341 2015-04-13  Stefan Monnier  <monnier@iro.umontreal.ca>
19343         Remove left over code from when we used an obsolete/loaddefs.el file
19344         * lisp/subr.el (do-after-load-evaluation): Remove left over code from
19345         when we used an obsolete/loaddefs.el file.
19347         * lisp/cedet/semantic/fw.el (semantic-exit-on-input)
19348         (semanticdb-without-unloaded-file-searches): Use declare.
19349         (semantic-fw-add-edebug-spec): Remove.
19351         * lisp/completion.el (completion-lisp-mode-hook):
19352         Use completion-separator-chars rather than local key binding.
19354         * src/*.c: Set deactivate_mark buffer-locally
19355         (Bug#20260)
19356         * src/insdel.c (prepare_to_modify_buffer_1):
19357         * src/fileio.c (Finsert_file_contents): Set deactivate_mark
19358         buffer-locally.
19360 2015-04-12  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19362         python.el: Keep symmetry on sexp navigation with parens
19363         (Bug#19954)
19364         * lisp/progmodes/python.el
19365         (python-nav--forward-sexp): Add argument skip-parens-p.
19366         (python-nav-forward-sexp, python-nav-backward-sexp)
19367         (python-nav-forward-sexp-safe)
19368         (python-nav-backward-sexp-safe): Use it.
19369         * test/automated/python-tests.el
19370         (python-nav-forward-sexp-1): Fix test.
19372 2015-04-12  João Távora  <joaotavora@gmail.com>
19374         Don't use `setq-local' in Gnus code
19375         This might break upstream builds with older Emacsen
19376         * lisp/gnus/message.el (message-mode): Use `set' and
19377         `make-local-variable' instead of `setq-local'.
19379 2015-04-12  Paul Eggert  <eggert@cs.ucla.edu>
19381         Update Makefile.in's .PHONY dependencies
19382         * Makefile.in (change-history-commit, master-branch-is-current)
19383         (no-ChangeLog): Now phony.
19385         Remove configure's --with-mmdf option
19386         * configure.ac (MAIL_USE_MMDF): Remove.
19387         * etc/NEWS: Document this.
19388         * lib-src/movemail.c: Assume MAIL_USE_MMDF is not defined.
19389         (Bug#20308)
19391         * doc/man/ChangeLog.01: Rename from doc/man/ChangeLog.1.
19392         That way, 'make install' won't think it's a man page.
19393         Reported by Ashish SHUKLA in:
19394         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00656.html
19396         Improve 'make change-history' prereq tests
19397         * Makefile.in (gen_origin): Fix to match what's in the master branch.
19398         (no-ChangeLog, master-branch-is-current): New rules.
19399         (change-history): Depend on them, to avoid similar future problems.
19400         Escape the local-variables string to pacify Emacs when editing
19401         Makefile.in.
19403 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
19405         * test/automated/package-test.el (with-package-test):
19406         Kill Packages buffer.
19408         * lisp/emacs-lisp/package.el: Improve transaction y-or-n prompt.
19409         (package-menu--prompt-transaction-p): Prompt for "Delete" first,
19410         "Upgrade" last, and use capitalized instead of all-caps.
19412         * lisp/emacs-lisp/package.el: Completely silence async operations.
19413         (package--make-autoloads-and-stuff): Silence autoloads.
19414         (package--save-selected-packages): New function, silences
19415         `customize-save-variable'.
19416         (package--user-selected-p, package-install-from-buffer)
19417         (package-delete, package-install): Use it.
19418         (package-install-from-archive)
19419         (package-menu--perform-transaction): Silence.
19420         (package-menu-execute): Feedback when operation starts.
19422         Use delay-mode-hooks when visiting the init-file
19423         * lisp/emacs-lisp/package.el (package--ensure-init-file):
19424         delay-mode-hooks.
19425         * lisp/cus-edit.el (custom-save-all): delay-mode-hooks.
19427         * lisp/files.el: Only message when saving if save-silently is nil.
19428         (save-silently): New variable.
19429         (files--message): New function.
19430         (find-file-noselect, save-buffer, basic-save-buffer)
19431         (basic-save-buffer-2, save-some-buffers, not-modified)
19432         (append-to-file): Use them.
19434 2015-04-12  Johan Bockgård  <bojohan@gnu.org>
19436         Support debug declarations in pcase macros
19437         * lisp/emacs-lisp/pcase.el (pcase-MACRO): New edebug spec.
19438         (pcase-UPAT): Use it.  Remove "`".
19439         (pcase--edebug-match-macro): New function.
19440         (pcase-defmacro): Support debug declarations.
19441         * lisp/emacs-lisp/cl-macs.el (cl-struct) <pcase-defmacro>:
19442         * lisp/emacs-lisp/eieio.el (eieio) <pcase-defmacro>:
19443         * lisp/emacs-lisp/pcase.el (\`): <pcase-defmacro>:
19444         Add debug declaration.
19446         pcase.el: Edebug support for `app' and vector patterns
19447         * lisp/emacs-lisp/pcase.el (pcase-FUN): New edebug spec.
19448         (pcase-UPAT): Use it.  Support `app' patterns.
19449         (pcase-QPAT): Support vector patterns.
19451         edebug.el: Disambiguate vector specifications
19452         * lisp/emacs-lisp/edebug.el (edebug-match-list): Always treat
19453         `(vector ...)' as a vector specification, not as a sublist.
19455         (gnus-summary-refer-thread): Don't clobber unread articles
19456         This fixes a bug where `A T' causes "random" articles to become marked
19457         as read.
19458         * lisp/gnus/gnus-sum.el (gnus-summary-refer-thread): Make sure
19459         gnus-newsgroup-unreads remains sorted.
19461         mouse-sel.el: Fix mouse-sel-get-selection-function
19462         * lisp/obsolete/mouse-sel.el (mouse-sel-get-selection-function):
19463         Use gui--last-selected-text-primary instead of no longer existing
19464         gui-last-selected-text.
19466         * lisp/rect.el (delete-whitespace-rectangle-line): Don't cross EOL.
19468         * lisp/net/nsm.el (nsm-query-user): Use cursor-in-echo-area.
19470 2015-04-12  Artur Malabarba  <bruce.connor.am@gmail.com>
19472         * lisp/emacs-lisp/package.el (list-packages): Avoid redundant generate.
19474         * lisp/emacs-lisp/package.el (list-packages): Call refresh in
19475         right buffer.
19477         * lisp/emacs-lisp/bytecomp.el: Silence noninteractive compilations.
19478         (byte-compile--interactive): New var.
19479         (byte-compile--message): New function.
19480         (byte-compile-log-1, byte-force-recompile)
19481         (byte-recompile-directory, byte-recompile-file)
19482         (byte-compile-file, compile-defun)
19483         (byte-compile-file-form-defmumble, byte-compile)
19484         (byte-compile-file-form-defalias, display-call-tree): Use it.
19486         * lisp/files.el: Don't message when nothing happened.
19487         (save-some-buffers, basic-save-buffer): Before messaging to say
19488         "nothing was saved" check if (called-interactively-p 'any).
19490 2015-04-12  João Távora  <joaotavora@gmail.com>
19492         Summary: Improve sexp-based movement in message-mode
19493         Works by giving citations and smileys a different syntax.  This helps
19494         modes like `show-paren-mode', `electric-pair-mode', and C-M-*
19495         sexp-based movement.
19496         * lisp/gnus/message.el (message--syntax-propertize): New function.
19497         (message-mode): Set syntax-related vars.
19498         (message-smileys): New variable.
19499         * test/automated/message-mode-tests.el: New file
19501 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19503         Use bool for boolean in window.c
19504         * src/window.c: Omit unnecessary static function decls.
19505         (adjust_window_count, select_window, Fselect_window)
19506         (window_body_width, Fwindow_body_height, Fwindow_body_width)
19507         (set_window_hscroll, check_window_containing, Fwindow_at)
19508         (Fwindow_end, Fset_window_start, Fpos_visible_in_window_p)
19509         (unshow_buffer, replace_window, recombine_windows)
19510         (add_window_to_list, candidate_window_p, next_window)
19511         (Fnext_window, Fprevious_window, window_loop, check_all_windows)
19512         (Fget_buffer_window, Fdelete_other_windows_internal)
19513         (replace_buffer_in_windows_safely, set_window_buffer)
19514         (Fset_window_buffer, Fforce_window_update)
19515         (temp_output_buffer_show, make_parent_window)
19516         (window_resize_check, window_resize_apply, Fwindow_resize_apply)
19517         (resize_frame_windows, Fsplit_window_internal)
19518         (Fdelete_window_internal, grow_mini_window, shrink_mini_window)
19519         (Fresize_mini_window_internal, mark_window_cursors_off)
19520         (window_scroll, window_scroll_pixel_based)
19521         (window_scroll_line_based, scroll_command, Fscroll_other_window)
19522         (Fscroll_left, Fscroll_right, displayed_window_lines, Frecenter)
19523         (Fmove_to_window_line, Fset_window_configuration)
19524         (delete_all_child_windows, apply_window_adjustment)
19525         (set_window_fringes, set_window_scroll_bars)
19526         (Fset_window_vscroll, foreach_window, foreach_window_1)
19527         (compare_window_configurations, Fcompare_window_configurations):
19528         Prefer 'bool', 'true', and 'false' for booleans.
19529         * src/window.h (WINDOW_MODE_LINE_LINES)
19530         (WINDOW_HEADER_LINE_LINES): Omit unnecessary "!!" on bool value.
19532 2015-04-11  Artur Malabarba  <bruce.connor.am@gmail.com>
19534         Speed up byte-compilation and autoload generation by avoiding mode-hooks
19535         This prevents emacs-lisp-mode-hook from being run everytime an
19536         autoload file is generated, which can account for a fraction of
19537         package installation time depending on the hooks the user has
19538         configured.
19539         * lisp/emacs-lisp/bytecomp.el (byte-compile-file): Use delay-mode-hooks.
19540         * lisp/emacs-lisp/autoload.el (autoload-find-file)
19541         (autoload-find-generated-file): Use delay-mode-hooks.
19543         * lisp/emacs-lisp/package.el: Improve `package-menu-refresh'.
19544         (package-menu-refresh): Respect async and do new package checking.
19545         (list-packages): Use `package-menu-refresh' instead of repeating code.
19547         * lisp/emacs-lisp/package.el: Improve package-menu-quick-help.
19548         (package--quick-help-keys): New variable.
19549         (package--prettify-quick-help-key): New function.
19550         (package-menu-quick-help): Use it.
19552         * lisp/emacs-lisp/package.el: Fix initially wrong compat table.
19553         (package--build-compatibility-table): Require finder.
19555         * test/automated/package-test.el: Fix new test.
19557         * lisp/emacs-lisp/package.el: Silence async operations.
19558         (package--silence): New variable.
19559         (package--message): New function.
19560         (package-import-keyring, package-refresh-contents)
19561         (package-compute-transaction, package-install, package-delete)
19562         (package-menu--perform-transaction, package-menu-execute): Use it.
19564         * test/automated/package-test.el: Test async functionality.
19565         (package-test-update-archives-async): New test.
19567 2015-04-11  Daiki Ueno  <ueno@gnu.org>
19569         Utilize `make-process' in epg.el
19570         * lisp/epg.el (epg-error-output): Abolish.
19571         (epg-context): New slot `error-buffer'.
19572         (epg--start): Use `make-process' and `make-pipe-process'.
19573         (epg--process-filter): Remove code separating stderr from stdout.
19574         (epg-wait-for-completion): Simplify `error-output' handling.
19575         (epg-reset): Dispose error buffer.
19577 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19579         * .gitignore: Ignore doc temps and outputs.
19581         Port commit-msg to MSYS Bash+Gawk
19582         See Eli Zaretskii in:
19583         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00610.html
19584         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format)
19585         (cent_sign, print_at_sign, at_sign): Revert previous change.
19586         (print_at_sign): Prepend "BEGIN".
19587         (at_sign): Redirect from /dev/null to be safer with pre-POSIX awk.
19589         Port commit-msg to broken MS-Windows shell
19590         * build-aux/git-hooks/commit-msg (cent_sign):
19591         Just use UTF-8 here rather than ASCII + printf, as the latter fails
19592         on a broken MS-Windows shell.  Reported by Eli Zaretskii in:
19593         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00592.html
19595 2015-04-11  Chris Zheng  <chriszheng99@gmail.com>  (tiny change)
19597         Support GnuTLS v3.4 and later on MS-Windows
19598         * src/gnutls.c (syms_of_gnutls) <libgnutls-version>: New DEFSYM.
19599         * lisp/term/w32-win.el (dynamic-library-alist): Determine which
19600         GnuTLS DLL to load according to value of libgnutls-version.
19601         (Bug#20294)
19603 2015-04-11  Paul Eggert  <eggert@cs.ucla.edu>
19605         Minor quoting etc. fixes to misc manuals
19606         Fix some minor quoting and spacing issues.  Distinguish more
19607         clearly among grave accent and apostrophe (which are ASCII) and
19608         single quote (which is not).  Prefer the standard terms
19609         "apostrophe" and "grave accent" to alternative names that can be
19610         confusing.  Use apostrophes to single-quote ASCII text.
19611         * doc/misc/remember.texi: Spell the mystic's pseudonym in UTF-8
19612         rather than approximating it in ASCII with grave accent.
19614 2015-04-11  Daiki Ueno  <ueno@gnu.org>
19616         Respect more keyword args in `make-process'
19617         * src/process.c (Fmake_process): Respect `:sentinel' and `:filter'
19618         keywords as documented.
19620 2015-04-10  Dmitry Gutov  <dgutov@yandex.ru>
19622         Extract ChangeLog entries when committing a directory
19623         * lisp/vc/vc-dispatcher.el (vc-log-edit): Update FIXME comment.
19624         * lisp/vc/log-edit.el (log-edit-changelog-insert-entries):
19625         Add a FIXME comment.
19626         (log-edit-changelog-entries): Extract from
19627         `log-edit-changelog-entries', handle FILE being a directory
19628         (http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00555.html).
19630 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
19632         Fix problems found by --enable-gcc-warnings
19633         * src/process.c (create_process, Fmake_pipe_process)
19634         (Fmake_network_process): Omit unused locals.
19636         Fix commit-msg to handle scissors lines
19637         * build-aux/git-hooks/commit-msg:
19638         Ignore every line after a scissors line, such as a line generated
19639         by 'git commit -v'.  Problem reported by Johan Bockgård in:
19640         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00580.html
19642         port commit-msg to Gawk 3.0.4 (1999)
19643         * build-aux/git-hooks/commit-msg (cent_sign_utf8_format, cent_sign)
19644         (print_at_sign, at_sign): New vars.  Use them to avoid problems
19645         Eli Zaretskii encountered with Gawk 3.0.4 (1999) on MSYS.  See:
19646         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
19648         Have commit-msg report commit failure
19649         * build-aux/git-hooks/commit-msg: If the commit is aborted,
19650         say so.  Simplify by doing this at the end.  Problem reported
19651         by Eli Zaretskii in:
19652         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00566.html
19654 2015-04-10  Thomas Fitzsimmons  <fitzsim@fitzsim.org>
19656         Clean up LDAP Configuration section of EUDC manual
19657         * doc/misc/eudc.texi: Combine indices.
19658         (LDAP Configuration): Use command markup.  Add index entries.
19659         Change formatting.  Wrap long lines.  Add noindent markup.
19661 2015-04-10  Daiki Ueno  <ueno@gnu.org>
19663         Add facility to collect stderr of async subprocess
19664         * src/w32.h (register_aux_fd): New function declaration.
19665         * src/w32.c (register_aux_fd): New function.
19666         * src/process.h (struct Lisp_Process): New member stderrproc.
19667         * src/process.c (PIPECONN_P): New macro.
19668         (PIPECONN1_P): New macro.
19669         (Fdelete_process, Fprocess_status, Fset_process_buffer)
19670         (Fset_process_filter, Fset_process_sentinel, Fstop_process)
19671         (Fcontinue_process): Handle pipe process specially.
19672         (create_process): Respect p->stderrproc.
19673         (Fmake_pipe_process): New function.
19674         (Fmake_process): Add new keyword argument :stderr.
19675         (wait_reading_process_output): Specially handle a pipe process when
19676         it gets an EOF.
19677         (syms_of_process): Register Qpipe and Smake_pipe_process.
19678         * doc/lispref/processes.texi (Asynchronous Processes): Document
19679         `make-pipe-process' and `:stderr' keyword of `make-process'.
19680         * lisp/subr.el (start-process): Suggest to use `make-process' handle
19681         standard error separately.
19682         * test/automated/process-tests.el (process-test-stderr-buffer)
19683         (process-test-stderr-filter): New tests.
19684         * etc/NEWS: Mention new process type `pipe' and its usage with the
19685         `:stderr' keyword of `make-process'.
19687 2015-04-10  Paul Eggert  <eggert@cs.ucla.edu>
19689         Minor quoting etc. fixes to lispref manual
19690         * doc/lispref/tips.texi (Documentation Tips):
19691         Distinguish more clearly among grave accent, apostrophe,
19692         and single quote.
19693         * doc/lispref/README, doc/lispref/buffers.texi:
19694         * doc/lispref/commands.texi, doc/lispref/control.texi:
19695         * doc/lispref/customize.texi, doc/lispref/display.texi:
19696         * doc/lispref/elisp.texi, doc/lispref/files.texi:
19697         * doc/lispref/frames.texi, doc/lispref/hash.texi:
19698         * doc/lispref/help.texi, doc/lispref/internals.texi:
19699         * doc/lispref/loading.texi, doc/lispref/makefile.w32-in:
19700         * doc/lispref/markers.texi, doc/lispref/modes.texi:
19701         * doc/lispref/nonascii.texi, doc/lispref/objects.texi:
19702         * doc/lispref/os.texi, doc/lispref/positions.texi:
19703         * doc/lispref/strings.texi, doc/lispref/syntax.texi:
19704         * doc/lispref/text.texi, doc/lispref/tips.texi:
19705         * doc/lispref/two-volume-cross-refs.txt, doc/lispref/windows.texi:
19706         Use American-style double quoting in ordinary text,
19707         and quote 'like this' when single-quoting in ASCII text.
19708         Also, fix some minor spacing issues.
19710 2015-04-10  Michael Albinus  <michael.albinus@gmx.de>
19712         Handle symlinked test directory in tramp-tests.el
19713         * test/automated/tramp-tests.el (tramp-test18-file-attributes)
19714         (tramp--test-check-files): Use `file-truename' for directories.
19716 2015-04-10  Eli Zaretskii  <eliz@gnu.org>
19718         Fix 'recenter' when visual-line-mode is turned on
19719         * src/window.c (Frecenter): Use the same code for GUI and TTY
19720         frames alike; use vmotion only for "initial" frames.  This is
19721         because vmotion doesn't support visual-line-mode.  Rewrite the
19722         'iarg >= 0' case to use move_it_* functions instead of using
19723         vmotion, for the same reason.  Fix the clipping of the argument
19724         value to support scroll-margin in all cases and avoid unwarranted
19725         recentering.  Reported by Milan Stanojević <milanst@gmail.com> in
19726         http://lists.gnu.org/archive/html/help-gnu-emacs/2015-04/msg00092.html,
19727         which see.
19729 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19731         * lisp/abbrev.el (define-abbrev-table): Refine last change.
19733         * lisp/emacs-lisp/cl-lib.el: Partial revert of "2015-04-05 Rationalize
19734         use of c[ad]+r", so as to keep the "cl-" prefix on all
19735         cl-lib definitions.
19737         * lisp/progmodes/vhdl-mode.el (vhdl-prepare-search-2):
19738         Use inhibit-point-motion-hooks.
19740         * lisp/cedet/semantic: Remove some dead code.
19741         * lisp/cedet/semantic/util-modes.el
19742         (semantic-stickyfunc-header-line-format): Emacs<22 is not supported
19743         any more.
19744         * lisp/cedet/semantic/fw.el (semantic-buffer-local-value): Emacs<21 is
19745         not supported any more.
19746         (semantic-safe): Use `declare'.
19747         * lisp/cedet/semantic/decorate.el (semantic-set-tag-intangible)
19748         (semantic-tag-intangible-p): Remove unused functions.
19749         * lisp/cedet/semantic/complete.el (semantic-displayor-window-edges):
19750         Remove unused function.
19752         * lisp/gnus/gnus-art.el (gnus-hidden-properties): Simplify.
19753         (gnus-article-hide-text, gnus-article-unhide-text)
19754         (gnus-article-unhide-text-type): Remove special handling of
19755         `intangible' since that property is not used any more.
19756         (gnus-article-treat-body-boundary): Use gnus-hidden-properties.
19758 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
19760         Use the VC root in `log-edit-listfun'
19761         * lisp/vc/vc-dispatcher.el (vc-log-edit): Use the VC root in
19762         `log-edit-listfun'.
19764 2015-04-09  Jay Belanger  <jay.p.belanger@gmail.com>
19766         Fix description of Unix time, mention new function.
19767         * lisp/calc/calc-forms.el (calcFunc-unixtime): Fix adjustment for
19768         Unix time.
19769         * doc/misc/calc.texi (Date Forms): Fix description of Unix time.
19770         (Basic Operations on Units): Mention `calc-convert-exact-units'.
19772 2015-04-09  Artur Malabarba  <bruce.connor.am@gmail.com>
19774         * lisp/emacs-lisp/package.el: Use mode-line-process for notification.
19776 2015-04-09  Dmitry Gutov  <dgutov@yandex.ru>
19778         * lisp/vc/log-edit.el (log-edit-insert-changelog-entries):
19779         Don't add newline after the last entry.
19781 2015-04-09  Simen Heggestøyl  <simenheg@gmail.com>
19783         css-mode.el: Add "not" pseudo-class
19784         (Bug#20267)
19785         * lisp/textmodes/css-mode.el (css-pseudo-class-ids): Add "not" to
19786         list of CSS pseudo-classes.
19788 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19790         * etc/NEWS: Add missing entry for "Stop messing with the EMACS env var".
19792 2015-04-09  Michael Albinus  <michael.albinus@gmx.de>
19794         Stop messing with the EMACS env var
19795         * doc/emacs/misc.texi (Interactive Shell): Remove description of
19796         EMACS env var.
19798 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19800         Adapt 'make change-history' to coding cookie
19801         * Makefile.in (change-history): Adjust to change of format of
19802         ChangeLog file, which now has a coding cookie before an indented
19803         copyright notice.
19805 2015-04-09  Paul Eggert  <eggert@cs.ucla.edu>
19807         Adapt 'make change-history' to coding cookie
19808         * Makefile.in (change-history): Adjust to change of format of
19809         ChangeLog file, which now has a coding cookie before an indented
19810         copyright notice.
19812         gitlog-to-changelog coding cookie and mv -i
19813         * build-aux/gitlog-to-emacslog: Use ChangeLog.1, not Makefile.in,
19814         for copyright notice prototype, so that we get a proper "coding:"
19815         cookie.  Use 'mv -i' to avoid unconditionally overwriting an
19816         existing ChangeLog.  Problems reported by Eli Zaretskii in:
19817         http://lists.gnu.org/archive/html/emacs-devel/2015-04/msg00504.html
19819         Merge from gnulib
19820         * build-aux/gitlog-to-changelog: Update from gnulib, incorporating:
19821         2015-04-09 gitlog-to-changelog: port to MS-Windows
19823 2015-04-09  Boruch Baum  <boruch_baum@gmx.com>  (tiny change)
19825         * lisp/bookmark.el (bookmark-bmenu-goto-bookmark): Don't inf-loop.
19826         (Bug#20212)
19828 2015-04-09  Stefan Monnier  <monnier@iro.umontreal.ca>
19830         Stop messing with the EMACS env var
19831         (Bug#20202)
19832         * lisp/net/tramp-sh.el (tramp-remote-process-environment):
19833         * lisp/comint.el (comint-exec-1):
19834         * lisp/term.el (term-exec-1): Don't set EMACS envvar.
19835         * lisp/progmodes/compile.el (compilation-start): Same and bring
19836         INSIDE_EMACS's format in line with other users.
19838         css-mode.el (css-smie-rules): Fix indentation after complex selectors
19839         (Bug#20282)
19840         * lisp/textmodes/css-mode.el (css-smie-rules): Don't get confused by
19841         inner structure of selectors.
19843 2015-04-08  Fabián Ezequiel Gallina  <fgallina@gnu.org>
19845         python.el: Indent docstring lines to base-indent
19846         (Bug#19595)
19847         Thanks to immerrr <immerrr@gmail.com> for reporting and providing
19848         an initial patch.
19849         * lisp/progmodes/python.el
19850         (python-indent-context): Add :inside-docstring context.
19851         (python-indent--calculate-indentation): Handle :inside-docstring.
19852         (python-indent-region): Re-indent docstrings.
19853         * test/automated/python-tests.el (python-indent-region-5)
19854         (python-indent-inside-string-2): Fix tests.
19856         python.el: Increase native completion robustness
19857         (Bug#19755)
19858         Thanks to Carlos Pita <carlosjosepita@gmail.com> for reporting
19859         this and providing useful ideas.
19860         * lisp/progmodes/python.el
19861         (python-shell-completion-native-output-timeout): Increase value.
19862         (python-shell-completion-native-try-output-timeout): New var.
19863         (python-shell-completion-native-try): Use it.
19864         (python-shell-completion-native-setup): New readline setup avoids
19865         polluting current context, ensures output when no-completions are
19866         available and includes output end marker.
19867         (python-shell-completion-native-get-completions): Trigger with one
19868         tab only.  Call accept-process-output until output end is found or
19869         python-shell-completion-native-output-timeout is exceeded.
19871 2015-04-08  Samer Masterson  <samer@samertm.com>
19873         * lisp/eshell: Make backslash a no-op in front of normal chars
19874         (Bug#8531)
19875         * lisp/eshell/esh-arg.el (eshell-parse-argument-hook): Update comment.
19876         (eshell-parse-backslash): Return escaped character after backslash
19877         if it is special.  Otherwise, if the backslash is not in a quoted
19878         string, ignore the backslash and return the character after; if
19879         the backslash is in a quoted string, return the backslash and the
19880         character after.
19881         * test/automated/eshell.el (eshell-test/escape-nonspecial)
19882         (eshell-test/escape-nonspecial-unicode)
19883         (eshell-test/escape-nonspecial-quoted)
19884         (eshell-test/escape-special-quoted): Add tests for new
19885         `eshell-parse-backslash' behavior.
19887 2015-04-08  Gustav Hållberg  <gustav@gmail.com>  (tiny change)
19889         * lisp/vc/diff-mode.el (diff-hunk-file-names): Don't require a TAB
19890         after the file name.
19891         (Bug#20276)
19893 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
19895         Minor quoting etc. fixes to Emacs manual
19896         * doc/emacs/Makefile.in, doc/emacs/ack.texi, doc/emacs/building.texi:
19897         * doc/emacs/calendar.texi, doc/emacs/cmdargs.texi:
19898         * doc/emacs/custom.texi, doc/emacs/dired.texi, doc/emacs/emacs.texi:
19899         * doc/emacs/files.texi, doc/emacs/glossary.texi, doc/emacs/gnu.texi:
19900         * doc/emacs/indent.texi, doc/emacs/macos.texi:
19901         * doc/emacs/maintaining.texi, doc/emacs/makefile.w32-in:
19902         * doc/emacs/programs.texi, doc/emacs/rmail.texi:
19903         * doc/emacs/search.texi, doc/emacs/trouble.texi:
19904         * doc/emacs/vc1-xtra.texi:
19905         Use American-style double quoting in ordinary text,
19906         and quote 'like this' when single-quoting in ASCII text.
19907         Also, fix some minor spacing issues.
19909         Minor quoting etc. fixes to elisp intro
19910         * doc/lispintro/emacs-lisp-intro.texi: Consistently use
19911         American-style double quoting in ordinary text.  In ASCII text,
19912         consistently quote 'like this' instead of `like this', unless
19913         Emacs requires the latter.
19915 2015-04-08  Dmitry Gutov  <dgutov@yandex.ru>
19917         * CONTRIBUTE: Mention log-edit-insert-changelog.
19919         * CONTRIBUTE: Emphasize creating the top-level ChangeLog file manually.
19921 2015-04-08  Paul Eggert  <eggert@cs.ucla.edu>
19923         * doc/misc/calc.texi (Summary): Avoid '@:' when usurped.
19925 2015-04-08  Stefan Monnier  <monnier@iro.umontreal.ca>
19927         * lisp/emacs-lisp/eieio-core.el (eieio-copy-parents-into-subclass):
19928         Fix inheritance of initargs.  (Bug#20270)
19930 2015-04-08  Artur Malabarba  <bruce.connor.am@gmail.com>
19932         * lisp/emacs-lisp/package.el (package-menu-mode): Mode-line notification
19933         while dowloading information.
19935         * lisp/emacs-lisp/package.el: More conservative `ensure-init-file'
19936         (package--ensure-init-file): Check file contents before visiting.
19937         (package-initialize): Call it.
19938         (package-install-from-buffer, package-install): Don't call it.
19940 2015-04-08  Eli Zaretskii  <eliz@gnu.org>
19942         * src/eval.c (init_eval_once): Bump max_lisp_eval_depth to 800.
19943         (Bug#17517)
19945 2015-04-08  Michael Albinus  <michael.albinus@gmx.de>
19947         * lisp/net/tramp-cache.el (tramp-flush-file-property):
19948         Fix nasty scoping bug.
19950 2015-04-08  Tassilo Horn  <tsdh@gnu.org>
19952         Add notice to visual commands section
19953         * doc/misc/eshell.texi (Input/Output): Add notice that some tools
19954         such as git call less with its -F option which omits pagination if
19955         the contents is less than one page long.  This interferes with
19956         eshell's visual (sub-)commands.
19958 2015-04-07  Dmitry Gutov  <dgutov@yandex.ru>
19960         * lisp/ffap.el (ffap-string-at-point-mode-alist): Support
19961         environment variable expansion in file names.  (Bug#19839)
19963 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19965         Prefer double-quote to accent-grave in man pages
19967 2015-04-07  Stefan Monnier  <monnier@iro.umontreal.ca>
19969         (Bug#20257)
19970         * lisp/files.el (set-visited-file-name): Clear auto-save if nil.
19972 2015-04-07  Ivan Shmakov  <ivan@siamics.net>
19974         Update etc/PROBLEMS.
19975         * etc/PROBLEMS: Mention visible-cursor; a few more mentions of
19976         ~/.Xresources and xrdb(1); refer to 'GNU Coreutils' and
19977         'X Window System' or 'X' (were: 'GNU Fileutils' and 'X Windows',
19978         respectively); other minor updates and tweaks.  (Bug#20011)
19980 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19982         Add doc strings for some Isearch state vars
19983         * lisp/misearch.el (multi-isearch-buffer-list)
19984         (multi-isearch-file-list): Add doc strings.
19985         (Bug#20232)
19987 2015-04-07  Alan Mackenzie  <acm@muc.de>
19989         Always mark "<" and ">" in #include directives with text properties.
19990         * lisp/progmodes/c-fonts.el (c-cpp-matchers): Replace a font-lock
19991         "anchored matcher" with an invocation of
19992         c-make-font-lock-search-function to allow fontification when there's
19993         no trailing space on an "#include <..>" line.
19995 2015-04-07  Paul Eggert  <eggert@cs.ucla.edu>
19997         Generate a ChangeLog file from commit logs
19998         * .gitignore: Add 'ChangeLog'.
19999         * build-aux/gitlog-to-changelog: New file, from Gnulib.
20000         * build-aux/gitlog-to-emacslog: New file.
20001         * CONTRIBUTE: Document the revised workflow.
20002         * Makefile.in (clean): Remove *.tmp and etc/*.tmp*
20003         instead of just special cases.
20004         (CHANGELOG_HISTORY_INDEX_MAX, CHANGELOG_N, gen_origin): New vars.
20005         (ChangeLog, unchanged-history-files, change-history)
20006         (change-history-commit): New rules.
20007         * admin/admin.el (make-manuals-dist--1):
20008         Don't worry about doc/ChangeLog.
20009         * admin/authors.el: Add a FIXME.
20010         * admin/make-tarball.txt:
20011         * lisp/calendar/icalendar.el:
20012         * lisp/gnus/deuglify.el:
20013         * lisp/obsolete/gulp.el:
20014         * lwlib/README:
20015         Adjust to renamed ChangeLog history files.
20016         * admin/merge-gnulib (GNULIB_MODULES): Add gitlog-to-changelog.
20017         * admin/notes/repo: Call it 'master' a la Git, not 'trunk' a la Bzr.
20018         Remove obsolete discussion of merging ChangeLog files.
20019         New section "Maintaining ChangeLog history".
20020         * build-aux/git-hooks/pre-commit:
20021         Reject attempts to commit files named 'ChangeLog'.
20022         * lib/gnulib.mk, m4/gnulib-comp.m4: Regenerate.
20023         * make-dist: Make and distribute top-level ChangeLog if there's a
20024         .git directory.  Distribute the new ChangeLog history files
20025         instead of scattered ChangeLog files.  Distribute the new files
20026         gitlog-to-changelog and gitlog-to-emacslog.
20027         (Bug#19113)
20029         Rename ChangeLogs for gitlog-to-changelog
20030         This patch was implemented via the following shell commands:
20031         find * -name ChangeLog |
20032         sed 's,.*,git mv & &.1,
20033         s, lisp/ChangeLog\.1$, lisp/ChangeLog.17,
20034         s, lisp/erc/ChangeLog\.1$, lisp/erc/ChangeLog.09,
20035         s, lisp/gnus/ChangeLog\.1$, lisp/gnus/ChangeLog.3,
20036         s, lisp/mh-e/ChangeLog\.1$, lisp/mh-e/ChangeLog.2,
20037         s, src/ChangeLog\.1$, src/ChangeLog.13,' |
20038         sh
20039         git commit -am"[this commit message]"
20041 This file records repository revisions from
20042 commit 9d56a21e6a696ad19ac65c4b405aeca44785884a (exclusive) to
20043 commit 6148555ee5a3d0139ae517803718b3e0357933c7 (inclusive).
20044 See ChangeLog.1 for earlier changes.
20046 ;; Local Variables:
20047 ;; coding: utf-8
20048 ;; End:
20050   Copyright (C) 2015 Free Software Foundation, Inc.
20052   This file is part of GNU Emacs.
20054   GNU Emacs is free software: you can redistribute it and/or modify
20055   it under the terms of the GNU General Public License as published by
20056   the Free Software Foundation, either version 3 of the License, or
20057   (at your option) any later version.
20059   GNU Emacs is distributed in the hope that it will be useful,
20060   but WITHOUT ANY WARRANTY; without even the implied warranty of
20061   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20062   GNU General Public License for more details.
20064   You should have received a copy of the GNU General Public License
20065   along with GNU Emacs.  If not, see <http://www.gnu.org/licenses/>.